gepa-ai/gepa
Optimize prompts, code, and more with AI-powered Reflective Optimization
解決的問題
GEPA(遺傳-帕累托)是一套設計用於針對特定評估指標,優化依賴文字參數(如提示詞、程式碼、代理架構與設定)的任何系統的框架。它克服了傳統最佳化工具僅能判斷候選方案是否失敗的限制;GEPA 透過分析執行軌跡,識別失敗的原因,從而推動有針對性的改進。
工作原理
GEPA 結合了基於 LLM 的反思與帕累托高效的進化搜尋:
- 選擇:從帕累托前緣中挑選在不同任務子集上表現最佳的候選方案。
- 執行:在小批量資料上執行候選方案,並擷取完整的執行軌跡(錯誤訊息、日誌、效能分析資料)。
- 反思:LLM 分析這些軌跡,診斷失敗的根本原因。
- 變異:根據診斷結果,LLM 生成候選方案的改進版本。
- 接受:將改進後的候選方案加入池中,並更新帕累托前緣。
它還利用了「可操作的額外資訊」(ASI)——一種類似於梯度的文本形式診斷反饋,並能融合兩個帕累托最優候選方案的優勢。
適用對象
- AI 工程師:需要優化複雜提示詞或代理工作流程,而無需手動猜測修改方案的人。
- 系統研究者:希望優化非提示詞文字產物(如排程策略或程式碼)的人。
- DSPy 使用者:希望透過
dspy.GEPA將自動化最佳化整合至 AI 流程中的人。 - 代理開發者:希望為其代理提供透過 GEPA 代理技能實現自我最佳化能力的人。
核心亮點
- 高效性:聲稱比強化學習(如 GRPO)快 35 倍,且顯著低於使用頂級模型(如 Claude Opus)的成本。
- 多功能性:可優化提示詞、代理架構、RAG 設定,甚至 SVG 圖形。
- 廣泛整合:已整合至 MLflow、Pydantic AI、Comet ML Opik 以及 Google 的 Gemini Enterprise Agent Platform 等主流工具。
- 可擴展性:提供
GEPAAdapter接口,可接入任意系統,並內建 LangChain、MCP 和 RAG 的適配器。
相關
- 專案
- 專案
- 專案
- 專案