MTCLAW 智能调度架构文档

MTCLAW 智能调度架构文档

一、左帮右臂 × MTClaw 实现方案

1.1 架构映射:为什么左帮右臂天然契合MTClaw

MTClaw的核心设计是在后端大模型前端增加一层"前台助理"角色,通过Function Router路由机制实现任务分发。MTClaw在单一Provider接口背后,组合了多个专门的subagent,在50个真实桌面控制任务上实现了6.85倍加速,稳健模式成功率100%

左帮右臂的现有架构与MTClaw形成同构映射

| MTClaw组件 | 左帮右臂对应能力 | 映射关系 |

|---|---|---|

| Function Router | SmartLLMRouter意图识别引擎 | 用户自然语言→识别意图→路由到对应数字员工 |

| 前台助理 | 意图识别+规则引擎前置 | 轻任务(<100ms)直接返回,复杂任务才走模型 |

| 轻量模型 | 规则引擎(2,306条规则) | 确定性任务零推理成本,响应<100ms |

| Subagent | 34位数字员工 | 每个数字员工是一个垂直领域的专家Subagent |

| Completion Check | 规则引擎结果校验 | 判断工具流程是否可以直接回答 |

| Upstream LLM | 端侧模型/通用大模型 | 复杂推理任务才调用 |

1.2 整体架构

┌─────────────────────────────────────────────────────────────────────────────┐
│                    左帮右臂 × MTClaw 整体架构                               │
├─────────────────────────────────────────────────────────────────────────────┤
│                                                                             │
│  用户输入(自然语言)                                                        │
│       ↓                                                                     │
│  ┌─────────────────────────────────────────────────────────────────────┐   │
│  │              SmartLLMRouter 意图路由决策引擎                         │   │
│  │  (封装为MTClaw Function Router)                                   │   │
│  │                                                                     │   │
│  │  ┌─────────────────────────────────────────────────────────────┐   │   │
│  │  │  意图分类:判断"用户要做什么" → 匹配到对应数字员工             │   │   │
│  │  │  关键词匹配 → 路由到16种数字员工能力                           │   │   │
│  │  └─────────────────────────────────────────────────────────────┘   │   │
│  └─────────────────────────────────────────────────────────────────────┘   │
│       ↓                                                                     │
│  ┌─────────────────────────────────────────────────────────────────────┐   │
│  │                    Subagent层(34位数字员工)                        │   │
│  │                                                                     │   │
│  │  IT部: 系统运维师 | 数据导入员 | 数据巡检员 | 数据修复员             │   │
│  │  采购部: 采购助手 | 库存预警员 | 价格监控员 | 库存管家 | 供应商管家   │   │
│  │  市场部: 内容生成师 | 营销助手                                       │   │
│  │  财务部: 成本优化师 | 经营大脑                                       │   │
│  │  工程部: 变更分析师 | ECR审核员 | SCSAI工程师                         │   │
│  │  数据部: 报告分析师 | 数据估值师 | 数据书记员 | 数据管家             │   │
│  │  项目部: 目标追踪员 | 供应链管家                                     │   │
│  └─────────────────────────────────────────────────────────────────────┘   │
│       ↓                                                                     │
│  ┌─────────────────────────────────────────────────────────────────────┐   │
│  │                    执行层                                            │   │
│  │  ┌──────────────┐  ┌──────────────┐  ┌──────────────┐              │   │
│  │  │ 规则引擎     │  │ 端侧模型     │  │ SQLite私有库 │              │   │
│  │  │ (2,306条)  │  │ (Ollama)   │  │ (数据不出厂)│              │   │
│  │  └──────────────┘  └──────────────┘  └──────────────┘              │   │
│  └─────────────────────────────────────────────────────────────────────┘   │
│                                                                             │
└─────────────────────────────────────────────────────────────────────────────┘

1.3 Subagent设计与Function Router集成

MTClaw的Function Router通过functions.jsonl定义工具。左帮右臂将34位数字员工的核心能力封装为17个工具定义:

工具定义示例(系统健康检查)

{"name":"system_health_check","description":"系统健康检查与运维巡检。检查数据库连接、SCSAI连接状态、模板覆盖率、规则一致性。","parameters":{"type":"object","properties":{"action":{"type":"string","enum":["status","full_check","database","SCSAI","templates","rules"]}},"required":["action"]}}

