当前位置: 首页 > news >正文

stable-worldmodel:可复现世界模型研究评估平台,提供多方面支持与多样功能

stable-worldmodel:可复现世界模型研究与评估平台

stable-worldmodel 是一个用于可复现世界模型研究与评估的平台,提供了安装指南、快速入门教程、环境介绍、求解器与基线模型说明、文档资料、相关论文以及引用信息。它为世界模型研究的三个阶段——数据收集、训练和基于模型预测控制的评估,提供了统一的接口,涵盖了大量标准化环境。该平台还附带了常见基线模型和规划求解器的参考实现,让研究代码能够专注于核心贡献,即模型和目标。

安装

从 PyPI 安装

可使用命令进行安装:
pip install stable-worldmodel # 仅安装基础包
pip install 'stable-worldmodel[all]' # 安装全部组件,包括训练、环境和数据格式支持

LeRobot 数据集支持是一个可选的额外组件(需要 Python 3.12 及以上版本),安装命令为:
pip install 'stable-worldmodel[lerobot]'

从源代码安装(用于开发)

安装步骤如下:
git clone https://github.com/galilai-group/stable-worldmodel
cd stable-worldmodel
uv venv --python=3.10 && source .venv/bin/activate
uv sync --extra all --group dev

数据集和检查点存储在 `$STABLEWM_HOME` 目录下(默认路径为 `~/.stable_worldmodel/`),可以通过修改该环境变量来指定存储位置。需要注意的是,该库正在积极开发中,次要版本之间的 API 可能会发生变化。

快速入门

以下是快速入门的代码示例:
import stable_worldmodel as swm
from stable_worldmodel.policy import WorldModelPolicy, PlanConfig
from stable_worldmodel.solver import CEMSolver

# 1. 收集数据集
world = swm.World("swm/PushT-v1", num_envs=8)
world.set_policy(your_expert_policy)
world.collect("data/pusht_demo.lance", episodes=100, seed=0)

# 2. 加载数据集并训练世界模型(格式自动检测)
dataset = swm.data.load_dataset("data/pusht_demo.lance", num_steps=16)
world_model = ... # 定义你的模型

# 3. 使用模型预测控制进行评估
solver = CEMSolver(model=world_model, num_samples=300)
policy = WorldModelPolicy(solver=solver, config=PlanConfig(horizon=10))
world.set_policy(policy)
results = world.evaluate(episodes=50)
print(f"成功率: {results['success_rate']:.1f}%")

在 `scripts/train/` 目录下提供了参考实现:`lewm.py` 实现了 LeWM,`prejepa.py` 复现了 DINO - WM。同时,还展示了在 H200 GPU 上使用 Push - T LanceDB 数据集训练 LeWM 时的 GPU 利用率。

数据格式

数据的记录、加载和转换都通过一个小型的格式注册表进行。可以根据需求选择合适的后端,也可以注册自己的格式。数据格式如下:

格式磁盘布局适用场景
lanceLanceDB 表(按情节连续的扁平行)默认格式,便于追加数据,支持快速索引读取
hdf5单个 `.h5` 文件(每列一个数据集)便于携带的单文件制品
folder`.npz` 列 + 每步一张 JPEG 图片便于检查和部分键流式传输
video`.npz` 列 + 每集一个 MP4 文件(使用 decord)长情节、紧凑的图像存储
lerobot`lerobot://`(只读适配器)直接在 LeRobot Hub 数据集上进行训练/评估

代码示例如下:
world.collect("data/pusht.lance", episodes=100) # 默认使用 lance 格式
world.collect("data/pusht_video", episodes=100, format="video") # 使用视频格式
ds = swm.data.load_dataset("data/pusht.lance", num_steps=16) # 自动检测格式
swm.data.convert("data/pusht.lance", "data/pusht_video", dest_format="video", fps=30) # 一次性迁移

每个写入器都接受一个 `mode` 参数(默认值为 `'append'`,还支持 `'overwrite'` 和 `'error'`),重新运行 `world.collect` 会扩展现有数据集,而不会报错。

吞吐量与存储基准测试

