SkeMex 技能记忆架构图
论文: Experience Makes Skillful: Enabling Generalizable Medical Agent Reasoning via Self-Evolving Skill Memory 作者: Haoran Sun et al. (复旦大学, 上海AI实验室, 华中科技大学) 时间: arXiv:2606.09365, June 2026
Obsidian 显示提示: 如果 Mermaid 图在编辑/阅读模式下过大无法概览,安装社区插件 Mermaid Tools(by dartungar),它提供全屏模式和缩放工具栏。或者直接点击 Mermaid 图(阅读模式),Obsidian 原生支持弹出放大视图。
一、闭环生命周期流程图
SkeMex 的核心是一个 Read → Write → Assess → Govern 四阶段闭环生命周期,部署后无需更新模型权重即可持续自我进化。
flowchart TB subgraph 临床环境["🏥 临床环境 Clinical Environment"] PS["患者模拟器<br/>Patient Simulator"] ST["搜索工具<br/>Search Tools"] VT["视觉工具<br/>Vision Tools"] end subgraph 智能体循环["🤖 LLM 智能体循环 Agent Loop"] direction LR THINK["🧠 思考 Think<br/>检索技能 + 推理规划"] TOOL["🔧 工具调用 Tool Use<br/>搜索 · 视觉 · 计算"] ANSWER["💬 生成回答 Answer<br/>诊断 · 治疗 · 解释"] end subgraph 技能仓库["🧬 SkeMex 技能仓库 Skill Repository"] Mgen["📦 通用技能 M_gen<br/>可迁移推理策略"] Mtask["📋 任务技能 M_task<br/>临床类别模式"] Mact["🔧 行动技能 M_act<br/>工具操作知识"] end subgraph 生命周期["🔄 4阶段闭环生命周期"] READ["① READ 读取<br/>价值感知检索<br/>临床分类路由<br/>多通道筛选 Top-K"] WRITE["② WRITE 写入<br/>轨迹→技能蒸馏<br/>门控缓冲<br/>双通道引擎(分析+变异)"] ASSESS["③ ASSESS 评估<br/>效用驱动估值<br/>A_τ = r_τ − r̄(κ)<br/>信用分配"] GOVERN["④ GOVERN 治理<br/>仓库维护<br/>废弃·成熟·合并·归档<br/>ε-greedy 重评估"] end %% 数据流 临床环境 -->|"查询 + 上下文"| 智能体循环 智能体循环 -->|"轨迹数据"| WRITE 智能体循环 <-->|"检索 / 注入"| 技能仓库 %% 生命周期闭环 READ -->|"检索到的技能"| 智能体循环 WRITE -->|"新技能 / 更新"| 技能仓库 ASSESS -->|"效用更新"| 技能仓库 GOVERN -->|"清理后的仓库"| 技能仓库 READ --> WRITE WRITE --> ASSESS ASSESS --> GOVERN GOVERN -.->|"闭环循环"| READ %% 评估输入 临床环境 -.->|"环境奖励 r_τ"| ASSESS
二、三支技能仓库结构
graph TD ROOT["🧬 技能仓库 M_t = M_gen ∪ M_task ∪ M_act"] GEN["📦 通用技能分支 M_gen<br/>可迁移推理策略<br/>跨领域的临床原则<br/>类别条件效用"] TASK["📋 任务技能分支 M_task<br/>特定临床类别模式<br/>鉴别诊断 / 治疗规划<br/>已绑定上下文"] ACT["🔧 行动技能分支 M_act<br/>工具操作知识<br/>参数格式化 / 搜索策略<br/>细粒度操作"] ROOT --> GEN ROOT --> TASK ROOT --> ACT SKILL["📝 技能单元 m_i = (k_i, c_i, u_i)<br/>k_i: 检索键 (语义嵌入)<br/>c_i: 可复用内容 (触发条件+临床步骤)<br/>u_i: 效用统计 (历史贡献)"] GEN -.-> SKILL TASK -.-> SKILL ACT -.-> SKILL STATUS["🔄 生命周期状态<br/>active (活跃) | mature (成熟)<br/>deprecated (废弃) | archived (归档)"] SKILL --> STATUS RETRIEVAL["🔍 检索打分: λ_sim·Sim + λ_u·U(κ) + λ_h·h(m)<br/>语义相似 + 类别效用 + 遗忘曲线衰减"] SKILL -.-> RETRIEVAL
三、轨迹到技能的蒸馏管道
flowchart LR TAU["📜 轨迹 τ<br/>多步交互 + 反馈"] subgraph 门控["🚪 门控缓冲 Gated Buffer"] FILTER["筛选过滤<br/>✗ 基础设施错误<br/>✗ 机械重复<br/>✗ 平凡成功<br/>✓ 信息量高的失败<br/>✓ 多步推理轨迹"] BALANCE["软隔离策略<br/>v(τ) 按类别平衡<br/>保留成功与失败的混合"] end subgraph 双通["⚗️ 双通道蒸馏引擎"] ANALYZE["分析通道 Analysis Pass<br/>提取可复用模式 z_τ<br/>判断意图: CREATE/PATCH/NONE<br/>分配目标分支"] MUTATE["变异通道 Mutation Pass<br/>生成技能草稿<br/>或应用局部补丁<br/>产出候选技能 m̂"] end subgraph 质检["✅ 质量门控"] NOVELTY["新颖性门控 Novelty Gate<br/>与同类已有技能对比<br/>重复 → 重定向为 PATCH"] QUALITY["质量门控 Quality Gate<br/>必须包含:<br/>明确触发条件<br/>具体临床步骤"] end TAU --> FILTER FILTER --> BALANCE BALANCE --> ANALYZE ANALYZE --> MUTATE MUTATE --> NOVELTY NOVELTY --> QUALITY QUALITY -->|"✓ 通过"| SKILL_OUT["📦 进入技能仓库"]
符号对照表
| 符号 | 含义 |
|---|---|
| M_t | 时刻 t 的技能仓库 |
| M_gen / M_task / M_act | 通用 / 任务 / 行动三个分支 |
| m_i = (k_i, c_i, u_i) | 单个技能单元:检索键、内容、效用 |
| τ | 交互轨迹 |
| r_τ | 轨迹的累积奖励 |
| r̄(κ) | 临床类别 κ 的奖励 EMA 基线 |
| A_τ = r_τ − r̄(κ) | 优势(相对于同类任务的平均表现) |
| λ_sim, λ_u, λ_h | 检索打分权重:语义、效用、遗忘 |
| h(m) | 记忆强度(带 Ebbinghaus 遗忘曲线) |