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
DocumentationIntegrationsAgent OptimizationSelf-hosting OpikSDK & API referenceOpik University
DocumentationIntegrationsAgent OptimizationSelf-hosting OpikSDK & API referenceOpik University
  • Getting Started
    • Opik Agent Optimizer
    • Optimization Studio
    • Quickstart
    • Quickstart notebook
    • FAQ
    • Changelog
    • Known Issues
  • Optimization
    • Concepts
    • Configure LLM Providers
    • Define datasets
    • Define metrics
    • Optimize prompts
    • Optimize tools (MCP)
    • Optimize agents
    • Optimize multimodal
    • Dashboard results
  • Optimization Algorithms
    • Overview
    • Benchmarks
    • MetaPrompt
    • HRPO
    • Few-Shot Bayesian
    • Evolutionary
    • GEPA
    • Parameter
    • Tool Optimization
  • Cookbooks & Tutorials
    • Optimizer introduction
    • Synthetic data optimizer
    • ARC-AGI tutorial
    • Multimodal agent tutorial
  • Advanced Topics
    • Extending optimizers
    • Custom metrics
    • Custom optimizer prompts
    • Sampling controls
    • Multiple completions (n)
    • Chaining optimizers
    • API Reference
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
Getting Started

Quickstart

Was this page helpful?
Previous

Optimizer Introduction Cookbook

Quick example notebook using HotPotQA dataset
Next
Built with

In Opik 2.0, datasets and experiments are project-scoped. Make sure to specify a project_name when creating datasets and running experiments so they are associated with the correct project.

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

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", project_name="my-project")
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.