资讯动态

Rerun 0.34 版本深度解析:Viewer MCP、VoxelGridMap 体素网格与 SDK 行为变更全指南

发布时间:2026/9/18 6:25:29 来源:尧图企业网站定制
Rerun 0.34 版本深度解析Viewer MCP、VoxelGridMap 体素网格与 SDK 行为变更全指南【免费下载链接】rerunVisualize, query, and stream to train on multimodal robotics data.项目地址: https://gitcode.com/GitHub_Trending/re/rerunRerun 0.34 是一次以「智能体接入」与「3D 数据能力扩展」为主线的功能发布一方面引入了让 LLM 代理直接查看并操作 Viewer 的 MCP 服务、面向机器人数据闭环的 Agent 技能包另一方面新增了支持稀疏体素网格的VoxelGridMap原型archetype并带来手柄导航、组件拖拽、变换缓存调试等交互能力。读完本文你将掌握 0.34 的全部新特性及其使用方式同时能顺利完成升级——因为该版本包含多项破坏性变更log_tick默认不再注入、rerun.recording模块移除、表格蓝图注册机制替换等下文逐一给出迁移方法与源码级依据。一、Viewer MCP让 LLM 代理「看见」并操作 Viewer0.34 引入了一个 MCPModel Context Protocol服务使 LLM 代理能够查看并与 Rerun Viewer 实时交互。典型使用场景包括让代理验证自己输出的数据在 Viewer 中是否符合预期当某些内容显示异常时让代理协助调试让代理探索一段录制或数据集搜索特定模式。代理对 Viewer 拥有完整控制权可以看到并点击任何控件。官方给出的演示案例是要求 Claude Sonnet 编写一个 Python 示例用 Rerun 的 2D shapes 重绘 Rerun 字标并附带淡入、停顿、粒子爆裂淡出的动画然后在已打开的 Viewer 中通过 MCP 反复自检——调整相机位置、翻到不同帧改进粒子渲染、并调试「淡出动画最后一帧仍残留粒子」的问题直到与目标 SVG 足够接近为止。完整的提示词要求原文摘录为创建一个 rerun python 示例用 rerun 的 2D shapes 重绘 rerun 字标开头 10 帧淡入停顿展示完整字标再 20 帧爆炸式淡出。只有当 Viewer 中重绘的字标与提供的 SVG黑字白底足够接近时才能停止。使用 MCP 在打开的 Viewer 中验证不要关闭 Viewer完成后让 opus 代理评判相似度并持续迭代直到它确认足够接近。仓库中可直接确认该功能的落地位置MCP 服务实现位于 re_viewer_mcp crate其 入口与主逻辑 负责把 Viewer 的状态和操作暴露为 MCP 工具仓库根目录自带 .mcp.json 配置文件crate README 说明在 Rerun 仓库内开发时Claude 会自动读取该配置重新执行cargo build -p re_viewer_mcp后通过/mcp重连即可使用更新后的服务对应的官方参考文档为 MCP Viewer 文档。二、面向机器人数据闭环的 Agent 技能与学习课程学习课程0.34 同步上线了官方学习课程面向机器人机器学习工程师用一条短小、动手性强的路线讲清 Rerun 数据模型如何覆盖完整的物理 AI 实验闭环raw data - RRD - derived layers - dataset queries - training - evaluationRerun Agent Skills仓库新增了一组 Agent 技能skills用于降低「用 Rerun 调查既有机器人数据」的门槛。在项目侧可通过以下命令安装npx skills add rerun-io/rerun仓库内可直接查看技能清单位于 skills 目录当前包含 rerun-blueprint、rerun-catalog-queries、rerun-chunk-processing、rerun-data-model、rerun-dataset-conversion、rerun-lerobot、rerun-mcap、rerun-mp4、rerun-parquet、rerun-urdf 等技能包以及 技能目录说明。学习课程中同样演示了如何用这些技能完成机器人数据的采集、精化与训练。三、新原型 VoxelGridMap稀疏体素网格地图Rerun 0.34 通过新的VoxelGridMap原型支持稀疏体素网格该贡献由社区提交。原型支持稀疏索引、各向异性体素尺寸、位姿偏移平移/旋转以及每个体素的可选显式颜色或标量值 色映射。类型定义与字段语义从 Rust 类型定义 可以确认其完整字段结构该文件由 voxel_grid_map.def.rs 代码生成字段对应组件必填说明voxel_indicesVoxelIndex是体素在网格中的索引voxel_sizeVoxelSize是单个体素在局部 X/Y/Z 轴上的场景单位尺寸各维必须为正的有限值即支持各向异性valuesVoxelValue否每个体素的标量占据/数值经colormapvalue_range映射为颜色colorsColor否每个体素的显式颜色设置后优先于色映射translationTranslation3D否[0,0,0]体素最小角的平移偏移rotation_axis_angle/quaternionRotationAxisAngle/RotationQuat否网格位姿的旋转两者都设置时四元数优先opacityOpacity否颜色应用后的不透明度默认 1.0value_rangeValueRange否色映射标量范围默认[0.0, 1.0]colormapColormap否色映射默认 Turbo几何语义在类型文档中有明确定义索引[0,0,0]体素的最小角位于实体坐标原点可再经可选平移/旋转偏置体素中心位于局部网格坐标下的(index 0.5) * voxel_size。注意该类型当前标记为不稳定unstable未来可能发生不向后兼容的变更。官方示例见 Python 版、Rust 版 与 C 版Rust 示例的核心写法来自 Rust 文档字符串中的示例rec.log( world/voxels, rerun::VoxelGridMap::new(voxel_indices, [0.25, 0.25, 0.25]) .with_values(values) .with_value_range([0.0, 1.0]) .with_colormap(rerun::components::Colormap::Turbo) .with_translation([-0.5, -0.5, 0.0]), )?;渲染与类型测试Viewer 端的 3D 渲染由 voxel_grid_map 可视化器 实现并有对应的集成测试 voxel_grid_map.rsPython SDK 中该原型已导出为 voxel_grid_map.py。MCAP 导入器ROS / Foxglove 体素格式的自动转换Rerun 的 MCAP 导入器现在会把稠密的ROSnav2_msgs/VoxelGrid与 FoxgloveVoxelGrid格式自动转换为 RerunVoxelGridMap。仓库中可以确认两处对应实现语义转换透镜 ros2msg/voxel_grid.rs 与 foxglove/voxel_grid.rs以及导入器测试快照 ros_nav2_voxel_grid.snap 和 foxglove_voxel_grid.snap。四、3D 视图的手柄Gamepad导航原生 Viewer 的 3D 视图现在支持手柄导航便于在大型场景或录屏时进行变速的精细机动。操作映射为左右摇杆控制视点eye位置与注视目标肩部扳机控制视点上下移动肩部按键加速 / 减速。注意手柄功能目前处于实验阶段需在设置菜单中开启将 3D 视图的眼控模式切换为FirstPerson可获得最佳体验。从源码看功能由独立的 re_gamepad crate 承载设计上将「设备轮询」与「视图相机行为」解耦平台后端分离非 wasm 目标编译 native.rs基于gilrscrate支持广泛设备wasm32 目标编译 web 后端输入以设备无关的GamepadInput表示双摇杆、左右扳机压力、慢速/快速修正键经StandardGamepadMapping映射为GamepadNavigation局部 RUB 视图空间位移 每帧注视角增量 速度倍率默认映射参数可参考 映射实现摇杆死区 0.15、扳机死区 0.05、注视速度 2.4 弧度/秒、慢速倍率 0.25、快速倍率 4.0。五、组件拖拽从 Streams 面板直接可视化现在可以从 Streams 面板直接把一个组件拖拽到 Time series 视图或 Status timeline 中进行可视化无需手动选择实体路径与列名。配合上文 MCP 与 Agent 技能这一交互进一步缩短了「数据 → 可视化验证」的链路。六、变换调试工具可视化 3D 变换缓存0.34 新增了一个针对 3D 变换缓存transform cache的调试 UI支持查看变换层级的树结构包括可能存在互不连通的森林disconnected trees检查每个 frame 节点或 transform 边最新存储的数值水平 / 垂直两种树布局切换按变换类型过滤如 static 或 temporal。注意该 UI 目前是 dev panel 中的一个标签页通过菜单中的 Toggle dev panel 或快捷键Ctrl/CmdShiftM打开官方表示未来可能升级为独立视图。七、破坏性变更与迁移指南1.log_tick默认不再注入log_time可关闭SDK 默认不再向日志数据中注入log_tick时间线列log_time时间线仍默认注入但新增可关闭能力。初始默认值由环境变量控制在首次使用时读取一次变量默认作用RERUN_LOG_TICKoff设为真值1/true/on/…以注入log_tick时间线RERUN_LOG_TIMEon设为假值0/false/off/…以跳过log_time时间线也可以在运行时切换作用于当前活跃录制或某个具体的RecordingStream对应示例 log_tick_enabled.py、log_tick_enabled.rs、log_tick_enabled.cpp。Python 侧入口为 RecordingStream.set_log_tick_enabled底层转发到 Rust 的 set_log_tick_enabled。如果你依赖log_tick时间线的存在请设置RERUN_LOG_TICK1或调用set_log_tick_enabled(true)恢复旧行为。2.rerun.recording模块移除在 0.32 中弃用的rerun.recording模块Recording、RRDArchive、load_recording、load_archive已在 0.34 彻底移除相关的rr.send_recording()、RecordingStream.send_recording()、Recording.from_chunks()与DatasetEntry.download_segment()一并删除。替代方案为rerun.experimental.RrdReader详见 0.32 迁移指南。3. 表格蓝图移除 base64 内嵌改为显式注册表格蓝图不再从 Arrow schema 元数据键rerun:table_blueprint读取。若你此前把base64:…编码的.rbl字节存进了表元数据请将蓝图导出为常规.rbl文件改用TableEntry.register_blueprint(...)注册。未注册蓝图的表格将回退到 Arrow 字段元数据与 Viewer 启发式推断。注截至本版本表格蓝图连同数据集预览仍属实验特性表格与表格蓝图相关 API 可能显著变动。4.DatasetEntry.manifest()标记弃用DatasetEntry.manifest()始终只用于内部与调试不应作为公共 API 暴露。现标记为deprecated将在未来版本移除且不提供公共替代。5. 移除 0.31 已弃用的自定义索引方法DatasetEntry的create_fts_search_index、create_vector_search_index、delete_search_indexes、search_fts、search_vector五个方法被移除均已在 0.31 弃用。此变更不影响通过 dataframe 查询 检索数据集的能力。6.rr.send_dataframe更严格底层构建于Chunk.from_record_batchrr.send_dataframe/rr.send_record_batch现在是对rerun.experimental.Chunk.from_record_batch以及Chunk.from_dataframe的薄封装把 Arrow record batch 按实体路径切分为每实体一个 chunk。Arrow → chunk 的解释逻辑成为一等公民、行为有明确规范但以下行为变化是破坏性的无索引列的 batch 现在抛错而不再是静默记录为静态数据。想要静态 chunk 请显式传indexNone想要时间 chunk 请用index列名指定索引列实体路径识别要求列名以/开头不再解析无前缀的名称。此前foo与foo:bar会成为实体/foo现在会落到根实体/上作为组件只有/entity:component形式的名称才会被拆分。Rerun SDK 自身产出的列名始终带/前缀因此 SDK 日志不受影响。作为上述规则的结果property:…列现在落到根实体/而不是名为property的实体二者目前都不会映射回/__properties该映射尚未实现。component_type缺失时不再默认为字面量Unknown而是保持未设置。7.ParquetReader移除列规则改由 lenses 映射rerun.experimental.ParquetReader不再接受column_rules参数ColumnRule类被移除。ParquetReader现在是纯读取器——把原始 parquet 列转换为按时间索引分组的 struct/scalar 组件 chunk把这些 struct 字段映射到 Rerun archetypes 的工作改由读取器.stream()上的lenses完成参见 re_lenses crate 中按语义域组织的透镜实现如上文引用的 voxel_grid 透镜。8.SaveScreenshotgRPC 端点迁移至ViewerControlService此前SaveScreenshotgRPC 端点属于MessageProxyService现已移至新的ViewerControlService。依赖该 gRPC 接口的调用方需相应更新服务名与客户端。八、小结Rerun 0.34 的三条主线值得记住其一智能体接口成熟化——Viewer MCP 让 LLM 代理闭环自检可视化结果Agent 技能包与学习课程覆盖「原始数据 → RRD → 派生层 → 数据集查询 → 训练 → 评估」的完整机器人数据闭环其二3D 数据表达扩展——VoxelGridMap原型补齐稀疏体素占据地图MCAP 导入器自动承接 ROS/Foxglove 体素格式其三SDK 语义收紧——log_tick默认关闭、dataframe/Parquet 读取路径的隐式行为被显式契约取代。升级时建议按本文第七节的顺序核对环境变量默认值、rerun.recording引用、表格蓝图存储方式、索引 API 调用、dataframe 列名约定以及 gRPC 端点变更。更多历史版本的迁移细节见 迁移指南索引。【免费下载链接】rerunVisualize, query, and stream to train on multimodal robotics data.项目地址: https://gitcode.com/GitHub_Trending/re/rerun创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价