基于AutoDL远端服务复现具身智能论文OpenVLA

基于AutoDL远端服务复现具身智能论文OpenVLA

前言

  1. 本文不适合0基础机器学习研究者,0基础复现请单击此处看我的上一篇帖子。
  2. 本文使用AutoDL远端服务,详细配置:

镜像:

PyTorch 2.1.2

Python 3.10(ubuntu22.04)

CUDA 11.8

GPU:

RTX 4090D(24GB) * 1

详细配置过程

  1. 我们设置和远端的镜像链接,所以源码可以下载到本地电脑,方便coding。

    git clone https://github.com/openvla/openvla.git

以我为例,我自己new了一个文件夹,取名为OpenVla。

  1. 下载模型,其中--local_dir xxxxx 表示我的模型在xxx目录下,如果你也在AutoDL部署项目,我建议放在/root/autodl-tmp/下,不然系统盘不够模型使用。本次下载模型大小为15G。

    下载模型

    pip install modelscope
    modelscope download --model zixiaoBios/openvla-7b-finetuned-libero-spatial --local_dir /root/autodl-tmp/models/openvla-7b-finetuned

  2. 创建并激活conda环境。这里可能需要先初始化bash shell,不然可能导致激活环境报错。

    conda create -n openvla python=3.10 -y

    初始化bash shell

    conda init bash

    重新进入终端页面后再激活conda

    conda activate openvla

    安装PyTorch

    conda install pytorch torchvision torchaudio pytorch-cuda=12.1 -c pytorch -c nvidia -y

安装pytorch这一步可能比较长

  1. 安装依赖

    进入源码目录下安装OpenVLA的全部依赖包

    cd OVla
    pip install -e .

  2. 安装Flash Attention 2,输入第二行时如果控制台返回字符0,说明安装成功。

    pip install packaging ninja
    ninja --version; echo $? # 验证Ninja安装
    pip install "flash-attn==2.5.5" --no-build-isolation

  3. 安装仿真环境(开启学术资源下载)。这里可能会有各种问题。安装失败等等问题。

    安装libero环境

    git clone https://github.com/Lifelong-Robot-Learning/LIBERO.git
    cd LIBERO
    pip install -e .

  4. 返回项目根目录,安装libero所需的依赖。我在libero_requirements.txt文件夹中补充了一行:numpy<2.0

    pip install -r experiments/robot/libero/libero_requirements.txt

  1. 启动推理代码中,pretrained_checkpoint xxxxx 指的是你下载的模型所在的目录。

    #安装图形化
    apt-get update && apt-get install -y libgl1-mesa-glx libosmesa6-dev libglew-dev patchelf libegl1

    #启动程序,需要开启学术资源加速
    python experiments/robot/libero/run_libero_eval.py --model_family openvla --pretrained_checkpoint /root/autodl-tmp/models/openvla-7b-finetuned/ --task_suite_name libero_spatial --center_crop True

相关推荐
不想睡觉_3 分钟前
优先队列priority_queue
c++·算法
那个村的李富贵9 小时前
CANN加速下的AIGC“即时翻译”:AI语音克隆与实时变声实战
人工智能·算法·aigc·cann
power 雀儿9 小时前
Scaled Dot-Product Attention 分数计算 C++
算法
琹箐9 小时前
最大堆和最小堆 实现思路
java·开发语言·算法
renhongxia110 小时前
如何基于知识图谱进行故障原因、事故原因推理,需要用到哪些算法
人工智能·深度学习·算法·机器学习·自然语言处理·transformer·知识图谱
坚持就完事了10 小时前
数据结构之树(Java实现)
java·算法
算法备案代理10 小时前
大模型备案与算法备案,企业该如何选择?
人工智能·算法·大模型·算法备案
赛姐在努力.10 小时前
【拓扑排序】-- 算法原理讲解,及实现拓扑排序,附赠热门例题
java·算法·图论
野犬寒鸦11 小时前
从零起步学习并发编程 || 第六章:ReentrantLock与synchronized 的辨析及运用
java·服务器·数据库·后端·学习·算法
霖霖总总11 小时前
[小技巧66]当自增主键耗尽:MySQL 主键溢出问题深度解析与雪花算法替代方案
mysql·算法