تم تصميم هذا المشروع لتنفيذ وكيل قادر على التفاعل مع قاعدة بيانات الرسم البياني مثل Neo4J من خلال طبقة دلالية باستخدام استدعاء وظيفة Openai. تقوم الطبقة الدلالية بتجهيز الوكيل بمجموعة من الأدوات القوية ، مما يسمح لها بالتفاعل مع قاعدة بيانات الرسم البياني بناءً على نية المستخدم. اقرأ المزيد في منشور المدونة.
لبدء المشروع ، قم بتشغيل الأمر التالي:
docker-compose up
افتح http://localhost:8501 في متصفحك للتفاعل مع الوكيل.
يستخدم الوكيل عدة أدوات للتفاعل مع قاعدة بيانات الرسم البياني Neo4J بشكل فعال:
تحتاج إلى تحديد متغيرات البيئة التالية في ملف .env .
OPENAI_API_KEY=<YOUR_OPENAI_API_KEY>
NEO4J_URI=<YOUR_NEO4J_URI>
NEO4J_USERNAME=<YOUR_NEO4J_USERNAME>
NEO4J_PASSWORD=<YOUR_NEO4J_PASSWORD>
يحتوي هذا المشروع على الخدمات التالية ملفوفة كحاويات Docker
neo4j-semantic-layer لتنفيذ إمكانيات استدعاء Openai LLM وقدرات الاتصال.localhost:8501 . إذا كنت ترغب في ملء DB بمجموعة بيانات مثال على الأفلام ، فيمكنك تشغيل ingest.py . يستورد البرنامج النصي معلومات حول الأفلام وتصنيفها من قبل المستخدمين. للتشغيل داخل حاوية Docker API (الموصى بها) ، قم بما يلي:
# access container shell
docker exec -it < container id for llm-movieagent-api > bash
# run script
python ingest.py بالإضافة إلى ذلك ، يقوم البرنامج النصي بإنشاء مؤشرين من النصين الكاملين ، يتم استخدامهما لتعيين المعلومات من إدخال المستخدم إلى قاعدة البيانات. تعتمد مجموعة البيانات على مجموعة بيانات Movielens ، والتي تتوفر أيضًا كمشروع Recommendation في صندوق الرمل Neo4J.
المساهمات موضع ترحيب!