こんにちは、サイオステクノロジーの織田です。
9月末に開催されるOSC広島での展示に向けてAIエージェントの開発に携わらせていただいています。現在は、AI周りのキャッチアップとしてAzure OpenAI Serviceの使い方を学習しています。キャッチアップの過程でAzure OpenAI Serviceで利用できるモデルの種類やその違いで躓いたので共有したいと思います。
はじめに
今回はキャッチアップの一環として、Azure OpenAI ServiceとLangChainを活用したRAGの実装を行いました。参考にしたサイトはコチラです。このサイトでは、某人気漫画のWikipedia上のテキストを取り込むことでRAGを実装する手順を紹介しています。
不具合の内容
サイトで紹介されている通りに作業を進めていくと、ベクターデータベースの作成で不具合が発生しました。エラーの内容は下の画像の通り404エラーが発生しています。デプロイメントが存在しないということらしいです。(ちゃんとGPTをデプロイしたはずなのに…)
![error](https://i0.wp.com/tech-lab.sios.jp/wp-content/uploads/2024/09/error.png?resize=696%2C125&ssl=1)
ベクターデータベース作成時のエラー
とりあえずAzure OpenAI Studioにモデルがあることを確認しにいきました。下の画像の通りモデルが存在しています。
![models](https://i0.wp.com/tech-lab.sios.jp/wp-content/uploads/2024/09/models-1.png?resize=454%2C192&ssl=1)
Azure OpenAI Studioで作成したモデル一覧
モデルが存在するということは、環境変数に間違った値を指定したかと思い一応確認。しかし、Azureで確認した情報と差異は見つかりませんでした。
![env](https://i0.wp.com/tech-lab.sios.jp/wp-content/uploads/2024/09/env.png?resize=676%2C103&ssl=1)
環境変数一覧
不具合の原因
「モデルを作成したのになぜ404エラーが出るのか…」と悶々としながら色々と調べているとコチラのサイトを見つけました。
「Azure OpenAI Serviceで提供してるモデルにはGPT、ChatGPT、埋め込みがあります」
あれ?そういえば、環境変数の中に”text-embedding-3-small”なるものがあったような…とりあえずAzure OpenAI Studioでモデル一覧を確認。
![embmodels](https://i0.wp.com/tech-lab.sios.jp/wp-content/uploads/2024/09/embmodels.jpg?resize=754%2C473&ssl=1)
Azure OpenAI Serviceで提供してるモデル一覧
あった!!不具合の原因は埋め込みモデルを作っていないことだったのです。(まさかGPTとは別に作るものだったとは…)その足でベクターデータベースを作成。
![createvdb success](https://i0.wp.com/tech-lab.sios.jp/wp-content/uploads/2024/09/createdb.png?resize=577%2C61&ssl=1)
埋め込みモデル作成後にエラー解消
無事に実行されました👏
最後に
今回は、Azure OpenAI Serviceで利用できるモデルについてでした。GPT以外にも複数のモデルが利用可能になっており、必要な場合はGPTとは別に作成する必要があります。もし私と同じようなエラーが発生し解決できずに困っている方がいれば、参考にしていただけると幸いです。