Models

models エンドポイントを使用すると、使用可能なモデルをプログラムでリストし、サポートされている機能やコンテキスト ウィンドウのサイズ設定などの拡張メタデータを取得できます。詳しくは、モデルガイドをご覧ください。

メソッド: models.get

特定の Model に関する情報(バージョン番号、トークンの上限、パラメータ、その他のメタデータなど)を取得します。詳細なモデル情報については、Gemini モデルガイドをご覧ください。

エンドポイント

<ph type="x-smartling-placeholder"></ph> <ph type="x-smartling-placeholder"></ph> 入手 https://generativelanguage.googleapis.com/v1beta/{name=models/*}

パスパラメータ

name string

必須。モデルのリソース名。

この名前は、models.list メソッドから返されたモデル名と一致する必要があります。

形式: models/{model}models/{model} の形式になります。

リクエスト本文

リクエストの本文は空にする必要があります。

リクエスト例

Python

import google.generativeai as genai

model_info = genai.get_model("models/gemini-1.5-flash-latest")
print(model_info)

Shell

curl https://generativelanguage.googleapis.com/v1beta/models/gemini-1.5-flash?key=$GOOGLE_API_KEY

レスポンスの本文

成功した場合、レスポンスの本文には Model のインスタンスが含まれます。

メソッド: models.list

Gemini API で使用可能な Model を一覧表示します。

エンドポイント

get https://generativelanguage.googleapis.com/v1beta/models

クエリ パラメータ

pageSize integer

返される Models の最大数(ページあたり)。

指定しない場合、1 ページあたり 50 個のモデルが返されます。このメソッドは、それより大きい pageSize を渡しても、1 ページあたり最大 1, 000 個のモデルを返します。

pageToken string

前回の models.list 呼び出しから受け取ったページトークン。

次のページを取得するには、あるリクエストで返された pageToken を次のリクエストの引数として指定します。

ページ分割を行う場合、models.list に指定する他のすべてのパラメータは、ページトークンを提供した呼び出しと一致する必要があります。

リクエストの本文

リクエストの本文は空にする必要があります。

リクエスト例

Python

import google.generativeai as genai

print("List of models that support generateContent:\n")
for m in genai.list_models():
    if "generateContent" in m.supported_generation_methods:
        print(m.name)

print("List of models that support embedContent:\n")
for m in genai.list_models():
    if "embedContent" in m.supported_generation_methods:
        print(m.name)

Shell

curl https://generativelanguage.googleapis.com/v1beta/models?key=$GOOGLE_API_KEY

レスポンスの本文

ページ分けされたモデルのリストを含む ListModel からのレスポンス。

成功した場合、レスポンスの本文には次の構造のデータが含まれます。

フィールド
models[] object (Model)

返されたモデル。

nextPageToken string

次のページを取得するために pageToken として送信できるトークン。

このフィールドを省略すると、ページがなくなります。

JSON 表現
{
  "models": [
    {
      object (Model)
    }
  ],
  "nextPageToken": string
}

REST リソース: models

リソース: Model

生成言語モデルに関する情報。

で確認できます。 <ph type="x-smartling-placeholder">
</ph> フィールド
name string

必須。Model のリソース名。使用可能なすべての値については、モデル バリアントをご覧ください。

形式: models/{model}{model} の命名規則は次のとおりです。

  • 「{baseModelId}-{version}」

例:

  • models/gemini-1.5-flash-001
baseModelId string

必須。ベースモデルの名前。これを生成リクエストに渡します。

例:

  • gemini-1.5-flash
version string

必須。モデルのバージョン番号。

メジャー バージョン(1.0 または 1.5)を表します。

displayName string

人が読める形式のモデル名。例: 「Gemini 1.5 Flash」。

名前は最大 128 文字で、UTF-8 文字を含めることができます。

description string

モデルの簡単な説明。

inputTokenLimit integer

このモデルで許可される入力トークンの最大数。

outputTokenLimit integer

このモデルで使用できる出力トークンの最大数。

supportedGenerationMethods[] string

モデルでサポートされている生成方法。

対応する API メソッド名は、generateMessagegenerateContent などのパスカルケースの文字列として定義されます。

temperature number

出力のランダム性を制御します。

値の範囲は [0.0,maxTemperature] 以上です。値が高いほど、より多様なレスポンスが生成されます。一方、値が 0.0 に近づくほど、モデルからの驚くようなレスポンスは少なくなります。この値は、モデルへの呼び出し中にバックエンドで使用されるデフォルトを指定します。

maxTemperature number

このモデルで使用できる最高温度。

topP number

Nucleus サンプリングの場合。

核サンプリングでは、確率の合計が topP 以上の最小のトークンセットが検討されます。この値は、モデルの呼び出し中にバックエンドによって使用されるデフォルトを指定します。

topK integer

Top-K サンプリングの場合。

トップ K サンプリングでは、最も確率が高い topK のトークンのセットが考慮されます。この値は、モデルへの呼び出し中にバックエンドで使用されるデフォルトを指定します。空の場合、モデルがトップ K サンプリングを使用せず、topK を生成パラメータとして使用できないことを示します。

JSON 表現
{
  "name": string,
  "baseModelId": string,
  "version": string,
  "displayName": string,
  "description": string,
  "inputTokenLimit": integer,
  "outputTokenLimit": integer,
  "supportedGenerationMethods": [
    string
  ],
  "temperature": number,
  "maxTemperature": number,
  "topP": number,
  "topK": integer
}