
Rekebisha vizuri Pi0.5, VLA ya kulinganisha mtiririko kutoka Physical Intelligence, kwa data yako mwenyewe ya roboti. Amri halisi za openpi na lerobot pi05, mitego ya umbizo la seti ya data, mipaka ya VRAM na ucheleweshaji.
Pi0.5 ndiyo modeli unayotumia wakati sera inapaswa kufanya kazi katika chumba ambacho haijawahi kuona. Pia ni ngumu zaidi kati ya tano sera zinazoweza kufunzwa hapa ili kurekebisha kwa mkono: hazina ya chanzo ni JAX kwanza, bandari ya LeRobot ilihamisha usambazaji nje ya lerobot-record katika 0.6.0 na kufanya usakinishaji wa msingi kuwa mdogo sana kufunza nao, na urekebishaji kamili hautoshi kwenye 4090. Chini: nini ulinganishaji wa mtiririko inagharimu wakati wa utekelezaji, njia mbili za amri, na nambari ya 485 ms inayoamua kama matokeo yanaweza kutumika.
Unachohitaji kujua
- •VLA ya ulinganishaji wa mtiririko: PaliGemma VLM ya 3B pamoja na mtaalamu wa vitendo wa 300M anayefumbua vipande vya vitendo vinavyoendelea. Njia mbili za kuirekebisha, openpi na LeRobot pi05, tofauti ya pointi 0.65 kwenye wastani wa LIBERO.
- •Urekebishaji kamili unahitaji zaidi ya 70 GB ya VRAM. openpi inaorodhesha LoRA kwa 22.5 GB, kwenye njia yake ya JAX pekee.
- •Seti ya data lazima iwe LeRobotDataset v3.0 na q01 na q99 quantiles katika meta/stats.json, au kundi moja litatupa makosa.
- •Angalia toleo lako la lerobot kwanza: 0.6.0 ilifanya kifurushi cha msingi kuwa chepesi na kuhamisha usambazaji nje ya lerobot-record.
- •Hapa inaendeshwa kwa 485 ms kwa hatua ya kitendo, inahitaji vipindi 50, na inagharimu takriban 4 hadi 12 USD kwa kila uendeshaji.
Pi0.5 ni nini hasa
Physical Intelligence ilichapisha pi0 mnamo Oktoba 2024: ulinganishaji wa mtiririko modeli ya maono-lugha-kitendo kwenye VLM iliyefunzwa awali: PaliGemma yenye vigezo bilioni 3 pamoja na mtaalamu wa vitendo wa 300M aliyeanzishwa kutoka mwanzo, bilioni 3.3 kwa jumla. Karatasi hiyo inaripoti mafunzo ya awali kwa zaidi ya saa 10,000 za data ya roboti katika usanidi 7 wa roboti na kazi 68. Zaidi katika makala ya pi0.
Pi0.5 (arXiv 2504.16054, 22 Aprili 2025) huweka mfumo huo na kubadilisha mlo wa mafunzo: data ya wavuti, utambuzi wa vitu, maelekezo ya maneno kutoka kwa wanadamu wanaomfundisha roboti, lebo za kazi ndogo, data ya miili mbalimbali kutoka kwa roboti katika nyumba nyingi. Matokeo yake ni roboti inayofanya usafi jikoni katika nyumba ambazo hazikuwa katika seti ya mafunzo. README ya openpi inaongeza maelezo ambayo kichwa hakina: pi0.5 iliyotolewa ilifunzwa kwa kutumia insulation ya maarifa (arXiv 2505.23705).
| Sifa | pi0 | pi0.5 |
|---|---|---|
| Aina ya uti wa mgongo wa VLM | gemma_2b (PaliGemma) | gemma_2b (PaliGemma) |
| Aina ya mtaalamu wa vitendo | gemma_300m | gemma_300m |
| action_dim | 32 | 32 |
| action_horizon default | 50 | 50 |
| max_token_len | 48 | 200 |
| discrete_state_input | false | true, state discretized into bins in the prompt |
| Kituo cha ukaguzi cha msingi | gs://openpi-assets/checkpoints/pi0_base | gs://openpi-assets/checkpoints/pi05_base |
README ya openpi iko wazi: hazina inasaidia tu kichwa cha kulinganisha mtiririko, kwa mafunzo na utambuzi wa pi0.5. Karatasi inaelezea hatua mbili na msimbo unabeba ya pili tu: mafunzo ya awali yanawakilisha kila kitendo kama tokeni tofauti kupitia FAST tokenizer, na wakati wa kupeleka mfumo unahitimisha kazi ndogo ya kiwango cha juu kabla ya kila kipande cha kitendo. Hakuna hata moja ya hayo iko kwenye hazina. Kadi ya lerobot/pi05_base inatoa orodha hiyo hiyo na kuongeza RL, ingawa karatasi ya pi0.5 haielezei hatua yoyote ya kujifunza kwa uimarishaji. Bandari ya LeRobot inarithi wigo huo, na vivyo hivyo kila mkufunzi anayepangishwa juu yake, ikiwemo ile iliyo hapa. Leseni pia imegawanyika: ukurasa wa hati ya pi05 unasema Apache 2.0, kadi ya lerobot/pi05_base imewekwa lebo license: gemma.
Nini kulinganisha mtiririko kunabadilisha kuhusu mafunzo na utambuzi
Sera sera unayoweza kufundisha kwenye SO-100 ama hurejesha vitendo moja kwa moja (ACT) au huviweka katika tokeni na kuvifumbua kwa kujirejesha (pi0-FAST). Ulinganishaji wa mtiririko haufanyi mojawapo: hujifunza uga wa vekta unaosafirisha kelele hadi kwenye kifungu cha vitendo, kisha huunganisha. Karatasi ya pi0 hutumia hatua 10 za kuunganisha kwa ukubwa wa hatua 0.1; usanidi wa pi05 wa LeRobot hubeba num_inference_steps: int = 10 sawa.
- Mafunzo: hasara hurejesha kifungu cha vitendo chenye kelele. Hakuna kitokeni cha kurekebisha, hakuna ugawanyaji wa pembe zako za viungo.
- Utabiri: kifungu kimoja hugharimu pasi kumi za mbele kupitia mtaalamu wa vitendo. Hiyo ni kimuundo, si tatizo la kurekebisha.
- Matokeo: vitendo endelevu vya vipimo 32, vilivyojazwa ndani, hasara ikichukuliwa kwenye vipimo ambavyo roboti yako inavyo. Mkono wa 6-DoF pamoja na kishika hutumia 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 TrueUtu wa PaliGemma, na lango lililo mbele yake
PaliGemma (arXiv 2407.07726) ni kirekodi cha kuona cha SigLIP-So400m kwenye modeli ya lugha ya Gemma-2B, yenye takriban vigezo 3B. Pi0.5 hurithi kirekodi chake cha maneno (tokenizer), na kirekodi hicho cha maneno kipo kwenye hazina iliyofungwa. Hii ndiyo njia ya kawaida ambayo jaribio la kwanza hufa, kabla ya hatua ya mafunzo.
Nyaraka za LeRobot pi05 zinasema wazi: pi0.5 inatumia kirekodi cha maneno (tokenizer) kilichofungwa cha google/paligemma-3b-pt-224, kwa hivyo kubali leseni yake kwenye Hub na uendeshe hf auth login kwanza. Ufikiaji hutolewa kwa mikono, si papo hapo. Ukiruka hatua hii, ukaanza huduma ya wingu inayolipwa, utalipia podi ambayo haiwezi kupakua kirekodi cha maneno.
Kabla ya kuanza: umbizo la seti ya data, vipindi, maunzi
Pi0.5 katika LeRobot husoma seti ya data ya LeRobot katika mpangilio wa v3.0, ambao ulitolewa na lerobot 0.4.0 mnamo Oktoba 2025: vipindi vingi kwa kila faili ya Parquet na MP4 badala ya faili moja kwa kila kipindi, na mipaka katika meta/episodes/ badala ya majina ya faili. Rekodi kwa kutumia programu ya kompyuta au fuata rekodi seti yako ya kwanza ya data na utakuwa nayo.
| Hali | Kumbukumbu ya GPU inayohitajika | Mfano wa GPU |
|---|---|---|
| Utabiri | more than 8 GB | RTX 4090 |
| Kurekebisha, LoRA | more than 22.5 GB | RTX 4090 |
| Kurekebisha, kamili | more than 70 GB | A100 80 GB or H100 |
Pi0.5 na SmolVLA zinahitaji LeRobot v3.0. GR00T N1.7 na GR00T N1.5 zinahitaji v2.0 au v2.1 na huanguka kwenye seti ya data ya v3.0. Kipindi kimoja cha kurekodi hakiwezi kulisha zote mbili bila ubadilishaji, na hitilafu haisemi "toleo lisilo sahihi la seti ya data". Tazama seti ya data imekataliwa: v3 inahitajika.
# 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 offsetsJukwaa linahitaji angalau vipindi 50 kwa Pi0.5, kiwango sawa na GR00T na ACT. Mafunzo ya awali hufanya kazi kubwa, kwa hivyo vipindi 50 safi vinashinda vipindi 200 visivyo nadhifu. Mpya kwa hili? Anza na mwongozo wa ukusanyaji data.

