Files
projectAIpopular/任务拆解与执行计划.md
T
tzt 324c419c35 feat(sense): T-G3 标签+校准(labeler 四规则推导 + split-conformal + last-good)
- labeler.py:derive_true_tier 纯函数(规则0 人工优先 / plan_multi->T3 /
  失败->下一档(T3保持) / 成功->executed / 空结果跳过)+ derive_true_tiers
  批量回填 + 180d 留存清理
- calibrate.py:compute_thresholds(τ1/τ3 分组扫描——并列分数整组判定,
  精度 >= 1-α 的最大覆盖阈值;<min_labels -> ok=False 沿用 last-good);
  save_thresholds 工件落盘+登记;load_active 回退链 active->同kind扫描->last-good->保守值
- store:all_observations/list_artifacts 支撑方法
- 测试 +9(四规则/批量清理/覆盖达标/标签不足/工件往返与回退),全量 395 passed
2026-09-05 13:53:45 +08:00

167 lines
12 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 任务拆解与执行计划
> 任务体系:主任务(整体项目)→ 附加任务(先行实现:整体项目部分拆解)
> 建立日期:2026-08-14
---
## 一、任务体系总览
```
主任务:多专业小模型 + 路由模型系统(整体项目)
├─ 已完成部分(专家系统内核):
│ · 知识库(8 领域 67 规则 + 17 模板 + 45 事实)
│ · 黑板/前向链/Planner/DAG 路由(L0 零参数)
│ · 三级子领域(domain → subdomain → subdomain2
│ · 两级路由体系(domain_group → 组内路由模型)
│ · 92 项单元测试全绿
└─ 附加任务(★ 先行实现):整体项目部分拆解
· 目标:把整体项目剩余工作拆解为可独立执行的部分任务,
并优先实现第一批(P0),为后续铺路
· 状态:进行中
```
## 二、整体项目剩余工作拆解清单
| # | 任务 | 内容 | 依赖 | 优先级 | 预估 | 状态 |
|---|------|------|------|--------|------|------|
| T1 | NodeExecutor 接口抽象 | 解耦 `_execute_node` 的 if-elserule/model/未来后端统一接口 + 工厂 | — | **P0** | 0.5 天 | ✅ 完成 |
| T2 | 评测基准扩充 | eval 扩到 8 领域 24 样例 + 组路由/子领域识别指标 | — | **P0** | 0.5 天 | ✅ 完成 |
| T3 | 推理链查询接口 | 请求 ID 化 + 内存轨迹存储 + `GET /traces/{id}` | T1 | **P0** | 1 天 | ✅ 完成 |
| T12 | **Agent-Skill 路由器** | 路由器独立:Skill 注册表(21 技能)+ RouteAgent 自主分析需求→技能调用计划→执行,无需用户指定领域/模型 | T1,T2,T3 | **P0** | 1-2 天 | ✅ 完成 |
| T4 | 知识库 CRUD + 热重载 | `/knowledge/rules|facts` CRUD + `POST /config/reload` | T1 | P1 | 1-2 天 | ⬜ 待办 |
| T5 | 本地模型推理接入(L2 | Ollama/vLLM 封装 + `fallback.local` 验证 + 组内模型按需加载 | T1 | P1 | 2-3 天 | ⬜ 待办 |
| T6 | embedding 语义缓存 | BGE 本地向量化替代 n-gram L2 | — | P1 | 1-2 天 | ⬜ 待办 |
| T7 | 分类器训练流水线 | 数据构建 + 0.6B QLoRA 训练(8 领域) | — | P1 | 2-3 天 | ⬜ 待办 |
| T8 | 领域专家微调 | QLoRA 微调 5-8 领域专家 + 数据收集 | T7 | P2 | 3-4 周 | ⬜ 待办 |
| T9 | RouterArena 评测 | 标准 5 维评测接入 | T2 | P2 | 2-3 天 | ⬜ 待办 |
| T10 | 监控 + 模型注册表 | Prometheus 指标 + 模型版本/热替换 | T4,T5 | P2 | 2-3 天 | ⬜ 待办 |
| T11 | 部署生产化 | Docker/Compose + 灰度 + 安全 | T5,T10 | P2 | 3-5 天 | ⬜ 待办 |
## 三、先行实现批次(P0)—— 已完成 ✅
1. **T1 NodeExecutor 接口抽象** —— 子任务执行后端统一接口(rule/model 两实现 + 工厂),L2 模型接入无需改 Router
2. **T2 评测基准扩充** —— 24 样例 × 8 领域,指标:分类 100% / 大领域组识别 100% / 子领域识别 100%
3. **T3 推理链查询接口** —— `GET /traces/{request_id}`:完整推理链可追溯(两级路由 → 三级子领域 → 拆解 → 规则 → 评分)
4. **T12 Agent-Skill 路由器** —— 路由器独立为"技能注册表 + Agent 规划器"
- 21 个内置技能(es.* 模板 ×17、kb.retrieve/kb.answer、judge.evaluate、fallback.call
- RouteAgent 自行分析需求 → 规划技能调用(多技能组合/依赖)→ 执行 → 校验 → 升级
- **用户只提供 query,无需指定领域/模型**;技能调用轨迹可追溯(skill:es.analyze@facts
- 实测:法律咨询自动组合 es.analyze + kb.retrieve + es.conclude + es.disclaimer
P0 完成后的能力:干净的后端抽象 + 可量化的评测 + 可追溯的推理链 + 技能化 Agent 路由(118 项测试全绿)。
## 四、执行规则
- 每任务独立验收(测试 + 文档),完成后更新状态 ✅
- 依赖任务未完成时,先做无依赖任务
- P1/P2 任务在 P0 完成后按序推进,不阻塞主线
---
## 五、v2 任务登记(端云协同编程智能体系统,见《实现方案_v2_端云协同编程智能体系统.md》)
> 每个任务一个 commit`feat(v2): Tn 描述`),交付含封闭单测;v1 的 126 项测试保持全绿。
| T | 内容 | 状态 | commit |
|---|------|------|--------|
| T1 | 环境与基线确认(126 测试全绿;README 环境备忘) | ✅ 完成 | (并入 T2 commit |
| T2 | 运维层:hw_profile + llama_server 进程管理 | ✅ 完成 | T2 |
| T3 | ArchitectClientDeepSeek APIJSON 约束) | ✅ 完成 | T3 |
| T4 | Workspace(交流文本 schema/校验/渲染/rollup | ✅ 完成 | T4 |
| T5 | WorkerLoop + 接地验证 | ✅ 完成 | T5 |
| T6 | CollaborativePipeline 编排 | ✅ 完成 | T6 |
| T7 | 网关扩展(/chat 切 v2/chat/legacy | ✅ 完成 | T7 |
| T8 | 人工检验队列 ReviewQueue | ✅ 完成 | T8 |
| T9 | token 计量与账单 | ✅ 完成 | T9 |
| T10 | rollup + prefix cache 调优 | ✅ 完成 | T10 |
| T11 | 打包分发 setup_runtime.py | ✅ 完成 | T11 |
| T12 | 实验脚本 bench_tokens.py + 数据集 | ✅ 完成 | T12 |
| T13 | E1 本地跑数完成(E2E5 待 live 接入) | ✅ 完成 | T13 |
| T14 | 文档收口(README v2 改写) | ✅ 完成 | T14 |
| T15 | Pipeline 死锁修复(_deps_done 依赖过滤 + pending-empty break+ /metrics SPA 路由冲突修复 | ✅ 完成 | T15 |
---
## 六、v3 任务登记(Web 应用化,见《实现方案_v3_Web应用化.md》)
> 每任务一个 commit`feat(v3): Tn 描述`);`router_system` 核心不动(D3),229 项基线测试保持全绿。
| T | 内容 | 状态 | commit |
|---|------|------|--------|
| T1 | 后端异步化(jobs.py + /chat 后台任务 + /runs/{id}/status | ✅ 完成 | v3 基线 |
| T2 | 后端 SSE/runs/{id}/stream 监视 workspace.json | ✅ 完成 | v3 基线 |
| T3 | 前端脚手架(Vue3+Vite+TSoutDir=gateway/static | ✅ 完成 | v3 基线 |
| T4 | 对话页 + SSE 实时可视化 | ✅ 完成 | v3 基线 |
| T5 | 协作过程页 + 检验队列页 + 指标页 | ✅ 完成 | v3 基线 |
| T6 | llama-server 内置管理(/llama/* + 下载 SSE)+ 设置页整页滚动修复 | ✅ 完成 | v3 基线 |
---
## 七、模型池与工具智能体任务登记(T16–T21,见《实现方案_v4_模型池与工具智能体.md》)
> 「端云」叙事泛化为多价位模型池(local/budget/premium 三档 + 角色指派),新增 zcode 式工具智能体。
> `router_system` 保持零第三方依赖;全量测试 262 项全绿(基线 229 + 新增 33)。
| T | 内容 | 状态 | commit |
|---|------|------|--------|
| T16 | 工具内核:WorkspaceTools(路径关押)+ ToolLoop(轮数/token 双护栏) | ✅ 完成 | T16 |
| T17 | 模型池:PoolStore + /pool 端点 + 管线池解析 + 按模型成本分账(by_model | ✅ 完成 | T17-T18 |
| T18 | 智能体:OpenAI 兼容工具调用客户端 + AgentService + /agent 端点(SSE | ✅ 完成 | T17-T18 |
| T19 | 前端:API 层 + 设置页模型池 UI(角色指派/条目 CRUD/连通测试) | ✅ 完成 | T19-T20 |
| T20 | 前端:智能体页 AgentView + 指标页分账卡 + SSE 终态去重 | ✅ 完成 | T19-T20 |
| T21 | 集成验证:真跑 3 轮工具任务(write/list/read+ 浏览器实测 + 262 测试全绿 | ✅ 完成 | T21 |
| T22 | 工具扩展:edit_file(唯一替换)/ search_files(跳过依赖目录)/ run_commandallow_shell 默认关) | ✅ 完成 | T22 |
| T23 | 工作区选择:/agent/fs 目录浏览 + /agent/workspaces 最近列表 + /agent 带 workspace | ✅ 完成 | T23 |
| T24 | 前端:工作区选择栏(目录浏览器/最近/shell 开关)+ edit diff 卡 + 命令卡 | ✅ 完成 | T24-T25 |
| T25 | 集成验证:选定真实目录"读→精确编辑→运行验证"全链路 + 274 测试全绿 | ✅ 完成 | T24-T25 |
| T26 | 两级智能体:规划者(大模型)拆解/审查 + 执行者(本地小模型)工具轮,handoff.json 交接,/agent 带 executor_pool_id | ✅ 完成 | T26 |
| T27 | 会话式智能体:多轮上下文 + 会话持久化 + 停止按钮 + AgentView 对话式重构(dsh 范式) | ✅ 完成 | T27 |
| T28 | 操作审批流:approval_policy(off/dangerous/all) + 挂起/裁决/超时 + /approve + 审批卡 | ✅ 完成 | T28 |
| T29 | token 级流式:SSE 解析/tool_calls 碎片组装/回退 + DeltaThrottle + 打字机渲染 | ✅ 完成 | T29 |
| T30 | 安全加固(Mimosa 深度扫描驱动,D11):路径 ID 白名单/artifacts 与工件名关押/下载 dest 关押+协议白名单/config 密钥打码/Host 信任围栏+回环绑定/危险命令独立拦截/CSPRNG 抽样 | ✅ 完成 | T30 |
| T31 | dsh 功能对齐(D12):LLM 重试退避/web_fetch 工具(SSRF 防护)/原子写入/慢工具线程卸载/search 目录修剪/重复调用提醒/会话重命名 | ✅ 完成 | T31 |
---
## 六、代理层任务登记(AI代理功能开发:校园 AI 代理层+缓存层)
> 执行版:《AI代理功能开发/实施方案_代理层与缓存层.md》(T-P0…T-P8,含 DDL/接口签名/验收命令,约 12 工作日)。
> 设计与经济测算:《AI代理功能开发/方案_校园AI代理层.md》。约束:`router_system/` 零改动;
> M1/M2 零新依赖;总验收 = 压测报告 h_g+h_p ≥ 50% 且统一 5 折毛利为正、账目零不一致。
| T | 内容 | 状态 | commit |
|---|------|------|--------|
| T-P0 | 骨架:gateway/proxy/ 包 + SQLite DDL + enabled 门控挂路由 | ✅ 完成 | T-P0 |
| T-P1 | 鉴权+账本:key 签发/令牌桶/四表/request_id 幂等/日限额 | ✅ 完成 | T-P1 |
| T-P2 | 上游客户端:流式派发+三家 usage 归一化+首 token 前 failover | ✅ 完成 | T-P2 |
| T-P3 | 计价+结算:峰谷窗口/毫元整数/黄金用例 ≥10 组 | ✅ 完成 | T-P3 |
| T-P4 | 路由端到端:/proxy/v1 非流式+流式+402/429/413 语义 | ✅ 完成 | T-P4 |
| T-P5 | 规范化+桶:稳定哈希/整形顺序/doc_version 失效/多轮不缓存 | ✅ 完成 | T-P5 |
| T-P6 | 语义缓存:L1 精确+L2 n-gram 倒排+singleflight+TTL+失败不缓存 | ⬜ 待办 | |
| T-P7 | 管理面+前端:stats/ledger 端点+ProxyView 三卡片 | ⬜ 待办 | |
| T-P8 | 压测+预算:200 并发流式;P99≤50ms/内存≤1GB/账目零不一致 | ⬜ 待办 | |
---
## 七、语义分析器任务登记(AI代理功能开发:三级任务分级,见《实施方案_语义分析器与三级分级.md》)
> 前置:代理层 T-P 系列。模式:collect(只采集)→ shadow(只比对)→ live(真分流),`sense.mode` 门控。
> 总验收 = E-G1shadow 一致率 ≥85%、conformal 覆盖 ≤α+2%、T1 占比 40–55%、T2 档降云端调用可测。
| T | 内容 | 状态 | commit |
|---|------|------|--------|
| T-G0 | 骨架:gateway/sense/ 包 + sense.sqlite3 DDL + enabled 门控 | ✅ 完成 | c3efa70 |
| T-G1 | Embedder/v1/embeddings 客户端 + int8 量化 + 降级阶梯 | ✅ 完成 | T-G1 |
| T-G2 | 观察埋点:observer + 三消费方埋点(pipeline/proxy/client | ✅ 完成 | T-G2 |
| T-G3 | 标签+校准:夜间 true_tier 推导 + split-conformal + 工件表 | ✅ 完成 | T-G3 |
| T-G3b | KnnHead(架构变体 B):kNN 投票 + conformal-kNN + 按桶分区/封顶/压缩;hybrid fusion 预留(§14 | ⬜ 待办 | |
| T-G4 | 线性头:离线训练脚本 + LinearHead 纯 Python 推理 + 登记 | ⬜ 待办 | |
| T-G5 | Grader:决策组合(特征门×概率×conformal+ /v1/route + 三态 mode | ⬜ 待办 | |
| T-G6 | live 分流:pipeline tier_fn 三档钩子 + proxy 档位映射 + T2 档升级阶梯 | ⬜ 待办 | |
| T-G7 | 审计+前端:ReviewQueue 抽样 + tier 指标卡 + 客户端来源显示/一键升级 | ⬜ 待办 | |
| T-G8 | 实验:E-G1/E-G3 报告;(可选)LoraRemote + E-G2 线性 vs LoRA | ⬜ 待办 | |