使用NoneBot和go-cqhttp搭建ChatGPT QQ机器人

#环境准备

1.Python3.9以上(Python 3.12 Windows installer (64-bit)) 其他版本参考 https://www.python.org/

2.代码编辑器,例如 PyCharm、IDEA 等

3.Open-Ai官网使用API接口需要国外手机号 https://sms-activate.org/cn/freeNumbers

4.NoneBot官网 https://nonebot.dev/

5.Naturel GPT 文档站 https://ng.kro.zone/#/

1.创建项目

新建项目文件夹 MyBot ,进入MyBot,cmd执行以下命令

powershell 复制代码
# 安装nonebot
pip install nonebot
# 安装脚手架
pip install nb-cli
# 使用脚手架新建项目
nb create

选项如图(空格选中/取消、上下左右选择、Enter确定)

这里选择echo插件进行后续测试

2.运行项目

powershell 复制代码
# 首先测试能不能使用,可使用如同所示(Ctrl+C退出)
cd testBot
nb run --reload

安装go-cqhttp插件

powershell 复制代码
nb plugin install nonebot-plugin-gocqhttp

安装完成后,需要在 MyBot/testBot/.env.prod 中进行相关配置

powershell 复制代码
DRIVER=~fastapi # 使用fastapi驱动器
HOST=0.0.0.0 # 配置 NoneBot2 监听的 IP/主机名
PORT=23333 # 配置 NoneBot2 监听的端口

对go-cqhttp进行后台配置(如图所示,在浏览器输入 **http://127.0.0.1:23333/go-cqhttp**)

powershell 复制代码
# 启动
nb run


接下来添加绑定机器人的账号(建议使用Android Watch协议,扫码登录)

点击启动,扫码成功登录界面如同

到此为止,已经完成了go-cqhttp环境搭建。接下来开始接入ChatGPT。

3.接入ChatGPT

安装 nonebot-plugin-naturel-gpt 插件

powershell 复制代码
# cd /MyBot/testBot
nb plugin install nonebot-plugin-naturel-gpt

启动机器人,生成配置文件

powershell 复制代码
nb run

修改 MyBot/config/naturel_gpt_config.yml 文件(參考 https://ng.kro.zone/#/configuation

yaml 复制代码
# 例如:
# OpenAI 的 API Key,以字符串列表方式填入
# 请自行替换为你的 Api_Key
OPENAI_API_KEYS:
  - 'sk-xxxxxxxxxxxxx'

# 管理员 QQ,以字符串列表方式填入
ADMIN_USERID:
  - '1145141919'
  - '9191415411'

# 人设相关信息自行参考文档

更改后保存,重新启动 nb run,成功则有下图提示


如图所示,QQ接入 gpt-3.5-turbo 模型已经完成。

#扩充

1.如何使用SMS ACTIVATE?

搜索 OpenAI 服务(如果看不懂语言,可以通过右上角进行更改中文)

可以进行查找国家,下方有地区、价格显示,点击购物车图标购买

等待短信:用于接收验证码,收到即直接显示在Web上

×:没有收到则可以不消费此次服务的金额

(Tips:一定要选择和魔法地区相同的地区手机号,否则无法接收)

可以通过 https://nordvpn.com/ja/ip-lookup/ 查看IP所在地

2.如何使用 Naturel GPT 的扩展?(参考 https://ng.kro.zone/#/extension_list

以使用 发送指定二次元图片 (Lolicon API) 为例:

powershell 复制代码
# 下载扩展 ext_lolicon_pic
/rg ext add ext_lolicon_pic

在 testBot/data/naturel_gpt/extensions/ext_lolicon_pic.py 进行配置

yaml 复制代码
- EXT_NAME: ext_lolicon_pic
  IS_ACTIVE: true
  EXT_CONFIG:
    # R18 图片获取设置
	# 0 为不获取,1 为获取,2 为混合获取
    r18: 0
    # # 请求 API 使用的代理
    proxy: http://127.0.0.1:2334

使用扩展(如何调用函数请自行诱导...培养w)

powershell 复制代码
# 重新启动服务 nb run 或者
# 重新加载配置
/rg reload_config
# 查看插件信息
/rg ext


其他的插件请读者自行尝试,在此就已经结束了,期待下次再见0.0。

相关推荐
yexuhgu7 分钟前
html如何修改备注
jvm·数据库·python
AI技术控8 分钟前
Prompt Engineering 在企业大模型应用中的实践:从提示词模板到可控输出
人工智能·python·深度学习·语言模型·自然语言处理·prompt
夕除8 分钟前
spring boot 5
数据库·spring boot·后端
Marry Andy10 分钟前
langgenius/dify-sandbox:0.2.12启动崩溃
人工智能·经验分享·python
闲人编程11 分钟前
开源 vs 闭源:构建Agent该如何选择基座模型?
ai·开源·微调·智能体·决策·自进化·决策矩阵
被AI抢饭碗的人15 分钟前
C++过渡Python
开发语言·python
星栈17 分钟前
每次改订单,我都存了快照
后端·rust·开源
传说之后17 分钟前
Go Context 完全指南:树状级联、超时控制、值传递与最佳实践
后端·go
一个骇客18 分钟前
还在写 Python 脚本?试试用 Unix 命令分析莎士比亚
后端
XovH20 分钟前
Django 实战:从零开发一个完整的博客系统(附带文章、分类、标签)
后端