この記事では、IntelliJ IDEA で Azure OpenAI サービスの使用を開始する方法について説明します。 GPT-3.5-Turbo や GPT-4 などのチャット モデルを使用して、さまざまなパラメーターとデータ ソースをテストして実験する方法を示します。
[前提条件]
サポートされている Java Development Kit (JDK)。 Azure での開発時に使用できる JDK の詳細については、Azure および Azure Stackでの Java サポート
参照してください。 IntelliJ IDEA、Ultimate または Community Edition。
Azure Toolkit for IntelliJ。 詳細については、「 Azure Toolkit for IntelliJ のインストール」を参照してください。 また、Azure Toolkit for IntelliJ の Azure アカウントにサインインする必要もあります。 詳細については、Azure Toolkit for IntelliJの
サインイン手順を参照してください。 Azure サブスクリプション。無料で作成できます。
目的の Azure サブスクリプション内の Azure OpenAI に付与されたアクセス権。
現時点では、このサービスへのアクセスは申請によってのみ許可されます。 Azure OpenAI サービスへのアクセスを要求するフォームに入力することで、 Azure OpenAI へのアクセスを申請できます。
gpt-35-turbo
またはgpt-4
モデルがデプロイされた Azure OpenAI Service リソース。 モデル デプロイの詳細については、「Azure OpenAI Service リソースを作成してデプロイする」を参照してください。
インストールとサインイン
次の手順では、IntelliJ 開発環境での Azure サインイン プロセスについて説明します。
プラグインがインストールされていない場合は、 Azure Toolkit for IntelliJ を参照してください。
Azure アカウントにサインインするには、左側の Azure Explorer サイドバーに移動し、 Azure サインイン アイコンを選択します。 または、[ ツール] に移動し、[ Azure] を展開して、[ Azure サインイン] を選択することもできます。
[Azure サインイン] ウィンドウで、[OAuth 2.0] 、[サインイン] の順に選択します。 その他のサインイン オプションについては、「Azure Toolkit for IntelliJ のサインイン手順」を参照してください。
ブラウザーで、OpenAI リソースにアクセスできるアカウントでサインインし、IntelliJ に戻ります。 [ サブスクリプションの選択 ] ダイアログ ボックスで、使用するサブスクリプションを選択し、[選択] を 選択します。
Azure OpenAI Service リソースを作成してデプロイする
サインイン ワークフローの後、Azure Explorer で Azure OpenAI 項目を右クリックし、[ Azure OpenAI サービスの作成] を選択します。
[ Azure OpenAI サービスの作成 ] ダイアログ ボックスで、次の情報を指定し、[ OK] を選択します。
- 名前: MyOpenAIResource などの Azure OpenAI サービス リソースのわかりやすい名前。 この名前は、エンドポイント内のカスタム ドメイン名でもあります。 リソース名には英数字とハイフンのみを含めることができます。また、ハイフンで始めたり終わったりすることはできません。
- リージョン: インスタンスの場所。 特定のモデルは、特定のリージョンでのみ使用できます。 詳細については、「Azure OpenAI Service モデル」を参照してください。
- Sku: Standard Azure OpenAI リソースは、トークンの使用状況に基づいて課金されます。 詳細については、 Azure OpenAI サービスの価格に関するページを参照してください。
チャット補完を利用する前に、モデルをデプロイする必要があります。 Azure OpenAI インスタンスを右クリックし、[ 新しいデプロイの作成] を選択します。 ポップアップの [ Azure OpenAI デプロイの作成 ] ダイアログ ボックスで、次の情報を指定し、[ OK] を選択します。
- デプロイ名: 名前は慎重に選択してください。 デプロイ名は、クライアント ライブラリと REST API を使用してモデルを呼び出すためにコードで使用されます。
- モデル: モデルを選択します。 モデルの可用性はリージョンごとに異なります。 リージョンごとに使用可能なモデルの一覧については、Azure OpenAI サービス モデルのモデルの概要テーブルとリージョンの可用性に関するセクションを参照してください。
デプロイが完了し、使用できる状態になると、ツールキットにステータス メッセージが表示されます。
プロンプトと設定を使用して Azure OpenAI と対話する
Azure OpenAI リソースを右クリックし、[ AI プレイグラウンドで開く] を選択します。
IntelliJ IDEA の Azure OpenAI Studio チャットプレイグラウンドを使用して、OpenAI 機能の探索を開始できます。
完了をトリガーするには、プロンプトとしてテキストを入力します。 モデルは入力候補を生成し、コンテキストやパターンとの一致を試みます。
チャット セッションを開始するには、次の手順に従います。
チャット セッション ウィンドウでは、"新しい Surface を購入することに興味があります" のような簡単なプロンプトから始めることができます。プロンプトを入力したら、[送信] を選択 します。 次の例のような応答が表示されます。
Great! Which Surface model are you interested in? There are several options available such as the Surface Pro, Surface Laptop, Surface Book, Surface Go, and Surface Studio. Each one has its own unique features and specifications, so it's important to choose the one that best fits your needs.
「GPU をサポートするモデルはどれですか」のようなフォローアップの質問を入力し、[送信] を選択 します。 次の例のような応答が表示されます。
Most Surface models come with an integrated GPU (Graphics Processing Unit), which is sufficient for basic graphics tasks such as video playback and casual gaming. However, if you're looking for more powerful graphics performance, the Surface Book 3 and the Surface Studio 2 come with dedicated GPUs. The Surface Book 3 has an NVIDIA GeForce GTX GPU, while the Surface Studio 2 has an NVIDIA GeForce GTX 1060 or 1070 GPU, depending on the configuration.
基本的な会話が作成されたので、ウィンドウから [コードの表示 ] を選択すると、これまでの会話全体の背後にあるコードが再生されます。 次のスクリーンショットに示すように、チャット セッションと設定に対応する Java SDK、curl、JSON に基づくコード サンプルを確認できます。
その後、[ コピー ] を選択してこのコードを取得し、プレイグラウンドで現在実行しているのと同じタスクを完了するアプリケーションを記述できます。
設定
[構成] タブを選択して、次のパラメーターを設定できます。
名前 | 説明 |
---|---|
最大応答数 | モデルの応答あたりのトークン数の制限を設定します。 API では、プロンプト (システム メッセージ、例、メッセージ履歴、ユーザー クエリを含む) とモデルの応答の間で共有される最大 4096 個のトークンがサポートされます。 1 つのトークンは一般的な英語テキストの約 4 文字です。 |
気温 | ランダム性を制御します。 温度を下げることは、モデルが生成する反復的で決定的な応答が増えることを意味します。 温度を上げると、予期しない応答や独創的な応答が増えます。 温度または上位確率を調整してみてくださいが、両方を調整しないでください。 |
上位の確率 (Top P) | 温度と同様に、ランダム性を制御しますが、別の方法を使用します。 上位確率値を下げると、モデルのトークンの選択が、より似たトークンに絞り込まれます。 値を大きくすると、モデルは高確率と低確率の両方のトークンから選択できます。 温度または上位確率を調整してみてくださいが、両方を調整しないでください。 |
停止シーケンス | モデルの応答を目的のポイントで終了させます。 モデル応答は指定したシーケンスの前に終了するため、停止シーケンス テキストは含まれません。 GPT-35-Turbo の場合、<|im_end|> を使用すると、モデル応答でフォローアップ ユーザー クエリが生成されません。 最大 4 つの停止シーケンスを組み込むことができます。 |
頻度ペナルティ | これまでにテキストに出現する頻度に基づいて、トークンを比例的に繰り返す可能性を減らします。 このアクションにより、応答でまったく同じテキストを繰り返す可能性が低下します。 |
プレゼンス ペナルティ | テキスト内でこれまでに出現したトークンを繰り返す可能性を減らします。 これにより、応答で新しいトピックが導入される可能性が高くなります。 |
リソースをクリーンアップする
チャットプレイグラウンドのテストが完了したら、OpenAI リソースをクリーンアップして削除する場合は、リソースまたはリソース グループを削除できます。 リソースグループを削除すると、それに関連付けられた他のすべてのリソースも削除されます。 リソースをクリーンアップするには、次の手順に従います。
Azure OpenAI リソースを削除するには、左側の Azure Explorer サイドバーに移動し、 Azure OpenAI 項目を見つけます。
削除する Azure OpenAI サービスを右クリックし、[削除] を選択 します。
リソース グループを削除するには、 Azure portal にアクセスし、サブスクリプションのリソースを手動で削除します。
次のステップ
詳細については、 GPT-35-Turbo および GPT-4 モデルの使用方法を参照してください。
その他の例については、Azure OpenAI サンプルの GitHub リポジトリを参照してください。