Files
erp-ass/docs/superpowers/specs/2026-03-21-erp-ai-assistant-design.md
dazhuang acd73431ae feat: implement ERP AI Assistant Phase 1
Backend (FastAPI + SQLAlchemy + Claude API + RAG):
- Config management with Pydantic v2
- Database engine with connection pooling and SQL injection prevention
- AI engine with Claude API integration (support custom base URL)
- RAG engine with ChromaDB and sentence-transformers
- Requirement analysis service
- Config generation service
- Executor engine with SQL validation
- REST API endpoints: /analyze, /generate, /execute

Frontend (Vue 3 + Element Plus + Pinia):
- Complete 3-step workflow: analyze → generate → execute
- Step indicator with progress visualization
- Analysis result display with field table
- SQL preview with monospace font
- Execute confirmation dialog with safety warning
- Execution result display
- State management with Pinia
- API service integration

Security:
- SQL injection prevention with parameterized queries
- Dangerous SQL operation blocking
- Database password URL encoding
- Transaction auto-rollback
- Pydantic config validation

Features:
- Natural language requirement analysis
- Automated SQL configuration generation
- Safe execution with human review
- LAN access support
- Custom Claude API endpoint support

Documentation:
- README with quick start guide
- Quick start guide
- LAN access configuration
- Dependency fixes guide
- Claude API configuration
- Git operation guide
- Implementation report

Dependencies fixed:
- numpy<2.0.0 for chromadb compatibility
- sentence-transformers==2.7.0 for huggingface_hub compatibility

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-21 14:23:20 +00:00

26 KiB
Raw Blame History

ERP智能助手系统设计文档

版本: 1.0 日期: 2026-03-21 项目: 一零软件结构化开发平台AI助手 架构方案: 单体内核架构


一、项目概述

1.1 项目目标

开发一个AI助手系统自动化操作一零软件结构化开发平台实现

  1. 自动化功能开发 - 根据自然语言或结构化需求,自动配置页面、菜单、控件、权限等
  2. 错误排查 - 监控SQL日志、识别错误、定位问题Phase 2
  3. 系统优化 - 性能分析、缓存管理、权限优化Phase 2

1.2 核心价值

  • 提升开发效率 - 从需求到配置上线,从数小时缩短到几分钟
  • 降低技术门槛 - 业务人员也能通过自然语言开发功能
  • 保证配置质量 - AI遵循最佳实践减少人为错误
  • 知识沉淀 - 自动积累配置案例,持续优化

1.3 项目范围

Phase 1当前前台Web交互界面 + 自动化功能开发 Phase 2未来:后台自动化服务 + 错误排查 + 系统优化


二、系统架构

2.1 总体架构

采用单体内核架构Python + Vue 3技术栈

┌─────────────────────────────────────┐
│   前端层 - Vue 3                     │
│   - 需求输入模块                     │
│   - 配置预览模块                     │
│   - 执行监控模块                     │
└─────────────┬───────────────────────┘
              │ HTTP/WebSocket
┌─────────────▼───────────────────────┐
│   后端层 - FastAPI                   │
│   ├─ API网关层                       │
│   ├─ 业务逻辑层                      │
│   │  ├─ 需求解析引擎                 │
│   │  ├─ 知识库引擎RAG            │
│   │  ├─ 配置生成引擎                 │
│   │  └─ 执行引擎                     │
│   └─ 数据访问层                      │
└─────────────┬───────────────────────┘
              │
       ┌──────▼──────┐
       │ SQL Server  │
       │ (ERP数据库)  │
       └─────────────┘

2.2 技术栈选型

前端

  • Vue 3.3 + Vite 5
  • Element Plus 2.4UI组件库
  • Monaco EditorSQL编辑器语法高亮
  • AxiosHTTP客户端
  • Pinia状态管理

后端

  • FastAPI 0.104Web框架
  • SQLAlchemy 2.0ORM
  • pyodbc 5.0SQL Server连接
  • Claude APIAI引擎
  • ChromaDB 0.4(向量数据库)
  • sentence-transformers文本向量化

