快速搭建ChatGPT的AI聊天QQ机器人[含问题解决办法](5分钟在qq群搭建chatgpt机器人)

5分钟在qq群搭建chatgpt机器人

ChatGPT是一个能够进行自然语言处理的开源模型,可以用来构建智能聊天机器人。在QQ群中搭建ChatGPT机器人可以为群聊增加趣味性和便利性。下面是搭建QQ群ChatGPT机器人的大纲:

一、准备工作

  • 确保具有魔法(一个幽默的点缀)
  • 确保具有有效的ChatGPT账户和API key

二、搭建进程

  1. 安装nonebot2框架
  2. 参考nonebot2官方文档快速上手

    简化安装步骤

  3. 安装cqhttp插件
  4. 下载并解压cqhttp插件

    配置config.yml文件

  5. 安装ChatGPT for Bot插件
  6. 下载ChatGPT for Bot插件

    配置config.yml文件中的API key

  7. 启动机器人
  8. 使用docker命令启动机器人容器

    设置机器人回复前缀和会话结束提示

三、ChatGPT机器人的利用

  1. 一对一聊天功能
  2. 在私聊中与机器人进行智能对话

    享受个性化的聊天体验

  3. 在群聊中问答功能
  4. 在QQ群中发问并获得机器人的回答

    为群聊增加趣味性和互动性

四、拓展利用

  1. 自定义插件开发
  2. 使用nonebot2开发个性化的聊天插件

    扩大机器人的功能和利用场景

通过依照上述大纲,你可以快速了解怎样在QQ群中搭建ChatGPT机器人并享受智能聊天的乐趣。

5分钟在qq群搭建chatgpt机器人的进一步展开说明

技术视角深入 ChatGPT

一、cqhttp

1. 下载cqhttp

首先安装 cqhttp 框架,我们从 release 界面下载最新版本的 go-cqhttp,需要根据区别的系统选择区别的文件,例如,如果你正在使用 macOs 系统,则下载 go-cqhttp_darwin_amd64.tar.gz。

2. 启动

解压下载的紧缩包,并将文件放入你的项目文件夹中。进入你的项目文件夹,在 vscode 中打开终端(在这个文件夹中打开终端便可),运行命令 ./go-cqhttp。

首次启动时,cqhttp会读取当前目录下会不会有 config.yml 文件,如果没有,则会生成一个配置文件。 根据提示选择编号3(由于 nonebot 暂时只有反向socket),重新启动后如果成功会显示以下信息:

在这个文件夹中,多了一个 config.yml 的配置文件。修改两个地方:

  • QQ账号(在配置文件第4⑸行)第一个是qq号,第二是密码,不填可以用扫二维码登录
  • 反向 websocket 服务器地址(第99行)修改成以下所示:- ws-reverse: universal: ws://127.0.0.1:8080/onebot/v11/ws

配置好后记得保存,再次运行命令 ./go-cqhttp,在 vscode 的终端控制台会有 log 信息,并弹出二维码,用刚刚配置文件中的 qq 账号扫码登录,便可看到下面的信息。并且会在文件夹里生成 session.token 的文件,即是你登录状态的 token,下次运行时不再需要登录。

至此 cqhttp 部份结束。

二、NoneBot

1. 安装

确保 Python 版本在 3.8 以上,我这里用的是最新的 Python 3.11。

在当前项目根目录下,使用 venv 创建一个虚拟环境,并使用 source 加载环境:

python3 --version
python3 -m venv venv
source venv/bin/activate

会看到命令行前面有个 venv 标识,即成功。随后使用 pip3 安装 nonebot 脚手架,并通过 nb 命令创建 bot 代码,通过 nb run 运行 bot。

注意:pip 安装速度慢,建议更换国内源。

pip3 install nb-cli
pip3 install nonebot-adapter-onebot nb

在第 3 项和第 4 项的选择中,可以看到前面是空心的,请按空格选中某一项再按回车。现在的目录结构以下:Bot 为刚刚 nb 命令创建的项目。

2. 启动

使用 nb run 启动 bot,或使用 python3 bot 来启动。

2.1 可能会遇到的问题

在这时候,可能会遇到报错“fastapi.exceptions.FastAPIError: Invalid args for response field! Hint: check that is a valid pydantic field type”。根据询问 NoneBot 的频道得知,这是由于 fastapi 的版本问题。

使用命令 pip3 list,可以看到 fastapi 的版本是 0.89.0。使用命令 pip3 install fastapi==0.88.0,对该依赖进行降级。然后重新运行 nb run 命令,便可看到运行成功了。这时候候可以正常测试机器人的功能了。

不要关闭这个终端,打开一个新的终端,保证其运行目录为项目根目录而不是其中的文件夹 bot。

运行 ./go-cqhttp 可以看到提示“已连接到反向 WebSocket Universal 服务器”。

回到刚刚的终端,也可看到 NoneBot 也提示“[INFO] logging | connection open”。

三、ChatGPT插件

1. 安装

安装之前先关闭上一步启动的机器人。在 bot 文件夹中履行命令,安装 ChatGPT 插件:

nb plugin install nonebot-plugin-chatgpt

由于我们使用的是 DEV 环境,在 bot 文件夹下的 .env.dev 文件中添加三项插件配置:

CHATGPT_SESSION_TOKEN = "XXX"
CHATGPT_COMMAND = "你好AI聊天机器人"
CHATGPT_TO_ME = "False"

由于 onebot 默许是使用 / 开头作为命令的,如果你不想添加这一个斜杆,可以继续在配置文件中添加以下配置:

command_start =[ "" ]

记得保存。

2. 启动

使用命令 nb run 启动机器人,并保证第一部份的 go-http 是开启状态。

在 QQ 中通过好友发送消息,便可取得回答。

2.1 可能会遇到的问题

启动时其实不会报错,但在发送消息后等待机器人响应时可能会出现毛病。提示报错最后带有这样的信息:“AttributeError: ‘NoneType’ object has no attribute ‘new_page’”。

在毛病信息中可以找到答案,有一个叫 Playwright 的框架提示你会不会只是下载了但没有安装。这是 ChatGPT 加了避免机器人限制以后的一种解决方法,是通过 Playwright 浏览器测试框架打开一个浏览器窗口(实际在后台打开没有实际窗口)来摹拟通过浏览器页面来调用 API。大佬们真的都很牛。

这里我们只需要履行安装便可,运行命令 playwright install,等待便可。安装好后,再次运行命令 nb run 便可享受 ChatGPT 的 AI 对话啦。

参考文章

本文参考自大佬文章:“5分钟在QQ群搭建ChatGPT机器人!”。

但是,依照上述文章进行安装时,遇到了几个问题。通过自己的努力解决后,现在将它们分享出来。如果能帮到遇到一样问题的朋友就很高兴了。

以上是对原文的改写,仅供参考。

5分钟在qq群搭建chatgpt机器人的常见问答Q&A

问题1:ChatGPT是甚么?

答案:ChatGPT是一种自然语言处理模型,可以用于生成人类类似的文本响应。它是由OpenAI开发的,使用了大量的语料数据进行训练。ChatGPT可以用于构建聊天机器人、问答系统等各种自然语言处理任务。

  • ChatGPT使用了大范围的无监督学习,在海量文本数据中学习语言模型。
  • ChatGPT的生成结果可以在很多实际利用中使用,例如智能助手、客服系统等。
  • ChatGPT在生成文本时可以接收上下文信息,并生成与之相关的文本响应。

问题2:怎么搭建基于ChatGPT的QQ机器人?

答案:搭建基于ChatGPT的QQ机器人可以遵守以下步骤:

  1. 准备机器人所需的环境和工具,例如安装Python和QQ机器人开发框架NoneBot2。
  2. 获得ChatGPT模型,并将其集成到QQ机器人中。
  3. 配置机器人的QQ号码和其他必要的信息。
  4. 编写机器人的逻辑,包括接收要求、生成响应等。
  5. 测试机器人的功能和性能。
  6. 部署机器人到QQ群或其他聊天平台中。

这些步骤可以根据具体的需求和环境来进行调剂和扩大。建议参考相关的教程和文档来了解更详细的搭建步骤和注意事项。

问题3:有哪几种参考资料可以用于搭建ChatGPT的QQ机器人?

答案:以下是一些参考资料,可以帮助你搭建基于ChatGPT的QQ机器人:

  • 《【有手就行】5分钟教你把ChatGPT接入QQ,搭建你的专属聊天机器人》- 一篇知乎文章,详细介绍了怎样使用ChatGPT搭建QQ机器人。
  • 《从零开始搭建一个基于ChatGPT的QQ机器人 – 知乎》- 一名技术博主分享的搭建教程。
  • 《5分钟搭建ChatGPT机器人_李世龙的技术博客_51CTO博客》- 一篇介绍了怎样快速搭建ChatGPT机器人的博客文章。

这些参考资料提供了区别角度和层次的搭建指点,可以根据自己的需求选择合适的参考资料来学习和实践。

ChatGPT相关资讯

ChatGPT热门资讯

X

截屏,微信识别二维码

微信号:muhuanidc

(点击微信号复制,添加好友)

打开微信

微信号已复制,请打开微信添加咨询详情!