PI0 Openpi 部署(僅測試虛擬環境)

https://github.com/Physical-Intelligence/openpi/tree/main

我使用4070tisuper, 14900k,完全使用官方默認設置,沒有出現其他問題。

目前只對examples/aloha_sim進行測試,使用docker進行部署, 默認使用pi0_aloha_sim模型(但是文檔上沒找到對應的?)。

1. 準備環境

1.1. 下載工作區

git clone --recurse-submodules git@github.com:Physical-Intelligence/openpi.git

# Or if you already cloned the repo:
git submodule update --init --recursive

1.2. 設置docker

https://github.com/Physical-Intelligence/openpi/blob/main/docs/docker.md

此處需要將docker設置為rootless模式。

首先檢查目前的docker模式:

ps aux | grep dockerd

返回

root 1786 0.0 0.0 3981352 65056 ? Ssl 4月15 1:24 dockerd --group docker --exec-root=/run/snap.docker --data-root=/var/snap/docker/common/var-lib-docker --pidfile=/run/snap.docker/docker.pid --config-file=/var/snap/docker/3064/config/daemon.json root 132894 0.0 0.1 2713816 73804 ? Ssl 00:43 0:00 /usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock blamlig+ 133647 0.0 0.0 16940 4744 pts/1 S+ 00:48 0:00 grep --color=auto dockerd

所以目前是以root模式安裝的docker。此時直接運行編譯Image會出現報錯。

docker compose -f scripts/docker/compose.yml up --build

?所以按照要求安裝rootless docker.

dockerd-rootless-setuptool.sh install --force

?添加環境變量:

export PATH=$HOME/bin:$PATH
export DOCKER_HOST=unix:///run/user/$(id -u)/docker.sock

啟動rootless docker:

systemctl --user start docker

?再次查看:

ps aux | grep dockerd

?可以看到此時root和rootless docker都在系統中運行了,我們可以手動選擇目前需要使用哪個docker。

?1.3. 切換root和rootless

在額外設置了rootless模式后,原先的root docker會有不同的使用命令。將以下命令放在bashrc中,source.

alias dockroot='echo "[+] 切換到 ROOT 模式 Docker";systemctl --user stop docker 2>/dev/null;docker context use default;sudo systemctl start snap.docker.dockerd;echo "[*] 當前 Docker 模式:";sudo docker info | grep -Ei "Docker Root Dir|Server Version|Context";
'alias dockless='echo "[+] 切換到 ROOTLESS 模式 Docker";sudo systemctl stop snap.docker.dockerd;docker context use rootless;systemctl --user start docker;echo "[*] 當前 Docker 模式:";docker info | grep -Ei "rootless|Docker Root Dir|Server Version";
'

?在rootless模式下可以查看:

在root模式下使用sudo查看:?

?2. 編譯image

切換到rootless模式下可以直接編譯:

docker compose -f scripts/docker/compose.yml up --build

如果已經編譯國image,不希望創建新的image,則使用:

docker compose -f scripts/docker/compose.yml up

基礎image編譯完成后,openpi提供了多個example可以進行image build。

docker compose -f examples/aloha_sim/compose.yml up --build

?或

docker compose -f examples/aloha_sim/compose.yml up

這個image編譯運行后會自動運行container并結束,并錄制視頻在data文件夾中。

?結果:

?其他編譯測試結果:

其他

如果需要指定gpu, 如用cuda:1設備:

    deploy:resources:reservations:devices:- driver: nvidia#count: 1device_ids: ['1']capabilities: [gpu]

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/76605.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/76605.shtml
英文地址,請注明出處:http://en.pswp.cn/web/76605.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

XAttention

XAttention: Block Sparse Attention with Antidiagonal Scoring 革新Transformer推理的高效注意力機制資源?? ??論文鏈接??:XAttention: Block Sparse Attention with Antidiagonal Scoring ??代碼開源??:GitHub倉庫 XAttention是韓松團隊提…

前端中的浮動、定位與布局

在前端開發中,布局是構建網頁結構的基礎。而浮動(float)、定位(position)以及各種布局方法則是實現網頁布局的關鍵工具。 一、浮動(Float) 浮動是CSS中用于控制元素在頁面中排列方式的一種屬性…

Linux 動、靜態庫的實現

前言:當我們寫了一段代碼實現了一個方法,如果我們不想把方法的實現過程暴露給別人看,可以把代碼打包成一個庫,其中形成后綴為.a的是靜態庫,后綴為.so的為動態庫;當別人想使用你的方法時,把打包好…

ubuntu--字體設置

樣式和字體大小 在終端右鍵-->選擇"Preferences"-->勾選"Custom font": 選擇自己喜歡的樣式,然后通過size滑動條調整字體大小,選擇即可:

Qt核心知識總結

Qt核心知識總結 Qt 是一個功能強大、跨平臺的 C 應用程序開發框架,廣泛應用于圖形用戶界面(GUI)應用程序的開發,同時也支持非 GUI 應用程序的開發。本文將從入門到精通的角度,詳細解析 Qt 的核心知識點,幫…

Linux 進程概念補充 (自用)

