
ফিজিক্যাল ইন্টেলিজেন্সের ফ্লো-ম্যাচিং VLA, Pi0.5-কে আপনার নিজস্ব রোবট ডেটা ব্যবহার করে ফাইন-টিউন করুন। openpi এবং lerobot pi05-এর জন্য বাস্তব কমান্ড, ডেটা সেট ফরম্যাটের সমস্যা, VRAM এবং ল্যাটেন্সি সীমাবদ্ধতা।
Pi0.5 হল সেই মডেল যা আপনি ব্যবহার করবেন যখন একটি নীতি এমন একটি ঘরে কাজ করতে হবে যা এটি আগে কখনও দেখেনি। এটি এখানে পাঁচটি প্রশিক্ষণযোগ্য নীতির মধ্যে সবচেয়ে জটিল যা হাতে ফাইন-টিউন করতে হয়: আপস্ট্রিম রিপোজিটরি প্রথমে JAX, LeRobot পোর্ট 0.6.0 সংস্করণে lerobot-record থেকে ডিপ্লয়মেন্ট সরিয়ে দিয়েছে এবং বেস ইনস্টলকে প্রশিক্ষণের জন্য খুব ছোট করে দিয়েছে, এবং একটি সম্পূর্ণ ফাইন-টিউন 4090-এ ফিট করে না। নিচে: ইনফারেন্সে ফ্লো ম্যাচিং এর খরচ, দুটি কমান্ড রুট, এবং 485 ms সংখ্যা যা ফলাফল ব্যবহারযোগ্য কিনা তা নির্ধারণ করে।
আপনার যা জানা দরকার
- •একটি ফ্লো-ম্যাচিং VLA: একটি 3B PaliGemma VLM এবং একটি 300M অ্যাকশন এক্সপার্ট যা অবিচ্ছিন্ন অ্যাকশন চাঙ্ক ডিকোড করে। এটি ফাইন-টিউন করার দুটি রুট, openpi এবং LeRobot pi05, LIBERO গড়-এ 0.65 পয়েন্ট ব্যবধানে।
- •সম্পূর্ণ ফাইন-টিউনিংয়ের জন্য 70 GB এর বেশি VRAM প্রয়োজন। openpi শুধুমাত্র তার JAX পাথে LoRA-কে 22.5 GB-তে তালিকাভুক্ত করে।
- •ডেটা সেটটি অবশ্যই LeRobotDataset v3.0 হতে হবে যেখানে meta/stats.json-এ q01 এবং q99 কোয়ান্টাইল থাকবে, অন্যথায় ব্যাচ ওয়ান ত্রুটি দেবে।
- •প্রথমে আপনার lerobot সংস্করণ পরীক্ষা করুন: 0.6.0 বেস প্যাকেজটিকে হালকা করেছে এবং lerobot-record থেকে ডিপ্লয়মেন্ট সরিয়ে দিয়েছে।
- •এখানে এটি প্রতি অ্যাকশন স্টেপে 485 ms-এ চলে, 50টি এপিসোড চায় এবং প্রতি রানে প্রায় 4 থেকে 12 USD খরচ হয়।
Pi0.5 আসলে কী
ফিজিক্যাল ইন্টেলিজেন্স 2024 সালের অক্টোবরে pi0 প্রকাশ করেছে: একটি প্রিট্রেইনড VLM-এর উপর ভিত্তি করে একটি ফ্লো ম্যাচিং ভিশন-ল্যাঙ্গুয়েজ-অ্যাকশন মডেল: 3 বিলিয়ন প্যারামিটার সহ PaliGemma এবং স্ক্র্যাচ থেকে ইনিশিয়ালাইজ করা একটি 300M অ্যাকশন এক্সপার্ট, মোট 3.3 বিলিয়ন। এই গবেষণাপত্রটি 7টি রোবট কনফিগারেশন এবং 68টি টাস্ক জুড়ে 10,000 ঘণ্টারও বেশি রোবট ডেটার উপর প্রি-ট্রেনিংয়ের কথা জানায়। আরও জানতে দেখুন pi0 নিবন্ধটি।
Pi0.5 (arXiv 2504.16054, 22 এপ্রিল 2025) সেই কাঠামোটি ধরে রাখে এবং প্রশিক্ষণের পদ্ধতি পরিবর্তন করে: ওয়েব ডেটা, অবজেক্ট ডিটেকশন, রোবটকে প্রশিক্ষণ দেওয়া মানুষের মৌখিক নির্দেশাবলী, সাবটাস্ক লেবেল, এবং বিভিন্ন বাড়িতে থাকা রোবট থেকে প্রাপ্ত ক্রস-এমবডিমেন্ট ডেটা। এর ফলস্বরূপ, রোবট এমন বাড়িতে রান্নাঘর পরিষ্কার করতে সক্ষম হয় যা প্রশিক্ষণের সেটে ছিল না। openpi README একটি বিস্তারিত তথ্য যোগ করে যা শিরোনামে নেই: প্রকাশিত pi0.5 জ্ঞান নিরোধক (knowledge insulation) (arXiv 2505.23705) ব্যবহার করে প্রশিক্ষিত হয়েছিল।
| বৈশিষ্ট্য | pi0 | pi0.5 |
|---|---|---|
| VLM ব্যাকবোন ভেরিয়েন্ট | gemma_2b (PaliGemma) | gemma_2b (PaliGemma) |
| অ্যাকশন এক্সপার্ট ভেরিয়েন্ট | gemma_300m | gemma_300m |
| action_dim | 32 | 32 |
| action_horizon default | 50 | 50 |
| max_token_len | 48 | 200 |
| discrete_state_input | false | true, প্রম্পটে স্টেটকে বিনগুলিতে বিভক্ত করা হয়েছে |
| বেস চেকপয়েন্ট | gs://openpi-assets/checkpoints/pi0_base | gs://openpi-assets/checkpoints/pi05_base |
openpi README স্পষ্টভাবে উল্লেখ করে: রিপোজিটরি শুধুমাত্র ফ্লো ম্যাচিং হেড সমর্থন করে, pi0.5 প্রশিক্ষণ এবং ইনফারেন্স উভয়ের জন্য। গবেষণাপত্রটি দুটি ধাপ বর্ণনা করে এবং কোডটি শুধুমাত্র দ্বিতীয়টি বহন করে: প্রি-ট্রেনিং প্রতিটি অ্যাকশনকে FAST টোকেনাইজার ব্যবহার করে ডিসক্রিট টোকেন হিসাবে উপস্থাপন করে, এবং ডিপ্লয়মেন্টে মডেল প্রতিটি অ্যাকশন চাঙ্কের আগে একটি উচ্চ-স্তরের সাবটাস্ক অনুমান করে। এর কোনটিই রিপোজিটরিতে নেই। The lerobot/pi05_base কার্ড একই তালিকা দেয় এবং RL যোগ করে, যদিও pi0.5 গবেষণাপত্রে কোনো রিইনফোর্সমেন্ট লার্নিং ধাপের বর্ণনা নেই। LeRobot পোর্ট সেই পরিধি উত্তরাধিকার সূত্রে পায়, এবং এর উপর হোস্ট করা প্রতিটি প্রশিক্ষকও পায়, যার মধ্যে এখানে থাকাটি অন্তর্ভুক্ত। লাইসেন্সিংও বিভক্ত: pi05 ডক পৃষ্ঠা Apache 2.0 বলে, the lerobot/pi05_base কার্ডটি license: gemma ট্যাগ করা হয়েছে।
ফ্লো ম্যাচিং প্রশিক্ষণ এবং ইনফারেন্স সম্পর্কে কী পরিবর্তন করে
একটি পলিসি যা আপনি একটি SO-100-এ প্রশিক্ষণ দিতে পারেন, হয় সরাসরি অ্যাকশনগুলিকে রিগ্রেস করে (ACT) অথবা সেগুলিকে টোকেনাইজ করে এবং অটোরেগ্রেসিভভাবে ডিকোড করে (pi0-FAST)। ফ্লো ম্যাচিং এর কোনটিই করে না: এটি একটি ভেক্টর ফিল্ড শেখে যা নয়েজকে একটি পরিষ্কার অ্যাকশন চাঙ্কে, তারপর সেটিকে ইন্টিগ্রেট করে। pi0 পেপারটি 0.1 স্টেপ সাইজে 10টি ইন্টিগ্রেশন স্টেপ ব্যবহার করে; LeRobot-এর pi05 কনফিগে একই `num_inference_steps: int = 10` থাকে।
- প্রশিক্ষণ: লস একটি নয়েজড অ্যাকশন চাঙ্ককে রিগ্রেস করে। কোনো টোকেনাইজার টিউন করার প্রয়োজন নেই, আপনার জয়েন্ট অ্যাঙ্গেলের কোনো ডিসক্রিটাইজেশন নেই।
- ইনফারেন্স: একটি চাঙ্কের জন্য অ্যাকশন এক্সপার্টের মাধ্যমে দশটি ফরওয়ার্ড পাস লাগে। এটি কাঠামোগত, কোনো টিউনিং সমস্যা নয়।
- আউটপুট: 32 মাত্রার অবিচ্ছিন্ন অ্যাকশন, অভ্যন্তরীণভাবে প্যাড করা, আপনার রোবটের মাত্রাগুলির উপর লস নেওয়া হয়। একটি 6-DoF আর্ম এবং গ্রিপার 7টি ব্যবহার করে।
# openpi/src/openpi/models/pi0_config.py - the defaults every pi05 config inherits
@dataclasses.dataclass(frozen=True)
class Pi0Config(_model.BaseModelConfig):
dtype: str = "bfloat16"
paligemma_variant: _gemma.Variant = "gemma_2b"
action_expert_variant: _gemma.Variant = "gemma_300m"
action_dim: int = 32
action_horizon: int = 50
max_token_len: int = None # 200 if pi05 else 48
pi05: bool = False # flips discrete_state_input to Trueপালিজেমা ব্যাকবোন, এবং এর সামনের গেট
PaliGemma (arXiv 2407.07726) হল একটি Gemma-2B ল্যাঙ্গুয়েজ মডেলের উপর ভিত্তি করে একটি SigLIP-So400m ভিশন এনকোডার, যা প্রায় 3B প্যারামিটার নিয়ে গঠিত। Pi0.5 এর টোকেনাইজার উত্তরাধিকার সূত্রে পায়, এবং সেই টোকেনাইজারটি একটি গেটেড রিপোজিটরিতে থাকে। প্রথম রান ব্যর্থ হওয়ার এটিই সবচেয়ে সাধারণ কারণ, প্রথম প্রশিক্ষণ ধাপ-এর আগে।
LeRobot pi05 ডকুমেন্টেশন স্পষ্টভাবে বলে: pi0.5 গেটেড google/paligemma-3b-pt-224 tokenizer ব্যবহার করে, তাই Hub-এ এর লাইসেন্স গ্রহণ করুন এবং প্রথমে hf auth login চালান। অ্যাক্সেস ম্যানুয়ালি দেওয়া হয়, তাৎক্ষণিকভাবে নয়। এটি এড়িয়ে গেলে, একটি পেইড ক্লাউড রান শুরু করলে, আপনি এমন একটি পডের জন্য অর্থ প্রদান করবেন যা একটি টোকেনাইজার ডাউনলোড করতে পারবে না।
শুরু করার আগে: ডেটাসেট ফরম্যাট, এপিসোড, হার্ডওয়্যার
LeRobot-এ Pi0.5 একটি LeRobot ডেটাসেট v3.0 লেআউটে পড়ে, যা অক্টোবর 2025-এ lerobot 0.4.0-এর সাথে এসেছিল: প্রতি Parquet এবং MP4 ফাইলে অনেক এপিসোড, প্রতি এপিসোড একটি ফাইলের পরিবর্তে, meta/episodes/-এ বাউন্ডারি সহ, ফাইলের নামের পরিবর্তে। ডেস্কটপ ক্লায়েন্ট দিয়ে রেকর্ড করুন অথবা আপনার প্রথম ডেটাসেট রেকর্ড করুন অনুসরণ করুন এবং আপনার কাছে এটি থাকবে।
| মোড | প্রয়োজনীয় GPU মেমরি | উদাহরণ GPU |
|---|---|---|
| ইনফারেন্স | 8 GB এর বেশি | RTX 4090 |
| ফাইন-টিউনিং, লোরা | 22.5 GB এর বেশি | RTX 4090 |
| ফাইন-টিউনিং, সম্পূর্ণ | 70 GB এর বেশি | A100 80 GB অথবা H100 |
Pi0.5 এবং SmolVLA LeRobot v3.0 চায়। GR00T N1.7 এবং GR00T N1.5 v2.0 অথবা v2.1 চায় এবং v3.0 ডেটাসেটে ক্র্যাশ করে। একটি রেকর্ডিং সেশন রূপান্তর ছাড়া উভয়কে ফিড করতে পারে না, এবং ত্রুটিটি "ভুল ডেটাসেট সংস্করণ" বলে না। দেখুন ডেটাসেট প্রত্যাখ্যাত: v3 প্রয়োজন।
# v2.1 -> v3.0, run against a dataset already on the Hub
python -m lerobot.scripts.convert_dataset_v21_to_v30 --repo-id=<HF_USER/DATASET_ID>
# aggregates episode-0000.parquet, episode-0001.parquet, ... -> file-0000.parquet
# aggregates episode-0000.mp4, episode-0001.mp4, ... -> file-0000.mp4
# rewrites meta/episodes/* with per-episode lengths, tasks and offsetsপ্ল্যাটফর্ম Pi0.5 এর জন্য কমপক্ষে 50টি পর্ব চায়, যা GR00T এবং ACT এর মতোই। প্রি-ট্রেনিং মূল কাজ করে, তাই 50টি পরিষ্কার পর্ব 200টি অগোছালো পর্বের চেয়ে ভালো। এ বিষয়ে নতুন? শুরু করুন ডেটা সংগ্রহের নির্দেশিকা.

