Skip to content

踩坑GitHub Physical-Intelligence/openpi2 个月前

pi0_fast_libero推理时action token解码溢出与维度异常 ​

本文由 AI 根据公开内容整理,可能有误,请以原文为准:Error decoding tokens when inferencing on libero with pi0_fast_libero(GitHub Physical-Intelligence/openpi #833)

状态:有绕过办法

问题 ​

使用官方pi0_fast_libero checkpoint在LIBERO环境推理时,频繁触发action token解码报错。生成的FAST tokens展开后数值数量错误(如68/83而非70,或9×7/11×7而非10×7),且该异常在标准OpenPI sampler上高度可复现。解码器出错后自动替换为归一化零值,但下游会被转换为非零机器人动作,且调用方无法区分正常预测与兜底值。

环境 ​

模型: pi0_fast_libero; 框架: Physical-Intelligence/openpi; 任务: LIBERO-10评测; 组件: serve_policy.py, PaliGemma tokenizer

解决办法 ​

  1. 确认该报错属于已知机制:action token id通过vocab_size - 1 - fast_skip_tokens - tokens计算,并非直接Linear输出,官方实现未对转换后的token id进行clamp以防止溢出。
  2. 接受当前解码器行为:遇到malformed action decode时,系统会自动打印错误并代入归一化零值作为fallback,暂无官方修复补丁。
  3. 注意下游风险:LIBERO环境中这些零值fallback会被后续变换为非零控制指令,需在业务层增加显式异常标记或过滤逻辑,避免将兜底值误作有效策略输出。
  4. 评估指标影响:需排查此类fallback事件是否包含在官方报告的60.2% LIBERO-10成功率统计中,以校准实际部署性能预期。

讨论原作者:@aojiaosaiban 等,版权归原作者所有。

来源

本页事实对应的公开页面,以原文为准。

  1. GitHub Physical-Intelligence/openpi #833:Error decoding tokens when inferencing on libero with pi0_fast_libero访问 2026-10-26