Skip to main content

文档结构概览

本文档目录包含了 LangChat Pro 后端系统的详细架构设计说明,旨在帮助开发人员快速理解各个功能模块的实现和调用链路。

目录结构

langchat-api-docs/
├── 00-文档规划.md                 # 本文件
├── 01-整体架构概览.md            # 系统整体架构和模块关系
├── 02-Chat服务架构.md            # 聊天服务核心架构和调用链路
├── 03-模型工厂架构.md            # AIGC Model动态构建机制
├── 04-AiService构建器架构.md     # AI Service完整构建流程
├── 05-Embedding服务架构.md       # 向量化服务架构
├── 06-RAG架构.md                 # 检索增强生成架构
├── 07-知识库架构.md              # 知识库管理和检索
├── 08-Plugin系统架构.md          # 插件系统架构
├── 09-MCP系统架构.md             # MCP协议实现架构
├── 10-Workflow架构.md            # 工作流引擎架构
├── 11-消息推送架构.md            # WebSocket/SSE推送架构
└── 12-第三方集成架构.md          # Coze/Dify集成架构

各文档说明

01-整体架构概览.md

  • 内容范围: 系统整体架构、模块依赖关系、技术栈总览
  • 目标读者: 所有开发人员
  • 核心内容:
    • 模块层次结构
    • 模块间依赖关系图
    • 核心技术栈
    • 设计原则和架构模式

02-Chat服务架构.md

  • 内容范围: 聊天服务的核心实现和调用链路
  • 目标读者: 需要理解聊天流程的开发人员
  • 核心内容:
    • ChatEndpoint 接口层
    • ChatService 业务逻辑层
    • LcChatService 核心服务层
    • 完整的请求流程
    • 流式响应机制
    • 消息处理流程

03-模型工厂架构.md

  • 内容范围: ChatModelFactory的动态模型构建机制
  • 目标读者: 需要添加新模型支持的开发人员
  • 核心内容:
    • ChatModelFactory 设计模式
    • 支持的模型供应商(OpenAI, Ollama, Qwen, Qianfan, Zhipu等)
    • 模型实例创建流程
    • 缓存机制
    • Listener绑定机制
    • 如何扩展支持新模型

04-AiService构建器架构.md

  • 内容范围: AiServiceBuilder的完整构建流程
  • 目标读者: 需要理解AI Service组装逻辑的开发人员
  • 核心内容:
    • AiServiceBuilder 职责
    • ChatMemory 配置
    • SystemMessage 配置
    • 动态工具注入(DynamicToolFactory)
    • RAG组件组装
    • LangChatAgent构建

05-Embedding服务架构.md

  • 内容范围: 文本向量化服务
  • 目标读者: 需要使用Embedding功能的开发人员
  • 核心内容:
    • LcEmbeddingService 接口
    • Embedding模型工厂
    • 向量化流程
    • Token计算
    • 批量处理机制

06-RAG架构.md

  • 内容范围: 检索增强生成的完整架构
  • 目标读者: 需要理解RAG流程的开发人员
  • 核心内容:
    • RagRetrieverBuilder 设计
    • KnowledgeRetriever(知识库检索)
    • SqlRetriever(SQL检索)
    • ContentAggregator(内容聚合)
    • Rerank模型集成
    • 查询路由机制

07-知识库架构.md

  • 内容范围: 知识库管理和向量检索
  • 目标读者: 需要开发知识库功能的开发人员
  • 核心内容:
    • 知识库数据模型
    • 文档上传和解析
    • 文本分块(Segment)
    • 向量化存储
    • 相似度检索
    • 多种向量库支持(PGVector, Milvus, Redis, Elasticsearch, Neo4j)

08-Plugin系统架构.md

  • 内容范围: 插件系统设计和实现
  • 目标读者: 需要开发插件的开发人员
  • 核心内容:
    • 插件接口定义
    • DynamicToolFactory 机制
    • 插件注册和加载
    • 内置插件示例(时间、搜索、新闻等)
    • 如何开发新插件

09-MCP系统架构.md

  • 内容范围: Model Context Protocol实现
  • 目标读者: 需要集成MCP的开发人员
  • 核心内容:
    • MCP协议介绍
    • McpClientManager 设计
    • MCP服务端实现
    • 工具调用流程
    • MCP与AI Service的集成

10-Workflow架构.md

  • 内容范围: 工作流引擎架构
  • 目标读者: 需要开发工作流的开发人员
  • 核心内容:
    • 工作流DSL设计
    • DAG执行图构建
    • 节点执行引擎
    • 状态管理
    • 流式消息处理
    • 节点类型和扩展机制

11-消息推送架构.md

  • 内容范围: 实时消息推送机制
  • 目标读者: 需要实现实时通信的开发人员
  • 核心内容:
    • SSE 流式推送
    • 消息发布订阅
    • 连接管理
    • 事件处理机制

12-第三方集成架构.md

  • 内容范围: 第三方平台集成
  • 目标读者: 需要集成第三方服务的开发人员
  • 核心内容:
    • Coze 集成架构
    • Dify 集成架构
    • 统一集成接口设计
    • API适配模式

文档阅读建议

入门开发人员

  1. 先阅读 01-整体架构概览.md 了解系统全貌
  2. 再阅读 02-Chat服务架构.md 理解核心流程
  3. 然后根据具体需求阅读相关专题文档

模块开发人员

  • Chat功能开发: 02, 03, 04
  • 知识库开发: 05, 06, 07
  • 插件开发: 08, 09
  • 工作流开发: 10
  • 实时通信开发: 11
  • 集成开发: 12

架构师/高级开发

  • 阅读全部文档
  • 关注设计模式和最佳实践
  • 理解模块间的职责划分

文档更新日志

日期版本更新内容作者
2026-01-121.0.0初始版本,创建文档规划AI Assistant

注意事项

  1. 本文档只关注后端架构,不涉及前端实现
  2. 所有代码路径相对于项目根目录 /Users/tycoding/data/langchat/langchat-pro
  3. 文档会随着代码演进持续更新

反馈和贡献

如有文档错误或建议,请通过以下方式反馈: