玩转多功能QQ机器人【含ChatGPT实现】


本文记录用nonebot2搭建多功能QQ机器人的流程,包括go-cqhttp和nonebot2环境搭建,解决了Linux下的扫码问题,介绍了配置及自建模块方法,附chatgpt模块示例,已实现文生图等多项功能。

☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 免费无限量使用 DeepSeek R1 模型☜☜☜

手把手实现多功能QQ机器人

现在网络上已经有很多的教程去教学QQ搭建,我这里再写一个完整的流程搭建及自建模块如何实现。

(主要是怕自己搭完一次就忘了,算是个记录博客)

实现功能

采用目前主流的nonebot2完成QQ机器人搭建。

这是一个QQ机器人功能合集。

目前实现了如下功能:

  • [X] 文生图-openai
  • [X] 代码生成-openai
  • [X] 随机图片-request
  • [X] 单次聊天-openai-chatgpt
  • [X] 天气预报-request
  • [X] ip查询-高德
  • [ ] 文生图 其他版本
  • [ ] 多轮聊天

1. go-cqhttp环境搭建

下载go-cqhttp压缩包

https://docs.go-cqhttp.org/guide/quick_start.html#%E5%9F%BA%E7%A1%80%E6%95%99%E7%A8%8B

或者在github下载,都一样

https://github.com/Mrs4s/go-cqhttp/releases

按照官网流程进行操作即可

https://docs.go-cqhttp.org/guide/quick_start.html

我的config.yml已放在go-cqhttp文件夹中,可进行参考。

PS linux环境下踩坑记录

这里可能会存在一个情况,在配置好config.yml运行脚本之后

若配置文件没有写密码,会提示你进行扫码,扫码需要保持设备之间是局域网环境,我实操linux系统无法解决这个问题

后面解决的方法是:将Windows中生成的device.json文件复制到linux对应的位置,即可解决问题。

2. 安装nonebot2环境

先放官网地址

https://v2.nonebot.dev/docs/start/installation

安装nonebot2

pip install nb-cli
   

3. 运行bot.py

配置qqaibot/config.json

  1. openai-key可以在openai获取
  2. app_id和app_secret可以在free-api
  3. gaode_key可以在高德获取
{   "openai_key": "sk-xxxxxxxxxxxxxxxx",   "app_id": "xxxxxxxxxxxxxxxxx",   "app_secret": "xxxxxxxxxxx",   "gaode_key": "xxxxxxxxxxxxxxxxx"}
       

到这里在运行go-cqhttp的前提下,你已经可以执行

qqaibot/bot.py

完成机器人的运行

4. 如何补充自己的模块

可以参考我的写法,在下面路径新建文件夹

qqaibot/src/plugins/

每一个文件夹都是一个模块,然后完成自己的模块编写即可。

举例chatgpt DEMO 如下:

chatbot.py

import configimport openaifrom nonebot import on_commandfrom nonebot.adapters.onebot.v11 import MessageEvent, MessageSegmentfrom nonebot.rule import to_mefrom revChatGPT.Official import Chatbot# 只有艾特机器人才会触发rule = to_me()

key, _, _, _ = config.getToken()

chat = on_command("chatgpt", aliases={                  "对话", "聊天", "chat"}, priority=99, rule=rule)@chat.handle()async def gpt3chat(event: MessageEvent):

    # 获取用户发送的消息
    msg = str(event.get_message()).strip()    if len(msg.split(" ")) == 1:        await chat.send(MessageSegment.text("请输入对话提示(或检查格式)"))        await chat.send(MessageSegment.text("格式:聊天 你吃饭了吗?"))    if len(msg.split(" ")) > 1:        await chat.send(MessageSegment.text("收到,本bot正在组织语言..."))
        flag = msg.split(" ")[0]
        prompt = msg.split(" ", 1)[1]        if flag == "对话" or flag == "gpt" or flag == "聊天" or flag == "chat":            try:
                res = await getres(prompt)            except:                await chat.send(MessageSegment.text("请求超时,可能是网络问题"))                await chat.finish(MessageSegment.text("请重试"))            await chat.finish(MessageSegment.text(res))async def getres(prompt):

    openai.api_key = key

    chatbot = Chatbot(api_key=key)
    response = chatbot.ask(prompt)

    res = response["choices"][0]["text"]    return res.strip()


# https  # 解决问题  # 请输入  # 这是一个  # 才会  # 有很多  # 放在  # 都是  # 官网  # 多功能  # 自己的  # linux  # github  # html  # json  # 网络问题  # chatgpt  # ai  # qq  # windows  # git 


相关栏目: 【 Google疑问12 】 【 Facebook疑问10 】 【 网络优化91478 】 【 技术知识72672 】 【 云计算0 】 【 GEO优化84317 】 【 优选文章0 】 【 营销推广36048 】 【 网络运营41350 】 【 案例网站102563 】 【 AI智能45237


