عن المشروع

Langchain-Chatchat (المعروف سابقًا باسم Langchain-ChatGLM) هو مشروع تطبيق مفتوح المصدر وقابل للنشر دون اتصال بالإنترنت لـ RAG (توليد معزز بالاسترجاع) ووكيل، مبني على إطار Langchain ونماذج لغوية كبيرة مثل ChatGLM وQwen وLlama. هدفه هو إنشاء حل للأسئلة والأجوبة من قاعدة المعرفة يكون صديقًا للسيناريوهات الصينية والنماذج مفتوحة المصدر، ويمكن تشغيله بالكامل دون اتصال بالإنترنت. المبدأ الأساسي للعملية هو: تحميل الملفات، قراءة النصوص، تقسيم النصوص، تحويل النصوص إلى متجهات، تحويل السؤال إلى متجه، مطابقة أفضل النصوص top k في قاعدة المتجهات، إضافة النصوص المطابقة كسياق مع السؤال إلى الـ prompt، ثم إرسالها إلى نموذج اللغة الكبير لتوليد الإجابة. لا يتضمن المشروع نفسه ضبطًا دقيقًا أو تدريبًا، ولكن يمكن تحسين الأداء من خلال الضبط الدقيق. تشمل ميزات الإصدار 0.3.x: محادثة LLM، محادثة قاعدة المعرفة، محادثة محرك البحث، محادثة الملفات (موحدة كـ File RAG، تدعم طرق استرجاع متعددة مثل BM25+KNN)، محادثة قاعدة البيانات، محادثة الصور متعددة الوسائط، محادثة أوراق ARXIV، محادثة Wolfram، توليد الصور من النص، إدارة قاعدة المعرفة المحلية، وواجهة الويب. يتم تنفيذ الوظائف الأساسية بواسطة الوكيل، ويمكن للمستخدمين أيضًا استدعاء الأدوات يدويًا، مع دعم أوضاع مختلفة مثل الاستدعاء التلقائي للأدوات، تحليل معلمات الأدوات فقط، وإدخال المعلمات يدويًا. فيما يتعلق بالاتصال بالنماذج، لم يعد الإصدار 0.3.x يقوم بتحميل النماذج مباشرة من المسارات المحلية، بل يتصل عبر أطر الاستدلال الرئيسية للنماذج، بما في ذلك Xinference وLocalAI وOllama وFastChat، بالإضافة إلى إطار API عبر الإنترنت One API (يدعم OpenAI وAzure OpenAI وAnthropic Claude وZhipu Qingyan وBaichuan وغيرها). جميع اتصالات النماذج متوافقة مع OpenAI SDK. طرق النشر تشمل التثبيت عبر pip (pip install langchain-chatchat -U)، التثبيت من المصدر/النشر للتطوير، والنشر عبر Docker. تتضمن خطوات الاستخدام: تشغيل إطار استدلال النموذج وتحميل النموذج، تنفيذ chatchat init لتهيئة الإعدادات ودليل البيانات، تعديل ملفات الإعداد مثل model_settings.yaml، تنفيذ chatchat kb -r لتهيئة قاعدة المعرفة، وتنفيذ chatchat start -a لبدء المشروع. يدعم المشروع Python 3.8-3.11، ويعمل على Windows وmacOS وLinux، مع دعم الأجهزة CPU وGPU وNPU وMPS. كود المشروع مرخص بموجب Apache-2.0. تشمل المعالم الرئيسية: إصدار 0.1.0 في أبريل 2023، إعادة التسمية وإصدار 0.2.0 في أغسطس 2023، تجاوز 20 ألف نجمة في ديسمبر 2023، وإصدار 0.3.0 ببنية جديدة تمامًا في يونيو 2024.