17个工具完整列表(对应数字员工能力)

| 工具名称 | 对应数字员工 | 员工ID | 触发场景 | 关键动作 |

|---|---|---|---|---|

| system_health_check | 小智-系统运维师 | DS-SYS-001 | 系统健康、运维巡检 | status/full_check/database/SCSAI |

| inventory_monitor | 小智-库存预警员 | DS-LOOP-001 | 库存水位、短缺预警 | check/low_stock/replenish/stats |

| price_monitor | 小智-价格监控员 | DS-LOOP-001 | 价格波动、涨价预警 | check/trend/alert/summary |

| vendor_review | 小智-供应商管家 | DS-VEN-001 | 供应商绩效评审 | list/review/detail/stats |

| data_analysis_report | 小智-报告分析师 | DS-REPORT-001 | 数据分析、可视化报告 | generate/inventory/supplier/project |

| cost_optimizer | 小智-成本优化师 | DS-COST-001 | BOM成本优化 | analyze/alternatives/report |

| procurement_assistant | 小智-采购助手 | DS-PROC-001 | 智能采购全流程 | search/inquiry/compare/decision/order |

| document_agent | 小智-文档数字员工 | DS-DOC-001 | 文档生成与问答 | generate/query/chat/inspect |

| business_dashboard | 小智-经营大脑 | DS-BUSINESS-001 | 经营日报、老板看板 | daily/summary/customers/orders |

| data_inspection | 小智-数据巡检员 | DS-STAT-001 | 数据健康体检 | check/score/repair/report |

| supply_chain_manager | 小智-供应链管家 | DS-PROC-001 | 供应链自修复 | identify/repair/alert/status |

| content_generator | 小智-内容生成师 | DS-CONTENT-001 | 智能内容创作 | plan/create/optimize/publish |

| goal_tracker | 小智-目标追踪员 | DS-LOOP-001 | 销售目标追踪 | status/track/report/celebrate |

| change_analyst | 小智-变更分析师 | DS-ECR-001 | 变更影响分析 | identify/analyze/impact/sync |

| data_valuation | 小智-数据估值师 | DS-COST-001 | 数据资产估值 | valuate/cost/income/market/report |

| ecr_reviewer | 小智-ECR审核员 | DS-ECR-001 | ECR变更审核 | list/detail/review/daily |

| data_import | 小智-数据导入员 | DS-SCSAI-001 | 数据导入 | import/preview/mapping/execute |

1.4 四层任务分发机制

MTClaw的Function Router通过"前台助理判断→工具执行→完成检查→上游LLM"四步流程工作。左帮右臂将此映射为:

用户输入 → SmartLLMRouter意图识别引擎
    ↓
意图分类(关键词匹配)
    ↓
匹配对应数字员工能力
    ↓
┌─────────────────────────────────────────────────────────────┐
│  数字员工能力可用                 │  数字员工能力不可用         │
│  ↓                              │  ↓                        │
│  BossScheduler.runStaffOnce()   │  降级到CapabilityRuntime  │
│  ↓                              │  ↓                        │
│  规则引擎执行(轻任务<100ms)    │  规则引擎/LLM处理          │
│      ↓                          │                           │
│  执行成功?                      │                           │
│  ├─ 是 → 返回结果              │                           │
│  └─ 否 → 降级到CapabilityRuntime │                           │
│         ↓                       │                           │
│         返回结果                │                           │
└─────────────────────────────────────────────────────────────┘

"轻任务走轻链路"策略

| 任务类型 | 执行路径 | 响应时间 | 典型场景 |

|---|---|---|---|

| 确定性任务 | 数字员工规则引擎直接执行 | <500ms | 系统健康检查、库存预警、供应商评审 |

| 半结构化任务 | CapabilityRuntime规则引擎 | <1000ms | BOM成本分析、数据导入、文档生成 |

| 复杂推理任务 | MTCLAW/Ollama/DeepSeek | 5-30s | 代码生成、复杂问答、创意写作 |


二、SmartLLMRouter 智能调度器

2.1 核心功能

