dsta022/Loop-Engineering-for-VLA
Toolkit for collecting, merging, auditing, visualizing, and publishing RGB/RGB-D LeRobot VLA datasets.
Loop Engineering for VLAnything – 建構高品質視覺-語言-動作機器人資料集的工具包
是什麼
- 一個開源的 Python 工具包,讓研究人員能對為 視覺-語言-動作(VLA)模型(如
lerobot生態系統中的模型)所建構的多模態機器人學習資料集進行 記錄、合併、審計、豐富 和 迭代改進。 - 支援標準的僅 RGB 的 LeRobot 資料集 以及 包含無損深度側車的 RGB-D 資料集,還支援進行中的視覺觸覺模式。
- 預設為 無模型 —— 您可稍後插入評估器、標註器或策略訓練器,而無需載入大型模型權重。
為何重要
- 高品質的 VLA 資料難以取得;影片、深度或動作日誌中的微小錯誤都可能破壞下游訓練。
- 該工具包將每個工件(影片、關節狀態、語言字幕、人類反饋)視為 一等側車,從不修改原始記錄,使資料可審計且可重現。
- 提供 保守的、基於規則的品質審計,自動丟棄明顯損壞的片段,同時將邊界情況標記供人工審查。
核心元件
| 領域 | 入口點(CLI) | 功能 |
|---|---|---|
| 記錄 | vla-merge, vla-audit, …(見下表) |
無框架的記錄器,可直接與 SO-100/SO-101 機器人臂以及 Orbbec、Intel RealSense 或通用 OpenCV 相機通訊。產生與 LeRobot-v3.0 相容的資料集,支援可選的深度側車和人工引導的策略反饋。 |
| 合併 | vla-merge |
將多個 LeRobot 資料集(僅 RGB、RGB-D 等)合併為一個物理資料集,重寫索引、元資料和深度檔案。 |
| 審計 | vla-audit |
決定性結構檢查(元資料、時間戳、影片解碼、深度 PNG 完整性)以及可選的 語意 檢查,執行策略檢查點或自訂評估器,評分片段是否符合任務描述。 |
| 清理 | vla-clean |
根據審計生成的保留/審查/丟棄清單建構乾淨資料集。 |
| 語言豐富 | vla-enrich |
使用內建運動學標註器或任何使用者提供的語言標註器插件,新增 軌跡語言 側車(子任務、事件、狀態描述)。 |
| 反饋收集 | vla-feedback-build |
捕獲部署策略上的人類干預,以側車形式儲存,並在後續合併至訓練集中。 |
| 策略迭代 | vla-iterate |
簡單的訓練-評估-提升-部署循環,可連接任意 lerobot 檢查點。 |
| 上傳 | vla-push |
將最終資料集推送到 Hugging Face(倉儲內附一個即用型 HF 資料集:DerekLX/lerobot_derek_depth)。 |
| 實用工具 | vla-completeness, vla-calibrate, vla-depth-vis, vla-task-studio, vla-language-studio |
用於資料集健康檢查、閾值校準、深度可視化以及互動式設定/標註編輯的輔助工具。 |
如何開始
- 安裝 Python 3.12+,建立 conda 環境,並新增
ffmpeg(影片處理必需)。 - 使用所需記錄擴充功能以可編輯模式安裝倉儲,例如:
conda create -n vla python=3.12 -y && conda activate vla conda install -c conda-forge ffmpeg -y pip install -e "[record]" # 後續可透過 [realsense] 或 [orbbec] 新增相機 SDK 可選相依性 - 使用
record/腳本捕獲新片段(RGB 或 RGB-D)。Orbbec 相機範例:python record/rgbd_record/find_cameras.py orbbec python record/rgbd_record/record.py --config_path=record/rgbd_record/configs/record_rgbd.yaml - 使用
vla-merge將多個原始資料集合併為一個統一資料夾。 - 執行結構審計(
vla-audit)以產生keep_episodes.txt、review_episodes.txt和drop_episodes.txt。 - (可選)插入語意評估器——例如內建的
semantic_backends.vla_checkpoint_evaluator——以策略檢查點為基準對片段評分。 - 透過
vla-enrich為保留的片段新增語言側車。 - 若已收集部署策略的人類反饋,使用
vla-feedback-build建構反饋資料集,並回饋至vla-iterate以進行下一個訓練回合。 - 使用
vla-push將最終、經審計的資料集推送到 Hugging Face。
誰應該使用它
- 需要可重現資料工程流程的 視覺-語言-動作 或 具身 AI 模型研究人員。
- 已使用
lerobot資料格式的機器人實驗室,希望新增深度或觸覺側車,但不想重寫現有程式碼。 - 希望實現 封閉迴路資料收集循環 的團隊:記錄 → 審計 → 豐富 → 訓練 → 收集反饋 → 重複。
關鍵設計原則
- 保守決策 – 僅硬性失敗被丟棄;模糊情況標記為待審查。
- 側車優先 – 深度、語言、反饋,甚至訓練權重都位於核心資料集之外,保護原始記錄。
- 可插拔,預設無模型 – 基礎安裝不包含權重;任何評估器、標註器或策略均可透過簡單的
module:attribute插件字串新增。
文件與社群
- 完整的靜態網站(
https://dsta022.github.io/Loop-Engineering-for-VLA/)提供操作手冊、插件契約和審計策略文件。 - CI 在 Linux 和 Windows 上對合成資料執行單元測試。
- 倉儲包含範例設定檔、合成測試套件和一個即用型 Hugging Face 資料集。
以上所有細節均直接來自倉儲的 README;未推斷任何額外功能。
相關
- Dispatch
- Dispatch
- 專案
- Dispatch