草庐IT

一键接入 ChatGPT,让你的QQ群变得热闹起来

极客飞兔 的博客 2023-03-28 原文

? 项目效果

  • ChatGPT 的出现对于人们的生活和工作都有着重要的影响,作为一个强大的自然语言处理模型,可以理解和生成自然语言,所以 ChatGPT 非常适合作为聊天机器人,回答你的任何问题
  • 在日常生活中想要更加方便的使用 ChatGPT,当然是将其设置成微信聊天机器人和QQ聊天机器人,随时随地解答你的问题,为你解决疑惑
  • 当然,不推荐您将其设置成微信聊天机器人,因为微信的检测机制,很容易导致你这个号废掉,本人已经亲自踩过坑,但是如果您有很多小号,请随意;因此这里只教大家QQ聊天机器人的搭建方式
ChatGPT 聊天机器人

? 安装环境

  • 支持在 Liunxwindow 上部署,也支持一键启动命令
  • 该项目 chatgpt-mirai-qq-botgithub 上已经进行开源,任何人都可以进行下载
  • 因为只做快速聊天体验,所以本人只部署 window 版本,想要 Liunx 版本的,可自行查看项目中的文档
  • 下载最新版稳定的 window 源码包:https://github.com/lss233/chatgpt-mirai-qq-bot/releases/download/v1.5.8/Windows-quickstart-refs.tags.v1.5.8.zip
  • 本地解压后,双击其中的 初始化.cmd 即可进行环境初始化,一路回车,等待运行成功即可
初始化环境

? 配置文件

  • 在初始化的最后,将会打开配置文件 chatgpt/config.cfg,在这个文件中进行配置
  • 配置完成后,保存关闭,初始化环境即是成功
  • 如果暂时不知道怎么配置,也可以保存关闭,后期手动打开 chatgpt/config.cfg 配置即可
  • 关于配置文件中需要配置解释的如下
  • mirai.qq: 这个 qq 必须配置,一般是你的小号,用来作为聊天机器人的 qq
  • api_key: 这个 window 版本默认即可,无需修改,如果是 liunx 则需要修改成 123456789
  • http_url: 这个 window 版本默认即可,无需修改,如果是 liunx 则需要修改成 http://mirai:8080,具体细节可以去项目中的 issues 中查看
  • ws_url:http_url 一样
  • openai:关于 openai 中的配置是最重要的,你会看到可以配置多个账号,这是为了防止被 openai 限制,所以如果你有多个 openai 的账号,可以减轻请求压力,不过一般只填其中一个就行了,因此这里我们只需要完善第一个账号信息即可
  • mode: 可以选择 browser 也可以选择 browserlessbrowser 模式是通过浏览器自动化登录openai,可以看到登录过程,browserless 是走第三方代理,无需浏览器登录,这里我选择的是browserless
  • email/password: 不用不必多说
  • session_token/access_token/api_key: 如果你填了email/password,这个就不用管,不同的登录方式罢了
  • proxy: 这个是字面意思,如果你在国内,这个就必须要填,而且地址最好是漂亮国所在区域,这个参数一般只要修改端口即可,具体看你自己 proxy 的端口
  • system.accept_group_invite: 这个是对QQ的限制,是否接受用户拉你机器人到群里,这个我一般填false,被别人用多了,也增加风险
  • system.accept_friend_request: 这个是对QQ的限制,是否接受用户加你好友,一般人喜欢私聊一些问题,这个我选择true
  • presets: 关于预设,无需修改,默认正常就是使用 chatgpt 进行回复,喜欢不同风格的回复,自己聊天的时候加载就行,这个功能还是很好玩的,不同的预设回复你的时候,语气都不一样。
# 这里是 ChatGPT for QQ 的所有配置文件
# 请注意:以 "#" 开头的文本均为注释
# 不会被程序读取
# 如果你想要使用某个设置,请确保前面没有 "#" 号

[mirai]
qq = 请修改为你机器人的QQ号

manager_qq = 请修改为机器人管理员的QQ号

# 以下设置如果不了解,可以不用理会
api_key = "1234567890"
http_url = "http://localhost:8080"
ws_url = "http://localhost:8080"

[openai]
# OpenAI 相关设置

# 第 1 个账号信息
[[openai.accounts]]
# 模式选择, browser - 浏览器登录, browserless = 无浏览器登录
# 如果你使用浏览器登录卡在 Found session token,就使用无浏览器登录  
mode = 'browserless'

# 你的 OpenAI 邮箱
email = "xxxx" 
# 你的 OpenAI 密码
password = "xxx"

# 对于通过 Google 登录或者微软登录的同学,可以使用 session_token 登录
# 此时的 password 可以直接删除 (email 必填)
# session_token 获取方法:https://github.com/lss233/chatgpt-mirai-qq-bot/issues/96
# 提示:如果使用此模式,请删除下方 session_token 前面的 "#" 号,并给上方的 password 前面加上 "#"
# session_token = "一串 ey 开头的东西"

