For AI agents: a documentation index is available at the root level at /llms.txt and /llms-full.txt. Append /llms.txt to any URL for a page-level index, or .md for the markdown version of any page.
Copy to LLMGithubGo to App
DocumentationIntegrationsBuilding Self-Improving AgentsSelf-hosting OpikSDK & API reference
DocumentationIntegrationsBuilding Self-Improving AgentsSelf-hosting OpikSDK & API reference
  • Getting Started
    • Home
    • Quickstart
    • MCP Server
    • Ollie Agent
    • FAQ
    • Changelog
    • Upgrading to Opik 2.0
  • Observability
    • Overview
    • Getting started
    • Concepts
    • Debugging agents with Ollie and Opik Connect
  • Development
    • Overview
    • Agent playground
    • Prompt playground
      • Opik Agent Optimizer
      • Optimization Studio
      • Quickstart
      • Quickstart notebook
      • FAQ
      • Changelog
      • Known Issues
  • Evaluation
    • Overview
    • Getting started
    • Concepts
  • Production
  • Administration
    • Overview
    • Roles and Permissions
  • Contributing
    • Contribution Overview
LogoLogo
Copy to LLMGithubGo to App
On this page
  • Why Opik Agent Optimizer?
  • Prerequisites
  • 1. Install and authenticate
  • 2. Create a dataset and metric
  • 3. Run the optimizer
  • 4. Inspect results
  • Common first issues
  • Next steps
DevelopmentOptimization runs

Quickstart

Was this page helpful?
Previous

Optimizer Introduction Cookbook

Quick example notebook using HotPotQA dataset
Next
Built with

Opik Agent Optimizer Quickstart gives you the fastest path from “hello world” to a successful optimization run. If you already walked through the main Opik Quickstart (tracing + evaluation), this is the next stop—it layers on the opik-optimizer SDK so you can automatically improve prompts and agents. Prefer a UI workflow? Use Optimization Studio instead.

Why Opik Agent Optimizer?

  • Production-grade workflows – reuse the same datasets, metrics, and tracing you already have in Opik.
  • Multiple strategies – swap between MetaPrompt, Hierarchical Reflective Prompt Optimizer (HRPO), Evolutionary, GEPA, and more with one API.
  • Deep analysis – every trial is logged to Opik so you can inspect prompts, tool calls, and failure modes.

Estimated time: ≤10 minutes if you already have Python and an Opik API key configured.

Prerequisites

  • Python 3.10+
  • Opik account
  • Access to an OpenAI-compatible LLM via LiteLLM (OPENAI_API_KEY, ANTHROPIC_API_KEY, etc.)

1. Install and authenticate

$pip install --upgrade opik opik-optimizer
$opik configure # paste your API key
$export OPIK_PROJECT_NAME="optimization-quickstart"

Setting OPIK_PROJECT_NAME ensures all traces, experiments, and optimization runs are logged to the same project without having to pass project_name to every SDK call.

2. Create a dataset and metric

1import opik
2from opik.evaluation.metrics import LevenshteinRatio
3
4client = opik.Opik()
5dataset = client.get_or_create_dataset(name="agent-opt-quickstart")
6dataset.insert([
7 {"question": "What is Opik?", "answer": "Opik is an LLM observability and optimization platform."},
8 {"question": "How do I reduce hallucinations?", "answer": "Use evaluations and prompt optimization to enforce grounding."},
9])
10
11def answer_quality(item, output):
12 metric = LevenshteinRatio()
13 return metric.score(reference=item["answer"], output=output)

3. Run the optimizer

1from opik_optimizer import MetaPromptOptimizer, ChatPrompt
2
3prompt = ChatPrompt(
4 messages=[
5 {"role": "system", "content": "You are a precise assistant."},
6 {"role": "user", "content": "{question}"},
7 ],
8 model="openai/gpt-5-nano" # The model your prompt runs on
9)
10
11optimizer = MetaPromptOptimizer(model="openai/gpt-5-nano") # The model that improves your prompt
12result = optimizer.optimize_prompt(
13 prompt=prompt,
14 dataset=dataset,
15 metric=answer_quality,
16 max_trials=3,
17 n_samples=2,
18)
19
20result.display()

Using a different LLM provider? The optimizer supports OpenAI, Anthropic, Gemini, Azure, Ollama, and 100+ other providers via LiteLLM. See the Configure LLM Providers guide for setup instructions.

4. Inspect results

  • Run opik dashboard or open https://www.comet.com/opik.
  • In the left nav, go to Evaluation → Optimization runs, then select your latest run.
  • Review the optimization-progress chart, trial table, and per-trial traces to decide whether to ship the new prompt.

Common first issues

Prompt must be a ChatPrompt object

Import ChatPrompt from opik_optimizer and wrap your messages list before passing it to any optimizer.

Authentication failed

Re-run opik configure and confirm the account has Agent Optimizer access. If you changed machines, copy the ~/.opik/config file or re-enter the key.

liteLLM provider errors

Ensure provider keys (e.g., OPENAI_API_KEY) are exported in the same shell running the script, and verify the model you selected is enabled for that key.

Next steps

  • Prefer notebooks? Launch the Quickstart notebook.
  • Dive deeper into Define datasets and Define metrics.
  • Explore the Optimization Algorithms overview to pick the best strategy for your workload.