文档结构概览
本文档目录包含了 LangChat Pro 后端系统的详细架构设计说明,旨在帮助开发人员快速理解各个功能模块的实现和调用链路。目录结构
各文档说明
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适配模式
文档阅读建议
入门开发人员
- 先阅读
01-整体架构概览.md了解系统全貌 - 再阅读
02-Chat服务架构.md理解核心流程 - 然后根据具体需求阅读相关专题文档
模块开发人员
- Chat功能开发: 02, 03, 04
- 知识库开发: 05, 06, 07
- 插件开发: 08, 09
- 工作流开发: 10
- 实时通信开发: 11
- 集成开发: 12
架构师/高级开发
- 阅读全部文档
- 关注设计模式和最佳实践
- 理解模块间的职责划分
文档更新日志
| 日期 | 版本 | 更新内容 | 作者 |
|---|---|---|---|
| 2026-01-12 | 1.0.0 | 初始版本,创建文档规划 | AI Assistant |
注意事项
- 本文档只关注后端架构,不涉及前端实现
- 所有代码路径相对于项目根目录
/Users/tycoding/data/langchat/langchat-pro - 文档会随着代码演进持续更新
反馈和贡献
如有文档错误或建议,请通过以下方式反馈:- 提交 Issue
- 提交 Pull Request
- 联系: [email protected]

