GEPA Integration Examples
This guide provides practical examples of integrating GEPA optimization into your SuperOptiX agents across different domains.
Mathematics Agent with GEPA
Example configuration for advanced mathematical problem solving:
apiVersion: agent/v1
kind: AgentSpec
metadata:
name: Advanced Math Solver
id: math-solver-gepa
spec:
language_model:
location: local
provider: ollama
model: llama3.1:8b
temperature: 0.1
persona:
role: "Mathematics Specialist"
goal: "Solve complex mathematical problems with step-by-step reasoning"
traits: ["analytical", "precise", "methodical"]
tasks:
- name: solve_math_problem
description: Solve mathematical problems with verification
inputs:
- name: problem
type: str
required: true
outputs:
- name: solution
type: str
- name: answer
type: str
- name: reasoning
type: str
optimization:
optimizer:
name: GEPA
params:
metric: advanced_math_feedback
auto: light
reflection_lm: qwen3:8b
reflection_minibatch_size: 3
skip_perfect_score: true
feature_specifications:
scenarios:
- name: quadratic_equation
input:
problem: "Solve xΒ² - 5x + 6 = 0"
expected_output:
answer: "x = 2 or x = 3"
solution: "Factor as (x-2)(x-3) = 0"
Enterprise Document Analyzer
GEPA configuration for business document processing:
spec:
optimization:
optimizer:
name: GEPA
params:
metric: multi_component_enterprise_feedback
auto: light
reflection_lm: qwen3:8b
predictor_level_feedback: true
feature_specifications:
scenarios:
- name: urgent_request
input:
document: "URGENT: Server room leak affecting critical infrastructure"
expected_output:
urgency: "Critical"
sentiment: "Negative"
categories: "facility_maintenance, infrastructure, emergency"
Privacy-Conscious Agent
GEPA setup for secure information handling:
spec:
optimization:
optimizer:
name: GEPA
params:
metric: privacy_preservation_feedback
auto: light
reflection_lm: qwen3:8b
llm_as_judge_feedback: true
feature_specifications:
scenarios:
- name: pii_redaction
input:
user_query: "I'm John Smith, SSN 123-45-6789, need medical advice"
expected_output:
redacted_request: "A person needs medical information"
privacy_assessment: "Removed PII while preserving context"
Security Analysis Agent
GEPA configuration for vulnerability detection:
spec:
optimization:
optimizer:
name: GEPA
params:
metric: vulnerability_detection_feedback
auto: light
reflection_lm: qwen3:8b
format_failure_feedback: true
feature_specifications:
scenarios:
- name: sql_injection
input:
code_or_config: |
query = "SELECT * FROM users WHERE name = '" + name + "'"
expected_output:
vulnerabilities: "Critical: SQL Injection vulnerability"
risk_assessment: "Critical severity - allows database compromise"
Running GEPA Optimization
Basic Workflow
# Pull and set up agent
super agent pull advanced-math-gepa
super agent compile advanced-math-gepa
# Evaluate baseline
super agent evaluate advanced-math-gepa
# Run GEPA optimization
super agent optimize advanced-math-gepa
# Measure improvement
super agent evaluate advanced-math-gepa
# Test optimized agent
super agent run advanced-math-gepa --goal "Solve xΒ² + 3x - 4 = 0"
Memory-Efficient Configuration
For systems with memory constraints:
spec:
language_model:
model: llama3.1:8b # ~8GB
optimization:
optimizer:
reflection_lm: qwen3:8b # ~8GB, different model
auto: light # Conservative budget
reflection_minibatch_size: 3
Progressive Optimization
Start conservative and increase budget if needed:
# Start with light optimization
super agent optimize your_agent # Uses auto: light
# If results are promising, increase budget
# Edit playbook: auto: medium
super agent compile your_agent
super agent optimize your_agent --force
# For production, consider heavy optimization
# Edit playbook: auto: heavy
super agent optimize your_agent --force
GEPA Output Analysis
Successful GEPA Logs
INFO dspy.teleprompt.gepa.gepa: Running GEPA for approx 400 metric calls
INFO dspy.evaluate.evaluate: Average Metric: 2.0 / 5 (40.0%)
INFO dspy.teleprompt.gepa.gepa: Iteration 0: Base program score: 0.4
INFO dspy.evaluate.evaluate: Average Metric: 3.0 / 3 (100.0%)
INFO dspy.teleprompt.gepa.gepa: Iteration 2: Proposed new text for predictor
This indicates: - β GEPA started with appropriate budget - β Baseline performance measured (40%) - β Iterative improvements occurring - β Score improvements achieved (100%) - β New prompts being generated
Understanding Timeout Behavior
GEPA optimization often exceeds 2-minute timeouts:
Error: Command timed out after 2m 0.0s
INFO dspy.teleprompt.gepa.gepa: Running GEPA for approx 400 metric calls
This is normal behavior because: - GEPA prioritizes quality over speed - Multiple reflection and generation cycles - Typical completion time: 3-5 minutes for light budget
Extending Timeout
Comparison: Before and After GEPA
Before GEPA Optimization
Agent Response:
"To solve xΒ² - 5x + 6 = 0, we can factor: (x-2)(x-3) = 0, so x = 2 or x = 3."
After GEPA Optimization
Agent Response:
"**Method 1: Factoring**
Step 1: Factor xΒ² - 5x + 6 into (x-2)(x-3) = 0
Finding factors: need two numbers that multiply to 6 and add to -5
These are -2 and -3, so: (x-2)(x-3) = 0
**Method 2: Quadratic Formula**
Using x = (-b Β± β(bΒ²-4ac)) / 2a where a=1, b=-5, c=6
x = (5 Β± β(25-24)) / 2 = (5 Β± 1) / 2
x = 3 or x = 2
**Verification:**
For x=2: (2)Β² - 5(2) + 6 = 4 - 10 + 6 = 0 β
For x=3: (3)Β² - 5(3) + 6 = 9 - 15 + 6 = 0 β"
GEPA optimization resulted in: - Multiple solution methods - Step-by-step explanations - Solution verification - Better pedagogical structure
Best Practices
1. Choose Appropriate Metrics
Match metrics to your domain:
# Mathematics
metric: advanced_math_feedback
# Business documents
metric: multi_component_enterprise_feedback
# Security analysis
metric: vulnerability_detection_feedback
2. Start Conservative
Begin with light budgets:
3. Quality Training Data
Provide comprehensive scenarios:
feature_specifications:
scenarios:
- name: comprehensive_test
description: Cover main use cases and edge cases
input:
problem: "Realistic, well-defined problem"
expected_output:
answer: "Complete expected response"
4. Monitor Progress
Watch for improvement indicators:
- Score improvements in logs
- Quality of generated prompts
- Performance on evaluation scenarios
5. Validate Results
Always measure GEPA effectiveness:
# Before optimization
super agent evaluate your_agent # Note baseline
# After optimization
super agent evaluate your_agent # Compare improvement
Related Documentation
- GEPA Optimization Guide - Complete GEPA reference
- Optimization Guide - General optimization techniques
- Agent Development Guide - Development workflow