跨任务学习 cross-task-learning

跨任务学习技能是一种模式,用于聚合多个任务中的洞察,以识别重复出现的模式、始终有效的策略、不断失败的策略、反复出现的瓶颈和不断出现的提案,从而促进数据驱动的进化。

机器学习 0 次安装 0 次浏览 更新于 3/2/2026

跨任务学习技能

用于在所有已完成的任务中聚合洞察的模式。

何时加载此技能

  • 反射器:在编写个人反思后
  • 进化者:在分析反思之前(以获得聚合视图)

核心概念

个人反思捕获特定于任务的学习。跨任务学习将这些聚合以识别:

  • 不断出现的模式 → 技能候选
  • 始终有效的策略 → 最佳实践
  • 不断失败的策略 → 反模式
  • 反复出现的瓶颈 → 系统弱点
  • 不断出现的提案 → 优先改进

聚合文件

位置:memory/reflections/_aggregate.json

示例结构(紧凑JSON):

{"last_updated":"ISO-8601","tasks_analyzed":15,"strategy_effectiveness":[{"strategy":"Spawn parallel explorers for context","uses":12,"successes":10,"effectiveness_score":0.83,"notes":"Works well for unfamiliar codebases"}],"failure_patterns":[{"pattern":"Contract conflicts in parallel implementation","occurrences":4,"severity":"high","status":"active"}],"skill_candidates":[{"pattern":"Read → Explore → Implement → Test → Verify","frequency":8,"effectiveness":"high","proposed_skill_name":"implementation-cycle"}]}

更新协议(供反射器使用)

在编写个人反思后,更新聚合:

1. 读取当前_aggregate.json
2. 读取刚刚编写的反思

3. 更新任务历史:
   - 添加新条目,包括任务ID、时间戳、结果
   - 保留最后20条记录(修剪最旧的)

4. 更新策略有效性:
   FOR每个策略在反思.patterns.effective_strategies中:
     IF策略在聚合中存在:
       → 增加使用次数和成功次数
       → 重新计算effectiveness_score
     ELSE:
       → 添加新条目,使用次数=1,成功次数=1

   FOR每个策略在反思.patterns.ineffective_strategies中:
     IF策略在聚合中存在:
       → 增加使用次数和失败次数
       → 重新计算effectiveness_score
     ELSE:
       → 添加新条目,使用次数=1,失败次数=1

5. 更新失败模式:
   FOR每个问题在反思.process_analysis.phases[].issues中:
     IF存在类似模式(模糊匹配):
       → 增加出现次数
       → 更新上次出现
     ELSE:
       → 添加新模式

6. 更新瓶颈热点:
   FOR每个瓶颈在反思.process_analysis.bottlenecks中:
     IF位置存在:
       → 增加频率
       → 添加新原因
     ELSE:
       → 添加新热点

7. 更新技能候选:
   FOR每个序列在反思.patterns.repeated_sequences中:
     IF序列.skill_candidate == true:
       IF存在类似模式:
         → 增加频率
       ELSE:
         → 添加新候选

8. 更新反复发现:
   FOR每个发现在反思.knowledge_discovered中:
     IF存在类似发现:
       → 增加发现次数
       → 如果次数>=3,则设置should_be_documented = true
     ELSE:
       → 添加新条目

9. 更新反复提议:
   FOR每个提议在反思.evolution_proposals中:
     IF存在类似提议:
       → 增加出现次数
     ELSE:
       → 添加新条目

10. 更新重试分析:
    FOR每个重试在反思.process_analysis.retries中:
      → 增加总重试次数
      → 更新按策略计数

11. 增加任务分析次数
12. 更新上次更新
13. 写入更新后的_aggregate.json(紧凑JSON)

相似性匹配

当检查模式是否“相似”时:

标准化两个字符串:
  - 小写
  - 移除标点符号
  - 移除常用词(the, a, an, is, are)

比较使用:
  - 标准化后的精确匹配
  - OR: >70%单词重叠
  - OR: 相同关键词存在

行动阈值

指标 阈值 行动
策略有效性 < 0.3 使用5次后 标记为反模式
策略有效性 > 0.8 使用5次后 标记为最佳实践
失败模式出现次数 >= 3 标记为紧急修复
技能候选频率 >= 5 提议作为新技能
反复发现次数 >= 3 添加到知识库
反复提议次数 >= 3 优先进化

查询模式(供进化者使用)

获取需要修复的顶级问题:

failure_patterns
  WHERE status == "active"
  ORDER BY occurrences * severity_weight DESC
  LIMIT 5

获取需要记录的最佳实践:

strategy_effectiveness
  WHERE effectiveness_score > 0.8
  AND uses >= 5

获取准备实施的技能候选:

skill_candidates
  WHERE frequency >= 5
  AND effectiveness == "high"
  AND status == "candidate"

获取知识差距:

recurring_discoveries
  WHERE should_be_documented == true
  AND NOT in knowledge_base

与进化者的集成

进化者应该:

  1. 首先读取_aggregate.json(不是个人反思)
  2. 使用聚合数据进行提案优先级排序:
    • 高频率失败模式 → 高优先级
    • 高频率技能候选 → 中等优先级
    • 反复提议 → 已经验证的想法
  3. 仅在需要详细信息时参考个人反思
  4. 进化后更新recurring_proposals[].status

原则

  1. 聚合,不重复 - 汇总统计,不是副本
  2. 追踪趋势 - 首次出现,上次出现,频率
  3. 启用查询 - 结构易于过滤
  4. 基于阈值的行动 - 何时行动的明确标准
  5. 模糊匹配 - 类似模式应合并,不重复