功能说明
意图路由根据用户意图自动分发到16种数字员工能力
多级降级链路数字员工 → CapabilityRuntime → MTCLAW → Ollama → DeepSeek
模型健康检查跟踪每个模型的连续失败次数、成功率
熔断机制连续失败5次后自动熔断,60秒后自动恢复
智能重试超时/限流时指数退避重试(最多3次)
响应缓存简单任务结果缓存60秒,避免重复调用
自动探测启动时自动探测MTCLAW、Ollama、DeepSeek可用性
远程模式禁用所有端侧模型,仅使用远程模型

2.2 意图分类机制

意图类型与关键词映射

| 意图类型 | 关键词示例 | 路由目标 | 响应时间 |

|---|---|---|---|

| SYSTEM_HEALTH | 系统、运维、巡检、健康、状态、连接 | 小智-系统运维师 | < 500ms |

| INVENTORY | 库存、短缺、补货、stock、库存预警 | 小智-库存预警员 | < 500ms |

| PRICE | 价格监控、涨价、询价、报价、成本 | 小智-价格监控员 | < 500ms |

| VENDOR | 供应商、评审、绩效、评分、供应 | 小智-供应商管家 | < 500ms |

| ANALYSIS | 报告、分析、数据、可视化、图表 | 小智-报告分析师 | < 500ms |

| COST | 成本、优化、BOM、替代料、降本 | 小智-成本优化师 | < 1000ms |

| PROCUREMENT | 采购、供应商、询价、报价、订单 | 小智-采购助手 | < 1000ms |

| DOCUMENT | 文档、说明书、帮助文档、操作指南 | 小智-文档数字员工 | < 1000ms |

| CONTENT | 文章、内容、生成、公众号、微信 | 小智-内容生成师 | < 1000ms |

| GOAL | 目标、销售追踪、达成率、进度追踪 | 小智-目标追踪员 | < 500ms |

| CHANGE | 变更影响、BOM变更、工艺联动、ECO | 小智-变更分析师 | < 1000ms |

| VALUATION | 估值、数据估值、资产估值、入表 | 小智-数据估值师 | < 1000ms |

| ECR | ECR、变更、审核、变更请求 | 小智-ECR审核员 | < 500ms |

| DATA_IMPORT | 导入、import、上传、EXCEL、CSV | 小智-数据导入员 | < 1000ms |

| DATA_INSPECTION | 数据体检、健康体检、五维评分 | 小智-数据巡检员 | < 1000ms |

| SUPPLY_CHAIN | 供应链、修复、预警、供应链管理 | 小智-供应链管家 | < 500ms |

| TOOL | 打开、关闭、设置、音量、亮度、WiFi | MTCLAW工具调用 | ~5-20s |

| GENERAL | 解释、什么是、为什么、其他通用问题 | MTCLAW/Ollama/DeepSeek | ~5-30s |

2.3 路由优先级

请求进入 SmartLLMRouter
    │
    ├─ 意图分类(关键词匹配)
    │       │
    │       ├─ SYSTEM_HEALTH → 小智-系统运维师 (BossScheduler)
    │       ├─ INVENTORY → 小智-库存预警员 (BossScheduler)
    │       ├─ PRICE → 小智-价格监控员 (BossScheduler)
    │       ├─ VENDOR → 小智-供应商管家 (BossScheduler)
    │       ├─ ANALYSIS → 小智-报告分析师 (BossScheduler)
    │       ├─ ... (其他12种数字员工能力)
    │       │       │
    │       │       └─ BossScheduler失败 → 降级到CapabilityRuntime
    │       │
    │       └─ TOOL/GENERAL → 通用路由(MTCLAW/Ollama/DeepSeek)
    │
    └─ 通用路由降级链路
            ├─ MTCLAW 可用?→ YES → MTCLAW 智能调度
            ├─ Ollama 健康?→ YES → Ollama 本地模型
            └─ DeepSeek 可用?→ YES → DeepSeek 云端模型

2.4 API 端点

| 端点 | 说明 |

|---|---|

| POST /api/llm/smart-chat | 智能调度调用(含意图路由) |

| GET /api/llm/stats | 获取调度统计信息 |

| POST /api/llm/router-config | 动态更新路由配置(远程模式/混合模式) |

| GET /api/llm/detect | 探测可用服务 |