Njia A: fanya marekebisho madogo na hazina ya openpi
Utekelezaji wa marejeleo: JAX kwanza, iliyojaribiwa kwenye Ubuntu 22.04 pekee, inayoendeshwa na vitu vya usanidi badala ya bendera. Njia ya PyTorch iliwasili Septemba 2025, iliyothibitishwa kwenye LIBERO. Hatua tatu: badilisha data yako, bainisha usanidi, funza na utumie.
- 1Nakili na Sakinisha
openpi inatumia uv. GIT_LFS_SKIP_SMUDGE ndicho kinachoruhusu LeRobot kuingia kama tegemezi bila LFS blobs.
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 . - 2Badilisha data yako kuwa seti ya data ya LeRobot
Upstream inatoa vibadilishaji kwa LIBERO na DROID na inatarajia urekebishe kimoja. Kazi ni ramani ya funguo.
bashuv run examples/libero/convert_libero_data_to_lerobot.py --data_dir /path/to/your/data - 3Ongeza usanidi wa mafunzo
Usanidi ni viingilio vya TrainConfig katika src/openpi/training/config.py. Huu unarekebisha pi05_droid_finetune, na kipakiaji cha uzito kikiwa kimeelekezwa kwenye 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, ) - 4Kokotoa takwimu za kawaida
Inaendeshwa dhidi ya jina la usanidi, si seti ya data. Kuiruka ni kosa la kwanza la kawaida hapa.
bashuv run scripts/compute_norm_stats.py --config-name pi05_so100 - 5Funza
Kigezo huruhusu JAX kutumia asilimia 90 ya kumbukumbu ya GPU badala ya asilimia 75 ya msingi. Kwenye kadi ya 80 GB hiyo huamua kama uendeshaji utaendelea.
bashXLA_PYTHON_CLIENT_MEM_FRACTION=0.9 uv run scripts/train.py pi05_so100 \ --exp-name=my_experiment \ --overwrite - 6Ihudumie
Seva inasikiliza kwenye bandari 8000 na kujibu maswali ya uchunguzi; mfumo endeshi wa roboti yako ndiye mteja.
bashuv run scripts/serve_policy.py policy:checkpoint \ --policy.config=pi05_so100 \ --policy.dir=checkpoints/pi05_so100/my_experiment/20000
Utekelezaji wa PyTorch wa openpi hauungi mkono pi0-FAST, usahihi mchanganyiko, FSDP, LoRA au uzito wa EMA, kwa hivyo LoRA inayofikia 22.5 GB ni JAX pekee, kupitia lahaja za gemma_2b_lora na gemma_300m_lora. Mbaya zaidi: usanidi unanakili faili zilizorekebishwa juu ya transformers zako zilizosakinishwa 4.53.2, na README inaonya kwamba kwa hali ya hardlink chaguomsingi ya uv, hii hubadilisha kabisa transformers kwenye akiba ya uv na inaweza kuvuja kwenye miradi mingine. Batilisha kwa uv cache clean transformers.
Njia B: fanya marekebisho madogo na lerobot pi05
Bandari ya LeRobot inafunga uzito sawa katika CLI unayotumia tayari kwa ACT na SmolVLA. Kila kitu kilicho hapa chini kiliangaliwa dhidi ya lerobot 0.6.1, toleo tangu Agosti 3, 2026, na nyaraka za pi05 mnamo Agosti 23, 2026. Matoleo ni muhimu hapa: hifadhidata za v3.0 ziliwasili na 0.4.0 mnamo Oktoba 2025, blogu ya 0.5.0 ya Machi 9, 2026 inawasilisha pi0-FAST na Real-Time Chunking, na 0.6.0 mnamo Julai 6, 2026 ilifanya kifurushi cha msingi kuwa chepesi na kuhamisha usambazaji kwa lerobot-rollout.
Jambo moja halikuhama: lerobot-train na lerobot-record tayari zilikuwa sehemu za kuingilia katika 0.3.2, Agosti 2025. Mafunzo ambayo bado yanaita python -m lerobot.scripts.train yanatangulia mwaka mmoja wa mabadiliko na hayafai kuaminiwa kwa mengine pia.
- 1Sakinisha na nyongeza sahihi
Tangu toleo la 0.6.0, usakinishaji wa msingi hubeba tu vitegemezi vya msingi vya ML, na nyongeza ya pi haiongezi data au msimbo wa mafunzo, kwa hivyo urekebishaji mzuri unahitaji nyongeza ya mafunzo pia. Amri za zamani za mstari mmoja hushindwa hapa wakati wa kuingiza.
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]' - 2Thibitisha Utambulisho
Kubali leseni ya paligemma-3b-pt-224 kwenye kivinjari, kisha ingia kwenye mashine inayofanya mafunzo.
bashhf auth login - 3Ongeza takwimu za quantile
Pi0.5 hurekebisha HALI na HATUA kwa kutumia quantiles, kwa hivyo meta/stats.json inahitaji q01 na q99. Seti za data za zamani hubeba tu min, max, mean, std.
bashlerobot-edit-dataset \ --repo_id your_dataset \ --new_repo_id your_dataset \ --operation.type recompute_stats \ --operation.overwrite true - 4Rekebisha kutoka lerobot/pi05_base
Weka ukubwa wa bechi kulingana na kile kadi yako inaweza kuhimili; nyaraka hutumia 64 kwenye LIBERO kwa 80 GB. Pitisha bfloat16 waziwazi, chaguo-msingi la usanidi ni 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 - 5Endesha kwenye mkono
Katika 0.6.x hii ni lerobot-rollout: lerobot-record inakataa sera na kukataa majina ya seti za data za eval_. Base huendesha mkono, sentry hurekodi utekelezaji.
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
| Bendera | Inachofanya | Kumbuka |
|---|---|---|
| --policy.type=pi05 | huchagua Pi0.5 | inahitajika na pretrained_path, acha na --policy.path |
| --policy.pretrained_path | hupakia uzito tu | majina ya vipengele kutoka kwenye seti yako ya data, mipangilio iliyohifadhiwa huwekwa upya |
| --policy.path | uzito pamoja na config.json ya kituo cha ukaguzi | mipangilio iliyohifadhiwa kama vile n_action_steps hurithiwa |
| --policy.n_action_steps | hatua zinazotumiwa kwa kila kipande | hurejea 50, kamwe isizidi chunk_size (chaguo-msingi 50) |
| --policy.train_expert_only | hugandisha VLM, hufunza mtaalamu | chaguo-msingi ni false, kumbukumbu kidogo, gharama fulani katika mafanikio |
| --policy.gradient_checkpointing | hesabu upya badala ya kuhifadhi uanzishaji | chaguo-msingi ni false, kigezo cha kwanza wakati utekelezaji hautatosha |
| --peft.method_type=LORA | adapta za LoRA badala ya uzito kamili | inahitaji nyongeza ya peft, mfano ulioandikwa ni SmolVLA |
| --policy.rtc_training_max_delay | hali ya kiambishi awali cha hatua kwa RTC | tawi kuu pekee, si katika 0.6.1, lazima ibaki chini ya chunk_size |
| --rename_map | hupanga safu za seti ya data kwenye vipengele vya sera | inahitajika wakati funguo za kamera yako zinatofautiana |
Bila quantiles utapata ValueError: QUANTILES normalization mode requires q01 and q99 stats kwenye bechi ya kwanza. Hesabu upya takwimu, lakini matokeo huishia kwenye $HF_LEROBOT_HOME/your_dataset, si kwenye akiba ambayo --dataset.repo_id husoma, kwa hivyo fanya mafunzo kwa kutumia --dataset.root inayoelekeza huko au sukuma kwenye Hub. Au ruka quantiles kwa kutumia --policy.normalization_mapping='{"ACTION": "MEAN_STD", "STATE": "MEAN_STD", "VISUAL": "IDENTITY"}', kama amri ya marejeleo ya LIBERO inavyofanya.
Seti tatu za chaguo-msingi, na zipi zinafika kwa mkufunzi
TrainConfig ya openpi ndiyo rejeleo, PI05Config ya LeRobot ndiyo lerobot-train hutumia usiposema chochote, na fomu hapa inatuma seti ya tatu. Kinachoshangaza ni kiwango cha kujifunza: viwango chaguomsingi vya juu vinafikia 2.5e-5, wakati usanidi wa pi05_libero wa openpi na jukwaa hili huipandisha hadi 5e-5.
| Mpangilio | openpi TrainConfig | lerobot pi05 na lerobot-train | AY-Robots hutuma |
|---|---|---|---|
| Ukubwa wa kundi | 32 | 8 | 1 |
| Kiwango cha juu cha kujifunza | 2.5e-5, upungufu wa kosini | optimizer_lr 2.5e-5 | 5e-5 |
| Hatua za mafunzo | 30,000 | 100,000 | 30,000 |
| Muda wa kituo cha ukaguzi | hatua 1,000 | hatua 20,000 | hakipo kwenye fomu |
| Mbegu | 42 | 1,000 | kipo kwenye fomu |
| Kipande cha kitendo | action_horizon 50 | chunk_size 50, n_action_steps 50 | hakipo kwenye fomu |
| Aina ya data ya uzito | bfloat16 | float32 mpaka upitishe --policy.dtype | hakipo kwenye fomu |
| Mkusanyiko wa gradient | hakuna kifundo kama hicho, fsdp_devices badala yake | haipo katika kila toleo hadi sasa | 16, na imeachwa |
Je, bandari ni mwaminifu? Timu ya LeRobot iliboresha mfumo msingi wa LIBERO kwa hatua nyingine 6k na kulinganisha na nambari za rejeleo za openpi kwenye seti nne: wastani wa asilimia 97.5 dhidi ya 96.85, mbele kwenye Libero 10, nyuma kwenye Spatial. Njia hii ni chaguo la zana, si la ubora.
- Zaidi ya saa 10,000 za mafunzo ya awali ya roboti nyuma yake, kwa hivyo vipindi 50 vya kazi yako vinaweza kutosha.
- Vitendo vinavyoendelea: hakuna tokenizer ya kurekebisha, hakuna kikomo cha ubaguzi kwenye pembe zako za viungo.
- Bandari ya LeRobot inapata asilimia 97.5 kwenye wastani wa LIBERO dhidi ya 96.85 ya openpi, kwa hivyo CLI rafiki zaidi haigharimu chochote kinachoweza kupimika.
- Njia zenye ufanisi wa vigezo pande zote mbili: lahaja za JAX LoRA za openpi, ujumuishaji wa PEFT wa LeRobot.
- Uboreshaji kamili unahitaji zaidi ya GB 70. Takwimu ya 22.5 GB LoRA ni nambari ya JAX ya openpi; hakuna iliyochapishwa kwa pi05 chini ya PEFT.
- 485 ms kwa kila hatua ya kitendo, polepole zaidi kati ya tano hapa: mara mbili ya SmolVLA, mara ishirini na nne ya ACT.
- LeRobot v3.0 inahitajika, kwa hivyo seti ya data iliyorekodiwa kwa ajili ya GR00T inahitaji kubadilishwa, na kinyume chake.
- Chaguo mpya huwekwa kwenye main kwanza: kumbukumbu ya RTC na MEM wakati wa mafunzo hazipo katika 0.6.1, kwa hivyo nyaraka mpya zaidi zinaweza kumaanisha kusakinisha kutoka git.
Uhalisia wa 485 ms, na mahali inapoacha kutumika
Hii huamua mradi wako, hivyo inakuja kabla ya jedwali la gharama. kwa kila hatua ya kitendo iliyopimwa hapa kwa Pi0.5 ni 485 ms. Ikilinganishwa na zingine nne:
| Sera | Inference kwa kila hatua ya kitendo | Vigezo | Ngazi ya GPU | Vipindi vya chini kabisa |
|---|---|---|---|---|
| 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 |

