Skip to content

latent.flows.rag_optimization_flow.flow

rag_optimization_flow — Prefect-orchestrated RAG pipeline optimization.

Functions

rag_optimization_flow

rag_optimization_flow(documents: list[str] | None = None, eval_data: list[dict[str, Any]] | None = None, search_space: dict[str, Any] | None = None, metrics: list[RAGMetric] | None = None, strategy: str = 'bayesian', agent_model: str | None = None, max_trials: int = 20) -> dict[str, Any]

Optimize a RAG pipeline configuration.

Args: documents: Raw texts to index. eval_data: Evaluation dataset (list of dicts with "query" key). search_space: RAGSearchSpace constructor kwargs. metrics: List of RAGMetric instances. strategy: "grid", "random", "bayesian", or "agentic". agent_model: Required for "agentic" strategy. max_trials: Maximum number of trials.

Returns: RAGOptimizationResult as a dict.

run_optimization_task

run_optimization_task(documents: list[str], eval_data: list[dict[str, Any]], search_space: dict[str, Any] | None = None, metrics: list[RAGMetric] | None = None, strategy: str = 'bayesian', agent_model: str | None = None, max_trials: int = 20) -> dict[str, Any]

Run RAG optimization and return results as a serializable dict.