OpenAI Python ライブラリを使用するには、OpenAI SDK をインストールします。
pip install openai
Chat Completions API で認証するには、クライアントの設定を変更するか、Google 認証と Vertex AI エンドポイントを使用するように環境構成を変更します。どちらか簡単な方法を選択します。Gemini モデルを呼び出すか、セルフデプロイの Model Garden モデルを呼び出すかによって、設定手順が異なります。
Model Garden の一部のモデルとサポートされている Hugging Face モデルは、リクエストを処理する前に、まず Vertex AI エンドポイントにデプロイする必要があります。Chat Completions API からこれらのセルフデプロイ モデルを呼び出す場合は、エンドポイント ID を指定する必要があります。既存の Vertex AI エンドポイントを一覧取得するには、gcloud ai endpoints list
コマンドを使用します。
クライアントのセットアップ
Python で Google 認証情報をプログラムで取得するには、google-auth
Python SDK を使用します。
pip install google-auth requests
Python
このサンプルを試す前に、Vertex AI クイックスタート: クライアント ライブラリの使用にある Python の設定手順を完了してください。詳細については、Vertex AI Python API のリファレンス ドキュメントをご覧ください。
Vertex AI に対する認証を行うには、アプリケーションのデフォルト認証情報を設定します。詳細については、ローカル開発環境の認証を設定するをご覧ください。
デフォルトでは、アクセス トークンの有効期間は 1 時間です。アクセス トークンの有効期間を延長するか、トークンを定期的に更新して openai.api_key
変数を更新します。
環境変数
Google Cloud CLI をインストールします。OpenAI ライブラリは、OPENAI_API_KEY
環境変数と OPENAI_BASE_URL
環境変数を読み取って、デフォルト クライアントの認証とエンドポイントを変更できます。以下の変数を設定します。
$ export PROJECT_ID=PROJECT_ID
$ export LOCATION=LOCATION
$ export OPENAI_API_KEY="$(gcloud auth application-default print-access-token)"
Gemini モデルを呼び出すには、MODEL_ID
変数を設定し、openapi
エンドポイントを使用します。
$ export MODEL_ID=MODEL_ID
$ export OPENAI_BASE_URL="https://${LOCATION}-aiplatform.googleapis.com/v1beta1/projects/${PROJECT_ID}/locations/${LOCATION}/endpoints/openapi"
Model Garden からセルフデプロイ モデルを呼び出すには、ENDPOINT
変数を設定し、代わりに URL で使用します。
$ export ENDPOINT=ENDPOINT_ID
$ export OPENAI_BASE_URL="https://${LOCATION}-aiplatform.googleapis.com/v1beta1/projects/${PROJECT_ID}/locations/${LOCATION}/endpoints/${ENDPOINT}"
次に、クライアントを初期化します。
client = openai.OpenAI()
Gemini Chat Completions API は、OAuth を使用して有効期間の短いアクセス トークンで認証します。デフォルトでは、アクセス トークンの有効期間は 1 時間です。アクセス トークンの有効期間を延長するか、トークンを定期的に更新して OPENAI_API_KEY
環境変数を更新します。
認証情報を更新する
次の例は、必要に応じて認証情報を自動的に更新する方法を示しています。
Python
次のステップ
- OpenAI 互換の構文で Chat Completions API を呼び出す例をご覧ください。
- OpenAI 互換の構文で Inference API を呼び出す例をご覧ください。
- OpenAI 互換の構文で Function Calling API を呼び出す例をご覧ください。
- 詳細については、Gemini API をご覧ください。
- 詳細については、Azure OpenAI から Gemini API に移行するをご覧ください。