部署

  • Docker + Docker Compose
  • Nginx前端静态托管

三、核心数据流

3.1 完整工作流程

用户输入需求(自然语言/表单)
         ↓
步骤1: 需求解析
  - 调用Claude API + 知识库检索
  - 输出:结构化需求文档
         ↓
步骤2: 配置生成
  - 知识库检索:相似案例 + 平台规则
  - 生成配置方案建表SQL + 配置SQL
         ↓
步骤3: 人工审核
  - Web界面展示配置预览
  - 用户确认/修改/重新生成
         ↓
步骤4: 执行配置
  - 开启数据库事务
  - 按序执行SQL
  - 记录执行日志
  - 成功提交/失败回滚
         ↓
步骤5: 结果反馈
  - 显示执行结果
  - 提供后续操作建议

3.2 关键设计原则

  • 事务保护:所有数据库操作在一个事务中,失败自动回滚
  • 执行日志:记录每步操作,便于审计和排查
  • 预览机制:执行前让用户确认,避免误操作
  • 知识驱动:所有配置基于知识库,确保符合规范

四、知识库系统设计

4.1 三层知识结构

层次1: 文档知识库

  • 平台介绍文档(窗体类型、控件类型、配置流程)
  • 操作说明书(各类单据配置案例)
  • 实施文档(真实项目实施记录)
  • 数据库设计文档

处理方式:文档 → 分块(500字) → 向量化 → ChromaDB

层次2: 数据库元数据

  • 表结构信息(表名、字段、主键、外键、索引)
  • 配置表数据已有功能号、页面配置、菜单配置、IKEY配置
  • 存储过程和函数(名称、参数、用途)

获取方式:实时查询 INFORMATION_SCHEMA 系统视图

层次3: 案例知识库

  • 成功案例完整配置流程、SQL脚本、配置参数
  • 失败案例(错误信息、原因分析、解决方案)
  • 最佳实践(命名规范、字段设计规范、性能优化建议)

索引方式:向量化 → ChromaDB标签化 → 功能标签

4.2 知识检索策略

用户需求: "创建销售订单管理页面"
         ↓
并行查询三个知识库:
  1. 文档知识库 → 检索销售订单相关文档
  2. 元数据库 → 查询现有销售相关表和功能号
  3. 案例库 → 检索相似的销售订单案例
         ↓
知识融合 → 发送给Claude API生成配置方案

4.3 知识库更新机制

  • 初始构建:首次启动时扫描所有文档和数据库
  • 增量更新
    • 每次成功配置后,自动保存为新案例
    • 监控数据库结构变更,更新元数据缓存
    • 定期(每天)重新索引文档

五、数据库操作与安全机制

5.1 数据库操作引擎

