Tính năng lưu vào bộ nhớ đệm theo bối cảnh cho phép bạn lưu và sử dụng lại các mã thông báo đầu vào được tính toán trước mà bạn muốn sử dụng nhiều lần, chẳng hạn như khi đặt nhiều câu hỏi về cùng một tệp đa phương tiện. Điều này có thể giúp bạn tiết kiệm chi phí và thời gian, tuỳ thuộc vào mức sử dụng. Để biết thông tin giới thiệu chi tiết, hãy xem hướng dẫn về Lưu vào bộ nhớ đệm theo bối cảnh.
Phương thức: cachedContents.create
Tạo tài nguyên CachedContent.
Điểm cuối
posthttps: / /generativelanguage.googleapis.com /v1beta /cachedContents
Nội dung yêu cầu
Nội dung yêu cầu chứa một bản sao của CachedContent.
contents[]
object (Content)
Không bắt buộc. Chỉ có đầu vào. Không thể thay đổi. Nội dung cần lưu vào bộ nhớ đệm.
tools[]
object (Tool)
Không bắt buộc. Chỉ có đầu vào. Không thể thay đổi. Danh sách Tools mà mô hình có thể dùng để tạo câu trả lời tiếp theo
expiration
Union type
expiration chỉ có thể là một trong những trạng thái sau:expireTime
string (Timestamp format)
Dấu thời gian theo giờ UTC cho biết thời điểm tài nguyên này được xem là đã hết hạn. Tham số này luôn được cung cấp trên đầu ra, bất kể tham số nào được gửi trên đầu vào.
Hãy dùng RFC 3339, trong đó dữ liệu đầu ra được tạo sẽ luôn được chuẩn hoá theo múi giờ và sử dụng 0, 3, 6 hoặc 9 chữ số thập phân. Các khoảng lệch khác ngoài "Z" cũng được chấp nhận. Ví dụ: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" hoặc "2014-10-02T15:01:23+05:30".
ttl
string (Duration format)
Chỉ có đầu vào. TTL mới cho tài nguyên này, chỉ có thể nhập.
Thời lượng tính bằng giây, có tối đa 9 chữ số thập phân và kết thúc bằng "s". Ví dụ: "3.5s".
displayName
string
Không bắt buộc. Không thể thay đổi. Tên hiển thị có ý nghĩa do người dùng tạo của nội dung được lưu vào bộ nhớ đệm. Tối đa 128 ký tự Unicode.
model
string
Bắt buộc. Không thể thay đổi. Tên của Model cần dùng cho nội dung được lưu vào bộ nhớ đệm Định dạng: models/{model}
systemInstruction
object (Content)
Không bắt buộc. Chỉ có đầu vào. Không thể thay đổi. Nhà phát triển đặt chỉ dẫn hệ thống. Hiện chỉ có văn bản.
toolConfig
object (ToolConfig)
Không bắt buộc. Chỉ có đầu vào. Không thể thay đổi. Cấu hình công cụ. Cấu hình này được dùng chung cho tất cả các công cụ.
Ví dụ về yêu cầu
Cơ bản
Python
Node.js
Go
Shell
Tên người gửi
Python
Node.js
Go
Từ cuộc trò chuyện
Python
Node.js
Go
Nội dung phản hồi
Nếu thành công, nội dung phản hồi sẽ chứa một thực thể mới tạo của CachedContent.
Phương thức: cachedContents.list
Lists CachedContents.
Điểm cuối
gethttps: / /generativelanguage.googleapis.com /v1beta /cachedContents
Tham số truy vấn
pageSize
integer
Không bắt buộc. Số lượng nội dung được lưu vào bộ nhớ đệm tối đa cần trả về. Dịch vụ có thể trả về ít hơn giá trị này. Nếu không được chỉ định, một số lượng mặt hàng mặc định (dưới mức tối đa) sẽ được trả về. Giá trị tối đa là 1.000; các giá trị trên 1.000 sẽ được chuyển đổi thành 1.000.
pageToken
string
Không bắt buộc. Mã thông báo trang nhận được từ một lệnh gọi cachedContents.list trước đó. Cung cấp thông tin này để truy xuất trang tiếp theo.
Khi phân trang, tất cả các tham số khác được cung cấp cho cachedContents.list phải khớp với lệnh gọi đã cung cấp mã thông báo trang.
Nội dung yêu cầu
Nội dung yêu cầu phải trống.
Nội dung phản hồi
Phản hồi bằng danh sách CachedContents.
Nếu thành công, phần nội dung phản hồi sẽ chứa dữ liệu có cấu trúc sau:
cachedContents[]
object (CachedContent)
Danh sách nội dung được lưu vào bộ nhớ đệm.
nextPageToken
string
Một mã thông báo có thể được gửi dưới dạng pageToken để truy xuất trang tiếp theo. Nếu bạn bỏ qua trường này, thì sẽ không có các trang tiếp theo.
| Biểu diễn dưới dạng JSON |
|---|
{
"cachedContents": [
{
object ( |
Phương thức: cachedContents.get
Đọc tài nguyên CachedContent.
Điểm cuối
gethttps: / /generativelanguage.googleapis.com /v1beta /{name=cachedContents /*}
Tham số đường dẫn
name
string
Bắt buộc. Tên tài nguyên đề cập đến mục nhập bộ nhớ đệm nội dung. Định dạng: cachedContents/{id} Tên này có dạng cachedContents/{cachedcontent}.
Nội dung yêu cầu
Nội dung yêu cầu phải trống.
Ví dụ về yêu cầu
Python
Node.js
Go
Shell
Nội dung phản hồi
Nếu thành công, nội dung phản hồi sẽ chứa một thực thể của CachedContent.
Phương thức: cachedContents.patch
- Điểm cuối
- Tham số đường dẫn
- Tham số truy vấn
- Nội dung yêu cầu
- Nội dung phản hồi
- Phạm vi uỷ quyền
- Ví dụ về yêu cầu
Cập nhật tài nguyên CachedContent (bạn chỉ có thể cập nhật thời gian hết hạn).
Điểm cuối
patchhttps: / /generativelanguage.googleapis.com /v1beta /{cachedContent.name=cachedContents /*}
PATCH https://generativelanguage.googleapis.com/v1beta/{cachedContent.name=cachedContents/*}
Tham số đường dẫn
cachedContent.name
string
Chỉ có đầu ra. Giá trị nhận dạng. Tên tài nguyên đề cập đến nội dung được lưu vào bộ nhớ đệm. Định dạng: cachedContents/{id} Tên này có dạng cachedContents/{cachedcontent}.
Tham số truy vấn
updateMask
string (FieldMask format)
Danh sách các trường cần cập nhật.
Đây là danh sách tên đủ điều kiện của các trường được phân tách bằng dấu phẩy. Ví dụ: "user.displayName,photo"
Nội dung yêu cầu
Nội dung yêu cầu chứa một bản sao của CachedContent.
expiration
Union type
expiration chỉ có thể là một trong những trạng thái sau:expireTime
string (Timestamp format)
Dấu thời gian theo giờ UTC cho biết thời điểm tài nguyên này được xem là đã hết hạn. Tham số này luôn được cung cấp trên đầu ra, bất kể tham số nào được gửi trên đầu vào.
Hãy dùng RFC 3339, trong đó dữ liệu đầu ra được tạo sẽ luôn được chuẩn hoá theo múi giờ và sử dụng 0, 3, 6 hoặc 9 chữ số thập phân. Các khoảng lệch khác ngoài "Z" cũng được chấp nhận. Ví dụ: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" hoặc "2014-10-02T15:01:23+05:30".
ttl
string (Duration format)
Chỉ có đầu vào. TTL mới cho tài nguyên này, chỉ có thể nhập.
Thời lượng tính bằng giây, có tối đa 9 chữ số thập phân và kết thúc bằng "s". Ví dụ: "3.5s".
Ví dụ về yêu cầu
Python
Node.js
Go
Shell
Nội dung phản hồi
Nếu thành công, nội dung phản hồi sẽ chứa một thực thể của CachedContent.
Phương thức: cachedContents.delete
Xoá tài nguyên CachedContent.
Điểm cuối
xoáhttps: / /generativelanguage.googleapis.com /v1beta /{name=cachedContents /*}
Tham số đường dẫn
name
string
Bắt buộc. Tên tài nguyên đề cập đến mục nhập bộ nhớ đệm nội dung Định dạng: cachedContents/{id} Tên này có dạng cachedContents/{cachedcontent}.
Nội dung yêu cầu
Nội dung yêu cầu phải trống.
Ví dụ về yêu cầu
Python
Node.js
Go
Shell
Nội dung phản hồi
Nếu thành công, phần nội dung phản hồi sẽ là một đối tượng JSON trống.
Tài nguyên REST: cachedContents
- Tài nguyên: CachedContent
- ToolConfig
- FunctionCallingConfig
- Chế độ
- RetrievalConfig
- LatLng
- UsageMetadata
- Phương thức
Tài nguyên: CachedContent
Nội dung đã được xử lý trước và có thể được dùng trong yêu cầu tiếp theo tới GenerativeService.
Bạn chỉ có thể dùng nội dung trong bộ nhớ đệm với mô hình mà nội dung đó được tạo ra.
contents[]
object (Content)
Không bắt buộc. Chỉ có đầu vào. Không thể thay đổi. Nội dung cần lưu vào bộ nhớ đệm.
tools[]
object (Tool)
Không bắt buộc. Chỉ có đầu vào. Không thể thay đổi. Danh sách Tools mà mô hình có thể dùng để tạo câu trả lời tiếp theo
createTime
string (Timestamp format)
Chỉ có đầu ra. Thời gian tạo mục nhập trong bộ nhớ đệm.
Hãy dùng RFC 3339, trong đó dữ liệu đầu ra được tạo sẽ luôn được chuẩn hoá theo múi giờ và sử dụng 0, 3, 6 hoặc 9 chữ số thập phân. Các khoảng lệch khác ngoài "Z" cũng được chấp nhận. Ví dụ: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" hoặc "2014-10-02T15:01:23+05:30".
updateTime
string (Timestamp format)
Chỉ có đầu ra. Thời điểm mục nhập trong bộ nhớ đệm được cập nhật lần gần đây nhất theo giờ UTC.
Hãy dùng RFC 3339, trong đó dữ liệu đầu ra được tạo sẽ luôn được chuẩn hoá theo múi giờ và sử dụng 0, 3, 6 hoặc 9 chữ số thập phân. Các khoảng lệch khác ngoài "Z" cũng được chấp nhận. Ví dụ: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" hoặc "2014-10-02T15:01:23+05:30".
usageMetadata
object (UsageMetadata)
Chỉ có đầu ra. Siêu dữ liệu về việc sử dụng nội dung được lưu vào bộ nhớ đệm.
expiration
Union type
expiration chỉ có thể là một trong những trạng thái sau:expireTime
string (Timestamp format)
Dấu thời gian theo giờ UTC cho biết thời điểm tài nguyên này được xem là đã hết hạn. Tham số này luôn được cung cấp trên đầu ra, bất kể tham số nào được gửi trên đầu vào.
Hãy dùng RFC 3339, trong đó dữ liệu đầu ra được tạo sẽ luôn được chuẩn hoá theo múi giờ và sử dụng 0, 3, 6 hoặc 9 chữ số thập phân. Các khoảng lệch khác ngoài "Z" cũng được chấp nhận. Ví dụ: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" hoặc "2014-10-02T15:01:23+05:30".
ttl
string (Duration format)
Chỉ có đầu vào. TTL mới cho tài nguyên này, chỉ có thể nhập.
Thời lượng tính bằng giây, có tối đa 9 chữ số thập phân và kết thúc bằng "s". Ví dụ: "3.5s".
name
string
Chỉ có đầu ra. Giá trị nhận dạng. Tên tài nguyên đề cập đến nội dung được lưu vào bộ nhớ đệm. Định dạng cachedContents/{id}
displayName
string
Không bắt buộc. Không thể thay đổi. Tên hiển thị có ý nghĩa do người dùng tạo của nội dung được lưu vào bộ nhớ đệm. Tối đa 128 ký tự Unicode.
model
string
Bắt buộc. Không thể thay đổi. Tên của Model cần dùng cho nội dung được lưu vào bộ nhớ đệm Định dạng: models/{model}
systemInstruction
object (Content)
Không bắt buộc. Chỉ có đầu vào. Không thể thay đổi. Nhà phát triển đặt chỉ dẫn hệ thống. Hiện chỉ có văn bản.
toolConfig
object (ToolConfig)
Không bắt buộc. Chỉ có đầu vào. Không thể thay đổi. Cấu hình công cụ. Cấu hình này được dùng chung cho tất cả các công cụ.
| Biểu diễn dưới dạng JSON |
|---|
{ "contents": [ { object ( |
ToolConfig
Cấu hình Công cụ chứa các tham số để chỉ định việc sử dụng Tool trong yêu cầu.
functionCallingConfig
object (FunctionCallingConfig)
Không bắt buộc. Cấu hình gọi hàm.
retrievalConfig
object (RetrievalConfig)
Không bắt buộc. Cấu hình truy xuất.
includeServerSideToolInvocations
boolean
Không bắt buộc. Nếu đúng, phản hồi của API sẽ bao gồm các lệnh gọi và phản hồi của công cụ phía máy chủ trong thông báo Content. Điều này cho phép các ứng dụng quan sát các hoạt động tương tác của công cụ trên máy chủ.
| Biểu diễn dưới dạng JSON |
|---|
{ "functionCallingConfig": { object ( |
FunctionCallingConfig
Cấu hình để chỉ định hành vi gọi hàm.
mode
enum (Mode)
Không bắt buộc. Chỉ định chế độ mà tính năng gọi hàm sẽ thực thi. Nếu bạn không chỉ định, giá trị mặc định sẽ được đặt thành AUTO.
allowedFunctionNames[]
string
Không bắt buộc. Một tập hợp tên hàm. Khi được cung cấp, tập hợp này sẽ giới hạn các hàm mà mô hình sẽ gọi.
Bạn chỉ nên đặt thuộc tính này khi Chế độ là BẤT KỲ hoặc ĐƯỢC XÁC THỰC. Tên hàm phải khớp với [FunctionDeclaration.name]. Khi được đặt, mô hình sẽ dự đoán một lệnh gọi hàm chỉ từ những tên hàm được phép.
| Biểu diễn dưới dạng JSON |
|---|
{
"mode": enum ( |
Chế độ
Xác định hành vi thực thi cho lệnh gọi hàm bằng cách xác định chế độ thực thi.
| Enum | |
|---|---|
MODE_UNSPECIFIED |
Chế độ gọi hàm không xác định. Bạn không nên sử dụng giá trị này. |
AUTO |
Hành vi mặc định của mô hình, mô hình quyết định dự đoán một lệnh gọi hàm hoặc một câu trả lời bằng ngôn ngữ tự nhiên. |
ANY |
Mô hình bị hạn chế chỉ dự đoán một lệnh gọi hàm. Nếu bạn đặt "allowedFunctionNames", lệnh gọi hàm được dự đoán sẽ bị giới hạn ở một trong các "allowedFunctionNames", nếu không, lệnh gọi hàm được dự đoán sẽ là một trong các "functionDeclarations" được cung cấp. |
NONE |
Mô hình sẽ không dự đoán bất kỳ lệnh gọi hàm nào. Hành vi của mô hình giống như khi không truyền bất kỳ khai báo hàm nào. |
VALIDATED |
Mô hình quyết định dự đoán một lệnh gọi hàm hoặc một câu trả lời bằng ngôn ngữ tự nhiên, nhưng sẽ xác thực các lệnh gọi hàm bằng tính năng giải mã có ràng buộc. Nếu bạn đặt "allowedFunctionNames", lệnh gọi hàm được dự đoán sẽ bị giới hạn ở một trong các "allowedFunctionNames", nếu không, lệnh gọi hàm được dự đoán sẽ là một trong các "functionDeclarations" được cung cấp. |
RetrievalConfig
Cấu hình truy xuất.
latLng
object (LatLng)
Không bắt buộc. Vị trí của người dùng.
languageCode
string
Không bắt buộc. Mã ngôn ngữ của người dùng. Mã ngôn ngữ của nội dung. Sử dụng thẻ ngôn ngữ do BCP47 xác định.
| Biểu diễn dưới dạng JSON |
|---|
{
"latLng": {
object ( |
LatLng
Một đối tượng đại diện cho cặp vĩ độ/kinh độ. Thông tin này được biểu thị dưới dạng một cặp số thực có độ chính xác kép để biểu thị vĩ độ và kinh độ theo độ. Trừ phi có quy định khác, đối tượng này phải tuân thủ tiêu chuẩn WGS84. Giá trị phải nằm trong phạm vi được chuẩn hoá.
latitude
number
Vĩ độ tính bằng độ. Giá trị này phải nằm trong khoảng [-90.0, +90.0].
longitude
number
Kinh độ tính bằng độ. Giá trị này phải nằm trong phạm vi [-180.0, +180.0].
| Biểu diễn dưới dạng JSON |
|---|
{ "latitude": number, "longitude": number } |
UsageMetadata
Siêu dữ liệu về việc sử dụng nội dung được lưu vào bộ nhớ đệm.
totalTokenCount
integer
Tổng số mã thông báo mà nội dung được lưu vào bộ nhớ đệm tiêu thụ.
| Biểu diễn dưới dạng JSON |
|---|
{ "totalTokenCount": integer } |