【AI】Hermes的GEPA算法

GEPA (Genetic-Pareto Prompt Evolution,遗传-帕累托提示进化)是 HERMES Agent 自进化能力的核心算法,来自 ICLR 2026 Oral 论文。它并非 HERMES 原创,但 HERMES 是首个将其大规模工程化应用于 Agent Skill 进化的开源框架。


一、背景:为什么不用 RL?

当前学术界的主流技能进化路线是 RL(强化学习) ,如 SkillRL、SAGE 等框架直接在梯度空间更新 Skill 参数。但 GEPA 走了一条完全相反的路------刻意放弃强化学习

RL 的问题

  • 需要 GPU 训练,成本高
  • 数值奖励信号粒度太粗(一个 0.6 的分数无法告诉你哪一步错了)
  • 需要大量 rollout 才能收敛

GEPA 的洞见 :即使不做任何梯度更新 ,仅靠大模型的反思能力 + 进化算法,不仅能超过 RL,而且样本效率更高。


二、核心原理:三大支柱

GEPA 算法建立在三个核心机制之上:

1. Reflective Mutation(反思式变异)

不是随机变异。LLM 会读取历史执行轨迹(execution traces),反思为什么做对了/做错了,找出 Prompt 中哪些词需要修改。

例如:"这一步没有检查边界条件"、"应该先读配置再写入缓存"------这种自然语言反馈直接作为下一轮变异的指导信号。

2. Pareto Frontier Selection(帕累托前沿选择)

生成一批变异候选 Skill 后,不保留全局平均分最高的 。只要某个候选在任意一个评估样本上表现最好,就会被保留。

目的 :确保技能探索的多样性鲁棒性,防止所有 Skill 都收敛到同一个局部最优。

3. Natural Language Feedback as Mutation Signal(自然语言反馈驱动)

传统 RL 用数值奖励指导参数更新(0.6 分 vs 0.8 分),但 GEPA 用具体的自然语言反馈作为变异信号。

LLM 能理解"先检查边界条件"这种指令,并据此生成下一轮变体------这比解释一个浮点数有效得多。


三、完整工作流程

GEPA 在 HERMES 中的运行流程如下:

复制代码
1. 读取现有 SKILL 文件
        ↓
2. 从历史会话采样(或合成)构建评估集
        ↓
3. GEPA 介入:分析执行轨迹 → 反思建议 → 生成候选变体
        ↓
4. 运行评估(候选 vs 基线对比)
        ↓
5. 帕累托算法选择优胜者
        ↓
6. 约束门控检查(测试通过、大小合规、语义保持)
        ↓
7. 生成 PR(Pull Request),等待人类审核合并
        ↓
8. 进化后的 Skill 生效

关键设计

  • 离线批量运行:不是实时嵌入对话路径,而是定期后台执行
  • 零 GPU:所有操作通过 API 调用完成,变异、评估、选择都是文本操作
  • 成本极低 :单次优化运行约 $2-10
  • 人类在环:进化结果不直接覆盖原文件,必须经 PR Review 才能合并

四、如何使用

GEPA 在 HERMES 中通过独立子项目 hermes-agent-self-evolution 提供:

安装

bash 复制代码
git clone https://github.com/NousResearch/hermes-agent-self-evolution.git
cd hermes-agent-self-evolution
pip install -e ".[dev]"

配置

bash 复制代码
export HERMES_AGENT_REPO=~/.hermes/hermes-agent  # 指向你的 HERMES 仓库

进化一个 Skill

bash 复制代码
# 方式一:使用合成评估数据
python -m evolution.skills.evolve_skill \
    --skill github-code-review \
    --iterations 10 \
    --eval-source synthetic

# 方式二:使用真实会话历史(Claude Code / Copilot / HERMES 的 sessiondb)
python -m evolution.skills.evolve_skill \
    --skill github-code-review \
    --iterations 10 \
    --eval-source sessiondb

五阶段进化路线图

阶段 目标 引擎 状态
Phase 1 Skill 文件 (SKILL.md) DSPy + GEPA ✅ 已实现
Phase 2 工具描述 (Tool descriptions) DSPy + GEPA 🔲 计划中
Phase 3 系统提示片段 (System prompt sections) DSPy + GEPA 🔲 计划中
Phase 4 工具实现代码 (Tool implementation code) Darwinian Evolver 🔲 计划中
Phase 5 持续改进流水线 (Continuous improvement loop) 自动化流水线 🔲 计划中

