gepa
A framework for optimizing textual system components (AI prompts, code snippets, etc.) using LLM-based reflection and Pareto-efficient evolutionary search.
Decision gist · record as of 2026-08-14
Yes. GEPA is actively maintained, has no runtime dependencies, and offers a permissive MIT license. It solves a real problem—systematic optimization of textual system components—with a novel LLM-reflection approach that avoids the evaluation overhead of traditional RL methods. Integrations with DSPy, MLflow, and other major frameworks lower adoption friction. Primary constraint is the need for external LLM API access; evaluate whether your use case justifies the API costs.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Requires Python 3.10 or later; LLM API access (e.g., OpenAI) needed for reflection and task evaluation.
- Low friction installation with no runtime dependencies.
- Active maintenance—last commit 2026-08-14, released 2025-08-11, 6117 GitHub stars.
License · maintenance · safety
MIT (permissive) — MIT license permits commercial and private use with minimal restrictions, making it suitable for production deployment in most contexts.
last release 2026-07-15 (30 days) · last repo commit 2026-08-14 · 6,117 stars
0 known vulnerabilities (OSV.dev, 2026-08-14) · 6,628,234 downloads/mo, #1,880 on PyPI
Alternatives
Verify before relying
pip install gepa
import gepa
result = gepa.optimize(
seed_candidate={"system_prompt": "You are a helpful assistant."},
trainset=trainset,
valset=valset,
task_lm="openai/gpt-4.1-mini",
max_metric_calls=150,
reflection_lm="openai/gpt-5",
)
print(result.best_candidate['system_prompt'])- Whether the package requires external LLM API credentials to be pre-configured or if it handles credential management internally.
- Performance characteristics and typical optimization time for different problem scales.
- Whether adapters like ConfidenceAdapter and LangChain require separate installation steps beyond the base package.
What it is and what it does
GEPA is a framework for automatically improving textual system components by treating optimization as a search problem guided by LLM reflection. Rather than collapsing execution outcomes into a single scalar reward, it reads full execution traces—error messages, profiling data, reasoning logs—to diagnose why a candidate failed and propose targeted improvements. The system uses Pareto-efficient evolutionary search to evolve high-performing variants with minimal evaluations, supporting optimization of prompts, code, agent architectures, scheduling policies, and other text-based artifacts.
The framework integrates with major AI platforms including DSPy, MLflow, Comet ML Opik, and Pydantic, offering both a standalone API and adapters for specialized tasks like RAG optimization, MCP tool descriptions, and LangChain pipelines. It requires Python 3.10+ and access to LLM APIs for reflection; the base package has no runtime dependencies, making installation straightforward.
Use it for
- Optimize system prompts for classification or reasoning tasks to improve accuracy without manual prompt engineering.
- Evolve entire DSPy programs including signatures and control flow to discover better architectures automatically.
- Improve RAG retrieval and generation by optimizing prompts across vector store backends like ChromaDB or Weaviate.
- Discover cloud scheduling policies or other configuration parameters that beat expert heuristics on your workload.
- Tune agent tool descriptions and system prompts for tool-using agents in LangChain or MCP environments.
- Automatically learn and refine coding agent skills to improve task resolution rates on specialized domains.
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
Yes.
GEPA is actively maintained, has no runtime dependencies, and offers a permissive MIT license. It solves a real problem—systematic optimization of textual system components—with a novel LLM-reflection approach that avoids the evaluation overhead of traditional RL methods. Integrations with DSPy, MLflow, and other major frameworks lower adoption friction. Primary constraint is the need for external LLM API access; evaluate whether your use case justifies the API costs.
Install
gepa on PyPI
Before you install
Low friction installation with no runtime dependencies. Active maintenance—last commit 2026-08-14, released 2025-08-11, 6117 GitHub stars. Supports Python 3.10+.
Requires Python 3.10 or later; LLM API access (e.g., OpenAI) needed for reflection and task evaluation.
License in practice
MIT license permits commercial and private use with minimal restrictions, making it suitable for production deployment in most contexts.
Quickstart
pip install gepa
import gepa
result = gepa.optimize(
seed_candidate={"system_prompt": "You are a helpful assistant."},
trainset=trainset,
valset=valset,
task_lm="openai/gpt-4.1-mini",
max_metric_calls=150,
reflection_lm="openai/gpt-5",
)
print(result.best_candidate['system_prompt'])
Verify before relying
- Whether the package requires external LLM API credentials to be pre-configured or if it handles credential management internally.
- Performance characteristics and typical optimization time for different problem scales.
- Whether adapters like ConfidenceAdapter and LangChain require separate installation steps beyond the base package.
Package facts
| License | MIT permissive |
| Python support | Supports the current Python release <3.15,>=3.10 |
| Install friction | Low. Pure-Python wheel |
| Runtime dependencies | None |
| Maintenance | Actively maintained 30 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 6,628,234 / month, #1,880 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
Evidence: gepa-0.1.4-py3-none-any.whl
Tags
Let your AI agent find packages like this
Example. Real query, live index.
You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.
wish › “LLM-based evolutionary search”
- gepaGEPA optimizes textual system components—prompts, code, agent…
- pyglovePyGlove provides symbolic object-oriented programming for Python,…
- nevergradNevergrad is a gradient-free optimization library that finds optimal…
Give your agent the search over MCP, or paste the wish link into any chat.
More Artificial Intelligence packages
LiteLLM provides a unified Python interface to call 100+ LLM providers (OpenAI, Anthropic, Gemini, Bedrock, Azure, and others) using OpenAI-compatible API format, available as both a Python SDK and a self-hosted AI Gateway proxy server.
Install it if you need to work with multiple LLM providers or want to centralize LLM routing in your organization.
Client library and CLI tool for downloading, uploading, and managing models, datasets, and repositories on the Hugging Face Hub platform.
Install it if you work with Hugging Face Hub models or datasets.
LangChain provides a framework for building agents and LLM-powered applications by composing language models, tools, and memory through a unified API that abstracts over multiple model providers.
hf-xet provides chunk-based deduplication and efficient file transfer for the Hugging Face Hub, enabling faster uploads and downloads of large files with local disk caching.
Tokenizers converts raw text into token sequences for NLP models, with support for training custom vocabularies and using pre-built tokenizers (BPE, WordPiece) optimized for speed via Rust.
Transformers provides a unified framework for loading, fine-tuning, and running state-of-the-art pretrained models across text, vision, audio, video, and multimodal tasks using PyTorch, JAX, or TensorFlow.
Install it if you need to run or train any transformer-based model for NLP, vision, audio, or multimodal tasks.
See also deap · ell-ai · llama-index-question-gen-openai · headroom-ai · agentlightning · llm · codeflash · cuga · dspy · dspy-ai