综合介绍
ChatGPT-on-WeChat项目是一个基于大模型的智能对话机器人,支持个人微信、微信公众号、企业微信应用、飞书、钉钉等多平台接入。用户可以选择GPT3.5、GPT-4、Claude、文心一言、讯飞星火、通义千问、Gemini、GLM-4、Kimi等多种模型,处理文本、语音和图片,访问操作系统和互联网,支持基于自有知识库进行定制企业智能客服。部分能力由 LinkAI 提供支持。
功能列表
- 多端部署:支持微信公众号、企业微信应用、飞书、钉钉等多种部署方式。
- 基础对话:私聊及群聊的消息智能回复,支持多轮会话上下文记忆。
- 语音能力:可识别语音消息,通过文字或语音回复,支持多种语音模型。
- 图像能力:支持图片生成、图片识别、图生图(如照片修复),可选择多种图像模型。
- 丰富插件:支持个性化插件扩展,已实现多角色切换、文字冒险、敏感词过滤、聊天记录总结、文档总结和对话、联网搜索等插件。
- 知识库:通过上传知识库文件自定义专属机器人,可作为数字分身、智能客服、私域助手使用,基于LinkAI实现。
使用帮助
安装流程
- 准备环境:支持Linux、MacOS、Windows系统(可在Linux服务器上长期运行),同时需要安装Python。建议Python版本在3.7.1~3.9.X之间,推荐3.8版本。
- 克隆项目代码:
git clone https://github.com/zhayujie/chatgpt-on-wechat cd chatgpt-on-wechat/
- 安装核心依赖:
pip3 install -r requirements.txt
- 配置文件:复制配置文件模板并创建最终生效的配置文件:
cp config-template.json config.json
然后在config.json中填写配置,具体配置项如下:
{ "model": "gpt-3.5-turbo", "open_ai_api_key": "YOUR API KEY", "proxy": "127.0.0.1:7890", "single_chat_prefix": ["bot", "@bot"], "single_chat_reply_prefix": "[bot]", "group_chat_prefix": ["@bot"], "group_name_white_list": ["ChatGPT测试群", "ChatGPT测试群2"], "image_create_prefix": ["画", "看", "找"], "conversation_max_tokens": 1000, "speech_recognition": false, "group_speech_recognition": false, "voice_reply_voice": false, "character_desc": "你是基于大语言模型的AI智能助手,旨在回答并解决人们的任何问题,并且可以使用多种语言与人交流。", "use_linkai": false, "linkai_api_key": "", "linkai_app_code": "" }
- 本地运行:在项目根目录下执行:
python3 app.py
终端输出二维码后,进行扫码登录,当输出“Start auto replying”时表示自动回复程序已经成功运行。
关于中转API,支持第三方的OpenAI代理和API Key。你可以在config.py文件中找到"open_ai_api_base"参数,将其复制到config.json文件,并填入代理服务的URL即可
"open_ai_api_base": "中转api地址,例:https://exmaple.com/v1"
使用说明
- 私聊:在私聊中,需要以“bot”或“@bot”为开头的内容触发机器人,对应配置项single_chat_prefix。机器人的回复内容会以“[bot]”作为前缀,以区分真人,对应的配置项为single_chat_reply_prefix。
- 群聊:在群聊中,群名称需要配置在group_name_white_list中才能开启群聊自动回复。默认只要被@就会触发机器人自动回复,另外群聊中只要检测到以“@bot”开头的内容,同样会自动回复,这对应配置项group_chat_prefix。
- 图像生成:在满足个人或群组触发条件外,还需要额外的关键词前缀来触发,对应配置项image_create_prefix。
- 语音识别:添加“speech_recognition”: true将开启语音识别,默认使用openai的whisper模型识别为文字,同时以文字回复,该参数仅支持私聊。
- 插件使用:支持个性化插件扩展,提供角色扮演、文字冒险、与操作系统交互、访问网络数据等能力。