
②RAGで社内文書を回答するChatGPTをAzure AI Searchで構築する方法。社内問い合わせAIを作る
RAGで社内文書を回答するChatGPTをAzure AI Searchで構築する方法の後編です。承認メールが届いたら早速RAGを構築しましょう。
手順①がまだお済みで無い方はこちらから↓↓↓
本編
3. Azure OpenAIを有効にする
申請が無事通ったら、Azure OpenAI Service を使ってRAG試用環境を作っていきます。
(実働時間 10分)
3-1. [リソースの作成]をクリック

3-2. Azure OpenAIを作成

3-3. リソースグループを作成
例)rg-{会社名}-{部署/担当者名}-{プロジェクト名}-{運用}-{番号}

3-4. [リージョン]、[名前]の選択
リージョン:サーバの位置 によって、使えるモデルが異なります。
今回は回答性能が高い新しいgpt-4-turboを使うのでeastus2を選択してください。

3-5. ネットワークの設定 > [次へ]
「インターネットを含むすべてのネットワークがこのリソースにアクセスできます。」を選択してください。
※外部からURLへアクセスできるだけで、使用にはAPIキーで保護されるので見ず知らずの人に不正利用で課金される心配はありません。
3-6. タグの設定
今回は不要です。

3-7. [作成]をクリック
お疲れ様です。これでAzure OpenAIが利用できるようになりました。

4. 社内文書を検索するサービスを構築する
最後の一息です。いよいよAzureに社内文書をアップロードしてRAGを体験してみましょう。
(所要時間: 15分)
4-1. [リソースに移動]をクリック

4-1'. ホームに戻った場合 > 作成したリソースをクリック
4-2. [Azure OpenAI Studioに移動する]をクリック

4-3. [新しいデプロイの作成]をクリック

4-4. [新しいデプロイの作成]をクリック

4-5. モデルをデプロイ
①チャットモデルをデプロイ
gpt-4oを使用します。
デプロイ名は任意に指定できますが、今回は"gpt-4o"とします。
画像のように設定したら[作成]をクリック

② 埋め込みモデルをデプロイ
今回は`text-embedding-ada-002`というモデルを使用します。
Vector検索を有効にする為に必要です。詳しくは「Embedding」などと検索してみてください。
画像のように設定したら[作成]をクリック

4-6. [チャット]をクリック

4-7. [データを追加する] をクリック

4-8. [+データソースの追加]をクリック

4-9. データソースに[Upload files]を選択
> [新しいBlobストレージリソースを作成する]を新しいタブで開く

4-10. 詳細を設定する
リソースグループ > 作成した [rg-abccojp-sato-ragtest-dev-001]
ストレージ名アカウント > {会社名}{部署/担当者名}{プロジェクト名}
地域 > [(Asia Pacific) East Asia]
冗長性 > [ローカル冗長ストレージ (LRS)] (← 一番安価で実験用の設定です)
[確認と作成]をクリック
[作成]をクリック
ストレージ名アカウント、地域、冗長性は自由に設定可能です。
今回は実験用なので上の設定で進めましょう。

4-11. ストレージのデプロイ完了
「デプロイが完了しました」と表示されるまでしばらく待ちましょう。

4-12. [Azure OpenAI] > [チャット] に戻って作成したストレージを選択

「Azure OpenAI には、このリソースにアクセスするためのアクセス許可が必要です」と表示されたら[CORSをオンにする]をクリックしてください。
4-13. [新しいAzure AI Searchリソースを作成する]を新しいタブで開く

4-14. 詳細を設定する

リソースグループ > `rg-abccojp-sato-ragtest-dev-001`を選択
サービス名 > `srch-abccojp-sato-ragtest-dev-001`と入力
場所 > `Japan East`を選択
価格レベル > `基本`を選択
※今回のように、Azure OpenAIと本サービスAzure AI Searchを組み合わせ使用するには、価格レベルを`基本`以上に設定する必要があります。
Azure AI Searchは使用していなくても1日約500円ずつ無償クレジットを消費します。
今回のテストを終えたら必ず後述の手順に従ってリソースを削除しましょう。
4-15. [確認及び作成] > [作成]をクリック。

数十秒待つとデプロイが完了します。
4-16. チャットに戻り作成したリソースを選択
Azure AI Search リソースを選択する > `srch-abccojp-sato-ragtest-dev-001`を選択
インデックス名を入力してください > `idx-work-regulations-2024`と入力
ベクトル検索をこの検索リソースに追加します。 > チェックする
埋め込みモデルを選択する > [Azure OpenAI - text-embedding-ada-002]を選択
[次へ]をクリック
今回はテスト用に厚生労働省のモデル就業規則PDFをアップロードするので、`idx-work-regulations-2024`と入力してください。

4-17. ファイルをアップロードする
就業規則サンプル : https://www.mhlw.go.jp/content/001018385.pdf
厚生労働省のモデル就業規則PDFをアップロード
[ファイルのアップロード]をクリック
[保存して閉じる]をクリック
今回はテスト用に、厚生労働省のモデル就業規則PDF を使用しますが、社内の任意の文書で試していただいても構いません。
1ファイル16MBまでですが、複数のファイルをアップロードすることも可能です。

「インジェストが進行中です」と表示されるので数分待つ。

4-18. 完了。これでRAGの準備ができました。
お疲れ様です。
5. 完成!RAG搭載チャットを試してみる
チャット画面で資料についての質問を送信すると、就業規則PDFを参照して回答してくれます。別のデータを入れたり、いろいろ試してみてください。
右側で選択できるモデルが`gpt-4o`だとエラーが発生する場合があります。その際は「4-5. モデルをデプロイする」から、同様にしてgpt-4のturbo-2024-04-09バージョンをデプロイしてから、チャットプレイグラウンドのモデルを変更してください。

6. 最後に必ずAzure AI Searchを削除する
6-1. Azure Portalホーム > [AI Search]を検索してクリック

6-2. 作成したAI Searchをクリック
`srch-abccojp-sato-ragtest-dev-001`を選択してください。

6-3. AI Searchサービスを削除する
[削除]をクリック

確認画面で[削除]をクリック

6-4. 完了
お疲れさまでした。これで高額な請求が来ることはありません。()
必要になったら、再度本記事の手順でファイルをアップロードしましょう。
さいごに
いかがでしたか。非エンジニアの方でもノーコードで高精度なRAGの構築ができます。
株式会社IZAIではLLM, RAG, 合成音声などの技術を用いて、人間とAIとの自然な対話の実現のために、日々活動しています。
興味をお持ちいただけた方はお気軽にお問い合わせくだだい。
会社HP: https://www.izai.co.jp/
この記事が参考になりましたら、いいねを頂けるとと幸いです。