Lưu ngữ cảnh vào bộ nhớ đệm

Trong quy trình làm việc AI thông thường, bạn có thể truyền đi truyền lại các mã thông báo đầu vào giống nhau cho một mô hình. Khi sử dụng tính năng lưu ngữ cảnh API Gemini vào bộ nhớ đệm, bạn có thể truyền một số nội dung vào mô hình một lần, lưu mã thông báo đầu vào vào bộ nhớ đệm, sau đó tham chiếu đến các mã thông báo đã lưu vào bộ nhớ đệm cho các yêu cầu tiếp theo. Ở một số số lượng nhất định, việc sử dụng mã thông báo đã lưu vào bộ nhớ đệm sẽ có chi phí thấp hơn so với việc truyền nhiều lần trong cùng một tập hợp mã thông báo.

Khi lưu một tập hợp mã thông báo vào bộ nhớ đệm, bạn có thể chọn khoảng thời gian bạn muốn bộ nhớ đệm tồn tại trước khi các mã thông báo đó tự động bị xoá. Khoảng thời gian lưu vào bộ nhớ đệm này được gọi là thời gian tồn tại (TTL). Nếu bạn không đặt giá trị này, TTL sẽ mặc định là 1 giờ. Chi phí lưu vào bộ nhớ đệm phụ thuộc vào kích thước mã thông báo đầu vào và khoảng thời gian bạn muốn mã thông báo tồn tại.

Tính năng lưu ngữ cảnh vào bộ nhớ đệm hỗ trợ cả Gemini 1.5 Pro và Gemini 1.5 Flash.

Trường hợp sử dụng tính năng lưu vào bộ nhớ đệm theo bối cảnh

Việc lưu ngữ cảnh vào bộ nhớ đệm đặc biệt phù hợp với các trường hợp mà một ngữ cảnh ban đầu đáng kể được tham chiếu nhiều lần bằng các yêu cầu ngắn hơn. Hãy cân nhắc sử dụng tính năng lưu vào bộ nhớ đệm theo ngữ cảnh cho các trường hợp sử dụng như:

  • Bot trò chuyện kèm theo hướng dẫn chuyên sâu về hệ thống
  • Phân tích lặp lại các tệp video dài
  • Truy vấn định kỳ đối với các tập hợp tài liệu lớn
  • Thường xuyên phân tích kho lưu trữ mã hoặc sửa lỗi

Việc lưu vào bộ nhớ đệm giúp giảm chi phí như thế nào

Lưu vào bộ nhớ đệm ngữ cảnh là một tính năng có tính phí được thiết kế để giảm tổng chi phí vận hành. Việc thanh toán dựa trên các yếu tố sau:

  1. Số lượng mã thông báo được lưu vào bộ nhớ đệm: Số lượng mã thông báo đầu vào được lưu vào bộ nhớ đệm, được tính phí theo mức giá giảm khi được đưa vào các lời nhắc tiếp theo.
  2. Thời lượng lưu trữ: Khoảng thời gian lưu trữ mã thông báo được lưu vào bộ nhớ đệm (TTL), được tính phí dựa trên thời lượng TTL của số lượng mã thông báo được lưu vào bộ nhớ đệm. Không có giới hạn tối thiểu hoặc tối đa nào trên TTL.
  3. Các yếu tố khác: Có áp dụng các khoản phí khác, chẳng hạn như mã thông báo đầu vào và mã thông báo đầu ra không được lưu vào bộ nhớ đệm.

Để biết thông tin mới nhất về giá, hãy tham khảo trang giá của Gemini API. Để tìm hiểu cách đếm mã thông báo, hãy xem Hướng dẫn về mã thông báo.

Cách sử dụng tính năng lưu vào bộ nhớ đệm ngữ cảnh

Phần này giả định rằng bạn đã cài đặt SDK Gemini (hoặc đã cài đặt curl) và đã định cấu hình khoá API, như trong phần bắt đầu nhanh.

Các yếu tố cần cân nhắc khác

Hãy lưu ý những điều sau khi sử dụng tính năng lưu vào bộ nhớ đệm ngữ cảnh:

  • Số lượng mã thông báo đầu vào tối thiểu để lưu vào bộ nhớ đệm theo ngữ cảnh là 32.768 và tối đa bằng với số lượng tối đa cho mô hình đã cho. (Để biết thêm thông tin về cách đếm mã thông báo, hãy xem phần Hướng dẫn về mã thông báo).
  • Mô hình này không tạo ra sự khác biệt nào giữa mã thông báo được lưu vào bộ nhớ đệm và mã thông báo đầu vào thông thường. Nội dung được lưu vào bộ nhớ đệm chỉ là tiền tố cho lời nhắc.
  • Không có giới hạn về tốc độ hoặc giới hạn sử dụng đặc biệt đối với việc lưu ngữ cảnh vào bộ nhớ đệm; các giới hạn tốc độ tiêu chuẩn cho GenerateContent sẽ áp dụng và giới hạn mã thông báo bao gồm cả mã thông báo được lưu vào bộ nhớ đệm.
  • Số lượng mã thông báo đã lưu vào bộ nhớ đệm được trả về trong usage_metadata từ các thao tác tạo, lấy và liệt kê của dịch vụ bộ nhớ đệm, cũng như trong GenerateContent khi dùng bộ nhớ đệm.