初めてのAzure OpenAI(リソース作成、モデルデプロイ、Logic Appsから利用)
今回は初めてのAzure OpenAIという事で利用開始する為の手順を中心に纏めてみました。
最初にAzure OpenAIのリソース作成、モデルのデプロイ、Azure OpenAI Studio上での利用までの手順を纏めてます。
Azure OpenAIのREST APIを呼び出す手順はロジックアプリ(Logic Apps)のワークフローを使って確認します。
-
- Azure OpenAIのリソース作成
- Azure OpenAI Studio使ったモデルのデプロイ
- ロジックアプリ(Logic Apps)のワークフローでAzure OpenAIのRest API呼び出し、実行結果表示
※リソース作成前に事前申請が必要です。(2023年7月現在)
Azure Open AIをはじめてみる
Azure OpenAIの利用開始には事前申請が必要
2023年7月現在、Azure OpenAIの利用開始時には事前申請が必要となっています。
早ければ申請から1日~2日後にマイクロソフト社より完了連絡が届きます。
※サブスクリプション単位(複数指定可能)で申請が必要です。利用開始時のみ必要です。1度申請すれば大丈夫です。
Azure OpenAIのリソースを作成
Cognitive ServicesにAzure OpenAIは含まれます。
メニューでAzure OpenAIと入力、選択すると表示されます。
主な設定内容は下記の通りになります。
-
- 基本
- リージョン
- 名前
- 価格レベル
- ネットワーク
- 種類(アクセス制御)
- 基本
リソース名はazure-open-ai-testでEast USリージョンにデプロイしています。
※今回は検証目的なのでパブリックアクセスを許可しています。
リソース作成 | |
作成を選択します。 | |
基本タブです。 ※価格レベルは1つしかなくなっています。(2023年7月現在) |
|
ネットワークタブです。 ※リソース作成後に変更可能です。 |
|
確認画面が表示されます。 ※タグは適時設定します。 |
モデルのデプロイ
Azure OpenAIのモデルをデプロイします。
言語処理したい内容に応じてモデルを選択します。
今回はGPT-3の最新モデル(gpt-35-turbo)を選択しています。
Azure OpenAI Studioを使うとGUIでAzure OpenAIにアクセスする事が出来ます。
Azure OpenAI Studioを使ってモデルをデプロイします。
※モデル名はazure-open-ai-gpt35としています。
Azure OpenAI Studioを使ってチャット
Azure OpenAI Studioを使うとGUIでチャットする事が出来ます。
※”Azure OpenAIの使い方について教えて下さい。”と質問してみました。
チャット | |
チャットのメニューを選択するとチャットセクションが表示されます。 文字を入力するとそれに対応した答えが戻ってきます。 |
コードを表示
チャットの結果はコード表示する事が出来ます。
Azure OpenAI Service の REST API リファレンス
※このコードを参照しながらロジックアプリのワークフローを作成します。
ロジックアプリからAzure OpenAIを利用する
リソース作成
ロジックアプリのリソースを作成します。
※ロジックアプリ名はopen-ai-checkとしています。
リソース作成 | |
ロジックアプリのリソースを作成します。 ※検証目的なのでゾーン冗長やログ分析は無効にしています。 |
|
確認画面で作成を選択します。 |
ワークフロー作成
ロジックアプリデザイナーを使ってワークフローを作成します。
今回はトリガーにHTTP要求の受信時を利用します。
サンプルペイロードのJSONを使ってAzure OpenAIへの質問文字列を入力します。
ワークフロー作成 | ||
トリガーとしてHTTP要求受信時を選択します。 | ||
サンプルのペイロードを使用してスキーマを生成するを選択します。 | ||
サンプルのJSONペイロードは検索の文字列を入力するものを設定しています。 |
||
|
||
要求本文のJSONスキーマが生成されます。 | ||
入力した文字列をinput_textとし変数化しています。 | ||
Azure OpenAIのコネクタは準備されていません。 HTTPのアクションを介してAzure OpenAIのREST APIを利用します。 |
||
確認したチャットのコードやリファレンスを参考に設定します。 Azure OpenAI Service の REST API リファレンス ※API KeyはAzure OpenAIリソース管理にあります。 |
||
|
※今回はAzure OpenAI Studioで確認したコードをベースに設定しています。
※ロジックアプリ(Logic Apps)でのテキスト翻訳についてはこちらに纏めています。
ロジックアプリ(Logic Apps)からキーコンテナー(Key Vault)のシークレットを参照する手順についてはこちらに纏めています。
Azure OpenAIのキー確認方法
REST API利用時にはAzure OpenAIのキーをAPI Keyとして設定する必要があります。
設定値はAzure OpenAIのリソース管理で確認します。
※キーはKey Vaultなどに保管し利用するようにします。
APIキーの確認 | |
Azure OpenAIのキーとエンドポイントで確認出来ます。 |
ワークフロー実行
トリガーの実行(ペイロードで実行)を使って確認してみます。
ワークフロー実行 | |
サンプルのJSONペイロードで利用した内容を本文に貼り付けます。 実行します。 |
|
|
|
ロジックアプリの実行結果を確認します。 出力の本文に回答が表示されている事が確認出来ます。 |
|
回答を抽出
REST APIの実行結果はJSON形式で回答以外の項目も含まれます。
結果の出力(変数)としてAzure OpenAIの回答を抽出します。
-
- 変数
- 回答:REST APIの実行結果を入力
- 結果の出力:回答の文字列を入力
- 変数
ワークフロー作成 | |
REST APIの実行結果を保管する為の変数を初期化します。 ※JSON形式なので変数の種類はオブジェクトを選択します。 |
|
アクションでデータの操作でJSONの解析を選択します。 ※ロジックアプリの実行結果はトリガーの実行(ペイロードで実行)で得られたHTTPアクションの本文になります。 |
|
Azure OpenAIの回答を入力する変数を作成します。 |
|
変数の設定を選択します。
|
|
回答を確認
ロジックアプリを実行(ペイロードで実行)して結果を確認します。
ワークフロー実行 | |
正常終了している事が確認出来ます。 結果の出力(変数)を確認すると回答だけを抽出出来ている事が確認出来ます。 |
|
HTMLテーブルを使って質問と回答を表形式で表示
質問と回答でHTMLを作成する事も出来ます。
HTMLテーブル作成 | |
HTMLテーブルの作成アクションを選択します。 |
|
サンプルペイロードを使ってワークフローを実行します。 HTMLテーブルの作成の出力を見ると表形式で質問と回答が表示されている事が確認出来ます。 |
最後に
今回は初めてのAzure OpenAIという事でリソース作成、モデルデプロイ、ロジックアプリからAzure OpenAIの利用までの一連の手順を纏めてみました。
考えていたよりも簡単に利用開始する事が出来ました。
ワークフローのトリガー(入力)やアクション(出力)をSlackやTeamsを利用するとTeamsやSlackで自動応答させる事も可能です。
今回は利用開始までの手順を中心でしたが引き続き色々試してみたいと思います。
ロジックアプリ(Logic Apps)でLog Analyticsクエリ実行結果をメール送信する方法についてはこちら。