AIChatBot -- AI对话机器人

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

AIChatBot示例截图

安装和配置

准备资料

  1. 访问并开通微信测试号,将页面上的appID和appsecret作为环境变量,分别命名为MP_APPIDMP_APPSECRET
  2. 随机编写一个Token,并将其设置为环境变量MP_TOKEN
  3. 配置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。
  4. 设置触发词,可以通过设置环境变量来实现。如果测试为空,则每一句话都会触发AI答复。
  5. 配置Google搜索引擎插件,使用serper实现,注册后可获得2500次免费请求。设置以下环境变量:

    • ENABLE_SEARCH:是否启用搜索引擎插件。
    • SERPER_KEY:搜索引擎的API密钥。
  6. 启动服务后,记得将回调地址和Token回填到微信测试号设置页面。

Docker安装

  1. 确保对./data有写权限,或者挂载到有权限的位置。
  2. 执行以下命令启动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安装

  1. 确保对./data有写权限,或者挂载到有权限的位置。
  2. 复制docker-compose.example.ymldocker-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
  3. 启动服务。

回填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_KEYOpenAI/AIGC2D的apikey
DEFAULT_API_URLOpenAI/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吧!

Last modification:October 13th, 2023 at 11:23 am
如果觉得我的文章对你有用,请随意赞赏