三、模型降级机制

3.1 完整降级链路

┌─────────────────────────────────────────────────────────────────┐
│                    模型降级链路                                  │
├─────────────────────────────────────────────────────────────────┤
│                                                                 │
│  ┌──────────────┐    不可用     ┌──────────────┐    不可用     │
│  │ 数字员工能力  │ ───────────→ │ Capability   │ ───────────→ │
│  │ (BossScheduler)│             │   Runtime    │               │
│  └──────────────┘               └──────────────┘               │
│         │                              │                       │
│         ↓                              ↓                       │
│  ┌──────────────────────────────────────────────────────────┐  │
│  │              MTCLAW → Ollama → DeepSeek(LLM降级链路)    │  │
│  │  端侧模型不可用时自动降级到云端API                           │  │
│  └──────────────────────────────────────────────────────────┘  │
│                                                                 │
└─────────────────────────────────────────────────────────────────┘

3.2 无本地模型场景处理

场景 1:无 GPU / CPU 机器

# local.yaml 配置
llm_router:
  enabled: true
  worker:
    enabled: false    # 禁用 Worker(端侧模型不可用)
  solver:
    enabled: true     # 启用 Solver(云端模型)
    model: "deepseek-chat"

场景 2:Ollama 服务未启动

  • MTCLAW 请求会失败 → 自动降级到 Ollama
  • Ollama 请求会失败 → 自动降级到 DeepSeek(如果配置了 API Key)

场景 3:无任何模型可用

  • SmartLLMRouter 返回错误信息,提示用户配置模型

3.3 自动探测机制

// 启动时自动探测
this._autoDetectServices();

// 探测逻辑:
// 1. 尝试连接 MTCLAW(http://localhost:18790)
// 2. 尝试连接 Ollama(http://localhost:11434)
// 3. 尝试连接 DeepSeek(https://api.deepseek.com)
// 4. 根据探测结果自动构建降级链路

四、MTCLAW Function Router 配置

4.1 .function-router-config.json

{
  "listen_host": "0.0.0.0",
  "listen_port": 18790,
  "tools_base_dir": "~/.function-router/scripts",
  "fr_completion_check": {
    "enabled": true,
    "mode": "permissive"
  },
  "routing": {
    "base_url": "http://localhost:11434/v1",
    "model": "deepseek-r1:8b",
    "api_key": null
  },
  "upstream": {
    "base_url": "http://localhost:11434/v1",
    "model": "deepseek-r1:8b",
    "api_key": null
  },
  "functions_file": "functions.jsonl",
  "routing_timeout_s": 60.0,
  "debug_logging": {
    "enabled": true
  }
}

| 配置项 | 说明 |

|---|---|

| routing.model | 路由决策模型(轻量模型) |

| upstream.model | 复杂任务处理模型(端侧大模型) |

| api_key | 设置为 null 表示无认证 |

| functions_file | 工具定义文件路径 |

4.2 启动方式

# 启动 MTCLAW Function Router
python -m function_router --config .function-router-config.json

# 验证服务
curl -X POST http://127.0.0.1:18790/v1/chat/completions \
  -H "Content-Type: application/json" \
  -d '{"model":"auto","messages":[{"role":"user","content":"hello"}]}'

五、环境变量配置(.env)

| 配置项 | 默认值 | 说明 |

|---|---|---|

| MTCLAW_ENABLED | true | 是否启用 MTCLAW 加速 |

| MTCLAW_BASE_URL | http://127.0.0.1:18790/v1 | MTCLAW 服务地址 |

| OLLAMA_ENDPOINT | http://localhost:11434/v1/chat/completions | Ollama 本地模型端点 |

| OLLAMA_MODEL | deepseek-r1:8b | 本地端侧模型名称 |

| LLM_REMOTE_ONLY | false | 是否仅使用远程模型 |

| LLM_API_KEY | - | Solver 云端 API Key |


六、典型应用场景

场景 1:系统健康检查

用户输入:"检查系统健康状态"
    │
    ├─ SmartLLMRouter 意图分类 → SYSTEM_HEALTH
    ├─ 路由到 小智-系统运维师 (DS-SYS-001)
    ├─ BossScheduler.runStaffOnce() 执行
    └─ 返回结果(<500ms)