Kitanzi cha udhibiti katika mifumo hii mitano huendeshwa kwa milisekunde 20 hadi 485 kwa kila hatua ya kitendo. Safari za kwenda na kurudi kwenye intaneti ya umma, juu ya milisekunde 485, hubadilisha sera inayofanya kazi kuwa isiyo na uhakika. Utoaji wa hitimisho wa mbali unafaa kwa kazi za polepole za kuchukua na kuweka, si kwa mwendo wa haraka wa kuitikia. Afadhali tuseme hivyo kuliko kuuza onyesho linalofanya kazi kwenye LAN pekee. Ikiwa mkono wako unasimama kati ya vipande, anza hapa: sera inaganda katikati ya mwendo.
Upstream ina jibu, na nusu yake tayari iko kwenye toleo unaloweza kusakinisha. Real-Time Chunking huzalisha kipande kinachofuata wakati mkono bado unatekeleza cha sasa, kisha huongoza hatua zinazopishana za kipande kipya kukaa karibu na sehemu iliyotekelezwa tayari, ili mkono usisimame au kutetemeka kwenye mshono. Fomu ya wakati wa utoaji wa hitimisho ilisafirishwa katika changelog ya 0.4.2 kwa Pi0, Pi0.5 na SmolVLA na ni bendera ya usambazaji, si mafunzo upya:
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=60Haifanyi mfumo kuwa wa haraka zaidi. Inaficha pengo: milisekunde 485 bado zinatumika, lakini nje ya njia muhimu, hivyo foleni haikauki kati ya vipande. Toleo la wakati wa mafunzo kutoka arXiv 2512.05964 linaenda mbali zaidi: mfumo hujifunza kuweka masharti kwenye kiambishi awali cha kitendo safi, hivyo wakati wa utoaji wa hitimisho mwingiliano huwekwa rangi ngumu na hatua za muda za mtiririko kwa kila kitendo badala ya kuongozwa, na upitishaji wa nyuma wa mwongozo hupotea. Wakati wa mafunzo huchukua urefu wa kiambishi awali kwa kila mfano na huchukua hasara ya mtiririko kwenye kiambishi tamati kilichobaki. Bendera hiyo inapatikana kwenye main pekee, si katika 0.6.1, na ucheleweshaji unaofanyia mafunzo lazima ubaki chini ya chunk_size.
Njia mbili za kupata checkpoint ya Pi0.5
Unakodisha au kumiliki kadi ya GB 80, unasakinisha mojawapo ya staki zilizo hapo juu, unabadilisha seti yako ya data na kusimamia mchakato. Unabaki na kila udhibiti: JAX LoRA ya openpi, adapta za PEFT za LeRobot, vitendo vya jamaa, ramani maalum za vitufe. Pia unabaki na kila kosa.
- Vifaa: A100 80 GB au H100, au kadi ya GB 24 kwenye njia ya JAX LoRA ya openpi.
- Usanidi: mchana mzima kwa ajili ya mchakato wa kwanza, hasa ramani ya vitufe na tokenizer iliyofungwa.
- Haipatikani kwenye fomu iliyopangishwa: adapta za PEFT, vitendo vya jamaa, RTC ya wakati wa mafunzo, kumbukumbu ya 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=1000Unachagua modeli na seti ya data kwenye fomu ya mafunzo, backend inakodisha GPU kwenye soko la papo hapo kulingana na VRAM inayohitajika, inaendesha mkufunzi na kuandika checkpoints kwenye hifadhi ya vitu. Pi0.5 inapatikana kwenye wingu pekee hapa. Miongozo ipo kwa ajili ya SO-100, SO-101, Koch v1.1 na LeKiwi.
| Mpangilio | Kile jukwaa linatuma kwa Pi0.5 |
|---|---|
| Checkpoint ya Msingi | lerobot/pi05_base |
| Aina ya Sera | pi05 |
| Ukubwa wa Batch | 1 |
| Kiwango cha Kujifunza | 5e-5 |
| Hatua za Juu | 30000 |
| Mkusanyiko wa Gradient | 16, lakini angalia onyo hapa chini |
| Vidhibiti vya ziada kwenye fomu | seed, logFreq |
| Umbizo la Seti ya Data | LeRobot v3.0 |
| Ngazi ya GPU | A100 80 GB or H100 80 GB |
Mkufunzi anatuma thamani ya mkusanyiko wa gradient ya 16 na lerobot 0.5.1 haina bendera ya kuipokea, kwa hivyo inaachwa. Hakuna lerobot iliyotolewa iliyo nayo: kidhibiti kipo tu kwenye tawi kuu, kama --accelerator.gradient_accumulation.steps. Ukubwa halisi wa batch hapa ni 1, dhidi ya 256 ambayo config ya pi05_libero ya openpi inatumia. Inafaa kujua kabla ya kusoma curve ya hasara. Kidhibiti kinatumika kwenye GR00T N1.7 na GR00T N1.5.
Utabiri hufanya kazi kwa njia ile ile: pod inatayarishwa kutoa huduma ya sera na mteja wako wa ndani huwasiliana nayo. Pod ina watchdog ya kutofanya kazi na inajiharibu yenyewe, kwa hivyo kichupo kilichosahaulika hakitozi bili kimya kimya. Tahadhari ya latency inatumika, ndiyo maana ACT kwa 20 ms mara nyingi hushinda kazi ya haraka.
Wakati haifanyi kazi
| Dalili | Sababu inayowezekana zaidi |
|---|---|
| Mchakato umekataliwa kabla haujaanza | Seti ya data v2.1 lakini Pi0.5 inataka v3.0, au kinyume chake kwa GR00T |
| ImportError, kifurushi cha datasets kinakosekana | lerobot 0.6.x bila nyongeza ya mafunzo |
| ValueError kuhusu q01 na q99 kwenye batch moja | Hakuna quantiles katika meta/stats.json; hesabu upya au tumia MEAN_STD |
| CUDA imeishiwa kumbukumbu kwenye hatua ya 0 | Fine-tune kamili chini ya GB 70; jaribu checkpointing au train_expert_only |
| Kosa la 401 au repo iliyofungwa | Leseni ya PaliGemma tokenizer haijakubaliwa |
| Hasara inashuka, roboti haifanyi chochote | Kutolingana kwa kawaida, au sera inanakili hali |
| Mkono unasimama kati ya vipande | Latency kwa kila hatua pamoja na safari ya kwenda na kurudi; foleni ya vipande inaisha |
| Inafanya kazi katika usanidi mmoja, inashindwa katika mwingine | Vipindi vichache sana, au vyote katika usanidi mmoja |
- Seti ya data imekataliwa: v3 inahitajika
- Kumbukumbu imejaa wakati wa mafunzo
- Hasara inapungua lakini sera haifanyi chochote
- Sera inaganda katikati ya mwendo
- Sera inafanya kazi katika usanidi mmoja tu
- Kazi ya mafunzo imekwama kwenye foleni
Gharama ya utekelezaji mmoja
Pi0.5 iko kwenye kiwango cha gharama kubwa kwa sababu inahitaji kadi ya 80 GB, na bei za soko hubadilika, kwa hivyo takwimu ni safu badala ya bei. Kwa kazi nyingi za SO-100, funza SmolVLA au ACT kwenye kiwango cha 24 GB kwanza, thibitisha kuwa kazi inaweza kujifunzwa kabisa, kisha tumia masaa ya A100 juu yake. Funza sera yako ya kwanza inaelezea mzunguko huo wa bei nafuu, na bei inaonyesha viwango vya sasa.
| Kiwango | Sera | Utekelezaji wa kawaida | Bei kwa saa | Gharama kwa utekelezaji |
|---|---|---|---|---|
| A100 80 GB au H100 | Pi0.5, GR00T N1.7, GR00T N1.5 | Masaa 3 hadi 6 | 1.20 hadi 2.00 USD | kama 4 hadi 12 USD |
| RTX 4090 au kadi yoyote ya 24 GB | SmolVLA, ACT | Masaa 2 hadi 5 | 0.30 hadi 0.60 USD | kama 1 hadi 3 USD |

