[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill-nvidia-asset-harvester":3,"mdc-yzayxf-key":34,"related-org-nvidia-asset-harvester":2070,"related-repo-nvidia-asset-harvester":2230},{"slug":4,"name":4,"fn":5,"description":6,"org":7,"tags":11,"stars":23,"repoUrl":24,"updatedAt":25,"license":26,"forks":27,"topics":28,"repo":29,"sourceUrl":32,"mdContent":33},"asset-harvester","extract 3D Gaussian assets with Asset Harvester","Use to install and run NVIDIA Asset Harvester (Apache-2.0) to extract per-object 3D Gaussian Splat assets (`gaussians.ply`) from AV NCore V4 clips or masked single images via SparseViewDiT + TokenGS, optionally producing `metadata.yaml` for NuRec object insertion. Do NOT use for full-scene reconstruction (use `nre`) or for inputs without per-object masks.",{"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,20],{"name":13,"slug":14,"type":15},"3D","3d","tag",{"name":9,"slug":8,"type":15},{"name":18,"slug":19,"type":15},"Simulation","simulation",{"name":21,"slug":22,"type":15},"Computer Vision","computer-vision",16,"https:\u002F\u002Fgithub.com\u002FNVIDIA\u002Fnurec-skills","2026-07-14T05:32:37.216976","CC-BY-4.0 AND Apache-2.0",4,[],{"repoUrl":24,"stars":23,"forks":27,"topics":30,"description":31},[],"Agent skills for Neural Reconstruction Engine","https:\u002F\u002Fgithub.com\u002FNVIDIA\u002Fnurec-skills\u002Ftree\u002FHEAD\u002Fskills\u002Fasset-harvester","---\nname: asset-harvester\ndescription: >-\n  Use to install and run NVIDIA Asset Harvester (Apache-2.0) to\n  extract per-object 3D Gaussian Splat assets (`gaussians.ply`) from\n  AV NCore V4 clips or masked single images via SparseViewDiT +\n  TokenGS, optionally producing `metadata.yaml` for NuRec object\n  insertion. Do NOT use for full-scene reconstruction (use `nre`) or\n  for inputs without per-object masks.\nversion: \"0.1.1\"\ntools:\n  - Shell\n  - Read\n  - Write\nlicense: CC-BY-4.0 AND Apache-2.0\ncompatibility: >-\n  Linux + conda (Miniconda\u002FMiniforge), NVIDIA driver >= 570 (CUDA\n  12.8), GCC 10-13, CUDA toolkit 12.8 (installed by setup.sh), ~16\n  GB GPU VRAM (use `--offload_model_to_cpu` for less). HF_TOKEN\n  required for gated `nvidia\u002Fasset-harvester` checkpoints. Egress to\n  github.com, huggingface.co, pypi.org, download.pytorch.org.\ndependencies:\n  - bash\n  - conda\n  - git\n  - python3\nmetadata:\n  author: NVIDIA NRS \u003Cnurec-skills@nvidia.com>\n  tags:\n    - asset-harvester\n    - autonomous-vehicles\n    - 3d-reconstruction\n    - gaussian-splatting\n    - simulation\n  upstream: https:\u002F\u002Fgithub.com\u002FNVIDIA\u002Fasset-harvester\n  project_page: https:\u002F\u002Fresearch.nvidia.com\u002Flabs\u002Fsil\u002Fprojects\u002Fasset-harvester\u002F\n  paper: https:\u002F\u002Farxiv.org\u002Fabs\u002F2604.18468\n  hf_model: https:\u002F\u002Fhuggingface.co\u002Fnvidia\u002Fasset-harvester\n  hf_demo: https:\u002F\u002Fhuggingface.co\u002Fspaces\u002Fnvidia\u002Fasset-harvester\n  hf_dataset: https:\u002F\u002Fhuggingface.co\u002Fdatasets\u002Fnvidia\u002FPhysicalAI-Autonomous-Vehicles-NCore\n  hf_benchmark: https:\u002F\u002Fhuggingface.co\u002Fdatasets\u002Fnvidia\u002FNuRec-AV-Object-Benchmark\n  time-estimate: \"45min (20min setup + 15min inference + evaluation)\"\n---\n\n# Asset Harvester\n\n## Purpose\n\nInstall and drive NVIDIA Asset Harvester to extract per-object 3D\nGaussian Splat assets from sparse autonomous-vehicle (AV) object\nobservations — either a multi-view crop pulled from an NCore V4\ndriving log or a single masked image. The output is a\nsimulation-ready `gaussians.ply` plus optional `metadata.yaml` that\nNVIDIA Omniverse NuRec can ingest as an external asset. Apache-2.0\nupstream code lives at \u003Chttps:\u002F\u002Fgithub.com\u002FNVIDIA\u002Fasset-harvester>.\n\n## When to Use \u002F When NOT to Use\n\n**Use this skill when:**\n\n- The user has AV clips or masked single images and wants per-object\n  3D assets via the SparseViewDiT + TokenGS pipeline.\n- The user has NCore V4 driving-log clips and wants per-track 3D\n  assets for simulation.\n- The user asks about `SparseViewDiT`, `TokenGS`, or wants to\n  reproduce the Asset Harvester paper \u002F HF Space demo locally.\n- The user wants `.ply` Gaussians + `metadata.yaml` suitable for\n  NVIDIA Omniverse **NuRec** object insertion.\n\n**Do NOT use this skill when:**\n\n- The user wants a full-scene reconstruction (use the `nre` skill).\n- The user has no per-object masks or AV-style object crops.\n- The user wants text-to-3D, indoor scans, or non-AV imagery —\n  out of distribution.\n- The user wants to ingest raw sensor data into NCore V4 (use the\n  `ncore` skill first).\n- The user wants to re-train SparseViewDiT or TokenGS — this skill\n  is install + inference only.\n- The user just wants the no-install demo: point them at\n  \u003Chttps:\u002F\u002Fhuggingface.co\u002Fspaces\u002Fnvidia\u002Fasset-harvester>.\n\n## Background\n\nOpen-source (Apache-2.0) image-to-3D pipeline pairing\n**SparseViewDiT** (multiview diffusion, 16 consistent views) with\n**TokenGS** (feed-forward Gaussian lifting):\n\n```text\nNCore V4 clip ──► NCore parsing ──► SparseViewDiT (16-view diffusion)\n              ──► TokenGS lifting ──► gaussians.ply\n              ──► (optional) metadata.yaml for NuRec object insertion\n```\n\nSingle HF repo `nvidia\u002Fasset-harvester` ships four checkpoints:\n`AH_object_seg_jit.pt` (AV-object Mask2Former),\n`AH_multiview_diffusion.safetensors` (SparseViewDiT),\n`AH_camera_estimator.safetensors` (camera pose, used when calibration\nis absent), and `AH_tokengs_lifting.safetensors` (TokenGS).\n\n## Inputs\n\n- **image_root** — directory of per-object folders, each with\n  `frame.jpeg` (512×512) and (optional) `mask.png` (required unless\n  `component_store` is given).\n- **component_store** — path to NCore V4 clip `.json` manifest,\n  comma-separated component-store paths, or `.zarr.itar` glob\n  (required when running the NCore parsing path).\n- **output_dir** — where per-sample outputs (`gaussians.ply`,\n  `multiview\u002F`, `3d_lifted\u002F`, `*.mp4`) are written (default\n  `outputs\u002F`).\n- **offload_flag** — enable CPU offload (`--offload_model_to_cpu` \u002F\n  `--offload`) when VRAM \u003C ~16 GB.\n- **HF_TOKEN** — HuggingFace access token for the gated\n  `nvidia\u002Fasset-harvester` repo and the PhysicalAI NCore dataset\n  (obtain at \u003Chttps:\u002F\u002Fhuggingface.co\u002Fsettings\u002Ftokens>).\n\n## Instructions\n\n1. **Validate the host.** Have the agent execute\n   `scripts\u002Fvalidate_setup.py` via its standard script runner —\n   e.g. `run_script(\"scripts\u002Fvalidate_setup.py\")` or\n   `python scripts\u002Fvalidate_setup.py`. It confirms conda, the NVIDIA\n   driver, GCC, and `HF_TOKEN` are in place and exits non-zero on\n   any missing prerequisite. Do **not** print `$HF_TOKEN` directly;\n   see [`references\u002Finstallation.md`](references\u002Finstallation.md).\n2. **Install.** Use the one-shot `bash setup.sh` path unless the\n   user asks for a manual install. Full commands and the pinned\n   `gsplat` step are in\n   [`references\u002Finstallation.md`](references\u002Finstallation.md).\n3. **Download checkpoints.** `hf auth login` first, then\n   `hf download nvidia\u002Fasset-harvester --local-dir checkpoints` (see\n   [`references\u002Finstallation.md`](references\u002Finstallation.md)).\n4. **Pick the inference path:**\n   - Bundled demo → Workflow Q in\n     [`references\u002Fworkflows.md`](references\u002Fworkflows.md).\n   - Single user image (+\u002F- mask) → Workflow S in the same file.\n   - NCore V4 driving log → Workflow N (full walkthrough in\n     [`references\u002Fend-to-end-ncore.md`](references\u002Fend-to-end-ncore.md)).\n5. **Execute with appropriate VRAM flag.** If `\u003C 16 GB` VRAM, add\n   `--offload_model_to_cpu` (direct `run_inference.py`) or\n   `--offload` (`run.sh`).\n6. **Validate outputs.** Confirm `gaussians.ply` and the two MP4s\n   exist under `${OUTPUT_DIR}\u002F\u003Csample>\u002F`.\n7. **(Optional) Benchmark.** Clone the env to `av-object-benchmark`\n   and run `benchmark\u002Feval.py` for PSNR \u002F LPIPS \u002F SSIM and DINOv3\n   embedding metrics. See\n   [`references\u002Fend-to-end-ncore.md`](references\u002Fend-to-end-ncore.md).\n8. **(Optional) Hand off to NuRec.** Rotate Gaussians with\n   `orient_gaussians_for_nurec`, emit `metadata.yaml`, then follow\n   the [NuRec external-assets docs](https:\u002F\u002Fdocs.nvidia.com\u002Fnurec\u002Fnurec\u002Fuse-ah-assets.html).\n\n## Examples\n\nThree concrete entry points. Each one points at the workflow file\nwith the full command; nothing here is meant to be copy-pasted in\nisolation.\n\n### Example 1 — Smoke-test the install with bundled samples\n\n```bash\npython scripts\u002Fvalidate_setup.py          # then `bash setup.sh` once\npython3 run_inference.py \\\n    --diffusion_checkpoint checkpoints\u002FAH_multiview_diffusion.safetensors \\\n    --lifting_checkpoint   checkpoints\u002FAH_tokengs_lifting.safetensors \\\n    --data_root            data_samples\u002Frectified_AV_objects\u002F \\\n    --output_dir           outputs\u002Fharvesting\n```\n\nSee Workflow Q in\n[`references\u002Fworkflows.md`](references\u002Fworkflows.md).\n\n### Example 2 — One masked single image → 3D asset\n\n```bash\npython -m asset_harvester.utils.image_segment \\\n    --checkpoint checkpoints\u002FAH_object_seg_jit.pt \\\n    --image_folder data_samples\u002FOOD_images\npython3 run_inference.py \\\n    --diffusion_checkpoint checkpoints\u002FAH_multiview_diffusion.safetensors \\\n    --ahc_checkpoint       checkpoints\u002FAH_camera_estimator.safetensors \\\n    --lifting_checkpoint   checkpoints\u002FAH_tokengs_lifting.safetensors \\\n    --image_dir            data_samples\u002FOOD_images \\\n    --output_dir           outputs\u002Fsingle\n```\n\nSee Workflow S in\n[`references\u002Fworkflows.md`](references\u002Fworkflows.md).\n\n### Example 3 — NCore V4 clip → NuRec-ready external assets\n\n```bash\nbash scripts\u002Frun_ncore_parser.sh --component-store \u003Cclip.json>\nbash run.sh --data-root .\u002Foutputs\u002Fncore_parser --output-dir .\u002Foutputs\u002Fncore_harvest\npython -m asset_harvester.utils.orient_gaussians_for_nurec \\\n    --input-dir .\u002Foutputs\u002Fncore_harvest \\\n    --output-dir .\u002Foutputs\u002Fncore_harvest_nurec\npython asset_harvester\u002Futils\u002Fgenerate_external_assets_metadata.py \\\n    --input-dir .\u002Foutputs\u002Fncore_harvest_nurec\n```\n\nFull walkthrough including sample-clip download, the benchmark\nflow, and the NuRec PPISP caveat lives in\n[`references\u002Fend-to-end-ncore.md`](references\u002Fend-to-end-ncore.md).\n\n## Scripts\n\n| Script | Purpose | Usage |\n|--------|---------|-------|\n| `scripts\u002Fvalidate_setup.py` | Verify host meets Asset Harvester prerequisites (conda, driver, GCC, `HF_TOKEN`). No network access. | Invoke via the agent's `run_script` helper, or `python scripts\u002Fvalidate_setup.py`. |\n\n## Output Format\n\nPer input sample (image or NCore track) the pipeline writes:\n\n```text\n${OUTPUT_DIR}\u002F\u003Csample_id>\u002F\n├── multiview\u002F           # 16 RGB views generated by SparseViewDiT\n├── 3d_lifted\u002F           # TokenGS-rendered views of the lifted Gaussians\n├── gaussians.ply        # 3D Gaussian Splat asset (Omniverse\u002FNuRec-ready)\n├── multiview.mp4\n└── 3d_lifted.mp4\n```\n\nWhen the NuRec handoff runs, `metadata.yaml` is additionally written\nat the root of the oriented output directory.\n\n## Prerequisites\n\nLinux (Ubuntu 22.04 tested), conda, NVIDIA driver `>= 570` (CUDA\n12.8), GCC 10–13, ~16 GB GPU VRAM, ~30 GB free disk, `HF_TOKEN` with\nthe `nvidia\u002Fasset-harvester` model card accepted, and egress to\n`github.com`, `huggingface.co`, `pypi.org`,\n`download.pytorch.org`. The check that fails-fast on a missing\nprerequisite is `scripts\u002Fvalidate_setup.py`; secret-handling\nguidance lives in\n[`references\u002Finstallation.md`](references\u002Finstallation.md).\n\n## References\n\n- [`references\u002Finstallation.md`](references\u002Finstallation.md) —\n  one-shot + manual install, checkpoint download, safe `HF_TOKEN`\n  handling.\n- [`references\u002Fworkflows.md`](references\u002Fworkflows.md) — Workflows\n  Q (bundled), S (single image), N (NCore) plus a configuration\n  matrix.\n- [`references\u002Fend-to-end-ncore.md`](references\u002Fend-to-end-ncore.md)\n  — full NCore V4 walkthrough including benchmark eval in the cloned\n  `av-object-benchmark` env, and the NuRec handoff checklist.\n- [`references\u002Fcli-reference.md`](references\u002Fcli-reference.md) —\n  exhaustive flag matrix for `run_inference.py`, `run.sh`,\n  `run_ncore_parser.sh`, `image_segment`,\n  `orient_gaussians_for_nurec`,\n  `generate_external_assets_metadata.py`.\n- [`references\u002Ftroubleshooting.md`](references\u002Ftroubleshooting.md)\n  — extended error matrix and full teardown \u002F disk-cleanup recipe.\n- Sibling skills: [`..\u002Fncore\u002FSKILL.md`](..\u002Fncore\u002FSKILL.md) (NCore V4\n  ingest), [`..\u002Fnre\u002FSKILL.md`](..\u002Fnre\u002FSKILL.md) (NRE scene\n  reconstruction and `export-external-assets` packaging),\n  [`..\u002Fphysical-ai-datasets\u002FSKILL.md`](..\u002Fphysical-ai-datasets\u002FSKILL.md)\n  (sample NCore clips, benchmark dataset).\n- Upstream README: \u003Chttps:\u002F\u002Fgithub.com\u002FNVIDIA\u002Fasset-harvester>\n- Project page: \u003Chttps:\u002F\u002Fresearch.nvidia.com\u002Flabs\u002Fsil\u002Fprojects\u002Fasset-harvester\u002F>\n- HF model: \u003Chttps:\u002F\u002Fhuggingface.co\u002Fnvidia\u002Fasset-harvester>\n- Live demo: \u003Chttps:\u002F\u002Fhuggingface.co\u002Fspaces\u002Fnvidia\u002Fasset-harvester>\n- NuRec external-assets guide: \u003Chttps:\u002F\u002Fdocs.nvidia.com\u002Fnurec\u002Fnurec\u002Fuse-ah-assets.html>\n\n## Limitations\n\n- AV-only domain. Non-road \u002F non-AV objects are out of distribution.\n- `AH_object_seg_jit.pt` is class-restricted (vehicles, VRUs,\n  cyclists, road objects). Supply your own `mask.png` for arbitrary\n  objects.\n- Scale is **not predicted**. NuRec insertion reads scale from the\n  source clip's cuboid tracks.\n- 16 GB VRAM is the practical floor; lower-VRAM users must offload\n  to CPU (slower).\n- Inputs must be 512×512 square crops.\n- `benchmark\u002Feval.py` needs a separately cloned conda env\n  (`av-object-benchmark`) because `transformers>=4.56.0` conflicts\n  with the main env's pinned `transformers==4.48.3`.\n- Linux-only install path (tested on Ubuntu 22.04 + CUDA 12.8).\n- Optional SAM 3D Body metric needs the gated\n  `facebook\u002Fsam-3d-body-dinov3` repo; eval falls back to\n  PSNR\u002FLPIPS\u002FSSIM if unavailable.\n\n## Troubleshooting (top 4)\n\n| Error | Cause | Solution |\n|-------|-------|----------|\n| `gsplat` import \u002F CUDA ABI mismatch | Installed `gsplat` from PyPI wheel instead of the pinned commit | Reinstall from the pinned source commit; see [`references\u002Finstallation.md`](references\u002Finstallation.md). |\n| `nvcc` \"unsupported GNU version\" | GCC outside 10–13 on PATH | Install GCC 12 and export `CC`\u002F`CXX`\u002F`CUDAHOSTCXX` before `setup.sh`. |\n| `CUDA error: out of memory` | GPU VRAM \u003C ~16 GB | Add `--offload_model_to_cpu` (direct) or `--offload` (`run.sh`). |\n| `401 Unauthorized` from `hf download` | Model-card terms not accepted, or missing `HF_TOKEN` | Accept the model card and re-run `hf auth login`. |\n\nFull matrix + teardown live in\n[`references\u002Ftroubleshooting.md`](references\u002Ftroubleshooting.md).\n",{"data":35,"body":61},{"name":4,"description":6,"version":36,"tools":37,"license":26,"compatibility":41,"dependencies":42,"metadata":47},"0.1.1",[38,39,40],"Shell","Read","Write","Linux + conda (Miniconda\u002FMiniforge), NVIDIA driver >= 570 (CUDA 12.8), GCC 10-13, CUDA toolkit 12.8 (installed by setup.sh), ~16 GB GPU VRAM (use `--offload_model_to_cpu` for less). HF_TOKEN required for gated `nvidia\u002Fasset-harvester` checkpoints. Egress to github.com, huggingface.co, pypi.org, download.pytorch.org.",[43,44,45,46],"bash","conda","git","python3",{"author":48,"tags":49,"upstream":53,"project_page":54,"paper":55,"hf_model":56,"hf_demo":57,"hf_dataset":58,"hf_benchmark":59,"time-estimate":60},"NVIDIA NRS \u003Cnurec-skills@nvidia.com>",[4,50,51,52,19],"autonomous-vehicles","3d-reconstruction","gaussian-splatting","https:\u002F\u002Fgithub.com\u002FNVIDIA\u002Fasset-harvester","https:\u002F\u002Fresearch.nvidia.com\u002Flabs\u002Fsil\u002Fprojects\u002Fasset-harvester\u002F","https:\u002F\u002Farxiv.org\u002Fabs\u002F2604.18468","https:\u002F\u002Fhuggingface.co\u002Fnvidia\u002Fasset-harvester","https:\u002F\u002Fhuggingface.co\u002Fspaces\u002Fnvidia\u002Fasset-harvester","https:\u002F\u002Fhuggingface.co\u002Fdatasets\u002Fnvidia\u002FPhysicalAI-Autonomous-Vehicles-NCore","https:\u002F\u002Fhuggingface.co\u002Fdatasets\u002Fnvidia\u002FNuRec-AV-Object-Benchmark","45min (20min setup + 15min inference + evaluation)",{"type":62,"children":63},"root",[64,72,79,111,117,126,189,197,252,258,275,287,332,338,497,503,828,834,839,846,964,978,984,1136,1150,1156,1310,1324,1330,1404,1410,1415,1424,1436,1442,1514,1520,1739,1745,1842,1848,2050,2064],{"type":65,"tag":66,"props":67,"children":68},"element","h1",{"id":4},[69],{"type":70,"value":71},"text","Asset Harvester",{"type":65,"tag":73,"props":74,"children":76},"h2",{"id":75},"purpose",[77],{"type":70,"value":78},"Purpose",{"type":65,"tag":80,"props":81,"children":82},"p",{},[83,85,92,94,100,102,109],{"type":70,"value":84},"Install and drive NVIDIA Asset Harvester to extract per-object 3D\nGaussian Splat assets from sparse autonomous-vehicle (AV) object\nobservations — either a multi-view crop pulled from an NCore V4\ndriving log or a single masked image. The output is a\nsimulation-ready ",{"type":65,"tag":86,"props":87,"children":89},"code",{"className":88},[],[90],{"type":70,"value":91},"gaussians.ply",{"type":70,"value":93}," plus optional ",{"type":65,"tag":86,"props":95,"children":97},{"className":96},[],[98],{"type":70,"value":99},"metadata.yaml",{"type":70,"value":101}," that\nNVIDIA Omniverse NuRec can ingest as an external asset. Apache-2.0\nupstream code lives at ",{"type":65,"tag":103,"props":104,"children":107},"a",{"href":53,"rel":105},[106],"nofollow",[108],{"type":70,"value":53},{"type":70,"value":110},".",{"type":65,"tag":73,"props":112,"children":114},{"id":113},"when-to-use-when-not-to-use",[115],{"type":70,"value":116},"When to Use \u002F When NOT to Use",{"type":65,"tag":80,"props":118,"children":119},{},[120],{"type":65,"tag":121,"props":122,"children":123},"strong",{},[124],{"type":70,"value":125},"Use this skill when:",{"type":65,"tag":127,"props":128,"children":129},"ul",{},[130,136,141,162],{"type":65,"tag":131,"props":132,"children":133},"li",{},[134],{"type":70,"value":135},"The user has AV clips or masked single images and wants per-object\n3D assets via the SparseViewDiT + TokenGS pipeline.",{"type":65,"tag":131,"props":137,"children":138},{},[139],{"type":70,"value":140},"The user has NCore V4 driving-log clips and wants per-track 3D\nassets for simulation.",{"type":65,"tag":131,"props":142,"children":143},{},[144,146,152,154,160],{"type":70,"value":145},"The user asks about ",{"type":65,"tag":86,"props":147,"children":149},{"className":148},[],[150],{"type":70,"value":151},"SparseViewDiT",{"type":70,"value":153},", ",{"type":65,"tag":86,"props":155,"children":157},{"className":156},[],[158],{"type":70,"value":159},"TokenGS",{"type":70,"value":161},", or wants to\nreproduce the Asset Harvester paper \u002F HF Space demo locally.",{"type":65,"tag":131,"props":163,"children":164},{},[165,167,173,175,180,182,187],{"type":70,"value":166},"The user wants ",{"type":65,"tag":86,"props":168,"children":170},{"className":169},[],[171],{"type":70,"value":172},".ply",{"type":70,"value":174}," Gaussians + ",{"type":65,"tag":86,"props":176,"children":178},{"className":177},[],[179],{"type":70,"value":99},{"type":70,"value":181}," suitable for\nNVIDIA Omniverse ",{"type":65,"tag":121,"props":183,"children":184},{},[185],{"type":70,"value":186},"NuRec",{"type":70,"value":188}," object insertion.",{"type":65,"tag":80,"props":190,"children":191},{},[192],{"type":65,"tag":121,"props":193,"children":194},{},[195],{"type":70,"value":196},"Do NOT use this skill when:",{"type":65,"tag":127,"props":198,"children":199},{},[200,213,218,223,236,241],{"type":65,"tag":131,"props":201,"children":202},{},[203,205,211],{"type":70,"value":204},"The user wants a full-scene reconstruction (use the ",{"type":65,"tag":86,"props":206,"children":208},{"className":207},[],[209],{"type":70,"value":210},"nre",{"type":70,"value":212}," skill).",{"type":65,"tag":131,"props":214,"children":215},{},[216],{"type":70,"value":217},"The user has no per-object masks or AV-style object crops.",{"type":65,"tag":131,"props":219,"children":220},{},[221],{"type":70,"value":222},"The user wants text-to-3D, indoor scans, or non-AV imagery —\nout of distribution.",{"type":65,"tag":131,"props":224,"children":225},{},[226,228,234],{"type":70,"value":227},"The user wants to ingest raw sensor data into NCore V4 (use the\n",{"type":65,"tag":86,"props":229,"children":231},{"className":230},[],[232],{"type":70,"value":233},"ncore",{"type":70,"value":235}," skill first).",{"type":65,"tag":131,"props":237,"children":238},{},[239],{"type":70,"value":240},"The user wants to re-train SparseViewDiT or TokenGS — this skill\nis install + inference only.",{"type":65,"tag":131,"props":242,"children":243},{},[244,246,251],{"type":70,"value":245},"The user just wants the no-install demo: point them at\n",{"type":65,"tag":103,"props":247,"children":249},{"href":57,"rel":248},[106],[250],{"type":70,"value":57},{"type":70,"value":110},{"type":65,"tag":73,"props":253,"children":255},{"id":254},"background",[256],{"type":70,"value":257},"Background",{"type":65,"tag":80,"props":259,"children":260},{},[261,263,267,269,273],{"type":70,"value":262},"Open-source (Apache-2.0) image-to-3D pipeline pairing\n",{"type":65,"tag":121,"props":264,"children":265},{},[266],{"type":70,"value":151},{"type":70,"value":268}," (multiview diffusion, 16 consistent views) with\n",{"type":65,"tag":121,"props":270,"children":271},{},[272],{"type":70,"value":159},{"type":70,"value":274}," (feed-forward Gaussian lifting):",{"type":65,"tag":276,"props":277,"children":282},"pre",{"className":278,"code":280,"language":70,"meta":281},[279],"language-text","NCore V4 clip ──► NCore parsing ──► SparseViewDiT (16-view diffusion)\n              ──► TokenGS lifting ──► gaussians.ply\n              ──► (optional) metadata.yaml for NuRec object insertion\n","",[283],{"type":65,"tag":86,"props":284,"children":285},{"__ignoreMap":281},[286],{"type":70,"value":280},{"type":65,"tag":80,"props":288,"children":289},{},[290,292,298,300,306,308,314,316,322,324,330],{"type":70,"value":291},"Single HF repo ",{"type":65,"tag":86,"props":293,"children":295},{"className":294},[],[296],{"type":70,"value":297},"nvidia\u002Fasset-harvester",{"type":70,"value":299}," ships four checkpoints:\n",{"type":65,"tag":86,"props":301,"children":303},{"className":302},[],[304],{"type":70,"value":305},"AH_object_seg_jit.pt",{"type":70,"value":307}," (AV-object Mask2Former),\n",{"type":65,"tag":86,"props":309,"children":311},{"className":310},[],[312],{"type":70,"value":313},"AH_multiview_diffusion.safetensors",{"type":70,"value":315}," (SparseViewDiT),\n",{"type":65,"tag":86,"props":317,"children":319},{"className":318},[],[320],{"type":70,"value":321},"AH_camera_estimator.safetensors",{"type":70,"value":323}," (camera pose, used when calibration\nis absent), and ",{"type":65,"tag":86,"props":325,"children":327},{"className":326},[],[328],{"type":70,"value":329},"AH_tokengs_lifting.safetensors",{"type":70,"value":331}," (TokenGS).",{"type":65,"tag":73,"props":333,"children":335},{"id":334},"inputs",[336],{"type":70,"value":337},"Inputs",{"type":65,"tag":127,"props":339,"children":340},{},[341,375,400,447,473],{"type":65,"tag":131,"props":342,"children":343},{},[344,349,351,357,359,365,367,373],{"type":65,"tag":121,"props":345,"children":346},{},[347],{"type":70,"value":348},"image_root",{"type":70,"value":350}," — directory of per-object folders, each with\n",{"type":65,"tag":86,"props":352,"children":354},{"className":353},[],[355],{"type":70,"value":356},"frame.jpeg",{"type":70,"value":358}," (512×512) and (optional) ",{"type":65,"tag":86,"props":360,"children":362},{"className":361},[],[363],{"type":70,"value":364},"mask.png",{"type":70,"value":366}," (required unless\n",{"type":65,"tag":86,"props":368,"children":370},{"className":369},[],[371],{"type":70,"value":372},"component_store",{"type":70,"value":374}," is given).",{"type":65,"tag":131,"props":376,"children":377},{},[378,382,384,390,392,398],{"type":65,"tag":121,"props":379,"children":380},{},[381],{"type":70,"value":372},{"type":70,"value":383}," — path to NCore V4 clip ",{"type":65,"tag":86,"props":385,"children":387},{"className":386},[],[388],{"type":70,"value":389},".json",{"type":70,"value":391}," manifest,\ncomma-separated component-store paths, or ",{"type":65,"tag":86,"props":393,"children":395},{"className":394},[],[396],{"type":70,"value":397},".zarr.itar",{"type":70,"value":399}," glob\n(required when running the NCore parsing path).",{"type":65,"tag":131,"props":401,"children":402},{},[403,408,410,415,417,423,424,430,431,437,439,445],{"type":65,"tag":121,"props":404,"children":405},{},[406],{"type":70,"value":407},"output_dir",{"type":70,"value":409}," — where per-sample outputs (",{"type":65,"tag":86,"props":411,"children":413},{"className":412},[],[414],{"type":70,"value":91},{"type":70,"value":416},",\n",{"type":65,"tag":86,"props":418,"children":420},{"className":419},[],[421],{"type":70,"value":422},"multiview\u002F",{"type":70,"value":153},{"type":65,"tag":86,"props":425,"children":427},{"className":426},[],[428],{"type":70,"value":429},"3d_lifted\u002F",{"type":70,"value":153},{"type":65,"tag":86,"props":432,"children":434},{"className":433},[],[435],{"type":70,"value":436},"*.mp4",{"type":70,"value":438},") are written (default\n",{"type":65,"tag":86,"props":440,"children":442},{"className":441},[],[443],{"type":70,"value":444},"outputs\u002F",{"type":70,"value":446},").",{"type":65,"tag":131,"props":448,"children":449},{},[450,455,457,463,465,471],{"type":65,"tag":121,"props":451,"children":452},{},[453],{"type":70,"value":454},"offload_flag",{"type":70,"value":456}," — enable CPU offload (",{"type":65,"tag":86,"props":458,"children":460},{"className":459},[],[461],{"type":70,"value":462},"--offload_model_to_cpu",{"type":70,"value":464}," \u002F\n",{"type":65,"tag":86,"props":466,"children":468},{"className":467},[],[469],{"type":70,"value":470},"--offload",{"type":70,"value":472},") when VRAM \u003C ~16 GB.",{"type":65,"tag":131,"props":474,"children":475},{},[476,481,483,488,490,496],{"type":65,"tag":121,"props":477,"children":478},{},[479],{"type":70,"value":480},"HF_TOKEN",{"type":70,"value":482}," — HuggingFace access token for the gated\n",{"type":65,"tag":86,"props":484,"children":486},{"className":485},[],[487],{"type":70,"value":297},{"type":70,"value":489}," repo and the PhysicalAI NCore dataset\n(obtain at ",{"type":65,"tag":103,"props":491,"children":494},{"href":492,"rel":493},"https:\u002F\u002Fhuggingface.co\u002Fsettings\u002Ftokens",[106],[495],{"type":70,"value":492},{"type":70,"value":446},{"type":65,"tag":73,"props":498,"children":500},{"id":499},"instructions",[501],{"type":70,"value":502},"Instructions",{"type":65,"tag":504,"props":505,"children":506},"ol",{},[507,573,608,643,689,736,760,795],{"type":65,"tag":131,"props":508,"children":509},{},[510,515,517,523,525,531,533,539,541,546,548,553,555,561,563,572],{"type":65,"tag":121,"props":511,"children":512},{},[513],{"type":70,"value":514},"Validate the host.",{"type":70,"value":516}," Have the agent execute\n",{"type":65,"tag":86,"props":518,"children":520},{"className":519},[],[521],{"type":70,"value":522},"scripts\u002Fvalidate_setup.py",{"type":70,"value":524}," via its standard script runner —\ne.g. ",{"type":65,"tag":86,"props":526,"children":528},{"className":527},[],[529],{"type":70,"value":530},"run_script(\"scripts\u002Fvalidate_setup.py\")",{"type":70,"value":532}," or\n",{"type":65,"tag":86,"props":534,"children":536},{"className":535},[],[537],{"type":70,"value":538},"python scripts\u002Fvalidate_setup.py",{"type":70,"value":540},". It confirms conda, the NVIDIA\ndriver, GCC, and ",{"type":65,"tag":86,"props":542,"children":544},{"className":543},[],[545],{"type":70,"value":480},{"type":70,"value":547}," are in place and exits non-zero on\nany missing prerequisite. Do ",{"type":65,"tag":121,"props":549,"children":550},{},[551],{"type":70,"value":552},"not",{"type":70,"value":554}," print ",{"type":65,"tag":86,"props":556,"children":558},{"className":557},[],[559],{"type":70,"value":560},"$HF_TOKEN",{"type":70,"value":562}," directly;\nsee ",{"type":65,"tag":103,"props":564,"children":566},{"href":565},"references\u002Finstallation.md",[567],{"type":65,"tag":86,"props":568,"children":570},{"className":569},[],[571],{"type":70,"value":565},{"type":70,"value":110},{"type":65,"tag":131,"props":574,"children":575},{},[576,581,583,589,591,597,599,607],{"type":65,"tag":121,"props":577,"children":578},{},[579],{"type":70,"value":580},"Install.",{"type":70,"value":582}," Use the one-shot ",{"type":65,"tag":86,"props":584,"children":586},{"className":585},[],[587],{"type":70,"value":588},"bash setup.sh",{"type":70,"value":590}," path unless the\nuser asks for a manual install. Full commands and the pinned\n",{"type":65,"tag":86,"props":592,"children":594},{"className":593},[],[595],{"type":70,"value":596},"gsplat",{"type":70,"value":598}," step are in\n",{"type":65,"tag":103,"props":600,"children":601},{"href":565},[602],{"type":65,"tag":86,"props":603,"children":605},{"className":604},[],[606],{"type":70,"value":565},{"type":70,"value":110},{"type":65,"tag":131,"props":609,"children":610},{},[611,616,618,624,626,632,634,642],{"type":65,"tag":121,"props":612,"children":613},{},[614],{"type":70,"value":615},"Download checkpoints.",{"type":70,"value":617}," ",{"type":65,"tag":86,"props":619,"children":621},{"className":620},[],[622],{"type":70,"value":623},"hf auth login",{"type":70,"value":625}," first, then\n",{"type":65,"tag":86,"props":627,"children":629},{"className":628},[],[630],{"type":70,"value":631},"hf download nvidia\u002Fasset-harvester --local-dir checkpoints",{"type":70,"value":633}," (see\n",{"type":65,"tag":103,"props":635,"children":636},{"href":565},[637],{"type":65,"tag":86,"props":638,"children":640},{"className":639},[],[641],{"type":70,"value":565},{"type":70,"value":446},{"type":65,"tag":131,"props":644,"children":645},{},[646,651],{"type":65,"tag":121,"props":647,"children":648},{},[649],{"type":70,"value":650},"Pick the inference path:",{"type":65,"tag":127,"props":652,"children":653},{},[654,669,674],{"type":65,"tag":131,"props":655,"children":656},{},[657,659,668],{"type":70,"value":658},"Bundled demo → Workflow Q in\n",{"type":65,"tag":103,"props":660,"children":662},{"href":661},"references\u002Fworkflows.md",[663],{"type":65,"tag":86,"props":664,"children":666},{"className":665},[],[667],{"type":70,"value":661},{"type":70,"value":110},{"type":65,"tag":131,"props":670,"children":671},{},[672],{"type":70,"value":673},"Single user image (+\u002F- mask) → Workflow S in the same file.",{"type":65,"tag":131,"props":675,"children":676},{},[677,679,688],{"type":70,"value":678},"NCore V4 driving log → Workflow N (full walkthrough in\n",{"type":65,"tag":103,"props":680,"children":682},{"href":681},"references\u002Fend-to-end-ncore.md",[683],{"type":65,"tag":86,"props":684,"children":686},{"className":685},[],[687],{"type":70,"value":681},{"type":70,"value":446},{"type":65,"tag":131,"props":690,"children":691},{},[692,697,699,705,707,712,714,720,722,727,729,735],{"type":65,"tag":121,"props":693,"children":694},{},[695],{"type":70,"value":696},"Execute with appropriate VRAM flag.",{"type":70,"value":698}," If ",{"type":65,"tag":86,"props":700,"children":702},{"className":701},[],[703],{"type":70,"value":704},"\u003C 16 GB",{"type":70,"value":706}," VRAM, add\n",{"type":65,"tag":86,"props":708,"children":710},{"className":709},[],[711],{"type":70,"value":462},{"type":70,"value":713}," (direct ",{"type":65,"tag":86,"props":715,"children":717},{"className":716},[],[718],{"type":70,"value":719},"run_inference.py",{"type":70,"value":721},") or\n",{"type":65,"tag":86,"props":723,"children":725},{"className":724},[],[726],{"type":70,"value":470},{"type":70,"value":728}," (",{"type":65,"tag":86,"props":730,"children":732},{"className":731},[],[733],{"type":70,"value":734},"run.sh",{"type":70,"value":446},{"type":65,"tag":131,"props":737,"children":738},{},[739,744,746,751,753,759],{"type":65,"tag":121,"props":740,"children":741},{},[742],{"type":70,"value":743},"Validate outputs.",{"type":70,"value":745}," Confirm ",{"type":65,"tag":86,"props":747,"children":749},{"className":748},[],[750],{"type":70,"value":91},{"type":70,"value":752}," and the two MP4s\nexist under ",{"type":65,"tag":86,"props":754,"children":756},{"className":755},[],[757],{"type":70,"value":758},"${OUTPUT_DIR}\u002F\u003Csample>\u002F",{"type":70,"value":110},{"type":65,"tag":131,"props":761,"children":762},{},[763,768,770,776,778,784,786,794],{"type":65,"tag":121,"props":764,"children":765},{},[766],{"type":70,"value":767},"(Optional) Benchmark.",{"type":70,"value":769}," Clone the env to ",{"type":65,"tag":86,"props":771,"children":773},{"className":772},[],[774],{"type":70,"value":775},"av-object-benchmark",{"type":70,"value":777},"\nand run ",{"type":65,"tag":86,"props":779,"children":781},{"className":780},[],[782],{"type":70,"value":783},"benchmark\u002Feval.py",{"type":70,"value":785}," for PSNR \u002F LPIPS \u002F SSIM and DINOv3\nembedding metrics. See\n",{"type":65,"tag":103,"props":787,"children":788},{"href":681},[789],{"type":65,"tag":86,"props":790,"children":792},{"className":791},[],[793],{"type":70,"value":681},{"type":70,"value":110},{"type":65,"tag":131,"props":796,"children":797},{},[798,803,805,811,813,818,820,827],{"type":65,"tag":121,"props":799,"children":800},{},[801],{"type":70,"value":802},"(Optional) Hand off to NuRec.",{"type":70,"value":804}," Rotate Gaussians with\n",{"type":65,"tag":86,"props":806,"children":808},{"className":807},[],[809],{"type":70,"value":810},"orient_gaussians_for_nurec",{"type":70,"value":812},", emit ",{"type":65,"tag":86,"props":814,"children":816},{"className":815},[],[817],{"type":70,"value":99},{"type":70,"value":819},", then follow\nthe ",{"type":65,"tag":103,"props":821,"children":824},{"href":822,"rel":823},"https:\u002F\u002Fdocs.nvidia.com\u002Fnurec\u002Fnurec\u002Fuse-ah-assets.html",[106],[825],{"type":70,"value":826},"NuRec external-assets docs",{"type":70,"value":110},{"type":65,"tag":73,"props":829,"children":831},{"id":830},"examples",[832],{"type":70,"value":833},"Examples",{"type":65,"tag":80,"props":835,"children":836},{},[837],{"type":70,"value":838},"Three concrete entry points. Each one points at the workflow file\nwith the full command; nothing here is meant to be copy-pasted in\nisolation.",{"type":65,"tag":840,"props":841,"children":843},"h3",{"id":842},"example-1-smoke-test-the-install-with-bundled-samples",[844],{"type":70,"value":845},"Example 1 — Smoke-test the install with bundled samples",{"type":65,"tag":276,"props":847,"children":850},{"className":848,"code":849,"language":43,"meta":281,"style":281},"language-bash shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","python scripts\u002Fvalidate_setup.py          # then `bash setup.sh` once\npython3 run_inference.py \\\n    --diffusion_checkpoint checkpoints\u002FAH_multiview_diffusion.safetensors \\\n    --lifting_checkpoint   checkpoints\u002FAH_tokengs_lifting.safetensors \\\n    --data_root            data_samples\u002Frectified_AV_objects\u002F \\\n    --output_dir           outputs\u002Fharvesting\n",[851],{"type":65,"tag":86,"props":852,"children":853},{"__ignoreMap":281},[854,878,897,915,932,950],{"type":65,"tag":855,"props":856,"children":859},"span",{"class":857,"line":858},"line",1,[860,866,872],{"type":65,"tag":855,"props":861,"children":863},{"style":862},"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B",[864],{"type":70,"value":865},"python",{"type":65,"tag":855,"props":867,"children":869},{"style":868},"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D",[870],{"type":70,"value":871}," scripts\u002Fvalidate_setup.py",{"type":65,"tag":855,"props":873,"children":875},{"style":874},"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic",[876],{"type":70,"value":877},"          # then `bash setup.sh` once\n",{"type":65,"tag":855,"props":879,"children":881},{"class":857,"line":880},2,[882,886,891],{"type":65,"tag":855,"props":883,"children":884},{"style":862},[885],{"type":70,"value":46},{"type":65,"tag":855,"props":887,"children":888},{"style":868},[889],{"type":70,"value":890}," run_inference.py",{"type":65,"tag":855,"props":892,"children":894},{"style":893},"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8",[895],{"type":70,"value":896}," \\\n",{"type":65,"tag":855,"props":898,"children":900},{"class":857,"line":899},3,[901,906,911],{"type":65,"tag":855,"props":902,"children":903},{"style":868},[904],{"type":70,"value":905},"    --diffusion_checkpoint",{"type":65,"tag":855,"props":907,"children":908},{"style":868},[909],{"type":70,"value":910}," checkpoints\u002FAH_multiview_diffusion.safetensors",{"type":65,"tag":855,"props":912,"children":913},{"style":893},[914],{"type":70,"value":896},{"type":65,"tag":855,"props":916,"children":917},{"class":857,"line":27},[918,923,928],{"type":65,"tag":855,"props":919,"children":920},{"style":868},[921],{"type":70,"value":922},"    --lifting_checkpoint",{"type":65,"tag":855,"props":924,"children":925},{"style":868},[926],{"type":70,"value":927},"   checkpoints\u002FAH_tokengs_lifting.safetensors",{"type":65,"tag":855,"props":929,"children":930},{"style":893},[931],{"type":70,"value":896},{"type":65,"tag":855,"props":933,"children":935},{"class":857,"line":934},5,[936,941,946],{"type":65,"tag":855,"props":937,"children":938},{"style":868},[939],{"type":70,"value":940},"    --data_root",{"type":65,"tag":855,"props":942,"children":943},{"style":868},[944],{"type":70,"value":945},"            data_samples\u002Frectified_AV_objects\u002F",{"type":65,"tag":855,"props":947,"children":948},{"style":893},[949],{"type":70,"value":896},{"type":65,"tag":855,"props":951,"children":953},{"class":857,"line":952},6,[954,959],{"type":65,"tag":855,"props":955,"children":956},{"style":868},[957],{"type":70,"value":958},"    --output_dir",{"type":65,"tag":855,"props":960,"children":961},{"style":868},[962],{"type":70,"value":963},"           outputs\u002Fharvesting\n",{"type":65,"tag":80,"props":965,"children":966},{},[967,969,977],{"type":70,"value":968},"See Workflow Q in\n",{"type":65,"tag":103,"props":970,"children":971},{"href":661},[972],{"type":65,"tag":86,"props":973,"children":975},{"className":974},[],[976],{"type":70,"value":661},{"type":70,"value":110},{"type":65,"tag":840,"props":979,"children":981},{"id":980},"example-2-one-masked-single-image-3d-asset",[982],{"type":70,"value":983},"Example 2 — One masked single image → 3D asset",{"type":65,"tag":276,"props":985,"children":987},{"className":848,"code":986,"language":43,"meta":281,"style":281},"python -m asset_harvester.utils.image_segment \\\n    --checkpoint checkpoints\u002FAH_object_seg_jit.pt \\\n    --image_folder data_samples\u002FOOD_images\npython3 run_inference.py \\\n    --diffusion_checkpoint checkpoints\u002FAH_multiview_diffusion.safetensors \\\n    --ahc_checkpoint       checkpoints\u002FAH_camera_estimator.safetensors \\\n    --lifting_checkpoint   checkpoints\u002FAH_tokengs_lifting.safetensors \\\n    --image_dir            data_samples\u002FOOD_images \\\n    --output_dir           outputs\u002Fsingle\n",[988],{"type":65,"tag":86,"props":989,"children":990},{"__ignoreMap":281},[991,1012,1029,1042,1057,1072,1089,1105,1123],{"type":65,"tag":855,"props":992,"children":993},{"class":857,"line":858},[994,998,1003,1008],{"type":65,"tag":855,"props":995,"children":996},{"style":862},[997],{"type":70,"value":865},{"type":65,"tag":855,"props":999,"children":1000},{"style":868},[1001],{"type":70,"value":1002}," -m",{"type":65,"tag":855,"props":1004,"children":1005},{"style":868},[1006],{"type":70,"value":1007}," asset_harvester.utils.image_segment",{"type":65,"tag":855,"props":1009,"children":1010},{"style":893},[1011],{"type":70,"value":896},{"type":65,"tag":855,"props":1013,"children":1014},{"class":857,"line":880},[1015,1020,1025],{"type":65,"tag":855,"props":1016,"children":1017},{"style":868},[1018],{"type":70,"value":1019},"    --checkpoint",{"type":65,"tag":855,"props":1021,"children":1022},{"style":868},[1023],{"type":70,"value":1024}," checkpoints\u002FAH_object_seg_jit.pt",{"type":65,"tag":855,"props":1026,"children":1027},{"style":893},[1028],{"type":70,"value":896},{"type":65,"tag":855,"props":1030,"children":1031},{"class":857,"line":899},[1032,1037],{"type":65,"tag":855,"props":1033,"children":1034},{"style":868},[1035],{"type":70,"value":1036},"    --image_folder",{"type":65,"tag":855,"props":1038,"children":1039},{"style":868},[1040],{"type":70,"value":1041}," data_samples\u002FOOD_images\n",{"type":65,"tag":855,"props":1043,"children":1044},{"class":857,"line":27},[1045,1049,1053],{"type":65,"tag":855,"props":1046,"children":1047},{"style":862},[1048],{"type":70,"value":46},{"type":65,"tag":855,"props":1050,"children":1051},{"style":868},[1052],{"type":70,"value":890},{"type":65,"tag":855,"props":1054,"children":1055},{"style":893},[1056],{"type":70,"value":896},{"type":65,"tag":855,"props":1058,"children":1059},{"class":857,"line":934},[1060,1064,1068],{"type":65,"tag":855,"props":1061,"children":1062},{"style":868},[1063],{"type":70,"value":905},{"type":65,"tag":855,"props":1065,"children":1066},{"style":868},[1067],{"type":70,"value":910},{"type":65,"tag":855,"props":1069,"children":1070},{"style":893},[1071],{"type":70,"value":896},{"type":65,"tag":855,"props":1073,"children":1074},{"class":857,"line":952},[1075,1080,1085],{"type":65,"tag":855,"props":1076,"children":1077},{"style":868},[1078],{"type":70,"value":1079},"    --ahc_checkpoint",{"type":65,"tag":855,"props":1081,"children":1082},{"style":868},[1083],{"type":70,"value":1084},"       checkpoints\u002FAH_camera_estimator.safetensors",{"type":65,"tag":855,"props":1086,"children":1087},{"style":893},[1088],{"type":70,"value":896},{"type":65,"tag":855,"props":1090,"children":1092},{"class":857,"line":1091},7,[1093,1097,1101],{"type":65,"tag":855,"props":1094,"children":1095},{"style":868},[1096],{"type":70,"value":922},{"type":65,"tag":855,"props":1098,"children":1099},{"style":868},[1100],{"type":70,"value":927},{"type":65,"tag":855,"props":1102,"children":1103},{"style":893},[1104],{"type":70,"value":896},{"type":65,"tag":855,"props":1106,"children":1108},{"class":857,"line":1107},8,[1109,1114,1119],{"type":65,"tag":855,"props":1110,"children":1111},{"style":868},[1112],{"type":70,"value":1113},"    --image_dir",{"type":65,"tag":855,"props":1115,"children":1116},{"style":868},[1117],{"type":70,"value":1118},"            data_samples\u002FOOD_images",{"type":65,"tag":855,"props":1120,"children":1121},{"style":893},[1122],{"type":70,"value":896},{"type":65,"tag":855,"props":1124,"children":1126},{"class":857,"line":1125},9,[1127,1131],{"type":65,"tag":855,"props":1128,"children":1129},{"style":868},[1130],{"type":70,"value":958},{"type":65,"tag":855,"props":1132,"children":1133},{"style":868},[1134],{"type":70,"value":1135},"           outputs\u002Fsingle\n",{"type":65,"tag":80,"props":1137,"children":1138},{},[1139,1141,1149],{"type":70,"value":1140},"See Workflow S in\n",{"type":65,"tag":103,"props":1142,"children":1143},{"href":661},[1144],{"type":65,"tag":86,"props":1145,"children":1147},{"className":1146},[],[1148],{"type":70,"value":661},{"type":70,"value":110},{"type":65,"tag":840,"props":1151,"children":1153},{"id":1152},"example-3-ncore-v4-clip-nurec-ready-external-assets",[1154],{"type":70,"value":1155},"Example 3 — NCore V4 clip → NuRec-ready external assets",{"type":65,"tag":276,"props":1157,"children":1159},{"className":848,"code":1158,"language":43,"meta":281,"style":281},"bash scripts\u002Frun_ncore_parser.sh --component-store \u003Cclip.json>\nbash run.sh --data-root .\u002Foutputs\u002Fncore_parser --output-dir .\u002Foutputs\u002Fncore_harvest\npython -m asset_harvester.utils.orient_gaussians_for_nurec \\\n    --input-dir .\u002Foutputs\u002Fncore_harvest \\\n    --output-dir .\u002Foutputs\u002Fncore_harvest_nurec\npython asset_harvester\u002Futils\u002Fgenerate_external_assets_metadata.py \\\n    --input-dir .\u002Foutputs\u002Fncore_harvest_nurec\n",[1160],{"type":65,"tag":86,"props":1161,"children":1162},{"__ignoreMap":281},[1163,1201,1233,1253,1270,1283,1299],{"type":65,"tag":855,"props":1164,"children":1165},{"class":857,"line":858},[1166,1170,1175,1180,1186,1191,1196],{"type":65,"tag":855,"props":1167,"children":1168},{"style":862},[1169],{"type":70,"value":43},{"type":65,"tag":855,"props":1171,"children":1172},{"style":868},[1173],{"type":70,"value":1174}," scripts\u002Frun_ncore_parser.sh",{"type":65,"tag":855,"props":1176,"children":1177},{"style":868},[1178],{"type":70,"value":1179}," --component-store",{"type":65,"tag":855,"props":1181,"children":1183},{"style":1182},"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF",[1184],{"type":70,"value":1185}," \u003C",{"type":65,"tag":855,"props":1187,"children":1188},{"style":868},[1189],{"type":70,"value":1190},"clip.jso",{"type":65,"tag":855,"props":1192,"children":1193},{"style":893},[1194],{"type":70,"value":1195},"n",{"type":65,"tag":855,"props":1197,"children":1198},{"style":1182},[1199],{"type":70,"value":1200},">\n",{"type":65,"tag":855,"props":1202,"children":1203},{"class":857,"line":880},[1204,1208,1213,1218,1223,1228],{"type":65,"tag":855,"props":1205,"children":1206},{"style":862},[1207],{"type":70,"value":43},{"type":65,"tag":855,"props":1209,"children":1210},{"style":868},[1211],{"type":70,"value":1212}," run.sh",{"type":65,"tag":855,"props":1214,"children":1215},{"style":868},[1216],{"type":70,"value":1217}," --data-root",{"type":65,"tag":855,"props":1219,"children":1220},{"style":868},[1221],{"type":70,"value":1222}," .\u002Foutputs\u002Fncore_parser",{"type":65,"tag":855,"props":1224,"children":1225},{"style":868},[1226],{"type":70,"value":1227}," --output-dir",{"type":65,"tag":855,"props":1229,"children":1230},{"style":868},[1231],{"type":70,"value":1232}," .\u002Foutputs\u002Fncore_harvest\n",{"type":65,"tag":855,"props":1234,"children":1235},{"class":857,"line":899},[1236,1240,1244,1249],{"type":65,"tag":855,"props":1237,"children":1238},{"style":862},[1239],{"type":70,"value":865},{"type":65,"tag":855,"props":1241,"children":1242},{"style":868},[1243],{"type":70,"value":1002},{"type":65,"tag":855,"props":1245,"children":1246},{"style":868},[1247],{"type":70,"value":1248}," asset_harvester.utils.orient_gaussians_for_nurec",{"type":65,"tag":855,"props":1250,"children":1251},{"style":893},[1252],{"type":70,"value":896},{"type":65,"tag":855,"props":1254,"children":1255},{"class":857,"line":27},[1256,1261,1266],{"type":65,"tag":855,"props":1257,"children":1258},{"style":868},[1259],{"type":70,"value":1260},"    --input-dir",{"type":65,"tag":855,"props":1262,"children":1263},{"style":868},[1264],{"type":70,"value":1265}," .\u002Foutputs\u002Fncore_harvest",{"type":65,"tag":855,"props":1267,"children":1268},{"style":893},[1269],{"type":70,"value":896},{"type":65,"tag":855,"props":1271,"children":1272},{"class":857,"line":934},[1273,1278],{"type":65,"tag":855,"props":1274,"children":1275},{"style":868},[1276],{"type":70,"value":1277},"    --output-dir",{"type":65,"tag":855,"props":1279,"children":1280},{"style":868},[1281],{"type":70,"value":1282}," .\u002Foutputs\u002Fncore_harvest_nurec\n",{"type":65,"tag":855,"props":1284,"children":1285},{"class":857,"line":952},[1286,1290,1295],{"type":65,"tag":855,"props":1287,"children":1288},{"style":862},[1289],{"type":70,"value":865},{"type":65,"tag":855,"props":1291,"children":1292},{"style":868},[1293],{"type":70,"value":1294}," asset_harvester\u002Futils\u002Fgenerate_external_assets_metadata.py",{"type":65,"tag":855,"props":1296,"children":1297},{"style":893},[1298],{"type":70,"value":896},{"type":65,"tag":855,"props":1300,"children":1301},{"class":857,"line":1091},[1302,1306],{"type":65,"tag":855,"props":1303,"children":1304},{"style":868},[1305],{"type":70,"value":1260},{"type":65,"tag":855,"props":1307,"children":1308},{"style":868},[1309],{"type":70,"value":1282},{"type":65,"tag":80,"props":1311,"children":1312},{},[1313,1315,1323],{"type":70,"value":1314},"Full walkthrough including sample-clip download, the benchmark\nflow, and the NuRec PPISP caveat lives in\n",{"type":65,"tag":103,"props":1316,"children":1317},{"href":681},[1318],{"type":65,"tag":86,"props":1319,"children":1321},{"className":1320},[],[1322],{"type":70,"value":681},{"type":70,"value":110},{"type":65,"tag":73,"props":1325,"children":1327},{"id":1326},"scripts",[1328],{"type":70,"value":1329},"Scripts",{"type":65,"tag":1331,"props":1332,"children":1333},"table",{},[1334,1357],{"type":65,"tag":1335,"props":1336,"children":1337},"thead",{},[1338],{"type":65,"tag":1339,"props":1340,"children":1341},"tr",{},[1342,1348,1352],{"type":65,"tag":1343,"props":1344,"children":1345},"th",{},[1346],{"type":70,"value":1347},"Script",{"type":65,"tag":1343,"props":1349,"children":1350},{},[1351],{"type":70,"value":78},{"type":65,"tag":1343,"props":1353,"children":1354},{},[1355],{"type":70,"value":1356},"Usage",{"type":65,"tag":1358,"props":1359,"children":1360},"tbody",{},[1361],{"type":65,"tag":1339,"props":1362,"children":1363},{},[1364,1373,1385],{"type":65,"tag":1365,"props":1366,"children":1367},"td",{},[1368],{"type":65,"tag":86,"props":1369,"children":1371},{"className":1370},[],[1372],{"type":70,"value":522},{"type":65,"tag":1365,"props":1374,"children":1375},{},[1376,1378,1383],{"type":70,"value":1377},"Verify host meets Asset Harvester prerequisites (conda, driver, GCC, ",{"type":65,"tag":86,"props":1379,"children":1381},{"className":1380},[],[1382],{"type":70,"value":480},{"type":70,"value":1384},"). No network access.",{"type":65,"tag":1365,"props":1386,"children":1387},{},[1388,1390,1396,1398,1403],{"type":70,"value":1389},"Invoke via the agent's ",{"type":65,"tag":86,"props":1391,"children":1393},{"className":1392},[],[1394],{"type":70,"value":1395},"run_script",{"type":70,"value":1397}," helper, or ",{"type":65,"tag":86,"props":1399,"children":1401},{"className":1400},[],[1402],{"type":70,"value":538},{"type":70,"value":110},{"type":65,"tag":73,"props":1405,"children":1407},{"id":1406},"output-format",[1408],{"type":70,"value":1409},"Output Format",{"type":65,"tag":80,"props":1411,"children":1412},{},[1413],{"type":70,"value":1414},"Per input sample (image or NCore track) the pipeline writes:",{"type":65,"tag":276,"props":1416,"children":1419},{"className":1417,"code":1418,"language":70,"meta":281},[279],"${OUTPUT_DIR}\u002F\u003Csample_id>\u002F\n├── multiview\u002F           # 16 RGB views generated by SparseViewDiT\n├── 3d_lifted\u002F           # TokenGS-rendered views of the lifted Gaussians\n├── gaussians.ply        # 3D Gaussian Splat asset (Omniverse\u002FNuRec-ready)\n├── multiview.mp4\n└── 3d_lifted.mp4\n",[1420],{"type":65,"tag":86,"props":1421,"children":1422},{"__ignoreMap":281},[1423],{"type":70,"value":1418},{"type":65,"tag":80,"props":1425,"children":1426},{},[1427,1429,1434],{"type":70,"value":1428},"When the NuRec handoff runs, ",{"type":65,"tag":86,"props":1430,"children":1432},{"className":1431},[],[1433],{"type":70,"value":99},{"type":70,"value":1435}," is additionally written\nat the root of the oriented output directory.",{"type":65,"tag":73,"props":1437,"children":1439},{"id":1438},"prerequisites",[1440],{"type":70,"value":1441},"Prerequisites",{"type":65,"tag":80,"props":1443,"children":1444},{},[1445,1447,1453,1455,1460,1462,1467,1469,1475,1476,1482,1483,1489,1490,1496,1498,1503,1505,1513],{"type":70,"value":1446},"Linux (Ubuntu 22.04 tested), conda, NVIDIA driver ",{"type":65,"tag":86,"props":1448,"children":1450},{"className":1449},[],[1451],{"type":70,"value":1452},">= 570",{"type":70,"value":1454}," (CUDA\n12.8), GCC 10–13, ~16 GB GPU VRAM, ~30 GB free disk, ",{"type":65,"tag":86,"props":1456,"children":1458},{"className":1457},[],[1459],{"type":70,"value":480},{"type":70,"value":1461}," with\nthe ",{"type":65,"tag":86,"props":1463,"children":1465},{"className":1464},[],[1466],{"type":70,"value":297},{"type":70,"value":1468}," model card accepted, and egress to\n",{"type":65,"tag":86,"props":1470,"children":1472},{"className":1471},[],[1473],{"type":70,"value":1474},"github.com",{"type":70,"value":153},{"type":65,"tag":86,"props":1477,"children":1479},{"className":1478},[],[1480],{"type":70,"value":1481},"huggingface.co",{"type":70,"value":153},{"type":65,"tag":86,"props":1484,"children":1486},{"className":1485},[],[1487],{"type":70,"value":1488},"pypi.org",{"type":70,"value":416},{"type":65,"tag":86,"props":1491,"children":1493},{"className":1492},[],[1494],{"type":70,"value":1495},"download.pytorch.org",{"type":70,"value":1497},". The check that fails-fast on a missing\nprerequisite is ",{"type":65,"tag":86,"props":1499,"children":1501},{"className":1500},[],[1502],{"type":70,"value":522},{"type":70,"value":1504},"; secret-handling\nguidance lives in\n",{"type":65,"tag":103,"props":1506,"children":1507},{"href":565},[1508],{"type":65,"tag":86,"props":1509,"children":1511},{"className":1510},[],[1512],{"type":70,"value":565},{"type":70,"value":110},{"type":65,"tag":73,"props":1515,"children":1517},{"id":1516},"references",[1518],{"type":70,"value":1519},"References",{"type":65,"tag":127,"props":1521,"children":1522},{},[1523,1543,1556,1576,1629,1643,1689,1699,1709,1719,1729],{"type":65,"tag":131,"props":1524,"children":1525},{},[1526,1534,1536,1541],{"type":65,"tag":103,"props":1527,"children":1528},{"href":565},[1529],{"type":65,"tag":86,"props":1530,"children":1532},{"className":1531},[],[1533],{"type":70,"value":565},{"type":70,"value":1535}," —\none-shot + manual install, checkpoint download, safe ",{"type":65,"tag":86,"props":1537,"children":1539},{"className":1538},[],[1540],{"type":70,"value":480},{"type":70,"value":1542},"\nhandling.",{"type":65,"tag":131,"props":1544,"children":1545},{},[1546,1554],{"type":65,"tag":103,"props":1547,"children":1548},{"href":661},[1549],{"type":65,"tag":86,"props":1550,"children":1552},{"className":1551},[],[1553],{"type":70,"value":661},{"type":70,"value":1555}," — Workflows\nQ (bundled), S (single image), N (NCore) plus a configuration\nmatrix.",{"type":65,"tag":131,"props":1557,"children":1558},{},[1559,1567,1569,1574],{"type":65,"tag":103,"props":1560,"children":1561},{"href":681},[1562],{"type":65,"tag":86,"props":1563,"children":1565},{"className":1564},[],[1566],{"type":70,"value":681},{"type":70,"value":1568},"\n— full NCore V4 walkthrough including benchmark eval in the cloned\n",{"type":65,"tag":86,"props":1570,"children":1572},{"className":1571},[],[1573],{"type":70,"value":775},{"type":70,"value":1575}," env, and the NuRec handoff checklist.",{"type":65,"tag":131,"props":1577,"children":1578},{},[1579,1588,1590,1595,1596,1601,1602,1608,1609,1615,1616,1621,1622,1628],{"type":65,"tag":103,"props":1580,"children":1582},{"href":1581},"references\u002Fcli-reference.md",[1583],{"type":65,"tag":86,"props":1584,"children":1586},{"className":1585},[],[1587],{"type":70,"value":1581},{"type":70,"value":1589}," —\nexhaustive flag matrix for ",{"type":65,"tag":86,"props":1591,"children":1593},{"className":1592},[],[1594],{"type":70,"value":719},{"type":70,"value":153},{"type":65,"tag":86,"props":1597,"children":1599},{"className":1598},[],[1600],{"type":70,"value":734},{"type":70,"value":416},{"type":65,"tag":86,"props":1603,"children":1605},{"className":1604},[],[1606],{"type":70,"value":1607},"run_ncore_parser.sh",{"type":70,"value":153},{"type":65,"tag":86,"props":1610,"children":1612},{"className":1611},[],[1613],{"type":70,"value":1614},"image_segment",{"type":70,"value":416},{"type":65,"tag":86,"props":1617,"children":1619},{"className":1618},[],[1620],{"type":70,"value":810},{"type":70,"value":416},{"type":65,"tag":86,"props":1623,"children":1625},{"className":1624},[],[1626],{"type":70,"value":1627},"generate_external_assets_metadata.py",{"type":70,"value":110},{"type":65,"tag":131,"props":1630,"children":1631},{},[1632,1641],{"type":65,"tag":103,"props":1633,"children":1635},{"href":1634},"references\u002Ftroubleshooting.md",[1636],{"type":65,"tag":86,"props":1637,"children":1639},{"className":1638},[],[1640],{"type":70,"value":1634},{"type":70,"value":1642},"\n— extended error matrix and full teardown \u002F disk-cleanup recipe.",{"type":65,"tag":131,"props":1644,"children":1645},{},[1646,1648,1657,1659,1668,1670,1676,1678,1687],{"type":70,"value":1647},"Sibling skills: ",{"type":65,"tag":103,"props":1649,"children":1651},{"href":1650},"..\u002Fncore\u002FSKILL.md",[1652],{"type":65,"tag":86,"props":1653,"children":1655},{"className":1654},[],[1656],{"type":70,"value":1650},{"type":70,"value":1658}," (NCore V4\ningest), ",{"type":65,"tag":103,"props":1660,"children":1662},{"href":1661},"..\u002Fnre\u002FSKILL.md",[1663],{"type":65,"tag":86,"props":1664,"children":1666},{"className":1665},[],[1667],{"type":70,"value":1661},{"type":70,"value":1669}," (NRE scene\nreconstruction and ",{"type":65,"tag":86,"props":1671,"children":1673},{"className":1672},[],[1674],{"type":70,"value":1675},"export-external-assets",{"type":70,"value":1677}," packaging),\n",{"type":65,"tag":103,"props":1679,"children":1681},{"href":1680},"..\u002Fphysical-ai-datasets\u002FSKILL.md",[1682],{"type":65,"tag":86,"props":1683,"children":1685},{"className":1684},[],[1686],{"type":70,"value":1680},{"type":70,"value":1688},"\n(sample NCore clips, benchmark dataset).",{"type":65,"tag":131,"props":1690,"children":1691},{},[1692,1694],{"type":70,"value":1693},"Upstream README: ",{"type":65,"tag":103,"props":1695,"children":1697},{"href":53,"rel":1696},[106],[1698],{"type":70,"value":53},{"type":65,"tag":131,"props":1700,"children":1701},{},[1702,1704],{"type":70,"value":1703},"Project page: ",{"type":65,"tag":103,"props":1705,"children":1707},{"href":54,"rel":1706},[106],[1708],{"type":70,"value":54},{"type":65,"tag":131,"props":1710,"children":1711},{},[1712,1714],{"type":70,"value":1713},"HF model: ",{"type":65,"tag":103,"props":1715,"children":1717},{"href":56,"rel":1716},[106],[1718],{"type":70,"value":56},{"type":65,"tag":131,"props":1720,"children":1721},{},[1722,1724],{"type":70,"value":1723},"Live demo: ",{"type":65,"tag":103,"props":1725,"children":1727},{"href":57,"rel":1726},[106],[1728],{"type":70,"value":57},{"type":65,"tag":131,"props":1730,"children":1731},{},[1732,1734],{"type":70,"value":1733},"NuRec external-assets guide: ",{"type":65,"tag":103,"props":1735,"children":1737},{"href":822,"rel":1736},[106],[1738],{"type":70,"value":822},{"type":65,"tag":73,"props":1740,"children":1742},{"id":1741},"limitations",[1743],{"type":70,"value":1744},"Limitations",{"type":65,"tag":127,"props":1746,"children":1747},{},[1748,1753,1770,1782,1787,1792,1824,1829],{"type":65,"tag":131,"props":1749,"children":1750},{},[1751],{"type":70,"value":1752},"AV-only domain. Non-road \u002F non-AV objects are out of distribution.",{"type":65,"tag":131,"props":1754,"children":1755},{},[1756,1761,1763,1768],{"type":65,"tag":86,"props":1757,"children":1759},{"className":1758},[],[1760],{"type":70,"value":305},{"type":70,"value":1762}," is class-restricted (vehicles, VRUs,\ncyclists, road objects). Supply your own ",{"type":65,"tag":86,"props":1764,"children":1766},{"className":1765},[],[1767],{"type":70,"value":364},{"type":70,"value":1769}," for arbitrary\nobjects.",{"type":65,"tag":131,"props":1771,"children":1772},{},[1773,1775,1780],{"type":70,"value":1774},"Scale is ",{"type":65,"tag":121,"props":1776,"children":1777},{},[1778],{"type":70,"value":1779},"not predicted",{"type":70,"value":1781},". NuRec insertion reads scale from the\nsource clip's cuboid tracks.",{"type":65,"tag":131,"props":1783,"children":1784},{},[1785],{"type":70,"value":1786},"16 GB VRAM is the practical floor; lower-VRAM users must offload\nto CPU (slower).",{"type":65,"tag":131,"props":1788,"children":1789},{},[1790],{"type":70,"value":1791},"Inputs must be 512×512 square crops.",{"type":65,"tag":131,"props":1793,"children":1794},{},[1795,1800,1802,1807,1809,1815,1817,1823],{"type":65,"tag":86,"props":1796,"children":1798},{"className":1797},[],[1799],{"type":70,"value":783},{"type":70,"value":1801}," needs a separately cloned conda env\n(",{"type":65,"tag":86,"props":1803,"children":1805},{"className":1804},[],[1806],{"type":70,"value":775},{"type":70,"value":1808},") because ",{"type":65,"tag":86,"props":1810,"children":1812},{"className":1811},[],[1813],{"type":70,"value":1814},"transformers>=4.56.0",{"type":70,"value":1816}," conflicts\nwith the main env's pinned ",{"type":65,"tag":86,"props":1818,"children":1820},{"className":1819},[],[1821],{"type":70,"value":1822},"transformers==4.48.3",{"type":70,"value":110},{"type":65,"tag":131,"props":1825,"children":1826},{},[1827],{"type":70,"value":1828},"Linux-only install path (tested on Ubuntu 22.04 + CUDA 12.8).",{"type":65,"tag":131,"props":1830,"children":1831},{},[1832,1834,1840],{"type":70,"value":1833},"Optional SAM 3D Body metric needs the gated\n",{"type":65,"tag":86,"props":1835,"children":1837},{"className":1836},[],[1838],{"type":70,"value":1839},"facebook\u002Fsam-3d-body-dinov3",{"type":70,"value":1841}," repo; eval falls back to\nPSNR\u002FLPIPS\u002FSSIM if unavailable.",{"type":65,"tag":73,"props":1843,"children":1845},{"id":1844},"troubleshooting-top-4",[1846],{"type":70,"value":1847},"Troubleshooting (top 4)",{"type":65,"tag":1331,"props":1849,"children":1850},{},[1851,1872],{"type":65,"tag":1335,"props":1852,"children":1853},{},[1854],{"type":65,"tag":1339,"props":1855,"children":1856},{},[1857,1862,1867],{"type":65,"tag":1343,"props":1858,"children":1859},{},[1860],{"type":70,"value":1861},"Error",{"type":65,"tag":1343,"props":1863,"children":1864},{},[1865],{"type":70,"value":1866},"Cause",{"type":65,"tag":1343,"props":1868,"children":1869},{},[1870],{"type":70,"value":1871},"Solution",{"type":65,"tag":1358,"props":1873,"children":1874},{},[1875,1914,1968,2009],{"type":65,"tag":1339,"props":1876,"children":1877},{},[1878,1888,1900],{"type":65,"tag":1365,"props":1879,"children":1880},{},[1881,1886],{"type":65,"tag":86,"props":1882,"children":1884},{"className":1883},[],[1885],{"type":70,"value":596},{"type":70,"value":1887}," import \u002F CUDA ABI mismatch",{"type":65,"tag":1365,"props":1889,"children":1890},{},[1891,1893,1898],{"type":70,"value":1892},"Installed ",{"type":65,"tag":86,"props":1894,"children":1896},{"className":1895},[],[1897],{"type":70,"value":596},{"type":70,"value":1899}," from PyPI wheel instead of the pinned commit",{"type":65,"tag":1365,"props":1901,"children":1902},{},[1903,1905,1913],{"type":70,"value":1904},"Reinstall from the pinned source commit; see ",{"type":65,"tag":103,"props":1906,"children":1907},{"href":565},[1908],{"type":65,"tag":86,"props":1909,"children":1911},{"className":1910},[],[1912],{"type":70,"value":565},{"type":70,"value":110},{"type":65,"tag":1339,"props":1915,"children":1916},{},[1917,1928,1933],{"type":65,"tag":1365,"props":1918,"children":1919},{},[1920,1926],{"type":65,"tag":86,"props":1921,"children":1923},{"className":1922},[],[1924],{"type":70,"value":1925},"nvcc",{"type":70,"value":1927}," \"unsupported GNU version\"",{"type":65,"tag":1365,"props":1929,"children":1930},{},[1931],{"type":70,"value":1932},"GCC outside 10–13 on PATH",{"type":65,"tag":1365,"props":1934,"children":1935},{},[1936,1938,1944,1946,1952,1953,1959,1961,1967],{"type":70,"value":1937},"Install GCC 12 and export ",{"type":65,"tag":86,"props":1939,"children":1941},{"className":1940},[],[1942],{"type":70,"value":1943},"CC",{"type":70,"value":1945},"\u002F",{"type":65,"tag":86,"props":1947,"children":1949},{"className":1948},[],[1950],{"type":70,"value":1951},"CXX",{"type":70,"value":1945},{"type":65,"tag":86,"props":1954,"children":1956},{"className":1955},[],[1957],{"type":70,"value":1958},"CUDAHOSTCXX",{"type":70,"value":1960}," before ",{"type":65,"tag":86,"props":1962,"children":1964},{"className":1963},[],[1965],{"type":70,"value":1966},"setup.sh",{"type":70,"value":110},{"type":65,"tag":1339,"props":1969,"children":1970},{},[1971,1980,1985],{"type":65,"tag":1365,"props":1972,"children":1973},{},[1974],{"type":65,"tag":86,"props":1975,"children":1977},{"className":1976},[],[1978],{"type":70,"value":1979},"CUDA error: out of memory",{"type":65,"tag":1365,"props":1981,"children":1982},{},[1983],{"type":70,"value":1984},"GPU VRAM \u003C ~16 GB",{"type":65,"tag":1365,"props":1986,"children":1987},{},[1988,1990,1995,1997,2002,2003,2008],{"type":70,"value":1989},"Add ",{"type":65,"tag":86,"props":1991,"children":1993},{"className":1992},[],[1994],{"type":70,"value":462},{"type":70,"value":1996}," (direct) or ",{"type":65,"tag":86,"props":1998,"children":2000},{"className":1999},[],[2001],{"type":70,"value":470},{"type":70,"value":728},{"type":65,"tag":86,"props":2004,"children":2006},{"className":2005},[],[2007],{"type":70,"value":734},{"type":70,"value":446},{"type":65,"tag":1339,"props":2010,"children":2011},{},[2012,2029,2039],{"type":65,"tag":1365,"props":2013,"children":2014},{},[2015,2021,2023],{"type":65,"tag":86,"props":2016,"children":2018},{"className":2017},[],[2019],{"type":70,"value":2020},"401 Unauthorized",{"type":70,"value":2022}," from ",{"type":65,"tag":86,"props":2024,"children":2026},{"className":2025},[],[2027],{"type":70,"value":2028},"hf download",{"type":65,"tag":1365,"props":2030,"children":2031},{},[2032,2034],{"type":70,"value":2033},"Model-card terms not accepted, or missing ",{"type":65,"tag":86,"props":2035,"children":2037},{"className":2036},[],[2038],{"type":70,"value":480},{"type":65,"tag":1365,"props":2040,"children":2041},{},[2042,2044,2049],{"type":70,"value":2043},"Accept the model card and re-run ",{"type":65,"tag":86,"props":2045,"children":2047},{"className":2046},[],[2048],{"type":70,"value":623},{"type":70,"value":110},{"type":65,"tag":80,"props":2051,"children":2052},{},[2053,2055,2063],{"type":70,"value":2054},"Full matrix + teardown live in\n",{"type":65,"tag":103,"props":2056,"children":2057},{"href":1634},[2058],{"type":65,"tag":86,"props":2059,"children":2061},{"className":2060},[],[2062],{"type":70,"value":1634},{"type":70,"value":110},{"type":65,"tag":2065,"props":2066,"children":2067},"style",{},[2068],{"type":70,"value":2069},"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":2071,"total":2229},[2072,2090,2107,2118,2130,2144,2157,2171,2184,2195,2209,2218],{"slug":2073,"name":2073,"fn":2074,"description":2075,"org":2076,"tags":2077,"stars":2087,"repoUrl":2088,"updatedAt":2089},"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},[2078,2081,2084],{"name":2079,"slug":2080,"type":15},"Documentation","documentation",{"name":2082,"slug":2083,"type":15},"MCP","mcp",{"name":2085,"slug":2086,"type":15},"Search","search",21777,"https:\u002F\u002Fgithub.com\u002FNVIDIA\u002FNemoClaw","2026-07-20T06:00:01.461044",{"slug":2091,"name":2091,"fn":2092,"description":2093,"org":2094,"tags":2095,"stars":2104,"repoUrl":2105,"updatedAt":2106},"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},[2096,2099,2102],{"name":2097,"slug":2098,"type":15},"Containers","containers",{"name":2100,"slug":2101,"type":15},"Deployment","deployment",{"name":2103,"slug":865,"type":15},"Python",17049,"https:\u002F\u002Fgithub.com\u002FNVIDIA\u002FMegatron-LM","2026-07-27T06:06:11.249662",{"slug":2108,"name":2108,"fn":2109,"description":2110,"org":2111,"tags":2112,"stars":2104,"repoUrl":2105,"updatedAt":2117},"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},[2113,2116],{"name":2114,"slug":2115,"type":15},"CI\u002FCD","ci-cd",{"name":2100,"slug":2101,"type":15},"2026-07-14T05:25:59.97109",{"slug":2119,"name":2119,"fn":2120,"description":2121,"org":2122,"tags":2123,"stars":2104,"repoUrl":2105,"updatedAt":2129},"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},[2124,2125,2126],{"name":2114,"slug":2115,"type":15},{"name":2100,"slug":2101,"type":15},{"name":2127,"slug":2128,"type":15},"GitHub","github","2026-07-27T06:06:12.278222",{"slug":2131,"name":2131,"fn":2132,"description":2133,"org":2134,"tags":2135,"stars":2104,"repoUrl":2105,"updatedAt":2143},"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},[2136,2139,2140],{"name":2137,"slug":2138,"type":15},"Debugging","debugging",{"name":2127,"slug":2128,"type":15},{"name":2141,"slug":2142,"type":15},"Triage","triage","2026-07-14T05:25:57.442089",{"slug":2145,"name":2145,"fn":2146,"description":2147,"org":2148,"tags":2149,"stars":2104,"repoUrl":2105,"updatedAt":2156},"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},[2150,2153],{"name":2151,"slug":2152,"type":15},"Best Practices","best-practices",{"name":2154,"slug":2155,"type":15},"Code Analysis","code-analysis","2026-07-14T05:25:56.18433",{"slug":2158,"name":2158,"fn":2159,"description":2160,"org":2161,"tags":2162,"stars":2104,"repoUrl":2105,"updatedAt":2170},"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},[2163,2166,2169],{"name":2164,"slug":2165,"type":15},"Machine Learning","machine-learning",{"name":2167,"slug":2168,"type":15},"Migration","migration",{"name":9,"slug":8,"type":15},"2026-07-17T06:07:11.777011",{"slug":2172,"name":2172,"fn":2173,"description":2174,"org":2175,"tags":2176,"stars":2104,"repoUrl":2105,"updatedAt":2183},"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},[2177,2180],{"name":2178,"slug":2179,"type":15},"QA","qa",{"name":2181,"slug":2182,"type":15},"Testing","testing","2026-07-14T05:25:53.673039",{"slug":2185,"name":2185,"fn":2186,"description":2187,"org":2188,"tags":2189,"stars":2104,"repoUrl":2105,"updatedAt":2194},"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},[2190,2191],{"name":2100,"slug":2101,"type":15},{"name":2192,"slug":2193,"type":15},"Infrastructure","infrastructure","2026-07-14T05:25:49.362534",{"slug":2196,"name":2196,"fn":2197,"description":2198,"org":2199,"tags":2200,"stars":2104,"repoUrl":2105,"updatedAt":2208},"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},[2201,2204,2205],{"name":2202,"slug":2203,"type":15},"Code Review","code-review",{"name":2127,"slug":2128,"type":15},{"name":2206,"slug":2207,"type":15},"Pull Requests","pull-requests","2026-07-14T05:26:01.226578",{"slug":2210,"name":2210,"fn":2211,"description":2212,"org":2213,"tags":2214,"stars":2104,"repoUrl":2105,"updatedAt":2217},"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},[2215,2216],{"name":2178,"slug":2179,"type":15},{"name":2181,"slug":2182,"type":15},"2026-07-14T05:25:54.928983",{"slug":2219,"name":2219,"fn":2220,"description":2221,"org":2222,"tags":2223,"stars":2104,"repoUrl":2105,"updatedAt":2228},"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},[2224,2227],{"name":2225,"slug":2226,"type":15},"Automation","automation",{"name":2114,"slug":2115,"type":15},"2026-07-30T05:29:03.275638",496,{"items":2231,"total":952},[2232,2239,2253,2263,2274,2284],{"slug":4,"name":4,"fn":5,"description":6,"org":2233,"tags":2234,"stars":23,"repoUrl":24,"updatedAt":25},{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[2235,2236,2237,2238],{"name":13,"slug":14,"type":15},{"name":21,"slug":22,"type":15},{"name":9,"slug":8,"type":15},{"name":18,"slug":19,"type":15},{"slug":233,"name":233,"fn":2240,"description":2241,"org":2242,"tags":2243,"stars":23,"repoUrl":24,"updatedAt":2252},"convert sensor datasets to NVIDIA NCore format","Use when converting any sensor dataset into NVIDIA NCore V4 format (and feeding it to NuRec or a robotics-to-sim \"r2s\" pipeline). Covers ingesting raw cameras, LiDARs, radars, IMUs, depth or stereo into V4 sequences; authoring a new converter from the template; adapting PAI \u002F Waymo \u002F PandaSet \u002F NuScenes to V4; handling non-AV rigs (mono+depth, mono+lidar, stereo, multi-stereo, RGB-D, COLMAP \u002F SfM, ROS2 bag); and diagnosing a broken converter against `validate.py`. Do NOT use to train reconstructions (use `nre`) or to extract per-object 3D assets (use `asset-harvester`). Trigger keywords: ncore, ncore v4, convert, ingest, zarr, itar, nurec, waymo, pandaset, nuscenes, pai, hyperion, colmap, scannetpp, stereo, multi-stereo, mono+depth, mono+lidar, kitti, sfm, camera, lidar, radar, imu, cuboid, poses, intrinsics, ego mask, ros2, rosbag, mcap, realsense, zed, rgb-d, r2s, robotics, sam2.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[2244,2247,2248,2251],{"name":2245,"slug":2246,"type":15},"Data Engineering","data-engineering",{"name":9,"slug":8,"type":15},{"name":2249,"slug":2250,"type":15},"Robotics","robotics",{"name":18,"slug":19,"type":15},"2026-07-14T05:32:35.853952",{"slug":210,"name":210,"fn":2254,"description":2255,"org":2256,"tags":2257,"stars":23,"repoUrl":24,"updatedAt":2262},"train 3D Gaussian Splat models with NRE","Use to drive NVIDIA Omniverse NuRec \u002F Neural Reconstruction Engine (NRE) via the public NGC containers nvcr.io\u002Fnvidia\u002Fnre\u002Fnre and nvcr.io\u002Fnvidia\u002Fnre\u002Fnre-tools (NGC_API_KEY required) — train 3DGUT Gaussian reconstructions from NCore clips, generate aux data, render frames or LiDAR sweeps (local or warm `serve-grpc`), export PLY\u002Fdepth\u002Fmesh\u002FUSDZ, edit actors, and evaluate metrics. Do NOT use for per-object asset capture (use `asset-harvester`) or sensor-to-NCore conversion (use `ncore`).",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[2258,2259,2260,2261],{"name":13,"slug":14,"type":15},{"name":2164,"slug":2165,"type":15},{"name":9,"slug":8,"type":15},{"name":18,"slug":19,"type":15},"2026-07-14T05:32:34.548655",{"slug":2264,"name":2264,"fn":2265,"description":2266,"org":2267,"tags":2268,"stars":23,"repoUrl":24,"updatedAt":2273},"nurec-fixer","harmonize and fine-tune 3D reconstruction frames","Use to run NVIDIA DiffusionHarmonizer (public successor to the older Fixer recipes) to enhance, harmonize, evaluate, or fine-tune novel-view frames from NRE \u002F NuRec \u002F 3DGS \u002F NeRF reconstructions. Do NOT use for training the 3D reconstruction itself (use `nre`) or for sensor-to-NCore conversion (use `ncore`).",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[2269,2270,2271,2272],{"name":13,"slug":14,"type":15},{"name":2164,"slug":2165,"type":15},{"name":9,"slug":8,"type":15},{"name":18,"slug":19,"type":15},"2026-07-14T05:32:38.465728",{"slug":2275,"name":2275,"fn":2276,"description":2277,"org":2278,"tags":2279,"stars":23,"repoUrl":24,"updatedAt":2283},"nurec-index","route NVIDIA NuRec and asset tasks","Router for NVIDIA NuRec \u002F NRE \u002F 3DGUT \u002F USDZ \u002F NCore V4 \u002F asset harvest \u002F frame cleanup tasks — picks the right sibling (nre, ncore, asset-harvester, nurec-fixer, physical-ai-datasets). Use when the sub-skill is unclear or a multi-stage pipeline is needed; do NOT use for non-NuRec tasks or to run any pipeline itself.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[2280,2281,2282],{"name":13,"slug":14,"type":15},{"name":9,"slug":8,"type":15},{"name":18,"slug":19,"type":15},"2026-07-14T05:32:31.902229",{"slug":2285,"name":2285,"fn":2286,"description":2287,"org":2288,"tags":2289,"stars":23,"repoUrl":24,"updatedAt":2299},"physical-ai-datasets","find and download NVIDIA Physical AI datasets","Use when the user wants to find, download, or pick a NVIDIA Physical AI dataset on Hugging Face for autonomous-vehicle, robotics, spatial intelligence, manipulation, or neural-reconstruction workflows. Catalog of every dataset under huggingface.co\u002Fnvidia with the `PhysicalAI-` prefix, organised by domain (AV, Robotics-Manipulation, Robotics-GR00T, Robotics-mindmap, Robotics-NuRec, Spatial Intelligence, Grasping, Healthcare, Sim-Ready, Material properties), with per-dataset size, format, gating, license, and the downstream sibling skill (`ncore`, `nre`, `asset-harvester`, `nurec-fixer`) or upstream tool (Isaac Sim, CARLA, Isaac-GR00T, Cosmos-*) that consumes it. Do NOT use as a runtime — it routes you elsewhere. Trigger keywords: nvidia physical ai dataset, PhysicalAI- dataset, hf nvidia dataset, NCore dataset, NuRec dataset, GR00T dataset, GraspGen, SimReady, Cosmos-Drive-Dreams, Lyra SDG, Open-H-Embodiment, huggingface-cli download, physical_ai_av, dataset gated, RDS-HQ.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":9},[2290,2293,2296,2297,2298],{"name":2291,"slug":2292,"type":15},"Datasets","datasets",{"name":2294,"slug":2295,"type":15},"Hugging Face","hugging-face",{"name":2164,"slug":2165,"type":15},{"name":9,"slug":8,"type":15},{"name":2249,"slug":2250,"type":15},"2026-07-14T05:32:33.182445"]