Configure Model Endpoints for BYOB#
BYOB does not ship model weights. Instead, YAML blocks describe OpenAI-compatible clients for each stage that calls a language model.
Generation and judgement#
generation_model_config and judge_model_config are required mappings.
They follow the same structure you see in src/nemotron/steps/byob/mcq/config/default.yaml: alias, model, provider, and nested inference_parameters such as max_tokens, max_parallel_requests, temperature, and top_p.
setup_model_config in runtime/data_designer_utils.py reads these blocks when Data Designer runs batched stages.
Distractor and validity stages#
When do_distractor_expansion is true, distractor_expansion_model_config must be present.
distractor_validity_model_config is always required in the current schema validation.
Filtering swarm#
filtering_model_configs contains two lists, hallucination and easiness.
Each list entry needs a unique alias across both lists.
The structure mirrors other model blocks so you can aim filters at different endpoints than the generator.
Translation models#
Translation uses translation_model_config in translate.yaml.
backend_type, params (including api_key_env and base_url), and nested stage / segment_stage keys are passed into Curator’s experimental translation pipeline.
API keys#
Model blocks may set api_key_env to read secrets from the environment (for example NGC_API_KEY in the sample translation config).
Set those variables in the shell that launches nemotron steps run.