PaLM (decommissioned)

方法:models.generateText

根據輸入訊息,產生模型的回應。

端點

post https://generativelanguage.googleapis.com/v1beta/{model=models/*}:generateText

路徑參數

model string

必要欄位。用於產生完成動作的 ModelTunedModel 名稱。例如:models/text-bison-001 tunedModels/sentence-translator-u3b7m。格式為 models/{model}

要求主體

要求主體的資料會採用以下結構:

欄位
prompt object (TextPrompt)

必要欄位。給模型做為提示的任意形式輸入文字。

收到提示後,模型會產生 TextCompletion 回應,並預測輸入文字的補完內容。

safetySettings[] object (SafetySetting)

選用設定。用來封鎖不安全內容的 SafetySetting 唯一例項清單。

將套用至 GenerateTextRequest.promptGenerateTextResponse.candidates。每個 SafetyCategory 類型應只設定一個設定。API 會封鎖任何未達到這些設定所設門檻的提示和回應。這份清單會覆寫 safetySettings 中指定的每個 SafetyCategory 的預設設定。如果清單中提供的特定 SafetyCategory 沒有 SafetySetting,API 就會使用該類別的預設安全設定。文字服務支援 HARM_CATEGORY_DEROGATORY、HARM_CATEGORY_TOXICITY、HARM_CATEGORY_VIOLENCE、HARM_CATEGORY_SEXUAL、HARM_CATEGORY_MEDICAL、HARM_CATEGORY_DANGEROUS 等危害類別。

stopSequences[] string

停止產生輸出的字元序列集合 (最多 5 個)。如果指定了這個值,API 會在首次出現停止序列時停止。這個停止序列不會包含在回應中。

temperature number

選用設定。控制輸出內容的隨機性。注意:預設值因型號而異,請參閱 Model 傳回 getModel 函式的 Model.temperature 屬性。

值的範圍為 [0.0,1.0],含兩端。值越接近 1.0,產生的回覆就會越多元且更有創意;值越接近 0.0,模型通常會產生較直接的回覆。

candidateCount integer

選用設定。要傳回的產生回應數量。

這個值必須介於 [1, 8] (含首尾) 之間。如果未設定,則預設值為 1。

maxOutputTokens integer

選用設定。候選項中可納入的符記數量上限。

如果未設定,則預設為 Model 規格中指定的 outputTokenLimit。

topP number

選用設定。取樣時要考慮的符記累計可能性上限。

模型會使用結合的 Top-k 和核取樣。

系統會根據符記的指定機率進行排序,只考慮機率最高的符記。Top-k 取樣會直接限制要考量的符記數量上限,而 Nucleus 取樣會根據累積機率限制符記數量。

注意:預設值會因型號而異,請參閱 Model 傳回 getModel 函式的 Model.top_p 屬性。

topK integer

選用設定。取樣時要考慮的符記數量上限。

模型會使用結合的 Top-k 和核取樣。

前 K 大取樣會考量機率最高的 topK 符記組合。預設值為 40。

注意:預設值會因型號而異,請參閱 Model 傳回 getModel 函式的 Model.top_k 屬性。

回應主體

如果成功,回應主體會包含 GenerateTextResponse 的執行例項。

方法:models.countTextTokens

在文字上執行模型的分析器,並傳回符號數量。

端點

post https://generativelanguage.googleapis.com/v1beta/{model=models/*}:countTextTokens

路徑參數

model string

必要欄位。模型的資源名稱。這會做為模型使用的 ID。

這個名稱應與 models.list 方法傳回的模型名稱相符。

格式:models/{model} 格式為 models/{model}

要求主體

要求主體的資料會採用以下結構:

欄位
prompt object (TextPrompt)

必要欄位。給模型做為提示的任意形式輸入文字。

回應主體

models.countTextTokens 的回應。

它會針對 prompt 傳回模型的 tokenCount

如果成功,回應主體會含有以下結構的資料:

欄位
tokenCount integer

modelprompt 切割成多少個符記。

一律不得為負數。

JSON 表示法
{
  "tokenCount": integer
}

方法:models.generateMessage

在輸入 MessagePrompt 的情況下,從模型產生回應。

端點

post https://generativelanguage.googleapis.com/v1beta/{model=models/*}:generateMessage

路徑參數

model string

必要欄位。要使用的模型名稱。

格式:name=models/{model}。其格式為 models/{model}

要求主體

要求主體的資料會採用以下結構:

欄位
prompt object (MessagePrompt)

必要欄位。向模型提供的結構化文字輸入內容,用於提示。

在收到提示後,模型會傳回預測的下一個對話訊息。

