メソッド: models.generateText
入力メッセージを指定して、モデルからレスポンスを生成します。
エンドポイント
投稿https: / /generativelanguage.googleapis.com /v1beta /{model=models /*}:generateText
パスパラメータ
model
string
必須。補完の生成に使用する Model
または TunedModel
の名前。例: models/text-bison-001、tunedModels/sentence-translator-u3b7m。形式は models/{model}
です。
リクエストの本文
リクエストの本文には、次の構造のデータが含まれます。
prompt
object (TextPrompt
)
必須。モデルにプロンプトとして渡される自由形式の入力テキスト。
プロンプトが指定されると、モデルは入力テキストの補完として予測される TextCompletion レスポンスを生成します。
safetySettings[]
object (SafetySetting
)
省略可。安全でないコンテンツをブロックするための、一意の SafetySetting
インスタンスのリスト。
この制限は GenerateTextRequest.prompt
と GenerateTextResponse.candidates
に適用されます。SafetyCategory
タイプごとに設定は 1 つだけにする必要があります。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
省略可。出力のランダム性を制御します。注: デフォルト値はモデルによって異なります。getModel
関数から返された Model
の Model.temperature
属性をご覧ください。
値の範囲は [0.0,1.0] です。値が 1.0 に近いほど、より多様でクリエイティブなレスポンスが生成されます。値が 0.0 に近いほど、モデルからより直接的なレスポンスが生成されます。
candidateCount
integer
省略可。返す生成されたレスポンスの数。
この値は [1, 8] の範囲で指定してください。設定しない場合、デフォルトで 1 になります。
maxOutputTokens
integer
省略可。候補に含めるトークンの最大数。
設定されていない場合、デフォルトで Model
仕様で指定された outputTokenLimit になります。
topP
number
省略可。サンプリング時に考慮するトークンの累積確率の最大値。
このモデルでは、Top-k と Nucleus サンプリングを組み合わせて使用します。
トークンは割り当てられた確率に基づいて並べ替えられ、最も可能性の高いトークンのみが考慮されます。Top-k サンプリングは、考慮するトークンの最大数を直接制限しますが、Nucleus サンプリングは累積確率に基づいてトークンの数を制限します。
注: デフォルト値はモデルによって異なります。getModel
関数から返された Model
の Model.top_p
属性をご覧ください。
topK
integer
省略可。サンプリング時に考慮するトークンの最大数。
このモデルでは、Top-k と Nucleus サンプリングを組み合わせて使用します。
Top-k サンプリングでは、最も確率の高い topK
個のトークンのセットが考慮されます。デフォルトは 40 です。
注: デフォルト値はモデルによって異なります。getModel
関数から返された Model
の Model.top_k
属性をご覧ください。
レスポンスの本文
成功した場合、レスポンスの本文には GenerateTextResponse
のインスタンスが含まれます。
メソッド: models.countTextTokens
テキストに対してモデルのトークナイザーを実行し、トークン数を返します。
エンドポイント
投稿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
model
が prompt
をトークン化するトークンの数。
常に非負の値です。
JSON 表現 |
---|
{ "tokenCount": integer } |
メソッド: models.generateMessage
入力 MessagePrompt
に基づいてモデルからレスポンスを生成します。
エンドポイント
投稿https: / /generativelanguage.googleapis.com /v1beta /{model=models /*}:generateMessage
パスパラメータ
model
string
必須。使用するモデルの名前。
形式: name=models/{model}
。形式は models/{model}
です。
リクエストの本文
リクエストの本文には、次の構造のデータが含まれます。
prompt
object (MessagePrompt
)
必須。モデルにプロンプトとして渡される構造化されたテキスト入力。
プロンプトが指定されると、モデルはディスカッションの次のメッセージとして予測されるものを返します。
temperature
number
省略可。出力のランダム性を制御します。
値の範囲は [0.0,1.0]
です。1.0
に近い値ほど、より多様なレスポンスが生成されます。一方、0.0
に近い値ほど、モデルから驚くようなレスポンスが返される可能性は低くなります。
candidateCount
integer
省略可。返す生成されたレスポンス メッセージの数。
この値は [1, 8]
の範囲で指定する必要があります。設定しない場合、デフォルトで 1
になります。
topP
number
省略可。サンプリング時に考慮するトークンの累積確率の最大値。
このモデルでは、Top-k と Nucleus サンプリングを組み合わせて使用します。
ニュークリアス サンプリングでは、確率の合計が topP
以上の最小のトークンセットが考慮されます。
topK
integer
省略可。サンプリング時に考慮するトークンの最大数。
このモデルでは、Top-k と Nucleus サンプリングを組み合わせて使用します。
Top-k サンプリングでは、最も確率の高い topK
個のトークンのセットが考慮されます。
レスポンスの本文
モデルからのレスポンス。
これには、候補メッセージと、時系列順に並べられたメッセージ形式の会話履歴が含まれます。
成功した場合、レスポンスの本文には次の構造のデータが含まれます。
candidates[]
object (Message
)
モデルからの候補レスポンス メッセージ。
messages[]
object (Message
)
モデルで使用される会話履歴。
filters[]
object (ContentFilter
)
プロンプトとレスポンスのテキストのコンテンツ フィルタリング メタデータのセット。
これは、このレスポンスから候補をブロックした SafetyCategory
、ブロックをトリガーした最小の HarmProbability
、そのカテゴリの HarmThreshold 設定を示します。
JSON 表現 |
---|
{ "candidates": [ { object ( |
メソッド: models.countMessageTokens
文字列に対してモデルのトークナイザーを実行し、トークン数を返します。
エンドポイント
投稿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
model
が prompt
をトークン化するトークンの数。
常に非負の値です。
JSON 表現 |
---|
{ "tokenCount": integer } |
メソッド: models.embedText
入力メッセージが指定されたモデルからエンベディングを生成します。
エンドポイント
投稿https: / /generativelanguage.googleapis.com /v1beta /{model=models /*}:embedText
パスパラメータ
model
string
必須。使用するモデル名。形式は model=models/{model} です。形式は models/{model}
です。
リクエストの本文
リクエストの本文には、次の構造のデータが含まれます。
text
string
省略可。モデルがエンベディングに変換する自由形式の入力テキスト。
メソッド: models.batchEmbedText
同期呼び出しで、入力テキストが指定されたモデルから複数のエンベディングを生成します。
エンドポイント
投稿https: / /generativelanguage.googleapis.com /v1beta /{model=models /*}:batchEmbedText
パスパラメータ
model
string
必須。エンベディングの生成に使用する Model
の名前。例: models/embedding-gecko-001 形式は models/{model}
です。
リクエストの本文
リクエストの本文には、次の構造のデータが含まれます。
texts[]
string
省略可。モデルがエンベディングに変換する自由形式の入力テキスト。現在の上限は 100 テキストです。これを超えるとエラーがスローされます。
requests[]
object (EmbedTextRequest
)
省略可。バッチのエンベディング リクエスト。texts
または requests
のいずれか 1 つのみを設定できます。
レスポンスの本文
EmbedTextRequest へのレスポンス。
成功した場合、レスポンスの本文には次の構造のデータが含まれます。
embeddings[]
object (Embedding
)
出力専用。入力テキストから生成されたエンベディング。
JSON 表現 |
---|
{
"embeddings": [
{
object ( |
EmbedTextRequest
モデルからテキスト エンベディングを取得するリクエスト。
model
string
必須。使用するモデル名。形式は model=models/{model} です。
text
string
省略可。モデルがエンベディングに変換する自由形式の入力テキスト。
JSON 表現 |
---|
{ "model": string, "text": string } |
ContentFilter
単一のリクエストの処理に関連付けられたコンテンツ フィルタリング メタデータ。
ContentFilter には、理由とオプションのサポート文字列が含まれます。理由は指定されていない場合があります。
reason
enum (BlockedReason
)
リクエストの処理中にコンテンツがブロックされた理由。
message
string
フィルタリングの動作を詳しく説明する文字列。
JSON 表現 |
---|
{
"reason": enum ( |
BlockedReason
コンテンツがブロックされた理由のリスト。
列挙型 | |
---|---|
BLOCKED_REASON_UNSPECIFIED |
ブロックされた理由が指定されていません。 |
SAFETY |
安全性設定によりコンテンツがブロックされました。 |
OTHER |
コンテンツはブロックされましたが、理由は分類されていません。 |
メッセージ
構造化テキストの基本単位。
Message
には、author
と Message
の content
が含まれます。
author
は、メッセージがテキストとしてモデルに供給されるときにメッセージにタグを付けるために使用されます。
content
string
必須。構造化された Message
のテキスト コンテンツ。
citationMetadata
object (CitationMetadata
)
出力専用。この Message
のモデル生成 content
の引用情報。
この Message
がモデルの出力として生成された場合、このフィールドには content
に含まれるテキストのアトリビューション情報が入力されることがあります。このフィールドは出力でのみ使用されます。
JSON 表現 |
---|
{
"author": string,
"content": string,
"citationMetadata": {
object ( |
MessagePrompt
モデルにプロンプトとして渡されるすべての構造化入力テキスト。
MessagePrompt
には、会話のコンテキストを提供する構造化されたフィールドのセット、モデルがさまざまな方法で応答するように準備するユーザー入力/モデル出力メッセージ ペアの例、ユーザーとモデルの会話のターンを交互に表す会話履歴またはメッセージのリストが含まれます。
context
string
省略可。有効な回答を得るために最初にモデルに提供する必要のあるテキスト。
空でない場合、この context
は examples
と messages
の前にモデルに渡されます。context
を使用する場合は、継続性を維持するために、すべてのリクエストで context
を指定してください。
このフィールドには、コンテキストを提供して回答を導くために、モデルに対するプロンプトの説明を入力できます。例: 「このフレーズを英語からフランス語に翻訳して。」、「この文の感情を、喜び、悲しみ、中立のいずれかに分類して。」
このフィールドに含まれる内容は、入力サイズの合計がモデルの inputTokenLimit
を超え、入力リクエストが切り捨てられた場合、メッセージ履歴よりも優先されます。
examples[]
object (Example
)
省略可。モデルが生成する内容の例。
これには、ユーザー入力とモデルがエミュレートする必要があるレスポンスの両方が含まれます。
これらの examples
は、会話メッセージと同じように扱われますが、messages
の履歴よりも優先されます。入力の合計サイズがモデルの inputTokenLimit
を超える場合、入力は切り捨てられます。アイテムは examples
の前に messages
からドロップされます。
messages[]
object (Message
)
必須。最近の会話履歴のスナップショット(時系列順に並べ替えられています)。
2 人の著者が交互に執筆します。
入力の合計サイズがモデルの inputTokenLimit
を超えると、入力は切り捨てられます。最も古いアイテムが messages
から削除されます。
例
GenerateTextResponse
候補の補完を含む、モデルからのレスポンス。
candidates[]
object (TextCompletion
)
モデルからの候補レスポンス。
filters[]
object (ContentFilter
)
プロンプトとレスポンスのテキストのコンテンツ フィルタリング メタデータのセット。
これは、このレスポンスから候補をブロックした SafetyCategory
、ブロックをトリガーした最小の HarmProbability
、そのカテゴリの HarmThreshold 設定を示します。これは、少なくとも 1 つのレスポンスのブロックを解除するために必要な SafetySettings
の最小の変更を示します。
ブロックは、リクエストの SafetySettings
(または API のデフォルトの SafetySettings
)によって構成されます。
safetyFeedback[]
object (SafetyFeedback
)
コンテンツ フィルタリングに関連する安全性のフィードバックを返します。
JSON 表現 |
---|
{ "candidates": [ { object ( |
TextCompletion
モデルから返された出力テキスト。
output
string
出力専用。モデルから返された生成テキスト。
safetyRatings[]
object (SafetyRating
)
回答の安全性に関する評価。
カテゴリごとに 1 つのレーティングのみが許可されます。
citationMetadata
object (CitationMetadata
)
出力専用。この TextCompletion
のモデル生成 output
の引用情報。
このフィールドには、output
に含まれるテキストのアトリビューション情報が入力されることがあります。
JSON 表現 |
---|
{ "output": string, "safetyRatings": [ { object ( |
SafetyFeedback
リクエスト全体の安全性に関するフィードバック。
このフィールドは、安全設定により入力またはレスポンスのコンテンツがブロックされた場合に設定されます。SafetyFeedback は、すべての HarmCategory に存在するとは限りません。各 SafetyFeedback は、リクエストで使用された安全性設定と、結果を返すために許可されるべき最小の HarmProbability を返します。
rating
object (SafetyRating
)
コンテンツから評価された安全性のレーティング。
setting
object (SafetySetting
)
リクエストに適用された安全性設定。
JSON 表現 |
---|
{ "rating": { object ( |