perf: 优化部署教程

This commit is contained in:
RockChinQ
2024-06-29 16:47:23 +08:00
parent 4fe45d164c
commit 2b8911ad25
12 changed files with 163 additions and 130 deletions
+8 -8
View File
@@ -46,25 +46,25 @@ export default sidebar({
prefix: "aiocqhttp/",
link: "aiocqhttp/",
children: [
{
text: "Shamrock",
icon: "mobile",
link: "shamrock",
},
{
text: "Lagrange",
icon: "support",
link: "lagrange",
},
{
text: "LLOneBot",
icon: "more",
link: "llonebot",
},
{
text: "NapCat",
icon: "software",
link: "napcat",
},
{
text: "LLOneBot",
icon: "more",
link: "llonebot",
text: "Shamrock",
icon: "mobile",
link: "shamrock",
},
],
},
+9 -8
View File
@@ -57,21 +57,22 @@ highlights:
# bgImage: https://theme-hope-assets.vuejs.press/bg/5-light.svg
# bgImageDark: https://theme-hope-assets.vuejs.press/bg/5-dark.svg
features:
- title: 代码贡献者
icon: github
details: QChatGPT 项目的开发者
link: https://github.com/RockChinQ/QChatGPT/graphs/contributors
- title: 源码仓库
icon: home
icon: github
details: QChatGPT 的仓库页
link: https://github.com/RockChinQ/QChatGPT
- title: 文档贡献者
icon: group
details: 此文档贡献者
- title: 文档仓库
icon: file
details: 此文档的仓库页
link: https://github.com/the-lazy-me/QChatGPT-Wiki/graphs/contributors
- title: 插件列表
icon: plugin
details: QChatGPT 插件列表
link: https://github.com/stars/RockChinQ/lists/qchatgpt-%E6%8F%92%E4%BB%B6
copyright: false
footer: <a href="https://github.com/RockChinQ/QChatGPT" target="_blank">QChatGPT</a> 项目的Wiki页&nbsp;&nbsp;|&nbsp;&nbsp;MIT 协议, 版权所有 © 2023-present Lazy <br/> <br/> <a href="http://beian.miit.gov.cn/" target="_blank" rel="nofollow noopener">津 ICP 备 2023007711 号</a>&nbsp;&nbsp;<a href="http://www.beian.gov.cn/portal/registerSystemInfo?recordcode=12011102001610" rel="nofollow noopener" class="beian-police" target="_blank">津公网安备12011102001610号</a>
---
+4 -2
View File
@@ -12,7 +12,7 @@ index: false
## 部署教程
以下三步可以让你快速上手使用QChatGPT
请按照以下步骤部署 QChatGPT 项目:
- 第一步: [部署QChatGPT](qchatgpt/)
- 第二步: [部署消息平台](platforms/)
@@ -24,13 +24,15 @@ index: false
### 社区群
> 遇到问题请先认真阅读文档,如无法解决再加群提问
Lazy的交流群一:891448839(已满)
Lazy的交流群二:738382634(已满)
Lazy的交流群三:248432104(已满)
Lazy的交流群四:619154800
Lazy的交流群四:619154800 ([链接](https://qm.qq.com/q/1K9GjQuza))
### 官方群
+88 -60
View File
@@ -19,6 +19,62 @@ date: 2024-02-18
修改此配置文件以指定需要连接的消息平台,只需要关注`platform-adapters`字段。
目前支持 `mirai`、`go-cqhttp`、`aiocqhttp`、`qq-botpy` 四种消息平台适配器,也可以同时启用多个同种类或不同种类的平台适配器
### aiocqhttp 适配器
如果你刚刚已经在 QChatGPT 的配置文件中启用了 aiocqhttp 适配器,那么你可以跳过这一步。
用于接入 Lagrange 等兼容 OneBot 协议的机器人框架(仅支持反向ws)。
```json
{
"adapter": "aiocqhttp",
"enable": false,
"host": "127.0.0.1",
"port": 8080,
"access-token": ""
},
```
`"adapter": "aiocqhttp"`,无需改动。
`enable`:是否启用,配置完成后请将其设为`true`
`host`:监听的 IP 地址,使用 aiocqhttp 时,QChatGPT 作为服务端被动等待框架连接,请在 Shamrock 等框架中设置`被动 ws 地址`或者`反向 ws 地址`(具体视框架而定)为 QChatGPT 监听的地址,且路径为`/ws`,例如:`ws://127.0.0.1:8080/ws`。
`port`:设置监听的端口,默认8080,需在 Shamrock 等框架中设置为与此处一致的端口
`access-token`:设置访问密钥,与 Shamrock 等框架中设置的保持一致
### qq-botpy 适配器
用于接入 QQ 官方机器人 API。
```json
{
"adapter": "qq-botpy",
"enable": false,
"appid": "",
"secret": "",
"intents": [
"public_guild_messages",
"direct_message"
]
}
```
`"adapter": "qq-botpy"`,无需动,表明是接入`QQ官方机器人`的配置
`enable`:是否启用,配置完成后请将其设为`true`
`appid`:申请到的QQ官方机器人的appid
`secret`:申请到的QQ官方机器人的secret
`intents`:控制监听的事件类型,需要填写才能接收到对应消息,目前支持的事件类型有:
- `public_guild_messages` QQ 频道消息
- `direct_message` QQ 频道私聊消息
- `public_messages` Q群消息(需要权限,具体请查看[QQ官方机器人API文档](https://q.qq.com/))
### YiriMirai 适配器
用于接入 Mirai。
@@ -73,72 +129,44 @@ date: 2024-02-18
`token`:验证密钥,,与`go-cqhttp`的`config.yml`里面的保持一致
### aiocqhttp 适配器
用于接入 Shamrock 等兼容 OneBot 协议的机器人框架(仅支持反向ws)。
```json
{
"adapter": "aiocqhttp",
"enable": false,
"host": "127.0.0.1",
"port": 8080,
"access-token": ""
},
```
`"adapter": "aiocqhttp"`,无需动,表示是接入`shamrock等onebot协议实现的机器人框架`的配置
`enable`:是否启用,配置完成后请将其设为`true`
`host`:监听的 IP 地址,使用 aiocqhttp 时,QChatGPT 作为服务端被动等待框架连接,请在 Shamrock 等框架中设置`被动 ws 地址`或者`反向 ws 地址`(具体视框架而定)为 QChatGPT 监听的地址,且路径为`/ws`,例如:`ws://127.0.0.1:8080/ws`。
`port`:设置监听的端口,默认8080,需在 Shamrock 等框架中设置为与此处一致的端口
`access-token`:设置访问密钥,与 Shamrock 等框架中设置的保持一致
### qq-botpy 适配器
用于接入 QQ 官方机器人 API。
```json
{
"adapter": "qq-botpy",
"enable": false,
"appid": "",
"secret": "",
"intents": [
"public_guild_messages",
"direct_message"
]
}
```
`"adapter": "qq-botpy"`,无需动,表明是接入`QQ官方机器人`的配置
`enable`:是否启用,配置完成后请将其设为`true`
`appid`:申请到的QQ官方机器人的appid
`secret`:申请到的QQ官方机器人的secret
`intents`:控制监听的事件类型,需要填写才能接收到对应消息,目前支持的事件类型有:
- `public_guild_messages` QQ 频道消息
- `direct_message` QQ 频道私聊消息
- `public_messages` Q群消息(需要权限,具体请查看[QQ官方机器人API文档](https://q.qq.com/))
## provider.json
修改此配置文件以设置所连接的 AI 提供商的相关信息,仅讲解必要的配置项,更多的配置项详解请查看[配置详解](../config/)。
修改此配置文件以设置所连接的 AI 提供商的相关信息,目前支持 `openai(GPT)`, `anthropic(claude)`, `moonshot(月之暗面)` 三种接口及对应模型。
需要修改 `keys`, `requester`, `model` 字段,目前支持 `openai(GPT)`, `anthropic(claude)`, `moonshot(月之暗面)` 三种接口及对应模型。
> 如果你没有OpenAI API Key,你可以[在此获取](https://thelazy.cn/2024/02/08/%E5%A6%82%E4%BD%95%E8%8E%B7%E5%8F%96%E5%A5%BD%E7%94%A8%E7%A8%B3%E5%AE%9A%E7%9A%84OpenAI%20API%20Key/)
例如需要使用 OpenAI 的模型,则 将 OpenAI 的 api key 填写到 `keys.openai` 下,支持多个key。并修改 `model` 为需要使用的模型名称。若您使用了中转站,或者需要使用反向代理,则设置 `requester.openai-chat-completions` 下的 `base-url` 配置。
以下仅讲解启用 OpenAI 接口的方式,具体设置方法请查看 [配置详解模块的`provider.json` 页](../config/provider)。
如果你没有OpenAI API Key,你可以[在此获取](https://thelazy.cn/2024/02/08/%E5%A6%82%E4%BD%95%E8%8E%B7%E5%8F%96%E5%A5%BD%E7%94%A8%E7%A8%B3%E5%AE%9A%E7%9A%84OpenAI%20API%20Key/)
编辑 `data/provider.json`,在`keys`->`openai`中添加你的 OpenAI API Key,例如:
具体设置方法请查看 配置详解模块的`provider.json` 页。
```json
"keys": {
"openai": [
"sk-AAAAAAAAAAAABBBBBBBBBBBBCCCCCCCCCCCCCDDDDDDDDD"
],
"anthropic": [],
"moonshot": [],
"deepseek": []
},
```
如果你使用的是中转站,或者其他兼容 OpenAI 格式的平台,请将`requester`->`openai-chat-completions`->`base-url`设置为你的中转站地址。例如:
地址后记得加`/v1`。
```json
"openai-chat-completions": {
"base-url": "https://api.example.com/v1",
"args": {},
"timeout": 120
},
```
最后,将`model`改为你想要使用的模型,例如:
```json
"model": "gpt-4o",
```
::: tip
+10 -6
View File
@@ -14,15 +14,19 @@ index: false
[[toc]]
:::
## 可选的平台
## 可选的平台适配器
QChatGPT 需要一个中间程序,处理 QQ 等 IM 的协议(大部分是逆向工程)。
以下平台任选,也可以配置多个,QChatGPT支持同时接入一个或多个平台:
- aiocqhttp(QQ):[aiocqhttp适配器教程](aiocqhttp/)(支持[Shamrock](aiocqhttp/shamrock.md)、[Lagrange](aiocqhttp/lagrange.md)、[LiteLoaderQQNT](aiocqhttp/llonebot.md)、[NapCat](aiocqhttp/napcat.md))
- QQ官方机器人(QQ频道):[QQ 官方 API 部署教程](official.md)
- ~~Mirai(QQ):[Mirai部署教程](mirai.md)~~(被严重针对,大概率登不上,也不稳定)
- ~~go-cqhttp(QQ):[go-cqhttp部署教程](gocq.md)~~([官方停止维护](https://github.com/Mrs4s/go-cqhttp?tab=readme-ov-file#%E9%87%8D%E8%A6%81%E4%BF%A1%E6%81%AF))
### 推荐
- aiocqhttp(QQ):[aiocqhttp适配器教程](aiocqhttp/)
- QQ官方API(QQ群、QQ频道):[QQ 官方 API 部署教程](official.md)
### 不推荐
![QChatGPT platform.json](https://cos.thelazy.cn/pictures/202405292250017.jpeg)
以前流行的框架,现在长期不再维护或被腾讯严重围追堵截,不推荐使用:
- Mirai(QQ):[Mirai部署教程](mirai.md) (使用旧版协议,风控严重)
- go-cqhttp(QQ):[go-cqhttp部署教程](gocq.md)(使用旧版协议,[官方停止维护](https://github.com/Mrs4s/go-cqhttp?tab=readme-ov-file#%E9%87%8D%E8%A6%81%E4%BF%A1%E6%81%AF))
+13 -5
View File
@@ -12,17 +12,25 @@ date: 2024-05-05
## OneBot 11 协议
**OneBot:统一的聊天机器人应用接口标准**
OneBot 是用于接入多种消息平台的标准化协议,详细介绍:[https://onebot.dev/](https://onebot.dev/)
onebot介绍:[https://onebot.dev/](https://onebot.dev/)
以下消息框架可以通过 OneBot 11 协议接入,需选择使用`aiocqhttp`作为适配器,修改`data/platform.json`配置文件,在`platform-adapters`字段中添加以下内容(如果已经有aiocqhttp的适配器,可以直接将其enable改为true):
以下消息框架可以通过 OneBot 11 协议接入,需选择使用`aiocqhttp`作为适配器,修改data下的platform.json文件
```json
{
"adapter": "aiocqhttp",
"enable": true,
"host": "0.0.0.0",
"port": 8080,
"access-token": ""
}
```
![data/platform.json](https://cos.thelazy.cn/pictures/202405292250017.jpeg)
当前可用的OneBot 11标准消息平台,你可以选择下方任意
- [shamrock的教程](shamrock.md)
- [Lagrange.OneBot的教程](lagrange.md)
- [LiteLoaderQQNT的教程](llonebot.md)
- [NapCat的教程](napcat.md)
- [NapCat的教程](napcat.md)
- [shamrock的教程](shamrock.md)
@@ -5,7 +5,7 @@ head:
content: Lagrange的部署教程
title: 部署消息平台Lagrange的教程
icon: support
order: 4
order: 1
author: RockChinQ,ikun0014
date: 2024-05-05
---
@@ -20,7 +20,11 @@ Lagrange 是一个 QQNT 协议逆向工程框架,比 Shamrock 或 Mirai 更加
- Linux Ubuntu 22.04,Debian 12应该都可以
- Windows 10,11,Server2019及以上
## 步骤(Windows)
## 部署步骤
以下仅提供 Windows 上的大致步骤,详细步骤或其他平台请参考 [Lagrange官方文档](https://lagrangedev.github.io/Lagrange.Doc/Lagrange.OneBot/)
### 环境配置
@@ -43,13 +47,21 @@ Lagrange 是一个 QQNT 协议逆向工程框架,比 Shamrock 或 Mirai 更加
### 尾声
解压你所下载的zip,打开到有Lagrange.OneBot.exe的目录,在此目录下打开cmd命令提示符,输入
```bash
.\Lagrange.OneBot
```
此时如果你的环境已配置好,应该会出现填写配置文件后按任意键进入Qrcode登录,否则按输出的文字重新安装.NET 8
配置文件填写示例:
运行一次,如果输出了一个二维码,即可直接用机器人号扫码登录(若二维码显示不清楚,可以到lagrange的data目录下寻找图片文件)。
![data/platform.json](https://cos.thelazy.cn/pictures/202405292250017.jpeg)
若无法登录,请检查是否正常填写了lagrange配置文件appsettings.json中的签名地址 SignServerUrl ,签名地址请到lagrange文档中寻找。
## 修改配置
需要配置 Lagrange 以让其连接上 QChatGPT,请编辑 Lagrange 的配置文件 appsettings.json,确保 Implementations 中的连接配置符合下图内容:
![Lagrange.OneBot的配置文件](https://cos.thelazy.cn/pictures/202405030020679.png)
其中 Type 必须为 `ReverseWebSocket`;
Host 为 QChatGPT 运行的主机 IP,若在同一主机上,可以写 `127.0.0.1`;
Suffix 必须为 `/ws`
@@ -5,7 +5,7 @@ head:
content: 其他消息平台
title: 部署消息平台LiteLoaderQQNT的教程
icon: more
order: 6
order: 2
author: RockChinQ
date: 2024-03-02
---
@@ -17,7 +17,3 @@ date: 2024-03-02
安装LiteLoaderQQNT的教程:https://llonebot.github.io/zh-CN/guide/getting-started
![image-20240515185909108](https://cos.thelazy.cn/pictures/202405151859206.png)
QChatGPT platform.json
![img](https://cos.thelazy.cn/pictures/202405292250017.jpeg)
@@ -5,14 +5,14 @@ head:
content: NapCat的部署教程
title: 部署消息平台NapCat的教程
icon: software
order: 5
order: 3
author: Lazy
date: 2024-05-13
---
## NapCat介绍
Lagrange 是一个 QQNT 协议逆向工程框架,比 Shamrock 或 Mirai 更加轻便,而且不需要图形环境,在Linux表现优异,与现有Hook框架有着本质区别,在性能与内存占用方面远远优于基于Hook的框架,现在目前也较为稳定。通过 OneBot 11 协议接入,需选择使用`aiocqhttp`作为适配器,填写配置时可参考 Shamrock 的方式。
NapCat 是一个 QQNT 协议逆向工程框架。
可选平台:
@@ -22,19 +22,15 @@ Lagrange 是一个 QQNT 协议逆向工程框架,比 Shamrock 或 Mirai 更加
## NapCat安装教程
https://napneko.github.io/zh-CN/guide/getting-started
按照 [NapCat 官方文档安装](https://napneko.github.io/zh-CN/guide/getting-started)
运行后扫码登录
## NapCat配置教程
通过 OneBot 11 协议接入,需选择使用`aiocqhttp`作为适配器,填写配置时可参考 Shamrock 和 Lagrange 的方式。
![data/platform.json](https://cos.thelazy.cn/pictures/202405292250017.jpeg)
登录后,可以在config文件夹中,找到并修改文件(数字对应机器人QQ号):![image-20240514231529613](https://cos.thelazy.cn/pictures/image-20240514231529613.png)
参考下图红框修改内容:
参考下图红框修改内容,确保地址中 IP地址 是 QChatGPT 运行的主机的地址(若在同一网络内运行则为 127.0.0.1),后缀须为`/ws`:
![image-20240514231932514](https://cos.thelazy.cn/pictures/202405142319592.png)
@@ -5,7 +5,7 @@ head:
content: OpenShamrock的部署教程
title: 部署消息平台shamrock的教程
icon: mobile
order: 3
order: 4
author: ikun
date: 2023-12-21
---
@@ -14,7 +14,7 @@ date: 2023-12-21
::: warning
OpenShamrock已归档
OpenShamrock已归档,停止维护。
:::
+2 -2
View File
@@ -10,7 +10,7 @@ author: Lazy
date: 2023-02-17
---
:::warning
请使用Python 3.10.x及以上版本,没有Python的需自行安装,参考[此教程](./more-details/python.md)
请使用Python 3.10.1(不包含3.10.0)及以上版本,没有Python的需自行安装,参考[此教程](./more-details/python.md)
:::
:::info 目录
@@ -72,7 +72,7 @@ python3 main.py
- data/scenario/default.json
```
接下来请查看部署消息平台页。
接下来请查看[部署消息平台](../platforms/)页。
当你部署消息平台和填写配置文件后,再次运行
```bash
+5 -19
View File
@@ -14,16 +14,11 @@ category:
### 文字对话
- OpenAI API:GPT-3.5 / GPT-4
- [逆向工程插件](https://github.com/RockChinQ/revLibs):ChatGPT / New Bing / Claude / Google Bard / Hugging Chat / gpt4free
- [OneAPI](https://github.com/songquanpeng/one-api)接口聚合平台:Google Gemini Pro / Azure / Anthropic Claude / 智谱 ChatGLM / 百度文心一言 / 讯飞星火认知 / 阿里通义千问 / 360 智脑等官方接口
- OpenAI API:GPT-3.5 / GPT-4 系列
- Moonshot / Deepseek 等支持 OpenAI API 的大模型提供商接口
- Anthropic:Claude 系列
- [OneAPI](https://github.com/songquanpeng/one-api)接口聚合平台:Google Gemini Pro / Azure / Anthropic Claude / 智谱 ChatGLM / 百度文心一言 / 讯飞星火认知 / 阿里通义千问 / 360 智脑等市面上所有 LLM 官方接口
- [free-one-api](https://github.com/RockChinQ/free-one-api)逆向工程库聚合平台:ChatGPT / Claude / Google Bard / gpt4free / 通义千问
- [Poe](https://poe.com), 破解免费使用Poe上多个平台的模型, 由[oliverkirk-sudo/ChatPoeBot](https://github.com/oliverkirk-sudo/ChatPoeBot)接入(由于 Poe 上可用的大部分模型现已通过[revLibs插件](https://github.com/RockChinQ/revLubs)或其他方式接入,此插件现已停止维护)。
### 语音生成
- [RuiShengVoice](https://github.com/the-lazy-me/RuiShengVoice), 通过调用睿声的API,将输出内容转化为音频
- Plachta/VITS-Umamusume-voice-synthesizer, 由[插件](https://github.com/oliverkirk-sudo/chat_voice)接入
## 功能点列举
@@ -103,17 +98,12 @@ category:
## 限制
- ❗OpenAI接口是收费的,每个OpenAI账户有18美元免费额度,收费标准参照 https://openai.com/api/pricing/
- ❗官方关于模型生成内容的警告:
- ❗OpenAI 官方关于模型生成内容的警告:
- May occasionally generate incorrect information(可能会生成不正确的信息)
- May occasionally produce harmful instructions or biased content(可能会产生有害说明或有偏见的内容)
- Limited knowledge of world and events after 2021(对2021年后的世界和事件的了解有限)
- ❗模型无思维能力,仅针对传入的上下文根据数据集生成内容,请勿过于信任其输出
- ❗模型无网络访问能力及其他与外界交互的能力,如询问其实时性的内容,获得的回复基本都是错误的
- ❗仅支持文字对话,其他内容无法识别
- ❗模型不了解其运行平台及其使用的模型版本,任何针对其实现原理的问题答案均视为无效,请以项目文档为准
- ❗仅可进行一句话回复一句话的对话,其他形式无效
- ~~当然你也可以让他写一篇关于“人类有多么愚蠢”的论文并在一个小时后发送到你邮箱,接着你像个傻子一样盯着邮箱等待一个小时,并用自己的实际行动展示这篇论文~~
以上是关于此程序的限制的最高优先级描述,其他方式(如询问机器人相关信息)获得的描述均应被视为无效
由于模型生成的内容导致的一切损失,本项目概不负责
@@ -124,10 +114,6 @@ category:
### 基础对话
程序将一个人/群视为一个对象,每个对象的会话独立保存。
`会话`是程序中的一个自设概念,当机器人与当前对象无会话时,会自动创建新会话,新会话由预设信息(若有)开头。
每个会话最后一次对话一段时间(见上述功能点中的`会话管理`)后会被结束并存进数据库,之后的对话将开启新的会话。
#### 私聊使用
1. 添加机器人QQ为好友