[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill-nvidia-nv-reason-cxr":3,"mdc--23874o-key":31,"related-repo-nvidia-nv-reason-cxr":2190,"related-org-nvidia-nv-reason-cxr":2294},{"slug":4,"name":4,"fn":5,"description":6,"org":7,"tags":11,"stars":20,"repoUrl":21,"updatedAt":22,"license":23,"forks":24,"topics":25,"repo":26,"sourceUrl":29,"mdContent":30},"nv-reason-cxr","run NV-Reason-CXR chest X-ray smoke tests","Used for command-shape or live NV-Reason-CXR chest X-ray reasoning smoke tests. Not for diagnosis or clinical reporting.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},"nvidia","NVIDIA","https:\u002F\u002Fpexgzepcugksgbtrxkhf.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Forg-logos\u002Fnvidia.png",[12,16,17],{"name":13,"slug":14,"type":15},"Healthcare","healthcare","tag",{"name":9,"slug":8,"type":15},{"name":18,"slug":19,"type":15},"Testing","testing",2473,"https:\u002F\u002Fgithub.com\u002FNVIDIA\u002Fskills","2026-07-14T05:28:48.072084","Apache-2.0",281,[],{"repoUrl":21,"stars":20,"forks":24,"topics":27,"description":28},[],"AI agent skills published by NVIDIA","https:\u002F\u002Fgithub.com\u002FNVIDIA\u002Fskills\u002Ftree\u002FHEAD\u002Fskills\u002Fnv-reason-cxr","---\nname: nv-reason-cxr\ndescription: Used for command-shape or live NV-Reason-CXR chest X-ray reasoning smoke tests. Not for diagnosis or clinical reporting.\nlicense: Apache-2.0\nallowed-tools: Bash\nmetadata:\n  author: NVIDIA MedTech Team\n  tags:\n    - MedTech\n    - CXR\n    - reasoning\n---\n\n# NV-Reason-CXR\n\n## Purpose\n- Used for command-shape or live NV-Reason-CXR chest X-ray reasoning smoke tests. Not for diagnosis or clinical reporting.\n- Use the wrapper exactly as documented; do not replace the upstream entrypoint with a handwritten implementation.\n- Manifest I\u002FO: inputs are `chest_xray_image_or_fixture`; outputs are `result_json`.\n\n## Instructions\n- Read `skill_manifest.yaml` before changing arguments, side effects, or validation gates.\n- Run `scripts\u002Frun_nv_reason_cxr.py` through the documented command below; pass `--out-dir` only for generated fixtures or harness-managed artifact directories.\n- If a host agent exposes `run_script`, use `run_script(\"scripts\u002Frun_nv_reason_cxr.py\", args=[...])`; otherwise run the Bash\u002FPython command shown below.\n- Check the emitted JSON and paired verifier guidance before treating the run as evidence.\n- When reporting a completed run, return the full wrapper JSON or at minimum\n  the complete `output.response_text` exactly as emitted, including any\n  model-generated `\u003Cthink>...\u003C\u002Fthink>` and `\u003Canswer>...\u003C\u002Fanswer>` sections. Do\n  not collapse the result to labels unless the user explicitly asks for a\n  summary.\n\n## Available Scripts\n| Script | Purpose | Arguments |\n|---|---|---|\n| `scripts\u002Frun_nv_reason_cxr.py` | Primary entrypoint declared by skill_manifest.yaml. | `PATH_TO_CXR_OR_FIXTURE [--out-dir OUT_DIR] [--backend local\\|hf-space-api] [--mock] [--check-setup]` |\n\n## Prerequisites\n- Local backend requirements: GPU\u002FCUDA when declared by the manifest; Python packages listed in `runtime.side_effects.pip_packages`.\n- API backend requirements: public network access to the [Hugging Face Space](https:\u002F\u002Fhuggingface.co\u002Fspaces\u002Fnvidia\u002Fnv-reason-cxr); no local PyTorch, Transformers, CUDA, model cache, or Hugging Face token.\n- Side effects: emits result JSON on stdout; may write generated fixture artifacts under the caller's `--out-dir`; may cache model assets under `~\u002F.cache\u002Fhuggingface\u002F` for local inference; and may contact `https:\u002F\u002Fhuggingface.co`, `https:\u002F\u002Fgithub.com`, or `https:\u002F\u002F*.hf.space` outside `--mock` mode.\n- Run commands from the repository root unless an existing section below says otherwise.\n\n## Limitations\n- This is a thin wrapper. Image preprocessing, model inference, and decoding are delegated to Hugging Face Transformers and the NV-Reason-CXR-3B model.\n- Output is not a diagnosis, clinical report, treatment recommendation, or triage decision. It is engineering evidence and must be reviewed by a qualified professional before any medical use.\n- The model may hallucinate findings, miss subtle abnormalities, misread support devices, or produce overconfident prose.\n- The committed fixture uses a generated synthetic PNG and deterministic mock response so CI can verify wrapper behavior without downloading model weights. Mock mode is not a substitute for model inference.\n- The `hf-space-api` backend depends on public Hugging Face Space availability and API compatibility.\n- Not for clinical deployment, clinical interpretation, autonomous diagnosis, treatment decisions.\n\n## Troubleshooting\n| Error | Cause | Fix |\n|---|---|---|\n| Missing dependency or import error | Runtime package drift from `skill_manifest.yaml`. | Install the packages declared in the manifest or use the documented setup command. |\n| CUDA unavailable from an agent but available in a user terminal | The agent sandbox, container, or job wrapper may not expose NVIDIA device nodes even when the same Python environment has CUDA-capable PyTorch installed. | Compare `python -c \"import torch; print(torch.cuda.is_available())\"` and `nvidia-smi` inside the agent context and in the user terminal. If only the agent context fails, rerun with GPU\u002Fdevice access, use the host terminal, or pass `--device cpu --allow-cpu` only for an explicit slow CPU test. |\n| API backend HTTP or schema error | The public Hugging Face Space may be unavailable, rate limited, or changed. | Re-run later or use `--backend local` when local dependencies and CUDA are available. |\n| Empty or schema-invalid output | Wrong input path, unsupported modality, or upstream failure. | Re-run with a known fixture and inspect the wrapper JSON plus stderr. |\n| Validation gate failure | Output violated a declared engineering invariant. | Keep the failed evidence pack and use the gate message to repair inputs or wrapper code. |\n\nRuns NVIDIA-Medtech [`NV-Reason-CXR-3B`](https:\u002F\u002Fgithub.com\u002FNVIDIA-Medtech\u002FNV-Reason-CXR\u002Ftree\u002F83a4d51c9fbbff68156a5f01796f04e26519b6ad)\nfor chest X-ray image interpretation through either the documented local\nHugging Face Transformers inference path or the public Hugging Face Space API.\nThe wrapper does not reimplement the model, image preprocessing, or decoding.\n\n\n## Exact Runnable Surface\n\nFor command-shape smoke tests and JSON fixtures, use this repo-root wrapper path exactly:\n\n```bash\npython skills\u002Fnv-reason-cxr\u002Fscripts\u002Frun_nv_reason_cxr.py PATH_TO_CXR_OR_FIXTURE --mock --out-dir OUT_DIR\n```\n\nFor local live image inference, omit `--mock` only when the user asks for live\nmodel inference. Local is the default backend:\n\n```bash\npython skills\u002Fnv-reason-cxr\u002Fscripts\u002Frun_nv_reason_cxr.py PATH_TO_CXR_OR_FIXTURE \\\n  --prompt \"Find abnormalities and support devices.\" \\\n  --backend local\n```\n\nFor public API inference without local model packages, use:\n\n```bash\npython skills\u002Fnv-reason-cxr\u002Fscripts\u002Frun_nv_reason_cxr.py PATH_TO_CXR_OR_FIXTURE \\\n  --prompt \"Find abnormalities and support devices.\" \\\n  --backend hf-space-api\n```\n\nDo not invent `Medical AI Skills run`, `eval_engine\u002Frun.py`, `infer.py`, or\n`python -m nv_reason_cxr` commands for ordinary user runs.\n\n## Preconditions\n\nFor `--backend local`, install the inference dependencies in the environment\nthat will run the skill:\n\n```bash\npip install torch==2.7.1 torchvision==0.22.1 transformers==4.56.1 Pillow\n```\n\nThe model weights and remote model code are loaded from\n`nvidia\u002FNV-Reason-CXR-3B` revision\n`056bd0383b35226554da9dc5866e095df174ae19` through Transformers. They may\ndownload to the Hugging Face cache on first use.\nSet `TRANSFORMERS_OFFLINE=1` or pass `--local-files-only` only after the\nweights are already cached.\n\nCUDA is expected for practical inference. CPU execution may work for small\ntests but is slow and must be requested explicitly.\n\nFor `--backend hf-space-api`, no local PyTorch, Transformers, CUDA, model\ncache, or Hugging Face token is required. The backend sends the image and\nprompt to the public `nvidia\u002Fnv-reason-cxr` Hugging Face Space.\n\nCheck the local environment before downloading weights or running inference:\n\n```bash\npython skills\u002Fnv-reason-cxr\u002Fscripts\u002Frun_nv_reason_cxr.py --check-setup\n```\n\nThe setup report checks importable dependencies, CUDA visibility, Hugging Face\ncache state, and the recommended next step.\n\nOperational environment variables:\n\n| Variable | When to use |\n|---|---|\n| `MOCK_NV_REASON_CXR` | Set to `1` for deterministic command-shape smoke tests without model inference. |\n| `NV_REASON_CXR_MODEL` | Override the Hugging Face model id only for compatibility probes. |\n| `HF_HOME` | Point at a pre-populated Hugging Face cache. |\n| `HF_TOKEN` | Optional for local model downloads only when required by the local environment; not needed for the public API backend. |\n| `TRANSFORMERS_OFFLINE` | Set to `1` only after weights are already cached. |\n| `HF_HUB_OFFLINE` | Set to `1` only after Hugging Face assets are already cached. |\n\n## Prompt Routing\n\nChoose both the model prompt and the user-facing output mode before running\nthe wrapper. Routing order matters: exact model-prompt requests use\npass-through\u002Fraw-only mode first; otherwise report-generation requests take\nprecedence over general analysis and specific-question routing.\n\nUse pass-through\u002Fraw-only mode only when the user explicitly asks to send an\nexact prompt to the model, such as \"call the model with this prompt exactly:\n...\". Pass only that exact model prompt as `--prompt`.\n\nUse abnormality-analysis mode when the user asks to analyze, examine, or find\nabnormalities in a chest X-ray. Treat local image paths, uploaded filenames,\nbackend choices such as \"use API\" or \"use local\", output delivery instructions,\nand other agent orchestration text as wrapper instructions, not model prompt\ncontent. Do not include local filesystem paths, backend names, or \"use API\" in\n`--prompt` unless the user explicitly asks to send that exact text to the\nmodel. For ordinary abnormality-finding requests, use the documented prompt,\nusually `--prompt \"Find abnormalities and support devices.\"`, with the\nrequested backend.\n\nUse report-generation\u002Ftwo-call mode if the user asks to write, create, or\ngenerate a structured report, chest X-ray report, radiology report, or report.\nIf sufficient raw model context for the same image is already available,\nespecially output from `Find abnormalities and support devices.`, skip the context-gathering\ncall. Otherwise first run the wrapper with `--prompt \"Examine the chest\nX-ray.\"` to gather context, but do not show that first call. Then run the\nwrapper again with a multi-turn transcript prompt:\n\n```text\nUser: Find abnormalities and support devices.\n\nAssistant:\n\u003Craw model context>\n\nUser: Write a structured report.\n```\n\nTreat the second call as the completed run.\n\nUse default-prompt\u002Fcontext-answer mode when the user asks a specific question\nabout a finding, such as presence, count, location, or characterization, or\nmixes general analysis with specific questions. Run the wrapper with\n`--prompt \"Find abnormalities and support devices.\"` before answering the original question\nin plain text prefixed exactly with `Answer:`. Base the answer only on the raw\nmodel output context and the image.\n\n## Follow-up Handling\n\nFor follow-up questions about an image already analyzed in the conversation,\nreuse prior raw model context when it is sufficient. For report follow-ups, use\nreport-generation\u002Ftwo-call mode and skip directly to the second model call if\nthere is sufficient context. If prior context is insufficient and the same\nimage path or image bytes are available, call the wrapper again using the\nprompt routing rules above. If the image is no longer available, ask the user\nto reattach it.\n\nFor long multi-turn prompts that include prior raw model output, prefer a\nquoted Bash here-doc variable so XML-like tags, apostrophes, quotes, and\nnewlines are preserved:\n\n```bash\nIFS= read -r -d '' prompt \u003C\u003C'PROMPT'\nUser: Examine the chest X-ray.\n\nAssistant:\n\u003Craw model context>\n\nUser: Write a structured report.\nPROMPT\n\npython skills\u002Fnv-reason-cxr\u002Fscripts\u002Frun_nv_reason_cxr.py PATH_TO_CXR.png \\\n  --prompt \"$prompt\" \\\n  --backend hf-space-api\n```\n\nUse `IFS= read -r -d '' prompt \u003C\u003C'PROMPT'`, not command substitution, for long\npasted transcripts.\n\n## License\n\nThe upstream repository code is Apache-2.0. The model weights are released\nunder the NVIDIA OneWay Noncommercial License Agreement. Users are responsible\nfor complying with the model-weight terms before live inference.\n\n## Usage\n\nFrom Medical AI Skills repo root:\n\n```bash\npython skills\u002Fnv-reason-cxr\u002Fscripts\u002Frun_nv_reason_cxr.py PATH_TO_CXR.png \\\n  --prompt \"Find abnormalities and support devices.\" \\\n  --backend local\n```\n\nFor public API inference without installing model packages locally:\n\n```bash\npython skills\u002Fnv-reason-cxr\u002Fscripts\u002Frun_nv_reason_cxr.py PATH_TO_CXR.png \\\n  --prompt \"Find abnormalities and support devices.\" \\\n  --backend hf-space-api\n```\n\nFor user requests that include local path or backend instructions, keep those\ninstructions out of the model prompt:\n\n```text\nUser request: find abnormalities in ~\u002FDesktop\u002F363.jpg (use API)\n```\n\n```bash\npython skills\u002Fnv-reason-cxr\u002Fscripts\u002Frun_nv_reason_cxr.py ~\u002FDesktop\u002F363.jpg \\\n  --prompt \"Find abnormalities and support devices.\" \\\n  --backend hf-space-api\n```\n\nUse the wrapper script directly for agent-generated commands. Do not replace\nit with `eval_engine\u002Frun.py` unless the user explicitly asks to run the eval\nharness. Do not redirect stdout with `>` in generated commands: callers and\nthe eval harness read the wrapper's stdout JSON to verify the run. The direct\nrunnable surface is:\n\n```bash\npython skills\u002Fnv-reason-cxr\u002Fscripts\u002Frun_nv_reason_cxr.py PATH_TO_CXR_OR_FIXTURE \\\n  --mock \\\n  --out-dir runs\u002Fnv_reason_cxr_case\n```\n\n`PATH_TO_CXR_OR_FIXTURE` may be a PNG\u002FJPEG image or a JSON fixture. If the\nuser provides a JSON request such as\n`runs\u002F...\u002Fsynthetic_cxr_input.json`, pass that exact JSON path as the first\nargument. The script will load `generated:\u002F\u002Fsynthetic_chest_xray` fixtures,\ncreate the temporary PNG under the output directory, and emit JSON with the\nmodel response. Use `--mock` only for command-shape smoke tests or fixtures\nthat request mock mode; omit `--mock` for live model inference.\n\nFor JPEG input:\n\n```bash\npython skills\u002Fnv-reason-cxr\u002Fscripts\u002Frun_nv_reason_cxr.py PATH_TO_CXR.jpg \\\n  --prompt \"Describe the chest X-ray findings.\" \\\n  --backend local\n```\n\nFlags:\n\n- `--backend local|hf-space-api` — inference backend, default `local`.\n- `--model-id` — Hugging Face model id, default `nvidia\u002FNV-Reason-CXR-3B`.\n- `--device auto|cuda|cpu` — default `auto`, using CUDA when available.\n- `--allow-cpu` — required for live CPU inference; CPU runs can be very slow.\n- `--torch-dtype auto|float16|bfloat16|float32` — default `auto`, using\n  bfloat16 on CUDA and float32 on CPU, matching the published BF16 model.\n- `--max-new-tokens` — generation cap, default 2048.\n- `--local-files-only` — use only locally cached Hugging Face assets.\n- `--mock` — deterministic dry-run response for CI and wiring checks.\n- `--prompt-preset findings|comprehensive|educational|structured` — optional\n  known-good prompt presets from the model card\u002Fdemo behavior.\n- `--out-dir` — optional artifact directory. Required for generated JSON\n  fixtures; the eval harness passes it explicitly.\n\nThe tested local live path uses:\n\n- `AutoModelForImageTextToText.from_pretrained(..., dtype=torch.bfloat16).eval().to(\"cuda\")`\n- `AutoProcessor.from_pretrained(..., use_fast=True)`\n- PNG\u002FJPEG image input plus one text prompt\n- `max_new_tokens=2048` by default\n\nThe script emits JSON on stdout and writes no clinical report files. Direct\nPNG\u002FJPEG runs do not create a default output directory. Generated JSON fixtures\nrequire `--out-dir` for the temporary synthetic image. The result JSON records\ninput image metadata, prompt, model id, runtime mode, response text, and known\nlimitations. If `runtime.truncated_by_max_new_tokens` is `true`, rerun with a\nhigher `--max-new-tokens` value.\n\nReporting reminder: for both `local` and `hf-space-api` backends, follow the\ncompleted-run rule in Instructions.\n\nThe `hf-space-api` backend calls the fixed public Hugging Face Space at\n`https:\u002F\u002Fnvidia-nv-reason-cxr.hf.space` with a 300 second HTTP timeout.\n\n## Fixture Smoke Test\n\nThe committed fixture uses a generated synthetic PNG and mock mode so the\neval harness can verify the wrapper without downloading weights:\n\n```bash\npython eval_engine\u002Frun.py skills\u002Fnv-reason-cxr \\\n  --fixture skills\u002Fnv-reason-cxr\u002Ffixtures\u002Fsynthetic_cxr_input.json \\\n  --out runs\u002Fnv_reason_cxr_smoke\n```\n\n## Limits\n\nThis is research and engineering tooling only. It is not validated for\nclinical diagnosis, treatment decisions, triage, patient-facing reporting, or\nregulatory use. Model outputs can hallucinate, miss subtle findings, or\noverstate uncertainty. A qualified professional must review any use in a\nmedical workflow.\n",{"data":32,"body":40},{"name":4,"description":6,"license":23,"allowed-tools":33,"metadata":34},"Bash",{"author":35,"tags":36},"NVIDIA MedTech Team",[37,38,39],"MedTech","CXR","reasoning",{"type":41,"children":42},"root",[43,51,58,94,100,192,198,255,261,349,355,396,402,556,575,581,586,635,647,718,723,784,819,825,837,893,930,935,955,960,983,988,993,1137,1143,1148,1160,1180,1200,1210,1215,1235,1241,1246,1251,1434,1447,1453,1458,1464,1469,1529,1534,1594,1599,1608,1669,1689,1740,1781,1786,1848,1853,1990,1995,2032,2067,2085,2104,2110,2115,2173,2179,2184],{"type":44,"tag":45,"props":46,"children":47},"element","h1",{"id":4},[48],{"type":49,"value":50},"text","NV-Reason-CXR",{"type":44,"tag":52,"props":53,"children":55},"h2",{"id":54},"purpose",[56],{"type":49,"value":57},"Purpose",{"type":44,"tag":59,"props":60,"children":61},"ul",{},[62,67,72],{"type":44,"tag":63,"props":64,"children":65},"li",{},[66],{"type":49,"value":6},{"type":44,"tag":63,"props":68,"children":69},{},[70],{"type":49,"value":71},"Use the wrapper exactly as documented; do not replace the upstream entrypoint with a handwritten implementation.",{"type":44,"tag":63,"props":73,"children":74},{},[75,77,84,86,92],{"type":49,"value":76},"Manifest I\u002FO: inputs are ",{"type":44,"tag":78,"props":79,"children":81},"code",{"className":80},[],[82],{"type":49,"value":83},"chest_xray_image_or_fixture",{"type":49,"value":85},"; outputs are ",{"type":44,"tag":78,"props":87,"children":89},{"className":88},[],[90],{"type":49,"value":91},"result_json",{"type":49,"value":93},".",{"type":44,"tag":52,"props":95,"children":97},{"id":96},"instructions",[98],{"type":49,"value":99},"Instructions",{"type":44,"tag":59,"props":101,"children":102},{},[103,116,137,158,163],{"type":44,"tag":63,"props":104,"children":105},{},[106,108,114],{"type":49,"value":107},"Read ",{"type":44,"tag":78,"props":109,"children":111},{"className":110},[],[112],{"type":49,"value":113},"skill_manifest.yaml",{"type":49,"value":115}," before changing arguments, side effects, or validation gates.",{"type":44,"tag":63,"props":117,"children":118},{},[119,121,127,129,135],{"type":49,"value":120},"Run ",{"type":44,"tag":78,"props":122,"children":124},{"className":123},[],[125],{"type":49,"value":126},"scripts\u002Frun_nv_reason_cxr.py",{"type":49,"value":128}," through the documented command below; pass ",{"type":44,"tag":78,"props":130,"children":132},{"className":131},[],[133],{"type":49,"value":134},"--out-dir",{"type":49,"value":136}," only for generated fixtures or harness-managed artifact directories.",{"type":44,"tag":63,"props":138,"children":139},{},[140,142,148,150,156],{"type":49,"value":141},"If a host agent exposes ",{"type":44,"tag":78,"props":143,"children":145},{"className":144},[],[146],{"type":49,"value":147},"run_script",{"type":49,"value":149},", use ",{"type":44,"tag":78,"props":151,"children":153},{"className":152},[],[154],{"type":49,"value":155},"run_script(\"scripts\u002Frun_nv_reason_cxr.py\", args=[...])",{"type":49,"value":157},"; otherwise run the Bash\u002FPython command shown below.",{"type":44,"tag":63,"props":159,"children":160},{},[161],{"type":49,"value":162},"Check the emitted JSON and paired verifier guidance before treating the run as evidence.",{"type":44,"tag":63,"props":164,"children":165},{},[166,168,174,176,182,184,190],{"type":49,"value":167},"When reporting a completed run, return the full wrapper JSON or at minimum\nthe complete ",{"type":44,"tag":78,"props":169,"children":171},{"className":170},[],[172],{"type":49,"value":173},"output.response_text",{"type":49,"value":175}," exactly as emitted, including any\nmodel-generated ",{"type":44,"tag":78,"props":177,"children":179},{"className":178},[],[180],{"type":49,"value":181},"\u003Cthink>...\u003C\u002Fthink>",{"type":49,"value":183}," and ",{"type":44,"tag":78,"props":185,"children":187},{"className":186},[],[188],{"type":49,"value":189},"\u003Canswer>...\u003C\u002Fanswer>",{"type":49,"value":191}," sections. Do\nnot collapse the result to labels unless the user explicitly asks for a\nsummary.",{"type":44,"tag":52,"props":193,"children":195},{"id":194},"available-scripts",[196],{"type":49,"value":197},"Available Scripts",{"type":44,"tag":199,"props":200,"children":201},"table",{},[202,225],{"type":44,"tag":203,"props":204,"children":205},"thead",{},[206],{"type":44,"tag":207,"props":208,"children":209},"tr",{},[210,216,220],{"type":44,"tag":211,"props":212,"children":213},"th",{},[214],{"type":49,"value":215},"Script",{"type":44,"tag":211,"props":217,"children":218},{},[219],{"type":49,"value":57},{"type":44,"tag":211,"props":221,"children":222},{},[223],{"type":49,"value":224},"Arguments",{"type":44,"tag":226,"props":227,"children":228},"tbody",{},[229],{"type":44,"tag":207,"props":230,"children":231},{},[232,241,246],{"type":44,"tag":233,"props":234,"children":235},"td",{},[236],{"type":44,"tag":78,"props":237,"children":239},{"className":238},[],[240],{"type":49,"value":126},{"type":44,"tag":233,"props":242,"children":243},{},[244],{"type":49,"value":245},"Primary entrypoint declared by skill_manifest.yaml.",{"type":44,"tag":233,"props":247,"children":248},{},[249],{"type":44,"tag":78,"props":250,"children":252},{"className":251},[],[253],{"type":49,"value":254},"PATH_TO_CXR_OR_FIXTURE [--out-dir OUT_DIR] [--backend local|hf-space-api] [--mock] [--check-setup]",{"type":44,"tag":52,"props":256,"children":258},{"id":257},"prerequisites",[259],{"type":49,"value":260},"Prerequisites",{"type":44,"tag":59,"props":262,"children":263},{},[264,276,292,344],{"type":44,"tag":63,"props":265,"children":266},{},[267,269,275],{"type":49,"value":268},"Local backend requirements: GPU\u002FCUDA when declared by the manifest; Python packages listed in ",{"type":44,"tag":78,"props":270,"children":272},{"className":271},[],[273],{"type":49,"value":274},"runtime.side_effects.pip_packages",{"type":49,"value":93},{"type":44,"tag":63,"props":277,"children":278},{},[279,281,290],{"type":49,"value":280},"API backend requirements: public network access to the ",{"type":44,"tag":282,"props":283,"children":287},"a",{"href":284,"rel":285},"https:\u002F\u002Fhuggingface.co\u002Fspaces\u002Fnvidia\u002Fnv-reason-cxr",[286],"nofollow",[288],{"type":49,"value":289},"Hugging Face Space",{"type":49,"value":291},"; no local PyTorch, Transformers, CUDA, model cache, or Hugging Face token.",{"type":44,"tag":63,"props":293,"children":294},{},[295,297,302,304,310,312,318,320,326,328,334,336,342],{"type":49,"value":296},"Side effects: emits result JSON on stdout; may write generated fixture artifacts under the caller's ",{"type":44,"tag":78,"props":298,"children":300},{"className":299},[],[301],{"type":49,"value":134},{"type":49,"value":303},"; may cache model assets under ",{"type":44,"tag":78,"props":305,"children":307},{"className":306},[],[308],{"type":49,"value":309},"~\u002F.cache\u002Fhuggingface\u002F",{"type":49,"value":311}," for local inference; and may contact ",{"type":44,"tag":78,"props":313,"children":315},{"className":314},[],[316],{"type":49,"value":317},"https:\u002F\u002Fhuggingface.co",{"type":49,"value":319},", ",{"type":44,"tag":78,"props":321,"children":323},{"className":322},[],[324],{"type":49,"value":325},"https:\u002F\u002Fgithub.com",{"type":49,"value":327},", or ",{"type":44,"tag":78,"props":329,"children":331},{"className":330},[],[332],{"type":49,"value":333},"https:\u002F\u002F*.hf.space",{"type":49,"value":335}," outside ",{"type":44,"tag":78,"props":337,"children":339},{"className":338},[],[340],{"type":49,"value":341},"--mock",{"type":49,"value":343}," mode.",{"type":44,"tag":63,"props":345,"children":346},{},[347],{"type":49,"value":348},"Run commands from the repository root unless an existing section below says otherwise.",{"type":44,"tag":52,"props":350,"children":352},{"id":351},"limitations",[353],{"type":49,"value":354},"Limitations",{"type":44,"tag":59,"props":356,"children":357},{},[358,363,368,373,378,391],{"type":44,"tag":63,"props":359,"children":360},{},[361],{"type":49,"value":362},"This is a thin wrapper. Image preprocessing, model inference, and decoding are delegated to Hugging Face Transformers and the NV-Reason-CXR-3B model.",{"type":44,"tag":63,"props":364,"children":365},{},[366],{"type":49,"value":367},"Output is not a diagnosis, clinical report, treatment recommendation, or triage decision. It is engineering evidence and must be reviewed by a qualified professional before any medical use.",{"type":44,"tag":63,"props":369,"children":370},{},[371],{"type":49,"value":372},"The model may hallucinate findings, miss subtle abnormalities, misread support devices, or produce overconfident prose.",{"type":44,"tag":63,"props":374,"children":375},{},[376],{"type":49,"value":377},"The committed fixture uses a generated synthetic PNG and deterministic mock response so CI can verify wrapper behavior without downloading model weights. Mock mode is not a substitute for model inference.",{"type":44,"tag":63,"props":379,"children":380},{},[381,383,389],{"type":49,"value":382},"The ",{"type":44,"tag":78,"props":384,"children":386},{"className":385},[],[387],{"type":49,"value":388},"hf-space-api",{"type":49,"value":390}," backend depends on public Hugging Face Space availability and API compatibility.",{"type":44,"tag":63,"props":392,"children":393},{},[394],{"type":49,"value":395},"Not for clinical deployment, clinical interpretation, autonomous diagnosis, treatment decisions.",{"type":44,"tag":52,"props":397,"children":399},{"id":398},"troubleshooting",[400],{"type":49,"value":401},"Troubleshooting",{"type":44,"tag":199,"props":403,"children":404},{},[405,426],{"type":44,"tag":203,"props":406,"children":407},{},[408],{"type":44,"tag":207,"props":409,"children":410},{},[411,416,421],{"type":44,"tag":211,"props":412,"children":413},{},[414],{"type":49,"value":415},"Error",{"type":44,"tag":211,"props":417,"children":418},{},[419],{"type":49,"value":420},"Cause",{"type":44,"tag":211,"props":422,"children":423},{},[424],{"type":49,"value":425},"Fix",{"type":44,"tag":226,"props":427,"children":428},{},[429,453,494,520,538],{"type":44,"tag":207,"props":430,"children":431},{},[432,437,448],{"type":44,"tag":233,"props":433,"children":434},{},[435],{"type":49,"value":436},"Missing dependency or import error",{"type":44,"tag":233,"props":438,"children":439},{},[440,442,447],{"type":49,"value":441},"Runtime package drift from ",{"type":44,"tag":78,"props":443,"children":445},{"className":444},[],[446],{"type":49,"value":113},{"type":49,"value":93},{"type":44,"tag":233,"props":449,"children":450},{},[451],{"type":49,"value":452},"Install the packages declared in the manifest or use the documented setup command.",{"type":44,"tag":207,"props":454,"children":455},{},[456,461,466],{"type":44,"tag":233,"props":457,"children":458},{},[459],{"type":49,"value":460},"CUDA unavailable from an agent but available in a user terminal",{"type":44,"tag":233,"props":462,"children":463},{},[464],{"type":49,"value":465},"The agent sandbox, container, or job wrapper may not expose NVIDIA device nodes even when the same Python environment has CUDA-capable PyTorch installed.",{"type":44,"tag":233,"props":467,"children":468},{},[469,471,477,478,484,486,492],{"type":49,"value":470},"Compare ",{"type":44,"tag":78,"props":472,"children":474},{"className":473},[],[475],{"type":49,"value":476},"python -c \"import torch; print(torch.cuda.is_available())\"",{"type":49,"value":183},{"type":44,"tag":78,"props":479,"children":481},{"className":480},[],[482],{"type":49,"value":483},"nvidia-smi",{"type":49,"value":485}," inside the agent context and in the user terminal. If only the agent context fails, rerun with GPU\u002Fdevice access, use the host terminal, or pass ",{"type":44,"tag":78,"props":487,"children":489},{"className":488},[],[490],{"type":49,"value":491},"--device cpu --allow-cpu",{"type":49,"value":493}," only for an explicit slow CPU test.",{"type":44,"tag":207,"props":495,"children":496},{},[497,502,507],{"type":44,"tag":233,"props":498,"children":499},{},[500],{"type":49,"value":501},"API backend HTTP or schema error",{"type":44,"tag":233,"props":503,"children":504},{},[505],{"type":49,"value":506},"The public Hugging Face Space may be unavailable, rate limited, or changed.",{"type":44,"tag":233,"props":508,"children":509},{},[510,512,518],{"type":49,"value":511},"Re-run later or use ",{"type":44,"tag":78,"props":513,"children":515},{"className":514},[],[516],{"type":49,"value":517},"--backend local",{"type":49,"value":519}," when local dependencies and CUDA are available.",{"type":44,"tag":207,"props":521,"children":522},{},[523,528,533],{"type":44,"tag":233,"props":524,"children":525},{},[526],{"type":49,"value":527},"Empty or schema-invalid output",{"type":44,"tag":233,"props":529,"children":530},{},[531],{"type":49,"value":532},"Wrong input path, unsupported modality, or upstream failure.",{"type":44,"tag":233,"props":534,"children":535},{},[536],{"type":49,"value":537},"Re-run with a known fixture and inspect the wrapper JSON plus stderr.",{"type":44,"tag":207,"props":539,"children":540},{},[541,546,551],{"type":44,"tag":233,"props":542,"children":543},{},[544],{"type":49,"value":545},"Validation gate failure",{"type":44,"tag":233,"props":547,"children":548},{},[549],{"type":49,"value":550},"Output violated a declared engineering invariant.",{"type":44,"tag":233,"props":552,"children":553},{},[554],{"type":49,"value":555},"Keep the failed evidence pack and use the gate message to repair inputs or wrapper code.",{"type":44,"tag":557,"props":558,"children":559},"p",{},[560,562,573],{"type":49,"value":561},"Runs NVIDIA-Medtech ",{"type":44,"tag":282,"props":563,"children":566},{"href":564,"rel":565},"https:\u002F\u002Fgithub.com\u002FNVIDIA-Medtech\u002FNV-Reason-CXR\u002Ftree\u002F83a4d51c9fbbff68156a5f01796f04e26519b6ad",[286],[567],{"type":44,"tag":78,"props":568,"children":570},{"className":569},[],[571],{"type":49,"value":572},"NV-Reason-CXR-3B",{"type":49,"value":574},"\nfor chest X-ray image interpretation through either the documented local\nHugging Face Transformers inference path or the public Hugging Face Space API.\nThe wrapper does not reimplement the model, image preprocessing, or decoding.",{"type":44,"tag":52,"props":576,"children":578},{"id":577},"exact-runnable-surface",[579],{"type":49,"value":580},"Exact Runnable Surface",{"type":44,"tag":557,"props":582,"children":583},{},[584],{"type":49,"value":585},"For command-shape smoke tests and JSON fixtures, use this repo-root wrapper path exactly:",{"type":44,"tag":587,"props":588,"children":593},"pre",{"className":589,"code":590,"language":591,"meta":592,"style":592},"language-bash shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","python skills\u002Fnv-reason-cxr\u002Fscripts\u002Frun_nv_reason_cxr.py PATH_TO_CXR_OR_FIXTURE --mock --out-dir OUT_DIR\n","bash","",[594],{"type":44,"tag":78,"props":595,"children":596},{"__ignoreMap":592},[597],{"type":44,"tag":598,"props":599,"children":602},"span",{"class":600,"line":601},"line",1,[603,609,615,620,625,630],{"type":44,"tag":598,"props":604,"children":606},{"style":605},"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B",[607],{"type":49,"value":608},"python",{"type":44,"tag":598,"props":610,"children":612},{"style":611},"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D",[613],{"type":49,"value":614}," skills\u002Fnv-reason-cxr\u002Fscripts\u002Frun_nv_reason_cxr.py",{"type":44,"tag":598,"props":616,"children":617},{"style":611},[618],{"type":49,"value":619}," PATH_TO_CXR_OR_FIXTURE",{"type":44,"tag":598,"props":621,"children":622},{"style":611},[623],{"type":49,"value":624}," --mock",{"type":44,"tag":598,"props":626,"children":627},{"style":611},[628],{"type":49,"value":629}," --out-dir",{"type":44,"tag":598,"props":631,"children":632},{"style":611},[633],{"type":49,"value":634}," OUT_DIR\n",{"type":44,"tag":557,"props":636,"children":637},{},[638,640,645],{"type":49,"value":639},"For local live image inference, omit ",{"type":44,"tag":78,"props":641,"children":643},{"className":642},[],[644],{"type":49,"value":341},{"type":49,"value":646}," only when the user asks for live\nmodel inference. Local is the default backend:",{"type":44,"tag":587,"props":648,"children":650},{"className":589,"code":649,"language":591,"meta":592,"style":592},"python skills\u002Fnv-reason-cxr\u002Fscripts\u002Frun_nv_reason_cxr.py PATH_TO_CXR_OR_FIXTURE \\\n  --prompt \"Find abnormalities and support devices.\" \\\n  --backend local\n",[651],{"type":44,"tag":78,"props":652,"children":653},{"__ignoreMap":592},[654,675,704],{"type":44,"tag":598,"props":655,"children":656},{"class":600,"line":601},[657,661,665,669],{"type":44,"tag":598,"props":658,"children":659},{"style":605},[660],{"type":49,"value":608},{"type":44,"tag":598,"props":662,"children":663},{"style":611},[664],{"type":49,"value":614},{"type":44,"tag":598,"props":666,"children":667},{"style":611},[668],{"type":49,"value":619},{"type":44,"tag":598,"props":670,"children":672},{"style":671},"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8",[673],{"type":49,"value":674}," \\\n",{"type":44,"tag":598,"props":676,"children":678},{"class":600,"line":677},2,[679,684,690,695,700],{"type":44,"tag":598,"props":680,"children":681},{"style":611},[682],{"type":49,"value":683},"  --prompt",{"type":44,"tag":598,"props":685,"children":687},{"style":686},"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF",[688],{"type":49,"value":689}," \"",{"type":44,"tag":598,"props":691,"children":692},{"style":611},[693],{"type":49,"value":694},"Find abnormalities and support devices.",{"type":44,"tag":598,"props":696,"children":697},{"style":686},[698],{"type":49,"value":699},"\"",{"type":44,"tag":598,"props":701,"children":702},{"style":671},[703],{"type":49,"value":674},{"type":44,"tag":598,"props":705,"children":707},{"class":600,"line":706},3,[708,713],{"type":44,"tag":598,"props":709,"children":710},{"style":611},[711],{"type":49,"value":712},"  --backend",{"type":44,"tag":598,"props":714,"children":715},{"style":611},[716],{"type":49,"value":717}," local\n",{"type":44,"tag":557,"props":719,"children":720},{},[721],{"type":49,"value":722},"For public API inference without local model packages, use:",{"type":44,"tag":587,"props":724,"children":726},{"className":589,"code":725,"language":591,"meta":592,"style":592},"python skills\u002Fnv-reason-cxr\u002Fscripts\u002Frun_nv_reason_cxr.py PATH_TO_CXR_OR_FIXTURE \\\n  --prompt \"Find abnormalities and support devices.\" \\\n  --backend hf-space-api\n",[727],{"type":44,"tag":78,"props":728,"children":729},{"__ignoreMap":592},[730,749,772],{"type":44,"tag":598,"props":731,"children":732},{"class":600,"line":601},[733,737,741,745],{"type":44,"tag":598,"props":734,"children":735},{"style":605},[736],{"type":49,"value":608},{"type":44,"tag":598,"props":738,"children":739},{"style":611},[740],{"type":49,"value":614},{"type":44,"tag":598,"props":742,"children":743},{"style":611},[744],{"type":49,"value":619},{"type":44,"tag":598,"props":746,"children":747},{"style":671},[748],{"type":49,"value":674},{"type":44,"tag":598,"props":750,"children":751},{"class":600,"line":677},[752,756,760,764,768],{"type":44,"tag":598,"props":753,"children":754},{"style":611},[755],{"type":49,"value":683},{"type":44,"tag":598,"props":757,"children":758},{"style":686},[759],{"type":49,"value":689},{"type":44,"tag":598,"props":761,"children":762},{"style":611},[763],{"type":49,"value":694},{"type":44,"tag":598,"props":765,"children":766},{"style":686},[767],{"type":49,"value":699},{"type":44,"tag":598,"props":769,"children":770},{"style":671},[771],{"type":49,"value":674},{"type":44,"tag":598,"props":773,"children":774},{"class":600,"line":706},[775,779],{"type":44,"tag":598,"props":776,"children":777},{"style":611},[778],{"type":49,"value":712},{"type":44,"tag":598,"props":780,"children":781},{"style":611},[782],{"type":49,"value":783}," hf-space-api\n",{"type":44,"tag":557,"props":785,"children":786},{},[787,789,795,796,802,803,809,811,817],{"type":49,"value":788},"Do not invent ",{"type":44,"tag":78,"props":790,"children":792},{"className":791},[],[793],{"type":49,"value":794},"Medical AI Skills run",{"type":49,"value":319},{"type":44,"tag":78,"props":797,"children":799},{"className":798},[],[800],{"type":49,"value":801},"eval_engine\u002Frun.py",{"type":49,"value":319},{"type":44,"tag":78,"props":804,"children":806},{"className":805},[],[807],{"type":49,"value":808},"infer.py",{"type":49,"value":810},", or\n",{"type":44,"tag":78,"props":812,"children":814},{"className":813},[],[815],{"type":49,"value":816},"python -m nv_reason_cxr",{"type":49,"value":818}," commands for ordinary user runs.",{"type":44,"tag":52,"props":820,"children":822},{"id":821},"preconditions",[823],{"type":49,"value":824},"Preconditions",{"type":44,"tag":557,"props":826,"children":827},{},[828,830,835],{"type":49,"value":829},"For ",{"type":44,"tag":78,"props":831,"children":833},{"className":832},[],[834],{"type":49,"value":517},{"type":49,"value":836},", install the inference dependencies in the environment\nthat will run the skill:",{"type":44,"tag":587,"props":838,"children":840},{"className":589,"code":839,"language":591,"meta":592,"style":592},"pip install torch==2.7.1 torchvision==0.22.1 transformers==4.56.1 Pillow\n",[841],{"type":44,"tag":78,"props":842,"children":843},{"__ignoreMap":592},[844],{"type":44,"tag":598,"props":845,"children":846},{"class":600,"line":601},[847,852,857,862,868,873,878,883,888],{"type":44,"tag":598,"props":848,"children":849},{"style":605},[850],{"type":49,"value":851},"pip",{"type":44,"tag":598,"props":853,"children":854},{"style":611},[855],{"type":49,"value":856}," install",{"type":44,"tag":598,"props":858,"children":859},{"style":611},[860],{"type":49,"value":861}," torch==",{"type":44,"tag":598,"props":863,"children":865},{"style":864},"--shiki-light:#F76D47;--shiki-default:#F78C6C;--shiki-dark:#F78C6C",[866],{"type":49,"value":867},"2.7.1",{"type":44,"tag":598,"props":869,"children":870},{"style":611},[871],{"type":49,"value":872}," torchvision==",{"type":44,"tag":598,"props":874,"children":875},{"style":864},[876],{"type":49,"value":877},"0.22.1",{"type":44,"tag":598,"props":879,"children":880},{"style":611},[881],{"type":49,"value":882}," transformers==",{"type":44,"tag":598,"props":884,"children":885},{"style":864},[886],{"type":49,"value":887},"4.56.1",{"type":44,"tag":598,"props":889,"children":890},{"style":611},[891],{"type":49,"value":892}," Pillow\n",{"type":44,"tag":557,"props":894,"children":895},{},[896,898,904,906,912,914,920,922,928],{"type":49,"value":897},"The model weights and remote model code are loaded from\n",{"type":44,"tag":78,"props":899,"children":901},{"className":900},[],[902],{"type":49,"value":903},"nvidia\u002FNV-Reason-CXR-3B",{"type":49,"value":905}," revision\n",{"type":44,"tag":78,"props":907,"children":909},{"className":908},[],[910],{"type":49,"value":911},"056bd0383b35226554da9dc5866e095df174ae19",{"type":49,"value":913}," through Transformers. They may\ndownload to the Hugging Face cache on first use.\nSet ",{"type":44,"tag":78,"props":915,"children":917},{"className":916},[],[918],{"type":49,"value":919},"TRANSFORMERS_OFFLINE=1",{"type":49,"value":921}," or pass ",{"type":44,"tag":78,"props":923,"children":925},{"className":924},[],[926],{"type":49,"value":927},"--local-files-only",{"type":49,"value":929}," only after the\nweights are already cached.",{"type":44,"tag":557,"props":931,"children":932},{},[933],{"type":49,"value":934},"CUDA is expected for practical inference. CPU execution may work for small\ntests but is slow and must be requested explicitly.",{"type":44,"tag":557,"props":936,"children":937},{},[938,939,945,947,953],{"type":49,"value":829},{"type":44,"tag":78,"props":940,"children":942},{"className":941},[],[943],{"type":49,"value":944},"--backend hf-space-api",{"type":49,"value":946},", no local PyTorch, Transformers, CUDA, model\ncache, or Hugging Face token is required. The backend sends the image and\nprompt to the public ",{"type":44,"tag":78,"props":948,"children":950},{"className":949},[],[951],{"type":49,"value":952},"nvidia\u002Fnv-reason-cxr",{"type":49,"value":954}," Hugging Face Space.",{"type":44,"tag":557,"props":956,"children":957},{},[958],{"type":49,"value":959},"Check the local environment before downloading weights or running inference:",{"type":44,"tag":587,"props":961,"children":963},{"className":589,"code":962,"language":591,"meta":592,"style":592},"python skills\u002Fnv-reason-cxr\u002Fscripts\u002Frun_nv_reason_cxr.py --check-setup\n",[964],{"type":44,"tag":78,"props":965,"children":966},{"__ignoreMap":592},[967],{"type":44,"tag":598,"props":968,"children":969},{"class":600,"line":601},[970,974,978],{"type":44,"tag":598,"props":971,"children":972},{"style":605},[973],{"type":49,"value":608},{"type":44,"tag":598,"props":975,"children":976},{"style":611},[977],{"type":49,"value":614},{"type":44,"tag":598,"props":979,"children":980},{"style":611},[981],{"type":49,"value":982}," --check-setup\n",{"type":44,"tag":557,"props":984,"children":985},{},[986],{"type":49,"value":987},"The setup report checks importable dependencies, CUDA visibility, Hugging Face\ncache state, and the recommended next step.",{"type":44,"tag":557,"props":989,"children":990},{},[991],{"type":49,"value":992},"Operational environment variables:",{"type":44,"tag":199,"props":994,"children":995},{},[996,1012],{"type":44,"tag":203,"props":997,"children":998},{},[999],{"type":44,"tag":207,"props":1000,"children":1001},{},[1002,1007],{"type":44,"tag":211,"props":1003,"children":1004},{},[1005],{"type":49,"value":1006},"Variable",{"type":44,"tag":211,"props":1008,"children":1009},{},[1010],{"type":49,"value":1011},"When to use",{"type":44,"tag":226,"props":1013,"children":1014},{},[1015,1040,1057,1074,1091,1114],{"type":44,"tag":207,"props":1016,"children":1017},{},[1018,1027],{"type":44,"tag":233,"props":1019,"children":1020},{},[1021],{"type":44,"tag":78,"props":1022,"children":1024},{"className":1023},[],[1025],{"type":49,"value":1026},"MOCK_NV_REASON_CXR",{"type":44,"tag":233,"props":1028,"children":1029},{},[1030,1032,1038],{"type":49,"value":1031},"Set to ",{"type":44,"tag":78,"props":1033,"children":1035},{"className":1034},[],[1036],{"type":49,"value":1037},"1",{"type":49,"value":1039}," for deterministic command-shape smoke tests without model inference.",{"type":44,"tag":207,"props":1041,"children":1042},{},[1043,1052],{"type":44,"tag":233,"props":1044,"children":1045},{},[1046],{"type":44,"tag":78,"props":1047,"children":1049},{"className":1048},[],[1050],{"type":49,"value":1051},"NV_REASON_CXR_MODEL",{"type":44,"tag":233,"props":1053,"children":1054},{},[1055],{"type":49,"value":1056},"Override the Hugging Face model id only for compatibility probes.",{"type":44,"tag":207,"props":1058,"children":1059},{},[1060,1069],{"type":44,"tag":233,"props":1061,"children":1062},{},[1063],{"type":44,"tag":78,"props":1064,"children":1066},{"className":1065},[],[1067],{"type":49,"value":1068},"HF_HOME",{"type":44,"tag":233,"props":1070,"children":1071},{},[1072],{"type":49,"value":1073},"Point at a pre-populated Hugging Face cache.",{"type":44,"tag":207,"props":1075,"children":1076},{},[1077,1086],{"type":44,"tag":233,"props":1078,"children":1079},{},[1080],{"type":44,"tag":78,"props":1081,"children":1083},{"className":1082},[],[1084],{"type":49,"value":1085},"HF_TOKEN",{"type":44,"tag":233,"props":1087,"children":1088},{},[1089],{"type":49,"value":1090},"Optional for local model downloads only when required by the local environment; not needed for the public API backend.",{"type":44,"tag":207,"props":1092,"children":1093},{},[1094,1103],{"type":44,"tag":233,"props":1095,"children":1096},{},[1097],{"type":44,"tag":78,"props":1098,"children":1100},{"className":1099},[],[1101],{"type":49,"value":1102},"TRANSFORMERS_OFFLINE",{"type":44,"tag":233,"props":1104,"children":1105},{},[1106,1107,1112],{"type":49,"value":1031},{"type":44,"tag":78,"props":1108,"children":1110},{"className":1109},[],[1111],{"type":49,"value":1037},{"type":49,"value":1113}," only after weights are already cached.",{"type":44,"tag":207,"props":1115,"children":1116},{},[1117,1126],{"type":44,"tag":233,"props":1118,"children":1119},{},[1120],{"type":44,"tag":78,"props":1121,"children":1123},{"className":1122},[],[1124],{"type":49,"value":1125},"HF_HUB_OFFLINE",{"type":44,"tag":233,"props":1127,"children":1128},{},[1129,1130,1135],{"type":49,"value":1031},{"type":44,"tag":78,"props":1131,"children":1133},{"className":1132},[],[1134],{"type":49,"value":1037},{"type":49,"value":1136}," only after Hugging Face assets are already cached.",{"type":44,"tag":52,"props":1138,"children":1140},{"id":1139},"prompt-routing",[1141],{"type":49,"value":1142},"Prompt Routing",{"type":44,"tag":557,"props":1144,"children":1145},{},[1146],{"type":49,"value":1147},"Choose both the model prompt and the user-facing output mode before running\nthe wrapper. Routing order matters: exact model-prompt requests use\npass-through\u002Fraw-only mode first; otherwise report-generation requests take\nprecedence over general analysis and specific-question routing.",{"type":44,"tag":557,"props":1149,"children":1150},{},[1151,1153,1159],{"type":49,"value":1152},"Use pass-through\u002Fraw-only mode only when the user explicitly asks to send an\nexact prompt to the model, such as \"call the model with this prompt exactly:\n...\". Pass only that exact model prompt as ",{"type":44,"tag":78,"props":1154,"children":1156},{"className":1155},[],[1157],{"type":49,"value":1158},"--prompt",{"type":49,"value":93},{"type":44,"tag":557,"props":1161,"children":1162},{},[1163,1165,1170,1172,1178],{"type":49,"value":1164},"Use abnormality-analysis mode when the user asks to analyze, examine, or find\nabnormalities in a chest X-ray. Treat local image paths, uploaded filenames,\nbackend choices such as \"use API\" or \"use local\", output delivery instructions,\nand other agent orchestration text as wrapper instructions, not model prompt\ncontent. Do not include local filesystem paths, backend names, or \"use API\" in\n",{"type":44,"tag":78,"props":1166,"children":1168},{"className":1167},[],[1169],{"type":49,"value":1158},{"type":49,"value":1171}," unless the user explicitly asks to send that exact text to the\nmodel. For ordinary abnormality-finding requests, use the documented prompt,\nusually ",{"type":44,"tag":78,"props":1173,"children":1175},{"className":1174},[],[1176],{"type":49,"value":1177},"--prompt \"Find abnormalities and support devices.\"",{"type":49,"value":1179},", with the\nrequested backend.",{"type":44,"tag":557,"props":1181,"children":1182},{},[1183,1185,1190,1192,1198],{"type":49,"value":1184},"Use report-generation\u002Ftwo-call mode if the user asks to write, create, or\ngenerate a structured report, chest X-ray report, radiology report, or report.\nIf sufficient raw model context for the same image is already available,\nespecially output from ",{"type":44,"tag":78,"props":1186,"children":1188},{"className":1187},[],[1189],{"type":49,"value":694},{"type":49,"value":1191},", skip the context-gathering\ncall. Otherwise first run the wrapper with ",{"type":44,"tag":78,"props":1193,"children":1195},{"className":1194},[],[1196],{"type":49,"value":1197},"--prompt \"Examine the chest X-ray.\"",{"type":49,"value":1199}," to gather context, but do not show that first call. Then run the\nwrapper again with a multi-turn transcript prompt:",{"type":44,"tag":587,"props":1201,"children":1205},{"className":1202,"code":1204,"language":49,"meta":592},[1203],"language-text","User: Find abnormalities and support devices.\n\nAssistant:\n\u003Craw model context>\n\nUser: Write a structured report.\n",[1206],{"type":44,"tag":78,"props":1207,"children":1208},{"__ignoreMap":592},[1209],{"type":49,"value":1204},{"type":44,"tag":557,"props":1211,"children":1212},{},[1213],{"type":49,"value":1214},"Treat the second call as the completed run.",{"type":44,"tag":557,"props":1216,"children":1217},{},[1218,1220,1225,1227,1233],{"type":49,"value":1219},"Use default-prompt\u002Fcontext-answer mode when the user asks a specific question\nabout a finding, such as presence, count, location, or characterization, or\nmixes general analysis with specific questions. Run the wrapper with\n",{"type":44,"tag":78,"props":1221,"children":1223},{"className":1222},[],[1224],{"type":49,"value":1177},{"type":49,"value":1226}," before answering the original question\nin plain text prefixed exactly with ",{"type":44,"tag":78,"props":1228,"children":1230},{"className":1229},[],[1231],{"type":49,"value":1232},"Answer:",{"type":49,"value":1234},". Base the answer only on the raw\nmodel output context and the image.",{"type":44,"tag":52,"props":1236,"children":1238},{"id":1237},"follow-up-handling",[1239],{"type":49,"value":1240},"Follow-up Handling",{"type":44,"tag":557,"props":1242,"children":1243},{},[1244],{"type":49,"value":1245},"For follow-up questions about an image already analyzed in the conversation,\nreuse prior raw model context when it is sufficient. For report follow-ups, use\nreport-generation\u002Ftwo-call mode and skip directly to the second model call if\nthere is sufficient context. If prior context is insufficient and the same\nimage path or image bytes are available, call the wrapper again using the\nprompt routing rules above. If the image is no longer available, ask the user\nto reattach it.",{"type":44,"tag":557,"props":1247,"children":1248},{},[1249],{"type":49,"value":1250},"For long multi-turn prompts that include prior raw model output, prefer a\nquoted Bash here-doc variable so XML-like tags, apostrophes, quotes, and\nnewlines are preserved:",{"type":44,"tag":587,"props":1252,"children":1254},{"className":589,"code":1253,"language":591,"meta":592,"style":592},"IFS= read -r -d '' prompt \u003C\u003C'PROMPT'\nUser: Examine the chest X-ray.\n\nAssistant:\n\u003Craw model context>\n\nUser: Write a structured report.\nPROMPT\n\npython skills\u002Fnv-reason-cxr\u002Fscripts\u002Frun_nv_reason_cxr.py PATH_TO_CXR.png \\\n  --prompt \"$prompt\" \\\n  --backend hf-space-api\n",[1255],{"type":44,"tag":78,"props":1256,"children":1257},{"__ignoreMap":592},[1258,1307,1315,1324,1333,1342,1350,1359,1368,1376,1397,1422],{"type":44,"tag":598,"props":1259,"children":1260},{"class":600,"line":601},[1261,1266,1271,1277,1282,1287,1292,1297,1302],{"type":44,"tag":598,"props":1262,"children":1263},{"style":671},[1264],{"type":49,"value":1265},"IFS",{"type":44,"tag":598,"props":1267,"children":1268},{"style":686},[1269],{"type":49,"value":1270},"=",{"type":44,"tag":598,"props":1272,"children":1274},{"style":1273},"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF",[1275],{"type":49,"value":1276}," read",{"type":44,"tag":598,"props":1278,"children":1279},{"style":611},[1280],{"type":49,"value":1281}," -r",{"type":44,"tag":598,"props":1283,"children":1284},{"style":611},[1285],{"type":49,"value":1286}," -d",{"type":44,"tag":598,"props":1288,"children":1289},{"style":686},[1290],{"type":49,"value":1291}," ''",{"type":44,"tag":598,"props":1293,"children":1294},{"style":611},[1295],{"type":49,"value":1296}," prompt",{"type":44,"tag":598,"props":1298,"children":1299},{"style":686},[1300],{"type":49,"value":1301}," \u003C\u003C",{"type":44,"tag":598,"props":1303,"children":1304},{"style":686},[1305],{"type":49,"value":1306},"'PROMPT'\n",{"type":44,"tag":598,"props":1308,"children":1309},{"class":600,"line":677},[1310],{"type":44,"tag":598,"props":1311,"children":1312},{"style":611},[1313],{"type":49,"value":1314},"User: Examine the chest X-ray.\n",{"type":44,"tag":598,"props":1316,"children":1317},{"class":600,"line":706},[1318],{"type":44,"tag":598,"props":1319,"children":1321},{"emptyLinePlaceholder":1320},true,[1322],{"type":49,"value":1323},"\n",{"type":44,"tag":598,"props":1325,"children":1327},{"class":600,"line":1326},4,[1328],{"type":44,"tag":598,"props":1329,"children":1330},{"style":611},[1331],{"type":49,"value":1332},"Assistant:\n",{"type":44,"tag":598,"props":1334,"children":1336},{"class":600,"line":1335},5,[1337],{"type":44,"tag":598,"props":1338,"children":1339},{"style":611},[1340],{"type":49,"value":1341},"\u003Craw model context>\n",{"type":44,"tag":598,"props":1343,"children":1345},{"class":600,"line":1344},6,[1346],{"type":44,"tag":598,"props":1347,"children":1348},{"emptyLinePlaceholder":1320},[1349],{"type":49,"value":1323},{"type":44,"tag":598,"props":1351,"children":1353},{"class":600,"line":1352},7,[1354],{"type":44,"tag":598,"props":1355,"children":1356},{"style":611},[1357],{"type":49,"value":1358},"User: Write a structured report.\n",{"type":44,"tag":598,"props":1360,"children":1362},{"class":600,"line":1361},8,[1363],{"type":44,"tag":598,"props":1364,"children":1365},{"style":686},[1366],{"type":49,"value":1367},"PROMPT\n",{"type":44,"tag":598,"props":1369,"children":1371},{"class":600,"line":1370},9,[1372],{"type":44,"tag":598,"props":1373,"children":1374},{"emptyLinePlaceholder":1320},[1375],{"type":49,"value":1323},{"type":44,"tag":598,"props":1377,"children":1379},{"class":600,"line":1378},10,[1380,1384,1388,1393],{"type":44,"tag":598,"props":1381,"children":1382},{"style":605},[1383],{"type":49,"value":608},{"type":44,"tag":598,"props":1385,"children":1386},{"style":611},[1387],{"type":49,"value":614},{"type":44,"tag":598,"props":1389,"children":1390},{"style":611},[1391],{"type":49,"value":1392}," PATH_TO_CXR.png",{"type":44,"tag":598,"props":1394,"children":1395},{"style":671},[1396],{"type":49,"value":674},{"type":44,"tag":598,"props":1398,"children":1400},{"class":600,"line":1399},11,[1401,1405,1409,1414,1418],{"type":44,"tag":598,"props":1402,"children":1403},{"style":611},[1404],{"type":49,"value":683},{"type":44,"tag":598,"props":1406,"children":1407},{"style":686},[1408],{"type":49,"value":689},{"type":44,"tag":598,"props":1410,"children":1411},{"style":671},[1412],{"type":49,"value":1413},"$prompt",{"type":44,"tag":598,"props":1415,"children":1416},{"style":686},[1417],{"type":49,"value":699},{"type":44,"tag":598,"props":1419,"children":1420},{"style":671},[1421],{"type":49,"value":674},{"type":44,"tag":598,"props":1423,"children":1425},{"class":600,"line":1424},12,[1426,1430],{"type":44,"tag":598,"props":1427,"children":1428},{"style":611},[1429],{"type":49,"value":712},{"type":44,"tag":598,"props":1431,"children":1432},{"style":611},[1433],{"type":49,"value":783},{"type":44,"tag":557,"props":1435,"children":1436},{},[1437,1439,1445],{"type":49,"value":1438},"Use ",{"type":44,"tag":78,"props":1440,"children":1442},{"className":1441},[],[1443],{"type":49,"value":1444},"IFS= read -r -d '' prompt \u003C\u003C'PROMPT'",{"type":49,"value":1446},", not command substitution, for long\npasted transcripts.",{"type":44,"tag":52,"props":1448,"children":1450},{"id":1449},"license",[1451],{"type":49,"value":1452},"License",{"type":44,"tag":557,"props":1454,"children":1455},{},[1456],{"type":49,"value":1457},"The upstream repository code is Apache-2.0. The model weights are released\nunder the NVIDIA OneWay Noncommercial License Agreement. Users are responsible\nfor complying with the model-weight terms before live inference.",{"type":44,"tag":52,"props":1459,"children":1461},{"id":1460},"usage",[1462],{"type":49,"value":1463},"Usage",{"type":44,"tag":557,"props":1465,"children":1466},{},[1467],{"type":49,"value":1468},"From Medical AI Skills repo root:",{"type":44,"tag":587,"props":1470,"children":1472},{"className":589,"code":1471,"language":591,"meta":592,"style":592},"python skills\u002Fnv-reason-cxr\u002Fscripts\u002Frun_nv_reason_cxr.py PATH_TO_CXR.png \\\n  --prompt \"Find abnormalities and support devices.\" \\\n  --backend local\n",[1473],{"type":44,"tag":78,"props":1474,"children":1475},{"__ignoreMap":592},[1476,1495,1518],{"type":44,"tag":598,"props":1477,"children":1478},{"class":600,"line":601},[1479,1483,1487,1491],{"type":44,"tag":598,"props":1480,"children":1481},{"style":605},[1482],{"type":49,"value":608},{"type":44,"tag":598,"props":1484,"children":1485},{"style":611},[1486],{"type":49,"value":614},{"type":44,"tag":598,"props":1488,"children":1489},{"style":611},[1490],{"type":49,"value":1392},{"type":44,"tag":598,"props":1492,"children":1493},{"style":671},[1494],{"type":49,"value":674},{"type":44,"tag":598,"props":1496,"children":1497},{"class":600,"line":677},[1498,1502,1506,1510,1514],{"type":44,"tag":598,"props":1499,"children":1500},{"style":611},[1501],{"type":49,"value":683},{"type":44,"tag":598,"props":1503,"children":1504},{"style":686},[1505],{"type":49,"value":689},{"type":44,"tag":598,"props":1507,"children":1508},{"style":611},[1509],{"type":49,"value":694},{"type":44,"tag":598,"props":1511,"children":1512},{"style":686},[1513],{"type":49,"value":699},{"type":44,"tag":598,"props":1515,"children":1516},{"style":671},[1517],{"type":49,"value":674},{"type":44,"tag":598,"props":1519,"children":1520},{"class":600,"line":706},[1521,1525],{"type":44,"tag":598,"props":1522,"children":1523},{"style":611},[1524],{"type":49,"value":712},{"type":44,"tag":598,"props":1526,"children":1527},{"style":611},[1528],{"type":49,"value":717},{"type":44,"tag":557,"props":1530,"children":1531},{},[1532],{"type":49,"value":1533},"For public API inference without installing model packages locally:",{"type":44,"tag":587,"props":1535,"children":1537},{"className":589,"code":1536,"language":591,"meta":592,"style":592},"python skills\u002Fnv-reason-cxr\u002Fscripts\u002Frun_nv_reason_cxr.py PATH_TO_CXR.png \\\n  --prompt \"Find abnormalities and support devices.\" \\\n  --backend hf-space-api\n",[1538],{"type":44,"tag":78,"props":1539,"children":1540},{"__ignoreMap":592},[1541,1560,1583],{"type":44,"tag":598,"props":1542,"children":1543},{"class":600,"line":601},[1544,1548,1552,1556],{"type":44,"tag":598,"props":1545,"children":1546},{"style":605},[1547],{"type":49,"value":608},{"type":44,"tag":598,"props":1549,"children":1550},{"style":611},[1551],{"type":49,"value":614},{"type":44,"tag":598,"props":1553,"children":1554},{"style":611},[1555],{"type":49,"value":1392},{"type":44,"tag":598,"props":1557,"children":1558},{"style":671},[1559],{"type":49,"value":674},{"type":44,"tag":598,"props":1561,"children":1562},{"class":600,"line":677},[1563,1567,1571,1575,1579],{"type":44,"tag":598,"props":1564,"children":1565},{"style":611},[1566],{"type":49,"value":683},{"type":44,"tag":598,"props":1568,"children":1569},{"style":686},[1570],{"type":49,"value":689},{"type":44,"tag":598,"props":1572,"children":1573},{"style":611},[1574],{"type":49,"value":694},{"type":44,"tag":598,"props":1576,"children":1577},{"style":686},[1578],{"type":49,"value":699},{"type":44,"tag":598,"props":1580,"children":1581},{"style":671},[1582],{"type":49,"value":674},{"type":44,"tag":598,"props":1584,"children":1585},{"class":600,"line":706},[1586,1590],{"type":44,"tag":598,"props":1587,"children":1588},{"style":611},[1589],{"type":49,"value":712},{"type":44,"tag":598,"props":1591,"children":1592},{"style":611},[1593],{"type":49,"value":783},{"type":44,"tag":557,"props":1595,"children":1596},{},[1597],{"type":49,"value":1598},"For user requests that include local path or backend instructions, keep those\ninstructions out of the model prompt:",{"type":44,"tag":587,"props":1600,"children":1603},{"className":1601,"code":1602,"language":49,"meta":592},[1203],"User request: find abnormalities in ~\u002FDesktop\u002F363.jpg (use API)\n",[1604],{"type":44,"tag":78,"props":1605,"children":1606},{"__ignoreMap":592},[1607],{"type":49,"value":1602},{"type":44,"tag":587,"props":1609,"children":1611},{"className":589,"code":1610,"language":591,"meta":592,"style":592},"python skills\u002Fnv-reason-cxr\u002Fscripts\u002Frun_nv_reason_cxr.py ~\u002FDesktop\u002F363.jpg \\\n  --prompt \"Find abnormalities and support devices.\" \\\n  --backend hf-space-api\n",[1612],{"type":44,"tag":78,"props":1613,"children":1614},{"__ignoreMap":592},[1615,1635,1658],{"type":44,"tag":598,"props":1616,"children":1617},{"class":600,"line":601},[1618,1622,1626,1631],{"type":44,"tag":598,"props":1619,"children":1620},{"style":605},[1621],{"type":49,"value":608},{"type":44,"tag":598,"props":1623,"children":1624},{"style":611},[1625],{"type":49,"value":614},{"type":44,"tag":598,"props":1627,"children":1628},{"style":611},[1629],{"type":49,"value":1630}," ~\u002FDesktop\u002F363.jpg",{"type":44,"tag":598,"props":1632,"children":1633},{"style":671},[1634],{"type":49,"value":674},{"type":44,"tag":598,"props":1636,"children":1637},{"class":600,"line":677},[1638,1642,1646,1650,1654],{"type":44,"tag":598,"props":1639,"children":1640},{"style":611},[1641],{"type":49,"value":683},{"type":44,"tag":598,"props":1643,"children":1644},{"style":686},[1645],{"type":49,"value":689},{"type":44,"tag":598,"props":1647,"children":1648},{"style":611},[1649],{"type":49,"value":694},{"type":44,"tag":598,"props":1651,"children":1652},{"style":686},[1653],{"type":49,"value":699},{"type":44,"tag":598,"props":1655,"children":1656},{"style":671},[1657],{"type":49,"value":674},{"type":44,"tag":598,"props":1659,"children":1660},{"class":600,"line":706},[1661,1665],{"type":44,"tag":598,"props":1662,"children":1663},{"style":611},[1664],{"type":49,"value":712},{"type":44,"tag":598,"props":1666,"children":1667},{"style":611},[1668],{"type":49,"value":783},{"type":44,"tag":557,"props":1670,"children":1671},{},[1672,1674,1679,1681,1687],{"type":49,"value":1673},"Use the wrapper script directly for agent-generated commands. Do not replace\nit with ",{"type":44,"tag":78,"props":1675,"children":1677},{"className":1676},[],[1678],{"type":49,"value":801},{"type":49,"value":1680}," unless the user explicitly asks to run the eval\nharness. Do not redirect stdout with ",{"type":44,"tag":78,"props":1682,"children":1684},{"className":1683},[],[1685],{"type":49,"value":1686},">",{"type":49,"value":1688}," in generated commands: callers and\nthe eval harness read the wrapper's stdout JSON to verify the run. The direct\nrunnable surface is:",{"type":44,"tag":587,"props":1690,"children":1692},{"className":589,"code":1691,"language":591,"meta":592,"style":592},"python skills\u002Fnv-reason-cxr\u002Fscripts\u002Frun_nv_reason_cxr.py PATH_TO_CXR_OR_FIXTURE \\\n  --mock \\\n  --out-dir runs\u002Fnv_reason_cxr_case\n",[1693],{"type":44,"tag":78,"props":1694,"children":1695},{"__ignoreMap":592},[1696,1715,1727],{"type":44,"tag":598,"props":1697,"children":1698},{"class":600,"line":601},[1699,1703,1707,1711],{"type":44,"tag":598,"props":1700,"children":1701},{"style":605},[1702],{"type":49,"value":608},{"type":44,"tag":598,"props":1704,"children":1705},{"style":611},[1706],{"type":49,"value":614},{"type":44,"tag":598,"props":1708,"children":1709},{"style":611},[1710],{"type":49,"value":619},{"type":44,"tag":598,"props":1712,"children":1713},{"style":671},[1714],{"type":49,"value":674},{"type":44,"tag":598,"props":1716,"children":1717},{"class":600,"line":677},[1718,1723],{"type":44,"tag":598,"props":1719,"children":1720},{"style":611},[1721],{"type":49,"value":1722},"  --mock",{"type":44,"tag":598,"props":1724,"children":1725},{"style":671},[1726],{"type":49,"value":674},{"type":44,"tag":598,"props":1728,"children":1729},{"class":600,"line":706},[1730,1735],{"type":44,"tag":598,"props":1731,"children":1732},{"style":611},[1733],{"type":49,"value":1734},"  --out-dir",{"type":44,"tag":598,"props":1736,"children":1737},{"style":611},[1738],{"type":49,"value":1739}," runs\u002Fnv_reason_cxr_case\n",{"type":44,"tag":557,"props":1741,"children":1742},{},[1743,1749,1751,1757,1759,1765,1767,1772,1774,1779],{"type":44,"tag":78,"props":1744,"children":1746},{"className":1745},[],[1747],{"type":49,"value":1748},"PATH_TO_CXR_OR_FIXTURE",{"type":49,"value":1750}," may be a PNG\u002FJPEG image or a JSON fixture. If the\nuser provides a JSON request such as\n",{"type":44,"tag":78,"props":1752,"children":1754},{"className":1753},[],[1755],{"type":49,"value":1756},"runs\u002F...\u002Fsynthetic_cxr_input.json",{"type":49,"value":1758},", pass that exact JSON path as the first\nargument. The script will load ",{"type":44,"tag":78,"props":1760,"children":1762},{"className":1761},[],[1763],{"type":49,"value":1764},"generated:\u002F\u002Fsynthetic_chest_xray",{"type":49,"value":1766}," fixtures,\ncreate the temporary PNG under the output directory, and emit JSON with the\nmodel response. Use ",{"type":44,"tag":78,"props":1768,"children":1770},{"className":1769},[],[1771],{"type":49,"value":341},{"type":49,"value":1773}," only for command-shape smoke tests or fixtures\nthat request mock mode; omit ",{"type":44,"tag":78,"props":1775,"children":1777},{"className":1776},[],[1778],{"type":49,"value":341},{"type":49,"value":1780}," for live model inference.",{"type":44,"tag":557,"props":1782,"children":1783},{},[1784],{"type":49,"value":1785},"For JPEG input:",{"type":44,"tag":587,"props":1787,"children":1789},{"className":589,"code":1788,"language":591,"meta":592,"style":592},"python skills\u002Fnv-reason-cxr\u002Fscripts\u002Frun_nv_reason_cxr.py PATH_TO_CXR.jpg \\\n  --prompt \"Describe the chest X-ray findings.\" \\\n  --backend local\n",[1790],{"type":44,"tag":78,"props":1791,"children":1792},{"__ignoreMap":592},[1793,1813,1837],{"type":44,"tag":598,"props":1794,"children":1795},{"class":600,"line":601},[1796,1800,1804,1809],{"type":44,"tag":598,"props":1797,"children":1798},{"style":605},[1799],{"type":49,"value":608},{"type":44,"tag":598,"props":1801,"children":1802},{"style":611},[1803],{"type":49,"value":614},{"type":44,"tag":598,"props":1805,"children":1806},{"style":611},[1807],{"type":49,"value":1808}," PATH_TO_CXR.jpg",{"type":44,"tag":598,"props":1810,"children":1811},{"style":671},[1812],{"type":49,"value":674},{"type":44,"tag":598,"props":1814,"children":1815},{"class":600,"line":677},[1816,1820,1824,1829,1833],{"type":44,"tag":598,"props":1817,"children":1818},{"style":611},[1819],{"type":49,"value":683},{"type":44,"tag":598,"props":1821,"children":1822},{"style":686},[1823],{"type":49,"value":689},{"type":44,"tag":598,"props":1825,"children":1826},{"style":611},[1827],{"type":49,"value":1828},"Describe the chest X-ray findings.",{"type":44,"tag":598,"props":1830,"children":1831},{"style":686},[1832],{"type":49,"value":699},{"type":44,"tag":598,"props":1834,"children":1835},{"style":671},[1836],{"type":49,"value":674},{"type":44,"tag":598,"props":1838,"children":1839},{"class":600,"line":706},[1840,1844],{"type":44,"tag":598,"props":1841,"children":1842},{"style":611},[1843],{"type":49,"value":712},{"type":44,"tag":598,"props":1845,"children":1846},{"style":611},[1847],{"type":49,"value":717},{"type":44,"tag":557,"props":1849,"children":1850},{},[1851],{"type":49,"value":1852},"Flags:",{"type":44,"tag":59,"props":1854,"children":1855},{},[1856,1874,1891,1910,1921,1938,1949,1959,1969,1980],{"type":44,"tag":63,"props":1857,"children":1858},{},[1859,1865,1867,1873],{"type":44,"tag":78,"props":1860,"children":1862},{"className":1861},[],[1863],{"type":49,"value":1864},"--backend local|hf-space-api",{"type":49,"value":1866}," — inference backend, default ",{"type":44,"tag":78,"props":1868,"children":1870},{"className":1869},[],[1871],{"type":49,"value":1872},"local",{"type":49,"value":93},{"type":44,"tag":63,"props":1875,"children":1876},{},[1877,1883,1885,1890],{"type":44,"tag":78,"props":1878,"children":1880},{"className":1879},[],[1881],{"type":49,"value":1882},"--model-id",{"type":49,"value":1884}," — Hugging Face model id, default ",{"type":44,"tag":78,"props":1886,"children":1888},{"className":1887},[],[1889],{"type":49,"value":903},{"type":49,"value":93},{"type":44,"tag":63,"props":1892,"children":1893},{},[1894,1900,1902,1908],{"type":44,"tag":78,"props":1895,"children":1897},{"className":1896},[],[1898],{"type":49,"value":1899},"--device auto|cuda|cpu",{"type":49,"value":1901}," — default ",{"type":44,"tag":78,"props":1903,"children":1905},{"className":1904},[],[1906],{"type":49,"value":1907},"auto",{"type":49,"value":1909},", using CUDA when available.",{"type":44,"tag":63,"props":1911,"children":1912},{},[1913,1919],{"type":44,"tag":78,"props":1914,"children":1916},{"className":1915},[],[1917],{"type":49,"value":1918},"--allow-cpu",{"type":49,"value":1920}," — required for live CPU inference; CPU runs can be very slow.",{"type":44,"tag":63,"props":1922,"children":1923},{},[1924,1930,1931,1936],{"type":44,"tag":78,"props":1925,"children":1927},{"className":1926},[],[1928],{"type":49,"value":1929},"--torch-dtype auto|float16|bfloat16|float32",{"type":49,"value":1901},{"type":44,"tag":78,"props":1932,"children":1934},{"className":1933},[],[1935],{"type":49,"value":1907},{"type":49,"value":1937},", using\nbfloat16 on CUDA and float32 on CPU, matching the published BF16 model.",{"type":44,"tag":63,"props":1939,"children":1940},{},[1941,1947],{"type":44,"tag":78,"props":1942,"children":1944},{"className":1943},[],[1945],{"type":49,"value":1946},"--max-new-tokens",{"type":49,"value":1948}," — generation cap, default 2048.",{"type":44,"tag":63,"props":1950,"children":1951},{},[1952,1957],{"type":44,"tag":78,"props":1953,"children":1955},{"className":1954},[],[1956],{"type":49,"value":927},{"type":49,"value":1958}," — use only locally cached Hugging Face assets.",{"type":44,"tag":63,"props":1960,"children":1961},{},[1962,1967],{"type":44,"tag":78,"props":1963,"children":1965},{"className":1964},[],[1966],{"type":49,"value":341},{"type":49,"value":1968}," — deterministic dry-run response for CI and wiring checks.",{"type":44,"tag":63,"props":1970,"children":1971},{},[1972,1978],{"type":44,"tag":78,"props":1973,"children":1975},{"className":1974},[],[1976],{"type":49,"value":1977},"--prompt-preset findings|comprehensive|educational|structured",{"type":49,"value":1979}," — optional\nknown-good prompt presets from the model card\u002Fdemo behavior.",{"type":44,"tag":63,"props":1981,"children":1982},{},[1983,1988],{"type":44,"tag":78,"props":1984,"children":1986},{"className":1985},[],[1987],{"type":49,"value":134},{"type":49,"value":1989}," — optional artifact directory. Required for generated JSON\nfixtures; the eval harness passes it explicitly.",{"type":44,"tag":557,"props":1991,"children":1992},{},[1993],{"type":49,"value":1994},"The tested local live path uses:",{"type":44,"tag":59,"props":1996,"children":1997},{},[1998,2007,2016,2021],{"type":44,"tag":63,"props":1999,"children":2000},{},[2001],{"type":44,"tag":78,"props":2002,"children":2004},{"className":2003},[],[2005],{"type":49,"value":2006},"AutoModelForImageTextToText.from_pretrained(..., dtype=torch.bfloat16).eval().to(\"cuda\")",{"type":44,"tag":63,"props":2008,"children":2009},{},[2010],{"type":44,"tag":78,"props":2011,"children":2013},{"className":2012},[],[2014],{"type":49,"value":2015},"AutoProcessor.from_pretrained(..., use_fast=True)",{"type":44,"tag":63,"props":2017,"children":2018},{},[2019],{"type":49,"value":2020},"PNG\u002FJPEG image input plus one text prompt",{"type":44,"tag":63,"props":2022,"children":2023},{},[2024,2030],{"type":44,"tag":78,"props":2025,"children":2027},{"className":2026},[],[2028],{"type":49,"value":2029},"max_new_tokens=2048",{"type":49,"value":2031}," by default",{"type":44,"tag":557,"props":2033,"children":2034},{},[2035,2037,2042,2044,2050,2052,2058,2060,2065],{"type":49,"value":2036},"The script emits JSON on stdout and writes no clinical report files. Direct\nPNG\u002FJPEG runs do not create a default output directory. Generated JSON fixtures\nrequire ",{"type":44,"tag":78,"props":2038,"children":2040},{"className":2039},[],[2041],{"type":49,"value":134},{"type":49,"value":2043}," for the temporary synthetic image. The result JSON records\ninput image metadata, prompt, model id, runtime mode, response text, and known\nlimitations. If ",{"type":44,"tag":78,"props":2045,"children":2047},{"className":2046},[],[2048],{"type":49,"value":2049},"runtime.truncated_by_max_new_tokens",{"type":49,"value":2051}," is ",{"type":44,"tag":78,"props":2053,"children":2055},{"className":2054},[],[2056],{"type":49,"value":2057},"true",{"type":49,"value":2059},", rerun with a\nhigher ",{"type":44,"tag":78,"props":2061,"children":2063},{"className":2062},[],[2064],{"type":49,"value":1946},{"type":49,"value":2066}," value.",{"type":44,"tag":557,"props":2068,"children":2069},{},[2070,2072,2077,2078,2083],{"type":49,"value":2071},"Reporting reminder: for both ",{"type":44,"tag":78,"props":2073,"children":2075},{"className":2074},[],[2076],{"type":49,"value":1872},{"type":49,"value":183},{"type":44,"tag":78,"props":2079,"children":2081},{"className":2080},[],[2082],{"type":49,"value":388},{"type":49,"value":2084}," backends, follow the\ncompleted-run rule in Instructions.",{"type":44,"tag":557,"props":2086,"children":2087},{},[2088,2089,2094,2096,2102],{"type":49,"value":382},{"type":44,"tag":78,"props":2090,"children":2092},{"className":2091},[],[2093],{"type":49,"value":388},{"type":49,"value":2095}," backend calls the fixed public Hugging Face Space at\n",{"type":44,"tag":78,"props":2097,"children":2099},{"className":2098},[],[2100],{"type":49,"value":2101},"https:\u002F\u002Fnvidia-nv-reason-cxr.hf.space",{"type":49,"value":2103}," with a 300 second HTTP timeout.",{"type":44,"tag":52,"props":2105,"children":2107},{"id":2106},"fixture-smoke-test",[2108],{"type":49,"value":2109},"Fixture Smoke Test",{"type":44,"tag":557,"props":2111,"children":2112},{},[2113],{"type":49,"value":2114},"The committed fixture uses a generated synthetic PNG and mock mode so the\neval harness can verify the wrapper without downloading weights:",{"type":44,"tag":587,"props":2116,"children":2118},{"className":589,"code":2117,"language":591,"meta":592,"style":592},"python eval_engine\u002Frun.py skills\u002Fnv-reason-cxr \\\n  --fixture skills\u002Fnv-reason-cxr\u002Ffixtures\u002Fsynthetic_cxr_input.json \\\n  --out runs\u002Fnv_reason_cxr_smoke\n",[2119],{"type":44,"tag":78,"props":2120,"children":2121},{"__ignoreMap":592},[2122,2143,2160],{"type":44,"tag":598,"props":2123,"children":2124},{"class":600,"line":601},[2125,2129,2134,2139],{"type":44,"tag":598,"props":2126,"children":2127},{"style":605},[2128],{"type":49,"value":608},{"type":44,"tag":598,"props":2130,"children":2131},{"style":611},[2132],{"type":49,"value":2133}," eval_engine\u002Frun.py",{"type":44,"tag":598,"props":2135,"children":2136},{"style":611},[2137],{"type":49,"value":2138}," skills\u002Fnv-reason-cxr",{"type":44,"tag":598,"props":2140,"children":2141},{"style":671},[2142],{"type":49,"value":674},{"type":44,"tag":598,"props":2144,"children":2145},{"class":600,"line":677},[2146,2151,2156],{"type":44,"tag":598,"props":2147,"children":2148},{"style":611},[2149],{"type":49,"value":2150},"  --fixture",{"type":44,"tag":598,"props":2152,"children":2153},{"style":611},[2154],{"type":49,"value":2155}," skills\u002Fnv-reason-cxr\u002Ffixtures\u002Fsynthetic_cxr_input.json",{"type":44,"tag":598,"props":2157,"children":2158},{"style":671},[2159],{"type":49,"value":674},{"type":44,"tag":598,"props":2161,"children":2162},{"class":600,"line":706},[2163,2168],{"type":44,"tag":598,"props":2164,"children":2165},{"style":611},[2166],{"type":49,"value":2167},"  --out",{"type":44,"tag":598,"props":2169,"children":2170},{"style":611},[2171],{"type":49,"value":2172}," runs\u002Fnv_reason_cxr_smoke\n",{"type":44,"tag":52,"props":2174,"children":2176},{"id":2175},"limits",[2177],{"type":49,"value":2178},"Limits",{"type":44,"tag":557,"props":2180,"children":2181},{},[2182],{"type":49,"value":2183},"This is research and engineering tooling only. It is not validated for\nclinical diagnosis, treatment decisions, triage, patient-facing reporting, or\nregulatory use. Model outputs can hallucinate, miss subtle findings, or\noverstate uncertainty. A qualified professional must review any use in a\nmedical workflow.",{"type":44,"tag":2185,"props":2186,"children":2187},"style",{},[2188],{"type":49,"value":2189},"html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"items":2191,"total":2293},[2192,2209,2223,2237,2247,2264,2279],{"slug":2193,"name":2193,"fn":2194,"description":2195,"org":2196,"tags":2197,"stars":20,"repoUrl":21,"updatedAt":2208},"accelerated-computing-cudf","accelerate data processing with cuDF","Official NVIDIA-authored guidance for NVIDIA cuDF GPU DataFrames, pandas acceleration, dask-cuDF, ETL, joins, groupby, CSV\u002FParquet I\u002FO, nullable semantics, and multi-GPU DataFrame workloads.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[2198,2201,2204,2205],{"name":2199,"slug":2200,"type":15},"Data Analysis","data-analysis",{"name":2202,"slug":2203,"type":15},"Data Engineering","data-engineering",{"name":9,"slug":8,"type":15},{"name":2206,"slug":2207,"type":15},"Performance","performance","2026-07-14T05:28:43.176466",{"slug":2210,"name":2210,"fn":2211,"description":2212,"org":2213,"tags":2214,"stars":20,"repoUrl":21,"updatedAt":2222},"aiq-deploy","deploy and manage NVIDIA AI-Q infrastructure","Use when asked to install, deploy, run, validate, troubleshoot, or stop NVIDIA AI-Q Blueprint infrastructure.\n",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[2215,2218,2221],{"name":2216,"slug":2217,"type":15},"Deployment","deployment",{"name":2219,"slug":2220,"type":15},"Infrastructure","infrastructure",{"name":9,"slug":8,"type":15},"2026-07-14T05:29:06.667109",{"slug":2224,"name":2224,"fn":2225,"description":2226,"org":2227,"tags":2228,"stars":20,"repoUrl":21,"updatedAt":2236},"aiq-research","conduct deep research with AI-Q","Use when asked to run deep research or AI-Q research through a reachable NVIDIA AI-Q Blueprint backend.\n",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[2229,2232,2233],{"name":2230,"slug":2231,"type":15},"Agents","agents",{"name":9,"slug":8,"type":15},{"name":2234,"slug":2235,"type":15},"Research","research","2026-07-14T05:28:06.816956",{"slug":2238,"name":2238,"fn":2239,"description":2240,"org":2241,"tags":2242,"stars":20,"repoUrl":21,"updatedAt":2246},"amc-run-sample-calibration","run AMC sample dataset calibration","Run end-to-end calibration on the shipped sample dataset (sdg_08_2_sample_data_010926.zip) against a running AMC microservice. Use when user says 'test sample dataset', 'run sample calibration', 'verify AMC install', or 'launch and test'.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[2243,2244,2245],{"name":2199,"slug":2200,"type":15},{"name":9,"slug":8,"type":15},{"name":18,"slug":19,"type":15},"2026-07-17T05:29:03.913266",{"slug":2248,"name":2248,"fn":2249,"description":2250,"org":2251,"tags":2252,"stars":20,"repoUrl":21,"updatedAt":2263},"amc-run-video-calibration","calibrate video datasets with AutoMagicCalib","Calibrate a new dataset from pre-recorded video files via the AutoMagicCalib REST API. Use when user has local MP4s and says 'calibrate my videos', 'run AMC on these videos', or similar. For RTSP\u002Flive streams, use amc-run-rtsp-calibration instead.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[2253,2256,2259,2260],{"name":2254,"slug":2255,"type":15},"Automation","automation",{"name":2257,"slug":2258,"type":15},"Imaging","imaging",{"name":9,"slug":8,"type":15},{"name":2261,"slug":2262,"type":15},"Video","video","2026-07-17T05:28:53.905004",{"slug":2265,"name":2265,"fn":2266,"description":2267,"org":2268,"tags":2269,"stars":20,"repoUrl":21,"updatedAt":2278},"amc-setup-calibration-stack","deploy AutoMagicCalib microservice with Docker","Launch AutoMagicCalib microservice and web UI from NGC release images via Docker Compose. Use when user says 'deploy auto calibration', 'launch auto calibration', 'launch AMC', 'start MS+UI', or 'set up auto-magic-calib'. Requires NGC API key.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[2270,2271,2274,2275],{"name":2216,"slug":2217,"type":15},{"name":2272,"slug":2273,"type":15},"Docker","docker",{"name":9,"slug":8,"type":15},{"name":2276,"slug":2277,"type":15},"Operations","operations","2026-07-17T05:28:56.913999",{"slug":2280,"name":2280,"fn":2281,"description":2282,"org":2283,"tags":2284,"stars":20,"repoUrl":21,"updatedAt":2292},"cudaq-guide","develop quantum applications with CUDA-Q","CUDA-Q onboarding guide for installation, test programs, GPU simulation, QPU hardware, and quantum applications.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[2285,2286,2289],{"name":9,"slug":8,"type":15},{"name":2287,"slug":2288,"type":15},"Quantum Computing","quantum-computing",{"name":2290,"slug":2291,"type":15},"Simulation","simulation","2026-07-14T05:26:58.898253",305,{"items":2295,"total":2445},[2296,2314,2329,2340,2352,2366,2379,2393,2404,2413,2427,2436],{"slug":2297,"name":2297,"fn":2298,"description":2299,"org":2300,"tags":2301,"stars":2311,"repoUrl":2312,"updatedAt":2313},"nemoclaw-user-guide","retrieve NemoClaw documentation and configuration","Guides human users' AI agents to the NemoClaw docs MCP server and canonical Fern documentation in Markdown form. Use when users ask how to install, configure, operate, troubleshoot, secure, or learn NemoClaw with an AI coding assistant. Trigger keywords - nemoclaw docs, use nemoclaw with ai agent, nemoclaw mcp docs, nemoclaw install help, nemoclaw quickstart, nemoclaw markdown docs, llms.txt, agent skills.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[2302,2305,2308],{"name":2303,"slug":2304,"type":15},"Documentation","documentation",{"name":2306,"slug":2307,"type":15},"MCP","mcp",{"name":2309,"slug":2310,"type":15},"Search","search",21777,"https:\u002F\u002Fgithub.com\u002FNVIDIA\u002FNemoClaw","2026-07-20T06:00:01.461044",{"slug":2315,"name":2315,"fn":2316,"description":2317,"org":2318,"tags":2319,"stars":2326,"repoUrl":2327,"updatedAt":2328},"mcore-build-and-dependency","manage Megatron-LM development environments","Container-based dev environment setup and dependency management for Megatron-LM. Covers acquiring and launching the CI container, uv package management, and updating uv.lock.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[2320,2323,2324],{"name":2321,"slug":2322,"type":15},"Containers","containers",{"name":2216,"slug":2217,"type":15},{"name":2325,"slug":608,"type":15},"Python",17049,"https:\u002F\u002Fgithub.com\u002FNVIDIA\u002FMegatron-LM","2026-07-27T06:06:11.249662",{"slug":2330,"name":2330,"fn":2331,"description":2332,"org":2333,"tags":2334,"stars":2326,"repoUrl":2327,"updatedAt":2339},"mcore-bump-base-image","update NVIDIA PyTorch base images","Bump the NVIDIA PyTorch base image (`nvcr.io\u002Fnvidia\u002Fpytorch:YY.MM-py3`) used by Megatron-LM CI. Covers the two pin sites (GitHub CI in `docker\u002F.ngc_version.dev` and GitLab CI in `.gitlab\u002Fstages\u002F01.build.yml`), the post-bump CI loop (re-run functional tests, refresh golden values, mark broken tests), and the gotchas that bit PRs",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[2335,2338],{"name":2336,"slug":2337,"type":15},"CI\u002FCD","ci-cd",{"name":2216,"slug":2217,"type":15},"2026-07-14T05:25:59.97109",{"slug":2341,"name":2341,"fn":2342,"description":2343,"org":2344,"tags":2345,"stars":2326,"repoUrl":2327,"updatedAt":2351},"mcore-cicd","manage CI\u002FCD pipelines for Megatron-LM","CI\u002FCD reference for Megatron-LM. Covers CI pipeline structure, PR scope labels, triggering internal GitLab CI (which force-pushes the current branch to a pull-request\u002FBRANCH ref — always dry-run and verify the destination first; never run against shared or protected branches), and CI failure investigation.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[2346,2347,2348],{"name":2336,"slug":2337,"type":15},{"name":2216,"slug":2217,"type":15},{"name":2349,"slug":2350,"type":15},"GitHub","github","2026-07-27T06:06:12.278222",{"slug":2353,"name":2353,"fn":2354,"description":2355,"org":2356,"tags":2357,"stars":2326,"repoUrl":2327,"updatedAt":2365},"mcore-create-issue","investigate CI failures and create issues","Investigate a failing GitHub Actions run or job and create a GitHub issue for the failure.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[2358,2361,2362],{"name":2359,"slug":2360,"type":15},"Debugging","debugging",{"name":2349,"slug":2350,"type":15},{"name":2363,"slug":2364,"type":15},"Triage","triage","2026-07-14T05:25:57.442089",{"slug":2367,"name":2367,"fn":2368,"description":2369,"org":2370,"tags":2371,"stars":2326,"repoUrl":2327,"updatedAt":2378},"mcore-linting-and-formatting","lint and format Megatron-LM code","Linting and formatting for Megatron-LM. Covers running autoformat.sh, tools (ruff, black, isort, pylint, mypy), and code style rules.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[2372,2375],{"name":2373,"slug":2374,"type":15},"Best Practices","best-practices",{"name":2376,"slug":2377,"type":15},"Code Analysis","code-analysis","2026-07-14T05:25:56.18433",{"slug":2380,"name":2380,"fn":2381,"description":2382,"org":2383,"tags":2384,"stars":2326,"repoUrl":2327,"updatedAt":2392},"mcore-migrate-gpt-to-hybrid","migrate Megatron-LM models to HybridModel","Migration guide for moving Megatron Core GPTModel checkpoints, model providers, training commands, and layer mappings to HybridModel.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[2385,2388,2391],{"name":2386,"slug":2387,"type":15},"Machine Learning","machine-learning",{"name":2389,"slug":2390,"type":15},"Migration","migration",{"name":9,"slug":8,"type":15},"2026-07-17T06:07:11.777011",{"slug":2394,"name":2394,"fn":2395,"description":2396,"org":2397,"tags":2398,"stars":2326,"repoUrl":2327,"updatedAt":2403},"mcore-onboard-gb200-1node-tests","onboard functional tests for GB200","Onboard 1-node GitHub MR functional tests for GB200 from existing mr-scoped 2-node tests.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[2399,2402],{"name":2400,"slug":2401,"type":15},"QA","qa",{"name":18,"slug":19,"type":15},"2026-07-14T05:25:53.673039",{"slug":2405,"name":2405,"fn":2406,"description":2407,"org":2408,"tags":2409,"stars":2326,"repoUrl":2327,"updatedAt":2412},"mcore-run-on-slurm","launch distributed training jobs on SLURM","How to launch distributed Megatron-LM training jobs on a SLURM cluster. Covers a minimal sbatch skeleton, environment-variable setup for torch.distributed.run, CUDA_DEVICE_MAX_CONNECTIONS rules across hardware and parallelism modes, container conventions, monitoring, and per-rank failure diagnosis.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[2410,2411],{"name":2216,"slug":2217,"type":15},{"name":2219,"slug":2220,"type":15},"2026-07-14T05:25:49.362534",{"slug":2414,"name":2414,"fn":2415,"description":2416,"org":2417,"tags":2418,"stars":2326,"repoUrl":2327,"updatedAt":2426},"mcore-split-pr","split pull requests to reduce review load","Split a PR into multiple PRs to reduce the number of required CODEOWNERS reviewer groups.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[2419,2422,2423],{"name":2420,"slug":2421,"type":15},"Code Review","code-review",{"name":2349,"slug":2350,"type":15},{"name":2424,"slug":2425,"type":15},"Pull Requests","pull-requests","2026-07-14T05:26:01.226578",{"slug":2428,"name":2428,"fn":2429,"description":2430,"org":2431,"tags":2432,"stars":2326,"repoUrl":2327,"updatedAt":2435},"mcore-testing","run and manage Megatron-LM tests","Test system for Megatron-LM. Covers test layout, recipe YAML structure, adding and running unit and functional tests, golden values, marker filters, and CI parity.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[2433,2434],{"name":2400,"slug":2401,"type":15},{"name":18,"slug":19,"type":15},"2026-07-14T05:25:54.928983",{"slug":2437,"name":2437,"fn":2438,"description":2439,"org":2440,"tags":2441,"stars":2326,"repoUrl":2327,"updatedAt":2444},"nightly-sync","manage nightly main-to-dev sync workflows","Domain knowledge for the nightly main-to-dev sync workflow. Covers merge strategy, CI architecture, failure investigation, and known issues.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[2442,2443],{"name":2254,"slug":2255,"type":15},{"name":2336,"slug":2337,"type":15},"2026-07-30T05:29:03.275638",496]