相关推荐: 豆包AI怎么优化年终总结语言_豆包AI文案润色与正式语气调整【指南】  5分钟搞定求职信:利用AI工具大幅提升求职效率的实操技巧  AI 播客脚本写作工具:提升内容创作效率的终极指南  AI网站构建指南:Duda平台免费创建教程  Depseek怎么设置总结汇报重点_Depseek重点突出与关键词标注方法【步骤】  如何用文心一言写简历 快速生成高含金量求职简历方法  怎么用AI帮你写一份有说服力的加薪申请?  AI驱动音频优化:提升音质的终极指南  Claude怎么用新功能表格生成_Claude表格生成使用【攻略】  历史影像解密:唇语专家如何还原一战士兵对话?  Gemini怎样写精准提示词_Gemini提示词编写方法【步骤】  Gemini怎样用快捷指令_Gemini快捷指令使用教程【步骤】  阿里通义app怎么用_阿里通义app使用方法详细指南【教程】  如何用ChatGPT模拟面试并优化你的求职文书?  Postman Flows:构建智能AI驱动型工作流完全指南  ChatGPT 辅助自媒体博主进行选题与大纲策划  AI邮件营销风险解析:如何规避客户触达的潜在陷阱  豆包 AI 辅助进行初级绘本创作的剧情构思  智行ai抢票怎么设置抢票截止时间_智行ai抢票截止时间设置与确认【步骤】  人脸识别的伦理困境:Massive Attack的演出引发的思考  探索心灵的音乐之旅:Kanwar Garewal的《Ishq Bulleh Nu》  谷歌 Nano Banana:免费AI图像生成的强大工具  苹果手机百度ai怎么关 iPhone百度输入法ai关闭  AI图像生成偏见:克服与优化,打造更真实的数字形象  挖掘用户数据:洞察与策略,提升播客全球影响力  Gemini手机端怎么开无障碍_Gemini无障碍设置方法【步骤】  Tenorshare PDNob:免费AI图像翻译器,即时转换图像为文本  AI猫咪视频创作指南:轻松打造百万级YouTube Shorts  雷小兔ai智能写作如何优化语句_雷小兔ai智能写作语句润色技巧【攻略】  AI内容审查:谷歌搜索结果是否受到人为干预?  豆包AI怎样生成PPT目录页_豆包AI目录自动生成与页码添加【指南】  豆包AI能否用提示词调整回答深度_豆包AI深度控制提示词技巧【方法】  SEO已死?重塑品牌线上可见性的新策略  Claude怎么用新功能代码调试_Claude代码调试使用【方法】  终极人声移除器UVR5:AI驱动的免费开源音频处理神器  GravityWrite:AI驱动的内容创作,提升排名和效率  易企秀AI排版如何生成H5页面_易企秀AI排版H5制作入口与组件添加【方法】  打破平庸:激发你的内在动力,重塑卓越人生  使用文心一言进行高质量的唐诗宋词创意改编  稿定设计AI抠图怎么修复瑕疵_稿定设计AI瑕疵修复与手动微调【步骤】  Django与React构建AI音乐推荐:数据库集成实战指南  豆包Ai官方网页版入口地址_豆包Ai官网在线使用入口  Claude怎么用新功能代码辅助_Claude代码辅助使用攻略【方法】  AI测试面试准备:提升你的面试技巧与知识储备  AI女友:时尚穿搭与美丽瞬间的完美融合  5分钟教你用AI给黑白老照片上色,让回忆变得鲜活  百度ai助手工具栏怎么关 百度ai助手状态栏隐藏  ATS优化:Euron ResumeAI打造高效求职简历  FundView贷款管理:贷款汇总生成器提升效率  零基础玩转千问AI,轻松实现月入万元的最新方法! 

 2025-07-22

了解您产品搜索量及市场趋势,制定营销计划

同行竞争及网站分析保障您的广告效果

点击免费数据支持

提交您的需求,1小时内享受我们的专业解答。

南京市珐之弘网络技术有限公司


南京市珐之弘网络技术有限公司

南京市珐之弘网络技术有限公司专注海外推广十年,是谷歌推广.Facebook广告全球合作伙伴,我们精英化的技术团队为企业提供谷歌海外推广+外贸网站建设+网站维护运营+Google SEO优化+社交营销为您提供一站式海外营销服务。

 87067657

 13565296790

 87067657@qq.com

Notice

We and selected third parties use cookies or similar technologies for technical purposes and, with your consent, for other purposes as specified in the cookie policy.
You can consent to the use of such technologies by closing this notice, by interacting with any link or button outside of this notice or by continuing to browse otherwise.