- 資源:CachedContent
- 內容
- 零件
- Blob
- FunctionCall (函式呼叫)
- FunctionResponse
- FileData
- 工具
- FunctionDeclaration
- 結構定義
- 類型
- ToolConfig
- FunctionCallingConfig
- 模式
- UsageMetadata
- 方法
資源:CachedContent
已預先處理的內容,可用於後續向 GenerativeService 要求
快取內容只能用於建立時使用的模型。
JSON 表示法 |
---|
{ "contents": [ { object ( |
欄位 | |
---|---|
contents[] |
選用設定。僅限輸入。不可變動。要快取的內容。 |
tools[] |
選用設定。僅限輸入。不可變動。模型可以用來產生下一次回應的 |
createTime |
僅供輸出。快取項目的建立時間。 RFC3339 世界標準時間「Zulu」格式的時間戳記,解析度以奈秒為單位,小數點後最多 9 位。範例: |
updateTime |
僅供輸出。快取項目的上次更新時間 (世界標準時間)。 RFC3339 世界標準時間「Zulu」格式的時間戳記,解析度以奈秒為單位,小數點後最多 9 位。範例: |
usageMetadata |
僅供輸出。快取內容使用方式的中繼資料。 |
聯集欄位 expiration 。指定這項資源的到期日。expiration 只能是下列其中一項: |
|
expireTime |
資源到期時間的時間戳記 (世界標準時間)。不論輸入什麼內容,這項資訊「一律」會在輸出內容中提供。 RFC3339 世界標準時間「Zulu」格式的時間戳記,解析度以奈秒為單位,小數點後最多 9 位。範例: |
ttl |
僅限輸入。這項資源的新存留時間 (僅限輸入)。 持續時間以秒為單位,最多 9 個小數位數,結尾為「 |
name |
選用設定。ID。參照快取內容的資源名稱。格式: |
displayName |
選用設定。不可變動。使用者為快取內容產生的有意義的顯示名稱。最多 128 個萬國碼 (Unicode) 字元。 |
model |
必要欄位。不可變動。用於快取內容格式的 |
systemInstruction |
選用設定。僅限輸入。不可變動。開發人員設定系統操作說明。目前僅限文字。 |
toolConfig |
選用設定。僅限輸入。不可變動。工具設定。所有工具都會共用這項設定。 |
內容
包含訊息多部分內容的基本結構化資料類型。
Content
包含指定 Content
生產者的 role
欄位,以及包含包含訊息回合內容的多部分資料的 parts
欄位。
JSON 表示法 |
---|
{
"parts": [
{
object ( |
欄位 | |
---|---|
parts[] |
已排序的 |
role |
選用設定。內容的製作者。必須為「user」或「model」。 適合設為多輪對話,否則可留空或未設定。 |
配件
包含媒體為多部分 Content
訊息一部分的資料類型。
Part
包含具有相關資料類型的資料。Part
只能包含 Part.data
中系統接受的類型。
如果 inlineData
欄位已填入原始位元組,Part
就必須有固定的 IANA MIME 類型,以識別媒體的類型和子類型。
JSON 表示法 |
---|
{ // Union field |
欄位 | |
---|---|
聯集欄位
|
|
text |
內嵌文字。 |
inlineData |
內嵌媒體位元組。 |
functionCall |
模型傳回的預測 |
functionResponse |
|
fileData |
以 URI 為基礎的資料。 |
Blob
原始媒體位元組。
文字不應以原始位元組的形式傳送,請使用「text」欄位。
JSON 表示法 |
---|
{ "mimeType": string, "data": string } |
欄位 | |
---|---|
mimeType |
來源資料的 IANA 標準 MIME 類型。範例:- image/png - image/jpeg 如果提供的 MIME 類型不受支援,系統會傳回錯誤。如需支援類型的完整清單,請參閱「支援的檔案格式」。 |
data |
媒體格式的原始位元組。 Base64 編碼的字串。 |
FunctionCall
模型傳回的預測 FunctionCall
,其中包含字串,代表具有引數及其值的 FunctionDeclaration.name
。
JSON 表示法 |
---|
{ "name": string, "args": { object } } |
欄位 | |
---|---|
name |
必要欄位。要呼叫的函式名稱。必須為 a-z、A-Z、0-9,或包含底線和破折號,長度上限為 63 個字元。 |
args |
選用設定。JSON 物件格式的函式參數和值。 |
FunctionResponse
來自 FunctionCall
的結果輸出,其中包含代表 FunctionDeclaration.name
的字串,以及包含函式任何輸出的結構化 JSON 物件,會做為模型的內容。這應包含根據模型預測結果產生的 FunctionCall
結果。
JSON 表示法 |
---|
{ "name": string, "response": { object } } |
欄位 | |
---|---|
name |
必要欄位。要呼叫的函式名稱。必須為 a-z、A-Z、0-9,或包含底線和破折號,長度上限為 63 個字元。 |
response |
必要欄位。JSON 物件格式的函式回應。 |
FileData
以 URI 為基礎的資料。
JSON 表示法 |
---|
{ "mimeType": string, "fileUri": string } |
欄位 | |
---|---|
mimeType |
選用設定。來源資料的 IANA 標準 MIME 類型。 |
fileUri |
必要欄位。URI。 |
工具
模型可能用來產生回應的工具詳細資料。
Tool
是一段程式碼,可讓系統與外部系統互動,在模型知識和範圍外,執行操作或一組動作。
JSON 表示法 |
---|
{
"functionDeclarations": [
{
object ( |
欄位 | |
---|---|
functionDeclarations[] |
選用設定。可用於函式呼叫的模型可用的 模型或系統不會執行該函式。相反地,系統可能會將已定義的函式傳回為 [FunctionCall][content.part.function_call] 並使用用戶端的引數來執行。模型可能會在回應中填入 [FunctionCall][content.part.function_call] 決定呼叫部分函式。下一個對話回合可能會包含 [FunctionResponse][content.part.function_response] 和 [content.role]「function」生成背景資訊,供下次模型轉彎使用。 |
FunctionDeclaration
根據 OpenAPI 3.03 規格定義的函式宣告結構化表示法。此宣告中包含函式名稱和參數。此函式宣告是程式碼區塊的表示法,可由模型做為 Tool
使用,並由用戶端執行。
JSON 表示法 |
---|
{
"name": string,
"description": string,
"parameters": {
object ( |
欄位 | |
---|---|
name |
必要欄位。函式的名稱。必須為 a-z、A-Z、0-9,或包含底線和破折號,長度上限為 63 個字元。 |
description |
必要欄位。這個函式的簡短說明。 |
parameters |
選用設定。說明這個函式的參數。反映 Open API 3.03 參數物件字串金鑰:參數名稱。參數名稱須區分大小寫。結構定義值:定義參數所用類型的結構定義。 |
結構定義
Schema
物件可讓您定義輸入和輸出資料類型。這些型別可以是物件,也可以是原始和陣列。代表 OpenAPI 3.0 結構定義物件的選取子集。
JSON 表示法 |
---|
{ "type": enum ( |
欄位 | |
---|---|
type |
必要欄位。資料類型。 |
format |
選用設定。資料的格式,僅適用於原始資料類型。支援的格式:NUMBER 類型:浮點值、INTEGER 類型雙倍數:int32、int64 |
description |
選用設定。參數的簡短說明。包含使用範例。參數說明的格式必須為 Markdown。 |
nullable |
選用設定。指出值是否為空值。 |
enum[] |
選用設定。Type.STRING 元素的可能值採用列舉格式。舉例來說,我們可以將 Enum Direction 定義為:{type:STRING, format:enum, enum:["EAST", NORTH", "SOUTH", "WEST"]} |
properties |
選用設定。Type.OBJECT 的屬性。 這個物件中包含 |
required[] |
選用設定。Type.OBJECT 的必要屬性。 |
items |
選用設定。Type.ARRAY 元素的結構定義。 |
類型
類型包含由 https://spec.openapis.org/oas/v3.0.3#data-types 定義的 OpenAPI 資料類型清單
列舉 | |
---|---|
TYPE_UNSPECIFIED |
未指定,請勿使用。 |
STRING |
字串類型。 |
NUMBER |
數字類型。 |
INTEGER |
整數類型。 |
BOOLEAN |
布林值類型。 |
ARRAY |
陣列類型。 |
OBJECT |
物件類型。 |
ToolConfig
此工具設定包含可在要求中指定 Tool
使用方式的參數。
JSON 表示法 |
---|
{
"functionCallingConfig": {
object ( |
欄位 | |
---|---|
functionCallingConfig |
選用設定。函式呼叫設定。 |
FunctionCallingConfig
指定函式呼叫行為的設定。
JSON 表示法 |
---|
{
"mode": enum ( |
欄位 | |
---|---|
mode |
選用設定。指定應執行函式呼叫的模式,如果未指定,預設值將設為「AUTO」。 |
allowedFunctionNames[] |
選用設定。一組函式名稱,如果提供此組合,可限制模型將呼叫的函式。 只有在模式為「任意」時才需要設定這個屬性。函式名稱應與 [FunctionDeclaration.name] 相符。如果將 mode 設為 Any,模型會根據提供的函式名稱集預測函式呼叫。 |
模式
定義執行模式,以定義函式呼叫的執行行為。
列舉 | |
---|---|
MODE_UNSPECIFIED |
未指定的函式呼叫模式。請勿使用這個值。 |
AUTO |
預設模型行為,模型會決定預測函式呼叫或自然語言回應。 |
ANY |
模型只能預測函式呼叫。如果設定「allowedFunctionNames」,則預測函式呼叫將只限於「allowedFunctionNames」的其中一項,否則系統預測的函式呼叫將會是上述任一提供的「functionDeclarations」。 |
NONE |
模型不會預測任何函式呼叫。模型行為與傳遞任何函式宣告時的行為相同。 |
UsageMetadata
快取內容使用方式的中繼資料。
JSON 表示法 |
---|
{ "totalTokenCount": integer } |
欄位 | |
---|---|
totalTokenCount |
快取內容耗用的權杖總數。 |
方法 |
|
---|---|
|
建立 CachedContent 資源。 |
|
刪除 CachedContent 資源。 |
|
讀取 CachedContent 資源。 |
|
列出 CachedContents。 |
|
更新 CachedContent 資源 (只有到期時間才會更新)。 |