temperature number

選用設定。控制輸出的隨機性。

值的範圍為 [0.0,1.0] 以上 (包含 [0.0,1.0])。值越接近 1.0,產生的回覆就會越多樣化;值越接近 0.0,模型產生的回覆就會越少。

candidateCount integer

選用設定。要傳回的產生回應訊息數量。

這個值必須介於 [1, 8] 之間 (含頭尾)。如果未設定,則預設為 1

topP number

選用設定。取樣時要考慮的符記累計可能性上限。

模型會使用結合的 Top-k 和核取樣。

Nucleus 取樣會考慮機率總和至少為 topP 的最小詞元集合。

topK integer

選用設定。取樣時要考慮的符記數量上限。

模型會使用結合的 Top-k 和核取樣。

前 K 大取樣會考量機率最高的 topK 符記組合。

回應主體

模型的回應。

包括候選訊息和會話記錄,以時間順序排列的訊息形式呈現。

如果成功,回應主體會含有以下結構的資料:

欄位
candidates[] object (Message)

模型的候選回覆訊息。

messages[] object (Message)

模型使用的對話記錄。

filters[] object (ContentFilter)

一組提示和回應文字的內容篩選中繼資料。

這會指出哪些 SafetyCategory 會封鎖此回應的候選項目、觸發封鎖的最低 HarmProbability,以及該類別的 HarmThreshold 設定。

JSON 表示法
{
  "candidates": [
    {
      object (Message)
    }
  ],
  "messages": [
    {
      object (Message)
    }
  ],
  "filters": [
    {
      object (ContentFilter)
    }
  ]
}

方法:models.countMessageTokens

在字串上執行模型的分析器,並傳回符號數。

端點

post https://generativelanguage.googleapis.com/v1beta/{model=models/*}:countMessageTokens

路徑參數

model string

必要欄位。模型的資源名稱。這會做為模型使用的 ID。

這個名稱應與 models.list 方法傳回的模型名稱相符。

格式:models/{model} 格式為 models/{model}

要求主體

要求主體的資料會採用以下結構:

欄位
prompt object (MessagePrompt)

必要欄位。要傳回其符記數量的提示。

回應主體

models.countMessageTokens 的回應。

它會針對 prompt 傳回模型的 tokenCount

如果成功,回應主體會含有以下結構的資料:

欄位
tokenCount integer

modelprompt 切割成多少個符記。

一律不得為負數。

JSON 表示法
{
  "tokenCount": integer
}

方法:models.embedText

在輸入訊息的情況下,從模型產生嵌入。

端點

post https://generativelanguage.googleapis.com/v1beta/{model=models/*}:embedText

路徑參數

model string

必要欄位。模型名稱,格式為 model=models/{model}。其格式為 models/{model}

要求主體

要求主體的資料會採用以下結構:

欄位
text string

選用設定。模型會將這段任意形式的輸入文字轉換為嵌入文字。

回應主體

對 EmbedTextRequest 的回應。

如果成功,回應主體會含有以下結構的資料:

欄位
embedding object (Embedding)

僅供輸出。從輸入文字產生的嵌入資料。

JSON 表示法
{
  "embedding": {
    object (Embedding)
  }
}

方法:models.batchEmbedText

在同步呼叫中,根據模型提供的輸入文字產生多個嵌入。

端點

post https://generativelanguage.googleapis.com/v1beta/{model=models/*}:batchEmbedText

路徑參數

model string

必要欄位。用於產生嵌入項目的 Model 名稱。範例:models/embedding-gecko-001 採用 models/{model} 格式。

要求主體

要求主體的資料會採用以下結構:

欄位
texts[] string

選用設定。模型會將任意形式的輸入文字轉換為嵌入文字。目前的限制為 100 個文字,超過這個數量就會擲回錯誤。

requests[] object (EmbedTextRequest)

選用設定。嵌入批次要求。只能設定 textsrequests 其中一個。

回應主體

對 EmbedTextRequest 的回應。

如果成功,回應主體會含有以下結構的資料:

欄位
embeddings[] object (Embedding)

僅供輸出。從輸入文字產生的嵌入值。

JSON 表示法
{
  "embeddings": [
    {
      object (Embedding)
    }
  ]
}

EmbedTextRequest

要求從模型取得文字嵌入。

欄位
model string

必要欄位。模型名稱,格式為 model=models/{model}。

text string

選用設定。模型會將這段任意形式的輸入文字轉換為嵌入文字。

JSON 表示法
{
  "model": string,
  "text": string
}

方法:tunedModels.generateText

在輸入訊息的情況下,產生模型的回應。

