REST Resource: cachedContents

Tài nguyên: cacheContent

Nội dung đã được xử lý trước và có thể được sử dụng trong các yêu cầu tiếp theo tới dịch vụ tạo sinh.

Bạn chỉ có thể sử dụng nội dung đã lưu vào bộ nhớ đệm với mô hình được tạo.

Biểu diễn dưới dạng JSON
{
  "contents": [
    {
      object (Content)
    }
  ],
  "tools": [
    {
      object (Tool)
    }
  ],
  "createTime": string,
  "updateTime": string,
  "usageMetadata": {
    object (UsageMetadata)
  },

  // Union field expiration can be only one of the following:
  "expireTime": string,
  "ttl": string
  // End of list of possible types for union field expiration.
  "name": string,
  "displayName": string,
  "model": string,
  "systemInstruction": {
    object (Content)
  },
  "toolConfig": {
    object (ToolConfig)
  }
}
Trường
contents[]

object (Content)

Không bắt buộc. Chỉ nhập. Không thể thay đổi. Nội dung được lưu vào bộ nhớ đệm.

tools[]

object (Tool)

Không bắt buộc. Chỉ nhập. Không thể thay đổi. Danh sách Tools mà mô hình có thể dùng để tạo phản hồi tiếp theo

createTime

string (Timestamp format)

Chỉ có đầu ra. Thời gian tạo của mục bộ nhớ đệm.

Dấu thời gian ở định dạng "Zulu" RFC3339 UTC, với độ phân giải nano giây và tối đa 9 chữ số phân số. Ví dụ: "2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z".

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.

Dấu thời gian ở định dạng "Zulu" RFC3339 UTC, với độ phân giải nano giây và tối đa 9 chữ số phân số. Ví dụ: "2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z".

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.

Trường kết hợp expiration. Chỉ định thời điểm tài nguyên này sẽ hết hạn. expiration chỉ có thể là một trong những trạng thái sau đây:
expireTime

string (Timestamp format)

Dấu thời gian theo giờ UTC tại thời điểm tài nguyên này được coi là đã hết hạn. Trạng thái này luôn được cung cấp trên đầu ra, bất kể nội dung nào được gửi trên đầu vào.

Dấu thời gian ở định dạng "Zulu" RFC3339 UTC, với độ phân giải nano giây và tối đa 9 chữ số phân số. Ví dụ: "2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z".

ttl

string (Duration format)

Chỉ nhập. TTL mới cho tài nguyên này, chỉ nhập.

Thời lượng tính bằng giây với tối đa 9 chữ số phân số, kết thúc bằng "s". Ví dụ: "3.5s".

name

string

Không bắt buộc. Giá trị nhận dạng. Tên tài nguyên tham chiếu đế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 cho 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 để sử dụng cho định dạng nội dung được lưu vào bộ nhớ đệm: models/{model}

systemInstruction

object (Content)

Không bắt buộc. Chỉ nhập. Không thể thay đổi. Hướng dẫn hệ thống thiết lập dành cho nhà phát triển. Hiện chỉ có văn bản.

toolConfig

object (ToolConfig)

Không bắt buộc. Chỉ nhập. 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ông cụ.

Nội dung

Loại dữ liệu có cấu trúc cơ sở chứa nội dung nhiều phần của một thông báo.

Content bao gồm một trường role chỉ định thực thể tạo của Content và trường parts chứa dữ liệu nhiều phần chứa nội dung của lượt thông báo.

Biểu diễn dưới dạng JSON
{
  "parts": [
    {
      object (Part)
    }
  ],
  "role": string
}
Trường
parts[]

object (Part)

Đã sắp xếp Parts cấu thành một thông báo. Các phần có thể có nhiều loại MIME.

role

string

Không bắt buộc. Nhà sản xuất nội dung. Phải là "người dùng" hoặc "mô hình".

