
openpi环境搭建实战6步Docker部署跑通策略服务的新手路径【免费下载链接】openpi项目地址: https://gitcode.com/GitHub_Trending/op/openpiopenpi的环境搭建最容易卡在两个地方依赖冲突以及Docker识别不到GPU。这篇文章把从克隆代码到服务跑通的完整流程压缩成几条命令每一步都告诉你该看到什么、卡住时去哪里查。跟着做完你能在自己机器上把openpi的策略服务用Docker部署起来。快速上手路径只想要结果的话按顺序复制这 6 条命令即可细节在后面展开。克隆代码带子模块里面是示例依赖的第三方机器人代码git clone --recurse-submodules https://gitcode.com/GitHub_Trending/op/openpi进入项目目录cd openpi安装Python依赖uv 是项目使用的快速依赖管理工具没装过要先装好GIT_LFS_SKIP_SMUDGE1 uv sync把项目本体装进环境GIT_LFS_SKIP_SMUDGE1 uv pip install -e . 构建Docker镜像并启动服务容器docker compose -f scripts/docker/compose.yml up --build确认容器状态docker compose -f scripts/docker/compose.yml ps第一个环境变量的作用是在拉取某个依赖时跳过自动下载大文件照抄即可不用深究。硬件与系统要求动手前先对照这份要求项目最低要求说明操作系统Ubuntu 22.04 LTS官方唯一测试过的系统GPUNVIDIA显卡显存≥8GB推理够用LoRA微调需22.5GB全量微调需70GB内存8GB推荐16GB磁盘20GB以上空闲镜像和模型权重会占掉一部分Docker一键安装机器是干净的Ubuntu 22.04时项目里备好了两个脚本不用自己查文档拼接命令。bash scripts/docker/install_docker_ubuntu22.sh这条脚本会装好官方Docker组件、把你的用户加进 docker 用户组之后免 sudo 跑 docker 命令并配置开机自启。注意脚本跑完必须重启系统用户组权限才会生效。有 NVIDIA 显卡的话接着执行bash scripts/docker/install_nvidia_container_toolkit.shNVIDIA Container Toolkit 的作用是把物理GPU“透传”给容器没它容器里就看不到显卡。提示snap 安装的 Docker 和 Docker Desktop 都与该工具包不兼容装过就先卸载详见 docs/docker.md。构建与运行每一步你会看到什么构建入口是 scripts/docker/compose.yml这个编排文件描述了用哪个Dockerfile构建镜像、怎么暴露GPU、如何把本地代码挂进容器。构建阶段第一次会比较慢 执行构建命令后你会依次看到Docker 拉取基础镜像CUDA 12.2 Ubuntu 22.04然后在镜像里安装项目依赖。这一步耗时最长通常 10~20 分钟☕ 去倒杯咖啡正合适。输出走到Finished、容器状态变为running说明构建完成。容器启动后会自动运行策略服务脚本这是一个常驻程序在 8000 端口 监听接收观测数据、返回动作。卡住时看终端输出停在哪一层多数是网络下载慢配置国内镜像源后重跑缓存会让后续构建快很多。跑一个示例项目无机器人测推理examples 下每个目录都有独立的 compose 文件。手头没有机器人就先跑 simple_client它生成随机观测发给服务再打印推理频率每秒处理多少次见 examples/simple_client/README.md。export SERVER_ARGS--env ALOHA_SIM docker compose -f examples/simple_client/compose.yml up --build首次运行同样要先构建镜像跑完后服务端和客户端同时启动终端里能看到推理速率持续刷新链路就通了。ALOHA 仿真、LIBERO、DROID 等其他示例同理换掉 compose 文件里的目录名即可。验证与自检怎么确认做对了 逐条执行下面命令全部通过环境就没问题。docker info | grep -i nvidia预期看到 nvidia runtime 相关字样证明容器可用GPU。groups | grep docker预期输出里出现你的用户名说明 docker 组权限已生效。docker compose -f scripts/docker/compose.yml ps预期服务状态显示running。ss -tlnp | grep 8000预期有一行 8000 端口的监听记录策略服务已就绪。uv run python -c import openpi; print(ok)预期打印ok非Docker的 uv 环境同样可用。避坑速查现象可能原因解决办法uv sync报依赖冲突旧的虚拟环境残留删掉.venv目录后重新uv syncdocker 命令报 permission denied用户组未生效或未重新登录sudo usermod -aG docker $USER后注销重登容器看不到GPU工具包没装或用了 snap / Docker Desktop 版 Docker执行工具包安装脚本snap 版本先卸载镜像构建极慢到镜像源网络慢配置国内镜像源重新构建走缓存训练显存不足显存占用比例默认偏低设XLA_PYTHON_CLIENT_MEM_FRACTION0.9多卡可加--fsdp-devices训练报缺 norm stats没预计算数据统计量先跑scripts/compute_norm_stats.py --config-name 配置名客户端连不上服务服务没起或端口被防火墙拦确认ps状态为 running检查网络连通性目录结构一览openpi/ ├── docs/ # 文档Docker搭建、数据统计、远程推理 ├── examples/ # 各平台示例ALOHA、DROID、LIBERO等 ├── packages/ # openpi-client机器人端调用服务的客户端库 ├── scripts/ # 训练、统计、起服务等入口脚本 └── src/openpi/ # 核心源码 ├── models/ # 模型定义pi0、pi0_fast等 ├── policies/ # 各机器人平台的数据映射 ├── serving/ # WebSocket服务 └── training/ # 训练配置与数据加载收尾环境跑通后下一步是用 scripts/serve_policy.py 起一个模型服务再跟着 scripts/train.py 的流程把自己的数据微调进去。【免费下载链接】openpi项目地址: https://gitcode.com/GitHub_Trending/op/openpi创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考