LeRobot 資料集 v3 格式

LeRobotDataset v3 是一種機器人學習資料格式,將高頻低維訊號儲存在 Parquet,攝影機流儲存在 MP4,模式和回合分割儲存在後設資料中。多個回合可以共享更大的檔案,而 API 則重建回合級別的存取。

該設計降低了檔案系統壓力,支援 Hub 原生流媒體,但使偏移量、時間戳和最終處理變得至關重要。僅僅因為每個 Parquet 或影片檔案獨立開啟,資料集並不有效。

官方 LeRobotDataset v3 檔案 會隨著程式碼庫的擴充而演進。先釘住已安裝的版本和檔案版本,然後結合機器人 動作資料指南資料質量審計使用本指南。

將儲存檔案與回合存取分開

版本 3 從每集一個檔案儲存轉向更大的共享 Parquet 和 MP4 碎片。回合邊界是從後設資料恢復的,而非從檔名推斷。訓練程式碼仍可請求樣本和時間視窗,無需手動開啟每個碎片。

這種分離提升了規模,但增加了對關係一致性的依賴。僅複製資料檔案或重新命名分片而不更新後設資料,可能導致完整片段無法存取或錯位。

以五個步驟整理LeRobot 資料集 v3 格式的判讀重點
依正文與一手資料整理的繁體中文實務卡。來源:Physical AI Lab。

在 Parquet 中放入表式時間序列

機器人狀態、動作、時間戳及其他低維高速率特徵應包含 Parquet,並宣告名稱、類型和形狀。單元、框架和控制意義不由容器建立,必須保持檔案化。

檢查行順序、時間戳單調性、缺失值以及每集和每台機器人的功能範圍。可讀的表格仍可包含移動一影格的動作或靜默變化的單元。

