gepa-ai/gepa
Optimize prompts, code, and more with AI-powered Reflective Optimization
何を解決するか
GEPA(Genetic-Pareto)は、特定の評価指標に対して、プロンプト、コード、エージェントアーキテクチャ、設定などのテキストパラメータに依存するあらゆるシステムを最適化するためのフレームワークです。従来の最適化手法は候補が失敗したかどうかしか知らなかったのに対し、GEPAは実行トレースを分析することで、失敗の原因を特定し、的確な改善を促進します。
動作方法
GEPAはLLMベースのリフレクションとパレート効率的な進化的探索を組み合わせます:
- 選択:タスクの異なるサブセットで最も優れた性能を発揮する候補(パレートフロンティア上)を選択します。
- 実行:候補をミニバッチで実行し、完全な実行トレース(エラーメッセージ、ログ、プロファイリングデータ)を収集します。
- リフレクション:LLMがこれらのトレースを分析し、失敗の根本原因を診断します。
- 突然変異:診断結果に基づき、LLMが候補の改善版を生成します。
- 受容:改善された候補をプールに追加し、パレートフロンティアを更新します。
また、「行動可能な補足情報」(ASI)を活用しており、これは勾配のテキスト版のようなものであり、2つのパレート最適な候補の強みを統合することも可能です。
対象ユーザー
- AIエンジニア:複雑なプロンプトやエージェントワークフローを手動で推測せずに最適化したい人。
- システム研究者:スケジューリングポリシー、コードなどプロンプト以外のテキストアーティファクトを最適化したい人。
- DSPyユーザー:
dspy.GEPAを通じてAIパイプラインに自動最適化を統合したい人。 - エージェント開発者:エージェントにGEPAエージェントスキルを通じた自己最適化能力を提供したい人。
特徴
- 効率性:RL(例:GRPO)よりも35倍高速であり、Claude Opusなどの上位モデルを使用するよりも大幅にコストが低いと主張。
- 汎用性:プロンプト、エージェントアーキテクチャ、RAG設定、さらにはSVGグラフィックスも最適化可能。
- 広範な統合:MLflow、Pydantic AI、Comet ML Opik、GoogleのGemini Enterprise Agent Platformなど主要ツールに統合済み。
- 拡張性:任意のシステムに接続可能な
GEPAAdapterインターフェースを提供。LangChain、MCP、RAG用の組み込みアダプタも用意されています。
関連
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト