هذه هيئة استراحة لوكيل محادثة ، تسمح بتضمين المستندات ، والبحث عنها باستخدام البحث الدلالي ، إلى QA استنادًا إلى المستندات وإجراء معالجة المستندات مع نماذج لغة كبيرة.
في الوقت الحالي ، أقوم بإعادة صياغة Langgraph ، وبالتالي لن تعمل جميع الإصدارات الرئيسية مع جميع مقدمي الخدمات. سأقوم بتحديث مقدمي الخدمات في الأسابيع المقبلة. يرجى استخدام الإصدارات للحصول على نسخة عمل.
إذا كنت ترغب في استخدام Alph Alpha الواجهة الخلفية فقط ، فإنني أوصي بخلفي الآخر: https://github.com/mfmezger/aleph-alpha-rag.
لتشغيل النظام الكامل مع Docker استخدم هذا الأمر:
git clone https://github.com/mfmezger/conversational-agent-langchain.git
cd conversational-agent-langchain
قم بإنشاء ملف .env من .env-template وقم بتعيين مفتاح QDrant API. للاختبارات فقط تعيينها للاختبار. qdrant_api_key = "اختبار"
ثم ابدأ النظام مع
docker compose up -d
ثم انتقل إلى http://127.0.0.1:8001/docs أو http://127.0.0.1:8001/redoc لمشاهدة وثائق API.
الواجهة الأمامية: LocalHost: 8501 Qdrant Dashboard: LocalHost: 6333/Dashboard
هذا المشروع هو وكيل محادثة يستخدم نماذج لغة Alpha و Openai الكبيرة لإنشاء ردود على استعلامات المستخدمين. يتضمن الوكيل أيضًا قاعدة بيانات متجه و API REST مصممة باستخدام Fastapi.
سمات
البحث الدلالي هو تقنية بحث متقدمة تهدف إلى فهم معنى وسياق استعلام المستخدم ، بدلاً من مطابقة الكلمات الرئيسية. إنه يتضمن معالجة اللغة الطبيعية (NLP) وخوارزميات التعلم الآلي لتحليل وتفسير نية المستخدم ، والمرادفات ، والعلاقات بين الكلمات ، وهيكل المحتوى. من خلال النظر في هذه العوامل ، يحسن البحث الدلالي دقة وأهمية نتائج البحث ، مما يوفر تجربة مستخدم أكثر سهولة وشخصية.
Langchain هي مكتبة لمعالجة اللغة الطبيعية والتعلم الآلي. Fastapi هو إطار ويب حديث وسريع (عالي الأداء) لبناء واجهات برمجة التطبيقات مع Python 3.7+ استنادًا إلى تلميحات نوع Python القياسية. Vectordatabase هي قاعدة بيانات تخزن المتجهات ، والتي يمكن استخدامها لعمليات البحث عن التشابه ومهام التعلم الآلي الأخرى.
تتوفر طريقتان لإدارة مفاتيح واجهة برمجة التطبيقات الخاصة بك ، وأسهل النهج هو إرسال رمز API في الطلب باعتباره الرمز المميز. الإمكانية الأخرى هي إنشاء ملف .env وإضافة رمز API هناك. إذا كنت تستخدم Openai من Azure أو Openai مباشرة ، فأنت بحاجة إلى تعيين المعلمات الصحيحة في ملف .env.
على Linux أو Mac ، تحتاج إلى ضبط ملف /etc /hosts لتضمين السطر التالي:
127.0.0.1 qdrant
أول تثبيت تبعيات بيثون:
تحتاج إلى Instal Rye إذا كنت ترغب في استخدامه لمزامنة ملف المتطلبات. تثبيت الجاودار.
rye sync
# or if you do not want to use rye
pip install -r requirements.lock
ابدأ النظام الكامل بـ:
docker compose up -d
لتشغيل قاعدة بيانات QDrant المحلية فقط:
docker compose up qdrant
لتشغيل الواجهة الخلفية ، استخدم هذا الأمر في دليل الجذر:
poetry run uvicorn agent.api:app --reload
لتشغيل الاختبارات ، يمكنك استخدام هذا الأمر:
poetry run coverage run -m pytest -o log_cli=true -vvv tests
لتشغيل الواجهة الأمامية ، استخدم هذا الأمر في دليل الجذر:
poetry run streamlit run gui.py --theme.base= " dark "
Mypy Rag-قاود الحزم
تتوفر لوحة معلومات QDrant على http://127.0.0.1:6333/dashboard. هناك تحتاج إلى إدخال مفتاح API.
لاستخدام واجهة برمجة تطبيقات QDrant ، تحتاج إلى تعيين المعلمات الصحيحة في ملف .env. QDrant_API_KEY هو مفتاح API ل API QDrant. وتحتاج إلى تغييره في ملف qdrant.yaml في مجلد التكوين.
إذا كنت ترغب في تناول كمية كبيرة من البيانات ، فإنني أوصي باستخدام البرامج النصية الموجودة في الوكيل/الابتلاع.
لاختبار واجهة برمجة التطبيقات أوصي برونو. طلبات API هي متجر في مجلد Convagentbruno.