Hữu ích khi thiết lập cho các cuộc trò chuyện nhiều lượt, nếu không có thể để trống hoặc không đặt.

Phần

Một loại dữ liệu chứa nội dung nghe nhìn thuộc thông báo Content gồm nhiều phần.

Một Part chứa dữ liệu có một kiểu dữ liệu liên kết. Part chỉ có thể chứa một trong các kiểu được chấp nhận trong Part.data.

Part phải có loại MIME IANA cố định để xác định loại và loại phụ của phương tiện truyền thông nếu trường inlineData được điền bằng các byte thô.

Biểu diễn dưới dạng JSON
{

  // Union field data can be only one of the following:
  "text": string,
  "inlineData": {
    object (Blob)
  },
  "functionCall": {
    object (FunctionCall)
  },
  "functionResponse": {
    object (FunctionResponse)
  },
  "fileData": {
    object (FileData)
  }
  // End of list of possible types for union field data.
}
Trường

Trường kết hợp data.

data chỉ có thể là một trong những trạng thái sau đây:

text

string

Văn bản cùng dòng.

inlineData

object (Blob)

byte nội dung nghe nhìn cùng dòng.

functionCall

object (FunctionCall)

Một FunctionCall được dự đoán được trả về từ mô hình chứa chuỗi đại diện cho FunctionDeclaration.name cùng với các đối số và giá trị của các đối số đó.

functionResponse

object (FunctionResponse)

Kết quả đầu ra của một FunctionCall chứa một chuỗi đại diện cho FunctionDeclaration.name và một đối tượng JSON có cấu trúc chứa bất kỳ dữ liệu đầu ra nào của hàm sẽ được dùng làm ngữ cảnh cho mô hình.

fileData

object (FileData)

Dữ liệu dựa trên URI.

Blob

byte nội dung nghe nhìn thô.

Không được gửi văn bản dưới dạng byte thô, hãy sử dụng trường "văn bản".

Biểu diễn dưới dạng JSON
{
  "mimeType": string,
  "data": string
}
Trường
mimeType

string

Loại MIME tiêu chuẩn IANA của dữ liệu nguồn. Ví dụ: - image/png - image/jpeg Nếu cung cấp loại MIME không được hỗ trợ, hệ thống sẽ trả về lỗi. Để biết danh sách đầy đủ các loại được hỗ trợ, hãy xem Định dạng tệp được hỗ trợ.

data

string (bytes format)

byte thô cho định dạng nội dung nghe nhìn.

Chuỗi được mã hoá base64.

FunctionCall

Một FunctionCall được dự đoán được trả về từ mô hình chứa chuỗi đại diện cho FunctionDeclaration.name cùng với các đối số và giá trị của các đối số đó.

Biểu diễn dưới dạng JSON
{
  "name": string,
  "args": {
    object
  }
}
Trường
name

string

Bắt buộc. Tên hàm cần gọi. Phải là a-z, A-Z, 0-9 hoặc chứa dấu gạch dưới và dấu gạch ngang, với độ dài tối đa là 63.

args

object (Struct format)

Không bắt buộc. Các tham số và giá trị hàm ở định dạng đối tượng JSON.

FunctionResponse

Kết quả đầu ra từ FunctionCall chứa một chuỗi đại diện cho FunctionDeclaration.name và một đối tượng JSON có cấu trúc chứa bất kỳ đầu ra nào của hàm sẽ được dùng làm ngữ cảnh cho mô hình. Hàm này phải chứa kết quả của FunctionCall được đưa ra dựa trên thông tin dự đoán về mô hình.

Biểu diễn dưới dạng JSON
{
  "name": string,
  "response": {
    object
  }
}
Trường
name

string

Bắt buộc. Tên hàm cần gọi. Phải là a-z, A-Z, 0-9 hoặc chứa dấu gạch dưới và dấu gạch ngang, với độ dài tối đa là 63.

response

object (Struct format)

