ChatGPT-Retrieval-Plugin mit Zilliz und Milvus
Einführung
OpenAI, das Forschungslabor für künstliche Intelligenz, gab kürzlich bekannt, dass es den Code für ein Wissensdatenbank-Retrieval-Plugin als Open Source veröffentlicht hat. Dieses Projekt, an dem ich beteiligt war, ermöglicht es ChatGPT, seine Informationen zu erweitern, indem wissensbasierte Daten aus relevanten Dokumentausschnitten aus verschiedenen Datenquellen abgerufen werden. In diesem Blogbeitrag werde ich die Auswirkungen dieses Projekts und die Vorteile, die es Unternehmen bietet, erörtern.
Das Wissensdatenbank-Retrieval-Plugin
Das Wissensdatenbank-Retrieval-Plugin ist ein Tool, das es ChatGPT ermöglicht, Informationen aus relevanten Dokumentausschnitten abzurufen, die von einer externen Partei gehostet werden. ChatGPT kann relevante Daten aus verschiedenen Quellen abrufen, die Sie gesammelt und gespeichert haben, wie Dateien, Notizen oder E-Mails, indem es Fragen stellt oder Bedürfnisse in natürlicher Sprache ausdrückt. Diese Funktion bietet ChatGPT eine einfache und effiziente Möglichkeit, Informationen abzurufen, wodurch es genauer und zuverlässiger wird.
Vorteile für Unternehmen
Unternehmen können stark von diesem Plugin profitieren, indem sie ihre internen Dokumente ihren Mitarbeitern über ChatGPT zugänglich machen. Dies bietet Mitarbeitern eine optimierte Möglichkeit, Informationen aus internen Dokumenten abzurufen, ohne mehrere Quellen durchsuchen zu müssen. Es stellt außerdem sicher, dass die abgerufenen Informationen korrekt und aktuell sind. Entwickler können dieses Plugin auch verwenden, um ihre eigenen Wissensdatenbanken zu hosten, wodurch das Abrufen von Daten aus ihren eigenen Quellen erleichtert wird.
Funktionsweise
Das Plugin verwendet OpenAIs Embeddings-Modell text-embedding-ada-002, um Embeddings von Dokumentabschnitten zu generieren, und speichert und durchsucht die Embeddings anschließend in einer Vektordatenbank. Hier komme ich ins Spiel. Ich habe mit dem OpenAI-Team zusammengearbeitet, um Milvus und Zilliz zu einer der bevorzugten Vektordatenbanken für die Speicherung dieser Embeddings zu machen.
Die einfache API stellt die Endpunkte des Plugins zum Upserten, Abfragen und Löschen von Dokumenten bereit. Sie können Ihre Suchergebnisse mithilfe von Metadatenfiltern nach Quelle, Datum, Autor usw. verfeinern. Um Milvus oder Zilliz mit den neuesten Dokumenten auf dem aktuellen Stand zu halten, kann das Plugin Dokumente aus verschiedenen Datenquellen kontinuierlich verarbeiten und speichern, indem eingehende Webhooks an die Upsert- und Lösch-Endpunkte verwendet werden.
Hier ist ein kurzes Beispiel mit dem Zilliz Plugin, um die DRM-Richtlinie in Apples Nutzungsbedingungen (TOS) zu finden. ChatGPT beginnt damit, den Prompt in Zilliz Cloud zu durchsuchen, und fasst anschließend die Ergebnisse zusammen. Danach greift ChatGPT über das Retrieval-Plugin auf Zilliz zu, um nach den relevantesten Daten zu suchen.
So richten Sie Zilliz Cloud ein
Mit Zilliz Cloud müssen Sie einfach ein Konto erstellen und Ihre Instanz mit Ihren Embeddings einrichten. Hier ist der Schnellstart-Leitfaden und die Umgebungsvariablen im Retrieval-Plugin, die Sie konfigurieren müssen:
Umgebungsvariablen
| Name | Erforderlich | Beschreibung |
|---|---|---|
DATASTORE | Ja | Datastore-Name, auf zilliz setzen |
BEARER_TOKEN | Ja | Ihr geheimes Token |
OPENAI_API_KEY | Ja | Ihr OpenAI-API-Schlüssel |
ZILLIZ_COLLECTION | Optional | Name der Zilliz-Collection. Standardmäßig eine zufällige UUID |
ZILLIZ_URI | Optional | URI für die Zilliz-Instanz |
ZILLIZ_USER | Optional | Zilliz-Benutzername |
MILVUS_USER | Optional | Zilliz-Passwort |
Sobald Sie dies konfiguriert haben, führen Sie den folgenden Test aus, um mit diesem Befehl zu bestätigen, dass die Integration funktioniert.
pytest ./tests/datastore/providers/zilliz/test_zilliz_datastore.py
So richten Sie Milvus ein
Wenn Sie natürlich Open-Source-Milvus bevorzugen, können Sie Milvus mit Docker Compose, Helm, K8's Operator oder Ansible bereitstellen und verwalten. Befolgen Sie die Anweisungen, um loszulegen.
Umgebungsvariablen
| Name | Erforderlich | Beschreibung |
|---|---|---|
DATASTORE | Ja | Datastore-Name, auf milvus setzen |
BEARER_TOKEN | Ja | Ihr Bearer-Token |
OPENAI_API_KEY | Ja | Ihr OpenAI-API-Schlüssel |
MILVUS_COLLECTION | Optional | Milvus-Collection-Name, standardmäßig eine zufällige UUID |
MILVUS_HOST | Optional | Milvus-Host-IP, standardmäßig localhost |
MILVUS_PORT | Optional | Milvus-Port, standardmäßig 19530 |
MILVUS_USER | Optional | Milvus-Benutzername, wenn RBAC aktiviert ist, standardmäßig None |
MILVUS_PASSWORD | Optional | Milvus-Passwort, falls erforderlich, standardmäßig None |
Sobald Sie dies konfiguriert haben, führen Sie den folgenden Test aus, um mit diesem Befehl zu bestätigen, dass die Integration funktioniert.
pytest ./tests/datastore/providers/milvus/test_milvus_datastore.py
Das Plugin bereitstellen
Nachdem das Plugin getestet wurde, können wir mit der Bereitstellung fortfahren. ChatGPT greift auf Plugins zu, indem es Anfragen an den Ort sendet, an dem Ihr Plugin-Server läuft, sei es Amazon ECS, Fly.io, Heroku usw. Eine detaillierte Anleitung zur Konfiguration finden Sie im Deployment-Abschnitt der GitHub-readme.
Die Memory-Funktion
Eine der coolen Funktionen dieses neuen Plugins ist eine Funktion, die sie Memory nennen. Dadurch erhält ChatGPT die Fähigkeit, Informationen aus Konversationen zu speichern und in einer Vektordatenbank für die spätere Verwendung abzulegen.
Danksagungen
Dies war ein spannendes Projekt, und ich möchte dem OpenAI-Team von Isabella Fulford sowie dem Ziliz-Team von Frank Liu und Robert Guo danken. Wenn Sie Feedback haben oder es selbst ausprobieren möchten, sehen Sie sich das GitHub-Repo an. Ich persönlich freue mich darauf, zu einer der vielen großartigen Ideen beizutragen, die in der Readme des ChatGPT Retrieval Plugin aufgeführt sind!
Weiterlesen

DeepSeek-OCR Explained: Optical Compression for Scalable Long-Context and RAG Systems
Discover how DeepSeek-OCR uses visual tokens and Contexts Optical Compression to boost long-context LLM efficiency and reshape RAG performance.

Data Deduplication at Trillion Scale: How to Solve the Biggest Bottleneck of LLM Training
Explore how MinHash LSH and Milvus handle data deduplication at the trillion-scale level, solving key bottlenecks in LLM training for improved AI model performance.

Introducing DeepSearcher: A Local Open Source Deep Research
In contrast to OpenAI’s Deep Research, this example ran locally, using only open-source models and tools like Milvus and LangChain.



