❤️ 如果你也关注 AI 的发展现状,且对 AI 应用开发非常感兴趣,我会每日跟你分享最新的 AI 资讯和开源应用,也会不定期分享自己的想法和开源实例,欢迎关注我哦!
🥦 微信公众号|搜一搜:蚝油菜花 🥦
🚀 快速阅读
- 模型介绍:EMMA-X是新加坡科技设计大学推出的具身多模态动作模型,具备70亿参数,结合层次化的具身数据集。
- 主要功能:增强空间推理、具体化任务规划、轨迹分割、减少幻觉问题、层次化规划数据生成。
- 技术原理:基于BridgeV2数据集,采用前瞻性空间推理、轨迹分割策略和Gemini生成任务推理。
正文(附运行示例)
EMMA-X 是什么
EMMA-X是由新加坡科技设计大学推出的具身多模态动作模型,具备70亿参数,通过在链式思维推理数据上微调OpenVLA创建。该模型结合层次化的具身数据集,包含3D空间运动、2D夹爪位置和有根据的推理,推出一种新颖的轨迹分割策略,用夹爪的开合状态和机器人手臂的运动轨迹,增强有根据的任务推理和前瞻性空间推理。
在真实世界的机器人任务中,尤其是在需要空间推理的任务上,EMMA-X取得了显著的性能提升。
EMMA-X 的主要功能
- 增强空间推理:基于预测夹爪的未来2D位置和3D运动计划,优化机器人的长期任务规划能力。
- 具体化任务规划:模型结合视觉和任务推理,生成适应环境的行动策略,提高机器人执行复杂任务的能力。
- 轨迹分割:用夹爪状态和机械臂运动轨迹,将操作序列分割成语义上相似的动作段,增强任务理解和运动规划。
- 减少幻觉问题:结合视觉图像和任务推理,减少任务推理过程中的误差和幻觉。
- 层次化规划数据生成:为每个操作段生成2D夹爪位置和3D空间运动,及具体化推理,支持机器人的决策过程。
EMMA-X 的技术原理
- 层次化具身数据集:基于BridgeV2数据集构建,包含60,000条机器人操作轨迹,每条轨迹都附有详细的空间推理和任务推理信息。
- 前瞻性空间推理:模型预测夹爪的未来位置和运动计划,指导机器人的即时动作与长期目标对齐。
- 轨迹分割策略:用HDBSCAN算法和自定义的距离度量方法,结合末端执行器的运动轨迹和夹爪状态,动态分割操作序列。
- Gemini生成任务推理:用Gemini模型为每个分段生成子任务和具体化推理,提高任务理解的准确性。
如何运行 EMMA-X
安装依赖
# 创建并激活conda环境
conda create -n openvla python=3.10 -y
conda activate openvla
# 安装PyTorch
conda install pytorch torchvision torchaudio pytorch-cuda=12.4 -c pytorch -c nvidia -y
# 安装其他依赖
pip install -r requirements-min.txt
# 安装Flash Attention 2
pip install packaging ninja
ninja --version; echo $? # 验证Ninja是否安装成功
pip install "flash-attn==2.5.5" --no-build-isolation
运行示例
from transformers import AutoModelForVision2Seq, AutoProcessor
from PIL import Image
import torch
# 加载EMMA-X模型
vla = AutoModelForVision2Seq.from_pretrained(
"declare-lab/Emma-X",
attn_implementation="flash_attention_2",
torch_dtype=torch.bfloat16,
low_cpu_mem_usage=True,
trust_remote_code=True
).to("cuda:0")
# 获取图像输入并格式化提示
image: Image.Image = get_from_camera(...)
prompt = "In: What action should the robot take to achieve the instruction\nINSTRUCTION: \n{<Instruction here>}\n\nOut: "
# 预测动作
action, grounded_reasoning = vla.generate_actions(
image=image, prompt_text=prompt, type="act", do_sample=False,
max_new_tokens=512, do_sample=False
)
print("Grounded Reasoning:", grounded_reasoning)
# 执行动作
robot.act(action, ...)
资源
- GitHub 仓库:https://github.com/declare-lab/Emma-X
- HuggingFace 模型库:https://huggingface.co/declare-lab/Emma-X
- arXiv 技术论文:https://arxiv.org/pdf/2412.11974
❤️ 如果你也关注 AI 的发展现状,且对 AI 应用开发非常感兴趣,我会每日跟你分享最新的 AI 资讯和开源应用,也会不定期分享自己的想法和开源实例,欢迎关注我哦!
🥦 微信公众号|搜一搜:蚝油菜花 🥦