论文
ROSTrans以运行测试评测LLM的ROS1到ROS2迁移
ROSTrans: Empirically Benchmarking LLMs for ROS1-to-ROS2 Migration
摘要
尽管大型语言模型在特定领域的代码生成方面表现出了强大的能力,但它们在机器人软件开发中的性能,尤其是机器人操作系统(ROS),在很大程度上仍未得到探索。 ROS 代码生成提出了独特的挑战,包括复杂的节点间协调、中间件配置和远远超出标准编码基准的生命周期语义,并且只有在迁移的节点启动并通信后,许多重要的正确性属性才变得可观察到。我们提出了 ROSTrans,它是评估 LLMs ROS1 到 ROS2 代码迁移的基准,是 ROS 代码生成的具有代表性且具有实际意义的重要设置。 ROSTrans 包含 108 个给定代码框架的补全任务,这些任务取自 70 多个开源 ROS1 代码仓库,并组织成分层分类法,评估接口级、行为级和系统级正确性。对于每项任务,我们都会建立一个可执行参考:经过验证的 ROS2 实现、启动节点并执行其主题、服务、操作和参数的运行时测试套件,以及确保可重复性的容器。通过仅将其目标文件注入到参考包的固定副本中来对候选实现进行评分,因此候选实现既不能提供也不能削弱其评判所依据的测试。对六个前沿LLM的每项任务进行五次随机生成评估,我们发现 pass@1 低于 10.9%,并且所有样本中有 56.5% 成功构建,然后在运行时失败,并且 32.0% 在迁移的接口上失败运行时断言,这是仅以编译结果为依据的判定器无法检测到的一类错误。执行引导修复进一步提高了任务成功率,三轮后 Claude Opus 4.6 和 GPT-5.5 的成功率分别达到 49.1% 和 47.2%。