核心组件

  1. 连接管理

    • 连接池配置最大20连接最小5连接
    • 多数据库支持主数据库DMPF_HY + 系统库master
    • 权限隔离(读操作只读账号,写操作管理员账号)
  2. 事务管理

    • 事务流程:开启 → 执行SQL列表 → 记录日志 → 提交/回滚
    • 嵌套事务处理使用SAVEPOINT支持部分回滚
    • 超时控制单个事务最长5分钟
  3. SQL执行引擎

    • SQL类型识别DDL/DML/DQL
    • 执行策略:
      • DDL: 独立事务,执行前备份
      • DML: 批量事务,失败回滚
      • DQL: 只读事务使用NOLOCK
    • 性能监控:记录执行时间,慢查询告警(>1秒
  4. 安全机制

    • SQL注入防护参数化查询、SQL白名单校验、危险操作拦截
    • 权限校验:表级、字段级权限检查
    • 数据备份执行前自动备份保留7天
    • 操作审计记录所有SQL操作

5.2 执行日志表设计

CREATE TABLE AI_ASSISTANT_LOG (
    LOG_ID INT IDENTITY(1,1) PRIMARY KEY,
    SESSION_ID VARCHAR(50),          -- 会话ID
    USER_ID VARCHAR(50),             -- 操作用户
    ACTION_TYPE VARCHAR(50),         -- 操作类型
    SQL_CONTENT NVARCHAR(MAX),       -- SQL内容
    STATUS VARCHAR(20),              -- SUCCESS/FAILED
    ERROR_MESSAGE NVARCHAR(MAX),     -- 错误信息
    EXECUTION_TIME INT,              -- 执行时间(毫秒)
    CREATE_TIME DATETIME DEFAULT GETDATE()
)

5.3 风险控制策略

高风险操作(需要二次确认):

  • DROP TABLE
  • ALTER TABLE删除字段
  • 删除功能号
  • 修改系统配置

中风险操作(需要审核):

  • CREATE TABLE
  • INSERT配置数据
  • 创建存储过程

低风险操作(自动执行):

  • SELECT查询
  • 查看配置信息

六、前端界面设计

6.1 主界面布局

三栏式布局

顶部导航栏
├─ Logo: ERP智能助手
├─ 当前数据库连接状态
├─ 用户信息
└─ 系统设置

左侧边栏(功能导航)
├─ 💬 新建功能
├─ 📋 历史记录
├─ 📚 知识库管理
├─ ⚙️ 系统设置
└─ 📊 统计分析

主内容区(动态切换)

6.2 核心页面

页面1: 新建功能

步骤指示器:

① 输入需求 → ② 生成配置 → ③ 审核确认 → ④ 执行 → ⑤ 完成

输入方式:

  • 自然语言输入框ChatGPT风格对话
  • 结构化表单(字段、类型、验证规则)

表单字段:

  • 功能名称、功能号、窗体类型
  • 主表字段列表(字段名、类型、必填、说明)
  • 从表字段列表
  • 业务需求(审核流程、打印功能、关联表等)

页面2: 配置预览

Tab切换

  • SQL脚本语法高亮显示
  • 表结构(图示)
  • 页面配置
  • 执行计划

风险提示:

  • 将创建的表数量
  • 将插入的配置记录数量
  • 操作可回滚提示

操作按钮:

  • 返回修改
  • 保存为模板
  • 确认执行

页面3: 执行监控

执行状态:进度条 + 当前步骤

执行日志:

  • 实时滚动显示
  • 每步显示:时间、步骤名称、状态、耗时
  • 颜色标识:成功(绿色)、失败(红色)、执行中(蓝色)

页面4: 执行结果

摘要信息:

  • 创建的表数量
  • 创建的功能号
  • 创建的菜单
  • 总耗时

快速操作:

  • 打开新页面
  • 查看配置
  • 继续配置权限

建议后续操作:

  • 配置按钮
  • 配置公式
  • 配置权限

页面5: 历史记录

筛选条件:时间范围、状态

记录列表:时间、功能名称、状态、操作按钮

6.3 交互细节

  • 实时验证:字段名输入时自动检查重名
  • 智能提示:字段类型下拉时显示常用类型
  • 快捷操作支持键盘快捷键Ctrl+Enter提交
  • 错误高亮SQL错误时红色标记错误行

七、后端API设计

7.1 基础信息

  • 基础URL: http://localhost:8000/api/v1
  • 认证方式: JWT Token
  • 返回格式: JSON
  • 错误处理: 统一错误响应格式

7.2 核心API接口

需求解析API

POST /api/analyze
请求体: {
  "input_type": "natural_language" | "structured",
  "content": "需求描述"
}
响应: 结构化需求文档JSON

配置生成API

POST /api/generate
请求体: {
  "session_id": "uuid",
  "requirements": { ... }
}
响应: 完整配置方案SQL + 风险评估)

执行配置API

POST /api/execute
请求体: {
  "session_id": "uuid",
  "confirmed": true,
  "backup_enabled": true
}
响应: 执行状态

执行状态查询API

GET /api/execution/{execution_id}
响应: 执行进度、日志、状态

回滚API

POST /api/rollback/{execution_id}
响应: 回滚结果

历史记录API

GET /api/history?start_date=&end_date=&status=&page=&page_size=
响应: 历史记录列表

知识库管理API

POST /api/knowledge/documents - 上传文档
GET /api/knowledge/search?query=&top_k= - 搜索知识库