Kabla ya kujitolea jioni: GR00T N1.7 dhidi ya Pi0.5 na Pi0.5 dhidi ya SmolVLA huweka namba zilezile uso kwa uso. Uwanja ina mifumo 85 ya VLA yenye matokeo 332 ya vigezo, kila moja ikiwa imeunganishwa na chanzo chake, na maelezo ya familia yanapatikana katika muhtasari wetu wa VLA.
Funza Pi0.5 bila kujenga mfumo
Chagua seti ya data na vigezo vya ziada katika fomu. Seva ya nyuma hukodisha kadi ya GB 80 kwenye soko la papo hapo, huendesha mkufunzi na kuandika vituo vya ukaguzi kwenye hifadhi ya vitu. Miongozo ya SO-100, SO-101, Koch v1.1 na LeKiwi.
Fungua miongozo ya mafunzoJe, ninaweza kurekebisha Pi0.5 kwenye RTX 4090?▾
Sio urekebishaji kamili: openpi inaorodhesha zaidi ya GB 70 kwa hilo, kwa hivyo A100 80 GB au H100. Takwimu yake ya LoRA ya GB 22.5 ni ya njia ya JAX; utekelezaji wa PyTorch hauna LoRA. Ujumuishaji wa PEFT wa LeRobot upo, lakini mfano wake uliorekodiwa ni SmolVLA na hakuna takwimu ya VRAM iliyochapishwa kwa pi05.
Ninahitaji vipindi vingapi?▾
Hamsini, kiwango sawa na GR00T na ACT; SmolVLA pekee ndiyo inashuka chini, kwa 30. Kituo cha ukaguzi cha msingi hubeba zaidi ya saa 10,000 za mafunzo ya awali, kwa hivyo urekebishaji hubadilika badala ya kujifunza kutoka sifuri: vipindi 50 safi, tofauti hupita mia mbili kutoka usanidi mmoja.
Kuna tofauti gani kati ya --policy.path na --policy.pretrained_path?▾
--policy.path hupakia uzito na config.json ya kituo cha ukaguzi, kwa hivyo mipangilio iliyohifadhiwa kama vile n_action_steps hurithiwa na --policy.type lazima iondolewe. --policy.pretrained_path hupakia uzito pekee: majina ya vipengele hutoka kwenye seti yako ya data, mipangilio iliyohifadhiwa huwekwa upya, --policy.type inahitajika. Ndiyo maana amri ya LIBERO hupitisha n_action_steps=10 na empty_cameras=1 waziwazi; vinginevyo hurudi kwenye 50 na 0.
Je, toleo la wazi linanipa Pi0.5 kamili kutoka kwenye karatasi?▾
Hapana. Zote zinaunga mkono kichwa cha hatua cha kulinganisha mtiririko pekee. Hatua ya mafunzo ya awali ya tokeni-tofauti na kigawanyaji cha hatua cha FAST na utabiri wa kazi ndogo za kiwango cha juu hazikutolewa, na kadi ya lerobot/pi05_base inaongeza RL kwenye orodha hiyo ingawa karatasi ya pi0.5 haielezi hatua yoyote ya kujifunza kwa uimarishaji. Unafunza sera ya kiwango cha chini iliyowekewa masharti ya mfuatano wa lugha unaotoa, sio mfumo unaogawanya kazi ndefu yenyewe.
Mwongozo huu umeandikwa dhidi ya matoleo gani?▾
openpi kwenye main na lerobot 0.6.1, toleo tangu Agosti 3, 2026, zote zilisomwa Agosti 23, 2026. Seti za data za v3.0 ziliwasili na 0.4.0 mnamo Oktoba 2025. 0.6.0 ilifanya kifurushi cha msingi kuwa chepesi, kwa hivyo lerobot[pi] pekee haisakinishi tena mfumo wa mafunzo, na kuhamisha usambazaji hadi lerobot-rollout. RTC ya wakati wa mafunzo iko kwenye main pekee; mkufunzi aliyepangishwa hapa anaendesha 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