هذا المشروع هو تطبيق لوب برقة Telegram معيارية استنادًا إلى Aiogram ، المصمم لاستدلال ML المحلي مع دعم الخدمة عن بُعد. متكامل حاليًا مع:
دعم الاستدلال LLM المتسارع: llama.cpp ، MLC-LLM و LLAMA-MPS
دعم استنتاج LLM عن بُعد: Oobabooga/Text-Generation-Webui و Lostruins/Koboldcpp و Llama.cpp Server
جدول التوافق متاح هنا
تطورت من السلف الروبائي الأول
يتم شحنها باستخدام Webui سهل الاستخدام ، يمكنك تشغيل الأوامر والتحدث مع الروبوت في Webui.
يمكنك العثور عليه هنا (قريبا)
بعض الإصدارات لديها تغييرات كسر ، راجع ملف Changelog لمزيد من المعلومات
[بوت]
[LLM]
[SD]
[TTS]
[STT]
stt_autoreply_mode none ، فهي تتعرف على الرسائل الصوتية والرد عليها باستخدام وحدات LLM و TTS[TTA]
tta إلى active_modules.env.example file وأعد تسمية النسخة إلى .env ، لا تضيف ملف .env إلى ارتكابك!.envpip install -r requrements.txtpip install -r requrements-tts.txt و pip install -r requrements-llm.txt إذا كنت ترغب في استخدام LLM ، فربما ستحتاج أيضًا إلى إصدار جديد من Pytorch. pip install -r requrements-stt.txt ، pip install -U git+https://[email protected]/facebookresearch/audiocraft#egg=audiocraft--api وحدة الانتشار المستقر ، تأكدtts_voices ومسار إلى دليلهم في tts_pathpython dashboard.py ، وإلا قم بتشغيل الروبوت مع python bot.pyينصح Python3.10+ ، بسبب توافق Aiogram ، إذا كنت تعاني من مشاكل مع الهمس أو التسجيل ، يرجى تحديث Numpy.
python3.10 -m torch.distributed.launch --use_env bot.pyremote_obremote_lcpp LLM الخلفي (نموذج Obsidian W/ Multimodality تم اختباره)تأكد من أن لديك ما يكفي من RAM / VRAM لتشغيل النماذج.
قم بتنزيل الأوزان (والرمز إذا لزم الأمر) لأي نموذج لغة كبير
في ملف .env ، تأكد من أن "llm" في active_modules ، ثم تعيين:
llm_paths - قم بتغيير المسار (المسار) من النماذج (النماذج) التي قمت بتنزيلها
llm_backend - حدد من pytorch ، llama.cpp ، mlc_pb ، remote_ob ، remote_lcpp llm_python_model_type = إذا قمت بتعيين pytorch في الخيار السابق ، قم بتعيين نوع النموذج الذي تريد استخدامه auto_hf يمكن أن يكون gpt2 ، gptj ، llama_orig ، llama_hf .
llm_character = حرف من اختيارك ، من دليل characters ، على سبيل المثال characters.gptj_6B_default ، تحتوي ملفات الأحرف أيضًا على قوالب موجه وخيارات تكوين النموذج الأمثل لنموذج محدد ، ولا تتردد في تغيير ملفات الأحرف ، وتعديل شخصيتها واستخدامها مع نماذج أخرى.
llm_assistant_chronicler = يمكن أن تكون instruct /إخراج/ raw لمهمة مساعد ، أو لا تتغير إذا لم تستخدم mlc_pb .
llm_history_grouping = user لتخزين السجل مع كل مستخدم بشكل منفصل أو chat لتخزين سجل الدردشة مع جميع المستخدمين في تلك الدردشة
llm_assistant_use_in_chat_mode = True / False عندما يكون خطأ ، استخدم / اطلب الأمر لطرح أسئلة النموذج دون أي سجل إدخال ، عندما يكون صحيحًا ، يتم التعامل مع جميع الرسائل كأسئلة.
بالنسبة إلى llama.cpp: تأكد من أن لديك برنامج التحويل البرمجي C ++ ، ثم ضع جميع الأعلام اللازمة لتمكين دعم GPU ، وتثبيته pip install llama-cpp-python ، وتنزيل أوزان الطراز وتغيير المسار في llm_paths .
بالنسبة إلى MLC-LLM ، اتبع تعليمات التثبيت من المستندات ، ثم استنساخ MLC-Chatbot ، ووضع 3 مسارات في llm_paths . استخدم مع llm_assistant_use_in_chat_mode=True ومع مؤرخ raw .
بالنسبة إلى Oobabooga Webui و Kobold.cpp ، بدلاً من تحديد llm_paths ، SET llm_host ، قم بتعيين llm_active_model_type إلى remote_ob وتعيين llm_character على واحد له نفس تنسيق المطالبة / الإعداد المسبق لك. قم بتشغيل الخادم مع -علامة api.
بالنسبة إلى llama.cpp c-server ، ابدأ ./server ، قم بتعيين عنوان URL الخاص به في llm_host وقم بتعيين llm_active_model_type إلى remote_lcpp ، من أجل التعددية ، يرجى الرجوع إلى هذا الموضوع
أرسل رسالة إلى الروبوت الخاص بك باستخدام Command /TTI -H لمزيد من المعلومات حول كيفية استخدام الانتشار المستقر في BOT ، و /TTS -H لوحدة TTS. يستخدم الروبوت نفس الأوامر كأسماء صوتية في ملف التكوين لـ TTS. جرب /أمر LLM لتفاصيل وحدة LLM. LLM الافتراضية إلى وضع الدردشة للنماذج التي تدعمها ، يمكن استدعاء المساعد مع /اسأل الأمر
الترخيص: يتم توزيع مدونة هذا المشروع حاليًا بموجب ترخيص CC BY-NC-SA 4.0 ، قد تحتوي مكتبات الطرف الثالث على تراخيص مختلفة.