{"componentChunkName":"component---src-templates-acg-portal-new-template-tsx","path":"/bmwbjsae8","result":{"data":{"markdownRemark":{"html":"<h1 id=\"在百舸上使用-mind2act-评测镜像评测视觉-动作模型\"><a href=\"#%E5%9C%A8%E7%99%BE%E8%88%B8%E4%B8%8A%E4%BD%BF%E7%94%A8-mind2act-%E8%AF%84%E6%B5%8B%E9%95%9C%E5%83%8F%E8%AF%84%E6%B5%8B%E8%A7%86%E8%A7%89-%E5%8A%A8%E4%BD%9C%E6%A8%A1%E5%9E%8B\" aria-label=\"在百舸上使用 mind2act 评测镜像评测视觉 动作模型 permalink\" class=\"anchor\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>在百舸上使用 Mind2Act 评测镜像评测视觉-动作模型</h1>\n<h2 id=\"概述\"><a href=\"#%E6%A6%82%E8%BF%B0\" aria-label=\"概述 permalink\" class=\"anchor\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>概述</h2>\n<p>Mind2Act 是面向「想&#x26;做」协同的跨架构诊断 Benchmark，提供 30 个双臂操作任务、90 种任务配置与 4,500 条专家示范。平台分别检验模型的「想」（Mind）与「做」（Act），再检验二者能否协同（Mind2Act），并为每个被测模型生成一张诊断卡，说明短板所在、失败发生在哪一步、下一步该补什么。</p>\n<p>本镜像打包了社区版评测代码与完整运行环境：任务在 Isaac Sim 5.1 中由双臂 ARX X5 执行，分 old15、new15 两套 release，每个任务有 easy/medium/hard 三档配置，clean 模式每档 50 个冻结实例。镜像内置一键评测脚本，在百舸上申请多卡即可并行跑评测。</p>\n<p>详见<a href=\"https://mind2act-world.com/index.html\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">官网</a>：<a href=\"https://mind2act-world.com/index.html\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">https://mind2act-world.com/index.html</a></p>\n<h2 id=\"适用场景\"><a href=\"#%E9%80%82%E7%94%A8%E5%9C%BA%E6%99%AF\" aria-label=\"适用场景 permalink\" class=\"anchor\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>适用场景</h2>\n<ul>\n<li>对视觉-动作（VLA / 具身智能）模型做标准化、可复现的仿真评测与诊断。</li>\n<li>需要多卡、多任务并行跑完整 Benchmark（4,500 实例）的场景。</li>\n<li>通过 adapter 接入自有模型（端到端关节控制接口），在统一预算下与他人结果对齐比较。</li>\n</ul>\n<h2 id=\"环境与资源要求\"><a href=\"#%E7%8E%AF%E5%A2%83%E4%B8%8E%E8%B5%84%E6%BA%90%E8%A6%81%E6%B1%82\" aria-label=\"环境与资源要求 permalink\" class=\"anchor\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>环境与资源要求</h2>\n<table>\n<thead>\n<tr>\n<th align=\"left\">项目</th>\n<th align=\"left\">说明</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td align=\"left\">镜像地址</td>\n<td align=\"left\"><code>ccr-registry.baidubce.com/aihc/mind2act:torch270_cuda128_sim5-1_20261110</code></td>\n</tr>\n<tr>\n<td align=\"left\">代码目录</td>\n<td align=\"left\"><code>/root/workspace/mind2act-eval</code></td>\n</tr>\n<tr>\n<td align=\"left\">评测脚本目录</td>\n<td align=\"left\"><code>/root/workspace/mind2act-scripts</code>（一键入口 <code>run.sh</code>，另有 <code>run_batch.sh</code>、<code>list_cases.py</code>、<code>summary.py</code>）</td>\n</tr>\n<tr>\n<td align=\"left\">运行时环境</td>\n<td align=\"left\">Isaac Sim 5.1.0，入口 <code>/root/isaac-sim/python.sh</code></td>\n</tr>\n<tr>\n<td align=\"left\">GPU</td>\n<td align=\"left\">支持图像渲染的卡型</td>\n</tr>\n</tbody>\n</table>\n<p>镜像内置软件栈：</p>\n<table>\n<thead>\n<tr>\n<th align=\"left\">组件</th>\n<th align=\"left\">版本</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td align=\"left\">Python</td>\n<td align=\"left\">3.11.13</td>\n</tr>\n<tr>\n<td align=\"left\">PyTorch</td>\n<td align=\"left\">2.7.0+cu128（CUDA 12.8）</td>\n</tr>\n<tr>\n<td align=\"left\">torch 编译架构</td>\n<td align=\"left\">sm_75 / 80 / 86 / 90 / 100 / 120</td>\n</tr>\n<tr>\n<td align=\"left\">ffmpeg</td>\n<td align=\"left\">6.1.1</td>\n</tr>\n<tr>\n<td align=\"left\">其他</td>\n<td align=\"left\">Vulkan / GL 运行库；<code>/root/venvs/hf-dl</code> 内置 huggingface_hub 2.4.0（用于下载资产）</td>\n</tr>\n</tbody>\n</table>\n<blockquote>\n<p>镜像内不含任何凭证（HF token、模型 API key 等），运行时通过任务环境变量传入。镜像已清空着色器与 Warp 缓存，每种 GPU 首次启动 Isaac 会重新编译，首局偏慢属正常现象。\n镜像登录 shell 会自动加载 <code>/etc/profile.d/mind2act.sh</code>，预置以下环境变量（一般无需改动）：</p>\n</blockquote>\n\n    <div class=\"code-block-wrapper\">\n        <div class=\"code-block\">\n            <div class=\"code-block-header\">\n                <span class=\"code-block-name\">Bash</span>\n                <button class=\"code-copy-btn\" data-tooltip-text=\"\">\n                    <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\"> <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M5.57894 3.45614C5.57894 3.38832 5.63392 3.33333 5.70175 3.33333H12.5439C12.6117 3.33333 12.6667 3.38832 12.6667 3.45614V10.2982C12.6667 10.3661 12.6117 10.4211 12.5439 10.4211H11.7544V5.70175C11.7544 4.89754 11.1025 4.24561 10.2982 4.24561H5.57894V3.45614ZM4.24561 4.24561V3.45614C4.24561 2.65194 4.89754 2 5.70175 2H12.5439C13.3481 2 14 2.65194 14 3.45614V10.2982C14 11.1025 13.3481 11.7544 12.5439 11.7544H11.7544V12.5439C11.7544 13.3481 11.1025 14 10.2982 14H3.45614C2.65194 14 2 13.3481 2 12.5439V5.70175C2 4.89754 2.65194 4.24561 3.45614 4.24561H4.24561ZM3.33333 5.70175C3.33333 5.63392 3.38832 5.57894 3.45614 5.57894H10.2982C10.3661 5.57894 10.4211 5.63392 10.4211 5.70175V12.5439C10.4211 12.6117 10.3661 12.6667 10.2982 12.6667H3.45614C3.38832 12.6667 3.33333 12.6117 3.33333 12.5439V5.70175Z\" fill=\"currentColor\"></path> </svg>\n                    复制\n                </button>\n            </div>\n            <div class=\"code-block-content\">\n                <pre class=\"language-bash\"><code><span class=\"line-number\">1</span><span class=\"token builtin class-name\">export</span> <span class=\"token assign-left variable\">ISAAC_PYTHON</span><span class=\"token operator\">=</span>/root/isaac-sim/python.sh\n<span class=\"line-number\">2</span><span class=\"token builtin class-name\">export</span> <span class=\"token assign-left variable\">M2A_CODE_ROOT</span><span class=\"token operator\">=</span>/root/workspace/mind2act-eval\n<span class=\"line-number\">3</span><span class=\"token builtin class-name\">export</span> <span class=\"token assign-left variable\">M2A_PYTHON_OVERLAY</span><span class=\"token operator\">=</span>/root/workspace/mind2act-overlay\n<span class=\"line-number\">4</span><span class=\"token builtin class-name\">export</span> <span class=\"token assign-left variable\">MIND2ACT_ASSET_ROOT</span><span class=\"token operator\">=</span>/mnt/pfs/datasets/Mind2act/mind2act-assets\n<span class=\"line-number\">5</span><span class=\"token builtin class-name\">export</span> <span class=\"token assign-left variable\">PYTHONNOUSERSITE</span><span class=\"token operator\">=</span><span class=\"token number\">1</span>\n<span class=\"line-number\">6</span><span class=\"token builtin class-name\">export</span> <span class=\"token assign-left variable\">PYTHONPATH</span><span class=\"token operator\">=</span><span class=\"token string\">\"<span class=\"token variable\">$M2A_CODE_ROOT</span>/src:<span class=\"token variable\">$M2A_PYTHON_OVERLAY</span><span class=\"token variable\">${PYTHONPATH<span class=\"token operator\">:+</span><span class=\"token operator\">:</span>$PYTHONPATH}</span>\"</span></code></pre>\n            </div>\n        </div>\n    </div>\n  \n<h2 id=\"准备工作\"><a href=\"#%E5%87%86%E5%A4%87%E5%B7%A5%E4%BD%9C\" aria-label=\"准备工作 permalink\" class=\"anchor\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>准备工作</h2>\n<h3 id=\"下载评测资产\"><a href=\"#%E4%B8%8B%E8%BD%BD%E8%AF%84%E6%B5%8B%E8%B5%84%E4%BA%A7\" aria-label=\"下载评测资产 permalink\" class=\"anchor\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>下载评测资产</h3>\n<p>评测资产约 70 GB，不打进镜像，需先下载到 PFS，再把 PFS 挂到评测环境的 <code>/mnt/pfs</code>。默认路径 <code>/mnt/pfs/datasets/Mind2act/mind2act-assets</code>，放在其他位置时修改环境变量 <code>MIND2ACT_ASSET_ROOT</code>。</p>\n<p><strong>从 BOS 下载（推荐）</strong>：百舸 BOS 上有一份同步自 HuggingFace 的镜像，且无需 HF token：</p>\n\n    <div class=\"code-block-wrapper\">\n        <div class=\"code-block\">\n            <div class=\"code-block-header\">\n                <span class=\"code-block-name\">Bash</span>\n                <button class=\"code-copy-btn\" data-tooltip-text=\"\">\n                    <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\"> <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M5.57894 3.45614C5.57894 3.38832 5.63392 3.33333 5.70175 3.33333H12.5439C12.6117 3.33333 12.6667 3.38832 12.6667 3.45614V10.2982C12.6667 10.3661 12.6117 10.4211 12.5439 10.4211H11.7544V5.70175C11.7544 4.89754 11.1025 4.24561 10.2982 4.24561H5.57894V3.45614ZM4.24561 4.24561V3.45614C4.24561 2.65194 4.89754 2 5.70175 2H12.5439C13.3481 2 14 2.65194 14 3.45614V10.2982C14 11.1025 13.3481 11.7544 12.5439 11.7544H11.7544V12.5439C11.7544 13.3481 11.1025 14 10.2982 14H3.45614C2.65194 14 2 13.3481 2 12.5439V5.70175C2 4.89754 2.65194 4.24561 3.45614 4.24561H4.24561ZM3.33333 5.70175C3.33333 5.63392 3.38832 5.57894 3.45614 5.57894H10.2982C10.3661 5.57894 10.4211 5.63392 10.4211 5.70175V12.5439C10.4211 12.6117 10.3661 12.6667 10.2982 12.6667H3.45614C3.38832 12.6667 3.33333 12.6117 3.33333 12.5439V5.70175Z\" fill=\"currentColor\"></path> </svg>\n                    复制\n                </button>\n            </div>\n            <div class=\"code-block-content\">\n                <pre class=\"language-bash\"><code><span class=\"line-number\">1</span><span class=\"token shebang important\">#!/usr/bin/env bash</span>\n<span class=\"line-number\">2</span><span class=\"token builtin class-name\">set</span> -eo pipefail\n<span class=\"line-number\">3</span><span class=\"token comment\"># 需已配置 bcecmd 凭证（bcecmd -c 或 ~/.go-bcecli/credentials）</span>\n<span class=\"line-number\">4</span><span class=\"token assign-left variable\">A</span><span class=\"token operator\">=</span>/mnt/pfs/datasets/Mind2act/mind2act-assets\n<span class=\"line-number\">5</span><span class=\"token function\">mkdir</span> -p <span class=\"token string\">\"<span class=\"token variable\">$A</span>\"</span>\n<span class=\"line-number\">6</span>bcecmd bos <span class=\"token function\">cp</span> bos:/aihc-rdw-bj/huggingface.co/datasets/Mind2act/mind2act-assets/ <span class=\"token string\">\"<span class=\"token variable\">$A</span>/\"</span> \n<span class=\"line-number\">7</span>  --recursive --yes --disable-bar</code></pre>\n            </div>\n        </div>\n    </div>\n  \n<p><strong>从 HuggingFace 下载</strong>（<code>Mind2act/mind2act-assets</code> 为私有仓库，需单独申请读权限）：</p>\n\n    <div class=\"code-block-wrapper\">\n        <div class=\"code-block\">\n            <div class=\"code-block-header\">\n                <span class=\"code-block-name\">Bash</span>\n                <button class=\"code-copy-btn\" data-tooltip-text=\"\">\n                    <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\"> <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M5.57894 3.45614C5.57894 3.38832 5.63392 3.33333 5.70175 3.33333H12.5439C12.6117 3.33333 12.6667 3.38832 12.6667 3.45614V10.2982C12.6667 10.3661 12.6117 10.4211 12.5439 10.4211H11.7544V5.70175C11.7544 4.89754 11.1025 4.24561 10.2982 4.24561H5.57894V3.45614ZM4.24561 4.24561V3.45614C4.24561 2.65194 4.89754 2 5.70175 2H12.5439C13.3481 2 14 2.65194 14 3.45614V10.2982C14 11.1025 13.3481 11.7544 12.5439 11.7544H11.7544V12.5439C11.7544 13.3481 11.1025 14 10.2982 14H3.45614C2.65194 14 2 13.3481 2 12.5439V5.70175C2 4.89754 2.65194 4.24561 3.45614 4.24561H4.24561ZM3.33333 5.70175C3.33333 5.63392 3.38832 5.57894 3.45614 5.57894H10.2982C10.3661 5.57894 10.4211 5.63392 10.4211 5.70175V12.5439C10.4211 12.6117 10.3661 12.6667 10.2982 12.6667H3.45614C3.38832 12.6667 3.33333 12.6117 3.33333 12.5439V5.70175Z\" fill=\"currentColor\"></path> </svg>\n                    复制\n                </button>\n            </div>\n            <div class=\"code-block-content\">\n                <pre class=\"language-bash\"><code><span class=\"line-number\">1</span><span class=\"token shebang important\">#!/usr/bin/env bash</span>\n<span class=\"line-number\">2</span><span class=\"token builtin class-name\">set</span> -eo pipefail\n<span class=\"line-number\">3</span><span class=\"token comment\"># HF_TOKEN 需对 Mind2act/mind2act-assets 有读权限，从环境变量传入，不要写进脚本</span>\n<span class=\"line-number\">4</span><span class=\"token builtin class-name\">:</span> <span class=\"token string\">\"<span class=\"token variable\">${HF_TOKEN<span class=\"token operator\">:?</span>export HF_TOKEN first}</span>\"</span>\n<span class=\"line-number\">5</span><span class=\"token assign-left variable\">A</span><span class=\"token operator\">=</span>/mnt/pfs/datasets/Mind2act/mind2act-assets\n<span class=\"line-number\">6</span><span class=\"token function\">mkdir</span> -p <span class=\"token string\">\"<span class=\"token variable\">$A</span>\"</span>\n<span class=\"line-number\">7</span><span class=\"token assign-left variable\">HF_HUB_DISABLE_PROGRESS_BARS</span><span class=\"token operator\">=</span><span class=\"token number\">1</span> /root/venvs/hf-dl/bin/hf download Mind2act/mind2act-assets \n<span class=\"line-number\">8</span>  --repo-type dataset --revision v1.0.4 \n<span class=\"line-number\">9</span>  --local-dir <span class=\"token string\">\"<span class=\"token variable\">$A</span>\"</span> --max-workers <span class=\"token number\">16</span></code></pre>\n            </div>\n        </div>\n    </div>\n  \n<blockquote>\n<p>单 token 并发过高会被 HF 限流（429），下载中断时重跑同一条命令即可续传。</p>\n</blockquote>\n<h3 id=\"资产自检\"><a href=\"#%E8%B5%84%E4%BA%A7%E8%87%AA%E6%A3%80\" aria-label=\"资产自检 permalink\" class=\"anchor\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>资产自检</h3>\n<p>下载完成后，先做资产完整性与「代码—资产」配对校验，两项都通过才可使用：</p>\n\n    <div class=\"code-block-wrapper\">\n        <div class=\"code-block\">\n            <div class=\"code-block-header\">\n                <span class=\"code-block-name\">Bash</span>\n                <button class=\"code-copy-btn\" data-tooltip-text=\"\">\n                    <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\"> <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M5.57894 3.45614C5.57894 3.38832 5.63392 3.33333 5.70175 3.33333H12.5439C12.6117 3.33333 12.6667 3.38832 12.6667 3.45614V10.2982C12.6667 10.3661 12.6117 10.4211 12.5439 10.4211H11.7544V5.70175C11.7544 4.89754 11.1025 4.24561 10.2982 4.24561H5.57894V3.45614ZM4.24561 4.24561V3.45614C4.24561 2.65194 4.89754 2 5.70175 2H12.5439C13.3481 2 14 2.65194 14 3.45614V10.2982C14 11.1025 13.3481 11.7544 12.5439 11.7544H11.7544V12.5439C11.7544 13.3481 11.1025 14 10.2982 14H3.45614C2.65194 14 2 13.3481 2 12.5439V5.70175C2 4.89754 2.65194 4.24561 3.45614 4.24561H4.24561ZM3.33333 5.70175C3.33333 5.63392 3.38832 5.57894 3.45614 5.57894H10.2982C10.3661 5.57894 10.4211 5.63392 10.4211 5.70175V12.5439C10.4211 12.6117 10.3661 12.6667 10.2982 12.6667H3.45614C3.38832 12.6667 3.33333 12.6117 3.33333 12.5439V5.70175Z\" fill=\"currentColor\"></path> </svg>\n                    复制\n                </button>\n            </div>\n            <div class=\"code-block-content\">\n                <pre class=\"language-bash\"><code><span class=\"line-number\">1</span><span class=\"token shebang important\">#!/usr/bin/env bash</span>\n<span class=\"line-number\">2</span><span class=\"token builtin class-name\">set</span> -eo pipefail\n<span class=\"line-number\">3</span><span class=\"token builtin class-name\">export</span> <span class=\"token assign-left variable\">PYTHONPATH</span><span class=\"token operator\">=</span><span class=\"token string\">\"<span class=\"token variable\">${PYTHONPATH<span class=\"token operator\">:-</span>}</span>\"</span>\n<span class=\"line-number\">4</span><span class=\"token builtin class-name\">.</span> /etc/profile.d/mind2act.sh\n<span class=\"line-number\">5</span><span class=\"token assign-left variable\">A</span><span class=\"token operator\">=</span><span class=\"token variable\">$MIND2ACT_ASSET_ROOT</span><span class=\"token punctuation\">;</span> <span class=\"token assign-left variable\">K</span><span class=\"token operator\">=</span><span class=\"token variable\">${OUTPUT_PATH<span class=\"token operator\">:-</span><span class=\"token operator\">/</span>root<span class=\"token operator\">/</span>workspace<span class=\"token operator\">/</span>outputs}</span>/checks<span class=\"token punctuation\">;</span> <span class=\"token function\">mkdir</span> -p <span class=\"token variable\">$K</span>\n<span class=\"line-number\">6</span>\n<span class=\"line-number\">7</span><span class=\"token comment\"># 1. 资产完整性：逐文件比对 MANIFEST.json 的大小和 SHA-256</span>\n<span class=\"line-number\">8</span><span class=\"token variable\">$ISAAC_PYTHON</span> <span class=\"token variable\">$A</span>/tools/verify_manifest.py <span class=\"token operator\">></span> <span class=\"token variable\">$K</span>/verify_manifest.log <span class=\"token operator\"><span class=\"token file-descriptor important\">2</span>></span><span class=\"token file-descriptor important\">&amp;1</span>\n<span class=\"line-number\">9</span><span class=\"token function\">tail</span> -c <span class=\"token number\">300</span> <span class=\"token variable\">$K</span>/verify_manifest.log   <span class=\"token comment\"># 期望 \"status\": \"passed\", \"findings\": []</span>\n<span class=\"line-number\">10</span>\n<span class=\"line-number\">11</span><span class=\"token comment\"># 2. 代码与资产配对</span>\n<span class=\"line-number\">12</span><span class=\"token builtin class-name\">cd</span> <span class=\"token variable\">$M2A_CODE_ROOT</span>\n<span class=\"line-number\">13</span><span class=\"token variable\">$ISAAC_PYTHON</span> tools/verify_release_pair.py --asset-root <span class=\"token variable\">$A</span> <span class=\"token operator\">></span> <span class=\"token variable\">$K</span>/verify_release_pair.log <span class=\"token operator\"><span class=\"token file-descriptor important\">2</span>></span><span class=\"token file-descriptor important\">&amp;1</span>\n<span class=\"line-number\">14</span><span class=\"token function\">tail</span> -c <span class=\"token number\">300</span> <span class=\"token variable\">$K</span>/verify_release_pair.log   <span class=\"token comment\"># 期望 \"paired_files_verified\": true</span>\n<span class=\"line-number\">15</span>\n<span class=\"line-number\">16</span><span class=\"token comment\"># 3. 实例输入门检查（CPU，不启动物理）</span>\n<span class=\"line-number\">17</span><span class=\"token variable\">$ISAAC_PYTHON</span> <span class=\"token variable\">$A</span>/tools/check_native_input_gates.py <span class=\"token variable\">$K</span>/native-input-gates.json <span class=\"token operator\">></span> <span class=\"token variable\">$K</span>/gates.log <span class=\"token operator\"><span class=\"token file-descriptor important\">2</span>></span><span class=\"token file-descriptor important\">&amp;1</span>\n<span class=\"line-number\">18</span><span class=\"token function\">tail</span> -c <span class=\"token number\">300</span> <span class=\"token variable\">$K</span>/gates.log   <span class=\"token comment\"># 期望 \"cases\": 900, \"passed\": 900</span></code></pre>\n            </div>\n        </div>\n    </div>\n  \n<h3 id=\"gpu-渲染自检\"><a href=\"#gpu-%E6%B8%B2%E6%9F%93%E8%87%AA%E6%A3%80\" aria-label=\"gpu 渲染自检 permalink\" class=\"anchor\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>GPU 渲染自检</h3>\n<p>不依赖资产，确认 Isaac、CUDA、RTX 渲染与物理均可用。换新型号 GPU（如 3090/4090）时建议先跑一次：</p>\n\n    <div class=\"code-block-wrapper\">\n        <div class=\"code-block\">\n            <div class=\"code-block-header\">\n                <span class=\"code-block-name\">Bash</span>\n                <button class=\"code-copy-btn\" data-tooltip-text=\"\">\n                    <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\"> <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M5.57894 3.45614C5.57894 3.38832 5.63392 3.33333 5.70175 3.33333H12.5439C12.6117 3.33333 12.6667 3.38832 12.6667 3.45614V10.2982C12.6667 10.3661 12.6117 10.4211 12.5439 10.4211H11.7544V5.70175C11.7544 4.89754 11.1025 4.24561 10.2982 4.24561H5.57894V3.45614ZM4.24561 4.24561V3.45614C4.24561 2.65194 4.89754 2 5.70175 2H12.5439C13.3481 2 14 2.65194 14 3.45614V10.2982C14 11.1025 13.3481 11.7544 12.5439 11.7544H11.7544V12.5439C11.7544 13.3481 11.1025 14 10.2982 14H3.45614C2.65194 14 2 13.3481 2 12.5439V5.70175C2 4.89754 2.65194 4.24561 3.45614 4.24561H4.24561ZM3.33333 5.70175C3.33333 5.63392 3.38832 5.57894 3.45614 5.57894H10.2982C10.3661 5.57894 10.4211 5.63392 10.4211 5.70175V12.5439C10.4211 12.6117 10.3661 12.6667 10.2982 12.6667H3.45614C3.38832 12.6667 3.33333 12.6117 3.33333 12.5439V5.70175Z\" fill=\"currentColor\"></path> </svg>\n                    复制\n                </button>\n            </div>\n            <div class=\"code-block-content\">\n                <pre class=\"language-bash\"><code><span class=\"line-number\">1</span><span class=\"token builtin class-name\">.</span> /etc/profile.d/mind2act.sh\n<span class=\"line-number\">2</span><span class=\"token variable\">$ISAAC_PYTHON</span> -c <span class=\"token string\">\"import torch;print(torch.cuda.get_device_name(0),torch.cuda.get_device_capability(0))\"</span>\n<span class=\"line-number\">3</span><span class=\"token comment\"># 随后用镜像内自检脚本渲染一帧，期望输出非空图像、方块正常落地</span></code></pre>\n            </div>\n        </div>\n    </div>\n  \n<blockquote>\n<p>冷缓存下首次运行可能拿到空帧，重跑一次即可。</p>\n</blockquote>\n<h3 id=\"开通-agentos（使用-duclaw-adapter-时）\"><a href=\"#%E5%BC%80%E9%80%9A-agentos%EF%BC%88%E4%BD%BF%E7%94%A8-duclaw-adapter-%E6%97%B6%EF%BC%89\" aria-label=\"开通 agentos（使用 duclaw adapter 时） permalink\" class=\"anchor\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>开通 AgentOS（使用 duclaw adapter 时）</h3>\n<p>若用镜像内置的 duclaw adapter 接入被测模型，需先在百度智能云 <a href=\"https://cloud.baidu.com/doc/BCC/s/Omsic8v2e#api-%E7%AE%A1%E7%90%86\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">AgentOS 文档「API 管理」</a> 开通服务，获取 BaseURL、创建 API Key。开通后系统自动创建一个默认 API Key（不可禁用、不可更换），也可在 AgentOS 助手页面按用途另建 Key。</p>\n<ul>\n<li><strong>API Key</strong>：设置到百舸任务的环境变量 <code>MIND2ACT_API_KEY</code>，不要写进配置文件或启动命令。</li>\n<li><strong>BaseURL</strong>：与默认地址 <code>https://duclaw-gateway.baidubce.com/star/openai/v1</code> 不同时，写入 adapter 配置的 <code>base_url</code>，详见「接入被测模型」。</li>\n</ul>\n<h2 id=\"开始评测\"><a href=\"#%E5%BC%80%E5%A7%8B%E8%AF%84%E6%B5%8B\" aria-label=\"开始评测 permalink\" class=\"anchor\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>开始评测</h2>\n<p>统一用一键脚本 <code>/root/workspace/mind2act-scripts/run.sh</code> 启动。它会先检查环境（输出目录可写、资产与镜像代码配对一致、所选 GPU 全部空闲），再用评测框架在指定卡上并行跑实例，最后汇总 <code>infra_valid</code>、<code>termination</code> 计数与缺失实例，明细写到 <code>&#x3C;OUTPUT_PATH>/summary.csv</code>。</p>\n<blockquote>\n<p>百舸任务中把 PFS 挂到 <code>/mnt/pfs</code>，用 <code>OUTPUT_PATH</code> 指定 PFS 上的输出目录（如 <code>/mnt/pfs/&#x3C;your-dir>/m2a</code>）。无需挂载 <code>/shared</code>：环境中没有 <code>/shared</code> 时 <code>run.sh</code> 自动建软链 <code>/shared → OUTPUT_PATH</code>；若环境中已有 <code>/shared</code>，则 <code>OUTPUT_PATH</code> 必须设在其下。</p>\n</blockquote>\n<h3 id=\"常用变量\"><a href=\"#%E5%B8%B8%E7%94%A8%E5%8F%98%E9%87%8F\" aria-label=\"常用变量 permalink\" class=\"anchor\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>常用变量</h3>\n<p>以下变量均可不设，取默认值即可跑通：</p>\n<table>\n<thead>\n<tr>\n<th align=\"left\">变量</th>\n<th align=\"left\">默认值</th>\n<th align=\"left\">说明</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td align=\"left\"><code>POLICY_KIND</code></td>\n<td align=\"left\">空</td>\n<td align=\"left\">空表示原始预算，仅用于环境检查；被测模型用 <code>e2e</code> 或 <code>coding_agent</code></td>\n</tr>\n<tr>\n<td align=\"left\"><code>ADAPTER</code></td>\n<td align=\"left\"><code>mind2act_eval.adapters.hold:create</code></td>\n<td align=\"left\">被测模型的 adapter（<code>module:create</code>）。<code>hold</code> 让机器人保持不动，仅用于环境检查；duclaw 用 <code>mind2act_llm_e2e.duclaw:create</code></td>\n</tr>\n<tr>\n<td align=\"left\"><code>ADAPTER_CONFIG</code></td>\n<td align=\"left\">空</td>\n<td align=\"left\">adapter 的 JSON 配置文件路径，运行时按 sha256 校验</td>\n</tr>\n<tr>\n<td align=\"left\"><code>CASE_ID</code></td>\n<td align=\"left\">空</td>\n<td align=\"left\">只跑这些实例，逗号分隔</td>\n</tr>\n<tr>\n<td align=\"left\"><code>TASKS</code> / <code>LEVELS</code></td>\n<td align=\"left\">空（全部）</td>\n<td align=\"left\">逗号分隔，如 <code>PR1,DR2</code>、<code>easy,medium</code></td>\n</tr>\n<tr>\n<td align=\"left\"><code>GPUS</code></td>\n<td align=\"left\"><code>0</code></td>\n<td align=\"left\">本 Pod 内用哪些卡，逗号分隔（如 <code>0,1,2,3</code>）。每张卡同时跑 1 局，最多并行 6 局</td>\n</tr>\n<tr>\n<td align=\"left\"><code>SHARD</code> / <code>NSHARD</code></td>\n<td align=\"left\"><code>0</code> / <code>1</code></td>\n<td align=\"left\">多个百舸任务分片，见「多任务多卡」</td>\n</tr>\n<tr>\n<td align=\"left\"><code>OUTPUT_PATH</code></td>\n<td align=\"left\"><code>/root/workspace/outputs</code></td>\n<td align=\"left\">输出根。默认值在容器本地、任务结束即丢失，百舸任务中应设为 PFS 目录</td>\n</tr>\n<tr>\n<td align=\"left\"><code>ASSET_ROOT</code></td>\n<td align=\"left\">空</td>\n<td align=\"left\">资产不在默认路径时设置</td>\n</tr>\n</tbody>\n</table>\n<blockquote>\n<p>模型 API key 等凭证用任务环境变量传入，不写进脚本。不同 <code>POLICY_KIND</code> 的结果不能混在一起比较，换协议时换一个 <code>OUTPUT_PATH</code>。</p>\n</blockquote>\n<h3 id=\"单任务单卡\"><a href=\"#%E5%8D%95%E4%BB%BB%E5%8A%A1%E5%8D%95%E5%8D%A1\" aria-label=\"单任务单卡 permalink\" class=\"anchor\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>单任务单卡</h3>\n\n    <div class=\"code-block-wrapper\">\n        <div class=\"code-block\">\n            <div class=\"code-block-header\">\n                <span class=\"code-block-name\">Bash</span>\n                <button class=\"code-copy-btn\" data-tooltip-text=\"\">\n                    <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\"> <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M5.57894 3.45614C5.57894 3.38832 5.63392 3.33333 5.70175 3.33333H12.5439C12.6117 3.33333 12.6667 3.38832 12.6667 3.45614V10.2982C12.6667 10.3661 12.6117 10.4211 12.5439 10.4211H11.7544V5.70175C11.7544 4.89754 11.1025 4.24561 10.2982 4.24561H5.57894V3.45614ZM4.24561 4.24561V3.45614C4.24561 2.65194 4.89754 2 5.70175 2H12.5439C13.3481 2 14 2.65194 14 3.45614V10.2982C14 11.1025 13.3481 11.7544 12.5439 11.7544H11.7544V12.5439C11.7544 13.3481 11.1025 14 10.2982 14H3.45614C2.65194 14 2 13.3481 2 12.5439V5.70175C2 4.89754 2.65194 4.24561 3.45614 4.24561H4.24561ZM3.33333 5.70175C3.33333 5.63392 3.38832 5.57894 3.45614 5.57894H10.2982C10.3661 5.57894 10.4211 5.63392 10.4211 5.70175V12.5439C10.4211 12.6117 10.3661 12.6667 10.2982 12.6667H3.45614C3.38832 12.6667 3.33333 12.6117 3.33333 12.5439V5.70175Z\" fill=\"currentColor\"></path> </svg>\n                    复制\n                </button>\n            </div>\n            <div class=\"code-block-content\">\n                <pre class=\"language-bash\"><code><span class=\"line-number\">1</span><span class=\"token comment\"># 环境检查：hold，原始预算，只跑一局</span>\n<span class=\"line-number\">2</span><span class=\"token assign-left variable\">OUTPUT_PATH</span><span class=\"token operator\">=</span>/mnt/pfs/<span class=\"token operator\">&lt;</span>your-dir<span class=\"token operator\">></span>/m2a-hold <span class=\"token assign-left variable\">CASE_ID</span><span class=\"token operator\">=</span>PR1_easy_0c7134bad55b7c6c \n<span class=\"line-number\">3</span>  /root/workspace/mind2act-scripts/run.sh\n<span class=\"line-number\">4</span>\n<span class=\"line-number\">5</span><span class=\"token comment\"># duclaw，e2e 预算；MIND2ACT_API_KEY 已在任务环境变量中设置</span>\n<span class=\"line-number\">6</span><span class=\"token assign-left variable\">OUTPUT_PATH</span><span class=\"token operator\">=</span>/mnt/pfs/<span class=\"token operator\">&lt;</span>your-dir<span class=\"token operator\">></span>/m2a-duclaw <span class=\"token assign-left variable\">CASE_ID</span><span class=\"token operator\">=</span>PR1_easy_0c7134bad55b7c6c <span class=\"token assign-left variable\">GPUS</span><span class=\"token operator\">=</span><span class=\"token number\">0</span> \n<span class=\"line-number\">7</span>  <span class=\"token assign-left variable\">POLICY_KIND</span><span class=\"token operator\">=</span>e2e <span class=\"token assign-left variable\">ADAPTER</span><span class=\"token operator\">=</span>mind2act_llm_e2e.duclaw:create <span class=\"token assign-left variable\">ADAPTER_CONFIG</span><span class=\"token operator\">=</span>/mnt/pfs/<span class=\"token operator\">&lt;</span>your-dir<span class=\"token operator\">></span>/duclaw.json \n<span class=\"line-number\">8</span>  /root/workspace/mind2act-scripts/run.sh\n<span class=\"line-number\">9</span><span class=\"token function\">tail</span> -f /mnt/pfs/<span class=\"token operator\">&lt;</span>your-dir<span class=\"token operator\">></span>/m2a-duclaw/logs/worker.log</code></pre>\n            </div>\n        </div>\n    </div>\n  \n<h3 id=\"单任务多卡\"><a href=\"#%E5%8D%95%E4%BB%BB%E5%8A%A1%E5%A4%9A%E5%8D%A1\" aria-label=\"单任务多卡 permalink\" class=\"anchor\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>单任务多卡</h3>\n<p>一个任务×难度的全部实例分到多张卡并行，每张卡同时跑 1 局（单局不跨卡）：</p>\n\n    <div class=\"code-block-wrapper\">\n        <div class=\"code-block\">\n            <div class=\"code-block-header\">\n                <span class=\"code-block-name\">Bash</span>\n                <button class=\"code-copy-btn\" data-tooltip-text=\"\">\n                    <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\"> <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M5.57894 3.45614C5.57894 3.38832 5.63392 3.33333 5.70175 3.33333H12.5439C12.6117 3.33333 12.6667 3.38832 12.6667 3.45614V10.2982C12.6667 10.3661 12.6117 10.4211 12.5439 10.4211H11.7544V5.70175C11.7544 4.89754 11.1025 4.24561 10.2982 4.24561H5.57894V3.45614ZM4.24561 4.24561V3.45614C4.24561 2.65194 4.89754 2 5.70175 2H12.5439C13.3481 2 14 2.65194 14 3.45614V10.2982C14 11.1025 13.3481 11.7544 12.5439 11.7544H11.7544V12.5439C11.7544 13.3481 11.1025 14 10.2982 14H3.45614C2.65194 14 2 13.3481 2 12.5439V5.70175C2 4.89754 2.65194 4.24561 3.45614 4.24561H4.24561ZM3.33333 5.70175C3.33333 5.63392 3.38832 5.57894 3.45614 5.57894H10.2982C10.3661 5.57894 10.4211 5.63392 10.4211 5.70175V12.5439C10.4211 12.6117 10.3661 12.6667 10.2982 12.6667H3.45614C3.38832 12.6667 3.33333 12.6117 3.33333 12.5439V5.70175Z\" fill=\"currentColor\"></path> </svg>\n                    复制\n                </button>\n            </div>\n            <div class=\"code-block-content\">\n                <pre class=\"language-bash\"><code><span class=\"line-number\">1</span><span class=\"token assign-left variable\">OUTPUT_PATH</span><span class=\"token operator\">=</span>/mnt/pfs/<span class=\"token operator\">&lt;</span>your-dir<span class=\"token operator\">></span>/m2a-duclaw <span class=\"token assign-left variable\">TASKS</span><span class=\"token operator\">=</span>PR1 <span class=\"token assign-left variable\">LEVELS</span><span class=\"token operator\">=</span>easy <span class=\"token assign-left variable\">GPUS</span><span class=\"token operator\">=</span><span class=\"token number\">0,1</span>,2,3 \n<span class=\"line-number\">2</span>  <span class=\"token assign-left variable\">POLICY_KIND</span><span class=\"token operator\">=</span>e2e <span class=\"token assign-left variable\">ADAPTER</span><span class=\"token operator\">=</span>mind2act_llm_e2e.duclaw:create <span class=\"token assign-left variable\">ADAPTER_CONFIG</span><span class=\"token operator\">=</span>/mnt/pfs/<span class=\"token operator\">&lt;</span>your-dir<span class=\"token operator\">></span>/duclaw.json \n<span class=\"line-number\">3</span>  /root/workspace/mind2act-scripts/run.sh</code></pre>\n            </div>\n        </div>\n    </div>\n  \n<ul>\n<li>上一局写出 <code>ready.json</code> 后才启动下一局，两次启动至少间隔 60 s，错开 Isaac 冷启动。</li>\n<li>并行局数等于 <code>GPUS</code> 卡数，超过 6 张时只并行 6 局。</li>\n</ul>\n<h3 id=\"多任务多卡\"><a href=\"#%E5%A4%9A%E4%BB%BB%E5%8A%A1%E5%A4%9A%E5%8D%A1\" aria-label=\"多任务多卡 permalink\" class=\"anchor\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>多任务多卡</h3>\n<p>在一个 Pod 内跑多个任务和难度：</p>\n\n    <div class=\"code-block-wrapper\">\n        <div class=\"code-block\">\n            <div class=\"code-block-header\">\n                <span class=\"code-block-name\">Bash</span>\n                <button class=\"code-copy-btn\" data-tooltip-text=\"\">\n                    <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\"> <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M5.57894 3.45614C5.57894 3.38832 5.63392 3.33333 5.70175 3.33333H12.5439C12.6117 3.33333 12.6667 3.38832 12.6667 3.45614V10.2982C12.6667 10.3661 12.6117 10.4211 12.5439 10.4211H11.7544V5.70175C11.7544 4.89754 11.1025 4.24561 10.2982 4.24561H5.57894V3.45614ZM4.24561 4.24561V3.45614C4.24561 2.65194 4.89754 2 5.70175 2H12.5439C13.3481 2 14 2.65194 14 3.45614V10.2982C14 11.1025 13.3481 11.7544 12.5439 11.7544H11.7544V12.5439C11.7544 13.3481 11.1025 14 10.2982 14H3.45614C2.65194 14 2 13.3481 2 12.5439V5.70175C2 4.89754 2.65194 4.24561 3.45614 4.24561H4.24561ZM3.33333 5.70175C3.33333 5.63392 3.38832 5.57894 3.45614 5.57894H10.2982C10.3661 5.57894 10.4211 5.63392 10.4211 5.70175V12.5439C10.4211 12.6117 10.3661 12.6667 10.2982 12.6667H3.45614C3.38832 12.6667 3.33333 12.6117 3.33333 12.5439V5.70175Z\" fill=\"currentColor\"></path> </svg>\n                    复制\n                </button>\n            </div>\n            <div class=\"code-block-content\">\n                <pre class=\"language-bash\"><code><span class=\"line-number\">1</span><span class=\"token assign-left variable\">OUTPUT_PATH</span><span class=\"token operator\">=</span>/mnt/pfs/<span class=\"token operator\">&lt;</span>your-dir<span class=\"token operator\">></span>/m2a-duclaw <span class=\"token assign-left variable\">TASKS</span><span class=\"token operator\">=</span>PR1,DR2,CP01 <span class=\"token assign-left variable\">LEVELS</span><span class=\"token operator\">=</span>easy,medium <span class=\"token assign-left variable\">GPUS</span><span class=\"token operator\">=</span><span class=\"token number\">0,1</span>,2,3,4,5 \n<span class=\"line-number\">2</span>  <span class=\"token assign-left variable\">POLICY_KIND</span><span class=\"token operator\">=</span>e2e <span class=\"token assign-left variable\">ADAPTER</span><span class=\"token operator\">=</span>mind2act_llm_e2e.duclaw:create <span class=\"token assign-left variable\">ADAPTER_CONFIG</span><span class=\"token operator\">=</span>/mnt/pfs/<span class=\"token operator\">&lt;</span>your-dir<span class=\"token operator\">></span>/duclaw.json \n<span class=\"line-number\">3</span>  /root/workspace/mind2act-scripts/run.sh</code></pre>\n            </div>\n        </div>\n    </div>\n  \n<p>实例更多时拆成 n 个百舸任务，镜像和挂载相同。第 i 个任务（i = 0…n-1）：</p>\n\n    <div class=\"code-block-wrapper\">\n        <div class=\"code-block\">\n            <div class=\"code-block-header\">\n                <span class=\"code-block-name\">Bash</span>\n                <button class=\"code-copy-btn\" data-tooltip-text=\"\">\n                    <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\"> <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M5.57894 3.45614C5.57894 3.38832 5.63392 3.33333 5.70175 3.33333H12.5439C12.6117 3.33333 12.6667 3.38832 12.6667 3.45614V10.2982C12.6667 10.3661 12.6117 10.4211 12.5439 10.4211H11.7544V5.70175C11.7544 4.89754 11.1025 4.24561 10.2982 4.24561H5.57894V3.45614ZM4.24561 4.24561V3.45614C4.24561 2.65194 4.89754 2 5.70175 2H12.5439C13.3481 2 14 2.65194 14 3.45614V10.2982C14 11.1025 13.3481 11.7544 12.5439 11.7544H11.7544V12.5439C11.7544 13.3481 11.1025 14 10.2982 14H3.45614C2.65194 14 2 13.3481 2 12.5439V5.70175C2 4.89754 2.65194 4.24561 3.45614 4.24561H4.24561ZM3.33333 5.70175C3.33333 5.63392 3.38832 5.57894 3.45614 5.57894H10.2982C10.3661 5.57894 10.4211 5.63392 10.4211 5.70175V12.5439C10.4211 12.6117 10.3661 12.6667 10.2982 12.6667H3.45614C3.38832 12.6667 3.33333 12.6117 3.33333 12.5439V5.70175Z\" fill=\"currentColor\"></path> </svg>\n                    复制\n                </button>\n            </div>\n            <div class=\"code-block-content\">\n                <pre class=\"language-bash\"><code><span class=\"line-number\">1</span><span class=\"token assign-left variable\">SHARD</span><span class=\"token operator\">=</span><span class=\"token operator\">&lt;</span>i<span class=\"token operator\">></span> <span class=\"token assign-left variable\">NSHARD</span><span class=\"token operator\">=</span><span class=\"token operator\">&lt;</span>n<span class=\"token operator\">></span> <span class=\"token assign-left variable\">GPUS</span><span class=\"token operator\">=</span><span class=\"token number\">0,1</span> <span class=\"token assign-left variable\">OUTPUT_PATH</span><span class=\"token operator\">=</span>/mnt/pfs/<span class=\"token operator\">&lt;</span>your-dir<span class=\"token operator\">></span>/m2a-duclaw \n<span class=\"line-number\">2</span>  <span class=\"token assign-left variable\">POLICY_KIND</span><span class=\"token operator\">=</span>e2e <span class=\"token assign-left variable\">ADAPTER</span><span class=\"token operator\">=</span>mind2act_llm_e2e.duclaw:create <span class=\"token assign-left variable\">ADAPTER_CONFIG</span><span class=\"token operator\">=</span>/mnt/pfs/<span class=\"token operator\">&lt;</span>your-dir<span class=\"token operator\">></span>/duclaw.json \n<span class=\"line-number\">3</span>  /root/workspace/mind2act-scripts/run.sh\n<span class=\"line-number\">4</span><span class=\"token comment\"># 查看进度</span>\n<span class=\"line-number\">5</span><span class=\"token function\">tail</span> -n <span class=\"token number\">3</span> /mnt/pfs/<span class=\"token operator\">&lt;</span>your-dir<span class=\"token operator\">></span>/m2a-duclaw/w*/logs/worker.log</code></pre>\n            </div>\n        </div>\n    </div>\n  \n<ul>\n<li>n 个任务用同一个 <code>OUTPUT_PATH</code>，各分片输出到 <code>$OUTPUT_PATH/w&#x3C;i></code>、锁目录互不相同，各自汇总一次。全部结束后汇总所有分片：<code>/root/isaac-sim/kit/python/bin/python3 -I /root/workspace/mind2act-scripts/summary.py /mnt/pfs/&#x3C;your-dir>/m2a-duclaw</code>。</li>\n<li>n 个任务间隔 60 s 提交，错开 Isaac 冷启动。</li>\n<li>耗时按 hold 实测粗估：每局 430–630 s，4500 局 8 卡并行约 86 小时，模型推理时间另计。</li>\n</ul>\n<h3 id=\"内存上限\"><a href=\"#%E5%86%85%E5%AD%98%E4%B8%8A%E9%99%90\" aria-label=\"内存上限 permalink\" class=\"anchor\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>内存上限</h3>\n<p>框架在每局启动前和运行中统计同一 UID 所有进程的 RSS 合计，超限的局判为 <code>resource_limit</code>。单局约 14 GiB。</p>\n<ul>\n<li>只用 1 张卡时上限固定为 36 GiB，够用。</li>\n<li>多卡并行且容器有 cgroup 内存上限时，脚本自动生成 <code>--resource-config</code>，RSS 合计上限默认 <code>16 GiB × 并行局数 + 8 GiB</code>，最高 128 GiB、并行 6 局。百舸任务的内存配额按此预留（如 6 卡并行建议设 256 GiB 以上）。</li>\n<li>容器没有 cgroup 内存上限时，上限只能是 36 GiB，脚本自动把并行降到 2 局；需要更多并行时，在百舸任务中设置内存配额。</li>\n</ul>\n<h2 id=\"接入被测模型（duclaw-e2e-adapter）\"><a href=\"#%E6%8E%A5%E5%85%A5%E8%A2%AB%E6%B5%8B%E6%A8%A1%E5%9E%8B%EF%BC%88duclaw-e2e-adapter%EF%BC%89\" aria-label=\"接入被测模型（duclaw e2e adapter） permalink\" class=\"anchor\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>接入被测模型（duclaw e2e adapter）</h2>\n<p>镜像内置一个 duclaw 关节空间端到端（e2e）adapter（<code>mind2act_llm_e2e.duclaw:create</code>）：每次决策把任务指令、当前关节状态、剩余控制行数和 3 路相机 RGB 发给模型，模型返回若干绝对关节路点（两臂各 6 个关节角加夹爪开合），adapter 按单行步长上限线性展开成 30 Hz 控制行执行，执行完再问下一次。</p>\n<ul>\n<li><strong>开通</strong>：使用 duclaw adapter 需先开通百度智能云 AgentOS 服务并创建 API Key，详见准备工作「开通 AgentOS」。</li>\n<li><strong>接口</strong>：OpenAI Responses 兼容接口，默认地址 <code>https://duclaw-gateway.baidubce.com/star/openai/v1/responses</code>，默认模型 <code>A6A</code>。AgentOS 控制台给出的 BaseURL 与默认地址不同时，写入配置的 <code>base_url</code>（到 <code>/v1</code> 为止，adapter 自动拼接 <code>/responses</code>）。</li>\n<li><strong>凭证</strong>：API Key 从环境变量 <code>MIND2ACT_API_KEY</code> 读取，不进日志、不进结果。在百舸任务的环境变量中设置，不要写进配置文件或启动命令。</li>\n<li>只支持 <code>POLICY_KIND=e2e</code>（控制频率 30 Hz）。</li>\n</ul>\n<p>配置文件（JSON）至少包含以下 3 项，未知字段会被拒绝：</p>\n\n    <div class=\"code-block-wrapper\">\n        <div class=\"code-block\">\n            <div class=\"code-block-header\">\n                <span class=\"code-block-name\">JSON</span>\n                <button class=\"code-copy-btn\" data-tooltip-text=\"\">\n                    <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" fill=\"none\"> <path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M5.57894 3.45614C5.57894 3.38832 5.63392 3.33333 5.70175 3.33333H12.5439C12.6117 3.33333 12.6667 3.38832 12.6667 3.45614V10.2982C12.6667 10.3661 12.6117 10.4211 12.5439 10.4211H11.7544V5.70175C11.7544 4.89754 11.1025 4.24561 10.2982 4.24561H5.57894V3.45614ZM4.24561 4.24561V3.45614C4.24561 2.65194 4.89754 2 5.70175 2H12.5439C13.3481 2 14 2.65194 14 3.45614V10.2982C14 11.1025 13.3481 11.7544 12.5439 11.7544H11.7544V12.5439C11.7544 13.3481 11.1025 14 10.2982 14H3.45614C2.65194 14 2 13.3481 2 12.5439V5.70175C2 4.89754 2.65194 4.24561 3.45614 4.24561H4.24561ZM3.33333 5.70175C3.33333 5.63392 3.38832 5.57894 3.45614 5.57894H10.2982C10.3661 5.57894 10.4211 5.63392 10.4211 5.70175V12.5439C10.4211 12.6117 10.3661 12.6667 10.2982 12.6667H3.45614C3.38832 12.6667 3.33333 12.6117 3.33333 12.5439V5.70175Z\" fill=\"currentColor\"></path> </svg>\n                    复制\n                </button>\n            </div>\n            <div class=\"code-block-content\">\n                <pre class=\"language-json\"><code><span class=\"line-number\">1</span><span class=\"token punctuation\">{</span>\n<span class=\"line-number\">2</span>  <span class=\"token property\">\"log_dir\"</span><span class=\"token operator\">:</span> <span class=\"token string\">\"/mnt/pfs/&lt;your-dir>/m2a-duclaw/requests\"</span><span class=\"token punctuation\">,</span>\n<span class=\"line-number\">3</span>  <span class=\"token property\">\"ledger\"</span><span class=\"token operator\">:</span> <span class=\"token string\">\"/mnt/pfs/&lt;your-dir>/m2a-duclaw/ledger.json\"</span><span class=\"token punctuation\">,</span>\n<span class=\"line-number\">4</span>  <span class=\"token property\">\"ledger_limit\"</span><span class=\"token operator\">:</span> <span class=\"token number\">200</span><span class=\"token punctuation\">,</span>\n<span class=\"line-number\">5</span>  <span class=\"token property\">\"reasoning_effort\"</span><span class=\"token operator\">:</span> <span class=\"token string\">\"medium\"</span>\n<span class=\"line-number\">6</span><span class=\"token punctuation\">}</span></code></pre>\n            </div>\n        </div>\n    </div>\n  \n<table>\n<thead>\n<tr>\n<th align=\"left\">字段</th>\n<th align=\"left\">默认值</th>\n<th align=\"left\">说明</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td align=\"left\"><code>log_dir</code></td>\n<td align=\"left\">必填</td>\n<td align=\"left\">每局一个子目录，每次决策写一个 <code>decision-NNNNN.json</code>（请求骨架、模型回复、HTTP 状态、耗时、token 用量；图像只记 sha256）</td>\n</tr>\n<tr>\n<td align=\"left\"><code>ledger</code></td>\n<td align=\"left\">必填</td>\n<td align=\"left\">请求账本，记录每次 HTTP 请求（含失败和重试）。跨局、跨进程累计，并行局共用同一账本安全（文件锁），永不重置</td>\n</tr>\n<tr>\n<td align=\"left\"><code>ledger_limit</code></td>\n<td align=\"left\">必填</td>\n<td align=\"left\">账本总请求上限（正整数）。用满后该局报错终止。账本已存在时上限不能改，换上限要换 <code>ledger</code> 路径。建议按「实例数 × 每局决策次数 × 2」预留</td>\n</tr>\n<tr>\n<td align=\"left\"><code>max_decisions</code></td>\n<td align=\"left\">不限</td>\n<td align=\"left\">单局决策次数上限，用于控费；正式评测不建议设置</td>\n</tr>\n<tr>\n<td align=\"left\"><code>reasoning_effort</code></td>\n<td align=\"left\">不传</td>\n<td align=\"left\">透传给 Responses 接口的 <code>reasoning.effort</code>，如 <code>medium</code></td>\n</tr>\n<tr>\n<td align=\"left\"><code>request_retries</code></td>\n<td align=\"left\"><code>2</code></td>\n<td align=\"left\">单次请求失败（408/429/5xx、网络错误）的重试次数</td>\n</tr>\n<tr>\n<td align=\"left\"><code>parse_retries</code></td>\n<td align=\"left\"><code>1</code></td>\n<td align=\"left\">回复不是合法 JSON 时带错误说明重问的次数</td>\n</tr>\n<tr>\n<td align=\"left\"><code>max_rows_per_decision</code></td>\n<td align=\"left\"><code>150</code></td>\n<td align=\"left\">单次决策最多执行的控制行数（30 Hz 下 5 s）</td>\n</tr>\n<tr>\n<td align=\"left\"><code>max_step_rad</code> / <code>max_step_gripper</code></td>\n<td align=\"left\"><code>0.05</code> / <code>0.25</code></td>\n<td align=\"left\">每控制行关节、夹爪的最大变化量</td>\n</tr>\n<tr>\n<td align=\"left\"><code>timeout_s</code></td>\n<td align=\"left\"><code>180</code></td>\n<td align=\"left\">单次 HTTP 请求超时</td>\n</tr>\n<tr>\n<td align=\"left\"><code>model</code></td>\n<td align=\"left\"><code>A6A</code></td>\n<td align=\"left\">模型名</td>\n</tr>\n<tr>\n<td align=\"left\"><code>base_url</code></td>\n<td align=\"left\"><code>https://duclaw-gateway.baidubce.com/star/openai/v1</code></td>\n<td align=\"left\">接口前缀，adapter 在其后拼接 <code>/responses</code></td>\n</tr>\n</tbody>\n</table>\n<blockquote>\n<p>镜像内的 <code>/root/workspace/mind2act-llm-e2e/examples/duclaw.json</code> 只是示例，其 <code>log_dir</code>、<code>ledger</code> 在容器本地、任务结束即丢失，百舸任务中应复制一份改到 PFS 上。不占用 GPU 也能自检 adapter：<code>$ISAAC_PYTHON /root/workspace/mind2act-llm-e2e/offline_check.py</code>，期望最后一行 <code>tail truncation ok</code>。</p>\n</blockquote>\n<h2 id=\"查看结果\"><a href=\"#%E6%9F%A5%E7%9C%8B%E7%BB%93%E6%9E%9C\" aria-label=\"查看结果 permalink\" class=\"anchor\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>查看结果</h2>\n<ul>\n<li>单局结果在 <code>&#x3C;OUTPUT_PATH>/results/batch-&#x3C;id>/episode-&#x3C;NNNN>-attempt-01/result.json</code>，关键字段为 <code>termination</code>、<code>infra_valid</code>、<code>ticks</code>、<code>error</code>，同目录有录像（结束后另存 <code>.tar.gz</code>）。</li>\n<li>同一 batch 目录下有 <code>summary.json</code>（各局结果）和 <code>resource-receipt.json</code>（内存上限、并行数、每局分到的卡）。</li>\n<li>日志在 <code>&#x3C;OUTPUT_PATH>/logs/</code>：<code>worker.log</code>（每次启动一段）、<code>batch-&#x3C;时间>.log</code>（框架输出）、<code>manifest-&#x3C;时间>.json</code>（本次提交的实例与参数）。</li>\n<li><code>run.sh</code> 汇总只是运行层面的统计；模型成绩与诊断卡以项目组按统一预算的判定为准。</li>\n</ul>\n<h2 id=\"常见问题\"><a href=\"#%E5%B8%B8%E8%A7%81%E9%97%AE%E9%A2%98\" aria-label=\"常见问题 permalink\" class=\"anchor\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>常见问题</h2>\n<p><strong>Q：评测资产放在非默认目录可以吗？</strong>\n可以。通过环境变量 <code>MIND2ACT_ASSET_ROOT</code>（或 <code>ASSET_ROOT</code>）指向实际路径即可。</p>\n<p><strong>Q：中断后如何续跑？</strong>\n重跑同一条启动命令即可。框架会跳过已有 <code>infra_valid=true</code> 结果的实例，只补余下的。</p>\n<p><strong>Q：为什么首局特别慢？</strong>\n镜像已清空着色器与 Warp 缓存，每种 GPU 首次启动 Isaac 会重新编译，属正常现象，后续局会恢复正常速度。</p>\n<p><strong>Q：多卡并行局数如何确定？</strong>\n并行局数等于 <code>GPUS</code> 卡数，单局不跨卡，最多并行 6 局。并行受内存上限约束，详见「内存上限」。</p>\n<p><strong>Q：不同协议的结果能一起比较吗？</strong>\n不能。不传 <code>POLICY_KIND</code>（原始预算）仅用于 hold 等环境检查；被测模型按类型选 <code>e2e</code> 或 <code>coding_agent</code>，不同协议的结果不能混在一起比较，换协议时换一个 <code>OUTPUT_PATH</code>。</p>\n<h2 id=\"后续操作\"><a href=\"#%E5%90%8E%E7%BB%AD%E6%93%8D%E4%BD%9C\" aria-label=\"后续操作 permalink\" class=\"anchor\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>后续操作</h2>\n<ol>\n<li>评测日志输出到 <code>&#x3C;OUTPUT_PATH>/logs/</code>，可通过 <code>worker.log</code> 观察进度。</li>\n<li>全部实例跑完后用 <code>summary.py</code> 汇总，核对 <code>summary.csv</code> 中的 <code>infra_valid</code>、<code>termination</code> 与缺失实例。</li>\n<li>需要换被测模型时，调整 <code>ADAPTER</code> / <code>ADAPTER_CONFIG</code> 并换一个 <code>OUTPUT_PATH</code> 后重新启动。</li>\n</ol>","fields":{"slug":"bmwbjsae8","title":"在百舸上使用 Mind2Act 评测镜像评测视觉-动作模型","date":"2026-11-11","extractedHeadings":[]},"headings":[{"value":"在百舸上使用 Mind2Act 评测镜像评测视觉-动作模型","depth":1},{"value":"概述","depth":2},{"value":"适用场景","depth":2},{"value":"环境与资源要求","depth":2},{"value":"准备工作","depth":2},{"value":"下载评测资产","depth":3},{"value":"资产自检","depth":3},{"value":"GPU 渲染自检","depth":3},{"value":"开通 AgentOS（使用 duclaw adapter 时）","depth":3},{"value":"开始评测","depth":2},{"value":"常用变量","depth":3},{"value":"单任务单卡","depth":3},{"value":"单任务多卡","depth":3},{"value":"多任务多卡","depth":3},{"value":"内存上限","depth":3},{"value":"接入被测模型（duclaw e2e adapter）","depth":2},{"value":"查看结果","depth":2},{"value":"常见问题","depth":2},{"value":"后续操作","depth":2}]}},"pageContext":{"isCreatedByStatefulCreatePages":false,"slug":"bmwbjsae8","prev":{"id":"qmw4scqus","name":"在百舸上使用 WSA 加速镜像训练 VLA 模型","path":"qmw4scqus","filePath":"操作指南/快速开始/在百舸上使用 WSA 加速镜像训练 VLA 模型.md","seo":null,"parentIds":["ilib2qygp","3ma0icym2"],"parents":[{"id":"ilib2qygp","documentId":"bfa43a8b-968a-41a1-8c9d-906507eeaed9","name":"操作指南","repoName":"AIHC","filePath":"操作指南","disabled":false,"path":"ilib2qygp","lastMergeTime":null,"isApiDoc":null,"httpMethod":null,"seo":null,"sourceOrgName":null,"sourceRepoName":null,"sourceDocumentId":null,"solutionTag":null,"solutionColor":null},{"id":"3ma0icym2","documentId":"b5f72002-c562-4200-893d-0fdfd1ed1fe8","name":"快速开始","repoName":"AIHC","filePath":"操作指南/快速开始","disabled":false,"path":"3ma0icym2","lastMergeTime":null,"isApiDoc":null,"httpMethod":null,"seo":null,"sourceOrgName":null,"sourceRepoName":null,"sourceDocumentId":null,"solutionTag":null,"solutionColor":null}]},"next":{"id":"5mwbsz3wt","name":"在百舸上使用 SparseBEV++ 加速镜像训练 3D 目标检测模型","path":"5mwbsz3wt","filePath":"操作指南/快速开始/在百舸上使用 SparseBEV++ 加速镜像训练 3D 目标检测模型.md","seo":null,"parentIds":["ilib2qygp","3ma0icym2"],"parents":[{"id":"ilib2qygp","documentId":"bfa43a8b-968a-41a1-8c9d-906507eeaed9","name":"操作指南","repoName":"AIHC","filePath":"操作指南","disabled":false,"path":"ilib2qygp","lastMergeTime":null,"isApiDoc":null,"httpMethod":null,"seo":null,"sourceOrgName":null,"sourceRepoName":null,"sourceDocumentId":null,"solutionTag":null,"solutionColor":null},{"id":"3ma0icym2","documentId":"b5f72002-c562-4200-893d-0fdfd1ed1fe8","name":"快速开始","repoName":"AIHC","filePath":"操作指南/快速开始","disabled":false,"path":"3ma0icym2","lastMergeTime":null,"isApiDoc":null,"httpMethod":null,"seo":null,"sourceOrgName":null,"sourceRepoName":null,"sourceDocumentId":null,"solutionTag":null,"solutionColor":null}]},"parents":[{"id":"ilib2qygp","documentId":"bfa43a8b-968a-41a1-8c9d-906507eeaed9","name":"操作指南","repoName":"AIHC","filePath":"操作指南","disabled":false,"path":"ilib2qygp","lastMergeTime":null,"isApiDoc":null,"httpMethod":null,"seo":null,"sourceOrgName":null,"sourceRepoName":null,"sourceDocumentId":null,"solutionTag":null,"solutionColor":null},{"id":"3ma0icym2","documentId":"b5f72002-c562-4200-893d-0fdfd1ed1fe8","name":"快速开始","repoName":"AIHC","filePath":"操作指南/快速开始","disabled":false,"path":"3ma0icym2","lastMergeTime":null,"isApiDoc":null,"httpMethod":null,"seo":null,"sourceOrgName":null,"sourceRepoName":null,"sourceDocumentId":null,"solutionTag":null,"solutionColor":null}],"specificSeo":null}}}