LangBot Plugin System

深入 LangBot 插件系统:进程隔离、事件驱动与组件化架构

大多数聊天机器人框架的"插件系统"不过是一个 Python 模块的动态导入。LangBot 4.0 选择了一条更难但更正确的路——每个插件运行在独立进程中,通过结构化的 JSON-RPC 风格协议与宿主通信。 这篇文章将从源码出发,完整拆解这套系统的设计。 整体架构:三层进程模型 LangBot 的插件系统由三层进程协作: 三个层次各司其职: LangBot 主进程:运行业务逻辑(消息处理流水线、平台适配、模型调用),通过 PluginRuntimeConnector 连接 Runtime。 Plugin Runtime:插件的"编排层",负责发现、启动、管理所有插件子进程,接收主进程的指令并分发到对应插件。 插件子进程:每个插件独立运行在自己的 Python 进程中,通过 stdio 管道与 Runtime 通信。 为什么要三层而不是两层? 直觉的设计是主进程直接管理插件进程。LangBot 选择中间加一层 Runtime 的原因是部署灵活性: 本地开发:主进程通过 stdio 直接启动 Runtime 子进程(零配置) Docker 生产环境:Runtime 作为独立容器运行,主进程通过 WebSocket 连接 Windows 兼容:由于 Windows 的 asyncio 不完整支持 stdio 子进程,Windows 上自动降级为 WebSocket 通信 这意味着同一套代码,不改配置,就能适配从开发到生产的全部场景。 通信协议:JSON-RPC 风格的请求/响应 所有跨进程通信基于一个统一的协议层。核心数据结构非常简洁: # 请求 class ActionRequest(pydantic.BaseModel): seq_id: int # 序列号,用于匹配请求和响应 action: str # 动作名称 data: dict # 载荷 # 响应 class ActionResponse(pydantic.BaseModel): seq_id: int code: int # 0 = 成功 message: str data: dict chunk_status: str # "continue" | "end"(支持流式响应) 通信层 Handler 是整个系统的核心抽象。它同时扮演 RPC 客户端和服务端: ...

2026年2月23日 · 5 分钟 · LangBot Team
DeepSeek x WeChat Integration

5分钟将 DeepSeek R1 接入微信、企业微信与 Discord (免费教程)

DeepSeek 已经引爆了 AI 圈。其 R1 推理模型在逻辑能力上媲美 OpenAI o1,但它是开源的,而且 API 价格极低(甚至免费)。 然而,DeepSeek 官方目前仅宣布与微信搜索整合,我们在微信群聊、私聊中依然无法直接使用 DeepSeek R1 进行即时问答或协作。 想在你的微信群、企业微信、钉钉或 Discord 频道里直接拥有一个满血版的 DeepSeek R1 机器人吗? 使用 LangBot,你只需要 5 分钟就能搞定。 为什么选择 LangBot? LangBot 是一个开源的、生产级的即时通信机器人平台。与 GitHub 上零散的 Python 脚本不同,LangBot 提供: 统一平台: 一次配置,同时部署到微信、QQ、Discord、Telegram、钉钉、飞书等 10+ 个平台。 模型聚合: 支持 DeepSeek (R1/V3), Claude, GPT-4, Gemini, 以及本地 Ollama 模型。 零代码: 全图形化 WebUI 配置,无需懂编程。 企业级功能: 内置知识库 (RAG)、插件系统(联网搜索、绘图)和多用户管理。 准备工作 一台服务器或电脑: 安装好 Docker (VPS, 本地电脑, 或群晖 NAS 均可)。 DeepSeek API Key: 官方平台: platform.deepseek.com 硅基流动 (推荐): cloud.siliconflow.cn (国内访问更快,并发更高)。 第一步:部署 LangBot 如果你还没有部署 LangBot,只需一行命令: ...

2026年2月21日 · 2 分钟 · LangBot Team
终于让 Dify Agent 在 Discord、Telegram 和 Slack 上跑起来了

终于让 Dify Agent 在 Discord、Telegram 和 Slack 上跑起来了

想让你的 Dify Agent 突破浏览器限制,直接在 QQ、微信、Telegram 里对话?LangBot 配合 Dify,十分钟就能搞定。 为什么要这么搭? LangBot 是目前最强大的开源多平台聊天机器人框架,支持国内主流 IM(QQ、微信、飞书、钉钉)以及国际平台(Telegram、Discord、Slack、LINE)。它的核心能力就是把各种 AI 后端接入到聊天软件里。 Dify 是当下最火的 AI 应用开发平台,提供可视化 Agent 编排、50 多个内置工具、RAG 知识库等功能。两者结合,可以快速打造跨平台 AI 助手。 部署 LangBot 用 uvx 三行命令搞定: mkdir langbot-instance cd langbot-instance uvx langbot@latest 访问 http://127.0.0.1:5300,注册管理员账号: 创建 Dify Agent 登录 cloud.dify.ai 创建新应用。选择 Agent 类型——与普通聊天应用不同,Agent 可以自主推理并调用工具完成复杂任务。 配置 Agent 在编排界面配置: System Instructions - 定义 Agent 角色: Y 1 2 3 P o . . . l u e A Q R a a n u e s r s e t e e w r r e y i a a r e l n w v w v e e a i a a y n r t w s t i h e e o e b m l u r p a l s a i i i g n g u n e t e s f a n e o c i t r r o n m n a q a t a s u t e s e i n f i s o t r s t n i t i e a o n n n d t s l y t h a a n t d h p e r l o p f s e s u s s i e o r n s a l c o a m t p t l i e t t u e d e v . a r I i f o u y s o u t a n s e k e s d . t Y o o u u s h e a v t e o o t l h s e t f o o l g l e o t w i i n n g f o c r a m p a a t b i i o l n i , t i p e r s o : a c t i v e l y c a l l t h e r e l e v a n t t o o l s . 添加工具 - 从 Dify 的 50+ 内置工具中选择,比如天气查询和网页抓取: ...

2025年12月11日 · 3 分钟 · LangBot Team
LangBot 4.6.0 外部知识库教程:集成 Dify 实现 RAG 对话

LangBot 4.6.0 外部知识库教程:集成 Dify 实现 RAG 对话

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” 进入模型配置页面。 ...

2025年12月2日 · 2 分钟 · LangBot Team