Opik Agent Optimizer API Reference
The Opik Agent Optimizer SDK provides a comprehensive set of tools for optimizing LLM prompts and agents. This reference guide documents the standardized API that all optimizers follow, ensuring consistency and interoperability across different optimization algorithms.
Key Features
- Standardized API: All optimizers follow the same interface for
optimize_prompt()andoptimize_mcp()methods - Multiple Algorithms: Support for various optimization strategies including evolutionary, few-shot, meta-prompt, MIPRO, and GEPA
- MCP Support: Built-in support for Model Context Protocol tool calling
- Consistent Results: All optimizers return standardized
OptimizationResultobjects - Counter Tracking: Built-in LLM and tool call counters for monitoring usage
- Backward Compatibility: All original parameters preserved through kwargs extraction
- Deprecation Warnings: Clear warnings for deprecated parameters with migration guidance
Core Classes
The SDK provides several optimizer classes that all inherit from BaseOptimizer and implement the same standardized interface:
- ParameterOptimizer: Optimizes LLM call parameters (temperature, top_p, etc.) using Bayesian optimization
- FewShotBayesianOptimizer: Uses few-shot learning with Bayesian optimization
- MetaPromptOptimizer: Employs meta-prompting techniques for optimization
- EvolutionaryOptimizer: Uses genetic algorithms for prompt evolution
- GepaOptimizer: Leverages GEPA (Genetic-Pareto) optimization approach
- HierarchicalReflectiveOptimizer: Uses hierarchical root cause analysis for targeted prompt refinement
Standardized Method Signatures
All optimizers implement these core methods with identical signatures:
optimize_prompt()
optimize_mcp()
Deprecation Warnings
The following parameters are deprecated and will be removed in future versions:
Constructor Parameters
project_namein optimizer constructors: Setproject_namein theChatPromptinsteadnum_threadsin optimizer constructors: Usen_threadsinstead
Example Migration
ParameterOptimizer
Parameters:
Methods
cleanup
evaluate_prompt
Parameters:
get_history
get_optimizer_metadata
optimize_parameter
Parameters:
FewShotBayesianOptimizer
Parameters:
Methods
cleanup
evaluate_prompt
Parameters:
get_history
get_optimizer_metadata
optimize_prompt
Parameters:
MetaPromptOptimizer
Parameters:
Methods
cleanup
evaluate_prompt
Parameters:
get_history
get_optimizer_metadata
optimize_mcp
Parameters:
optimize_prompt
Parameters:
EvolutionaryOptimizer
Parameters:
Methods
cleanup
evaluate_prompt
Parameters:
get_history
get_optimizer_metadata
optimize_mcp
Parameters:
optimize_prompt
Parameters:
dataset_item and llm_outputGepaOptimizer
Parameters:
Methods
cleanup
evaluate_prompt
Parameters:
get_history
get_optimizer_metadata
optimize_prompt
Parameters:
HierarchicalReflectiveOptimizer
Parameters:
Methods
cleanup
evaluate_prompt
Parameters:
get_history
get_optimizer_metadata
optimize_prompt
Parameters:
ChatPrompt
Parameters:
Methods
copy
get_messages
Parameters:
set_messages
Parameters:
to_dict
with_messages
Parameters:
OptimizationResult
Parameters:
OptimizableAgent
Parameters:
Methods
init_agent
Parameters:
init_llm
invoke
Parameters:
invoke_dataset_item
Parameters:
llm_invoke
Parameters: