使用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。

相关推荐
邓熙榆13 分钟前
Logo语言的网络编程
开发语言·后端·golang
hunter20620617 分钟前
用opencv生成视频流,然后用rtsp进行拉流显示
人工智能·python·opencv
Daphnis_z18 分钟前
大模型应用编排工具Dify之常用编排组件
人工智能·chatgpt·prompt
Johaden2 小时前
EXCEL+Python搞定数据处理(第一部分:Python入门-第2章:开发环境)
开发语言·vscode·python·conda·excel
小虎牙^O^3 小时前
2024春秋杯密码题第一、二天WP
python·密码学
羊小猪~~4 小时前
MYSQL学习笔记(四):多表关系、多表查询(交叉连接、内连接、外连接、自连接)、七种JSONS、集合
数据库·笔记·后端·sql·学习·mysql·考研
梦魇梦狸º4 小时前
mac 配置 python 环境变量
chrome·python·macos
查理零世4 小时前
算法竞赛之差分进阶——等差数列差分 python
python·算法·差分
陈傻鱼5 小时前
ROS2测试仿真
机器人·ros·slam
ByteBlossom6666 小时前
MDX语言的语法糖
开发语言·后端·golang