進程概念 內核進程進程狀態內存泄漏進程調度。Linux真實調度算法環境變量 內核 狹義上的操作系統指的是 內核就是進程管理進程調度,文件系統等等。 廣義上的操作系統其實在外殼指令這些。封裝了系統調用的東西。 進程 課本概念程序的一個基本實例 內核觀點&#…

【dify實戰】agent結合deepseek實現基于自然語言的數據庫問答、Echarts可視化展示、Excel報表下載

使用dify agent實現數據庫智能問答,echarts可視化展示,excel報表下載 觀看視頻,您將學會 在dify下如何快速的構建一個agent,來完成數據分析工作;如何在AI的回復中展示可視化的圖表;如何在AI 的回復中加入E…

macos下 ~/.zshrc~ 和 ~/.zshrc

macos下 ~/.zshrc~ 和 ~/.zshrc ~/.zshrc通常是備份文件或臨時文件,可能由編輯器(如vim)創建,通常可以安全刪除,不會影響系統運行。 在Mac下,這種帶~后綴的備份文件通常是由以下情況產生: 常…

位運算---總結

位運算 基礎 1. & 運算符 : 有 0 就是 0 2. | 運算符 : 有 1 就是 1 3. ^ 運算符 : 相同為0 相異為1 and 無進位相加位運算的優選級 不用在意優先級,能加括號就加括號給一個數 n ,確定它的二進制位中第 x 位是 0 還是 1? 規定: 題中所說的第x位指:int 在32位機器下4個…

Java SpringBoot的自定義配置

一,一個類多個屬性的情況 application.properties配置文件寫法 my.config.ip127.0.0.1 my.config.port8080自定義配置類:MyTestConfig import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.boot.context.properties…

Matlab FCM模糊聚類

1、內容簡介 Matlab 211-FCM模糊聚類 可以交流、咨詢、答疑 2、內容說明 略 3、仿真分析 略 4、參考論文 略

C++項目 —— 基于多設計模式下的同步異步日志系統(4)(雙緩沖區異步任務處理器(AsyncLooper)設計)

C項目 —— 基于多設計模式下的同步&異步日志系統(4)(雙緩沖區異步任務處理器(AsyncLooper)設計) 異步線程什么是異步線程?C 異步線程簡單例子代碼解釋程序輸出關鍵點總結擴展:使…

C# 使用 BinaryFormatter 和相關類型時的反序列化風險

C# 使用 BinaryFormatter 和相關類型時的反序列化風險 由來:在項目使用.NET Reactor 混淆 C# 的序列化和反序列化發現存在的問題,讀取文件時,轉化為對應的類數據有時候為空,所以就在網上搜索了相關知識,在此做個筆記以…

OpenCv高階(四)——角點檢測

一、角點檢測 在計算機視覺中,角點檢測是識別圖像中局部區域(角點)的關鍵技術,這些區域通常是兩條或多條邊緣的交點,具有豐富的結構信息,常用于圖像匹配、跟蹤、三維重建等任務。 Harris角點檢測算法是一…

Conda 入門指令教程

Conda 入門指令教程 Conda 是一個強大的包和環境管理工具,廣泛應用于數據科學和機器學習項目中。本文將介紹 Conda 的常用指令,幫助你快速上手。 1. Conda 基礎操作 查看 Conda 版本 conda --version顯示當前安裝的 Conda 版本。 更新 Conda conda…

Unity ShaderLab引用HLSL文件找不到其中函數

在寫Unity Shader的過程中,常常需要將方法封裝到HLSL文件中,今天遇到一個這樣的報錯, 明明hlsl文件路徑引用沒問題,卻引用不到方法 并且將分散文件中的函數復制過來一切正常,最終定位到HLSL的預編譯指令中 這指令的…

uniapp上傳圖片時(可選微信頭像、相冊、拍照)

參考文獻&#xff1a;微信小程序登錄——頭像_onchooseavatar-CSDN博客 <button open-type"chooseAvatar" chooseavatar"onChooseAvatar"> </button>onChooseAvatar(e) {uni.showLoading({title: 上傳中...,mask: true});uni.uploadFile({url…

單元測試的一般步驟

Qt Test Qt Test 是 Qt 開發人員發布的一個單元測試框架&#xff0c;用于測試基于 Qt 框架的應用程序或庫。它提供了單元測試框架中常見的所有功能以及用于測試圖形用戶界面的擴展。 1.自動化測試包絡ui測試>接口測試>單元測試&#xff1b;現問如何使用Qt進行單元測試&…

【Matlab】中國沿岸潮灘寬度和坡度分布

【Matlab】中國沿岸潮灘寬度和坡度分布 參考文獻見最后或者閱讀原文&#xff01; 中國沿岸潮灘寬度和坡度分布: figure 1 a 潮灘寬度分布。b 潮灘坡度分布。 圖中標注了中國沿海各省&#xff0c;分別為遼寧&#xff08;LN&#xff09;、河北&#xff08;HB&#xff09;、山東&…

理解.NET Core中的配置Configuration

什么是配置 .NET中的配置&#xff0c;本質上就是key-value鍵值對&#xff0c;并且key和value都是字符串類型。 在.NET中提供了多種配置提供程序來對不同的配置進行讀取、寫入、重載等操作&#xff0c;這里我們以為.NET 的源碼項目為例&#xff0c;來看下.NET中的配置主要是有…