রুট A: openpi রিপোজিটরি ব্যবহার করে ফাইন-টিউন করুন
রেফারেন্স ইমপ্লিমেন্টেশন: প্রথমে JAX, শুধুমাত্র Ubuntu 22.04 এ পরীক্ষিত, ফ্ল্যাগসের পরিবর্তে কনফিগারেশন অবজেক্ট দ্বারা চালিত। একটি PyTorch পাথ 2025 সালের সেপ্টেম্বরে এসেছে, যা LIBERO-তে যাচাই করা হয়েছে। তিনটি ধাপ: আপনার ডেটা রূপান্তর করুন, একটি কনফিগারেশন সংজ্ঞায়িত করুন, প্রশিক্ষণ দিন এবং পরিবেশন করুন।
- 1ক্লোন এবং ইনস্টল করুন
openpi uv ব্যবহার করে। GIT_LFS_SKIP_SMUDGE হল এমন একটি জিনিস যা LeRobot কে LFS ব্লব ছাড়াই একটি নির্ভরতা হিসাবে আসতে দেয়।
bashgit clone --recurse-submodules git@github.com:Physical-Intelligence/openpi.git cd openpi GIT_LFS_SKIP_SMUDGE=1 uv sync GIT_LFS_SKIP_SMUDGE=1 uv pip install -e . - 2আপনার ডেটা একটি LeRobot ডেটাসেটে রূপান্তর করুন
আপস্ট্রিম LIBERO এবং DROID এর জন্য কনভার্টার সরবরাহ করে এবং আশা করে যে আপনি একটিকে মানিয়ে নেবেন। কাজটি হল কী ম্যাপিং।
bashuv run examples/libero/convert_libero_data_to_lerobot.py --data_dir /path/to/your/data - 3একটি প্রশিক্ষণ কনফিগ যোগ করুন
কনফিগগুলি src/openpi/training/config.py-তে TrainConfig এন্ট্রি। এটি pi05_droid_finetune কে মানিয়ে নেয়, যেখানে ওয়েট লোডার pi05_base এর দিকে নির্দেশিত।
pythonTrainConfig( name="pi05_so100", model=pi0_config.Pi0Config( pi05=True, action_dim=32, # pi05 is trained with 32-dim actions action_horizon=16, ), # Copy LeRobotLiberoDataConfig in the same file and rewrite the key # mapping for your camera names, then reference your copy here. data=LeRobotLiberoDataConfig( repo_id="your_hf_username/my_so100_dataset", base_config=DataConfig(prompt_from_task=True), ), weight_loader=weight_loaders.CheckpointWeightLoader( "gs://openpi-assets/checkpoints/pi05_base/params" ), batch_size=32, num_train_steps=20_000, ) - 4নর্ম স্ট্যাটস গণনা করুন
এটি ডেটাসেটের বিরুদ্ধে নয়, কনফিগ নামের বিরুদ্ধে চলে। এটি বাদ দেওয়া এখানে ক্লাসিক প্রথম ব্যর্থতা।
bashuv run scripts/compute_norm_stats.py --config-name pi05_so100 - 5প্রশিক্ষণ দিন
ভেরিয়েবলটি JAX কে ডিফল্ট 75 এর পরিবর্তে 90 শতাংশ GPU মেমরি ব্যবহার করতে দেয়। একটি 80 GB কার্ডে এটি নির্ধারণ করে যে রানটি টিকে থাকবে কিনা।
bashXLA_PYTHON_CLIENT_MEM_FRACTION=0.9 uv run scripts/train.py pi05_so100 \ --exp-name=my_experiment \ --overwrite - 6এটি পরিবেশন করুন
সার্ভার পোর্ট 8000 এ শোনে এবং পর্যবেক্ষণ ক্যোয়ারীর উত্তর দেয়; আপনার রোবট রানটাইম হল ক্লায়েন্ট।
bashuv run scripts/serve_policy.py policy:checkpoint \ --policy.config=pi05_so100 \ --policy.dir=checkpoints/pi05_so100/my_experiment/20000
openpi-এর PyTorch ইমপ্লিমেন্টেশন pi0-FAST, মিক্সড প্রিসিশন, FSDP, LoRA বা EMA ওয়েট সমর্থন করে না, তাই 22.5 GB পর্যন্ত LoRA শুধুমাত্র JAX-এর মাধ্যমে gemma_2b_lora এবং gemma_300m_lora ভ্যারিয়েন্টগুলিতে উপলব্ধ। আরও খারাপ: সেটআপটি আপনার ইনস্টল করা transformers 4.53.2-এর উপর প্যাচ করা ফাইলগুলি কপি করে, এবং README সতর্ক করে যে uv-এর ডিফল্ট হার্ডলিঙ্ক মোডের সাথে এটি uv ক্যাশে transformers-কে স্থায়ীভাবে পরিবর্তন করে এবং অন্যান্য প্রোজেক্টে ছড়িয়ে পড়তে পারে। uv cache clean transformers ব্যবহার করে এটি পূর্বাবস্থায় ফিরিয়ে আনুন।
রুট B: lerobot pi05 দিয়ে ফাইন-টিউন করুন
LeRobot পোর্ট একই ওয়েটগুলিকে CLI-তে র্যাপ করে যা আপনি ইতিমধ্যেই ব্যবহার করেন ACT এবং SmolVLA। নিচের সবকিছু lerobot 0.6.1 (3 আগস্ট 2026 থেকে প্রকাশিত সংস্করণ) এবং 23 আগস্ট 2026-এর pi05 ডকুমেন্টেশন অনুসারে যাচাই করা হয়েছে। এখানে সংস্করণগুলি গুরুত্বপূর্ণ: v3.0 ডেটাসেটগুলি অক্টোবর 2025-এ 0.4.0-এর সাথে এসেছিল, 9 মার্চ 2026-এর 0.5.0 ব্লগ pi0-FAST এবং রিয়েল-টাইম চাঙ্কিং উপস্থাপন করে, এবং 6 জুলাই 2026-এর 0.6.0 বেস প্যাকেজটিকে হালকা করে এবং ডিপ্লয়মেন্টকে lerobot-rollout-এ স্থানান্তরিত করে।
একটি জিনিস স্থানান্তরিত হয়নি: lerobot-train এবং lerobot-record ইতিমধ্যেই 0.3.2, আগস্ট 2025-এ এন্ট্রি পয়েন্ট ছিল। একটি টিউটোরিয়াল যা এখনও python -m lerobot.scripts.train কল করে, তা এক বছরের পরিবর্তনের পূর্ববর্তী এবং বাকি বিষয়গুলিতেও অবিশ্বাসযোগ্য।
- 1সঠিক এক্সট্রা সহ ইনস্টল করুন
0.6.0 সংস্করণ থেকে, বেস ইনস্টলেশন শুধুমাত্র মূল ML নির্ভরতা বহন করে, এবং pi অতিরিক্ত কোনো ডেটাসেট বা প্রশিক্ষণ কোড যোগ করে না, তাই একটি ফাইন-টিউনের জন্য প্রশিক্ষণ অতিরিক্তও প্রয়োজন। পুরোনো এক-লাইনারগুলি এখানে ইম্পোর্ট করার সময় ব্যর্থ হয়।
bash# policy dependencies plus the training stack pip install 'lerobot[pi,training]' # from a source checkout pip install -e ".[pi,training]" # driving an SO-100 afterwards needs the robot extras too pip install 'lerobot[core_scripts,feetech]' - 2প্রমাণীকরণ করুন
একটি ব্রাউজারে paligemma-3b-pt-224 লাইসেন্স গ্রহণ করুন, তারপর যে মেশিন প্রশিক্ষণ দেয় তাতে লগ ইন করুন।
bashhf auth login - 3কোয়ান্টাইল পরিসংখ্যান যোগ করুন
Pi0.5 কোয়ান্টাইল ব্যবহার করে STATE এবং ACTION স্বাভাবিক করে, তাই meta/stats.json-এর q01 এবং q99 প্রয়োজন। পুরোনো ডেটাসেটগুলিতে শুধুমাত্র min, max, mean, std থাকে।
bashlerobot-edit-dataset \ --repo_id your_dataset \ --new_repo_id your_dataset \ --operation.type recompute_stats \ --operation.overwrite true - 4lerobot/pi05_base থেকে ফাইন-টিউন করুন
আপনার কার্ড যা সহ্য করতে পারে সেই অনুযায়ী ব্যাচ সাইজ সেট করুন; ডকুমেন্টেশনে 80 GB LIBERO-তে 64 ব্যবহার করা হয়েছে। bfloat16 স্পষ্টভাবে পাস করুন, কনফিগের ডিফল্ট float32।
bashlerobot-train \ --dataset.repo_id=${HF_USER}/my_so100_dataset \ --policy.type=pi05 \ --policy.pretrained_path=lerobot/pi05_base \ --policy.gradient_checkpointing=true \ --policy.dtype=bfloat16 \ --policy.device=cuda \ --policy.push_to_hub=false \ --output_dir=./outputs/pi05_so100 \ --job_name=pi05_so100 \ --batch_size=4 \ --num_workers=8 \ --steps=30000 \ --save_freq=5000 \ --seed=1000 - 5আর্মে এটি চালান
0.6.x সংস্করণে এটি lerobot-rollout: lerobot-record একটি নীতি প্রত্যাখ্যান করে এবং eval_ ডেটাসেটের নাম গ্রহণ করে না। বেস আর্ম চালায়, সেন্ট্রি রোলআউট রেকর্ড করে।
bashlerobot-rollout \ --strategy.type=base \ --policy.path=${HF_USER}/my_policy \ --robot.type=so100_follower \ --robot.port=/dev/ttyACM1 \ --robot.cameras="{ up: {type: opencv, index_or_path: /dev/video10, width: 640, height: 480, fps: 30}}" \ --task="Put lego brick into the transparent box" \ --duration=60 # same run, recorded into an eval_ dataset lerobot-rollout \ --strategy.type=sentry \ --policy.path=${HF_USER}/my_policy \ --robot.type=so100_follower \ --robot.port=/dev/ttyACM1 \ --dataset.repo_id=${HF_USER}/eval_so100 \ --dataset.single_task="Put lego brick into the transparent box" \ --duration=600
| ফ্ল্যাগ | এটি কী করে | দ্রষ্টব্য |
|---|---|---|
| --policy.type=pi05 | Pi0.5 নির্বাচন করে | pretrained_path সহ প্রয়োজন, --policy.path সহ বাদ দিন |
| --policy.pretrained_path | শুধুমাত্র ওজন লোড করে | আপনার ডেটাসেট থেকে ফিচারের নাম, সংরক্ষিত সেটিংস রিসেট করা হয় |
| --policy.path | ওজন এবং চেকপয়েন্ট config.json | n_action_steps-এর মতো সংরক্ষিত সেটিংস উত্তরাধিকারসূত্রে প্রাপ্ত হয় |
| --policy.n_action_steps | প্রতি চাঙ্কে ব্যবহৃত ধাপ | 50-তে ফিরে আসে, chunk_size (ডিফল্ট 50) এর উপরে নয় |
| --policy.train_expert_only | VLM ফ্রিজ করে, এক্সপার্টকে প্রশিক্ষণ দেয় | ডিফল্ট false, কম মেমরি, সফলতায় কিছু খরচ |
| --policy.gradient_checkpointing | অ্যাক্টিভেশন সংরক্ষণ না করে পুনরায় গণনা করে | ডিফল্ট false, যখন একটি রান ফিট হবে না তখন প্রথম লিভার |
| --peft.method_type=LORA | সম্পূর্ণ ওজনের পরিবর্তে LoRA অ্যাডাপ্টার | peft অতিরিক্ত প্রয়োজন, ডকুমেন্ট করা উদাহরণ SmolVLA |
| --policy.rtc_training_max_delay | RTC-এর জন্য অ্যাকশন-প্রিফিক্স কন্ডিশনিং | শুধুমাত্র প্রধান শাখায়, 0.6.1-এ নেই, chunk_size-এর নিচে থাকতে হবে |
| --rename_map | ডেটাসেট কলামগুলিকে নীতি বৈশিষ্ট্যগুলিতে ম্যাপ করে | যখন আপনার ক্যামেরা কীগুলি ভিন্ন হয় তখন প্রয়োজন |
কোয়ান্টাইল ছাড়া আপনি প্রথম ব্যাচে ValueError: QUANTILES normalization mode requires q01 and q99 stats পাবেন। পরিসংখ্যান পুনরায় গণনা করুন, কিন্তু ফলাফল $HF_LEROBOT_HOME/your_dataset-এ আসে, ক্যাশে --dataset.repo_id পড়ে না, তাই --dataset.root সেখানে নির্দেশ করে প্রশিক্ষণ দিন অথবা হাবে পুশ করুন। অথবা --policy.normalization_mapping='{"ACTION": "MEAN_STD", "STATE": "MEAN_STD", "VISUAL": "IDENTITY"}' ব্যবহার করে কোয়ান্টাইল বাদ দিন, যেমন LIBERO রেফারেন্স কমান্ড করে।
ডিফল্টের তিনটি সেট, এবং কোনটি প্রশিক্ষকের কাছে পৌঁছায়
openpi-এর TrainConfig হল রেফারেন্স, LeRobot-এর PI05Config হল যা lerobot-train ব্যবহার করে যখন আপনি কিছু বলেন না, এবং এখানকার ফর্মটি একটি তৃতীয় সেট পাঠায়। আশ্চর্যের বিষয় হল লার্নিং রেট: উভয় আপস্ট্রিম ডিফল্ট 2.5e-5 এ সর্বোচ্চ হয়, যখন openpi-এর নিজস্ব pi05_libero কনফিগারেশন এবং এই প্ল্যাটফর্ম এটিকে 5e-5 এ বাড়িয়ে দেয়।
| সেটিং | openpi TrainConfig | lerobot pi05 and lerobot-train | AY-Robots পাঠায় |
|---|---|---|---|
| ব্যাচ সাইজ | 32 | 8 | 1 |
| সর্বোচ্চ লার্নিং রেট | 2.5e-5, cosine decay | optimizer_lr 2.5e-5 | 5e-5 |
| ট্রেনিং ধাপ | 30,000 | 100,000 | 30,000 |
| চেকপয়েন্ট ব্যবধান | 1,000 steps | 20,000 steps | ফর্মে নেই |
| সিড | 42 | 1,000 | ফর্মে আছে |
| অ্যাকশন চাঙ্ক | action_horizon 50 | chunk_size 50, n_action_steps 50 | ফর্মে নেই |
| ওজন ডেটাটাইপ | bfloat16 | float32 until you pass --policy.dtype | ফর্মে নেই |
| গ্রেডিয়েন্ট সঞ্চয় | no such knob, fsdp_devices instead | absent from every release so far | 16, এবং এটি বাদ দেওয়া হয়েছে |
পোর্টটি কি বিশ্বস্ত? LeRobot টিম LIBERO বেস মডেলটিকে আরও 6k ধাপের জন্য ফাইন-টিউন করেছে এবং চারটি স্যুটে openpi-এর রেফারেন্স নম্বরের সাথে তুলনা করেছে: 96.85 এর বিপরীতে 97.5 শতাংশ গড়, Libero 10 এ এগিয়ে, Spatial এ পিছিয়ে। রুটটি একটি টুলিং পছন্দ, গুণগত পছন্দ নয়।
- এর পেছনে 10,000 ঘণ্টারও বেশি রোবট প্রি-ট্রেনিং রয়েছে, তাই আপনার কাজের 50টি এপিসোড যথেষ্ট হতে পারে।
- অবিচ্ছিন্ন অ্যাকশন: টিউন করার জন্য কোনো টোকেনাইজার নেই, আপনার জয়েন্ট অ্যাঙ্গেলগুলিতে কোনো ডিসক্রিটাইজেশন ফ্লোর নেই।
- LeRobot পোর্ট LIBERO গড়ে openpi-এর 96.85 এর বিপরীতে 97.5 শতাংশ স্কোর করে, তাই বন্ধুত্বপূর্ণ CLI এর কোনো পরিমাপযোগ্য খরচ নেই।
- উভয় দিকে প্যারামিটার-দক্ষ পথ: openpi-এর JAX LoRA ভেরিয়েন্ট, LeRobot-এর PEFT ইন্টিগ্রেশন।
- সম্পূর্ণ ফাইন-টিউনিংয়ের জন্য 70 GB এর বেশি প্রয়োজন। 22.5 GB LoRA সংখ্যাটি openpi-এর JAX সংখ্যা; PEFT এর অধীনে pi05 এর জন্য কোনোটি প্রকাশিত হয়নি।
- এখানে পাঁচটি মডেলের মধ্যে সবচেয়ে ধীর: প্রতি অ্যাকশন ধাপে 485 ms, SmolVLA এর দ্বিগুণ, ACT এর চব্বিশ গুণ।
- LeRobot v3.0 প্রয়োজন, তাই একটি GR00T রানের জন্য রেকর্ড করা ডেটাসেট রূপান্তর করা প্রয়োজন, এবং এর বিপরীতও।
- নতুন বিকল্পগুলি প্রথমে মেইনে আসে: ট্রেনিং-টাইম RTC এবং MEM মেমরি 0.6.1 এ নেই, তাই নতুন ডকুমেন্টেশন মানে গিট থেকে ইনস্টল করা হতে পারে।
485 ms বাস্তবতা, এবং যেখানে এটি ব্যবহারযোগ্যতা হারায়
এটি আপনার প্রকল্পকে প্রভাবিত করে, তাই এটি খরচের তালিকার আগে আসে। প্রতি অ্যাকশন স্টেপে Pi0.5 এর জন্য এখানে পরিমাপ করা হয়েছে 485 ms। অন্য চারটি মডেলের তুলনায়:
| পলিসি | প্রতি অ্যাকশন স্টেপে ইনফারেন্স | প্যারামিটার | GPU টিয়ার | সর্বনিম্ন এপিসোড |
|---|---|---|---|---|
| ACT | 20 ms | ~80 M | RTX 4090 or any 24 GB card | 50 |
| GR00T N1.7 | 152 ms | ~3 B | A100 80 GB or H100 80 GB | 50 |
| GR00T N1.5 | 165 ms | ~3 B | A100 80 GB or H100 80 GB | 50 |
| SmolVLA | 245 ms | ~450 M | RTX 4090 or any 24 GB card | 30 |
| Pi0.5 | 485 ms | ~3 B | A100 80 GB or H100 80 GB | 50 |

এই পাঁচটি মডেল জুড়ে নিয়ন্ত্রণ লুপ প্রতিটি অ্যাকশন স্টেপে 20 থেকে 485 ms সময় নেয়। 485 ms এর উপরে পাবলিক-ইন্টারনেট রাউন্ড ট্রিপ একটি কার্যকরী নীতিকে দ্বিধাগ্রস্ত করে তোলে। ধীর পিক-এন্ড-প্লেসের জন্য রিমোট ইনফারেন্স কার্যকর, দ্রুত প্রতিক্রিয়াশীল গতির জন্য নয়। আমরা এমন একটি ডেমো বিক্রি করার চেয়ে বরং এটি বলতে চাই যা শুধুমাত্র একটি ল্যানে কাজ করে। যদি আপনার বাহু চাঙ্কগুলির মধ্যে বিরতি নেয়, তাহলে নীতি মাঝ-গতিতে থেমে যায় থেকে শুরু করুন।
আপস্ট্রিমের কাছে একটি উত্তর আছে, এবং এর অর্ধেকটা আপনি ইনস্টল করতে পারবেন এমন রিলিজে ইতিমধ্যেই রয়েছে। রিয়েল-টাইম চাঙ্কিং পরবর্তী চাঙ্ক তৈরি করে যখন বাহু বর্তমান চাঙ্কটি কার্যকর করছে, তারপর নতুন চাঙ্কের ওভারল্যাপিং ধাপগুলিকে ইতিমধ্যেই কার্যকর করা অংশের কাছাকাছি থাকতে নির্দেশ করে, যাতে বাহু সংযোগস্থলে থেমে না যায় বা ঝাঁকুনি না দেয়। Pi0, Pi0.5 এবং SmolVLA এর জন্য 0.4.2 চেঞ্জলগে পাঠানো ইনফারেন্স-টাইম ফর্মটি একটি রোলআউট ফ্ল্যাগ, রিট্রেন নয়:
lerobot-rollout \
--strategy.type=base \
--policy.path=${HF_USER}/my_policy \
--inference.type=rtc \
--inference.rtc.execution_horizon=10 \
--inference.rtc.max_guidance_weight=10.0 \
--robot.type=so100_follower \
--robot.port=/dev/ttyACM1 \
--robot.cameras="{ up: {type: opencv, index_or_path: /dev/video10, width: 640, height: 480, fps: 30}}" \
--task="Put lego brick into the transparent box" \
--duration=60এটি মডেলকে দ্রুত করে না। এটি ব্যবধানটি লুকিয়ে রাখে: 485 ms এখনও ব্যয় হয়, তবে ক্রিটিক্যাল পাথ থেকে দূরে, তাই চাঙ্কগুলির মধ্যে কিউ শুকিয়ে যায় না। arXiv 2512.05964 থেকে প্রশিক্ষণ-সময়ের ভেরিয়েন্ট আরও এগিয়ে যায়: মডেলটি একটি পরিষ্কার অ্যাকশন প্রিফিক্সের উপর শর্তারোপ করতে শেখে, তাই ইনফারেন্সে ওভারল্যাপটি নির্দেশিত হওয়ার পরিবর্তে প্রতি-অ্যাকশন ফ্লো টাইমস্টেপ দিয়ে হার্ড-ইনপেইন্ট করা হয় এবং গাইডেন্স ব্যাকওয়ার্ড পাস অদৃশ্য হয়ে যায়। প্রশিক্ষণের সময় এটি প্রতি উদাহরণে একটি প্রিফিক্স দৈর্ঘ্য নমুনা করে এবং অবশিষ্ট পোস্টফিক্সের উপর ফ্লো লস নেয়। সেই ফ্ল্যাগটি শুধুমাত্র মেইনে থাকে, 0.6.1 এ নয়, এবং আপনি যে বিলম্বের জন্য প্রশিক্ষণ দেন তা chunk_size এর নিচে থাকতে হবে।
Pi0.5 চেকপয়েন্ট পাওয়ার দুটি উপায়
আপনি একটি 80 GB কার্ড ভাড়া করেন বা আপনার নিজস্ব থাকে, উপরের স্ট্যাকগুলির মধ্যে একটি ইনস্টল করেন, আপনার ডেটাসেট রূপান্তর করেন এবং রানটি পর্যবেক্ষণ করেন। আপনি প্রতিটি নিয়ন্ত্রণ রাখেন: openpi-এর JAX LoRA, LeRobot-এর PEFT অ্যাডাপ্টার, আপেক্ষিক ক্রিয়া, কাস্টম কী ম্যাপিং। আপনি প্রতিটি ব্যর্থতাও রাখেন।
- হার্ডওয়্যার: A100 80 GB বা H100, অথবা openpi-এর JAX LoRA পাথে একটি 24 GB কার্ড।
- সেটআপ: প্রথম রানের জন্য এক বিকেল, বেশিরভাগই কী ম্যাপিং এবং গেটেড টোকেনাইজার।
- হোস্টেড ফর্মে নেই: PEFT অ্যাডাপ্টার, আপেক্ষিক ক্রিয়া, ট্রেনিং-টাইম RTC, MEM মেমরি।
lerobot-train \
--dataset.repo_id=${HF_USER}/my_so100_dataset \
--policy.type=pi05 \
--policy.pretrained_path=lerobot/pi05_base \
--policy.rtc_training_max_delay=10 \
--policy.gradient_checkpointing=true \
--policy.dtype=bfloat16 \
--batch_size=4 --steps=30000 --seed=1000আপনি মডেল এবং ডেটাসেট নির্বাচন করেন প্রশিক্ষণ ফর্ম-এ, ব্যাকএন্ড প্রয়োজনীয় VRAM অনুযায়ী একটি স্পট মার্কেটে একটি GPU ভাড়া করে, প্রশিক্ষক চালায় এবং চেকপয়েন্ট অবজেক্ট স্টোরেজে লেখে। Pi0.5 এখানে শুধুমাত্র ক্লাউড-ভিত্তিক। এর জন্য গাইড বিদ্যমান SO-100, SO-101, Koch v1.1 এবং LeKiwi-এর জন্য।
| সেটিং | প্ল্যাটফর্ম Pi0.5 এর জন্য কী পাঠায় |
|---|---|
| বেস চেকপয়েন্ট | lerobot/pi05_base |
| পলিসি টাইপ | pi05 |
| ব্যাচ সাইজ | 1 |
| লার্নিং রেট | 5e-5 |
| সর্বোচ্চ ধাপ | 30000 |
| গ্রেডিয়েন্ট অ্যাকুমুলেশন | 16, তবে নিচের সতর্কতা দেখুন |
| ফর্মে অতিরিক্ত নিয়ন্ত্রণ | seed, logFreq |
| ডেটাসেট ফরম্যাট | LeRobot v3.0 |
| GPU টিয়ার | A100 80 GB বা H100 80 GB |
প্রশিক্ষক 16 এর একটি গ্রেডিয়েন্ট অ্যাকুমুলেশন মান পাঠায় এবং lerobot 0.5.1-এর এটি গ্রহণ করার জন্য কোনো ফ্ল্যাগ নেই, তাই এটি বাদ পড়ে যায়। কোনো প্রকাশিত lerobot-এর এটি নেই: নিয়ন্ত্রণটি শুধুমাত্র মেইন ব্রাঞ্চে বিদ্যমান, --accelerator.gradient_accumulation.steps হিসাবে। এখানে কার্যকর ব্যাচ সাইজ 1, যা openpi-এর pi05_libero কনফিগ ব্যবহার করে 256-এর বিপরীতে। একটি লস কার্ভ পড়ার আগে এটি জানা মূল্যবান। এই নিয়ন্ত্রণটি GR00T N1.7 এবং GR00T N1.5 রানগুলিতে প্রযোজ্য।
ইনফারেন্স একইভাবে কাজ করে: পলিসি পরিবেশন করার জন্য একটি পড সরবরাহ করা হয় এবং আপনার স্থানীয় ক্লায়েন্ট এটির সাথে কথা বলে। পডটিতে একটি নিষ্ক্রিয় ওয়াচডগ রয়েছে এবং এটি নিজেকে ধ্বংস করে দেয়, যাতে ভুলে যাওয়া একটি ট্যাব নীরবে বিল না করে। লেটেন্সি সতর্কতা প্রযোজ্য, এই কারণেই ACT 20 ms-এ প্রায়শই একটি দ্রুত কাজ জিতে নেয়।
যখন এটি কাজ করে না
| লক্ষণ | সম্ভাব্য কারণ |
|---|---|
| শুরু হওয়ার আগেই রান বাতিল হয়েছে | ডেটাসেট v2.1 কিন্তু Pi0.5 v3.0 চায়, অথবা GR00T এর জন্য উল্টোটা |
| ImportError, ডেটাসেট প্যাকেজ অনুপস্থিত | প্রশিক্ষণ অতিরিক্ত ছাড়া lerobot 0.6.x |
| ব্যাচ ওয়ানে q01 এবং q99 সম্পর্কে ValueError | meta/stats.json-এ কোনো কোয়ান্টাইল নেই; পুনরায় গণনা করুন বা MEAN_STD ব্যবহার করুন |
| ধাপ 0-এ CUDA মেমরি শেষ | 70 GB-এর নিচে সম্পূর্ণ ফাইন-টিউন; চেকপয়েন্টিং বা train_expert_only চেষ্টা করুন |
| 401 বা গেটেড রেপো ত্রুটি | PaliGemma টোকেনাইজার লাইসেন্স গৃহীত হয়নি |
| লস কমে যায়, রোবট কিছুই করে না | নরম্যালাইজেশন অমিল, অথবা পলিসি স্টেট কপি করে |
| আর্ম চাঙ্কের মধ্যে বিরতি নেয় | প্রতি-ধাপ লেটেন্সি প্লাস রাউন্ড ট্রিপ; চাঙ্ক কিউ শুকিয়ে যায় |
| একটি সেটআপে কাজ করে, অন্যটিতে ব্যর্থ হয় | খুব কম এপিসোড, অথবা সব একটি কনফিগারেশনে |
- ডেটা সেট প্রত্যাখ্যান করা হয়েছে: v3 প্রয়োজন
- প্রশিক্ষণের সময় মেমরি শেষ
- ক্ষতি কমছে কিন্তু নীতি কিছুই করছে না
- নীতি মাঝপথে গতিতে থেমে যায়
- নীতি শুধুমাত্র একটি সেটআপে কাজ করে
- প্রশিক্ষণ কাজ সারিতে আটকে আছে
একটি রানের খরচ কত
Pi0.5 ব্যয়বহুল স্তরে পড়ে কারণ এটির জন্য একটি 80 GB কার্ড প্রয়োজন, এবং স্পট মূল্য পরিবর্তিত হয়, তাই এই সংখ্যাটি একটি নির্দিষ্ট মূল্যের পরিবর্তে একটি পরিসীমা। অনেক SO-100 কাজের জন্য, প্রথমে SmolVLA অথবা ACT কে 24 GB স্তরে প্রশিক্ষণ দিন, নিশ্চিত করুন যে কাজটি শেখার যোগ্য, তারপর A100 ঘন্টা ব্যয় করুন। আপনার প্রথম নীতি প্রশিক্ষণ দিন সেই সস্তা লুপটি দেখায়, এবং মূল্য নির্ধারণ বর্তমান স্তরগুলি বহন করে।
| স্তর | নীতিমালা | সাধারণ রান | প্রতি ঘন্টার মূল্য | প্রতি রানের খরচ |
|---|---|---|---|---|
| A100 80 GB or H100 | Pi0.5, GR00T N1.7, GR00T N1.5 | 3 to 6 hours | 1.20 to 2.00 USD | about 4 to 12 USD |
| RTX 4090 or any 24 GB card | SmolVLA, ACT | 2 to 5 hours | 0.30 to 0.60 USD | about 1 to 3 USD |

একটি সন্ধ্যা উৎসর্গ করার আগে: GR00T N1.7 বনাম Pi0.5 এবং Pi0.5 বনাম SmolVLA একই সংখ্যাগুলি মুখোমুখি উপস্থাপন করে। অ্যারেনা 85টি VLA মডেল ধারণ করে যার 332টি বেঞ্চমার্ক ফলাফল রয়েছে, প্রতিটি তার উৎসের সাথে সংযুক্ত, এবং এই পরিবারের পটভূমি রয়েছে আমাদের VLA ওভারভিউ।
স্ট্যাক তৈরি না করেই Pi0.5 প্রশিক্ষণ দিন
একটি ফর্মে ডেটাসেট এবং হাইপারপ্যারামিটারগুলি নির্বাচন করুন। ব্যাকএন্ড স্পট মার্কেটে একটি 80 GB কার্ড ভাড়া করে, ট্রেনার চালায় এবং চেকপয়েন্টগুলি অবজেক্ট স্টোরেজে লেখে। SO-100, SO-101, Koch v1.1 এবং LeKiwi-এর জন্য গাইড।
প্রশিক্ষণ গাইড খুলুনআমি কি একটি RTX 4090-এ Pi0.5 ফাইন-টিউন করতে পারি?▾
সম্পূর্ণ ফাইন-টিউন নয়: openpi এর জন্য 70 GB-এর বেশি তালিকাভুক্ত করে, তাই একটি A100 80 GB বা একটি H100 প্রয়োজন। এর 22.5 GB LoRA চিত্রটি JAX পাথের অন্তর্গত; PyTorch বাস্তবায়নে কোনো LoRA নেই। LeRobot-এর PEFT ইন্টিগ্রেশন বিদ্যমান, কিন্তু এর নথিভুক্ত উদাহরণ হল SmolVLA এবং pi05-এর জন্য কোনো VRAM চিত্র প্রকাশিত হয়নি।
আমার কতগুলি পর্বের প্রয়োজন?▾
পঞ্চাশটি, GR00T এবং ACT-এর মতো একই সর্বনিম্ন; শুধুমাত্র SmolVLA আরও কম, 30-এ যায়। বেস চেকপয়েন্টটি 10,000 ঘণ্টারও বেশি প্রি-ট্রেনিং বহন করে, তাই ফাইন-টিউনটি নতুন করে শেখার পরিবর্তে মানিয়ে নেয়: 50টি পরিষ্কার, বৈচিত্র্যময় পর্ব একটি কনফিগারেশন থেকে দুই শতাধিককে ছাড়িয়ে যায়।
policy.path এবং --policy.pretrained_path এর মধ্যে পার্থক্য কী?▾
--policy.path ওজন এবং চেকপয়েন্টের config.json লোড করে, তাই n_action_steps-এর মতো সংরক্ষিত সেটিংস উত্তরাধিকারসূত্রে প্রাপ্ত হয় এবং --policy.type বাদ দিতে হবে। --policy.pretrained_path শুধুমাত্র ওজন লোড করে: ফিচারের নাম আপনার ডেটাসেট থেকে আসে, সংরক্ষিত সেটিংস রিসেট হয়, --policy.type প্রয়োজন। এই কারণেই LIBERO কমান্ড n_action_steps=10 এবং empty_cameras=1 স্পষ্টভাবে পাস করে; অন্যথায় তারা 50 এবং 0-এ ফিরে আসে।
ওপেন সংস্করণটি কি আমাকে পেপারের সম্পূর্ণ Pi0.5 দেয়?▾
না। উভয়ই শুধুমাত্র ফ্লো ম্যাচিং অ্যাকশন হেড সমর্থন করে। FAST অ্যাকশন টোকেনাইজার সহ ডিসক্রিট-টোকেন প্রি-ট্রেনিং পর্যায় এবং উচ্চ-স্তরের সাবটাস্ক পূর্বাভাস প্রকাশ করা হয়নি, এবং lerobot/pi05_base কার্ড সেই তালিকায় RL যোগ করে যদিও pi0.5 পেপারে কোনো রিইনফোর্সমেন্ট লার্নিং পর্যায়ের বর্ণনা নেই। আপনি আপনার সরবরাহ করা একটি ভাষা স্ট্রিং-এর উপর ভিত্তি করে একটি নিম্ন-স্তরের নীতিকে প্রশিক্ষণ দেন, এমন একটি মডেলকে নয় যা নিজেই একটি দীর্ঘ কাজকে বিভক্ত করে।
এই গাইডটি কোন সংস্করণগুলির উপর ভিত্তি করে লেখা হয়েছে?▾
main-এ openpi এবং lerobot 0.6.1, 3 আগস্ট 2026 থেকে প্রকাশিত, উভয়ই 23 আগস্ট 2026-এ পড়া হয়েছে। v3.0 ডেটাসেট অক্টোবর 2025-এ 0.4.0 সহ এসেছে। 0.6.0 বেস প্যাকেজটিকে হালকা করেছে, তাই শুধুমাত্র lerobot[pi] আর ট্রেনিং স্ট্যাক ইনস্টল করে না, এবং ডিপ্লয়মেন্টকে lerobot-rollout-এ স্থানান্তরিত করেছে। ট্রেনিং-টাইম RTC শুধুমাত্র main-এ আছে; এখানে হোস্ট করা ট্রেনার 0.5.1 চালায়।
Sources
- Physical-Intelligence/openpi: open-source models and packages for robotics
- openpi training configs, including pi05_libero and pi05_droid_finetune
- pi0: A Vision-Language-Action Flow Model for General Robot Control
- pi0.5: a Vision-Language-Action Model with Open-World Generalization
- Knowledge Insulating Vision-Language-Action Models: Train Fast, Run Fast, Generalize Better
- PaliGemma: A versatile 3B VLM for transfer
- Training-Time Action Conditioning for Efficient Real-Time Chunking
- LeRobot pi05 documentation on the main branch, including training-time RTC
- LeRobot documentation: parameter efficient fine-tuning with PEFT
- LeRobotDataset v3.0 format documentation
- LeRobot release notes: v0.3.2 through v0.6.1, with the v0.6.0 breaking changes
- LeRobot v0.5.0: Scaling Every Dimension
- lerobot/pi05_base model card
- LeRobot documentation: Real-Time Chunking (RTC)
- openpi Pi0Config: the model defaults pi0 and pi05 inherit
Ready for high-quality robotics data?
AY-Robots connects your robots to skilled operators worldwide.
Get Started