以下基准测试结果由 `scripts/benchmark/compare_h5_lance.py` 脚本生成,可使用该脚本进行复现。测试使用了 LeWorldModel 论文中的 PushT 数据集。测试结果如下:

格式数据源缓存情况样本/秒每步耗时(ms)
HDF5本地无缓存1416.145.2
HDF5本地有缓存1474.043.4
LanceDB本地无缓存4814.813.3
LanceDB本地有缓存4431.314.4
Video本地-1330.648.1
LanceDBS3无缓存3183.720.1
LanceDBS3有缓存3253.219.7
HDF5S3无缓存9.17032.5
HDF5S3有缓存756.584.6

本地存储大小(每个格式)如下:

格式本地大小
HDF543.12 GB
LanceDB13.31 GB
Video496.29 MB

环境

环境来自 DeepMind Control Suite、Gymnasium 经典控制、OGBench、Craftax、Arcade Learning Environment(100 多种 Atari 游戏)以及经典世界模型基准测试(Two - Room、PushT)。大多数环境都带有一组可独立控制的视觉和物理参数(光照、纹理、动力学、形态),便于在无需额外设置的情况下评估模型在分布偏移时的零样本泛化能力。添加新环境只需遵循 Gymnasium 接口即可。

完整环境列表
环境 ID视觉因素数量
swm/PushT - v116
swm/TwoRoom - v117
swm/OGBCube - v011
swm/OGBScene - v012
swm/HumanoidDMControl - v07
swm/CheetahDMControl - v07
swm/HopperDMControl - v07
swm/ReacherDMControl - v08
swm/WalkerDMControl - v08
swm/AcrobotDMControl - v08
swm/PendulumDMControl - v06
swm/CartpoleDMControl - v06
swm/BallInCupDMControl - v09
swm/FingerDMControl - v010
swm/ManipulatorDMControl - v08
swm/QuadrupedDMControl - v07
swm/CartPoleControl - v110
swm/MountainCarControl - v05
swm/MountainCarContinuousControl - v04
swm/AcrobotControl - v111
swm/PendulumControl - v19
swm/FetchReach - v38
swm/FetchPush - v311
swm/FetchSlide - v311
swm/FetchPickAndPlace - v311
swm/CraftaxClassicPixels - v1-
swm/CraftaxClassicSymbolic - v1-
swm/CraftaxPixels - v1-
swm/CraftaxSymbolic - v1-
ALE/*(100 多种 Atari 游戏)-

求解器与基线模型

求解器类型
  • 交叉熵方法(Cross - Entropy Method, CEM):采样方法
  • 改进的 CEM(Improved CEM, iCEM):采样方法
  • 模型预测路径积分(Model Predictive Path Integral, MPPI):采样方法
  • 预测采样(Predictive Sampling):采样方法
  • 梯度下降(Gradient Descent, SGD, Adam):梯度方法
  • 投影梯度下降(Projected Gradient Descent, PGD):梯度方法
  • 增广拉格朗日约束优化(Augmented Lagrangian Constrained Opt)
基线模型类型
  • DINO - WM
  • JEPA
  • PLDM JEPA
  • LeWM JEPA
  • GCBC(行为克隆)
  • GCIVL(强化学习)
  • GCIQL(强化学习)

命令行界面

安装完成后,可以使用 `swm` 命令在不编写代码的情况下检查和转换数据集、环境和检查点,示例命令如下:
swm datasets # 列出缓存的数据集
swm inspect pusht_expert_train # 检查特定数据集
swm envs # 列出所有注册的环境
swm fovs PushT - v1 # 显示环境的视觉因素
swm checkpoints # 列出可用的模型检查点
swm convert pusht_expert_train --dest - format video # 将数据集转换为另一种格式

文档

完整的文档可在 [galilai - group.github.io/stable - worldmodel](galilai - group.github.io/stable - worldmodel) 查看,包含 API 参考、教程和指南。

基于 stable - worldmodel 的项目

  • C - JEPA
  • LeWM

引用

引用格式如下:
@misc{maes_lld2026swm,
title = {stable - worldmodel: A Platform for Reproducible World Modeling Research and Evaluation},
author = {Lucas Maes and Quentin Le Lidec and Luiz Facury and Nassim Massaudi and Ayush Chaurasia and Francesco Capuano and Richard Gao and Taj Gillin and Dan Haramati and Damien Scieur and Yann LeCun and Randall Balestriero},
year = {2026},
eprint = {2605.21800},
archivePrefix = {arXiv},
primaryClass = {cs.LG},
url = {https://arxiv.org/abs/2605.21800},
}

问题反馈

如果有任何问题,请提交一个 issue,将竭诚提供帮助。那么,在使用过程中会遇到哪些具体问题呢?

http://www.zskr.cn/news/1426955.html

相关文章:

  • 2026报考指南:沈阳城市建设学院多少分能上?(附分数线参考) - 品牌2025
  • iOS开发中基于NSLayoutConstraint的等比缩放适配方案
  • 招聘会高效求职全攻略:从战略筹备到会后转化的系统工程
  • 2026年5月三亚黄金回收实时行情全解析,避坑必看!余生黄金回收(全国连锁)亲测靠谱 - 润富黄金珠宝行
  • 内训师队伍建设方案:从0到1搭建企业内部讲师体系 - 众智商学院官方
  • Windows Server 2022组策略实战:从禁用CMD到隐藏C盘,10个提升办公网安全的必配项
  • OnmyojiAutoScript深度解析:阴阳师自动化脚本的架构设计与技术实现
  • 保姆级教程:在Windows 10上一步步搞定VCSA 8.0安装与ESXi主机纳管
  • MTKClient完整教程:联发科设备刷机救砖实用技巧
  • LTX2.3 开源视频生成模型 技术介绍与本地部署教程
  • 5大创新功能:重新定义阴阳师自动化新体验
  • 手把手教你计算BUCK电路电感:从纹波电流到实际选型,避开啸叫和EMI坑
  • 关于太原高考复读,家长最关心的10个问题(2026版) - 中国企业名录优选推荐
  • DIY便携式迷你显示器:从零打造极客的移动调试终端
  • 阴阳师自动化脚本:智能游戏助手一键解放双手的终极指南
  • 空间网络技术栈解析:HSTP协议、KOSM OS与AGI如何重塑人机交互
  • 2026Q3沧州装修公司口碑测评|工艺交付靠谱 透明施工优选榜单 - 品牌智鉴榜
  • 2026年南京第三方检测机构深度横评:CMA/CNAS双资质一站式检测服务怎么选? - 精选优质企业推荐官
  • 2026滁州市防水补漏公司权威推荐:卫生间、阳台、屋顶、地下室、飘窗、外墙漏水,专业防水公司TOP5口碑榜+全维度测评(2026年6月最新深度行业资讯) - 防水百科
  • 大庆市让胡路区锐驰物资:绥化市专业的地毯定制公司选哪家 - LYL仔仔
  • 告别卡顿!用Unity ScrollRect+对象池实现超流畅排行榜(附不规则Item高度源码)
  • 2026南通市防水补漏公司权威推荐:卫生间、阳台、屋顶、地下室、飘窗、外墙漏水,专业防水公司TOP5口碑榜+全维度测评(2026年6月最新深度行业资讯) - 防水百科
  • 生态模型新手必看:Worldclim CMIP6未来气候数据(BCC-CSM2-MR模式)下载与ASC文件快速上手
  • 廊坊 cppm 培训机构中供国培首选 - 中供国培
  • 别再忍受蜗牛速度!Armbian安装后必做的第一件事:一键切换清华/阿里云国内源(附版本适配指南)
  • 重庆人注意!余生黄金回收2026年5月实测:大盘980.34元/克,这样卖金多赚好几千 你知道2026年5月29日,你手里那根金条到底值多少钱吗? - 润富黄金珠宝行
  • Epson T3机器人如何绕过Modbus限制,用Fins TCP直连欧姆龙CJ2M PLC(附完整代码)
  • 构建可观测、可干预、可逆的AI系统:从数据到部署的容错实践
  • AI应用三大误区:从数据偏见、黑箱问题到正确选型
  • 微前端与BFF架构:构建企业级统一工作台的设计与实践