架构设计
系统概述
OmniDev 平台采用微服务架构,主要组件如下:
┌─────────────────────────────────────────────────┐
│ 前端 │
│ (Next.js / React) │
└─────────────────────┬───────────────────────────┘
│
┌─────────────────────▼───────────────────────────┐
│ 网关 │
│ (Go / Gin / gRPC) │
└──┬──────────┬──────────┬──────────┬─────────────┘
│ │ │ │
▼ ▼ ▼ ▼
┌──────┐ ┌──────┐ ┌──────┐ ┌──────────┐
│ 聊天 │ │ RAG │ │ 认证 │ │ 工作流 │
│ 服务 │ │ 服务 │ │ 服务 │ │ (Temporal)│
└──────┘ └──────┘ └──────┘ └──────────┘核心组件
网关
- HTTP API 服务器
- 请求路由和中间件
- 认证和授权
聊天服务
- LLM 提供商集成
- 会话管理
- 流式响应
RAG 服务
- 文档摄入
- 嵌入向量生成
- 向量搜索
工作流引擎
- 可视化工作流构建器
- 通过 Temporal 进行任务编排
- 事件驱动执行
数据流
- 用户通过前端发送请求
- 网关进行认证并路由到相应服务
- 服务处理请求并返回响应
- 通过 WebSocket 或 SSE 进行实时更新