يمكّنك Incarnamind من الدردشة مع مستنداتك الشخصية؟ (PDF ، TXT) باستخدام نماذج لغة كبيرة (LLMS) مثل GPT (نظرة عامة على الهندسة المعمارية). على الرغم من أن Openai أطلقت مؤخرًا واجهة برمجة تطبيقات صعبة لنماذج GPT ، إلا أنها لا تمكن النماذج الأساسية المسبقة من تعلم بيانات جديدة ، ويمكن أن تكون الاستجابات عرضة للهلوسة الواقعية. الاستفادة من آلية تقطيع النوافذ المنزلق الخاصة بنا ، ويمكّن المسترد من الفرقة من الاستعلام الفعال لكل من المعلومات الدقيقة والخشنة في مستندات الحقيقة الأرضية لزيادة LLMs.
لا تتردد في استخدامه ونرحب بأي ملاحظات واقتراحات جديدة للميزات؟
فيما يلي جدول مقارنة بين النماذج المختلفة التي اختبرتها ، للرجوع إليها فقط:
المقاييس | GPT-4 | GPT-3.5 | كلود 2.0 | llama2-70b | llama2-70b-gguf | llama2-70b-api |
---|---|---|---|---|---|---|
التفكير | عالي | واسطة | عالي | واسطة | واسطة | واسطة |
سرعة | واسطة | عالي | واسطة | منخفض جدا | قليل | واسطة |
GPU RAM | ن/أ | ن/أ | ن/أ | عالية جدا | عالي | ن/أ |
أمان | قليل | قليل | قليل | عالي | عالي | قليل |
الثابتة الثابتة : تعتمد أدوات القطع التقليدية على أحجام القطع الثابتة ، مما يحد من قدرتها على التكيف في التعامل مع تعقيد البيانات المتغير والسياق.
الدقة مقابل الدلالات : تركز أساليب الاسترجاع الحالية عادة على الفهم الدلالي أو الاسترجاع الدقيق ، ولكن نادراً ما يكون كلاهما.
القيد الواحد المفرد : يمكن للعديد من الحلول الاستعلام عن وثيقة واحدة فقط في وقت واحد ، مما يقيد استرداد المعلومات متعددة الوضع.
الاستقرار : يتوافق Incarnamind مع Openai GPT ، و Claude ، و Llama2 ، وغيرها من LLMs مفتوحة المصدر ، مما يضمن تحليل مستقر.
التكييف التكيفي : تقنية ضجة النافذة المنزلق الخاصة بنا تعمل على ضبط حجم النافذة بشكل ديناميكي وموازنة الوصول إلى البيانات الدقيقة والخشنة على أساس تعقيد البيانات والسياق.
Multi-Document Engineational QA : يدعم الاستعلامات البسيطة والمتعددة القفزة عبر مستندات متعددة في وقت واحد ، مما يكسر القيد الواحد الواحد.
توافق الملف : يدعم كل من تنسيقات ملف PDF و TXT.
LLM Model Compatibility : يدعم Openai GPT ، كلود ، Llama2 وغيرها من LLMs مفتوحة المصدر.
التثبيت بسيط ، تحتاج فقط إلى تشغيل عدد قليل من الأوامر.
git clone https://github.com/junruxiong/IncarnaMind
cd IncarnaMind
إنشاء بيئة الظاهرية كوندا:
conda create -n IncarnaMind python=3.10
فعل:
conda activate IncarnaMind
تثبيت جميع المتطلبات:
pip install -r requirements.txt
قم بتثبيت Llama-CPP Seperatly إذا كنت ترغب في تشغيل LLMs محلية كمية:
NVIDIA
GPUS ، استخدم cuBLAS
CMAKE_ARGS= " -DLLAMA_CUBLAS=on " FORCE_CMAKE=1 pip install llama-cpp-python==0.1.83 --no-cache-dir
M1/M2
) ، استخدم CMAKE_ARGS= " -DLLAMA_METAL=on " FORCE_CMAKE=1 pip install llama-cpp-python==0.1.83 --no-cache-dir
قم بإعداد مفاتيح واجهة برمجة التطبيقات الخاصة بك/جميع مفاتيح API في ملف conferenceparser.ini :
[tokens]
OPENAI_API_KEY = (replace_me)
ANTHROPIC_API_KEY = (replace_me)
TOGETHER_API_KEY = (replace_me)
# if you use full Meta-Llama models, you may need Huggingface token to access.
HUGGINGFACE_TOKEN = (replace_me)
(اختياري) قم بإعداد المعلمات المخصصة الخاصة بك في ملف conferenceparser.ini :
[parameters]
PARAMETERS 1 = (replace_me)
PARAMETERS 2 = (replace_me)
...
PARAMETERS n = (replace_me)
ضع جميع ملفاتك (يرجى تسمية كل ملف بشكل صحيح لزيادة الأداء) في دليل /بيانات البيانات وقم بتشغيل الأمر التالي لتناول جميع البيانات: (يمكنك حذف الملفات في دليل /بيانات البيانات قبل تشغيل الأمر)
python docs2db.py
من أجل بدء المحادثة ، قم بتشغيل أمر مثل:
python main.py
انتظر حتى يتطلب البرنامج النصي مدخلاتك مثل أدناه.
Human:
عندما تبدأ الدردشة ، سيقوم النظام تلقائيًا بإنشاء ملف incarnamind.log . إذا كنت ترغب في تحرير التسجيل ، فيرجى التحرير في ملف ConfloSparser.ini .
[logging]
enabled = True
level = INFO
filename = IncarnaMind.log
format = %(asctime)s [%(levelname)s] %(name)s: %(message)s
شكر خاص لـ Langchain و Chroma DB و LocalGpt و Llama-CPP على مساهماتهم التي لا تقدر بثمن في مجتمع المصدر المفتوح. لقد كان عملهم فعالًا في جعل مشروع Incarnamind حقيقة واقعة.
إذا كنت ترغب في الاستشهاد بعملنا ، يرجى استخدام إدخال Bibtex التالي:
@misc { IncarnaMind2023 ,
author = { Junru Xiong } ,
title = { IncarnaMind } ,
year = { 2023 } ,
publisher = { GitHub } ,
journal = { GitHub Repository } ,
howpublished = { url{https://github.com/junruxiong/IncarnaMind} }
}
ترخيص Apache 2.0