From 90cd9c0ae6227514403bf9e0bda90d727609f025 Mon Sep 17 00:00:00 2001 From: Junyan Qin Date: Sun, 11 May 2025 12:23:40 +0800 Subject: [PATCH] chore: basic doc arch for 4.0 --- docs/.vitepress/config.mts | 389 ++++-------------- docs/assets/image/deploy/bots/arch.png | Bin 0 -> 75228 bytes docs/assets/image/deploy/models/arch.png | Bin 0 -> 69935 bytes docs/assets/image/deploy/pipelines/arch.png | Bin 0 -> 73644 bytes docs/zh/config/function/command.md | 42 -- docs/zh/config/function/pipeline.md | 205 --------- docs/zh/config/function/platform.md | 145 ------- docs/zh/config/function/provider.md | 382 ----------------- docs/zh/config/function/system.md | 133 ------ docs/zh/config/metadata/adapter-qq-botpy.md | 21 - docs/zh/config/metadata/llm-models.md | 53 --- docs/zh/config/metadata/sensitive-words.md | 3 - docs/zh/deploy/langbot/docker.md | 16 +- docs/zh/deploy/models/readme.md | 5 + docs/zh/deploy/pipelines/readme.md | 9 + docs/zh/deploy/platforms/readme.md | 6 +- docs/zh/deploy/quick-config/config.md | 331 --------------- docs/zh/webui/intro.md | 21 - docs/zh/webui/settings.md | 31 -- docs/zh/webui/system.md | 17 - .../{deploy => workshop}/network-details.md | 0 21 files changed, 107 insertions(+), 1702 deletions(-) create mode 100644 docs/assets/image/deploy/bots/arch.png create mode 100644 docs/assets/image/deploy/models/arch.png create mode 100644 docs/assets/image/deploy/pipelines/arch.png delete mode 100644 docs/zh/config/function/command.md delete mode 100644 docs/zh/config/function/pipeline.md delete mode 100644 docs/zh/config/function/platform.md delete mode 100644 docs/zh/config/function/provider.md delete mode 100644 docs/zh/config/function/system.md delete mode 100644 docs/zh/config/metadata/adapter-qq-botpy.md delete mode 100644 docs/zh/config/metadata/llm-models.md delete mode 100644 docs/zh/config/metadata/sensitive-words.md create mode 100644 docs/zh/deploy/models/readme.md create mode 100644 docs/zh/deploy/pipelines/readme.md delete mode 100644 docs/zh/deploy/quick-config/config.md delete mode 100644 docs/zh/webui/intro.md delete mode 100644 docs/zh/webui/settings.md delete mode 100644 docs/zh/webui/system.md rename docs/zh/{deploy => workshop}/network-details.md (100%) diff --git a/docs/.vitepress/config.mts b/docs/.vitepress/config.mts index 7924a515f..940831e45 100644 --- a/docs/.vitepress/config.mts +++ b/docs/.vitepress/config.mts @@ -5,227 +5,6 @@ export default defineConfig({ themeConfig: { logo: "/langbot-logo-0.5x.png", - nav: [ - { text: "主页", link: "https://langbot.app" }, - { text: "路线图", link: "https://langbot.featurebase.app/roadmap" }, - ], - - sidebar: [ - { - text: "概述", - items: [ - { text: "新手指引(必看)", link: "/insight/guide" }, - { text: "项目介绍", link: "/insight/intro" }, - { text: "社区资源", link: "/insight/community" }, - ], - }, - { - text: "部署", - items: [ - { - text: "部署 LangBot", - collapsed: true, - items: [ - { text: "Docker部署", link: "/deploy/langbot/docker" }, - { text: "宝塔面板部署", link: "/deploy/langbot/one-click/bt" }, - { text: "手动部署", link: "/deploy/langbot/manual" }, - ], - }, - { - text: "连接消息平台", - collapsed: true, - items: [ - { - text: "消息平台说明", - link: "/deploy/platforms/readme", - }, - { - text: "QQ 个人号", - collapsed: true, - items: [ - { - text: "NapCat", - link: "/deploy/platforms/qq/aiocqhttp/napcat", - }, - { - text: "Lagrange", - link: "/deploy/platforms/qq/aiocqhttp/lagrange", - }, - { - text: "llonebot", - link: "/deploy/platforms/qq/aiocqhttp/llonebot", - }, - { - text: "go-cqhttp", - link: "/deploy/platforms/qq/gocq", - }, - ], - }, - { - text: "QQ 官方机器人", - // link: "/deploy/platforms/qq/official", - collapsed: true, - items: [ - { - text: "Webhook 方式", - link: "/deploy/platforms/qq/official_webhook", - }, - { - text: "WebSocket 方式", - link: "/deploy/platforms/qq/official", - }, - ], - }, - { text: "个人微信", - collapsed: true, - items: [ - { - text: "Gewechat", - link: "/deploy/platforms/wechat/gewechat", - }, - ], - }, - { text: "企业微信", - collapsed: true, - items: [ - { - text: "内部应用", - link: "/deploy/platforms/wecom/wecom", - }, - { - text: "对外客服", - link: "/deploy/platforms/wecom/wecomcs", - }, - ], - }, - { text:"微信公众号",link:"/deploy/platforms/wxoa.md"}, - { text: "飞书", link: "/deploy/platforms/lark" }, - { text:"钉钉",link:"/deploy/platforms/dingtalk.md"}, - { text: "Discord", link: "/deploy/platforms/discord" }, - { text: "Telegram", link: "/deploy/platforms/telegram" }, - { text:"Slack", link: "/deploy/platforms/slack"}, - ], - }, - { text: "填写配置信息", link: "/deploy/quick-config/config" }, - { - text: "网络配置详解", - link: "/deploy/network-details", - }, - { - text: "更新 LangBot", - link: "/deploy/update", - }, - ], - }, - { - text: "使用", - items: [ - { text: "命令用法", link: "/usage/command" }, - { text: "常见问题", link: "/usage/faq" }, - ], - }, - { - text: "配置", - items: [ - { - text: "功能配置", - collapsed: true, - items: [ - { text: "platform.json", link: "/config/function/platform" }, - { text: "pipeline.json", link: "/config/function/pipeline" }, - { text: "provider.json", link: "/config/function/provider" }, - { text: "command.json", link: "/config/function/command" }, - { text: "system.json", link: "/config/function/system" }, - ], - }, - { - text: "元数据配置", - collapsed: true, - items: [ - { - text: "敏感词sensitive-words.json", - link: "/config/metadata/sensitive-words", - }, - { - text: "模型列表llm-models.json", - link: "/config/metadata/llm-models", - }, - { - text: "qq-botpy ID 映射 adapter-qq-botpy.json", - link: "/config/metadata/adapter-qq-botpy", - }, - ], - }, - ], - }, - { - text: "插件", - // collapsed: true, - items: [ - { text: "插件介绍", link: "/plugin/plugin-intro" }, - { - text: "插件开发", - collapsed: true, - items: [ - { text: "基础教程", link: "/plugin/dev/tutor" }, - { text: "消息平台实体", link: "/plugin/dev/messages" }, - { text: "API 参考", link: "/plugin/dev/api-ref" }, - { text: "组件扩展", link: "/plugin/dev/extension" }, - ], - }, - // { text: "技术信息", link: "/plugin/tech-info" }, - ], - }, - { - text: "管理面板(Beta测试)", - items: [ - { text: "介绍 & 使用", link: "/webui/intro" }, - { text: "系统操作", link: "/webui/system" }, - { text: "设置项管理", link: "/webui/settings" }, - ], - }, - { - text: "实践", - items: [ - { - text: "如何接入 Dify?", - link: "/workshop/dify-service-api", - }, - { - text: "如何接入 Dify? - NewAPI 中转方案", - link: "/workshop/dify-integration", - }, - { - text: "如何接入 OneAPI、LinkAI 等第三方 OpenAI 格式接口?", - link: "/workshop/one-api", - }, - { - text:"如何使用 Ollama 接入本地模型", - link:"/workshop/ollama" - }, - { - text: "如何实现一个消息平台适配器?", - link: "/workshop/impl-platform-adapter", - }, - { - text: "在 LangBot 接入完整 MCP 生态", - link: "/workshop/mcp-details" - }, - { - text: "接入 PPIO API", - link: "/workshop/ppio-integration" - } - ], - }, - { - text: "开发", - items: [ - { text: "开发配置", link: "/develop/dev-config" }, - { text: "组件架构", link: "/develop/comp-arch" }, - ], - }, - ], - // 编辑链接 editLink: { pattern: @@ -240,17 +19,15 @@ export default defineConfig({ locales: { root: { + title: "LangBot 文档", label: "简体中文", lang: "zh", link: "/zh/", themeConfig: { // https://vitepress.dev/reference/default-theme-config - nav: [ - { text: "首页", link: "/zh/" }, - { text: "概述", link: "/zh/insight/guide" }, - { text: "部署", link: "/zh/deploy/langbot/manual" }, - { text: "插件", link: "/zh/plugin/plugin-intro" }, + { text: "主页", link: "https://langbot.app" }, + { text: "路线图", link: "https://langbot.featurebase.app/roadmap" }, ], sidebar: [ @@ -258,65 +35,105 @@ export default defineConfig({ text: "概述", items: [ { text: "新手指引(必看)", link: "/zh/insight/guide" }, - { text: "项目介绍", link: "/zh/insight/intro" }, { text: "社区资源", link: "/zh/insight/community" }, ], }, { - text: "部署", + text: "部署和使用", items: [ { text: "部署 LangBot", collapsed: true, items: [ + { text: "Docker部署", link: "/zh/deploy/langbot/docker" }, { text: "宝塔面板部署", link: "/zh/deploy/langbot/one-click/bt", }, - { text: "Docker部署", link: "/zh/deploy/langbot/docker" }, { text: "手动部署", link: "/zh/deploy/langbot/manual" }, ], }, { - text: "部署消息平台", + text: "配置机器人", collapsed: true, + link: "/zh/deploy/platforms/readme", items: [ { - text: "aiocqhttp(推荐)", + text: "QQ 个人号", collapsed: true, items: [ { text: "NapCat", - link: "/zh/deploy/platforms/aiocqhttp/napcat", + link: "/zh/deploy/platforms/qq/aiocqhttp/napcat", }, { text: "Lagrange", - link: "/zh/deploy/platforms/aiocqhttp/lagrange", + link: "/zh/deploy/platforms/qq/aiocqhttp/lagrange", }, { text: "llonebot", - link: "/zh/deploy/platforms/aiocqhttp/llonebot", + link: "/zh/deploy/platforms/qq/aiocqhttp/llonebot", }, { - text: "shamrock", - link: "/zh/deploy/platforms/aiocqhttp/shamrock", + text: "go-cqhttp", + link: "/zh/deploy/platforms/qq/gocq", }, ], }, { - text: "go-cqhttp", - link: "/zh/deploy/platforms/gocq", + text: "QQ 官方机器人", + // link: "/deploy/platforms/qq/official", + collapsed: true, + items: [ + { + text: "Webhook 方式", + link: "/zh/deploy/platforms/qq/official_webhook", + }, + { + text: "WebSocket 方式", + link: "/zh/deploy/platforms/qq/official", + }, + ], }, { - text: "QQ官方", - link: "/zh/deploy/platforms/official", + text: "个人微信", + collapsed: true, + items: [ + { + text: "Gewechat", + link: "/zh/deploy/platforms/wechat/gewechat", + }, + ], }, + { + text: "企业微信", + collapsed: true, + items: [ + { + text: "内部应用", + link: "/zh/deploy/platforms/wecom/wecom", + }, + { + text: "对外客服", + link: "/zh/deploy/platforms/wecom/wecomcs", + }, + ], + }, + { text: "微信公众号", link: "/zh/deploy/platforms/wxoa.md" }, + { text: "飞书", link: "/zh/deploy/platforms/lark" }, + { text: "钉钉", link: "/zh/deploy/platforms/dingtalk.md" }, + { text: "Discord", link: "/zh/deploy/platforms/discord" }, + { text: "Telegram", link: "/zh/deploy/platforms/telegram" }, + { text: "Slack", link: "/zh/deploy/platforms/slack" }, ], }, - { text: "填写配置信息", link: "/zh/deploy/quick-config/config" }, { - text: "网络配置详解", - link: "/zh/deploy/network-details", + text: "配置对话模型", + link: "/zh/deploy/models/readme", + }, + { + text: "修改对话流水线", + link: "/zh/deploy/pipelines/readme", }, { text: "更新 LangBot", @@ -324,56 +141,6 @@ export default defineConfig({ }, ], }, - { - text: "使用", - items: [ - { text: "命令用法", link: "/zh/usage/command" }, - { text: "常见问题", link: "/zh/usage/faq" }, - ], - }, - { - text: "配置", - items: [ - { - text: "功能配置", - collapsed: true, - items: [ - { - text: "platform.json", - link: "/zh/config/function/platform", - }, - { - text: "pipeline.json", - link: "/zh/config/function/pipeline", - }, - { - text: "provider.json", - link: "/zh/config/function/provider", - }, - { text: "command.json", link: "/zh/config/function/command" }, - { text: "system.json", link: "/zh/config/function/system" }, - ], - }, - { - text: "元数据配置", - collapsed: true, - items: [ - { - text: "敏感词sensitive-words.json", - link: "/zh/config/metadata/sensitive-words", - }, - { - text: "模型列表llm-models.json", - link: "/zh/config/metadata/llm-models", - }, - { - text: "qq-botpy ID 映射 adapter-qq-botpy.json", - link: "/zh/config/metadata/adapter-qq-botpy", - }, - ], - }, - ], - }, { text: "插件", // collapsed: true, @@ -391,15 +158,6 @@ export default defineConfig({ }, ], }, - { - text: "管理面板(Beta测试)", - items: [ - { text: "介绍 & 使用", link: "/zh/webui/intro" }, - { text: "系统操作", link: "/zh/webui/system" }, - { text: "设置项管理", link: "/zh/webui/settings" }, - ], - }, - { text: "实践", items: [ @@ -407,23 +165,38 @@ export default defineConfig({ text: "如何接入 Dify?", link: "/zh/workshop/dify-service-api", }, - { - text: "如何接入 Dify? - NewAPI 中转方案", - link: "/zh/workshop/dify-integration", - }, { text: "如何接入 OneAPI、LinkAI 等第三方 OpenAI 格式接口?", link: "/zh/workshop/one-api", }, + { + text: "如何使用 Ollama 接入本地模型", + link: "/zh/workshop/ollama" + }, { text: "如何实现一个消息平台适配器?", link: "/zh/workshop/impl-platform-adapter", }, + { + text: "在 LangBot 接入完整 MCP 生态", + link: "/zh/workshop/mcp-details" + }, + { + text: "使用 PPIO 提供的模型", + link: "/zh/workshop/ppio-integration" + }, + { + text: "容器网络配置详解", + link: "/zh/workshop/network-details", + }, ], }, { text: "开发", - items: [{ text: "组件架构", link: "/zh/develop/comp-arch" }], + items: [ + { text: "开发配置", link: "/zh/develop/dev-config" }, + { text: "组件架构", link: "/zh/develop/comp-arch" }, + ], }, ], @@ -437,7 +210,7 @@ export default defineConfig({ socialLinks: [ { icon: "github", - link: "https://github.com/the-lazy-me/QChatGPT-Wiki", + link: "https://github.com/RockChinQ/LangBot", }, ], }, diff --git a/docs/assets/image/deploy/bots/arch.png b/docs/assets/image/deploy/bots/arch.png new file mode 100644 index 0000000000000000000000000000000000000000..cc4c6fa23842f25016c2e6143cd11b81bd3101d1 GIT binary patch literal 75228 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

RTzd#_T18;A+x#x)vu2i>53gyiX7d;@Ds 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 literal 0 HcmV?d00001 diff --git a/docs/assets/image/deploy/models/arch.png b/docs/assets/image/deploy/models/arch.png new file mode 100644 index 0000000000000000000000000000000000000000..4bf272b27f1947e65c60ccff32ab0055590b38d2 GIT binary patch literal 69935 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%0AU{OSB@B&_P= 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 literal 0 HcmV?d00001 diff --git a/docs/assets/image/deploy/pipelines/arch.png b/docs/assets/image/deploy/pipelines/arch.png new file mode 100644 index 0000000000000000000000000000000000000000..c3a0993820d09cce7a9ec6dae9b00379f6ae4a0b GIT binary patch literal 73644 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 内容函数功能请查看插件功能文档。 - - -## 引用原消息 quote-origin - -```json -"quote-origin": false, -``` - -在群内回复时是否引用原消息 - -## 是否at原用户 at-sender - -```json -"at-sender": false, -``` - -在群内回复时是否at原用户 - -## 强制消息延迟范围 force-delay - -```json -"force-delay": [0, 0], -``` - -在将响应内容发回给用户前的强制消息延迟时间范围,以防风控,单位是秒。 - -## 长消息处理策略 long-text-process - -```json -"long-text-process": { - "threshold": 256, - "strategy": "forward", - "font-path": "" -}, -``` - -`threshold`:阈值,文字长度大于此值的消息会使用长消息处理策略 - -`strategy`:长消息处理策略,目前支持forward(转发消息组件)和image(文字转图片) - -`font-path`: image的渲染字体。未设置时,如果在windows下,会尝试寻找系统的微软雅黑字体,若找不到,则转为forward策略。未设置时,若不是windows系统,则直接转为forward策略。 - -## 向用户隐藏AI接口的异常信息 hide-exception-info - -``` -"hide-exception-info": true -``` - - 是否向用户隐藏AI的异常信息,如果为true,当请求AI接口出现异常时,会返回一个错误的提示给用户。而把报错详情输出在控制台。 diff --git a/docs/zh/config/function/provider.md b/docs/zh/config/function/provider.md deleted file mode 100644 index b901ca5d0..000000000 --- a/docs/zh/config/function/provider.md +++ /dev/null @@ -1,382 +0,0 @@ -# provider.json 配置项 - -:::info 目录 -[[toc]] -::: - -`data/config/provider.json` 中配置AI接口提供商相关的配置项。 - -## 启用聊天功能 enable-chat - -```json -"enable-chat": true, -``` - -`enable-chat`:是否开启AI聊天功能 - -## 启用 AI 视觉功能 enable-vision - -```json -"enable-vision": true, -``` - -`enable-vision`:是否开启AI视觉功能。需要使用的模型同时支持视觉功能,详情见元数据板块。 - -## 模型接口密钥 keys - -::: info -不同模型的提供商可能使用不同的接口格式,LangBot 通过每个模型的三元组(请求器、密钥组、模型名称)来确定模型的使用方式。查看已支持的模型或添加自定义模型,请查看元数据配置板块 `llm-models.json` 文件。 -::: - -```json -"keys": { - "openai": [ - "sk-1234567890" - ], - "anthropic": [ - "sk-1234567890" - ], - "moonshot": [ - "sk-1234567890" - ], - "deepseek": [ - "sk-1234567890" - ], - "gitee-ai": [ - "XXXXX" - ], - "xai": [ - "xai-1234567890" - ], - "zhipuai": [ - "xxxxxxx" - ] - ... -}, -``` - -`keys`:设置密钥组,以字典的形式设置若干个密钥组,每个密钥组的键为密钥组名称,值为密钥列表。模型与密钥组的对应关系,请查看元数据板块 `llm-models.json` 文件。 - -目前支持的密钥组: - -- `openai`:[OpenAI](https://openai.com/) 的密钥组,如果你没有OpenAI API Key,你可以[在此中转站获取](https://api.qhaigc.net/) -- `anthropic`:[Anthropic](https://anthropic.com/) 的密钥组 -- `moonshot`:[Moonshot](https://moonshot.cn/)(月之暗面 kimi)的密钥组 -- `deepseek`:[Deepseek](https://deepseek.com/)(深度求索)的密钥组 -- `gitee-ai`: [Gitee AI](https://ai.gitee.com/) Serverless API 的密钥组 -- `siliconflow`: [SiliconFlow](https://siliconflow.cn/) 的密钥组 -- `bailian`: 阿里云百炼模型接口密钥组 -- `volcark`: 火山方舟模型、应用接口密钥组 -- `modelscope`: 魔搭社区接口密钥组 -- `ppio`:[PPIO](https://ppinfra.com/user/register?invited_by=QJKFYD&utm_source=github_langbot) (派欧云)的密钥组 - -## 大模型请求器 requester - -```json -"requester": { - "openai-chat-completions": { - "base-url": "https://api.openai.com/v1", - "args": {}, - "timeout": 120 - }, - "anthropic-messages": { - "base-url": "https://api.anthropic.com", - "args": { - "max_tokens": 1024 - }, - "timeout": 120 - }, - "moonshot-chat-completions": { - "base-url": "https://api.moonshot.cn/v1", - "args": {}, - "timeout": 120 - }, - "deepseek-chat-completions": { - "base-url": "https://api.deepseek.com", - "args": {}, - "timeout": 120 - }, - "ollama-chat": { - "base-url": "http://127.0.0.1:11434", - "args": {}, - "timeout": 600 - }, - "gitee-ai-chat-completions": { - "base-url": "https://ai.gitee.com/v1", - "args": {}, - "timeout": 120 - }, - "xai-chat-completions": { - "base-url": "https://api.x.ai/v1", - "args": {}, - "timeout": 120 - }, - "zhipuai-chat-completions": { - "base-url": "https://open.bigmodel.cn/api/paas/v4", - "args": {}, - "timeout": 120 - } - ... - }, -``` - -`requester`:设置请求器,每个请求器的键为请求器名称,值为请求器配置。模型与请求器的对应关系,请查看元数据板块 `llm-models.json` 文件。实现请求器的方式,请查看插件编写教程。 - -目前支持的请求器有(除非编写插件实现了新的请求器,否则不支持在`requester`中添加新的请求器配置): - -- `openai-chat-completions`:[OpenAI](https://openai.com/) 的 ChatCompletion 请求器 -- `anthropic-messages`:[Anthropic](https://anthropic.com/) 请求器(Claude) -- `moonshot-chat-completions`:[Moonshot](https://moonshot.cn/) 请求器(月之暗面) -- `deepseek-chat-completions`:[Deepseek](https://deepseek.com/) 请求器(深度求索) -- `ollama-chat`:[Ollama](https://ollama.com/) 请求器,不需要密钥,直接请求目标地址的 Ollama 服务 -- `gitee-ai-chat-completions`:[Gitee AI](https://ai.gitee.com/) Serverless API 请求器(OpenAI 兼容接口) -- `xai-chat-completions`:[xAI](https://x.ai/) 请求器 -- `zhipuai-chat-completions`:[智谱 AI](https://open.bigmodel.cn/) 请求器 -- `lmstudio-chat-completions`:[LMStudio](https://lmstudio.ai/) 请求器 -- `siliconflow-chat-completions`:[SiliconFlow](https://siliconflow.cn/) 请求器 -- `bailian-chat-completions`:[阿里云百炼](https://bailian.console.aliyun.com/) 请求器,仅支持模型,应用请使用下方百炼平台运行器 -- `volcark-chat-completions`:[火山方舟](https://console.volcengine.com/ark/region:ark+cn-beijing/model?vendor=Bytedance&view=LIST_VIEW) 请求器,默认为模型调用接口,应用(Bots)调用接口请在`base-url`后方添加`/bots` -- `modelscope-chat-completions`:[魔搭社区](https://modelscope.cn/) 请求器,使用魔搭社区的接口,需要确保账户以绑定阿里云账户 -- `ppio-chat-completions`:[PPIO](https://ppinfra.com/user/register?invited_by=QJKFYD&utm_source=github_langbot) 请求器 - -`base-url`:设置接口地址。 - -`args`:请求时除了model之外的其他参数,以字典的形式设置,具体请查看各个接口提供商的文档。 - -`timeout`:设置请求超时时间,以秒为单位,对于耗时较长的模型,建议设置较大值。 - -## 使用的模型 model - -```json -"model": "gpt-3.5-turbo", -``` - -`model`:设置要使用的模型名称。此模型必须存在于 `llm-models.json` 元数据中。 - -具体支持的模型列表和各个模型对应的请求器和密钥组,请查看元数据板块 `llm-models.json` 文件。 - -## 情景预设(人格) prompt - -```json -"prompt-mode": "normal", -"prompt": { - "default": "如果用户之后想获取帮助,请你说”输入!help获取帮助“。" -} -``` - -`prompt-mode`:设置情景预设模式,值为`normal`(单预设模式)和`full-scenario`(完整历史对话模式) - -`normal`时,使用下面的`prompt`,可设置多个 - -```json -"prompt": { - "default": "如果用户之后想获取帮助,请你说”输入!help获取帮助“。", - "help": "如果用户之后想获取帮助,请你说”输入!help获取帮助“。" -} -``` - -`normal` 模式也支持读取`data/prompts`目录下的文件内容作为单个 System Prompt,文件名即为`prompt`的名称。 - -在使用中通过`!default set <预设名>`指令将其设为默认(将<预设名>整体替换) - -### full-scenario模式配置方法 - -把完整的历史对话以文件形式添加到`data/scenario/`目录下,参考`data/scenario/default.json` - -```json -{ - "prompt": [ - { - "role": "system", - "content": "You are a helpful assistant. 如果我需要帮助,你要说“输入!help获得帮助”" - }, - { - "role": "assistant", - "content": "好的,我是一个能干的AI助手。 如果你需要帮助,我会说“输入!help获得帮助”" - } - ] -} -``` - -`role` 为消息的角色,可以是`user`(用户)、`assistant`(AI)、`system`(系统) -`content` 为字符串,表示消息内容。 -在使用中通过`!default set <文件名>`指令将其设为默认(将<预设名>整体替换) - -## 请求运行器 runner - -```json -"runner": "local-agent", -``` - -设置聊天消息将由哪个运行器处理,默认是 `local-agent` -目前支持: - -- `local-agent`:LangBot 本地实现的一个 Agent 机制,实现会话管理、插件调用。 -- `dify-service-api`:使用 [Dify](https://dify.ai/) 的 Service API 机制,支持 聊天助手、Agent、工作流应用。 -- `dashscope-app-api`:使用 [阿里云百炼平台](https://bailian.console.aliyun.com/#/app-center) 自建应用的 API,支持 普通智能体应用、智能体编排应用。 - -::: info -仅在设置为`local-agent`时,才会使用 LangBot 内部配置的`模型`、`工具(内容函数)`、`提示词(情景预设)`、`本地存储的上下文`。 -::: - -## Dify Service API 配置 dify-service-api - -```json - "dify-service-api": { - "base-url": "https://api.dify.ai/v1", - "app-type": "chat", - "options": { - "convert-thinking-tips": "original" - }, - "chat": { - "api-key": "app-1234567890", - "timeout": 120 - }, - "agent": { - "api-key": "app-1234567890", - "timeout": 120 - }, - "workflow": { - "api-key": "app-1234567890", - "output-key": "summary", - "timeout": 120 - } - } -``` - -**仅在 `runner` 设置为 `dify-service-api` 时使用,需要配置以下内容:** - -- `base-url`:Dify Service API 的地址,默认是 `https://api.dify.ai/v1`,这是 Dify 官方云服务的地址,如果你使用的是自部署的社区版,请设置为你的自部署地址。 -- `app-type`:使用的 Dify 应用类型。支持 `chat` - 聊天助手(含 Chatflow)、 `agent` - Agent、 `workflow` - 工作流;请填写下方对应的应用类型 API 参数 -- `options`:特殊的选项配置。 - - `convert-thinking-tips`:dify 使用 deepseek-r1 等有思维链的模型时[会携带思考过程回复](https://github.com/RockChinQ/LangBot/issues/1108),此选项控制输出时的处理方式;值为 original 时,不转换思考提示;值为 plain 时,将思考提示转换为类似 DeepSeek 官方的\...\格式;值为 remove 时,删除思考提示 -- `chat`:Dify 聊天助手(或 chatflow)应用的配置 - - `api-key`:Dify 聊天助手应用的 API 密钥 - - `timeout`:Dify 聊天助手应用的请求超时时间,以秒为单位,默认是 120 秒。 -- `agent`:Dify Agent 应用的配置 - - `api-key`:Dify Agent 应用的 API 密钥 - - `timeout`:Dify Agent 应用的请求超时时间,以秒为单位,默认是 120 秒。 -- `workflow`:Dify 工作流应用的配置 - - `api-key`:Dify 工作流应用的 API 密钥 - - `output-key`:Dify 工作流应用的输出键,用于获取工作流应用的输出结果。默认为`summary`,对应工作流编排时,end节点的输出变量。 - - `timeout`:Dify 工作流应用的请求超时时间,以秒为单位,默认是 120 秒。 - -![Dify 工作流应用的输出键](/assets/image/config_provider_01.png) - -### 请求变量 - -当使用工作流时,LangBot 会显式传入以下参数,您可以自行在 Dify 工作流的开始节点中添加: - -- `user_message_text`:用户消息的纯文本 -- `session_id`:用户会话id,私聊为 `person_`,群聊为 `group_` -- `conversation_id`:字符串,用户会话id,由 LangBot 生成。用户重置会话后,会重新生成 -- `msg_create_time`:数字类型,收到此消息的时间戳(秒) - -您可以[通过插件自定义任何变量](/plugin/dev/api-ref.html#%E8%AE%BE%E7%BD%AE%E8%AF%B7%E6%B1%82%E5%8F%98%E9%87%8F)。 - -![Dify 工作流开始节点配置](/assets/image/config_provider_02.png) - -使用 工作流 应用或 Agent 应用时,如果开启了`platform.json`中的`track-function-calls`,将会在 Dify 执行每个工具调用时,输出一个`调用函数xxx`的消息给用户。 -但如果是使用`chat`应用下的`ChatFlow`(聊天助手->工作流编排),无论如何只会输出 Answer(直接回复)节点返回的文本。 - - -## 阿里云百炼平台自建应用配置 dashscope-app-api - -```json - "dashscope-app-api": { - "app-type": "agent", - "api-key": "sk-1234567890", - "agent": { - "app-id": "Your_app_id", - "references_quote": "参考资料来自:" - }, - "workflow": { - "app-id": "Your_app_id", - "references_quote": "参考资料来自:", - "biz_params": { - "city": "北京", - "date": "2023-08-10" - } - } - } -``` - -**仅在 `runner` 设置为 `dashscope-app-api` 时使用,需要配置以下内容:** - -- `app-type`:使用的百炼平台应用类型。 `agent` - 智能体应用(右-紫色)、 `workflow` - 智能体编排应用(左-橙色) - -![dashscope application](/assets/image/dashscope_application.png) - -- `api-key`:阿里云百炼平台的 API 密钥 -- `agent`:智能体应用的配置 - - `app-id`: "上图中的应用ID", - - `references_quote`:引用来源的提示语,默认为`参考资料来自:` 如果你在智能体应用中添加了展示回答来源这个配置将会起作用 -- `workflow`:智能体编排应用的配置 - - `app-id`: "上图中的应用ID", - - `references_quote`:引用来源的提示语,默认为`参考资料来自:` 如果你在智能体应用中添加了展示回答来源这个配置将会起作用 - - `biz_params`:业务参数,用于传入到智能体编排应用中,city和date对应下方第二章图中的`变量名`,二者的值是要传入的可在其中调用的参数。 - - 与上述 Dify 相同,LangBot 也会传入`请求变量`到百炼应用。 - -`references_quote`解释图片 - -![dashscope application](/assets/image/dashScope_ref_quote.png) - -`biz_params`解释图片 - -![dashscope application](/assets/image/dashscope_bitz.png) - -## [MCP](https://modelcontextprotocol.io/) 配置 mcp - -MCP (Model Context Protocol) 是 Anthropic 设计的 Agent 上下文标准协议,现已被广泛采用。 -LangBot 支持通过 MCP 协议获取丰富工具,以供在 `local-agent` 中使用。 - -```json - "mcp": { - "servers": [ - { - "name": "weather", - "enable": true, - "mode": "sse", - "url": "http://localhost:8000/sse", - "headers": {}, - "timeout": 10 - }, - { - "name": "stock", - "enable": true, - "mode": "stdio", - "command": "python3", - "args": [ - "path/to/your/serverfile" - ], - "env": {} - } - ] - } -``` - -请先自行[阅读 MCP 的介绍](https://modelcontextprotocol.io/introduction),了解如何使用第三方 MCP Server。LangBot 目前仅支持 Stdio(Python) 和 SSE 两种通信方式。 - -- `SSE` 模式: - - `name` 服务器名称,自行定义 - - `enable` 是否启用本 Server - - `mode` 固定填写`SSE` - - `url` MCP SSE Server 的访问 URL - - `headers` 连接时的 headers,可选 - - `timeout` 连接超时时间 -- `stdio` 模式: - - `name` 服务器名称,自行定义 - - `enable` 是否启用本 Server - - `mode` 固定填写`stdio` - - `command` 执行命令 - - `args` 执行命令的参数 - - `env` 执行命令的环境变量,可选 - -::: info - -- 推荐使用 SSE 模式。 -- 使用 Stdio 时,仅支持执行 Python 脚本 Server。若 LangBot 运行在容器中,可以将 MCP Server 执行文件置于 `data` 目录下的新目录中,并使用 `command` 和 `args` 指定执行文件路径。 - -::: - - diff --git a/docs/zh/config/function/system.md b/docs/zh/config/function/system.md deleted file mode 100644 index 0183a042c..000000000 --- a/docs/zh/config/function/system.md +++ /dev/null @@ -1,133 +0,0 @@ -# system.json 配置项 - -:::info 目录 -[[toc]] -::: - - - -`data/config/system.json` 中配置系统设置,如管理员、网络代理、是否上报遥测数据供开发者分析、日志等级、会话消息处理并发数、流水线消息处理并发数、帮助消息等 - -## 管理员会话 admin-sessions - -```json -"admin-sessions": [], -``` - -`admin-sessions`:设置管理员会话,格式为 {type}_{id},type 为 "group" 或 "person",如: - -```json -"admin-sessions": ["group_123456789", "person_123456789"], -``` - -::: info -1. 如果你使用的是 QQ 官方的 API,session id 为映射之后的值,具体可以查看 [qq-botpy 元数据](https://docs.langbot.app/config/metadata/adapter-qq-botpy.html),或者查看程序处理消息时的控制台输出。 -2. 如果 session 指定了一个群,那么群内所有人的所有消息都会被认为是管理员消息。 -::: - -## 网络代理 network-proxies - -::: info -建议通过环境变量设置代理,配置文件的设置**会覆盖环境变量** -环境变量设置:`http_proxy` 和 `https_proxy` -::: - -```json -"network-proxies": { - "http": null, - "https": null -}, -``` - -`network-proxies`:设置网络代理,为正向代理,http和https都要填,例如 - -```json -"network-proxies": { - "http": "http://127.0.0.1:7890", - "https": "http://127.0.0.1:7890" -}, -``` - -## 上报遥测数据 report-usage - -```json -"report-usage": true, -``` - -`report-usage`:是否上报遥测数据供开发者分析,不包含敏感信息 - -## 日志等级 logging-level - -```json -"logging-level": "info", -``` - -`logging-level`:暂时没用,现在只能通过环境变量 DEBUG=true 来设置调试日志输出 - -## 会话消息处理并发数 session-concurrency - -```json -"session-concurrency": { - "default": 1 -}, -``` - -`session-concurrency`:会话消息处理并发数,粒度是每个会话,session格式为 {type}_{id},未指定的session使用 default 配置 - -## 流水线消息处理并发数 pipeline-concurrency - -```json -"pipeline-concurrency": 20, -``` - -`pipeline-concurrency`:流水线消息处理并发数,粒度是整个程序,目前使用 FCFS 算法调度各个请求。 - -## 遥测服务器url qcg-center-url - -LangBot 运行期间推送遥测数据的目标地址,默认为官方地址,若您自己部署了[qcg-center](https://github.com/RockChinQ/qcg-center),可以改为你的地址。 - -```json -"qcg-center-url": "https://api.qchatgpt.rockchin.top/api/v2" -``` - -## 帮助消息 help-message - -```json -"help-message": "LangBot - 😎高稳定性、🧩支持插件、🦄多模态的 ChatGPT QQ 机器人🤖\n链接:https://langbot.app" -``` - -`help-message`:帮助消息,用户发送 !help 命令时的输出 - -## HTTP 接口 http-api - -配置 HTTP 服务,需要启用才能访问 WebUI。 - -```json -"http-api": { - "enable": true, - "host": "0.0.0.0", - "port": 5300, - "jwt-expire": 604800 -}, -``` - -`enable`:是否启用 HTTP 接口 -`host`:HTTP 接口监听的地址 -`port`:HTTP 接口监听的端口 -`jwt-expire`:JWT 过期时间,单位为秒 - -## 持久化配置 persistence - -配置数据库信息。 - -```json -"persistence": { - "sqlite": { - "path": "data/persistence.db" - }, - "use": "sqlite" -} -``` - -`sqlite`:使用 SQLite 数据库,`path` 为数据库文件路径 -`use`:使用哪种数据库,目前仅支持 `sqlite` diff --git a/docs/zh/config/metadata/adapter-qq-botpy.md b/docs/zh/config/metadata/adapter-qq-botpy.md deleted file mode 100644 index 7ab8c596f..000000000 --- a/docs/zh/config/metadata/adapter-qq-botpy.md +++ /dev/null @@ -1,21 +0,0 @@ -# adapter-qq-botpy.json 元数据 - -`data/metadata/adapter-qq-botpy.json`,QQ 官方 API 适配器元数据。官方 API 在使用群聊接口时,群id和成员id为字符串,而 LangBot 内部只支持整型 id,为使重启后仍然是相同的对应关系,因此需要保存到一个文件中。 - -## 格式 - -```json -{ - "mapping": { - "groups": { - "15944D6D2B525C6E3536134D4669F067": 443241151434655 - }, - "members": { - "547A6244A731B4BEEBE5EE2AE4CD00A8": 232437565267568 - } - } -} -``` - -- `groups`: 群id映射关系,key为字符串群id,value为整型群id。 -- `members`: 成员id映射关系,key为字符串成员id,value为整型成员id。 \ No newline at end of file diff --git a/docs/zh/config/metadata/llm-models.md b/docs/zh/config/metadata/llm-models.md deleted file mode 100644 index c5e7addde..000000000 --- a/docs/zh/config/metadata/llm-models.md +++ /dev/null @@ -1,53 +0,0 @@ -# llm-models.json 元数据 - -`data/metadata/llm-models.json`,受支持的大语言模型列表,本文件中指定了可用于 `data/config/provider.json` 中的 `model` 列表,指定每个模型对应的 `Key 管理器` 和 `API 请求器`。 - -## 格式 - -```json -{ - "list": [ - { - "name": "default", - "requester": "openai-chat-completions", - "token_mgr": "openai", - "tool_call_supported": false, - "vision_supported": false - }, - { - "name": "gpt-3.5-turbo", - "tool_call_supported": true - }, - { - "name": "gpt-4o", - "tool_call_supported": true, - "vision_supported": true - } - ] -} -``` - -模型均列于`list`数组中,每个模型的字段如下: - -- `name`: 模型名称,用于在 `data/config/provider.json` 中的 `model` 列表中指定。 -- `model_name`: 进行请求时使用的模型名称,用于区分使用不同请求器的相同模型,若未设置则使用 `name` 字段。 -- `requester`: 请求器名称,指定使用哪个请求器请求该模型的响应,不同的请求器对应不同的接口格式。 - - 已支持的请求器,请到 `配置文件 provider.json` 中字段 `requester` 查看。 - - 需要自行编写插件以实现新的请求器,请查看插件开发文档中的`组件扩展`页。 -- `token_mgr`: Key 管理器,此模型使用的 key 组,对应 `data/config/provider.json` 中的 `keys` 列表。 -- `tool_call_supported`: 是否支持工具调用,标记此模型是否支持使用`内容函数`。 -- `vision_supported`: 是否支持图像输入,标记此模型是否支持使用`图像输入`。 - -`default` 模型是必须的,这是模型的默认配置,其他模型可以不设置所有的字段,只需设置 `name` 字段即可,其他字段会继承 `default` 模型的配置。 - -## 自动更新机制 - -LangBot 每次启动时,程序会自动从中央服务器获取最新的模型列表,本地 `llm-models.json` 中 `name` 与中央服务器返回的模型列表中的 `name` 进行对比,如果本地不存在,则添加,如果本地存在,则被远程获取的覆盖。 - -## 自定义模型 - -根据上述格式添加即可。 - -- 如果需要使用目前不支持的接口(请求器),需要自己扩展请求器,请参考插件开发文档 -> 组件扩展。 -- key 组可以自己在 `data/config/provider.json` 中的 `keys` 列表中添加。 -- 不建议修改默认的模型配置,因为启动时会被自动更新的信息覆盖。 \ No newline at end of file diff --git a/docs/zh/config/metadata/sensitive-words.md b/docs/zh/config/metadata/sensitive-words.md deleted file mode 100644 index 91cb4f1f4..000000000 --- a/docs/zh/config/metadata/sensitive-words.md +++ /dev/null @@ -1,3 +0,0 @@ -# sensitive-words.json 元数据 - -本地敏感词词库,参考 `data/metadata/sensitive-words.json` 内容进行修改即可。 \ No newline at end of file diff --git a/docs/zh/deploy/langbot/docker.md b/docs/zh/deploy/langbot/docker.md index 21e1aa4a5..861b847f4 100644 --- a/docs/zh/deploy/langbot/docker.md +++ b/docs/zh/deploy/langbot/docker.md @@ -1,11 +1,10 @@ # Docker部署 :::warning -请**确保**您具有以下能力: - - 了解 `Docker` 和 `Docker Compose` 的使用 - - 了解容器间网络通信配置方式 - - 了解容器文件挂载机制 - - 动手能力强、资料查找能力强 +建议您先学习以下内容: + + - `Docker` 和 `Docker Compose` 的使用 + - Docker 容器间网络通信配置方式 ::: :::info @@ -29,8 +28,9 @@ docker compose up 首次启动会输出创建配置文件的提示,请继续按照文件配置。 容器会映射`5300`端口供 WebUI 使用,您可以访问`http://127.0.0.1:5300`查看 WebUI。 -还会映射`2280-2290`端口供使用 OneBot 协议的消息平台适配器反向连接,请继续阅读[消息平台接入文档](/deploy/platforms/readme)。 +还会映射`2280-2290`端口供使用 OneBot 协议的消息平台适配器反向连接。 -## 注意 +完成 LangBot 部署后,请继续阅读: -- 安装的插件都会保存在`plugins`(映射到本目录`plugins`),安装插件时可能会自动安装相应的依赖,此时若`重新创建`容器,已安装的插件将被加载,但所需的增量依赖并未安装,会导致引入问题。您可以删除插件目录后重启,再次安装插件,以便程序可以自动安装插件所需依赖。 \ No newline at end of file +- [配置机器人文档](/zh/deploy/platforms/readme)。 +- [配置模型文档](/zh/deploy/models/readme)。 diff --git a/docs/zh/deploy/models/readme.md b/docs/zh/deploy/models/readme.md new file mode 100644 index 000000000..687872271 --- /dev/null +++ b/docs/zh/deploy/models/readme.md @@ -0,0 +1,5 @@ +# 配置模型 (Models) + +模型将被流水线用于处理消息,您配置的第一个模型将被设置为默认流水线的模型。 + +![arch](/assets/image/deploy/models/arch.png) \ No newline at end of file diff --git a/docs/zh/deploy/pipelines/readme.md b/docs/zh/deploy/pipelines/readme.md new file mode 100644 index 000000000..892326741 --- /dev/null +++ b/docs/zh/deploy/pipelines/readme.md @@ -0,0 +1,9 @@ +# 修改对话流水线配置 (Pipelines) + +流水线控制了收到消息之后的处理流程,以及与大模型之间的信息交互。每个机器人可以绑定到一条流水线上,同一条流水线能被多个机器人绑定。 + +LangBot 首次启动时会自动创建一个默认的流水线。创建机器人时,会自动绑定到默认流水线。创建第一个模型时,会自动将其设置为默认流水线的模型。 + +![arch](/assets/image/deploy/pipelines/arch.png) + +您可以创建多条流水线,用于不同的机器人,适应不同的场景。 \ No newline at end of file diff --git a/docs/zh/deploy/platforms/readme.md b/docs/zh/deploy/platforms/readme.md index 5dba87988..91ad984e8 100644 --- a/docs/zh/deploy/platforms/readme.md +++ b/docs/zh/deploy/platforms/readme.md @@ -1,6 +1,8 @@ -# 消息平台说明 +# 配置机器人 (Bots) -LangBot 需要连接消息平台 API 才能与用户交互,目前支持以下消息平台: +机器人用于从消息平台接收消息事件并调用流水线处理消息。 + +![arch](/assets/image/deploy/bots/arch.png) | 平台 | 状态 | 备注 |教程 | diff --git a/docs/zh/deploy/quick-config/config.md b/docs/zh/deploy/quick-config/config.md deleted file mode 100644 index 28c2de67a..000000000 --- a/docs/zh/deploy/quick-config/config.md +++ /dev/null @@ -1,331 +0,0 @@ -# 填写配置信息 - -修改以下配置文件即可启用 LangBot 的基本功能,当你阅读完此页面后,建议查看[配置详解](/config/function/platform.md),以了解更多的配置项详解 - -- `data/config/platform.json` -- `data/config/provider.json` -- `data/config/system.json` - -## platform.json - -修改此配置文件以指定需要连接的消息平台,只需要关注`platform-adapters`字段。 -目前支持 `go-cqhttp`(QQ逆向)、`aiocqhttp`(QQ逆向)、`qq-botpy`(QQ官方)、`wecom`(企业微信官方) 等多种消息平台适配器,也可以同时启用多个同种类或不同种类的平台适配器。 -请根据你部署的消息平台的情况选择填写。 - -::: info -如果消息平台和 LangBot 均运行在 Docker 中,请先配置下方适配器设置,具体网络配置可参考[Docker 网络配置详解](/deploy/network-details) -::: - -### aiocqhttp 适配器 - -用于接入 NapCat/Lagrange/LLOneBot 等兼容 OneBot 协议的机器人端(仅支持反向ws)。 - -```json -{ - "adapter": "aiocqhttp", - "enable": true, - "host": "0.0.0.0", - "port": 2280, - "access-token": "" -}, -``` - -`"adapter": "aiocqhttp"`,无需改动。 - -`enable`:是否启用,配置完成后请将其设为`true` - -`host`:监听的 IP 地址,一般就保持 0.0.0.0 就可以了。使用 aiocqhttp 时,LangBot 作为服务端被动等待框架连接,请在 NapCat/Lagrange/LLOneBot 等框架中设置`被动 ws 地址`或者`反向 ws 地址`(具体视框架而定)为 LangBot 监听的地址,且路径为`/ws`,例如:`ws://127.0.0.1:2280/ws`。 - -`port`:设置监听的端口,默认2280,需在 NapCat/Lagrange/LLOneBot 等框架中设置为与此处一致的端口。使用容器启动的 LangBot 默认暴露了 2280-2290 端口,请选用其中任意一个端口。 - -`access-token`:设置访问密钥,与 NapCat/Lagrange/LLOneBot 等框架中设置的保持一致 - -### qq-botpy 适配器(使用websocket方式) - -用于接入 QQ 官方机器人 API。 - -```json -{ - "adapter": "qq-botpy", - "enable": false, - "appid": "", - "secret": "", - "intents": [ - "public_guild_messages", - "direct_message", - "public_messages" - ] -} -``` - -`"adapter": "qq-botpy"`,无需改动。 - -`enable`:是否启用,配置完成后请将其设为`true` - -`appid`:申请到的QQ官方机器人的appid - -`secret`:申请到的QQ官方机器人的secret - -`intents`:控制监听的事件类型,需要填写才能接收到对应消息,目前支持的事件类型有: - -- `public_guild_messages` QQ 频道消息 -- `direct_message` QQ 频道私聊消息 -- `public_messages` Q群 和 列表私聊消息 - -### qqofficial 适配器(使用webhook方式) - -用于接入QQ官方机器人(webhook接入)。 - -```json -{ - "adapter": "qqofficial", - "enable": false, - "appid": "", - "secret": "", - "port": 2284, - "token": "" -}, -``` - -`"adapter": "qqofficial"`,无需改动。 - -`enable`:是否启用,配置完成后请将其设为`true` - -`appid`:申请到的QQ官方机器人的appid - -`secret`:申请到的QQ官方机器人的secret - -`token`: 申请到的QQ官方机器人的token - -`port`: 启动端口,一般不改动。 - -### Nakuru 适配器 - -用于接入 go-cqhttp。 - -```json -{ - "adapter": "nakuru", - "enable": false, - "host": "127.0.0.1", - "ws_port": 8080, - "http_port": 5700, - "token": "" -}, -``` - -`"adapter": "nakuru"`,无需改动。 - -`enable`:是否启用,配置完成后请将其设为`true` - -`host`:运行 go-cqhttp 的主机地址,一般不改动 - -`ws_port`:正向WS服务器监听地址,与`go-cqhttp`的`config.yml`里面的保持一致 - -`http_port`:http服务器监听地址,与`go-cqhttp`的`config.yml`里面的保持一致 - -`token`:验证密钥,,与`go-cqhttp`的`config.yml`里面的保持一致 - -### 企业微信适配器 - -用于接入企业微信机器人,如果不清楚这些内容应该填写什么,请查看[配置企业微信](/deploy/platforms/wecom/wecom.md)。 - -```json -{ - "adapter": "wecom", - "enable": false, - "host": "0.0.0.0", - "port": 2290, - "corpid": "", - "secret": "", - "token": "", - "EncodingAESKey": "", - "contacts_secret": "" -}, -``` -`"adapter": "wecom"`,无需改动。 - -`enable`:是否启用,配置完成后请将其设为`true` - -`host`:运行 企业微信回调地址 的主机地址,一般不改动 - -`port`:运行 企业微信回调地址 的监听端口,一般不改动 - -`corpid`,`secret`,`token`,`EncodingAESKey`,`contacts_secret`都在企业微信配置项页中获取。 - -### 微信公众号适配器 - -用于接入微信公众号机器人。 - -```json -{ - "adapter":"officialaccount", - "enable": true, - "token": "", - "EncodingAESKey":"", - "AppSecret":"", - "AppID":"", - "Mode":"drop", - "LoadingMessage":"AI正在思考中,请发送任意内容获取回复。", - "host": "0.0.0.0", - "port": 2287 -} -``` - -`"adapter": "officialaccount"`,无需改动。 - -`enable`:是否启用,配置完成后请将其设为`true` - -`Mode`:具体参照微信公众号部署页面 - -`LoadingMessage`: 加载信息,可更改为其他内容,仅在模式为 `passive` 下有效 - -`host`:运行 微信公众号回调地址 的主机地址,一般不改动 - -`port`:运行 微信公众号回调地址 的监听端口,一般不改动 - -`AppSecret`,`token`,`EncodingAESKey`,`AppID`都在微信公众号配置项页中获取。 - -## 个人微信 - -具体用法请查看[配置个人微信](/deploy/platforms/wechat/gewechat.md)。 - -```json -{ - "adapter": "gewechat", - "enable": true, - "gewechat_url": "http://gewe:2531", - "port": 2286, - "callback_url": "http://langbot:2286/gewechat/callback", - "app_id": "", - "token": "" -} -``` - -## 飞书 - -具体用法请查看[配置飞书](/deploy/platforms/lark.md)。 - -```json -{ - "adapter": "lark", - "enable": false, - "app_id": "cli_abcdefgh", - "app_secret": "XXXXXXXXXX", - "bot_name": "LangBot", - "enable-webhook": false, - "port": 2285, - "encrypt-key": "xxxxxxxxx" -}, -``` - -## 钉钉适配器 - -具体用法请查看[配置钉钉机器人](/deploy/platforms/dingtalk.md)。 - -```json -{ - "adapter":"dingtalk", - "enable": false, - "client_id":"", - "client_secret":"", - "robot_code":"", - "robot_name":"", - "markdown_card":false -}, -``` - -## Discord - -具体用法请查看[配置 Discord](/deploy/platforms/discord.md)。 - -```json -{ - "adapter": "discord", - "enable": false, - "client_id": "1234567890", - "token": "XXXXXXXXXX" -}, -``` - -### Slack - -具体用法请查看[配置Slack](/deploy/platforms/slack.md)。 - -```json -{ - "adapter":"slack", - "enable":false, - "bot_token":"", - "signing_secret":"", - "port":2288 -} -``` - -### 企业微信客服号 - -具体用法请查看[配置企业微信客服号](/deploy/platforms/wecom/wecomcs.md) - -```json -{ - "adapter": "wecomcs", - "enable": false, - "port": 2289, - "corpid": "", - "secret": "", - "token": "", - "EncodingAESKey": "" -} -``` - -## provider.json - -修改此配置文件以设置所连接的 AI 提供商的相关信息。 - -> 如果没有OpenAI API Key,你可以[在此获取](https://api.qhaigc.net/) - -以下仅讲解启用 OpenAI 接口的方式,具体设置方法请查看 [功能配置`provider.json` 页](/config/function/provider)。 - -编辑 `data/provider.json`,在`keys`->`openai`中添加你的 OpenAI API Key,例如: - -```json - "keys": { - "openai": [ - "sk-AAAAAAAAAAAABBBBBBBBBBBBCCCCCCCCCCCCCDDDDDDDDD" - ], - }, -``` - -如果你使用的是中转站,或者其他兼容 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", -``` - -## system.json - -在 `data/system.json` 中修改 `admin-sessions`,添加 `person_你的QQ号` 把你与机器人的会话设置为管理员(仅 person 会话私聊有效),例如: - -```json - "admin-sessions": [ - "person_1010553892" - ], -``` - -::: tip - -阅读并完成以上教程后,请根据你部署 LangBot 的方式重启,你应该可以成功使用了,如果不能请再次阅读(你或许漏做或错做某些步骤),如果完全阅读并充分理解本文档后仍然确实无法使用,你可以在[这里](/insight/community.html)找到交流群。 - -::: diff --git a/docs/zh/webui/intro.md b/docs/zh/webui/intro.md deleted file mode 100644 index f34a1ef9b..000000000 --- a/docs/zh/webui/intro.md +++ /dev/null @@ -1,21 +0,0 @@ -# 管理面板(Beta测试) - -管理面板(WebUI)将在 v3.4.0 版本开始 Beta 测试,有任何问题或建议欢迎反馈到:https://github.com/RockChinQ/LangBot/issues - -![WebUI](/assets/image/webui_intro_01.png) - -## 部署 WebUI - -依据本文档所述的部署方式新部署的实例,均自带 WebUI,默认启用。 - -### 从低于 3.4.0 版本升级的实例? - -若是使用 Docker 拉取最新的镜像,也自带有 WebUI;若是手动部署的实例,请从 [Releases](https://github.com/RockChinQ/LangBot) 页面下载最新版的 `langbot-xxx-all.zip` 文件,解压覆盖之前部署的代码目录。 - -## 未实现功能 - -- Prompt 编辑器:单独一页,实现一个直观、便捷的 Prompt 编辑器。 -- 消息平台管理页:现在仅支持在 设置 页修改消息平台,后续将把消息平台的修改、重载、统计整合到单独一页。 -- 元数据文件编辑:目前暂不支持元数据编辑,请先根据文档修改文件内容来编辑。 -- 模型数据更改:动态编辑模型元数据、所使用的模型、各会话区分模型等功能将在元数据编辑支持后规划,目前请先根据文档手动编辑文件。 - diff --git a/docs/zh/webui/settings.md b/docs/zh/webui/settings.md deleted file mode 100644 index 41c9b9d4f..000000000 --- a/docs/zh/webui/settings.md +++ /dev/null @@ -1,31 +0,0 @@ -# 设置项管理 - -设置项编辑页的内容均对应[功能配置页](/config/function/platform.html)中各个配置文件的内容。目前支持`可视化编辑`和`JSON编辑`两种,JSON 编辑器与功能配置页中的配置文件内容一致,可直接编辑。 - -## 可视化编辑 - -### 基本字段 - -基本的字段直接编辑或者选择即可。 - -![开关](/assets/image/webui_settings_01.png) - -![文本框](/assets/image/webui_settings_02.png) - -### 字符串数组 - -输入要添加的字符串,按回车键即可添加。 - -![字符串数组](/assets/image/webui_settings_03.png) - -### 对象数组 - -例如消息平台适配器,数组内均为对象,可以点击下方`添加`按钮,添加新的适配器,选择类型后会展示对应需要填写的参数,按照文档所述填写。 - -![对象数组](/assets/image/webui_settings_04.png) - -![添加对象](/assets/image/webui_settings_05.png) - -::: tip -消息平台适配器更改之后需要手动进行[`热重载`](/webui/system.html#%E7%83%AD%E9%87%8D%E8%BD%BD)以生效 -::: \ No newline at end of file diff --git a/docs/zh/webui/system.md b/docs/zh/webui/system.md deleted file mode 100644 index 729e4f02a..000000000 --- a/docs/zh/webui/system.md +++ /dev/null @@ -1,17 +0,0 @@ -# 系统操作 - -## 任务列表 - -任务列表中跟踪了`插件更新`、`插件安装`、`插件删除`等耗时任务的进度。 -点击侧栏下方的任务列表按钮,在任务列表对话框,可以查看任务执行步骤、日志等信息。 - -![任务列表对话框](/assets/image/webui_system_02.png) - -![任务日志](/assets/image/webui_system_03.png) - -## 热重载 - -目前支持热重载 消息平台、插件和 LLM 管理器,点击侧栏下方的系统信息中的对应按钮即可。 -在修改了 `消息平台适配器配置`或`provider.json 内的配置` 之后需要手动热重载`消息平台`或`LLM 管理器`,插件更改则会自动热重载。 - -![热重载](/assets/image/webui_system_04.png) \ No newline at end of file diff --git a/docs/zh/deploy/network-details.md b/docs/zh/workshop/network-details.md similarity index 100% rename from docs/zh/deploy/network-details.md rename to docs/zh/workshop/network-details.md