端點

post https://generativelanguage.googleapis.com/v1beta/{model=tunedModels/*}:generateText

路徑參數

model string

必要欄位。用於產生完成動作的 ModelTunedModel 名稱。例如:models/text-bison-001 tunedModels/sentence-translator-u3b7m。格式為 tunedModels/{tunedmodel}

要求主體

要求主體的資料會採用以下結構:

欄位
prompt object (TextPrompt)

必要欄位。給模型做為提示的任意形式輸入文字。

收到提示後,模型會產生 TextCompletion 回應,並預測輸入文字的補完內容。

safetySettings[] object (SafetySetting)

選用設定。用來封鎖不安全內容的 SafetySetting 唯一例項清單。

將套用至 GenerateTextRequest.promptGenerateTextResponse.candidates。每個 SafetyCategory 類型應只設定一個設定。API 會封鎖任何未達到這些設定所設門檻的提示和回應。這份清單會覆寫 safetySettings 中指定的每個 SafetyCategory 的預設設定。如果清單中提供的特定 SafetyCategory 沒有 SafetySetting,API 就會使用該類別的預設安全設定。文字服務支援 HARM_CATEGORY_DEROGATORY、HARM_CATEGORY_TOXICITY、HARM_CATEGORY_VIOLENCE、HARM_CATEGORY_SEXUAL、HARM_CATEGORY_MEDICAL、HARM_CATEGORY_DANGEROUS 等危害類別。

stopSequences[] string

停止產生輸出的字元序列集合 (最多 5 個)。如果指定了這個值,API 會在首次出現停止序列時停止。這個停止序列不會包含在回應中。

temperature number

選用設定。控制輸出內容的隨機性。注意:預設值因型號而異,請參閱 Model 傳回 getModel 函式的 Model.temperature 屬性。

值的範圍為 [0.0,1.0],含兩端。值越接近 1.0,產生的回覆就會越多元且更有創意;值越接近 0.0,模型通常會產生較直接的回覆。

candidateCount integer

選用設定。要傳回的產生回應數量。

這個值必須介於 [1, 8] (含首尾) 之間。如果未設定,則預設值為 1。

maxOutputTokens integer

選用設定。候選項中可納入的符記數量上限。

如果未設定,則預設為 Model 規格中指定的 outputTokenLimit。

topP number

選用設定。取樣時要考慮的符記累計可能性上限。

模型會使用結合的 Top-k 和核取樣。

系統會根據符記的指定機率進行排序,只考慮機率最高的符記。Top-k 取樣會直接限制要考量的符記數量上限,而 Nucleus 取樣會根據累積機率限制符記數量。

注意:預設值會因型號而異,請參閱 Model 傳回 getModel 函式的 Model.top_p 屬性。

topK integer

選用設定。取樣時要考慮的符記數量上限。

模型會使用結合的 Top-k 和核取樣。

前 K 大取樣會考量機率最高的 topK 符記組合。預設值為 40。

注意:預設值會因型號而異,請參閱 Model 傳回 getModel 函式的 Model.top_k 屬性。

回應主體

如果成功,回應主體會包含 GenerateTextResponse 的執行例項。

ContentFilter

與處理單一要求相關的內容篩選中繼資料。

ContentFilter 包含原因和選用的支援字串。但未指定原因。

欄位
reason enum (BlockedReason)

內容在要求處理期間遭到封鎖的原因。

message string

字串,可進一步說明篩選行為。

JSON 表示法
{
  "reason": enum (BlockedReason),
  "message": string
}

BlockedReason

內容遭封鎖的可能原因清單。

列舉
BLOCKED_REASON_UNSPECIFIED 未指定封鎖原因。
SAFETY 內容因安全性設定而遭到封鎖。
OTHER 內容遭到封鎖,但原因未分類。

嵌入

代表嵌入項目的浮點值清單。

欄位
value[] number

嵌入值。

JSON 表示法
{
  "value": [
    number
  ]
}

訊息

結構化文字的基本單位。

Message 包含 authorMessagecontent

author 會在訊息以文字形式提供給模型時標記訊息。

欄位
author string

選用設定。這則訊息的作者。

當這則訊息以文字形式提供給模型時,這會做為標記該訊息內容的索引鍵。

作者可以是任何英數字元字串。

content string

必要欄位。結構化 Message 的文字內容。

citationMetadata object (CitationMetadata)

僅供輸出。這個 Message 中模型產生的 content 參考資訊。

如果這個 Message 是模型產生的輸出內容,這個欄位可能會填入 content 中包含的任何文字的歸因資訊。這個欄位僅用於輸出。

