从安装到实操X-VLA (LeRobot) 完整配置指南与代码示例【免费下载链接】xvla-widowx项目地址: https://ai.gitcode.com/hf_mirrors/lerobot/xvla-widowxX-VLA (LeRobot) 是一款基于视觉-语言-动作Vision-Language-Action的基础模型通过软提示在统一的Transformer架构中实现跨实体和跨领域的机器人控制。本文将为新手用户提供从安装到实际操作的完整指南帮助你快速上手这一强大的机器人控制工具。 X-VLA (LeRobot) 简介X-VLA (LeRobot) 采用软提示的Transformer架构能够处理多视图图像、 proprio/状态信息以及可选的语言指令输出连续动作非常适合机器人的精细操作任务。该模型在BridgeData上进行了微调特别适用于紧凑型WidowX平台上的取放实验展现出强大的操作能力。核心特性输入多视图图像、状态信息、可选语言指令输出连续动作训练目标流匹配flow matching动作表示连续型主要用途作为基础模型可针对特定场景进行微调 快速安装步骤安装X-VLA (LeRobot) 非常简单只需一行命令即可完成核心功能的安装pip install lerobot[xvla]如果你需要完整的安装细节包括可选的视频依赖如ffmpeg for torchcodec可以参考官方文档获取更多信息。 模型加载与推理示例下面我们将通过一个简单的示例展示如何加载模型和数据集并运行推理过程。加载模型和预处理/后处理工具import torch from lerobot.datasets.lerobot_dataset import LeRobotDataset from lerobot.policies.factory import make_pre_post_processors from lerobot.policies.xvla.modeling_xvla import XVLAPolicy # 加载策略模型 model_id lerobot/xvla-widowx device torch.device(cuda if torch.cuda.is_available() else cpu) policy XVLAPolicy.from_pretrained(model_id).to(device).eval() # 创建预处理和后处理工具 preprocess, postprocess make_pre_post_processors( policy.config, model_id, preprocessor_overrides{device_processor: {device: str(device)}}, )加载数据集并运行推理# 加载数据集这里使用lerobot/libero作为示例 dataset LeRobotDataset(lerobot/libero) # 选择一个 episode episode_index 0 from_idx dataset.meta.episodes[dataset_from_index][episode_index] to_idx dataset.meta.episodes[dataset_to_index][episode_index] # 获取该 episode 中的一帧数据 frame_index from_idx frame dict(dataset[frame_index]) # 预处理数据并运行推理 batch preprocess(frame) with torch.inference_mode(): pred_action policy.select_action(batch) # 对动作进行后处理 pred_action postprocess(pred_action) 训练与微调指南如果你需要对模型进行训练或微调可以使用以下方法。基本训练步骤在训练或微调时通常需要调用forward(...)方法获取损失然后进行反向传播policy.train() batch dict(dataset[0]) batch preprocess(batch) loss, outputs policy.forward(batch) loss.backward()使用训练脚本LeRobot提供了便捷的训练脚本lerobot-train可以通过以下命令进行完整的训练循环lerobot-train \ --dataset.repo_id${HF_USER}/dataset \ --output_dir./outputs/[RUN_NAME] \ --job_name[RUN_NAME] \ --policy.repo_id${HF_USER}/desired_policy_repo_id \ --policy.pathlerobot/[BASE_CHECKPOINT] \ --policy.dtypebfloat16 \ --policy.devicecuda \ --steps100000 \ --batch_size4根据具体需求你还可以添加策略特定的标志如--policy.chunk_size...--policy.n_action_steps...--policy.max_action_tokens...--policy.gradient_checkpointingtrue 真实世界推理与评估你可以使用lerobot-record脚本以策略检查点作为输入运行推理并评估你的策略。例如运行以下命令来记录10个评估 episodelerobot-record \ --robot.typeso100_follower \ --robot.port/dev/ttyACM1 \ --robot.cameras{ up: {type: opencv, index_or_path: /dev/video10, width: 640, height: 480, fps: 30}, side: {type: intelrealsense, serial_number_or_name: 233522074606, width: 640, height: 480, fps: 30}} \ --robot.idmy_awesome_follower_arm \ --display_datafalse \ --dataset.repo_id${HF_USER}/eval_so100 \ --dataset.single_taskPut lego brick into the transparent box \ --policy.path${HF_USER}/my_policy 配置文件解析X-VLA (LeRobot) 的配置文件config.json包含了模型的详细参数设置以下是一些关键配置的说明输入输出特征定义了模型的输入如图像、状态和输出动作的类型和形状。Florence配置视觉-语言模型的详细参数包括文本和视觉部分的配置。优化器和调度器参数学习率、权重衰减、梯度裁剪等训练相关的超参数。预处理和后处理配置分别在policy_preprocessor.json和policy_postprocessor.json中定义包括数据重命名、设备转换、归一化等步骤。 总结通过本文的指南你已经了解了X-VLA (LeRobot) 的基本概念、安装方法、推理和训练流程。无论是进行基础的机器人控制实验还是针对特定任务进行模型微调X-VLA (LeRobot) 都提供了强大而灵活的工具支持。如果你想深入了解更多细节可以参考项目中的代码和配置文件开始你的机器人控制之旅吧【免费下载链接】xvla-widowx项目地址: https://ai.gitcode.com/hf_mirrors/lerobot/xvla-widowx创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考