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