Matrix ya mafunzo ya AY-Robots yenye sera tano kama safu mlalo na mikono minne ya roboti kama safu wima, kila seli kiungo cha mwongozo maalum wa kurekebisha vizuri
Pi0.5Kulinganisha MtiririkoMafunzo ya VLALeRobotKurekebisha Vizuri

Jinsi ya Kufunza Pi0.5 kwa Data Yako Mwenyewe ya Roboti

AY-Robots ResearchAugust 23, 202616 dakika za kusoma

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).

Sifapi0pi0.5
Aina ya uti wa mgongo wa VLMgemma_2b (PaliGemma)gemma_2b (PaliGemma)
Aina ya mtaalamu wa vitendogemma_300mgemma_300m
action_dim3232
action_horizon default5050
max_token_len48200
discrete_state_inputfalsetrue, state discretized into bins in the prompt
Kituo cha ukaguzi cha msingigs://openpi-assets/checkpoints/pi0_basegs://openpi-assets/checkpoints/pi05_base
Kilicho hadharani si karatasi nzima

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.
python
# 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
Imesomwa kutoka src/openpi/models/pi0_config.py kwenye tawi kuu la openpi, 23 Agosti 2026.

Utu 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.

Kubali leseni iliyofungwa kabla ya kukodi GPU

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.

HaliKumbukumbu ya GPU inayohitajikaMfano wa GPU
Utabirimore than 8 GBRTX 4090
Kurekebisha, LoRAmore than 22.5 GBRTX 4090
Kurekebisha, kamilimore than 70 GBA100 80 GB or H100
Mtego wa toleo unaogharimu siku

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.

bash
# 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
Kutoka kwenye nyaraka za LeRobotDataset v3.0.

Jukwaa 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.

Ukurasa wa sera za AY-Robots ukilinganisha sera tano zinazoweza kufunzwa kwa vigezo, kiwango cha GPU, muda wa kusubiri na vipindi vya chini kabisa.
Pi0.5 inakaa katika kiwango cha A100 na H100 kwa 485 ms kwa hatua ya kitendo, ikiwa na kiwango cha chini cha vipindi 50.

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.

  1. 1
    Nakili na Sakinisha

    openpi inatumia uv. GIT_LFS_SKIP_SMUDGE ndicho kinachoruhusu LeRobot kuingia kama tegemezi bila LFS blobs.

    bash
    git 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. 2
    Badilisha data yako kuwa seti ya data ya LeRobot

    Upstream inatoa vibadilishaji kwa LIBERO na DROID na inatarajia urekebishe kimoja. Kazi ni ramani ya funguo.

    bash
    uv run examples/libero/convert_libero_data_to_lerobot.py --data_dir /path/to/your/data
  3. 3
    Ongeza 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.

    python
    TrainConfig(
        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. 4
    Kokotoa takwimu za kawaida

    Inaendeshwa dhidi ya jina la usanidi, si seti ya data. Kuiruka ni kosa la kwanza la kawaida hapa.

    bash
    uv run scripts/compute_norm_stats.py --config-name pi05_so100
  5. 5
    Funza

    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.

    bash
    XLA_PYTHON_CLIENT_MEM_FRACTION=0.9 uv run scripts/train.py pi05_so100 \
        --exp-name=my_experiment \
        --overwrite
  6. 6
    Ihudumie

    Seva inasikiliza kwenye bandari 8000 na kujibu maswali ya uchunguzi; mfumo endeshi wa roboti yako ndiye mteja.

    bash
    uv run scripts/serve_policy.py policy:checkpoint \
        --policy.config=pi05_so100 \
        --policy.dir=checkpoints/pi05_so100/my_experiment/20000
Njia ya PyTorch si njia ya JAX

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.

  1. 1
    Sakinisha 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]'
  2. 2
    Thibitisha Utambulisho

    Kubali leseni ya paligemma-3b-pt-224 kwenye kivinjari, kisha ingia kwenye mashine inayofanya mafunzo.

    bash
    hf auth login
  3. 3
    Ongeza 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.

    bash
    lerobot-edit-dataset \
        --repo_id your_dataset \
        --new_repo_id your_dataset \
        --operation.type recompute_stats \
        --operation.overwrite true
  4. 4
    Rekebisha 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.

    bash
    lerobot-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. 5
    Endesha 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.

    bash
    lerobot-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
BenderaInachofanyaKumbuka
--policy.type=pi05huchagua Pi0.5inahitajika na pretrained_path, acha na --policy.path
--policy.pretrained_pathhupakia uzito tumajina ya vipengele kutoka kwenye seti yako ya data, mipangilio iliyohifadhiwa huwekwa upya
--policy.pathuzito pamoja na config.json ya kituo cha ukaguzimipangilio iliyohifadhiwa kama vile n_action_steps hurithiwa
--policy.n_action_stepshatua zinazotumiwa kwa kila kipandehurejea 50, kamwe isizidi chunk_size (chaguo-msingi 50)
--policy.train_expert_onlyhugandisha VLM, hufunza mtaalamuchaguo-msingi ni false, kumbukumbu kidogo, gharama fulani katika mafanikio
--policy.gradient_checkpointinghesabu upya badala ya kuhifadhi uanzishajichaguo-msingi ni false, kigezo cha kwanza wakati utekelezaji hautatosha
--peft.method_type=LORAadapta za LoRA badala ya uzito kamiliinahitaji nyongeza ya peft, mfano ulioandikwa ni SmolVLA
--policy.rtc_training_max_delayhali ya kiambishi awali cha hatua kwa RTCtawi kuu pekee, si katika 0.6.1, lazima ibaki chini ya chunk_size
--rename_maphupanga safu za seti ya data kwenye vipengele vya serainahitajika wakati funguo za kamera yako zinatofautiana
Hitilafu ambayo utekelezaji mwingi wa kwanza hukutana nayo

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.

