Dieses Projekt soll einen Agenten implementieren, der mit einer Diagrammdatenbank wie Neo4j über eine semantische Schicht mithilfe von OpenAI -Funktionen interagieren kann. Die semantische Ebene ausstäbt den Agenten mit einer Reihe robuster Tools aus und ermöglicht es ihm, mit der Graph -Datenbank basierend auf der Absicht des Benutzers zu interagieren. Lesen Sie mehr im Blog -Beitrag.
Führen Sie den folgenden Befehl aus, um das Projekt zu starten:
docker-compose up
Öffnen Sie http://localhost:8501 in Ihrem Browser, um mit dem Agenten zu interagieren.
Der Agent verwendet mehrere Tools, um mit der NEO4J -Graph -Datenbank effektiv zu interagieren:
Sie müssen die folgenden Umgebungsvariablen in der .env -Datei definieren.
OPENAI_API_KEY=<YOUR_OPENAI_API_KEY>
NEO4J_URI=<YOUR_NEO4J_URI>
NEO4J_USERNAME=<YOUR_NEO4J_USERNAME>
NEO4J_PASSWORD=<YOUR_NEO4J_PASSWORD>
Dieses Projekt enthält die folgenden Dienste, die als Docker -Container verpackt sind
neo4j-semantic-layer Vorlage, um die OpenAI-LLM- und Funktionsaufruffunktionen zu implementieren.localhost:8501 . Wenn Sie die DB mit einem Beispiel -Filmdatensatz bevölkern möchten, können Sie ingest.py ausführen. Das Skript importiert Informationen zu Filmen und deren Bewertung durch Benutzer. Um innerhalb des API -Docker -Containers (empfohlen) auszuführen, führen Sie Folgendes aus:
# access container shell
docker exec -it < container id for llm-movieagent-api > bash
# run script
python ingest.py Darüber hinaus erstellt das Skript zwei FullText -Indizes, mit denen Informationen von der Benutzereingabe in die Datenbank abgebildet werden. Der Datensatz basiert auf dem Movielens -Datensatz, der auch als Recommendation in NEO4J Sandbox verfügbar ist.
Beiträge sind begrüßt!