数据库元数据API

GET /api/metadata/tables - 查询表列表
GET /api/metadata/tables/{table_name} - 查询表结构详情
GET /api/metadata/functions - 查询现有功能号列表

7.3 统一错误响应格式

{
  "error": {
    "code": "ERROR_CODE",
    "message": "错误描述",
    "details": { ... }
  }
}

7.4 错误码定义

1000-1999: 客户端错误(参数验证、认证、权限)
2000-2999: 业务逻辑错误(功能号已存在、配置冲突)
3000-3999: 数据库错误SQL执行失败、连接超时、事务回滚
4000-4999: AI服务错误Claude API、知识库检索、需求解析
5000-5999: 系统错误(内部服务器错误、服务不可用)

7.5 API中间件

  1. 认证中间件 - 验证JWT Token提取用户信息
  2. 日志中间件 - 记录请求时间、参数、响应时间、状态
  3. 错误处理中间件 - 捕获所有异常,返回统一格式错误
  4. 速率限制中间件 - 限制每分钟请求数防止API滥用

八、AI引擎设计

8.1 核心组件

  • Claude API客户端
  • Prompt模板管理
  • RAG检索引擎
  • 上下文管理器

8.2 Prompt工程设计

System Prompt

你是一个ERP平台配置专家助手专门帮助开发人员配置一零软件结构化开发平台。

你的职责:
1. 理解用户的功能需求
2. 设计合理的数据库表结构
3. 生成符合平台规范的配置方案
4. 提供最佳实践建议

平台核心知识:
- 窗体类型0-普通、3-单树、4-树表、5-单据列表、11-一对多等
- 标准字段IKEY主键、COMPANYID、DOCCODE、DOCDATE、DOCSTATUS等
- 配置流程:建表 → 配置功能号 → 配置页面 → 配置菜单 → 配置IKEY
- 命名规范SA_销售、PU_采购、ST_库存、FI_财务

输出要求:
- 必须提供完整的SQL脚本
- 必须遵循平台配置规范
- 必须包含风险评估
- 使用JSON格式输出

需求解析Prompt模板

用户需求:{user_input}

参考知识:
{knowledge_context}

现有相关表:
{existing_tables}

请分析用户需求输出结构化需求文档JSON格式

配置生成Prompt模板

结构化需求:
{requirements}

平台配置规范:
{platform_rules}

相似案例:
{similar_cases}

请生成完整的配置方案,包括:
1. 建表SQL主表、从表、日志表
2. 功能号配置SQL
3. 页面配置SQL
4. 菜单配置SQL
5. IKEY配置SQL

错误诊断Prompt模板

错误信息:
{error_message}

执行的SQL
{sql_content}

数据库上下文:
{db_context}

请分析错误原因,并提供解决方案

8.3 RAG检索策略

为需求分析检索知识

def retrieve_for_analysis(user_input: str):
    # 1. 从文档库检索配置流程、控件说明
    docs = vector_search(query=user_input, collection="documents", top_k=3)

    # 2. 从案例库检索相似案例
    cases = vector_search(query=user_input, collection="cases", top_k=2)

    # 3. 查询相关表结构
    tables = metadata_query(keyword=extract_keyword(user_input))

    return merge_results(docs, cases, tables)

为配置生成检索知识

def retrieve_for_generation(requirements: dict):
    # 1. 检索平台配置规范
    rules = get_platform_rules(form_type=requirements["窗体类型"])

    # 2. 检索相似功能的完整配置
    similar = find_similar_functions(keywords=requirements["功能名称"])

    # 3. 获取标准字段模板
    std_fields = get_standard_fields(form_type=requirements["窗体类型"])

    return merge_results(rules, similar, std_fields)

8.4 上下文管理

class ContextManager:
    max_tokens = 200000  # Claude最大上下文
    reserved_tokens = 50000  # 预留给输出

    def build_context(session_id, user_input):
        messages = []

        # 1. System prompt
        messages.append({"role": "user", "content": SYSTEM_PROMPT})

        # 2. 历史对话
        messages.extend(get_session_history(session_id))

        # 3. 检索知识
        knowledge = retriever.retrieve_for_analysis(user_input)
        knowledge_text = format_knowledge(knowledge)

        # 4. 当前问题
        messages.append({
            "role": "user",
            "content": format_prompt(user_input, knowledge_text)
        })

        # 5. 检查token数量必要时截断
        if count_tokens(messages) > max_tokens - reserved_tokens:
            messages = truncate_messages(messages)

        return messages

8.5 Claude API调用封装

class ClaudeEngine:
    def analyze_requirements(messages):
        response = client.messages.create(
            model="claude-sonnet-4-6",
            max_tokens=8192,
            temperature=0.7,
            messages=messages
        )
        return parse_json_response(response.content[0].text)

    def generate_config(requirements):
        response = client.messages.create(
            model="claude-sonnet-4-6",
            max_tokens=8192,
            temperature=0.5,  # 生成配置时降低随机性
            messages=build_context(requirements)
        )
        return parse_json_response(response.content[0].text)

8.6 智能建议引擎

def suggest_next_steps(execution_result: dict):
    suggestions = []

    # 检查是否配置了按钮
    if not has_buttons(execution_result["form_id"]):
        suggestions.append({
            "type": "配置按钮",
            "priority": "high",
            "description": "配置保存、审核、打印按钮"
        })

    # 检查是否需要公式
    if needs_formulas(execution_result):
        suggestions.append({
            "type": "配置公式",
            "priority": "medium",
            "description": "配置金额计算公式"
        })

    # 检查权限
    if not has_permissions(execution_result["form_id"]):
        suggestions.append({
            "type": "配置权限",
            "priority": "high",
            "description": "为角色分配操作权限"
        })

    return suggestions

九、项目结构

9.1 目录结构

erp-ai-assistant/
├── frontend/                    # Vue3前端
│   ├── src/
│   │   ├── views/              # 页面组件
│   │   │   ├── CreateFunction.vue
│   │   │   ├── History.vue
│   │   │   ├── Knowledge.vue
│   │   │   └── Settings.vue
│   │   ├── components/         # 可复用组件
│   │   │   ├── RequirementInput.vue
│   │   │   ├── ConfigPreview.vue
│   │   │   ├── ExecutionMonitor.vue
│   │   │   └── SqlEditor.vue
│   │   ├── api/                # API调用封装
│   │   ├── store/              # 状态管理
│   │   ├── router/             # 路由配置
│   │   ├── utils/              # 工具函数
│   │   └── App.vue
│   ├── package.json
│   └── vite.config.js
│
├── backend/                     # FastAPI后端
│   ├── app/
│   │   ├── main.py             # FastAPI应用入口
│   │   ├── api/                # API路由
│   │   ├── core/               # 核心引擎
│   │   │   ├── ai_engine.py
│   │   │   ├── rag_engine.py
│   │   │   ├── db_engine.py
│   │   │   └── executor.py
│   │   ├── models/             # 数据模型
│   │   ├── services/           # 业务逻辑层
│   │   ├── utils/              # 工具函数
│   │   └── config.py           # 配置管理
│   ├── requirements.txt
│   └── .env
│
├── knowledge_base/              # 知识库数据
│   ├── documents/              # 原始文档
│   ├── cases/                  # 配置案例
│   └── chroma_db/              # 向量数据库
│
├── scripts/                     # 工具脚本
│   ├── init_knowledge.py
│   ├── import_docs.py
│   └── backup_db.py
│
├── tests/                       # 测试
├── docker-compose.yml
├── Dockerfile.backend
├── Dockerfile.frontend
└── README.md

9.2 核心配置

后端依赖requirements.txt

fastapi==0.104.1
uvicorn[standard]==0.24.0
sqlalchemy==2.0.23
pyodbc==5.0.1
anthropic==0.18.1
chromadb==0.4.18
sentence-transformers==2.2.2
pydantic==2.5.0
loguru==0.7.2
python-jose[cryptography]==3.3.0

前端依赖package.json

