Skip to content

Latest commit

 

History

History
130 lines (90 loc) · 10.1 KB

File metadata and controls

130 lines (90 loc) · 10.1 KB

LLMプロバイダーの選択と設定 🔑

課題は、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つ、すべて、またはどれも設定しなくても構いません。関連する課題は、認証情報がない場合はエラーになります。

.envファイルの作成

上記の案内を読んで、該当するプロバイダーにサインアップし、必要な認証情報(API_KEYやトークン)を取得していることを前提とします。Azure OpenAIの場合は、少なくとも1つのGPTモデルがチャット補完用にデプロイされたAzure OpenAIサービス(エンドポイント)が有効であることも前提とします。

次のステップは、ローカル環境変数を以下のように設定することです。

  1. ルートフォルダーにある.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>'
  2. 下記のコマンドでそのファイルを.envにコピーします。このファイルは gitignore されているため、秘密情報が安全に保たれます。

    cp .env.copy .env
  3. 次のセクションの説明に従い、値(=の右側のプレースホルダー)を入力してください。

  4. (オプション)GitHub Codespacesを使う場合は、環境変数をこのリポジトリに紐づく Codespaces secrets として保存することもできます。その場合、ローカルの.envファイルを設定する必要はありません。ただし、この方法はGitHub Codespacesを使う場合のみ有効です。 Docker Desktopを使う場合は、.envファイルの設定が必要です。

.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の設定:ポータルから

Azure OpenAIのエンドポイントとキーはAzureポータルで確認できます。手順は以下の通りです。

  1. Azureポータルにアクセス
  2. サイドバー(左メニュー)からキーとエンドポイントをクリック
  3. キーの表示をクリックすると、KEY 1、KEY 2、エンドポイントが表示されます
  4. AZURE_OPENAI_API_KEYにはKEY 1の値を使用
  5. AZURE_OPENAI_ENDPOINTにはエンドポイントの値を使用

次に、デプロイした特定モデルのエンドポイントが必要です。

  1. Azure OpenAIリソースのサイドバー(左メニュー)からモデルのデプロイをクリック
  2. 遷移先ページでデプロイの管理をクリック

これでAzure OpenAI StudioのWebサイトに移動し、以下の値を確認できます。

Azureの設定:Studioから

  1. 上記の手順でAzure OpenAI Studioリソースからアクセス
  2. サイドバー(左)でデプロイタブをクリックし、現在デプロイされているモデルを確認
  3. 希望するモデルがデプロイされていない場合は、新しいデプロイの作成でデプロイ
  4. テキスト生成 モデルが必要です(推奨:gpt-35-turbo
  5. テキスト埋め込み モデルが必要です(推奨:text-embedding-ada-002

環境変数には、デプロイメント名 を入力してください。特に変更していなければ、モデル名と同じになっているはずです。例として、次のようになります。

AZURE_OPENAI_DEPLOYMENT='gpt-35-turbo'
AZURE_OPENAI_EMBEDDINGS_DEPLOYMENT='text-embedding-ada-002'

.envファイルの保存を忘れずに! 設定が終わったらファイルを閉じ、ノートブック実行の手順に戻ってください。

OpenAIの設定:プロフィールから

OpenAIのAPIキーはOpenAIアカウントで確認できます。まだ持っていない場合は、アカウントを作成してAPIキーを発行してください。取得したキーを.envファイルのOPENAI_API_KEY変数に入力します。

Hugging Faceの設定:プロフィールから

Hugging Faceのトークンは、プロフィールのアクセストークンで確認できます。これらを公開したり共有したりしないでください。このプロジェクト用に新しいトークンを作成し、.envファイルのHUGGING_FACE_API_KEY変数にコピーしてください。注: これは厳密にはAPIキーではありませんが、認証に使うため、命名規則を統一しています。


免責事項

本書類はAI翻訳サービス Co-op Translator を使用して翻訳されています。正確性には努めておりますが、自動翻訳には誤りや不正確な表現が含まれる場合があります。原文(元の言語の文書)が正式な情報源とみなされるべきです。重要な情報については、専門の人間による翻訳を推奨します。本翻訳の利用によって生じたいかなる誤解や誤認についても、当方は責任を負いかねます。