โครงการนี้เป็นการดำเนินการของ บอทโทรเลข แบบแยกส่วนตาม AIOGRAM ซึ่งออกแบบมาสำหรับการอนุมาน ML ในท้องถิ่นด้วยการสนับสนุนบริการระยะไกล ปัจจุบันรวมเข้ากับ:
การสนับสนุนการอนุมาน LLM แบบเร่งความเร็ว: LLAMA.CPP, MLC-LLM และ LLAMA-MPS
การสนับสนุนการอนุมาน LLM ระยะไกล: Oobabooga/Text-Generation-Webui, Lostruins/KoboldCpp และ Llama.cpp เซิร์ฟเวอร์
ตารางความเข้ากันได้มีอยู่ที่นี่
วิวัฒนาการมาจาก Botality รุ่นก่อนฉัน
จัดส่งด้วย webui ที่ใช้งานง่ายคุณสามารถเรียกใช้คำสั่งและพูดคุยกับบอทได้ใน webui
คุณสามารถค้นหาได้ที่นี่ (เร็ว ๆ นี้)
บางรุ่นมีการเปลี่ยนแปลงที่แตกหักดูไฟล์ Changelog สำหรับข้อมูลเพิ่มเติม
[บอท]
[LLM]
[SD]
[TTS]
[STT]
stt_autoreply_mode ไม่ใช่ none รับรู้ข้อความเสียงและตอบกลับด้วยโมดูล LLM และ TTS[TTA]
tta ลงใน active_modules.env.example และเปลี่ยนชื่อสำเนาเป็น .env อย่าเพิ่มไฟล์. env ลงใน Commits ของคุณ!.envpip install -r requrements.txtpip install -r requrements-tts.txt และ pip install -r requrements-llm.txt หากคุณต้องการใช้ LLM คุณอาจต้องใช้ Pytorch เวอร์ชันใหม่ สำหรับคำพูดถึงการเรียกใช้ข้อความ PIP ติด pip install -U git+https://[email protected]/facebookresearch/audiocraft#egg=audiocraft pip install -r requrements-stt.txt--api FLAGtts_voices และเส้นทางไปยังไดเรกทอรีของพวกเขาใน tts_pathpython dashboard.py มิฉะนั้นเรียกใช้บอทด้วย python bot.pyแนะนำให้ใช้ Python3.10+ เนื่องจากความเข้ากันได้ของ Aiogram หากคุณประสบปัญหาเกี่ยวกับการกระซิบหรือการบันทึกโปรดอัปเดต numpy
python3.10 -m torch.distributed.launch --use_env bot.pyremote_ob เดียวกันremote_lcpp LLM LLM (โมเดล Obsidian w/ multimodality ทดสอบ)ตรวจสอบให้แน่ใจว่าคุณมี RAM / VRAM เพียงพอที่จะเรียกใช้โมเดล
ดาวน์โหลดน้ำหนัก (และรหัสหากจำเป็น) สำหรับรูปแบบภาษาขนาดใหญ่ใด ๆ
ในไฟล์. ENV ตรวจสอบให้แน่ใจว่า "llm" อยู่ใน active_modules จากนั้นตั้งค่า:
llm_paths - เปลี่ยนเส้นทางของโมเดลที่คุณดาวน์โหลด
llm_backend - เลือกจาก pytorch , llama.cpp llama_hf mlc_pb , remote_ob , remote_lcpp llm_python_model_type = ถ้าคุณตั้งค่า pytorch gptj ตัว llama_orig ก่อนหน้านี้ตั้งค่ารุ่น gpt2 auto_hf ต้องการใช้
llm_character = อักขระที่คุณเลือกจากไดเรกทอรี characters ตัวอย่างเช่น characters.gptj_6B_default ไฟล์อักขระยังมีเทมเพลตที่รวดเร็วและตัวเลือกการกำหนดค่าแบบจำลองที่เหมาะสมที่สุดสำหรับรุ่นเฉพาะอย่าลังเลที่จะเปลี่ยนไฟล์อักขระแก้ไขบุคลิกภาพและใช้กับรุ่นอื่น ๆ
llm_assistant_chronicler = A Formatter/Output Formatter/Parser สำหรับงานผู้ช่วยสามารถเป็น 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 Chronicler
สำหรับ oobabooga webui และ kobold.cpp แทนที่จะระบุ llm_paths ตั้งค่า llm_host ตั้งค่า llm_active_model_type เป็น remote_ob และตั้งค่า llm_character เป็นหนึ่งที่มีรูปแบบ / ที่ตั้งไว้ล่วงหน้าเป็นแบบจำลองของคุณ เรียกใช้เซิร์ฟเวอร์ด้วย -API FLAG
สำหรับ llama.cpp c-server เริ่ม ./server server ตั้งค่า url ใน llm_host และตั้งค่า llm_active_model_type เป็น remote_lcpp สำหรับ multimodality โปรดดูหัวข้อนี้
ส่งข้อความไปยังบอทของคุณด้วยคำสั่ง /TTI -H สำหรับข้อมูลเพิ่มเติมเกี่ยวกับวิธีการใช้การแพร่กระจายที่เสถียรในบอทและ /TTS -H สำหรับโมดูล TTS บอทใช้คำสั่งเดียวกันกับชื่อเสียงในไฟล์กำหนดค่าสำหรับ TTS คำสั่งลอง /LLM สำหรับรายละเอียดโมดูล LLM LLM เริ่มต้นโหมดแชทสำหรับรุ่นที่รองรับผู้ช่วยสามารถเรียกได้ด้วยคำสั่ง /ถาม
ใบอนุญาต: รหัสของโครงการนี้มีการแจกจ่ายภายใต้ใบอนุญาต CC BY-NC-SA 4.0 ห้องสมุดบุคคลที่สามอาจมีใบอนุญาตที่แตกต่างกัน