LangBot 4.6.0 引入了外部知识库功能,允许用户将 Dify、RAGFlow 等外部知识检索服务集成到对话流水线中。本教程演示如何将 Dify 知识库与 LangBot 结合,实现基于领域知识的智能对话。
功能概述
外部知识库功能使 LangBot 能够:
- 连接各种外部知识检索服务(Dify、RAGFlow 等)
- 基于领域专业知识提供专业回答
- 通过插件系统灵活扩展知识检索能力
- 通过 WebUI 便捷配置,无需手动编辑配置文件
准备工作
开始之前,你需要:
- 部署 LangBot 4.6.0 或更高版本
- 拥有 Dify 账号(在 https://cloud.dify.ai 注册)
- 配置一个对话模型(本教程使用 claude-opus-4-1-20250805)
第一步:部署 LangBot
1.1 查看 LangBot 仓库
首先访问 LangBot GitHub 仓库 了解项目。LangBot 是一个生产级的即时通讯机器人开发平台,支持多种消息平台和 LLM 服务。
1.2 了解外部知识库功能
访问 LangBot 官方文档 查看外部知识库使用说明。文档详细介绍了如何构建内置知识库和连接外部知识库。
1.3 启动 LangBot
使用 uvx langbot 命令快速启动 LangBot,然后访问 http://127.0.0.1:5300 进行初始化。填写邮箱和密码完成注册,然后登录。
1.4 登录后的控制台
成功登录后,你将看到 LangBot WebUI 控制台。
第二步:配置对话模型
使用知识库之前,需要先配置一个对话模型。
2.1 进入模型配置页面
点击左侧导航栏的 “Models” 进入模型配置页面。
2.2 添加新模型
点击 “+” 按钮打开模型配置对话框。
2.3 填写模型信息
填写以下信息:
- Model Name:claude-opus-4-1-20250805
- Model Provider:New API
- Request URL:你的 API 端点
- API Key:你的 API Key
- Abilities:勾选 Vision Ability 和 Function Call
点击 “Submit” 保存配置。
第三步:在 Dify 中创建知识库
3.1 登录 Dify 平台
访问 https://cloud.dify.ai 并登录你的账号。
3.2 进入知识库页面
点击顶部导航栏的 “Knowledge” 进入知识库管理页面。
3.3 创建新知识库
点击 “Create Knowledge” 开始创建知识库。
3.4 选择数据源
你可以选择以下方式导入数据:
- Import from file:上传文档文件
- Sync from Notion:从 Notion 同步
- Sync from website:爬取网站内容
本教程选择 “Import from file” 并上传准备好的 LangBot 文档。
3.5 上传文档
上传文档后,系统会显示文件信息。点击 “Next” 继续。
3.6 配置文档处理参数
在文档处理页面,你可以配置分块设置、索引方式和检索设置:
- Chunk Settings:General 模式,最大块长度 1024 字符
- Index Method:High Quality(使用 embedding 模型)
- Retrieval Setting:Vector Search
点击 “Save & Process” 开始处理文档。
3.7 知识库处理中
系统开始处理文档并生成向量嵌入。
3.8 嵌入完成
处理完成后,知识库即可使用。
第四步:获取 Dify API 信息
4.1 打开 Service API 面板
点击右下角的 “Service API” 按钮。记录以下信息:
- Service API Endpoint:https://api.dify.ai/v1
- Dataset ID:从 URL 中获取
4.2 获取 API Key
点击 “API Key” 按钮查看 API key。记录你的 API Key,用于后续配置。
第五步:在 LangBot 中配置外部知识库
5.1 进入知识库页面
在 LangBot WebUI 中,点击左侧导航栏的 “Knowledge”。
5.2 切换到外部知识库标签页
点击 “External” 标签页。
5.3 添加外部知识库
点击 “+” 按钮打开添加外部知识库对话框。在此对话框中,你需要:
- Knowledge Base Name:给知识库起个名字
- Knowledge Base Description:添加描述(可选)
- Retriever:选择知识检索插件
注意:使用外部知识库需要先安装对应的知识检索插件。你可以在插件市场中搜索并安装 Dify 知识检索插件。
安装插件后,从 Retriever 下拉菜单中选择对应插件,然后填写从 Dify 获取的配置信息(API Endpoint、API Key、Dataset ID)。
第六步:配置 Pipeline
配置好外部知识库后,需要在流水线中启用:
- 进入 “Pipelines” 页面
- 编辑或创建新流水线
- 在 “AI Capabilities” 页面,选择 “Built-in Agent” 作为 runner
- 在知识库选择中,勾选刚才配置的外部知识库
- 保存流水线配置
第七步:测试效果
在流水线的 “Conversation Testing” 页面测试,或将流水线绑定到机器人进行实际对话测试。当用户提问时,LangBot 会自动从 Dify 知识库检索相关内容,并结合检索到的知识生成回答。
常见问题
1. 如何安装知识检索插件?
访问 LangBot 插件市场,搜索 “Knowledge Retriever” 或 “Dify”,找到对应插件并点击安装。
2. 支持哪些外部知识检索服务?
LangBot 目前通过插件系统支持多种外部知识检索服务,包括:
- Dify
- RAGFlow
- 其他自定义知识检索服务
具体支持的服务可在插件市场查看。
3. 外部知识库和内置知识库有什么区别?
- 内置知识库:数据存储在 LangBot 本地,由 LangBot 处理向量化和检索
- 外部知识库:数据存储在外部服务(如 Dify),通过 API 调用进行检索
外部知识库的优势是可以利用专业 LLMOps 平台的能力,如 Dify 的高级文档处理和多种检索策略。
4. 可以同时使用多个知识库吗?
可以。在流水线配置中,你可以同时勾选多个知识库(内置或外部),LangBot 会综合利用这些知识库的内容生成回答。
总结
通过本教程,你学会了如何:
- 在 Dify 平台上创建知识库并上传文档
- 获取 Dify API key 和相关配置信息
- 在 LangBot 中配置对话模型
- 在 LangBot 中添加外部知识库
- 配置流水线使用外部知识库
外部知识库功能为 LangBot 提供了更强大、更灵活的知识管理能力。结合 Dify 等专业 LLMOps 平台,可以构建更智能、更专业的对话机器人。