組成部分商店批評關係失效示例
元/info.json模式、影格數、版本、路徑描述所有特徵和碎片錯誤的 d 類型
data/*.parquet狀態、動作、時間戳行對映到回合偏移量變化
影片/*.mp4攝影機影格影格與時間對齊掉影格
元回合/回合長度、任務、偏移量重建邊界交叉集
元/屬性功能統計比賽單位與分組洩漏或過時統計

把攝影機流儲存在 MP4 碎片裡

每影格被編碼成影片碎片,而不是以陣列儲存在 Parquet 中。編解碼器、影格率、關鍵影格和相機身份都會影響隨機存取和流媒體成本。保留原始時序,而不是僅假設影格索引就是通用時間。

從每個攝影機中解碼取樣的間隔,並與表格觀察進行比較影格數和時間戳。訓練前測試缺失、凍結和可變影片行為。

用 info.json 作為模式的入口點

官方 v3 檔案將 meta/info.json 描述為特徵、形狀、 dtype、 FPS、程式碼庫版本和路徑模板的規範模式位置。將其視為記錄、轉換和訓練之間的合約。

驗證所需金鑰,並早期拒絕不相容的模式變更。保留自定義特徵定義和處理程式碼,因為像 observation.state 這樣的名稱本身無法辨識聯合順序、單元或影格。

從關係後設資料重建回合

每集記錄提供共享資料和影片檔案的長度、任務和偏移量。驗證首集、末集和隨機集數,包括跨越分片邊界或靠近檔案過渡的集數。

不要僅僅相信匯總行數。重建每個取樣的集數,確認開始和結束觀察、任務標籤、動作序列和攝影機片段屬於同一試驗。

以條件、量測、失敗與部署四個面向整理LeRobot 資料集 v3 格式
依正文與一手資料整理的繁體中文編輯圖解。來源:Physical AI Lab。

將任務和統計資料視為派生後設資料

任務記錄將自然語言描述與條件策略使用的辨識符號連線起來。統計資料支援正規化,但兩者都不能替代原始語意。相同的數值範圍可以表示聯合弧度、笛卡爾米或正規化的抓握器命令。

計算預期訓練分段的統計資料,並在需要時保留每個資料集或每個具體版本。避免透過全域統計洩露驗證或測試資訊。

在出版前確定作者

目前主要檔案說,最終完成會關閉 Parquet 寫入者,清除緩衝的回合後設資料,並寫入所需的頁尾資訊。跳過它可能會導致檔案不完整,即使有些位元組存在也無法載入。

最終確定後,在新程式中重新開啟資料集,並執行結構性和語意檢查。將錄製中斷視為帶有明確保留或隔離的恢復案例,而非隱式成功完成。

驗證 v2.1 到 v3 遷移的意義

遷移會將回合級別的 Parquet 和 MP4 檔案聚合成更大的分片,並寫入新的回合偏移量。比較源節點和目標之間的回合數量、影格數、任務、時間戳、功能值、攝影機片段和成功標籤。

請使用已安裝版本的官方 大資料集移植指南。轉換器完成且無例外,不足以證明動作和影片語意被保留。

分別測試流媒體和隨機存取

流式傳輸避免了完全本地下載,並能改善對大型集線中心資料集的存取。其效能依賴於分片大小、尋道模式、快取、網路和時間視窗請求。順序吞吐量不預測隨機集數存取。

基準測試代表培訓人員和故障恢復。確認網路重試或截斷範圍不會返回一個合理但不完整的事件。

郵編和檔案版本

目前文件頁面將 main 標識為原始碼-安裝分支,並指向穩定版本。 API 和示例在不同版本之間可能有所不同。記錄 LeRobot 包的版本、提交、資料集依賴性和轉換器版本。

未經檢查相容性,不要將 main 命令複製到舊安裝包中。將資料集程式碼庫版本和遷移歷史與工件一起儲存。

執行結構、時間和語意完整性測試

結構測試驗證檔案、模式、偏移量和可解碼性。時間測試檢查單調時間、對齊視窗和影格覆蓋情況。語意測試重放事件,驗證觀察到的動作、運動和任務在物理上是否一致。

當資料來源於 ROS 2 時,將失敗連結到記錄和重放指南。維護校驗和和不可變清單,用於原始碼、轉換和釋出版本。

測試層營運透過條件失效暴露
結構載入後設資料預期名稱、形狀、類型不相容的功能
索引樣本邊界正確的分片和偏移量交叉集數
時間比較不同模態有界偏斜與覆蓋行動轉移
重賽渲染狀態、動作、影片物理序列一致錯誤的相機或任務
培訓載入時序批次穩定通道與口罩尋道或填充錯誤

釋出時附帶資料集接受檢查清單

檔案版本、模式、單元、影格、任務、回合索引、影片編碼、最終化、轉換、校驗和分割統計。儲存源頭到出版的血統記錄和可復現的驗證器。

透過以下清單進行驗證。

評估“LeRobot 資料集 v3 格式”時,還應儲存模型版本、機器人設定、校正檔案、測試日期和全部試驗記錄。

只有把這些持續投入與單位成功任務的價值比較,才能判斷方案是否適合擴大。

上線後仍要持續檢查分佈變化、感測器漂移、機械磨損和人工接管原因。

實際專案還應指定資料、模型、控制器和安全流程的負責人,並預先定義回復條件。責任邊界、審批記錄與變更紀錄越清楚,故障發生後越容易停止擴散、定位原因並安全恢復。

把任務拆成感知、決策、動作執行和結果確認,可以更準確地定位瓶頸。每一階段都應有獨立指標與失敗示例,避免用端對端成功率掩蓋偶發但嚴重的風險。

  • 把 LeRobot 的程式碼、檔案和資料集版本釘住。
  • 驗證 Parquet、 MP4 和後設資料的關聯。
  • 在分片邊界上重建隨機回合。
  • 比較遷移後的 v2.1 和 v3 語意。
  • 敲定、重新開放、直播並在乾淨的環境中進行培訓。

常見問題

v3 是不是每集都建立一個 Parquet 檔案?

不會。多個回合可以共享更大的 Parquet 和 MP4 碎片,後設資料會恢復回合邊界。

相機影像會儲存在 Parquet 中嗎?

標準 v3 設計將攝影機影格儲存在 MP4 碎片中,低維訊號儲存在 Parquet 中。

檔案越少,損壞風險就越低嗎?

不會。它減少了檔案系統的壓力,但共享分片使得後設資料、偏移量和最終化變得更重要。

為什麼必須被打電話?

它會清除緩衝的後設資料並關閉 Parquet 寫入器,確保所需檔案資訊完整且可載入。

v2.1 遷移後應該比較哪些內容?

比較回合和影格數、任務、時間戳、專題、影片、統計資料以及有物理意義的回放。

回合語意與碎片完整性邊界

LeRobotDataset v3 透過後設資料保留回合存取能力,而非檔案邊界。在每次錄製、轉換或中斷最終完成後,驗證偏移量、時間和語意。