f7a720204a
- 移除 GovAI, nomifun-tauri, 算力盒子 的 submodule 引用 - 添加所有子项目的完整源代码 - 保留原始 .git 为 .git.bak 备份
28 KiB
28 KiB
通用AI工作台底座平台 — 架构演进方案
文档编号:ARCH-EVOL-001 版本:v1.0.0 日期:2026-07-03 状态:初稿
1. 项目愿景与定位
1.1 核心目标
构建一个领域无关、部署灵活、能力开放的通用AI工作台底座平台,支持企业、政府、教育三大领域的AI应用快速落地。
1.2 关键特性
| 特性 | 描述 |
|---|---|
| 底座优先 | 提供通用原子能力,业务逻辑通过配置和扩展实现 |
| 多租户本地部署 | 每个租户数据隔离,支持私有化部署 |
| 领域适配层 | 通过主题、技能包、知识库模板实现领域定制 |
| 开放能力总线 | MCP + REST,任意智能体可接入 |
| 渐进式演进 | 从最小可用到完整平台,平滑升级路径 |
1.3 目标用户画像
| 领域 | 典型用户 | 核心痛点 |
|---|---|---|
| 政府 | 政务办公人员、科室干部 | 机密数据不敢上云、公文写作效率低、政策检索困难 |
| 企业 | 行政、财务、法务、销售 | 流程繁琐、知识分散、重复劳动多 |
| 教育 | 教师、科研人员、教务管理 | 备课耗时、论文写作繁琐、数据分析困难 |
2. 架构设计
2.1 总体架构
┌─────────────────────────────────────────────────────────────────────────┐
│ 租户层 (Tenant Layer) │
│ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐ │
│ │ 政府租户 │ │ 企业租户 │ │ 教育租户 │ │ 更多租户... │ │
│ │ 政务蓝主题 │ │ 企业蓝主题 │ │ 学术蓝主题 │ │ 自定义主题 │ │
│ └─────────────┘ └─────────────┘ └─────────────┘ └─────────────┘ │
├─────────────────────────────────────────────────────────────────────────┤
│ 领域适配层 (Domain Layer) │
│ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐ │
│ │ 技能包商店 │ │ 知识库模板 │ │ 应用模板 │ │
│ │ (Skills) │ │ (Templates) │ │ (Apps) │ │
│ └─────────────┘ └─────────────┘ └─────────────┘ │
├─────────────────────────────────────────────────────────────────────────┤
│ 核心引擎层 (Engine Layer) │
│ ┌───────────┐ ┌───────────┐ ┌───────────┐ ┌───────────┐ ┌───────────┐ │
│ │ Agent │ │ Skills │ │ Knowledge │ │ MCP │ │ Channels │ │
│ │ Engine │ │ System │ │ RAG │ │ Gateway │ │ Bus │ │
│ └───────────┘ └───────────┘ └───────────┘ └───────────┘ └───────────┘ │
├─────────────────────────────────────────────────────────────────────────┤
│ 基础设施层 (Infra Layer) │
│ ┌───────────┐ ┌───────────┐ ┌───────────┐ ┌───────────┐ │
│ │ SQLite │ │ Auth │ │ Storage │ │ Event │ │
│ │ (Local) │ │ Service │ │ Service │ │ Bus │ │
│ └───────────┘ └───────────┘ └───────────┘ └───────────┘ │
└─────────────────────────────────────────────────────────────────────────┘
2.2 核心分层职责
| 层级 | 职责 | 扩展点 |
|---|---|---|
| 租户层 | 品牌定制、主题切换、租户配置 | 新增领域时注册主题包 |
| 领域适配层 | 技能包管理、知识库模板、应用市场 | 扩展点最多,按需加载 |
| 核心引擎层 | AI对话、自动化、技能执行、RAG、MCP | 稳定,新增Agent类型 |
| 基础设施层 | 数据持久化、认证、文件存储、事件总线 | 底层能力,变更少 |
2.3 技术选型
┌─────────────────────────────────────────────────────────────────┐
│ 底座技术栈 │
├─────────────────────────────────────────────────────────────────┤
│ Rust (nomifun-tauri后端) │ 企业/政府首选(性能+安全) │
│ ──────────────────────────────────────────────────────────── │
│ Python Worker (可选扩展) │ AI模型/PPT生成等重型计算 │
│ ──────────────────────────────────────────────────────────── │
│ React 19 + Vite (前端) │ 跨平台,成熟生态 │
│ ──────────────────────────────────────────────────────────── │
│ SQLite + sqlx (本地存储) │ 零依赖部署,数据主权清晰 │
│ ──────────────────────────────────────────────────────────── │
│ PostgreSQL (可选云端存储) │ 多租户共享场景 │
└─────────────────────────────────────────────────────────────────┘
3. 模块划分
3.1 核心模块矩阵
| 模块 | 复用 nomifun-tauri | 需新增 | 优先级 |
|---|---|---|---|
| Agent Engine | 100% | - | P0 |
| Skills System | 100% | - | P0 |
| Knowledge RAG | 80% | 领域模板 | P1 |
| MCP Gateway | 100% | - | P0 |
| Channels Bus | 90% | 领域适配 | P1 |
| Auth Service | 60% | 多租户适配 | P0 |
| Storage Service | 80% | 云端存储 | P2 |
| Theme System | 30% | 领域主题引擎 | P1 |
| App Templates | 20% | 应用商店框架 | P1 |
| Tenant Config | 0% | 新建核心模块 | P0 |
3.2 租户配置模型
// 租户配置核心模型
struct TenantConfig {
id: Uuid,
name: String,
domain: DomainType, // 政府 / 企业 / 教育 / 自定义
// 品牌定制
branding: BrandingConfig {
logo_url: String,
primary_color: Color,
theme_preset: ThemePreset,
},
// 功能开关
features: FeatureFlags {
app_store: bool,
skill_market: bool,
multi_user: bool,
cloud_sync: bool,
},
// 数据策略
data_policy: DataPolicy {
storage: StorageType, // local / cloud / hybrid
retention_days: u32,
encryption: bool,
},
// 领域配置
domain_config: DomainConfig,
}
3.3 领域适配模型
// 领域配置
enum DomainConfig {
Government(GovConfig), // 政务领域
Enterprise(EntConfig), // 企业领域
Education(EduConfig), // 教育领域
Custom(CustomConfig), // 自定义领域
}
// 政务配置示例
struct GovConfig {
// 预置应用分类
app_categories: Vec<AppCategory>,
// 公文模板
doc_templates: Vec<DocTemplate>,
// 知识库分类
knowledge_domains: Vec<KnowledgeDomain>,
// 审批流程
approval_workflows: Vec<Workflow>,
}
// 企业配置示例
struct EntConfig {
// 部门模板
departments: Vec<Department>,
// 业务流程
business_processes: Vec<Process>,
// 知识库分类
knowledge_domains: Vec<KnowledgeDomain>,
}
4. 演进路线
Phase 1: 底座夯实 (MVP)
目标: 完善多租户基础设施,建立领域扩展框架
1.1 租户系统
- 租户注册与配置管理
- 多租户数据隔离 (SQLite schema per tenant)
- 租户级别配置持久化
- 租户迁移与备份机制
1.2 主题引擎
- 动态主题切换系统
- 预设主题包:
- 政务蓝主题 (GovAI配色体系)
- 企业专业主题
- 学术清新主题
- 主题预览与即时切换
1.3 领域框架
- 领域配置schema定义
- 领域初始化向导
- 领域特定技能包注册
- 领域知识库模板
1.4 基础设施增强
- 多用户认证系统 (OAuth/SSO集成预留)
- 角色权限模型 (RBAC)
- 操作审计日志
- 配置导出/导入
Phase 1 交付物:
底座平台 v1.0
├── 多租户管理后台
├── 3套预设主题
├── 领域配置框架
└── 完整文档
Phase 2: 领域深化 (Domain Depth)
目标: 深耕政府/企业/教育三大领域,沉淀领域资产
2.1 政府领域包
- 政务应用商店
- 公文写作助手
- 政策法规检索
- 会议纪要生成
- 信访答复辅助
- 政务知识库模板
- 法规库分类
- 政策解读模板
- 公文格式库
- 政务审批流程
- 多级审核
- 痕迹保留
- 归档管理
2.2 企业领域包
- 企业应用商店
- 合同审查助手
- 财务报告生成
- 销售话术优化
- HR招聘辅助
- 企业知识库模板
- 产品知识库
- 流程规范库
- 培训资料库
- 企业协同流程
- 部门协作
- 任务分发
- 进度追踪
2.3 教育领域包
- 教育应用商店
- 教案生成助手
- 论文润色工具
- 考试命题辅助
- 学术翻译助手
- 教育知识库模板
- 课程资料库
- 学术文献库
- 试题题库
- 教育分析工具
- 学情分析
- 教学质量评估
- 科研趋势分析
2.4 技能市场
- 技能包发布与管理
- 技能包市场浏览
- 技能包安装/卸载
- 技能包评分与评论
- 技能包版本管理
Phase 2 交付物:
底座平台 v2.0
├── 3套完整领域包
├── 技能市场
├── 知识库模板市场
└── 领域应用商店
Phase 3: 生态扩展 (Ecosystem)
目标: 建立开放生态,支持第三方扩展
3.1 开放API
- 租户管理 API
- 应用管理 API
- 知识库 API
- 技能包 API
- Webhook 事件订阅
3.2 插件系统
- 插件SDK (Rust/Python/JS)
- 插件市场
- 插件沙箱执行
- 插件审核机制
3.3 数据集成
- 企业微信/钉钉/飞书集成
- LDAP/AD 目录集成
- 数据库直连 (MySQL/PostgreSQL)
- 文件存储集成 (S3/OSS/MinIO)
3.4 高级功能
- 多租户联邦学习
- 跨租户知识共享
- 私有模型部署支持
- 边缘节点支持
Phase 3 交付物:
底座平台 v3.0
├── 完整开放API
├── 插件系统
├── 企业集成适配器
└── 联邦学习框架
5. 各领域适配方案
5.1 政府领域适配
┌─────────────────────────────────────────────────────────────┐
│ 政府领域架构 │
├─────────────────────────────────────────────────────────────┤
│ 特色能力 │
│ ├─ 数据不出内网 (本地SQLite优先) │
│ ├─ 等保合规 (审计日志、操作留痕) │
│ ├─ 公文格式标准化 (党政/行政/人大等) │
│ ├─ 多级审批流程 │
│ └─ 涉密数据隔离 │
│ │
│ 借鉴 GovAI │
│ ├─ 政务蓝配色体系 │
│ ├─ 多租户用户管理 │
│ ├─ 应用审核机制 │
│ └─ RAG知识库分类 │
└─────────────────────────────────────────────────────────────┘
5.2 企业领域适配
┌─────────────────────────────────────────────────────────────┐
│ 企业领域架构 │
├─────────────────────────────────────────────────────────────┤
│ 特色能力 │
│ ├─ 多部门协同 (权限矩阵) │
│ ├─ 业务系统集成 (ERP/CRM/OA) │
│ ├─ 私有知识沉淀 │
│ ├─ 流程自动化 │
│ └─ 成本控制 (token配额管理) │
│ │
│ 扩展方向 │
│ ├─ 销售域: 客户画像、话术推荐、竞品分析 │
│ ├─ 研发域: 代码审查、文档生成、技术方案 │
│ ├─ 财务域: 报表分析、预算预测、合规检查 │
│ └─ HR域: 简历筛选、面试题库、入职指引 │
└─────────────────────────────────────────────────────────────┘
5.3 教育领域适配
┌─────────────────────────────────────────────────────────────┐
│ 教育领域架构 │
├─────────────────────────────────────────────────────────────┤
│ 特色能力 │
│ ├─ 学术规范 (引用格式、查重) │
│ ├─ 多语言支持 (学术翻译) │
│ ├─ 版权合规 (知识库版权检测) │
│ ├─ 教研协同 │
│ └─ 学生隐私保护 (FERPA/GDPR) │
│ │
│ 扩展方向 │
│ ├─ K12: 教案生成、试题组卷、作业批改 │
│ ├─ 高等教育: 论文写作、科研助手、学术检索 │
│ ├─ 企业培训: 课程开发、培训评估、能力认证 │
│ └─ 终身学习: 技能提升、职业规划、学习推荐 │
└─────────────────────────────────────────────────────────────┘
6. 数据架构
6.1 多租户数据隔离策略
| 策略 | 适用场景 | 优点 | 缺点 |
|---|---|---|---|
| Schema隔离 | 高安全租户 | 完全隔离、性能好 | 管理复杂 |
| 行级隔离 | 普通租户 | 管理简单、成本低 | 隔离性弱 |
| 混合模式 | 敏感数据 | 灵活 | 实现复杂 |
6.2 数据流设计
┌──────────────────────────────────────────────────────────────────┐
│ 数据流架构 │
├──────────────────────────────────────────────────────────────────┤
│ │
│ 用户输入 ──▶ 租户路由 ──▶ 领域处理器 ──▶ 知识库检索 │
│ │ │
│ ▼ │
│ Agent Engine │
│ │ │
│ ▼ │
│ 输出存储 ◀── 审计日志 ◀── 响应生成 ◀── 工具调用 │
│ │
│ 知识库写入: │
│ 文档上传 ──▶ 领域分块 ──▶ 向量嵌入 ──▶ 租户向量库 │
│ │
└──────────────────────────────────────────────────────────────────┘
6.3 知识库RAG增强
// 领域感知RAG配置
struct DomainRAGConfig {
// 分块策略
chunk_strategy: ChunkStrategy,
// 嵌入模型
embedding_model: String,
// 检索策略
retrieval: RetrievalConfig {
top_k: u32,
similarity_threshold: f32,
rerank: bool,
},
// 领域特定后处理
post_processors: Vec<Box<dyn PostProcessor>>,
}
// 后处理器示例
trait PostProcessor: Send + Sync {
fn process(&self, chunks: &mut Vec<RetrievedChunk>, query: &str);
}
// 领域后处理器
struct GovPostProcessor {
// 政策时效性权重
policy_date_weight: f32,
// 法规效力等级权重
legal_level_weight: f32,
}
7. 安全架构
7.1 安全层级
┌─────────────────────────────────────────────────────────────┐
│ 安全架构 │
├─────────────────────────────────────────────────────────────┤
│ │
│ 身份认证 │
│ ├─ 多因素认证 (TOTP/WebAuthn) │
│ ├─ SSO集成 (SAML/OIDC) │
│ └─ 会话管理 (JWT + 刷新令牌) │
│ │
│ 访问控制 │
│ ├─ RBAC (角色权限) │
│ ├─ ABAC (属性权限) │
│ └─ 数据边界 (租户隔离) │
│ │
│ 数据安全 │
│ ├─ 传输加密 (TLS 1.3) │
│ ├─ 存储加密 (AES-256) │
│ └─ 密钥管理 (HSM/KMS预留) │
│ │
│ 审计合规 │
│ ├─ 操作审计 (CRUD全记录) │
│ ├─ 数据导出审计 │
│ └─ 合规报告生成 │
│ │
└─────────────────────────────────────────────────────────────┘
7.2 政府合规特别设计
| 合规要求 | 实现方案 |
|---|---|
| 等保2.0 | 安全计算环境、安全通信网络、安全区域边界 |
| 数据不出网 | 本地SQLite优先、可选单向网闸 |
| 隐私保护 | 数据脱敏、匿名化处理、最小采集 |
| 审计追溯 | 完整操作日志、不可篡改存储 |
8. 部署架构
8.1 部署模式
| 模式 | 适用场景 | 数据位置 | 维护成本 |
|---|---|---|---|
| 单机本地 | 个人/小团队 | 本地磁盘 | 低 |
| 局域网私有 | 政府部门/敏感企业 | 内网服务器 | 中 |
| 私有云 | 中大型企业 | 私有云存储 | 中 |
| 混合云 | 多分支机构 | 边缘+中心 | 高 |
8.2 部署拓扑
┌─────────────────────────────────────────────────────────────┐
│ 私有化部署拓扑 │
├─────────────────────────────────────────────────────────────┤
│ │
│ [客户端] ──▶ [反向代理/Nginx] ──▶ [NomiFun Backend] │
│ │ │
│ ▼ │
│ ┌───────────────┐ │
│ │ SQLite │ │
│ │ (租户数据) │ │
│ └───────────────┘ │
│ │ │
│ ┌───────────────┐ │
│ │ 文件存储 │ │
│ │ (本地/MinIO) │ │
│ └───────────────┘ │
│ │
│ 可选扩展: │
│ ├─ [GPU节点] ──▶ LLM推理加速 │
│ ├─ [向量库] ──▶ pgvector高性能检索 │
│ └─ [备份服务] ──▶ 定时备份到对象存储 │
│ │
└─────────────────────────────────────────────────────────────┘
9. 迁移与演进策略
9.1 从 nomifun-tauri 迁移
nomifun-tauri (当前)
│
│ Phase 1: 多租户抽象层
▼
┌─────────────────────────┐
│ + TenantConfig │
│ + TenantContext │
│ + DomainLayer │
│ + ThemeEngine │
└─────────────────────────┘
│
│ Phase 2: 领域资产
▼
┌─────────────────────────┐
│ + GovDomainPack │
│ + EntDomainPack │
│ + EduDomainPack │
│ + SkillMarket │
└─────────────────────────┘
│
│ Phase 3: 生态开放
▼
┌─────────────────────────┐
│ + PluginSDK │
│ + OpenAPI │
│ + EnterpriseAdapters │
└─────────────────────────┘
9.2 从 GovAI 借鉴
| GovAI 资产 | 借鉴方式 |
|---|---|
| 政务蓝配色 | 转为nomifun主题包 |
| 应用类型系统 | 适配为nomifun Skills |
| 多租户管理 | 重写(架构不同) |
| RAG流程 | 直接复用思路 |
| PPT生成 | 封装为Skill |
10. 风险与挑战
10.1 技术风险
| 风险 | 影响 | 缓解措施 |
|---|---|---|
| 多租户隔离不完善 | 数据泄露 | Phase1重点测试 |
| 领域抽象过度设计 | 灵活性降低 | 按需扩展 |
| 性能瓶颈 | 用户体验差 | 性能测试+优化 |
10.2 业务风险
| 风险 | 影响 | 缓解措施 |
|---|---|---|
| 领域需求差异大 | 开发成本高 | MVP验证+迭代 |
| 竞品压力 | 市场占用低 | 差异化定位 |
| 合规不确定性 | 合规风险 | 持续跟踪政策 |
11. 成功指标
11.1 技术指标
| 指标 | 目标值 |
|---|---|
| 冷启动时间 | < 3s |
| 对话响应延迟 (TTFT) | < 500ms (本地模型) |
| 租户创建时间 | < 1min |
| 主题切换延迟 | < 100ms |
11.2 业务指标
| 指标 | Phase 1 | Phase 2 | Phase 3 |
|---|---|---|---|
| 租户数 | 10 | 100 | 1000+ |
| 活跃用户/租户 | 10 | 50 | 200+ |
| 技能包数量 | 20 | 200 | 1000+ |
| 知识库文档数/租户 | 100 | 1000 | 10000+ |
12. 后续步骤
12.1 立即行动
- Phase 1 详细设计: 完善多租户抽象层设计
- 技术验证: 实现最小租户隔离Demo
- 主题系统: 基于GovAI配色创建政务蓝主题
12.2 决策点
- 确认多租户隔离策略 (Schema vs 行级)
- 确定向量数据库选型 (SQLite-vss vs pgvector)
- 明确商业化路径
文档结束 — 如有疑问或需要细化特定模块,请告知。