Bộ nhớ đệm

term_id: caching

Category: engineering_practice

Definition

Trong kỹ thuật AI, bộ nhớ đệm tối ưu hóa hiệu suất bằng cách giữ các kết quả truy vấn gần đây hoặc thường xuyên, dự đoán của mô hình hoặc các phép tính trung gian trong bộ nhớ nhanh (như RAM). Điều này làm giảm nhu cầu thực hiện các phép tính tốn kém hoặc truy xuất dữ liệu từ đĩa chậm hơn.

Summary

Bộ nhớ đệm là kỹ thuật lưu trữ dữ liệu thường xuyên được truy cập vào một lớp lưu trữ tạm thời, tốc độ cao để giảm độ trễ và giảm tải cho các nguồn dữ liệu chính.

Key Concepts

  • giảm độ trễ
  • tối ưu hóa bộ nhớ
  • chính sách loại bỏ
  • tỷ lệ khớp

Use Cases

  • Lưu trữ kết quả suy luận của mô hình
  • Bộ nhớ đệm kết quả truy vấn cơ sở dữ liệu
  • Tính toán trước các đặc trưng nhúng

Code Example

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
import redis

# Simple caching example
r = redis.Redis(host='localhost', port=6379, db=0)

def get_prediction(model_id, input_data):
    cache_key = f"pred_{model_id}_{hash(str(input_data))}"
    result = r.get(cache_key)
    if result:
        return result.decode('utf-8')
    # Compute if not cached
    prediction = model.predict(input_data)
    r.setex(cache_key, 3600, str(prediction))
    return prediction