Bắt buộc. Phản hồi hàm ở định dạng đối tượng JSON.

FileData

Dữ liệu dựa trên URI.

Biểu diễn dưới dạng JSON
{
  "mimeType": string,
  "fileUri": string
}
Trường
mimeType

string

Không bắt buộc. Loại MIME tiêu chuẩn IANA của dữ liệu nguồn.

fileUri

string

Bắt buộc. URI.

Công cụ

Thông tin chi tiết về công cụ mà mô hình có thể sử dụng để tạo câu trả lời.

Tool là một đoạn mã cho phép hệ thống tương tác với các hệ thống bên ngoài để thực hiện một hành động hoặc một tập hợp hành động, nằm ngoài phạm vi kiến thức và phạm vi của mô hình.

Biểu diễn dưới dạng JSON
{
  "functionDeclarations": [
    {
      object (FunctionDeclaration)
    }
  ]
}
Trường
functionDeclarations[]

object (FunctionDeclaration)

Không bắt buộc. Danh sách FunctionDeclarations có sẵn cho mô hình có thể dùng để gọi hàm.

Mô hình hoặc hệ thống không thực thi hàm. Thay vào đó, hàm đã xác định có thể được trả về dưới dạng [FunctionCall][content.part.function_call] có các đối số phía máy khách để thực thi. Mô hình có thể quyết định gọi một tập hợp con các hàm này bằng cách điền [FunctionCall][content.part.function_call] trong phản hồi. Lượt trò chuyện tiếp theo có thể chứa [FunctionResponse][content.part.function_response] với ngữ cảnh tạo "hàm" [content.role] cho lượt mô hình tiếp theo.

FunctionDeclaration

Biểu diễn có cấu trúc của nội dung khai báo hàm như xác định trong thông số kỹ thuật OpenAPI 3.03. Tên hàm và tham số có trong phần khai báo này. FunctionDeclaration này là bản trình bày về một khối mã có thể được mô hình dùng làm Tool và được ứng dụng thực thi.

Biểu diễn dưới dạng JSON
{
  "name": string,
  "description": string,
  "parameters": {
    object (Schema)
  }
}
Trường
name

string

Bắt buộc. Tên hàm. Phải là a-z, A-Z, 0-9 hoặc chứa dấu gạch dưới và dấu gạch ngang, với độ dài tối đa là 63.

description

string

Bắt buộc. Mô tả ngắn gọn về hàm.

parameters

object (Schema)

Không bắt buộc. Mô tả các tham số cho hàm này. Phản ánh Khóa chuỗi đối tượng tham số Open API 3.03: tên của tham số. Tên tham số có phân biệt chữ hoa chữ thường. Giá trị giản đồ: Giản đồ xác định loại dùng cho tham số.

Lược đồ

Đối tượng Schema cho phép định nghĩa các kiểu dữ liệu đầu vào và đầu ra. Các loại này có thể là đối tượng, cũng có thể là dữ liệu nguyên gốc và mảng. Đại diện cho một tập hợp con chọn lọc của đối tượng giản đồ OpenAPI 3.0.

Biểu diễn dưới dạng JSON
{
  "type": enum (Type),
  "format": string,
  "description": string,
  "nullable": boolean,
  "enum": [
    string
  ],
  "properties": {
    string: {
      object (Schema)
    },
    ...
  },
  "required": [
    string
  ],
  "items": {
    object (Schema)
  }
}
Trường
type

enum (Type)

Bắt buộc. Kiểu dữ liệu.

format

string

Không bắt buộc. Định dạng của dữ liệu. Dữ liệu này chỉ được dùng cho các loại dữ liệu gốc. Các định dạng được hỗ trợ: cho loại NUMBER: số thực, gấp đôi cho loại INTEGER: int32, int64

description

string

Không bắt buộc. Nội dung mô tả ngắn gọn về tham số. Ví dụ về cách sử dụng. Nội dung mô tả tham số có thể được định dạng là Markdown.