JSON 表示法
{
  "author": string,
  "content": string,
  "citationMetadata": {
    object (CitationMetadata)
  }
}

MessagePrompt

所有結構化輸入文字都會做為提示傳遞至模型。

MessagePrompt 包含一組結構化欄位,可提供對話的脈絡、使用者輸入/模型輸出訊息組合的範例,讓模型以不同方式回應,以及對話記錄或訊息清單,代表使用者與模型之間的對話輪流。

欄位
context string

選用設定。應先提供給模型的文字,以便建立回應的基礎。

如果不為空白,這個 context 會先提供給模型,再提供給 examplesmessages。使用 context 時,請務必在每個要求中提供 context,以維持連續性。

這個欄位可用來說明您向模型提問的問題,協助提供情境並引導回覆。例如:「將詞組從英文翻譯成法文」或「根據陳述,將情緒分類為開心、難過或中立」。

如果輸入大小總和超過模型的 inputTokenLimit,且輸入要求遭到截斷,則此欄位中的任何內容都會優先於訊息記錄。

examples[] object (Example)

選用設定。模型應產生的內容示例。

包括使用者輸入內容和模型應模擬的回應。

這些 examples 的處理方式與對話訊息相同,但會優先於 messages 中的記錄:如果輸入大小總和超過模型的 inputTokenLimit,輸入內容就會截斷。項目會在 examples 之前從 messages 中移除。

messages[] object (Message)

必要欄位。近期對話記錄的快照,依時間先後排序。

兩位作者輪流講話。

如果輸入大小總和超過模型的 inputTokenLimit,輸入內容就會截斷:messages 會捨棄最舊的項目。

JSON 表示法
{
  "context": string,
  "examples": [
    {
      object (Example)
    }
  ],
  "messages": [
    {
      object (Message)
    }
  ]
}

範例

用來指示模型的輸入/輸出範例。

這會說明模型應如何回應或設定回應格式。

欄位
input object (Message)

必要欄位。使用者輸入的 Message 示例。

output object (Message)

必要欄位。模型在收到輸入內容後應輸出的內容示例。

JSON 表示法
{
  "input": {
    object (Message)
  },
  "output": {
    object (Message)
  }
}

GenerateTextResponse

模型的回應,包括候選完成內容。

欄位
candidates[] object (TextCompletion)

模型的候選回覆。

filters[] object (ContentFilter)

一組提示和回應文字的內容篩選中繼資料。

這會指出哪些 SafetyCategory 會封鎖這個回應的候選項目、觸發封鎖的最低 HarmProbability,以及該類別的 HarmThreshold 設定。這表示要解除至少 1 個回應的封鎖,SafetySettings 必須做出最小變更。

請在要求中使用 SafetySettings (或 API 的預設 SafetySettings) 設定封鎖條件。

safetyFeedback[] object (SafetyFeedback)

傳回任何與內容篩選相關的安全性意見回饋。

JSON 表示法
{
  "candidates": [
    {
      object (TextCompletion)
    }
  ],
  "filters": [
    {
      object (ContentFilter)
    }
  ],
  "safetyFeedback": [
    {
      object (SafetyFeedback)
    }
  ]
}

TextCompletion

模型傳回的輸出文字。

欄位
output string

僅供輸出。模型傳回的產生文字。

safetyRatings[] object (SafetyRating)

回覆的安全性評分。

每個類別最多只能有一個評分。

citationMetadata object (CitationMetadata)

僅供輸出。這個 TextCompletion 中模型產生的 output 參考資訊。

這個欄位可能會填入 output 中包含的任何文字的出處資訊。

JSON 表示法
{
  "output": string,
  "safetyRatings": [
    {
      object (SafetyRating)
    }
  ],
  "citationMetadata": {
    object (CitationMetadata)
  }
}

SafetyFeedback

整個要求的安全性意見回饋。

如果輸入內容和/或回應因安全設定而遭到封鎖,系統就會填入這個欄位。並非每個 HarmCategory 都有 SafetyFeedback。每個 SafetyFeedback 都會傳回要求使用的安全性設定,以及允許傳回結果的最低 HarmProbability。

欄位
rating object (SafetyRating)

根據內容評估的安全評等。

setting object (SafetySetting)

套用至要求的安全設定。

JSON 表示法
{
  "rating": {
    object (SafetyRating)
  },
  "setting": {
    object (SafetySetting)
  }
}

TextPrompt

提供給模型的文字提示。

模型會使用這個文字提示產生文字完成內容。

欄位
text string

必要欄位。提示文字。

JSON 表示法
{
  "text": string
}