MicrosoftからGPT-4o Realtime API for Audioが発表されました。
今回は、Azure AI SearchとGPT-4o Realtime API for Audioを連携し、音声によるRAG検索が行えるのかどうかを検証します。
検証結果
下記は検証結果です。
GPT-4o Realtime API for Audioを使用すれば、下記動画のような音声によるRAG検索が可能です。
RAG検索で使用した資料の内容です。「育児休業の対象者となる労働者を教えて下さい」という質問に、的確に回答できています。
引用として表示された箇所の内容です。質問に対して、的確な該当箇所を抽出できています。
環境
今回はWindows 11の環境で検証しました。
検証には、下記サイトで紹介されていたWebアプリを使用しました。
- VoiceRAG: An App Pattern for RAG + Voice Using Azure AI Search and the GPT-4o Realtime API for Audio - Microsoft Community Hub
- GitHub - Azure-Samples/aisearch-openai-rag-audio: A simple example implementation of the VoiceRAG pattern to power interactive voice generative AI experiences using RAG with Azure AI Search and Azure OpenAI's gpt-4o-realtime-preview model.
Webアプリの実行には下記が必要となります。
- Node.js
- Python >=3.11
- PowerShell
作業概要
検証作業は、下記の手順で行います。
- BLOBストレージに資料を配置
- Azure AI Searchにベクトルインデックスを作成
- git cloneでリポジトリを取得
- 環境変数を設定
- Webアプリを実行
作業手順
BLOBストレージに資料を配置
任意のBLOBストレージを作成し、RAG検索の対象とする資料を保存します。
今回は、資料として、厚生労働省が公開している「育児・介護休業法のあらまし」を使用しました。
BLOBストレージに「PDF」という名称のコンテナを作成して、資料を保存します。
Azure AI Searchにベクトルインデックスを作成
Azure AI Searchの「データのインポートとベクター化」を選択します。
BLOBストレージを選択します。
BLOBコンテナーで、資料を保存したコンテナを選択します。
Azure OpenAIサービスを選択し、embeddingで使用するモデルを選択します。
※Azure OpenAIサービスが表示されない場合は、デプロイして下さい。
セマンティックランカーを有効にします。
※セマンティックランカーは、Basic以上のプランで使用できます。
問題なければ作成ボタンを押してインデックスを作成します。
git cloneでリポジトリを取得
PCの任意のフォルダでリポジトリを取得します。
git clone https://github.com/Azure-Samples/aisearch-openai-rag-audio
環境変数を設定
aisearch-openai-rag-audio\app\backend\.env ファイルを作成します。 .envファイルには下記を記載します。
AZURE_OPENAI_ENDPOINT=wss://<your instance name>.openai.azure.com
AZURE_OPENAI_DEPLOYMENT=gpt-4o-realtime-preview
AZURE_OPENAI_API_KEY=<your api key>
AZURE_SEARCH_ENDPOINT=https://<your service name>.search.windows.net
AZURE_SEARCH_INDEX=<your index name>
AZURE_SEARCH_API_KEY=<your api key>
Azure OpenAIについては、下記を参照して設定して下さい。
Azure AI Searchについては、下記を参照して設定して下さい。
Webアプリを実行
PowerShellで、下記のコマンドを実行します。
※aisearch-openai-rag-audio\appで実行します。
cd app pwsh .\start.ps1
Webアプリが起動しますので、画面中央のマイクボタンを押して、質問します。
※PCのマイクがオンになっていることを確認してください。
まとめ
今回、Microsoftが発表したGPT-4o Realtime API for AudioとAzure AI Searchを連携させ、音声を活用したRAG検索の実用性を検証しました。
Microsoftは、このような機能をCopilot製品に搭載することを発表しており、音声技術を活用した新しいユーザー体験の提供に力を入れています。
すべての人のための AI コンパニオン~Copilot Voice!Copilot Vision!~ - JBS Tech Blog
検証では、音声入力を用いたRAG検索が問題なく動作し、関連情報をスムーズに検索・提示できることを確認しました。
音声による検索は、ユーザーにとってさらなる利便性と効率性を提供する可能性を秘めており、今後の展開がますます期待されます。