課題は、OpenAI、Azure、Hugging Faceなどのサポートされているサービスプロバイダーを通じて、1つ以上の大規模言語モデル(LLM)デプロイメントで動作するように設定することもできます。これらは、適切な認証情報(APIキーやトークン)を使ってプログラムからアクセスできる ホスト型エンドポイント (API)を提供します。本コースでは、以下のプロバイダーについて説明します。
- OpenAI:GPTシリーズをはじめとする多様なモデルを提供
- Azure OpenAI:エンタープライズ向けに特化したOpenAIモデル
- Hugging Face:オープンソースモデルや推論サーバー
これらの演習を行うには、ご自身のアカウントが必要です。 課題は任意なので、興味に応じて1つだけ、すべて、またはどれも設定しなくても構いません。サインアップの参考情報は以下の通りです。
| サインアップ | 料金 | APIキー | プレイグラウンド | コメント |
|---|---|---|---|---|
| OpenAI | 料金表 | プロジェクト単位 | ノーコード・Web | 複数モデル利用可 |
| Azure | 料金表 | SDKクイックスタート | Studioクイックスタート | 事前申請が必要 |
| Hugging Face | 料金表 | アクセストークン | Hugging Chat | Hugging Chatは利用できるモデルが限定的 |
以下の手順に従って、このリポジトリを各プロバイダーで使えるように 設定 してください。特定のプロバイダーが必要な課題には、ファイル名に次のいずれかのタグが含まれています。
aoai- Azure OpenAIのエンドポイントとキーが必要oai- OpenAIのエンドポイントとキーが必要hf- Hugging Faceのトークンが必要
どれか1つ、すべて、またはどれも設定しなくても構いません。関連する課題は、認証情報がない場合はエラーになります。
上記の案内を読んで、該当するプロバイダーにサインアップし、必要な認証情報(API_KEYやトークン)を取得していることを前提とします。Azure OpenAIの場合は、少なくとも1つのGPTモデルがチャット補完用にデプロイされたAzure OpenAIサービス(エンドポイント)が有効であることも前提とします。
次のステップは、ローカル環境変数を以下のように設定することです。
-
ルートフォルダーにある
.env.copyファイルを探してください。内容は次のようになっています。# OpenAI Provider OPENAI_API_KEY='<add your OpenAI API key here>' ## Azure OpenAI AZURE_OPENAI_API_VERSION='2024-02-01' # Default is set! AZURE_OPENAI_API_KEY='<add your AOAI key here>' AZURE_OPENAI_ENDPOINT='<add your AOIA service endpoint here>' AZURE_OPENAI_DEPLOYMENT='<add your chat completion model name here>' AZURE_OPENAI_EMBEDDINGS_DEPLOYMENT='<add your embeddings model name here>' ## Hugging Face HUGGING_FACE_API_KEY='<add your HuggingFace API or token here>'
-
下記のコマンドでそのファイルを
.envにコピーします。このファイルは gitignore されているため、秘密情報が安全に保たれます。cp .env.copy .env
-
次のセクションの説明に従い、値(
=の右側のプレースホルダー)を入力してください。 -
(オプション)GitHub Codespacesを使う場合は、環境変数をこのリポジトリに紐づく Codespaces secrets として保存することもできます。その場合、ローカルの.envファイルを設定する必要はありません。ただし、この方法はGitHub Codespacesを使う場合のみ有効です。 Docker Desktopを使う場合は、.envファイルの設定が必要です。
変数名が何を表しているか、簡単に確認しましょう。
| 変数 | 説明 |
|---|---|
| HUGGING_FACE_API_KEY | プロフィールで設定したユーザーアクセストークン |
| OPENAI_API_KEY | 非Azure OpenAIエンドポイント用の認証キー |
| AZURE_OPENAI_API_KEY | Azure OpenAIサービス用の認証キー |
| AZURE_OPENAI_ENDPOINT | Azure OpenAIリソースのデプロイ済みエンドポイント |
| AZURE_OPENAI_DEPLOYMENT | テキスト生成 モデルのデプロイメント名 |
| AZURE_OPENAI_EMBEDDINGS_DEPLOYMENT | テキスト埋め込み モデルのデプロイメント名 |
※最後の2つのAzure OpenAI変数は、それぞれチャット補完(テキスト生成)とベクトル検索(埋め込み)のデフォルトモデルを表します。設定方法は該当する課題で案内します。
Azure OpenAIのエンドポイントとキーはAzureポータルで確認できます。手順は以下の通りです。
- Azureポータルにアクセス
- サイドバー(左メニュー)からキーとエンドポイントをクリック
- キーの表示をクリックすると、KEY 1、KEY 2、エンドポイントが表示されます
- AZURE_OPENAI_API_KEYにはKEY 1の値を使用
- AZURE_OPENAI_ENDPOINTにはエンドポイントの値を使用
次に、デプロイした特定モデルのエンドポイントが必要です。
- Azure OpenAIリソースのサイドバー(左メニュー)からモデルのデプロイをクリック
- 遷移先ページでデプロイの管理をクリック
これでAzure OpenAI StudioのWebサイトに移動し、以下の値を確認できます。
- 上記の手順でAzure OpenAI Studioにリソースからアクセス
- サイドバー(左)でデプロイタブをクリックし、現在デプロイされているモデルを確認
- 希望するモデルがデプロイされていない場合は、新しいデプロイの作成でデプロイ
- テキスト生成 モデルが必要です(推奨:gpt-35-turbo)
- テキスト埋め込み モデルが必要です(推奨:text-embedding-ada-002)
環境変数には、デプロイメント名 を入力してください。特に変更していなければ、モデル名と同じになっているはずです。例として、次のようになります。
AZURE_OPENAI_DEPLOYMENT='gpt-35-turbo'
AZURE_OPENAI_EMBEDDINGS_DEPLOYMENT='text-embedding-ada-002'.envファイルの保存を忘れずに! 設定が終わったらファイルを閉じ、ノートブック実行の手順に戻ってください。
OpenAIのAPIキーはOpenAIアカウントで確認できます。まだ持っていない場合は、アカウントを作成してAPIキーを発行してください。取得したキーを.envファイルのOPENAI_API_KEY変数に入力します。
Hugging Faceのトークンは、プロフィールのアクセストークンで確認できます。これらを公開したり共有したりしないでください。このプロジェクト用に新しいトークンを作成し、.envファイルのHUGGING_FACE_API_KEY変数にコピーしてください。注: これは厳密にはAPIキーではありませんが、認証に使うため、命名規則を統一しています。
免責事項:
本書類はAI翻訳サービス Co-op Translator を使用して翻訳されています。正確性には努めておりますが、自動翻訳には誤りや不正確な表現が含まれる場合があります。原文(元の言語の文書)が正式な情報源とみなされるべきです。重要な情報については、専門の人間による翻訳を推奨します。本翻訳の利用によって生じたいかなる誤解や誤認についても、当方は責任を負いかねます。