Skip to content

latent.optimize.tasks

Prefect @task wrappers for prompt optimization.

Functions

analyze_optimization

analyze_optimization(result: Any) -> Any

Analyze an OptimizationResult as a Prefect task.

Args: result: OptimizationResult from an optimizer.

Returns: StatisticalReport with trajectory analysis.

optimize_prompt

optimize_prompt(agent: Any, train_data: list[dict[str, Any]], metric: Any, optimizer_type: str = 'dspy', max_iterations: int = 10, optimizer_kwargs: dict[str, Any] | None = None, dspy_metric: Any = None, ace_metric: Any = None) -> Any

Run prompt optimization as a Prefect task.

Args: agent: A BaseAgent (or Judge) to optimize. train_data: Training data rows. metric: Evaluation metric callable. optimizer_type: One of "dspy", "ace", "combined", "autoresearch". max_iterations: Maximum optimization iterations. optimizer_kwargs: Extra kwargs passed to the optimizer constructor. dspy_metric: Override metric for "dspy" optimizer or the DSPy stage of "combined". ace_metric: Override metric for "ace" optimizer or the ACE stage of "combined".

Returns: OptimizationResult from the optimizer.