使用微信测试号做一个AI对话机器人 
                                                    
                        
                    
                    
  
                    
                    AIChatBot – AI对话机器人
AIChatBot是一个基于微信测试号的对话机器人,它可以对接任何兼容OpenAI规范的API接口,例如AIGC2D,并且还添加了Google联网搜索的支持。

安装和配置
准备资料
访问并开通微信测试号,将页面上的appID和appsecret作为环境变量,分别命名为
MP_APPID和MP_APPSECRET。随机编写一个Token,并将其设置为环境变量
MP_TOKEN。配置OpenAI或AIGC2D接口,设置以下环境变量:
DEFAULT_API_URL:API的地址,默认为https://api.openai.com/v1或https://api.aigc2d.com/v1。DEFAULT_API_KEY:API的密钥。DEFAULT_MODEL:模型名称,默认为gpt-3.5-turbo-16k。
设置触发词,可以通过设置环境变量来实现。如果测试为空,则每一句话都会触发AI答复。
配置Google搜索引擎插件,使用serper实现,注册后可获得2500次免费请求。设置以下环境变量:
ENABLE_SEARCH:是否启用搜索引擎插件。SERPER_KEY:搜索引擎的API密钥。
启动服务后,记得将回调地址和Token回填到微信测试号设置页面。
Docker安装
确保对
./data有写权限,或者挂载到有权限的位置。执行以下命令启动Docker容器:
docker run -d --name bot \ -e MP_APPID=<填写appID> \ -e MP_SECRET=<填写appsecret> \ -e MP_TOKEN=<填写Token> \ -e DEFAULT_API_URL=https://api.aigc2d.com/v1 \ -e DEFAULT_API_KEY=<填写API密钥> \ -v ./data:/app/data \ -p 80:8080 \ alone88/aichatbot:latest
Docker Compose安装
确保对
./data有写权限,或者挂载到有权限的位置。复制
docker-compose.example.yml为docker-compose.yml,并根据需要修改环境变量。version: '3' services: bot: image: alone88/aichatbot environment: - MP_APPID=<填写appID> - MP_SECRET=<填写appsecret> - MP_TOKEN=<填写Token> - DEFAULT_API_URL=https://api.aigc2d.com/v1 - DEFAULT_API_KEY=<填写API密钥> - ENABLE_HISTORY=true volumes: - ./data:/app/data ports: - 80:8080启动服务。
回填Token和回调地址
启动服务后,可以获得回调地址。如果IP/域名是xxx.xxx.xxx.xxx:xxxx,那么回调地址是http://xxx.xxx.xxx.xxx:xxxx/wechat。
在微信测试号设置页面的接口配置信息中,将回调地址和Token填入并保存。

使用
用微信扫描测试号设置页面的二维码,关注测试号后,可以发送问题。也可以通过/setXXX命令进行个人配置。
可以通过/help命令查看可用命令。
你可以将测试号发送到桌面,作为快速进入的入口。这样就不用在微信里边到处找了(目前只支持安卓)。
环境变量说明
以下是一些常用的环境变量说明:
| 变量名 | 说明 | 
|---|---|
| MP_APPID | 微信公众号APPID | 
| MP_SECRET | 微信公众号Secret | 
| MP_TOKEN | 微信公众号Token | 
| DEFAULT_API_KEY | OpenAI/AIGC2D的apikey | 
| DEFAULT_API_URL | OpenAI/AIGC2D的接口地址,默认为api.aigc2d.com/v1 | 
| DEFAULT_WORD | 触发词,包含触发词才会触发回复,不设置则所有都会触发回复 | 
| DEFAULT_MODEL | 模型名称,默认为gpt-3.5-turbo-16k | 
| DEFAULT_SYSTEM | 系统提示词,默认为空 | 
| MAX_TOKEN | 最大max_tokens限制,默认根据模型限定 | 
| TEMPERATURE | 模型的temperature | 
| REPLY_CHUNK_LENGTH | 每次输出字数限制,超过这个限制则会分多条消息返回 | 
| ENABLE_HISTORY | 是否保留对话上下文 | 
| ENABLE_SEARCH | 是否启用搜索引擎插件 | 
| SERPER_KEY | 搜索引擎的apikey | 
以上是AIChatBot的一些基本信息和安装配置方法。它可以帮助你快速搭建一个智能对话机器人,并且可以根据需要进行个性化配置。快来体验AIChatBot吧!
本作品采用《CC 协议》,转载必须注明作者和本文链接
          
                    
                    
          
          
                关于 LearnKu
              
                    
                    
                    
 
推荐文章: