🍇
Azure OpenAI ServiceのAzure公式サンプル実装まとめ
Azure OpenAIサービスを他のAzureサービス等と組み合わせてソリューションを実現するサンプル実装がAzure公式から提供されています。
以下ではそれぞれを取り上げて、何ができるサンプルなのかをまとめていきたいと思います。
azure-search-openai-demo
- 組織内のドキュメントやデータベース、SharepointなどをBing ChatのようにGPTに検索させてその結果を使って回答させる
- サンプルではストレージにPDFドキュメントが配置され、それを検索・読み取って回答してもらえる。ストレージに他のドキュメントを放り込むだけで自分の組織専用のコンシェルジュが出来上がる
azure-open-ai-embeddings-qna
- Azure OpenAI Embeddingsを使ってナレッジベース(ストレージなど)のドキュメントをEmbedding(ベクトル化)して検索できるようにし、対話的チャットの裏で検索させる構成
- ドキュメントが図表を含んでいてもForm Recognizerにより検索対象にできる
- 最終的にできることは azure-search-openai-demo と近いがEmbedding後のコサイン類似度で検索するためワード単位の一致していなくても検索が可能で、カスタマイズ性も高い
- Pythonによる実装、デプロイ用のARMテンプレート等環境を再現するために必要なものはほぼそろっている上、ローカル実行も可能なため試しやすい
openai-dotnet-samples
- Azure Open AIで実現できる様々な機能を.NETで利用するipynbの詰め合わせ
- 分類、キーワード抽出、Tweet分類、文法訂正、C#バグフィックス、翻訳、自然言語からプログラムへの変換、C#バグフィックスなどのコードヘルパー、Q&Aなどチャット等50種類近くの様々なタスク例が掲載されている
- Azure OpenAI Serviceで〇〇したいな...と思ったらいったんこの中を見るとざっくりどう実装すれば大抵見つかりそう
openai-python-enterprise-logging
- AzureADで認証したうえでOpenAIを利用し、その包括的なログ取得、利用証跡保管、スロットリング制御やアクセス制御等を行うアーキテクチャ
- 実装サンプルはAPI定義のPython例のみで手順書ベース(デプロイ用テンプレート等は無し)
- 企業内で使うにしても外部に公開するにしても、ちゃんとしたサービスとして言語モデル提供するベースによさそう
- azure-search-openai-demoやazure-open-ai-embeddings-qnaと組み合わせるパターンが流行りそう
spring-openai-bot
- Java Spring Boot (Sprint Boot 3)でのBot作例
cosmosdb-chatgpt
- Cosmos DB (ドキュメントデータベース)とChatGPTを連携させるサンプル
- C# による実装
- Blazorによるフロントエンド実装
summarization-python-openai
- Azure Cognitive SearchとAzure OpenAI(とストレージとVSコード)をJupyter当のPythonノートブック上で連携させるデモ
- ストレージ等に保管された文書を検索や要約
- 検索用のインデックスやEmbeddingをAzure OpenAI Embedding APIやAzure Cognitive Searchを利用して整備する過程をなぞれる
- サンプル実装としてPlaybookを配布。
- やっていることは azure-open-ai-embeddings-qna と近いがこちらのほうが手を動かして仕組みを理解したい人向けにはよさそう
Discussion