composer
composer
¶
Composer bridges — convert a Recipe into EvalSuiteConfig or OperatorManifest.
These are pure-function transformations that let the unified Recipe format drive both the eval framework and the operator system without those systems needing to know about recipes directly.
Classes¶
Functions¶
recipe_to_eval_suite
¶
recipe_to_eval_suite(recipe: Recipe, benchmarks: Optional[List[str]] = None, max_samples: Optional[int] = None, judge_model: Optional[str] = None) -> EvalSuiteConfig
Build an EvalSuiteConfig from a recipe.
The recipe's model / engine become the single [[models]] entry.
The recipe's eval_benchmarks (or the benchmarks override) become
[[benchmarks]] entries. Agent type and tools are inherited so the
eval runner constructs the right backend automatically.
Args:
recipe: Source recipe.
benchmarks: Override benchmark list (defaults to recipe.eval_benchmarks).
max_samples: Override per-benchmark sample cap.
judge_model: Override LLM judge model.
Raises: ValueError: If no model or benchmarks can be resolved.
Source code in src/openjarvis/recipes/composer.py
recipe_to_operator
¶
recipe_to_operator(recipe: Recipe) -> OperatorManifest
Build an OperatorManifest from a recipe.
Maps the recipe's agent, schedule, and channel fields into the
operator manifest format used by OperatorManager.
Raises: ValueError: If schedule information is missing.