You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Status:Not started — comment here before beginning work.
Family:families/convbert/ Current declared task mode(s):embedding, encoding, reranking Target semantic Task(s): Identify the existing semantic Task contract(s) that preserve every current capability; record the exact IDs in the PR.
Related family CLI work: #1377. It is a separate change and does not complete this Task migration.
Work
Inventory this family's primary and secondary behavior, including batch, streaming, raw outputs and stateful operations where supported. Record the current defaults, profiles, checkpoint cases, and reference criteria.
Implement and bind the matching semantic Task interface(s) in this family's runtime. Preserve its graph, preprocessing, inference, postprocessing, configuration and complete owned results.
Align family-owned support, build metadata and manifests with the primary Task. Advertise only interfaces implemented by the loaded bundle; document whether existing bundles need rebuilding.
Add family-owned CPU contracts and public C/C++ SDK consumers. Cover invalid inputs, configuration handling, result lifetime and every relevant lifecycle.
Run a selected real checkpoint E2E with the existing oracle and thresholds, then check the remaining declared capabilities and public CLI, example and benchmark paths. Preserve meaningful passing criteria.
PR evidence
Link the migration PR here. Report the tested revision, exact commands and results, selected checkpoint cases, original reference checks, current-head CI, and any untested configurations. Keep a normal migration within families/convbert/**; raise a separate linked prerequisite issue if a shared contract is genuinely missing. Do not weaken an acceptance criterion to pass CI.
The migration stays inside families/convbert/**. If a shared contract turns out to be missing, I'll open a separate linked prerequisite issue instead of touching core/.
Inventory: document the primary and secondary behavior for all three modes (batch, streaming, raw outputs, stateful operations where supported), plus defaults, profiles, checkpoint cases, and the existing oracle and thresholds. I'll put this table in the PR.
Task mapping: find the existing semantic Task contract(s) in core/api (per feat(api): add semantic Task C ABI and C++ SDK #1226) that together preserve every current capability, and record the exact IDs in the PR. I'll post the proposed mapping here before large code changes so it can be corrected early.
Runtime: implement and bind the Task interface(s) in families/convbert/runtime/, preserving the graph, preprocessing, inference, postprocessing, configuration and complete owned results.
Support and build metadata: align support.py, build metadata and manifests with the primary Task. Advertise only interfaces the loaded bundle implements, and document whether existing bundles need rebuilding.
Tests: family-owned CPU contract tests (invalid inputs, configuration handling, result lifetime, every relevant lifecycle), updated test_support.py with positive and negative identity cases, and public C/C++ SDK consumers.
Validation: run tools.model_ci validate, tools/test_impact.py, source-quality and impact checks, family unit tests and the native target locally. Then run a selected real-checkpoint E2E with the existing oracle and thresholds (no threshold changes), and check the remaining capabilities plus the CLI, example and benchmark paths.
PR evidence will include the tested revision, exact commands and results, selected checkpoint cases, original reference checks, current-head CI, and any untested configurations.
Activity
Darshan3690 commentedon Oct 1, 2026
Hi @yifeif-nv, I'd like to take this issue (ConvBERT family Task SDK migration, parent epic #1430). Starting now.
Scope understanding
families/convbert/, declared task modes:embedding,encoding,rerankingfamilies/convbert/**. If a shared contract turns out to be missing, I'll open a separate linked prerequisite issue instead of touchingcore/.Plan
core/api(per feat(api): add semantic Task C ABI and C++ SDK #1226) that together preserve every current capability, and record the exact IDs in the PR. I'll post the proposed mapping here before large code changes so it can be corrected early.families/convbert/runtime/, preserving the graph, preprocessing, inference, postprocessing, configuration and complete owned results.support.py, build metadata and manifests with the primary Task. Advertise only interfaces the loaded bundle implements, and document whether existing bundles need rebuilding.test_support.pywith positive and negative identity cases, and public C/C++ SDK consumers.tools.model_ci validate,tools/test_impact.py, source-quality and impact checks, family unit tests and the native target locally. Then run a selected real-checkpoint E2E with the existing oracle and thresholds (no threshold changes), and check the remaining capabilities plus the CLI, example and benchmark paths.PR evidence will include the tested revision, exact commands and results, selected checkpoint cases, original reference checks, current-head CI, and any untested configurations.