latent.optimize.dspy.optimizer¶
DSPy-based prompt optimizer.
Classes¶
DSPyOptimizer¶
DSPyOptimizer(agent: BaseAgent, lower_is_better: bool = False, teleprompter: str = 'mipro_v2', teacher_model: str | None = None, student_model: str | None = None, train_split: float = 0.8, seed: int = 42, tracker: ExperimentTracker | None = None, teleprompter_kwargs: Any = {})
Prompt optimizer using DSPy teleprompters.
Wraps a BaseAgent/Judge in a DSPy Module, runs the selected teleprompter, and records results via ExperimentTracker.
Supported teleprompters: mipro_v2, copro, bootstrap_fewshot, simba, gepa.
Methods¶
DSPyOptimizer.optimize¶
optimize(train_data: list[dict[str, Any]], metric: Any, max_iterations: int = 10) -> OptimizationResult
Run DSPy teleprompter optimization.
Args: train_data: List of dicts with input/output pairs. metric: A callable (example, prediction, trace) -> float. max_iterations: Maximum number of teleprompter trials.
Returns: OptimizationResult with all experiments recorded.