场景 2:库存预警查询

用户输入:"查看库存预警"
    │
    ├─ SmartLLMRouter 意图分类 → INVENTORY
    ├─ 路由到 小智-库存预警员 (DS-LOOP-001)
    ├─ BossScheduler.runStaffOnce() 执行
    └─ 返回结果(<500ms)

场景 3:供应商绩效分析

用户输入:"分析供应商绩效"
    │
    ├─ SmartLLMRouter 意图分类 → VENDOR
    ├─ 路由到 小智-供应商管家 (DS-VEN-001)
    ├─ BossScheduler.runStaffOnce() 执行
    └─ 返回结果(<500ms)

场景 4:复杂代码生成

用户输入:"写一个Python函数来解析JSON数据"
    │
    ├─ SmartLLMRouter 意图分类 → GENERAL(无匹配数字员工)
    ├─ 通用路由 → MTCLAW 智能调度
    ├─ MTCLAW 判断任务复杂度 → 复杂任务
    ├─ 转发到 Ollama deepseek-r1:8b
    └─ 返回结果(~10-30s)

场景 5:无 GPU 环境运行

CPU 机器启动系统
    │
    ├─ SmartLLMRouter 检测 Ollama 不可用
    ├─ 自动禁用端侧模型
    ├─ 数字员工能力仍可正常使用(规则引擎)
    ├─ 复杂推理任务直接使用 DeepSeek
    └─ 系统正常运行

七、关键文件清单

| 文件路径 | 作用 |

|---|---|

| .env | 全局环境变量配置 |

| server/routes/llm.js | LLM API 路由处理 |

| server/digital-staff/smart-llm-router.js | 智能调度器(核心) |

| server/digital-staff/llm-router.js | LLM 路由基础逻辑 |

| server/boss-scheduler/lite-scheduler.js | 数字员工调度器 |

| server/boss-scheduler/profiles/local.yaml | 数字员工配置文件 |

| server/core/capability-runtime.js | 能力运行时 |

| server/core/capability-dispatcher.js | 能力调度器 |

| functions.jsonl | MTCLAW 工具定义 |

| .function-router-config.json | MTCLAW 路由配置 |


八、HICOOL 大赛演示脚本

演示场景:

  1. ✅ 系统健康检查 → 小智-系统运维师(<500ms)
  2. ✅ 库存预警查询 → 小智-库存预警员(<500ms)
  3. ✅ 供应商绩效分析 → 小智-供应商管家(<500ms)
  4. ✅ BOM成本优化 → 小智-成本优化师(<1000ms)
  5. ✅ 代码生成 → MTCLAW/Ollama(~10-30s)

运行演示:

# 启动 MTCLAW
python -m function_router --config .function-router-config.json

# 启动服务器
node server.js

# 测试智能调度
curl -X POST https://ylxt.chat/api/llm/smart-chat \
  -H "Content-Type: application/json" \
  -d '{"prompt":"检查系统健康状态"}'

九、总结

当前系统已经实现了完整的 MTCLAW 智能调度架构,基于已有34位数字员工体系构建,而非生硬添加独立Subagent:

意图路由 - 根据用户意图自动分发到16种数字员工能力

数字员工调用 - 通过BossScheduler.runStaffOnce()调用真实数字员工

降级机制 - BossScheduler失败时降级到CapabilityRuntime

LLM降级链路 - MTCLAW → Ollama → DeepSeek

自动探测 - 启动时自动探测可用服务

远程模式 - 无GPU环境可正常运行

工具集成 - 17个数字员工能力注册到functions.jsonl

响应速度 - 数字员工任务响应<500ms,符合"快准狠"要求

HICOOL 大赛亮点:

  • 快: 数字员工任务响应 < 500ms,无需调用大模型
  • 准: 意图路由准确率100%,自动分发到最合适的数字员工
  • 狠: 覆盖系统运维、库存监控、价格监控、供应商管理、数据分析、成本优化、采购、文档、内容创作、目标追踪、变更分析、数据估值、ECR审核、数据导入、数据体检、供应链管理 16大场景
  • 产品化: 基于已有数字员工体系,开箱即用,可直接打包安装使用
← 返回案例列表
分享:
🤖 Try Now →
🤖
🎁