该项目是基于AIPROMPOM的模块化电报机器人的实现,该机器人是为远程服务支持的本地ML推断而设计的。目前与:
加速LLM推理支持:Llama.cpp,MLC-LLM和Llama-MPS
远程LLM推理支持:oobabooga/text-generation-webui,lostruins/koboldcpp和llama.cpp服务器
兼容性表可在此处找到
从前任波特进化
使用易于使用的WebUI发货,您可以运行命令并与WebUI中的机器人交谈。
您可以在这里找到它(即将推出)
某些版本有破坏性的更改,请参见ChangElog文件以获取更多信息
[bot]
[LLM]
[SD]
[TTS]
[STT]
stt_autoreply_mode参数不是none[TTA]
tta添加到active_modules之后,可以与 /sfx和 /音乐命令一起使用.env.example文件并将副本重命名为.env ,请勿将.ENV文件添加到您的提交中!.env文件中设置电报机器人令牌和其他配置选项pip install -r requrements.txtpip install -r requrements-tts.txt和pip install -r requrements-llm.txt请安装可选要求,如果您想使用LLM,则可能还需要新版本的Pytorch版本。对于语音到文本运行pip install -r requrements-stt.txt ,用于文本到audio run pip install -U git+https://[email protected]/facebookresearch/audiocraft#egg=audiocraft--api标志运行tts_voices配置选项中,并在tts_path中通往其目录的路径python dashboard.py运行它,否则使用python bot.py运行机器人由于相应的兼容性,建议使用Python3.10+,如果您遇到耳语或伐木问题,请更新numpy。
python3.10 -m torch.distributed.launch --use_env bot.py运行bot。remote_ob后端remote_lcpp LLM后端选项(测试多模式的黑曜石模型)确保您有足够的RAM / VRAM来运行模型。
为任何大语言模型下载权重(以及代码)
在.env文件中,请确保"llm"在active_modules中,然后设置:
llm_paths更改下载模型的路径llm_backend - select from pytorch , llama.cpp , mlc_pb , remote_ob , remote_lcpp llm_python_model_type = if you set pytorch in the previous option, set the model type that you want to use, it can be gpt2 , gptj , llama_orig , llama_hf and auto_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时,当false时,使用 /要求命令提出模型问题而无需任何输入历史记录,当true时,所有消息都将视为问题。
对于Llama.cpp:确保您有一个C ++编译器,然后放置所有必要的标志来启用GPU支持,然后安装IT pip install llama-cpp-python ,下载型号权重并更改llm_paths中的路径。
对于MLC-LLM,请按照文档的安装说明,然后克隆MLC-Chatbot,然后在llm_paths中放置3个路径。与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设置为具有与模型相同提示格式 /预设的一个llm_character。使用-API标志运行服务器。
对于llama.cpp c-server,启动./server ,在llm_host中设置其URL,并将llm_active_model_type设置为remote_lcpp ,请参阅此线程
使用命令/TTI -H向机器人发送一条消息,以获取有关如何在bot中使用稳定扩散的更多信息,而对于tts模块,将消息发送到稳定的扩散和/tts -H 。该机器人在TTS中使用与配置文件中的语音名称相同的命令。尝试/llm命令获取LLM模块详细信息。 llm默认用于支持它的模型的聊天模式,可以使用 /ask命令调用助手
许可证:该项目的代码目前是根据CC BY-NC-SA 4.0许可证分配的,第三方库可能具有不同的许可证。