# 你的 OpenAI access_token,登录后访问`https://chat.openai.com/api/auth/session`获取
# 提示:如果使用此模式,请删除下方 access_token 前面的 "#" 号,并给上方的 email、password 前面加上 "#"
# access_token = "一串 ey 开头的东西"

# 如果你想使用的是 API 版的 ChatGPT,请使用
# api_key = "sk-xxxx"

# 如果你在国内,需要配置代理
# 提示:如果使用此功能,请删除下方 proxy 前面的 "#" 号
# proxy="http://127.0.0.1:1080"

# 是否为 ChatGPT Plus 用户(是的话设置为 true)
paid = false

# 是否开启标题自动重命名
# 若为空或保持注释即不开启
# 支持的变量: {session_id} - 此对话对应的上下文 ID,若产生在好友中,则为好友 QQ 号,若产生在群聊中,则为群号
# 具体见 README 中的介绍
# title_pattern="qq-{session_id}"

# 是否自动删除旧的对话,开启后用户发送重置对话时会自动删除以前的会话内容
# auto_remove_old_conversations = true

# # 第 2 个账号信息,access_token 登录示例
# [[openai.accounts]]
# mode = 'browserless'
# access_token = "xxxxx"
# # proxy="http://127.0.0.1:1080"
# paid = false

# # 第 3 个账号信息, api_key 登录示例
# [[openai.accounts]]
# api_key = "sk-xxxx"

# 如果你想增加更多账号,复制的文本继续添加即可

# [system]
# 是否自动同意进群邀请
accept_group_invite = false
# 是否自动同意好友请求
accept_friend_request = false

[presets]
# 切换预设的命令: 加载预设 猫娘
command = "加载预设 (\w+)"
loaded_successful = "预设加载成功!"
scan_dir = "./presets/"

[presets.keywords]
# 预设关键词 <-> 实际文件
"正常" = "presets/default.txt"
"猫娘" = "presets/catgirl.txt"
# "default" = "presets/default.txt" # 默认预设,开启后所有的会话都会先读这个预设,谨慎使用!

? 启动Mirai

  • 在初始化完环境后,会多出两个可执行文件,先点击 Mirai.cmd
  • 这个脚本主要用来登录你的 QQ 机器人账号的,把你的上面配置里面填写的 QQ 设置成机器人
  • 登录机器人命令:login <机器人QQ账号> <机器人QQ密码> <登录协议>
  • 回车即可登录成功,也就是说QQ机器人登录成功了,当然这部分也有可能是最难的,欢迎私信
QQ 机器人登录

? 启动ChatGPT

  • 最后点击启动 ChatGPT.cmd ,这个可执行文件,就是用来登录 openai
  • 登录成功后,说明 QQ 机器人已经连接上了 ChatGPT,此时即可跟机器人畅所欲言的聊天了
登录 ChatGPT

