agent优化之GEPA-一种提示词自进化的优化方案

一句话概括

大淘宝技术将 GEPA(Genetic-Pareto,Reflective Prompt Evolution)工程化为任务无关的 Prompt 自进化服务,用“推理—评分—反思—选择”闭环自动分析 Badcase、归因到 Prompt 规则并生成候选变体,再用 Pareto 前沿保留多目标权衡,覆盖分类、评分、对比和聚类等任务。

实践内容

从人工试错转为数据驱动闭环

文章把现有 LLM Judge 和被评测 Agent 的 Prompt 调优痛点归纳为盲目性高、缺少真正反思、经验难复制以及单点优化没有权衡。系统同时关注评估器与人工标注、评估器与线上业务效果两类对齐目标,要求每轮修改都有样本、指标和归因证据。

GEPA 主循环与任务配置

主循环先用当前 Prompt 批量推理,再由解析器提取结构化输出并按任务类型评分;错误样本交给 Judge 做“错误定位、Prompt 归因、改进建议”三维分析,反思模型据此生成候选 Prompt。选择阶段保留 Pareto 前沿上的多个候选,避免只追逐一个综合分数而牺牲精确率、召回率等其他目标。任务模型使用低温度保证可复现,反思模型使用更高温度鼓励变异。

任务无关的工程分层

GEPA Service 用 TaskConfig、ModelConfig、DataConfig、PromptConfig、OutputConfig 和评分/反馈配置描述任务,并由 build_config() 将输出 Schema、答案提取和评分方式自动对齐。引擎提供 run_optimize、run_evaluate、validate_config 三个入口;组件层通过可插拔的解析器、评分器、反馈器、LLM 客户端和 Inspector 支持 JSON/JSONL/CSV 数据、分层切分、批量并发和多 Provider;服务层再以 CLI、FastAPI 和 Claude Code Skill 提供调用。

生产边界与使用方式

系统支持二分类、多分类、评分、规则判定、对比和聚类,输出验证集与 holdout 的结果、最优 Prompt、候选树和 JSONL 进度。文章特别提出两个防护:把硬约束、工具协议和输出 Schema 放入不可变冻结区,把 Prompt 长度作为第三个 Pareto 目标或硬门禁;在没有 Ground Truth 时,才考虑将离线指标、线上业务效果和历史策略回溯用于排序,并避免把保守匹配误当成真实改进。

摘录

GEPA 将 Prompt 优化从人工经验驱动改成“推理→评分→反思→选择”的自动化流程:模型先执行任务并量化输出质量,再对错误样本做错误定位、Prompt 归因和改进建议,最后生成候选变体。这使每轮变化都有可回看的数据依据,而不是依赖个人直觉反复试错。

传统单点修补容易让一个指标变好、另一个指标退化。GEPA 的 Pareto 采样保留前沿上的多个候选,不急于把所有场景压成唯一最优解,让业务可以在精确率、召回率、成本或其他目标之间保留可解释的权衡面。

反思模型天然倾向不断补充说明,Prompt 迭代多轮后可能从几百字膨胀到几千字。文章因此建议将硬性约束、工具调用协议和输出 Schema 划入冻结区,并把长度作为独立目标或硬上限,避免“分数上涨”掩盖注意力稀释、费用增加和人工接管困难。

涉及实体

  • GEPA —— 反思式 Prompt 进化算法及其任务无关工程实现
  • 自进化Agent —— 将反馈、反思和策略改写沉淀为持续改进能力
  • Generator-Evaluator —— 任务模型、Judge 和反思模型构成生成与评判分工
  • Prompt评估体系 —— 黄金数据集、评分器和回归反馈是优化闭环的测量基础
  • Harness-Engineering —— 配置、进度、权限与验证将算法包装成可运行服务

涉及主题