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容器:
代码语言:javascript复制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的接口地址,默认为https://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吧!