Parameters Reference
This page summarizes the main configuration groups available when creating NeMo Safe Synthesizer jobs. For generated REST API schema details, see the Safe Synthesizer API Reference.
Job Spec (Plugin / REST)
Top-level fields on the Safe Synthesizer job spec (alongside config):
Top-Level Configuration
The SafeSynthesizerParameters schema defines the main configuration structure for Safe Synthesizer jobs.
It comes from the upstream NeMo Safe Synthesizer library, and NeMo Helix passes it through unchanged.
For each section’s fields, defaults, and tuning guidance, follow the link to the upstream
Configuration Reference.
SafeSynthesizerParameters
All fields are optional at the top level. For nested field constraints, you can also search for the schema name from the Type column in the Safe Synthesizer API Reference.
The builder methods accept the same field names as keyword arguments, for example
.with_train(learning_rate=0.0005) sets config.training.learning_rate.
NeMo Helix Differences
The following behavior is specific to running Safe Synthesizer as a NeMo Helix job.
PII Replacement
PII replacement is on by default for jobs created through the CLI or REST API; set config.enable_replace_pii to false to disable it.
The Python SDK builder runs PII replacement only when you call .with_replace_pii().
Column Classification (replace_pii.globals.classify)
Column classification uses an LLM served through the Inference Gateway, selected by
replace_pii.globals.classify.classify_model_provider instead of the upstream NSS_INFERENCE_KEY and NSS_INFERENCE_ENDPOINT environment variables.
Set it with the SDK builder’s .with_classify_model_provider(provider_name) method. The provider name can be unqualified (the builder prepends the current workspace) or fully-qualified as workspace/provider_name.
If omitted, column classification is skipped and PII detection falls back to heuristic defaults, which may reduce accuracy.
Pretrained Model
config.training.pretrained_model is not an Inference Gateway model. It names the base model that the job fine-tunes inside its own container.
The default, HuggingFaceTB/SmolLM3-3B, is loaded from the default/smollm3-3b fileset when your deployment has it staged in Files.
Any other model ID is downloaded from Hugging Face Hub at job start, which requires outbound network access from the job;
set hf_token_secret (or call .with_hf_token_secret()) for gated models or to avoid rate limits.
For supported model families, refer to the upstream Training reference.
To reuse a model trained by an earlier job, set pretrained_model_job instead.
Example Configuration
Here’s an example showing a complete job configuration using the Python SDK:
Related Topics
- data-synthesis - Learn about synthesis concepts
- evaluation - Learn about evaluation metrics
- index - Hands-on tutorials