Skip to main content
Opik Documentation

Search documentation

Type to search this documentation.

On this pageOverview

Optimization algorithms overview

The Opik Optimizer SDK wraps a mix of in-house algorithms (MetaPrompt, HRPO) and external research projects (e.g., GEPA). Each optimizer follows the same API (optimize_prompt, OptimizationResult) so you can swap them without rewriting your pipeline. Use this page to quickly decide which optimizer to run before diving into the detailed guides.

  1. Input – you pass a ChatPrompt definition, dataset, and metric. Many optimizers also accept additional parameters to set which model to use, number of optimization rounds, and even tool use (MCP and function calling) definitions.
  2. Candidate generation – each algorithm proposes new prompts (MetaPrompt via reasoning LLMs, Evolutionary via mutation/crossover, GEPA via its genetic-Pareto search).
  3. Evaluation – Opik runs the candidate against your dataset/metric and logs trials to the dashboard. The steps 2-to-3 continue to loop until such time a best prompt is found or the search has been exhausted.
  4. Result delivery – every optimizer returns an OptimizationResult with the best prompt, history, scores, and metadata which is passed back and also available in the UI.
Optimizer Origin Best for Key inputs Notes
MetaPrompt Opik General prompt refinement Prompt + dataset + metric Reasoning LLM critiques and rewrites prompts, supports MCP workflows and tool schemas.
HRPO Opik Root-cause analysis on complex prompts Metrics with detailed reasons Batches failures, synthesizes themes, proposes targeted fixes.
Few-Shot Bayesian Opik Optimizing few-shot example sets Dataset with demonstrations Uses Optuna to pick count/order of examples for chat prompts.
Evolutionary Opik + DEAP Exploring diverse prompt structures Mutation/crossover params Multi-objective optimization (score vs. length) and LLM-driven operators.
GEPA External (GEPA) Single-turn, reflection-heavy tasks gepa dependency + reflection minibatches We provide a wrapper so GEPA consumes Opik datasets/metrics while preserving its Pareto search.
Parameter Opik Temperature / top_p tuning Prompt + parameter search space Leaves prompt untouched; focuses on sampling parameters via Bayesian search.
  1. Identify the constraint (e.g., wording vs. tool usage vs. parameters).
  2. Check dataset readiness – reflective optimizers need detailed metric reasons. Consider splitting your data into training and validation sets to prevent overfitting.
  3. Estimate budget – evolutionary/GEPA runs consume more tokens than MetaPrompt.
  4. Plan follow-up – you can chain optimizers (MetaPrompt → Parameter) when needed.
  • Follow the individual optimizer guides for configuration details.
  • Learn how to chain optimizers for complex workflows.
Suggest an edit

Propose a replacement for this page. The site team reviews it before applying any changes.

Export
Documentation menu