{
  "dependencies": {
    "vue": "^3.3.8",
    "vue-router": "^4.2.5",
    "pinia": "^2.1.7",
    "axios": "^1.6.2",
    "element-plus": "^2.4.3",
    "monaco-editor": "^0.44.0",
    "sql-formatter": "^13.0.0"
  }
}

配置文件.env

APP_NAME=ERP AI Assistant
DB_SERVER=192.168.120.19
DB_NAME=DMPF_HY
ANTHROPIC_API_KEY=your-key
CLAUDE_MODEL=claude-sonnet-4-6
KNOWLEDGE_BASE_PATH=./knowledge_base
CHROMA_DB_PATH=./knowledge_base/chroma_db
EMBEDDING_MODEL=all-MiniLM-L6-v2

十、部署方案

10.1 开发环境

前端: http://localhost:5173 (Vite开发服务器)
后端: http://localhost:8000 (Uvicorn)
数据库: SQL Server (192.168.120.19)
知识库: 本地ChromaDB

10.2 生产环境

使用Docker Compose部署

version: '3.8'
services:
  backend:
    build: ./backend
    ports: ["8000:8000"]
    environment:
      - APP_ENV=production
      - ANTHROPIC_API_KEY=${ANTHROPIC_API_KEY}
    volumes:
      - ./knowledge_base:/app/knowledge_base
      - ./logs:/app/logs

  frontend:
    build: ./frontend
    ports: ["80:80"]
    depends_on: [backend]

前端使用Nginx托管静态文件反向代理API请求到后端。


十一、测试策略

11.1 单元测试

  • 测试范围工具函数、数据验证、SQL解析
  • 工具pytest
  • 覆盖率要求:>80%

11.2 集成测试

  • 测试范围API接口、数据库操作、AI引擎
  • 工具pytest + httpx
  • 测试数据库:专用测试库

11.3 端到端测试

  • 测试范围:完整的用户流程
  • 工具Playwright
  • 场景:新建功能完整流程(输入→生成→审核→执行→验证)

11.4 性能测试

  • 测试范围API响应时间、并发能力
  • 工具Locust
  • 指标:
    • API平均响应 < 500ms
    • 支持10并发用户
    • SQL执行 < 1s

十二、开发路线图

Phase 1: MVP核心功能4周

Week 1-2: 基础架构

  • 项目初始化
  • 数据库连接池实现
  • FastAPI基础框架搭建
  • Vue3项目搭建
  • 基础API实现

Week 3: AI引擎集成

  • Claude API集成
  • Prompt模板设计
  • 知识库构建(文档导入)
  • RAG检索实现

Week 4: 核心功能实现

  • 需求解析功能
  • 配置生成功能
  • 执行引擎实现
  • 前端界面完成

交付成果 ✓ 可以通过自然语言生成简单功能 ✓ Web界面可用 ✓ 核心流程打通

Phase 2: 完善功能3周

Week 5-6: 知识库完善

  • 导入所有文档资料
  • 提取数据库元数据
  • 收集配置案例
  • 优化检索效果

Week 7: 安全与优化

  • SQL注入防护
  • 事务回滚机制
  • 执行日志完善
  • 性能优化

交付成果 ✓ 知识库覆盖主要场景 ✓ 安全机制完善 ✓ 稳定性提升

Phase 3: 生产就绪2周

Week 8: 测试与部署

  • 编写测试用例
  • Docker化部署
  • 监控告警配置
  • 文档完善

Week 9: 试运行

  • 内部测试
  • Bug修复
  • 用户反馈收集
  • 优化改进

交付成果 ✓ 测试覆盖充分 ✓ 可生产部署 ✓ 文档齐全


十三、监控与运维

13.1 日志系统

日志级别

  • ERROR: 系统错误、SQL执行失败
  • WARNING: 性能警告、配置冲突
  • INFO: API调用、配置执行
  • DEBUG: 详细调试信息

日志格式

{
  "timestamp": "2026-03-21 10:23:01",
  "level": "INFO",
  "module": "executor",
  "message": "执行SQL成功",
  "details": {
    "sql": "CREATE TABLE...",
    "duration": "125ms"
  }
}