有关一键接入 ChatGPT,让你的QQ群变得热闹起来的更多相关文章

  1. 亚特兰蒂斯的回声(中文版): chatGPT 的杰作 - 2

    英文版英文链接关注公众号在“亚特兰蒂斯的回声”中踏上一段难忘的冒险之旅,深入未知的海洋深处。足智多谋的考古学家AriaSeaborne偶然发现了一件古代神器,揭示了一张通往失落之城亚特兰蒂斯的隐藏地图。在她神秘的导师内森·兰登教授的指导和勇敢的冒险家亚历克斯·默瑟的帮助下,阿丽亚开始了一段危险的旅程,以揭开这座传说中城市的真相。他们的冒险之旅带领他们穿越险恶的大海、神秘的岛屿和充满陷阱和谜语的致命迷宫。随着Aria潜在的魔法能力的觉醒,她被睿智勇敢的QueenNeria的幻象所指引,她让她为即将到来的挑战做好准备。三人组揭开亚特兰蒂斯令人惊叹的隐藏文明,并了解到邪恶的巫师马拉卡勋爵试图利用其古

  2. unity---接入Admob - 2

    目录1.AdmobSDK下载地址2.将下载好的unityPackagesdk导入到unity里​编辑 3.解析依赖到项目中

  3. 网站日志分析软件--让网站日志分析工作变得更简单 - 2

    网站的日志分析,是seo优化不可忽视的一门功课,但网站越大,每天产生的日志就越大,大站一天都可以产生几个G的网站日志,如果光靠肉眼去分析,那可能看到猴年马月都看不完,因此借助网站日志分析工具去分析网站日志,那将会使网站日志分析工作变得更简单。下面推荐两款网站日志分析软件。第一款:逆火网站日志分析器逆火网站日志分析器是一款功能全面的网站服务器日志分析软件。通过分析网站的日志文件,不仅能够精准的知道网站的访问量、网站的访问来源,网站的广告点击,访客的地区统计,搜索引擎关键字查询等,还能够一次性分析多个网站的日志文件,让你轻松管理网站。逆火网站日志分析器下载地址:https://pan.baidu.

  4. 智能客服 | 浅谈人工智能聊天机器人ChatGPT - 2

    2022年底,OpenAI的预训练模型ChatGPT给人工智能领域的爱好者和研究人员留下了深刻的印象和启发,他展现的惊人能力将人工智能的研究和应用热度推向高潮,网上也充斥着和ChatGPT的各种聊天,他可以作诗、写小说、写代码、讨论疫情问题等。下面就是一些他的神回复:人命关天的坑: 写歌,留给词作者的机会不多了。。。 回答人类怎么样面对人工智能: 什么是ChatGPT?借用网上的一段介绍,ChatGPT是由人工智能研究实验室OpenAI在2022年11月30日发布的全新聊天机器人模型,一款人工智能技术驱动的自然语言处理工具。它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动

  5. 【ChatGPT】ChatGPT 的 N 种用法 - 2

    目录ChatGPT简介技术原理应用未来发展ChatGPT的10 种用法ChatGPT简介ChatGPT是一种基于深度学习的大型语言模型,由OpenAI公司开发。技术原理GPT是GenerativePre-trainedTransformer的缩写,意为生成式预训练变压器。它的技术原理是使用了一个基于注意力机制的变压器(Trans

  6. ruby-on-rails - ruby:将数组的每个元素用附加引号引起来 - 2

    我有以下字符串:a="001;Barbara;122"我拆分成字符串数组:names=a.split(";")names=["001","Barbara","122"]我应该怎么做才能将每​​个元素另外用''引号括起来?结果应该是names=["'001'","'Barbara'","'122'"]我知道这听起来很奇怪,但我需要它在ruby​​onrails中进行数据库查询。出于某种原因,如果我的名字在“”引号中,我将无法访问数据库记录。我在数据库中确实有mk1==0006但rails不想以某种方式访问​​它。但是,它确实访问1222。sql="SELECTmk1,mk2,pk1,pk

  7. ruby-on-rails - 为什么我的 Rails 服务器渲染时间不加起来? - 2

    我的Rails应用程序在暂存服务器上运行速度非常慢,这让我遇到了一些麻烦。最令人困惑的是每个请求的日志输出的最后一行。看起来View和数据库时间甚至不接近整个渲染时间。在一页上,完成时间大约1000毫秒,View大约450毫秒,数据库大约20毫秒。渲染页面所需的其余时间从何而来? 最佳答案 当事情变得神秘时......分析器是你的friend!分析器将统计哪些方法被调用最多以及每个方法调用花费多长时间。ruby-prof当我在RubyLand时,它会帮我解决这个问题,它会生成一个漂亮的调用图(如果需要,可以是html格式),这使得查

  8. ruby - 为什么 split (' ' ) 试图变得(太)聪明? - 2

    我刚刚发现String#split有以下奇怪的行为:"a\tbc\nd".split=>["a","b","c","d"]"a\tbc\nd".split('')=>["a","b","c","d"]"a\tbc\nd".split(//)=>["a\tb","c\nd"]Thesource(来自2.0.0的string.c)超过200行,包含这样一段话:/*L5909*/elseif(rb_enc_asciicompat(enc2)==1){if(RSTRING_LEN(spat)==1&&RSTRING_PTR(spat)[0]==''){split_type=awk;}}后来,在

  9. 「想体验ChatGPT中文聊天?」那快进来,你用不上算我输 - 2

    ♥️作者:白日参商🤵‍♂️个人主页:白日参商主页♥️坚持分析平时学习到的项目以及学习到的软件开发知识,和大家一起努力呀!!!🎈🎈加油!加油!加油!加油🎈欢迎评论💬点赞👍🏻收藏📂加关注+!「想体验ChatGPT中文聊天?」那快进来,你用不上算我输项目场景:项目条件一、那就开始吧1、安装ChatGPT-Desktop2、OpenAPI设置二、使用实例恭喜你!!!配置成功了!!!API和URL都是博主免费提供给大家的!!!恭喜你!!!配置成功了!!!API和URL都是博主免费提供给大家的!!!🎈🎈加油!加油!加油!加油🎈欢迎评论💬点赞👍🏻收藏📂加关注+!项目场景:近几个月可以说ChatGPT是火得一

  10. 好的代码风格,如同书法,让你的代码更加漂亮 - 2

    很多初学者的代码其实都不够“漂亮”,那是因为没有养成好的编码习惯。本篇博客以C语言为例,总结一些好习惯。其实,很多习惯都是肌肉记忆,举个例子:请你写一个程序,输入2个整数并输出它们的和。有些朋友可能写出来是这个样子。#includeintmain(){ inta=0; intb=0; intsum=0; scanf("%d%d",&a,&b); sum=a+b; printf("%d\n",sum); return0;}我写这段代码,是在模仿有些朋友在初学的时候容易写成的样子。更有甚者,写成这个样子:#includeintmain(){inta=0;intb=0;intsum=0;scanf(

随机推荐