يهدف هذا المشروع إلى تنفيذ بحث دلالي وتطبيق LLM-Chat الذي يعمل بالخرس على نطاق واسع. يتكون من ثلاثة مكونات رئيسية:
1. Vector Store Database (chromadb_service): Manages and stores vector embeddings for efficient retrieval.
2. Backend LLM-Powered API Service (llm_service): Handles the core logic and interacts with the LLM model.
3. Frontend Application: Provides the user interface for interacting with the application.
يتيح التصميم المعياري أن يكون كل مكون قابلاً للتطوير بشكل مستقل ، مما يتيح للنظام التعامل مع أحجام حركة المرور الكبيرة حسب الحاجة.
بالنسبة للنشر في العالم الحقيقي ، يوصى بتبني حل قاعدة بيانات متجه موزع بدلاً من chromadb. بالإضافة إلى ذلك ، سيكون من الضروري إجراء مزيد من التحسينات لجعل الإنتاج جاهزًا للتقديم.
يعد إعداد المشروع هذا مجرد بداية لإنشاء تطبيق قائم على الدردشة جاهز للإنتاج.
تثبيت التبعيات (استخدم Python> = 3.10). ستحتاج إلى إضافة متغير البيئة CMAKE_ARGS لتركيب LLMA-CPP-PYTHON الناجح. بالنسبة إلى Apple Silicon MacBooks ، يرجى استخدام الأمر أدناه. يرجى التحقق من الوثائق الرسمية لـ LLMA-CPP-Python للحصول على تعليمات محددة منصة أخرى. وصلة
CMAKE_ARGS="-DLLAMA_METAL=on"
pip install -r requirements.txt
بعد الكلمات ، في التسلسل التالي قم بتشغيل كل خدمة.
هذه هي خدمة قاعدة بيانات متجه تقوم بإنشاء إدخالات مجموعة البيانات وتعديلها وتحديثها. اتبع هذه التعليمات هنا
يتم تشغيل خدمة API هذه بواسطة طراز LLAMA-2-7B لواجهة الدردشة وتستخدم chromadb_service لاسترجاع السياق. اتبع هذه التعليمات هنا
هذا هو تطبيق الواجهة الأمامية (STREMLIT) الذي يعتمد على LLM_SERVICE لميزات chatbot الكهربائية وميزات البحث الدلالي.
لبدء تشغيل تطبيق الواجهة الأمامية أدناه.
streamlit run frontend/1_Product_Chat.py
يرجى التواصل معي على LinkedIn للحصول على أي أسئلة تتعلق بالتنفيذ و TechonLogies. لا تتردد في فتح مستحضرات السحب لمزيد من التحسينات. شكرًا لك!