日志存储

  • 本地文件: logs/app.log
  • 自动轮转: 按天分割
  • 保留时间: 30天

13.2 性能优化策略

数据库优化

  • 连接池复用
  • 批量SQL执行
  • 使用索引查询元数据
  • 缓存表结构信息

AI调用优化

  • 上下文压缩
  • 并行检索知识库
  • 缓存相似问题的回答
  • 使用流式响应

前端优化

  • 代码分割
  • SQL编辑器异步加载
  • WebSocket实时推送
  • 请求防抖节流

知识库优化

  • 向量索引优化
  • 分块策略优化
  • 增量更新索引
  • 预热常用查询

13.3 安全加固

认证与授权

  • JWT Token认证
  • API速率限制
  • 操作权限校验
  • 敏感操作二次确认

SQL安全

  • 参数化查询
  • SQL白名单校验
  • 危险操作拦截
  • 执行前备份

数据安全

  • 数据库密码加密存储
  • API Key不在日志中明文
  • HTTPS传输加密
  • 定期备份

审计与监控

  • 所有操作可追溯
  • 异常行为告警
  • 定期安全审计
  • 访问日志分析

十四、后续演进方向

14.1 Phase 2功能后台自动化服务

  • 错误排查监控SQL日志、自动识别错误、定位问题
  • 系统优化:性能分析、缓存管理、权限优化
  • 自动化任务:定期清理、自动备份、性能报告

14.2 功能增强

  • 模板库:预定义常用业务模板(销售订单、采购入库等)
  • 批量操作:批量配置多个功能
  • 配置对比:对比不同配置的差异
  • 版本控制:配置版本管理和回滚

14.3 架构演进

  • 当用户量增长时,前后端分离部署,后端水平扩展
  • 当需要后台自动化时,拆分执行引擎为独立服务
  • 引入消息队列Redis/RabbitMQ处理异步任务

十五、成功指标

15.1 开发效率指标

  • 配置时间从需求到上线从平均4小时降至10分钟
  • 开发门槛:非技术人员也能完成简单功能开发
  • 错误率配置错误率降低80%

15.2 系统质量指标

  • API可用性>99.5%
  • API响应时间:平均<500ms
  • SQL执行成功率>95%(有回滚保护)

15.3 知识库指标

  • 文档覆盖率平台文档100%导入
  • 案例数量第一个月积累50+成功案例
  • 检索准确率Top-3检索准确率>80%

十六、风险与应对

16.1 技术风险

风险Claude API调用失败或延迟 应对

  • 实现重试机制tenacity库
  • 设置合理超时
  • 提供降级方案(规则引擎)

风险SQL执行导致数据损坏 应对

  • 事务保护机制
  • 执行前自动备份
  • 提供一键回滚功能

风险:知识库检索不准确 应对

  • 持续优化分块策略
  • 收集用户反馈,优化检索
  • 定期评估和调整

16.2 业务风险

风险AI理解需求偏差导致配置错误 应对

  • 人工审核机制
  • 配置预览和确认
  • 执行日志和回滚

风险开发人员不信任AI助手 应对

  • 渐进式推广,先从简单功能开始
  • 完整的执行日志,操作透明
  • 持续优化,提高准确性

十七、总结

本设计文档详细描述了ERP智能助手系统的架构、功能、技术实现和部署方案。系统采用单体内核架构使用Python + Vue 3技术栈集成Claude API和RAG知识库实现自动化功能开发。

核心特点

  • 知识驱动:三层知识库(文档+元数据+案例)
  • 安全可靠:事务保护、执行日志、回滚机制
  • 人机协同:人工审核、配置预览、智能建议
  • 易用友好自然语言输入、Web界面、实时监控

开发计划9周完成MVP分三阶段推进基础架构→功能完善→生产就绪

预期效果:大幅提升开发效率,降低技术门槛,保证配置质量,沉淀知识资产。


文档版本历史

版本 日期 作者 说明
1.0 2026-03-21 Claude Code 初始设计文档