Robotics
reward-model
File size: 3,408 Bytes
7f90fbe
 
87f8154
 
 
 
 
 
7f90fbe
87f8154
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
---
license: apache-2.0
base_model: Wan-AI/Wan2.2-TI2V-5B
datasets:
  - RimbotAI/LOOM
tags:
  - robotics
  - reward-model
---

# NimCritic

NimCritic 根据机器人视频和任务指令,逐帧估计任务进度与是否完成。

[Project page](https://rimbot.com/en/research/nimcritic/) · [Paper](https://arxiv.org/abs/2610.32776)

## 目录里有什么

| 路径 | 内容 |
|---|---|
| `infer_nimcritic.py` | 读帧、滑窗和命令行参数。 |
| `nimcritic_model.py` | 模型:video DiT、value DiT、VAE、文本编码器。 |
| `nimcritic_step_128000.pt` | step 128000。video expert 5.00B,value expert 1.02B,bfloat16。 |
| `base/` | Wan2.2 VAE、UMT5-XXL 编码器和分词器。不含 Wan2.2 DiT:video expert 的完整权重已经在 `.pt` 里。 |

`base/` 包含:

- `DiffSynth-Studio/Wan-Series-Converted-Safetensors/Wan2.2_VAE.safetensors`
- `DiffSynth-Studio/Wan-Series-Converted-Safetensors/models_t5_umt5-xxl-enc-bf16.safetensors`
- `Wan-AI/Wan2.1-T2V-1.3B/google/umt5-xxl/`(分词器)

许可见 Apache-2.0。

## 环境

Python 3.12+。在本目录安装推理依赖:

```bash
uv sync
```

依赖写在 `pyproject.toml`:PyTorch、`transformers`(4.57,低于 4.58)、`safetensors`、`einops`、`opencv-python-headless`、`Pillow`、`numpy`、`tqdm`。

模型代码在 `nimcritic_model.py`,权重与 `base/` 在同目录。推理不访问其他路径,也不下载额外文件。

## 推理

在本目录执行。默认读取同目录的 `nimcritic_step_128000.pt` 与 `base/`。

```bash
uv run python infer_nimcritic.py \
  --video clip.mp4 \
  --task "pick up the cup" \
  --output result.json
```

输入为视频文件时,按容器帧率采样至 2Hz(`--sample-hz`,默认 2),并保留最后一帧。输入已是 2Hz 帧序列时使用 `--frames`,不再按 2Hz 重采样:

```bash
uv run python infer_nimcritic.py \
  --frames frames_dir/ \
  --task "pick up the cup" \
  --output result.json
```

`--base` 指向 `base/` 这一层,不是里面的 `DiffSynth-Studio/`。

默认口径:帧拉到 256×448(`stretch`),progress 是相对当前窗口条件帧的增量,写回前还原成 0–1,`rollout_stride=1`,`distance` 聚合,20 步,seed 42。和论文短任务表同一口径时加上 `--rollout-stride 2`。

每个参数的含义、可选项和默认值:

```bash
uv run python infer_nimcritic.py --help
```

不加载权重、只检查抽帧和参数:

```bash
uv run python infer_nimcritic.py --self-check
```

GPU 推理建议预留不少于 24 GB 显存。CPU 推理通过 `--device cpu` 指定,耗时高于 GPU。

结果 JSON 中,`progress` 与 `success` 为逐帧的 0–1 数值。`sampling` 记录所采用的帧下标。

## 引用

```bibtex
@article{xu2026nimcritic,
  title   = {Predictive Long-Horizon Progress Modeling with Action-Aware Quantification},
  author  = {Xu, Tianchi and Zheng, Yalin and Zhu, Yangxin and Ren, Ruonan and Fu, Zheng and Wang, Yunlong and Zhong, Yuanxin},
  journal = {arXiv preprint arXiv:2610.32776},
  year    = {2026},
  url     = {https://arxiv.org/abs/2610.32776}
}
```

基准请同时引用 [LOOM][hf-benchmark]。

[hf-model]: https://huggingface.co/RimbotAI/NimCritic
[hf-benchmark]: https://huggingface.co/datasets/RimbotAI/LOOM
[arxiv]: https://arxiv.org/abs/2610.32776
[project]: https://rimbot.com/en/research/nimcritic/
[demo]: https://critic.rimbot.com/