Transform a Model
Define the checkpoint, revision, task, target hardware, requested precision, and required evidence. Read the upstream config and reference implementation, then inspect the closest family only as a pattern.
Extend an owner only when checkpoint identity, weight mapping, graph dataflow,
native request lifecycle, and correctness contract genuinely match. Otherwise
create one new families/<family>/ directory.
Implement one vertical slice
support.pyrecognizes exact model metadata and declares supported tasks plus one meaningful default. Zero or multiple owners are errors.model.pyexposes one plainbuild(request, writer)function. It owns model config, weights, TensorRT graphs, precision, parallelism, and bundle section semantics. It must not inherit a builder or import another family.runtime/CMakeLists.txtbuildstrtmc_model_<family>. The family factory and pipeline implement the required abstract interface fromtrtmc/task.hand drive engines through the public backend contract.requirements.txtcontains only optional packages needed by this family.tests/owns direct build/runtime E2E, manifests, thresholds, fixtures, and focused Python or C++ tests.
Keep model behavior inside the owner even when another family looks similar. Do not modify core merely to reduce duplicated lines. If the requested user behavior cannot be expressed by an existing Task interface, stop and describe the required shared contract before expanding scope.
Prove the smallest real path
First make one exact testcase work end to end:
checkpoint -> support resolution -> family build -> bundle
-> family DSO -> abstract Task API -> real output
Then run repository ownership checks and the selected family tests:
PYTHONPATH=core/builder:apps/benchmark:. python3 -m tools.model_ci validate
PYTHONPATH=core/builder:apps/benchmark:. python3 -m pytest \
families/<family>/tests --e2e-model <family> -q
git diff --check
Do not weaken the family oracle or add configuration for an unrequested future case. Report the exact checkpoint, commands, results, hardware, and checks not run before claiming support.