五、竞品对比

维度 GEPA (HERMES) RL-based Skill Evolution (SkillRL/SAGE) DSPy MIPROv2
是否需要梯度/GPU 不需要,纯 API 调用 ✅ 需要 ❌ 不需要
单次优化成本 $2-10 数百至数千美元(GPU 训练) 中等
反馈信号粒度 自然语言(具体、可解释) 数值奖励(0.6/0.8,粗粒度) 数值 + 少样本
样本效率 (600-7000 rollout 即可) 低(需数万 rollout) 中等
可解释性 极高(每次变异都有文字说明) 低(黑盒权重更新) 中等
多模块联合优化 ✅ 支持跨模块遗传交叉 ❌ 通常单模块 ✅ 支持
适用任务类型 单轮/少轮、有明确输入输出模式 复杂多步交互 单模块优化
人类可控性 极高(PR Review 强制介入) 低(自动更新权重) 中等

六、应用场景

1. HERMES Agent Skill 进化(主场景)

HERMES 运行时自动创建 Skill → GEPA 定期离线优化 → 生成 PR 等待审核。这是 HERMES "越用越聪明"的核心机制。

2. 通用 Prompt 优化(跨框架)

GEPA 已被适配到多个框架:

  • Pydantic AI:优化 Agent Instructions、MCP Tool 描述、BaseModel 字段描述
  • OpenAI Agents SDK:优化 system prompt
  • MLflow:通过 Prompt Registry 统一管理 + GEPA 优化

3. 生产级评估器构建

Latitude AI 使用 GEPA 将生产环境中的标注失败模式自动转化为可靠的评估器(rule-based 或 LLM-as-judge)。

4. AI 代码安全监控

优化分类器以检测 AI 生成代码中的后门,基于怀疑分数进行可信监控。


七、关键限制

根据 GEPA 论文和工程实践:

  • 依赖可诊断的失败模式:如果执行轨迹不揭示"为什么失败",反思机制无法生成针对性改进
  • 不适合复杂多 Agent 协调:如果系统瓶颈是架构级协调而非 Prompt 质量,需要 Hierarchical Reflective 优化而非 GEPA
  • 演示样本选择非其强项:若需优化 few-shot 示例,Bayesian 优化更合适

总结

GEPA 的本质是"用进化算法做 Prompt 工程":让 LLM 读取自己的失败轨迹,用自然语言反思原因,据此生成候选变体,再用帕累托选择保留多样性最优解。它不碰梯度、不耗 GPU,仅靠 API 调用和文本变异,就能在 $2-10 的成本下实现比 RL 更高的样本效率和可解释性。

相关推荐
小超同学你好1 小时前
OpenClaw 深度解析系列 · 第8篇:Learning & Adaptation(学习与自适应)
人工智能·语言模型·chatgpt
紫微AI1 小时前
前端文本测量成了卡死一切创新的最后瓶颈,pretext实现突破了
前端·人工智能·typescript
papership1 小时前
【入门级-数据结构-3、特殊树:完全二叉树的数组表示法】
数据结构·算法·链表
码途漫谈1 小时前
Easy-Vibe开发篇阅读笔记(四)——前端开发之结合 Agent Skills 美化界面
人工智能·笔记·ai·开源·ai编程
smj2302_796826521 小时前
解决leetcode第3911题.移除子数组元素后第k小偶数
数据结构·python·算法·leetcode
易连EDI—EasyLink1 小时前
易连EDI–EasyLink实现OCR智能数据采集
网络·人工智能·安全·汽车·ocr·edi
冬奇Lab2 小时前
RAG 系列(二):用 LangChain 搭建你的第一个 RAG Pipeline
人工智能·langchain·llm
学习论之费曼学习法2 小时前
多模态大模型实战:用 GPT-4o API 打造 AI 助手,能看、能听、能说!
人工智能
昨夜见军贴06162 小时前
IACheck与AI报告审核,开启供应商资质核验报告审核新篇章
人工智能