Mpangilioopenpi TrainConfiglerobot pi05 na lerobot-trainAY-Robots hutuma
Ukubwa wa kundi3281
Kiwango cha juu cha kujifunza2.5e-5, upungufu wa kosinioptimizer_lr 2.5e-55e-5
Hatua za mafunzo30,000100,00030,000
Muda wa kituo cha ukaguzihatua 1,000hatua 20,000hakipo kwenye fomu
Mbegu421,000kipo kwenye fomu
Kipande cha kitendoaction_horizon 50chunk_size 50, n_action_steps 50hakipo kwenye fomu
Aina ya data ya uzitobfloat16float32 mpaka upitishe --policy.dtypehakipo kwenye fomu
Mkusanyiko wa gradienthakuna kifundo kama hicho, fsdp_devices badala yakehaipo katika kila toleo hadi sasa16, 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.

Kuboresha Pi0.5 kwa data yako mwenyewe
Faida
  • 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.
Mabadilishano
  • 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:

SeraInference kwa kila hatua ya kitendoVigezoNgazi ya GPUVipindi vya chini kabisa
ACT20 ms~80 MRTX 4090 or any 24 GB card50
GR00T N1.7152 ms~3 BA100 80 GB or H100 80 GB50
GR00T N1.5165 ms~3 BA100 80 GB or H100 80 GB50
SmolVLA245 ms~450 MRTX 4090 or any 24 GB card30
Pi0.5485 ms~3 BA100 80 GB or H100 80 GB50
Ukurasa wa AY-Robots wa kulinganisha moja kwa moja kwa GR00T N1.7 dhidi ya Pi0.5, ukiwa na vigezo, ngazi ya GPU, latency na umbizo la seti ya data
Ngazi sawa ya GPU, kiwango sawa cha vipindi, toleo tofauti la seti ya data, pengo la latency mara tatu.
Utoaji wa hitimisho lazima ukae karibu na serva

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:

bash
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
execution_horizon ni idadi ya hatua za kipande kilichopita ambazo kipya kinapaswa kukubaliana nazo; nyaraka za RTC zinatoa 8 hadi 12 kama safu ya kawaida. Backend chaguo-msingi ya utoaji wa hitimisho ni --inference.type=sync.

Haifanyi 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.
bash
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
Amri ambayo hakuna fomu iliyopangishwa inayoendesha, na pip haiwezi kusakinisha: RTC ya wakati wa mafunzo ni bendera ya tawi kuu.

Wakati haifanyi kazi

DaliliSababu inayowezekana zaidi
Mchakato umekataliwa kabla haujaanzaSeti ya data v2.1 lakini Pi0.5 inataka v3.0, au kinyume chake kwa GR00T
ImportError, kifurushi cha datasets kinakosekanalerobot 0.6.x bila nyongeza ya mafunzo
ValueError kuhusu q01 na q99 kwenye batch mojaHakuna quantiles katika meta/stats.json; hesabu upya au tumia MEAN_STD
CUDA imeishiwa kumbukumbu kwenye hatua ya 0Fine-tune kamili chini ya GB 70; jaribu checkpointing au train_expert_only
Kosa la 401 au repo iliyofungwaLeseni ya PaliGemma tokenizer haijakubaliwa
Hasara inashuka, roboti haifanyi chochoteKutolingana kwa kawaida, au sera inanakili hali
Mkono unasimama kati ya vipandeLatency kwa kila hatua pamoja na safari ya kwenda na kurudi; foleni ya vipande inaisha
Inafanya kazi katika usanidi mmoja, inashindwa katika mwingineVipindi vichache sana, au vyote katika usanidi mmoja

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.

KiwangoSeraUtekelezaji wa kawaidaBei kwa saaGharama kwa utekelezaji
A100 80 GB au H100Pi0.5, GR00T N1.7, GR00T N1.5Masaa 3 hadi 61.20 hadi 2.00 USDkama 4 hadi 12 USD
RTX 4090 au kadi yoyote ya 24 GBSmolVLA, ACTMasaa 2 hadi 50.30 hadi 0.60 USDkama 1 hadi 3 USD
Jedwali la gharama za AY-Robots likionyesha GPU ambayo kila sera inahitaji, muda wa kawaida wa kuendesha na bei, na ni vipindi vingapi vinahitajika kabla ya sera kuwa muhimu
Ngazi mbili zilezile kwenye ukurasa wa bidhaa: Pi0.5 hukodisha kadi ya GB 80, SmolVLA na ACT hutoshea kwenye 4090.

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 mafunzo
Je, 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.

Ready for high-quality robotics data?

AY-Robots connects your robots to skilled operators worldwide.

Get Started