ZillizとMilvusによるChatGPT検索プラグイン
#はじめに
人工知能研究所のOpenAIは最近、知識ベース検索プラグインのコードをオープンソース化したと発表した。私が関わったこのプロジェクトは、ChatGPTが様々なデータソースから関連するドキュメントのスニペットから知識ベースのデータを取得することで、その情報を増強することを可能にする。このブログポストでは、このプロジェクトの意味と、それが企業にもたらす利点について述べます。
知識ベース検索プラグイン
ナレッジベース検索プラグインは、ChatGPT が外部がホストする関連ドキュメントスニペットから情報を取得するためのツールです。ChatGPTは、自然言語で質問したり、ニーズを表現することで、ファイル、メモ、メールなど、収集・保存している様々なソースから適切なデータを取得することができます。この機能は、ChatGPT が情報を取得するための簡単で効率的な方法を提供し、より正確で信頼できるものにします。
企業にとっての利点
企業は、ChatGPTを通して従業員が社内文書を利用できるようにすることで、このプラグインから大きな利益を得ることができます。これにより、従業員は複数のソースを検索することなく、合理的な方法で社内文書から情報を取得することができます。また、取得した情報が正確で最新であることを保証します。また、開発者はこのプラグインを使用して独自のナレッジベースをホストし、独自のソースからのデータ取得を容易にすることができます。
仕組み
このプラグインはOpenAIの text-embedding-ada-002 埋め込みモデルを使ってドキュメントチャンクの埋め込みを生成し、埋め込みをベクターデータベースに保存してクエリを実行します。ここからが私の出番だ。私はOpenAIのチームと協力して、MilvusとZillizをこれらの埋め込みを保存するのに適したベクターデータベースの一つにしました。
シンプルなAPIは、ドキュメントのアップサート、クエリ、削除のためのプラグインのエンドポイントを公開します。ソース、日付、作者などのメタデータフィルタを使って、検索結果を絞り込むことができます。MilvusやZillizを最新のドキュメントで更新し続けるために、プラグインは様々なデータソースからのドキュメントを継続的に処理し、保存することができます。
Zillizプラグインを使用して、Appleの利用規約(TOS)内のDRMポリシーを検索する簡単な例を示します。ChatGPTはまずZilliz Cloud内のプロンプトを検索し、結果を要約します。その後、ChatGPTは検索プラグインを介してZillizにアクセスし、最も関連性の高いデータを検索します。
Zilliz Cloudの設定方法
Zilliz Cloudでは、アカウントを作成し、インスタンスとエンベッディングをセットアップするだけです。ここでは、クイックスタートガイドと、設定する必要がある検索プラグインの環境変数について説明します:
環境変数
| 名前| 必須| 説明| ----------
| ---------- | ----------- | -------------|
| データストア名、zilliz に設定。
| BEARER_TOKEN | はい|あなたの秘密トークンです。
| OPENAI_API_KEY| Yes|あなたのOpenAI APIキー|ZILLIZ_API_KEYに設定します。 |ZILLIZ_COLLECTION| オプション|Zillizコレクション名。デフォルトはランダムなUUID。 |ZILLIZ_URI| オプション | Zilliz インスタンスの URI。 | オプション| Zilliz ユーザー名|ZILLIZ_USER| 任意|Zilliz のパスワード|MILVUS_USER``
このように設定したら、以下のテストを実行し、このコマンドで統合が機能していることを確認する。
pytest ./tests/datastore/providers/zilliz/test_zilliz_datastore.py を実行してください。
Milvusのセットアップ方法
もちろん、オープンソースのMilvusがお好みであれば、Docker Compose、Helm、K8のOperator、またはAnsibleを使ってMilvusをデプロイし、管理することができます。説明書](https://milvus.io/docs)に従って始めてください。
環境変数
| ---------- | ----------- | -------------|
| データストア名、milvus に設定。
| BEARER_TOKEN| Yes|ベアラートークン。 | OPENAI_API_KEY| Yes|あなたの OpenAI API キー。
| オプション|Milvusコレクション名、デフォルトはランダムなUUID| MILVUS_COLLECTION
| デフォルトは localhost です。
| デフォルトは 19530 です。
| MILVUS_USER | オプション | RBAC が有効な場合の Milvus ユーザー名、デフォルトは None です。
| デフォルトは None です。|MILVUS_PASSWORD | オプション|Milvus パスワードが必要な場合、デフォルトは None です。
このように設定したら、以下のテストを実行し、このコマンドで統合が機能していることを確認する。
pytest ./tests/datastore/providers/milvus/test_milvus_datastore.py を実行してください。
プラグインのデプロイ
プラグインがテストされたので、デプロイに移ります。ChatGPTはAmazon ECS、Fly.io、Herokuなど、プラグインサーバが動作している場所にリクエストを送ることでプラグインにアクセスします。詳しい設定方法は GitHub readme の Deployment セクションを見てください。
メモリー機能
この新しいプラグインのクールな機能の一つは、memory と呼ばれる機能です。これはChatGPTに会話からの情報を記憶し、後で使用するためにベクターデータベースに保存する機能を与えます。
謝辞
これは楽しいプロジェクトで、Isabella FulfordのOpenAIチームとFrank LiuとRobert GuoのZilizチームに感謝したい。何かフィードバックがあったり、自分で試してみたいという方は、GitHub repoをチェックしてみてください。私自身、ChatGPT Retrieval Pluginのreadmeに記載されている多くの素晴らしいアイデアの一つに貢献できることを楽しみにしています!
読み続けて

Introducing Zilliz CLI and Agent Skills for Zilliz Cloud
Manage your vector database from your terminal or AI coding agent. Zilliz CLI and Agent Skills work with Claude Code, Cursor, Codex, and Copilot.

3 Easiest Ways to Use Claude Code on Your Mobile Phone
Run Claude Code from your phone with Remote Control, Happy Coder, or SSH + Tailscale. Comparison table, setup steps, and tools for typing, memory, and parallel tasks.

Expanding Our Global Reach: Zilliz Cloud Launches in Azure Central India
Zilliz Cloud now operates in Azure Central India, offering AI and vector workloads with reduced latency, enhanced data sovereignty, and cost efficiency, empowering businesses to scale AI applications seamlessly in India. Ask ChatGPT