nullable

boolean

Không bắt buộc. Cho biết liệu giá trị này có thể là rỗng hay không.

enum[]

string

Không bắt buộc. Các giá trị có thể có của phần tử Type.STRING có định dạng enum. Ví dụ: chúng ta có thể xác định một Hướng Enum là : {type:STRING, format:enum, enum:["EAST", NORTH", "SOUTH", "WEST"]}

properties

map (key: string, value: object (Schema))

Không bắt buộc. Thuộc tính của Type.OBJECT.

Một đối tượng chứa danh sách các cặp "key": value. Ví dụ: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

required[]

string

Không bắt buộc. Các thuộc tính bắt buộc của Type.OBJECT.

items

object (Schema)

Không bắt buộc. Giản đồ các phần tử của Type.ARRAY.

Loại

Loại chứa danh sách các loại dữ liệu OpenAPI như được xác định theo https://spec.openapis.org/oas/v3.0.3#data-types

Enum
TYPE_UNSPECIFIED Không được chỉ định, không nên sử dụng.
STRING Loại chuỗi.
NUMBER Loại số.
INTEGER Loại số nguyên.
BOOLEAN Loại boolean.
ARRAY Loại mảng.
OBJECT Loại đối tượng.

ToolConfig

Cấu hình Công cụ chứa các tham số để chỉ định cách sử dụng Tool trong yêu cầu.

Biểu diễn dưới dạng JSON
{
  "functionCallingConfig": {
    object (FunctionCallingConfig)
  }
}
Trường
functionCallingConfig

object (FunctionCallingConfig)

Không bắt buộc. Cấu hình gọi hàm.

FunctionCallingConfig

Cấu hình để chỉ định hành vi gọi hàm.

Biểu diễn dưới dạng JSON
{
  "mode": enum (Mode),
  "allowedFunctionNames": [
    string
  ]
}
Trường
mode

enum (Mode)

Không bắt buộc. Chỉ định chế độ thực thi lệnh gọi hàm. Nếu bạn không chỉ định, giá trị mặc định sẽ được đặt thành TỰ ĐỘNG.

allowedFunctionNames[]

string

Không bắt buộc. Một tập hợp tên hàm mà khi được cung cấp, 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Ỳ. Tên hàm phải khớp với [FunctionDeclaration.name]. Khi chế độ được đặt thành BẤT KỲ, mô hình sẽ dự đoán lệnh gọi hàm từ tập hợp tên hàm được cung cấp.

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. 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 sẽ quyết định dự đoán lệnh gọi hàm hoặc phản hồi bằng ngôn ngữ tự nhiên.
ANY Mô hình bị hạn chế để chỉ luôn dự đoán lệnh gọi hàm. Nếu bạn đặt " allowedFunctionNames", thì lệnh gọi hàm dự đoán sẽ bị giới hạn ở bất kỳ một trong số "".
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 cũng giống như khi không truyền bất kỳ nội dung khai báo hàm nào.

UsageMetadata

Siêu dữ liệu về việc sử dụng nội dung được lưu vào bộ nhớ đệm.

Biểu diễn dưới dạng JSON
{
  "totalTokenCount": integer
}
Trường
totalTokenCount

integer

Tổng số mã thông báo mà nội dung được lưu vào bộ nhớ đệm sử dụng.

Phương thức

create

Tạo tài nguyên Nội dung được lưu trong bộ nhớ đệm.

delete

Xoá tài nguyên Nội dung được lưu trong bộ nhớ đệm.

get

Đọc tài nguyên Nội dung được lưu trong bộ nhớ đệm.

list

Liệt kê Nội dung được lưu trong bộ nhớ đệm.

patch

Cập nhật tài nguyên Nội dung được lưu vào bộ nhớ đệm (chỉ có thể cập nhật khi hết hạn).