AY-Robots धोरण तुलना सारणी ज्यात GR00T N1.7, GR00T N1.5, Pi0.5, SmolVLA आणि ACT साठी पॅरामीटर संख्या, GPU टियर्स आणि इन्फरन्स लेटन्सी समाविष्ट आहे
SmolVLATinyVLAलहान VLAग्राहक GPULeRobot

लहान VLA मॉडेल्स: TinyVLA, SmolVLA आणि 1B पेक्षा कमी पॅरामीटर्सची स्थिती

AY-Robots ResearchAugust 23, 202619 मिनिट वाचन

TinyVLA आणि SmolVLA 1 अब्ज पॅरामीटर्सखाली कार्यरत VLA आणतात. दोन्ही पेपर्समधील वास्तविक आकडे, lerobot डीफॉल्ट्स, मोजलेली लेटन्सी आणि 24 GB कार्डवर एका रनचा खर्च किती येतो.

जवळजवळ प्रत्येक व्हिजन-लँग्वेज-ॲक्शन मॉडेल ज्याबद्दल लिहिले जाते ते डेटासेंटर कार्ड गृहीत धरते. OpenVLA मध्ये 7 अब्ज पॅरामीटर्स आहेत. GR00T N1.7 आणि Pi0.5 सुमारे 3 अब्ज आहेत आणि त्यांना फाइन-ट्यून करण्यासाठी A100 80 GB ची आवश्यकता आहे. जर तुमच्या डेस्कवरील कार्ड 4090 असेल, तर त्या श्रेणीचे मॉडेल आवाक्याबाहेर आहे.

दोन शोधनिबंध असा युक्तिवाद करतात की तुम्हाला त्याची गरज नाही. TinyVLA (arXiv 2409.12514, फेब्रुवारी 2025 मध्ये IEEE Robotics and Automation Letters द्वारे स्वीकारले गेले) 400 दशलक्ष ते 1.3 अब्ज बॅकबोन आणि डिफ्यूजन ॲक्शन हेडपासून VLA तयार करते. SmolVLA (arXiv 2506.01844, 2 जून 2025 रोजी सादर केले) 450 दशलक्ष पॅरामीटर्ससह खुले वेट्स, खुला डेटा आणि एका ग्राहक कार्डवर चालणारी स्क्रिप्ट प्रदान करते. येथे दोन्हीने काय मोजले आणि जिथे 1 अब्ज पेक्षा कमीचा युक्तिवाद थांबतो ते दिले आहे.

तुम्हाला काय माहित असणे आवश्यक आहे

  • TinyVLA तीन आकारात उपलब्ध आहे: 422 दशलक्ष एकूण (101 दशलक्ष प्रशिक्षणयोग्य), 740 दशलक्ष (138 दशलक्ष प्रशिक्षणयोग्य), 1.3 अब्ज (143 दशलक्ष प्रशिक्षणयोग्य). यापैकी फक्त पहिले दोन 1 अब्ज पेक्षा कमी आहेत.
  • त्याच्या टेबल IV नुसार, एका A6000 वर TinyVLA-1B साठी प्रति ॲक्शन प्रेडिक्शन 14 ms लागतात, तर OpenVLA-7B साठी 292 ms आणि लहान केलेल्या OpenVLA-1B साठी 140 ms लागतात.
  • ती गती हेडमुळे टिकून राहते, बॅकबोनमुळे नाही: TinyVLA-H चे डिफ्यूजन हेड ACT हेडने बदलल्यास, पाच वास्तविक-रोबोट कार्ये 94.0 च्या सरासरीवरून एकेरी अंकात येतात. MLP हेड सर्वत्र 0 गुण मिळवतो.
  • SmolVLA 450 दशलक्ष आहे, त्यापैकी अंदाजे 100 दशलक्ष ॲक्शन एक्सपर्ट आहे, जे 481 कम्युनिटी LeRobot डेटासेट आणि 10.6 दशलक्ष फ्रेम्सवर प्रीट्रेन केले आहे. हे LIBERO वर 87.3 गुण नोंदवते, तर 3.3 अब्जच्या रोबोटिक्स-प्रीट्रेन केलेल्या Pi0 साठी 86.0 आणि तीन वास्तविक SO-100 कार्यांवर 78.3 गुण नोंदवते, तर 3.5 अब्जच्या Pi0 साठी 61.7 गुण नोंदवते.
  • त्या प्रीट्रेनिंगशिवाय सिंगल-टास्क प्रशिक्षित केल्यास, SmolVLA त्या कार्यांवर 40.0 पर्यंत घसरते, जे ACT च्या 48.3 पेक्षा कमी आहे. लहान म्हणजे आपोआप सोपे नाही.
  • TinyVLA मध्ये LeRobot एकत्रीकरण नाही आणि ते CUDA 11.7 व्हील स्टॅक वापरते. SmolVLA lerobot मध्ये आहे आणि येथे 24 GB टियरवर प्रति रन अंदाजे 1 ते 3 USD खर्च येतो.

लहान VLA म्हणून प्रत्यक्षात काय गणले जाते

मॉडेल कार्डवरील पॅरामीटर संख्या एकच नसते. याचा अर्थ एकूण वजने, इन्फरन्सवेळी लोड केलेली वजने, किंवा ग्रेडियंट्स प्राप्त करणारी वजने असू शकतो . TinyVLA दोन्हीची नोंद करते आणि फरक मोठा आहे: TinyVLA-H एकूण 1.3 B आहे पण 143 M प्रशिक्षणयोग्य आहे, कारण व्हिजन टॉवर आणि बहुतेक भाषा मॉडेल गोठलेले राहतात तर LoRA अडॅप्टर्स आणि ॲक्शन हेड हलतात. पेपरमध्ये प्रशिक्षणयोग्य वाटा सुमारे 5 टक्के दर्शविला आहे.

मॉडेलपॅरामीटर्सबॅकबोनॲक्शन हेडस्रोत
TinyVLA-S422 M total, 101 M trainableLlava-Pythia ~400 MDiffusion (droid_diffusion U-Net)arXiv 2409.12514
TinyVLA-B740 M total, 138 M trainableLlava-Pythia ~700 MDiffusionarXiv 2409.12514
TinyVLA-H1.3 B total, 143 M trainableLlava-Pythia ~1.3 BDiffusionarXiv 2409.12514
SmolVLA450 M, ~100 M action expertSmolVLM2-500M-Video-InstructFlow matching expertarXiv 2506.01844
Octo-Small27 MViT-S scale, T5-Base text encoderDiffusionocto-small-1.5 card
ACT~80 MResNet, no language modelDirect chunk regressionAY-Robots catalog
OpenVLA7 BLlama 2 7 B, DINOv2 and SigLIP encodersAutoregressive action tokensarXiv 2406.09246

दोन पंक्तींवर चर्चा करणे योग्य आहे. अंदाजे 80 M वर येथील इतर सर्व मॉडेल्सपेक्षा लहान आहे पण त्यात भाषा मॉडेल नाही, त्यामुळे ते VLA नाही: ते एकच कार्य शिकते आणि त्याला दुसरे कार्य करण्यास सांगितले जाऊ शकत नाही. 27 M वर T5-Base टेक्स्ट एन्कोडरद्वारे कंडिशन केलेले आहे, LLM बॅकबोनद्वारे नाही. चांगले बेसलाइन आहेत, परंतु दोन्हीपैकी कोणतेही लेबल सूचित करते त्याप्रमाणे सूचनांचे पालन करत नाहीत.

1 B ची मर्यादा मनमानी आहे

TinyVLA-H, मुख्य परिणाम देणारे व्हेरिएंट, 1.3 B आहे आणि या मर्यादेच्या वर आहे. महत्वाचा प्रश्न हा आहे की प्रशिक्षण दरम्यान मॉडेल 24 GB मध्ये बसते का आणि इन्फरन्सवेळी तुमच्या नियंत्रण दरावर परिणाम करते का. तुम्ही येथे प्रशिक्षित करू शकता अशा पाच पॉलिसी पॉलिसीज पेजवर आहेत; TinyVLA ची एरिना एंट्री आहे जर तुम्हाला त्याचे आकडे इतरांच्या शेजारी हवे असतील.

TinyVLA: वेग हेडमधून येतो, बॅकबोनमधून नाही

स्पष्टपणे असे दिसते की त्यांनी लँग्वेज मॉडेल लहान केले, त्यामुळे ते वेगवान झाले. पेपरमधील ॲब्लेशन याच्या उलट सांगते. OpenVLA च्या 7 B बॅकबोनला अंदाजे 1 B बॅकबोनने बदलल्याने प्रति-ॲक्शन प्रेडिक्शन 292 ms वरून 140 ms पर्यंत कमी झाले, म्हणजे 2x फायदा झाला. TinyVLA-H, समान पॅरामीटर संख्येसह, त्याच कार्डवर 14 ms मध्ये चालते. इतर 10x ॲक्शन हेडमुळे आहे.

मॉडेलप्रति-ॲक्शन प्रेडिक्शनयावर मोजले
OpenVLA-7B292 mssingle A6000
OpenVLA-1B, TinyVLA च्या बॅकबोनने बदलले140 mssingle A6000
TinyVLA-1B (TinyVLA-H)14 mssingle A6000

OpenVLA लँग्वेज मॉडेल हेडद्वारे, प्रत्येक ॲक्शन डायमेन्शनसाठी एक, ऑटोरेग्रेसिव्हली डिस्क्रीटाइज्ड टोकन्स म्हणून ॲक्शन्स उत्सर्जित करते. TinyVLA एक डिफ्यूजन डिकोडर जोडते जे संपूर्ण चंक एकाच वेळी तयार करते. टेबल V मध्ये TinyVLA-H मधील आर्किटेक्चर आहे आणि त्याच पाच रिअल-रोबोट टास्कवर फक्त हेड बदलले आहे. हा दोन्ही पेपर्समधील सर्वात स्पष्ट पुरावा आहे, जो या युक्तिवादाला समर्थन देतो की flow matching पॉलिसीज बनवतात, आणि याचे कारण Pi0 टोकन डिकोडिंगपासून दूर गेले.

TinyVLA-H वरील हेडटेनिस ठेवणेमग पलटनेक्यूब्स रचणेड्रॉवर बंद करणेबॉक्स उघडणे
डिफ्यूजन (ड्रॉइड_डिफ्यूजन)90.098.398.396.786.7
ॲक्शन चंकिंग ट्रान्सफॉर्मर13.38.38.313.323.3
मल्टी-लेयर परसेप्ट्रॉन00000
TinyVLA संख्या काय दर्शवतात

292 / 140 / 14 ms चे आकडे टेबल IV मध्ये आहेत, सर्व एका A6000 वर. ते प्रति ॲक्शन प्रेडिक्शन आहेत आणि कॅमेरा कॅप्चर, प्रीप्रोसेसिंग आणि सर्व्होना सिरीयल राईट वगळतात. प्रकाशित लेटन्सीला नेहमी खालची मर्यादा माना, कधीही नियंत्रण दर मानू नका. आमच्या स्वतःच्या संख्यांना तीच मर्यादा आहे: इन्फरन्स लेटन्सी पहा.

TinyVLA ने काय गुण मिळवले

बेंचमार्कप्रोटोकॉलTinyVLA-Hबेसलाईन्स
मेटावर्ल्ड, 50 कार्ये, सिममल्टी-टास्क, 50 डेमो, 3 सीड्सकठीणतेनुसार 77.6 / 21.5 / 11.4 / 15.8, सरासरी 31.6डिफ्यूजन पॉलिसी सरासरी 10.5
वास्तविक फ्रँका पांडा, 5 कार्येप्रति कार्य 100 ट्रॅजेक्टरीज, 20 चाचण्या94.0 सरासरीOpenVLA 68.3, डिफ्यूजन पॉलिसी 35.3
बायमॅन्युअल UR5, 3 कार्येमल्टी-टास्क, प्रति कार्य 10 चाचण्या76.7 / 36.7 / 30.0OpenVLA 0 / 0 / 0, डिफ्यूजन पॉलिसी 40.3 / 31.3 / 43.0

द्वि-हस्त पंक्तीला पेपरने स्वतःच एक कंटाळवाणे स्पष्टीकरण दिले आहे: OpenVLA हे Open X-Embodiment वर पूर्व-प्रशिक्षित आहे, ज्यात पूर्णपणे सिंगल-आर्म डेटा असतो, त्यामुळे दोन-आर्म ॲक्शन स्पेस वितरणाबाहेर आहे आणि त्याला शून्य गुण मिळतात. डिफ्यूजन पॉलिसी बेसलाइनने त्या तीनपैकी दोन कार्यांमध्ये TinyVLA-H ला हरवले. पार्श्वभूमी: Open X-Embodiment वरील लेख.

AY-Robots ॲरेना लीडरबोर्ड, 85 VLA मॉडेल्सची 332 बेंचमार्क परिणामांसह क्रमवारी लावता येणारी सारणी, प्रत्येक मूल्य ज्या पेपर किंवा मॉडेल कार्डमधून आले आहे त्याच्याशी जोडलेले आहे
क्रॉस-मॉडेल बेंचमार्क संख्यांची तुलना तेव्हाच करता येते जेव्हा प्रत्येक संख्या कुठून आली हे तुम्ही पाहू शकता.

TinyVLA रेपो, ऑगस्ट 2026 पर्यंत

पेपर चांगला आहे. कोड हा संशोधनाचा एक भाग आहे. रिपॉझिटरी github.com/liyaxuanliyaxuan/TinyVLA आहे; त्याच्या README नुसार कोड 17 फेब्रुवारी 2025 रोजी प्रसिद्ध झाला आणि शेवटचा कमिट 11 मार्च 2025 रोजी झाला. एखादा पेपर पुनरुत्पादित करण्यासाठी हे ठीक आहे, परंतु जर तुम्हाला एक देखरेख केलेली लायब्ररी हवी असेल तर ही एक समस्या आहे.

bash
git clone https://github.com/liyaxuanliyaxuan/TinyVLA
conda create -n tinyvla python=3.10 -y
conda activate tinyvla
pip install --upgrade pip
pip install -r requirements.txt
cd policy_heads && pip install -e .
cd ../llava-pythia && pip install -e .
TinyVLA README मधील इन्स्टॉल क्रम, 2026-08-23 रोजी रिपॉझिटरीवर तपासला गेला.
डिपेंडन्सी पिन्स हा एक दिवस वाया घालवणारा सापळा आहे

requirements.txt मध्ये torch==2.0.1, transformers==4.37.1, deepspeed==0.9.5, peft==0.4.0, diffusers==0.11.1, numpy==1.24.4, आणि CUDA स्टॅक 11.x व्हील्सवर पिन केले आहे: nvidia-cuda-runtime-cu11==11.7.99, nvidia-cudnn-cu11==8.5.0.96, triton==2.0.0. README मध्ये Python 3.10 ची मागणी आहे; lerobot 0.6.1 ला 3.12 किंवा नवीन आवृत्ती लागते, त्यामुळे हे दोन्ही एकाच एन्व्हायर्नमेंटमध्ये असू शकत नाहीत. तुमच्या GPU जनरेशनसाठी torch 2.0.1 बिल्ड अस्तित्वात आहे का ते आधी तपासा. जर एखादे रन VRAM मुळे थांबले, तर मेमरी-बाहेरची चेकलिस्ट अंदाज करण्यापेक्षा जलद आहे.

TinyVLA LeRobot डेटासेट्स देखील वाचत नाही. त्याचे स्वरूप ACT-शैलीतील HDF5 आहे: ॲक्शन, language_raw, आणि मल्टी-व्ह्यू इमेजेस, joint_positions, qpos आणि qvel सह एक ऑब्झर्व्हेशन्स ग्रुप. रिपॉझिटरी RLDS इनपुटसाठी data_utils/rlds_to_h5py.py पुरवते, आणि प्रत्येक टास्क aloha_scripts/constants.py मध्ये त्याच्या dataset_dir, episode_len आणि camera_names सह हाताने नोंदणीकृत आहे. जर तुमचे एपिसोड्स lerobot किंवा डेस्कटॉप क्लायंट मधून आले असतील, तर रूपांतरणाची जबाबदारी तुमची आहे.

bash
# scripts/train.sh, the real flags from the repository
ACTION_HEAD=droid_diffusion

deepspeed --master_port 29600 --num_gpus=8 --num_nodes=1 ./train_tinyvla.py \
  --deepspeed scripts/zero2.json \
  --lora_enable True \
  --lora_module 'vit llm' \
  --lora_r 64 \
  --lora_alpha 256 \
  --non_lora_lr 2e-5 \
  --task_name "example_task_config" \
  --model_name_or_path /path/to/pretrained_vlm \
  --freeze_vision_tower True \
  --freeze_backbone True \
  --bf16 True \
  --max_steps 10000 \
  --per_device_train_batch_size 32 \
  --gradient_accumulation_steps 1 \
  --learning_rate 2e-4 \
  --lr_scheduler_type "cosine" \
  --warmup_ratio 0.005 \
  --save_steps 1000 \
  --action_head_type $ACTION_HEAD \
  --use_state True \
  --window_size 6
scripts/train.sh मधून संक्षिप्त. वरील प्रत्येक फ्लॅग आणि व्हॅल्यू शिप केलेल्या फाइलमध्ये आहे.
  • --num_gpus=8 हे आठ-कार्ड नोड गृहीत धरते. ते 1 वर सेट करा आणि बॅच आकार 32 च्या खाली खूप कमी करा. कोणतीही सिंगल-GPU आवृत्ती अपस्ट्रीम पाठवली जात नाही, त्यामुळे 4090 वर कमांड जशीच्या तशी चालवता येणार नाही.
  • --deepspeed scripts/zero2.json हे एका फाईलकडे निर्देश करते जी टॉप-लेव्हल स्क्रिप्ट्स डिरेक्टरीमध्ये नाही. DeepSpeed कॉन्फिग्स llava-pythia/scripts/zero2.json येथे उपलब्ध आहेत. तुमच्या पहिल्या रनपूर्वी पाथ दुरुस्त करा.
  • README नुसार आउटपुट डिरेक्टरीच्या नावात llava_pythia असावे, तसेच LoRA सक्षम असल्यास lora असावे.
  • बॅकबोन स्वतंत्रपणे डाउनलोड करावे लागते: lesjie/Llava-Pythia-400M, -700M किंवा -1.3B. lerobot/smolvla_base कडे निर्देश केल्याप्रमाणे तुम्ही पॉलिसी निर्देशित करू शकता असे कोणतेही सिंगल बेस चेकपॉईंट नाही.

SmolVLA: 1 B पेक्षा कमी पॅरामीटर्स असलेले मॉडेल जे तुम्ही आज दुपारी चालवू शकता

SmolVLA एका देखरेख केलेल्या लायब्ररीमध्ये तेच युक्तिवाद करते. हे SmolVLM2-500M-Video-Instruct बॅकबोनवर 450 M पॅरामीटर्सचे आहे आणि त्याची कार्यक्षमता configuration_smolvla.py मधून वाचता येणाऱ्या सेटिंग्जमधून येते, लहान असल्याच्या दाव्यामुळे नाही.

configuration_smolvla.py मधील सेटिंगडिफॉल्टयाचे फायदे
num_vlm_layers16फक्त पहिले 16 लँग्वेज मॉडेल लेयर्स चालतात
expert_width_multiplier0.75ॲक्शन एक्सपर्टची हिडन साईज VLM च्या 75 टक्के आहे
self_attn_every_n_layers2सेल्फ-अटेन्शन क्रॉस-अटेन्शनसह इंटरलीव्ह केलेले
chunk_size / n_action_steps50 / 50एका पासमध्ये 50 ॲक्शन्स उत्सर्जित होतात आणि सर्व 50 कार्यान्वित होतात
num_steps10फ्लो मॅचिंग डिनॉइजिंग 10 स्टेप्सवर निश्चित केले आहे
tokenizer_max_length48सूचना 48 टोकन्सपर्यंत ट्रंकेट केली जाते
freeze_vision_encoder / train_expert_onlyTrue / Trueफाईन-ट्यूनिंगमुळे एक्सपर्ट हलतो, व्हिजन टॉवर नाही
optimizer_lr, warmup, decay1e-4, 1000 steps, to 2.5e-6 over 30000पेपरमधील रेसिपी नाही: त्याच्या प्रीट्रेनिंगमध्ये 200000 स्टेप्सवर 100-स्टेप वॉर्मअप वापरले होते

प्रीट्रेनिंगमध्ये 481 कम्युनिटी LeRobot डेटासेट, 22.9 K एपिसोड्स आणि 10.6 M फ्रेम्स 4 GPUs वर, 256 च्या ग्लोबल बॅचमध्ये 200000 स्टेप्स वापरल्या गेल्या; पेपरनुसार संपूर्ण प्रकल्पाला सुमारे 30 K GPU तास लागले. एक लक्षात घेण्यासारखा आकडा: Hugging Face च्या लॉन्च ब्लॉगमध्ये 487 क्युरेटेड डेटासेट नमूद केले आहेत, तर पेपरच्या टेबलमध्ये 481 आहेत. आम्ही पेपरमधील आकडेवारी वापरतो आणि या मतभेदाची नोंद घेतो.

AY-Robots वरील SmolVLA मॉडेल पेज, जे पॅरामीटर संख्या, 24 GB GPU टियर, प्रति ॲक्शन स्टेप इन्फरन्स लेटन्सी आणि किमान एपिसोड संख्या दर्शवते
प्लॅटफॉर्मचे SmolVLA पेज: 450 M पॅरामीटर्स, प्रति ॲक्शन स्टेप 245 ms, RTX 4090 टियर, किमान 30 एपिसोड्स.
बेंचमार्कSmolVLA 0.45 BSmolVLA 2.25 BPi0ACT
LIBERO सरासरी, मल्टी-टास्क87.388.7586.0 (3.3 B, robotics-pretrained)-
Meta-World सरासरी, मल्टी-टास्क57.368.2447.9 (3.5 B, robotics-pretrained)-
वास्तविक SO-100, 3 टास्क, मल्टी-टास्क प्रशिक्षण78.3-61.7 (3.5 B)-
वास्तविक SO-100, 3 टास्क, सिंगल-टास्क, रोबोटिक्स प्रीट्रेनिंग नाही40.0--48.3
SO-101 लेगो पिक-प्लेस, सिंगल-टास्क, इन डिस्ट्रिब्युशन90--70
SO-101 लेगो पिक-प्लेस, सिंगल-टास्क, आउट ऑफ डिस्ट्रिब्युशन50--40
संपूर्ण टेबल वाचा, केवळ हेडलाइनची ओळ नाही

LIBERO हे सिम्युलेशन आहे आणि आता तिथे सर्व सक्षम मॉडेल्स ऐंशीच्या दशकात स्कोअर करतात. वास्तविक SO-100 ची ओळ, जिथे 450 M मॉडेल 3.5 B मॉडेलला 16.6 गुणांनी हरवते, ती अधिक मनोरंजक आहे; त्याखालील ओळ हे त्याचे प्रतिसंतुलन आहे. कम्युनिटी प्रीट्रेनिंग आणि मल्टी-टास्क प्रशिक्षण काढून टाकल्यास तेच मॉडेल ACT च्या खाली 40.0 पर्यंत घसरते. लहान मॉडेल आपोआप वाईट नसते, ते चांगले असते असे नाही, हा एक बचाव करण्याजोगा दावा आहे.

एका घटनेमुळे मदत होते: SmolVLA पेपरच्या मेटा-वर्ल्ड टेबलमध्ये TinyVLA चे स्वतःचे प्रकाशित आकडे बेसलाइन म्हणून आहेत, त्यामुळे एकदा दोन्ही मॉडेल्स एकाच टेबलमध्ये आहेत, SmolVLA-0.45B 57.3 वर TinyVLA-H 31.6 च्या तुलनेत. हे असेही सांगते की SmolVLA चे प्रशिक्षण Pi0 पेक्षा सुमारे 40 टक्के वेगाने आणि 6 पट कमी मेमरीमध्ये होते. हे सर्व SmolVLA च्या लेखकांकडून आले आहे; अरेना नोंद प्रत्येक मूल्याला त्याच्या स्रोताशी जोडते.

SmolVLA आपला वेळ कुठे घालवते

AY-Robots SmolVLA ला प्रति ॲक्शन स्टेप 245 ms आणि ACT 20 ms वर पॉलिसी कॅटलॉग मध्ये सूचीबद्ध करते. TinyVLA प्रति ॲक्शन प्रेडिक्शन 14 ms नोंदवते. हे आकडे तुलना करण्यायोग्य नाहीत, आणि त्यांची तुलना करणे ही या विषयातील सर्वात सामान्य चूक आहे: काहीवेळा एक फॉरवर्ड पास, काहीवेळा तो पास एका चंकमध्ये विभागला जातो एकदा ॲक्शन चंकिंगमुळे तो खर्च विभागला जातो.

  • SmolVLA प्रति फॉरवर्ड पास 50 ॲक्शन्स उत्सर्जित करते आणि सर्व 50 कार्यान्वित करते. पेपरमध्ये वास्तविक रोबोट्सवर वापरल्या जाणाऱ्या 30 fps दराने, एक इन्फरन्स सुमारे 1.7 सेकंदांच्या गतीला कव्हर करते.
  • अतुल्यकालिक इन्फरन्स सध्याचा चंक कार्यान्वित असताना पुढील चंकची गणना करते: 13.75 s तुल्यकालिकच्या तुलनेत 9.7 s सरासरी कार्य पूर्णता, अंदाजे 30 टक्के वेगवान, आणि निश्चित 60-सेकंदांच्या विंडोमध्ये 9 च्या तुलनेत 19 पिक-अँड-प्लेस सायकल.
  • यश दर चांगले नसून तुलना करण्यायोग्य होते, 73.3 अतुल्यकालिकच्या तुलनेत 78.3 तुल्यकालिक. अतुल्यकालिकता थ्रूपुट वाढवते, अचूकता नाही.
  • चंकिंगमुळे कम्प्यूट लेटन्सी लपते, नेटवर्क लेटन्सी नाही, आणि यामुळे पॉलिसी कमी प्रतिक्रियाशील होते कारण ती 50 ॲक्शन्ससाठी वचनबद्ध असते.
रिमोट इन्फरन्स विनामूल्य नाही, आणि कोणतेही प्लॅटफॉर्म भौतिकशास्त्र निश्चित करत नाही

AY-Robots स्वयंचलितपणे क्लाउड GPU पॉड प्रदान करू शकतात जे तुमच्या पॉलिसीला सेवा देते, तर स्थानिक रोबोट क्लायंट त्या एंडपॉइंटशी संवाद साधतो. हा पॉड निष्क्रिय वॉचडॉगसह येतो, ज्यामुळे तो शांतपणे बिलिंग करण्याऐवजी स्वतःला नष्ट करतो. सार्वजनिक-इंटरनेट राउंड ट्रिप काढून टाकणे हे त्याचे कार्य नाही. येथील पाच पॉलिसींमधील कंट्रोल लूप कोणत्याही नेटवर्कशिवाय प्रति ॲक्शन स्टेप 20 ते 485 ms आहे, त्यामुळे रिमोट इन्फरन्स हळू पिक-अँड-प्लेससाठी व्यवहार्य आहे, जलद प्रतिक्रियाशील हालचालींसाठी नाही.

AY-Robots पॉलिसी तुलना सारणी GR00T N1.7, GR00T N1.5, Pi0.5, SmolVLA आणि ACT दर्शवते, ज्यात पॅरामीटर संख्या, आवश्यक GPU टियर, प्रति ॲक्शन स्टेप इन्फरन्स लेटन्सी आणि प्रत्येकाला आवश्यक असलेल्या एपिसोडची किमान संख्या समाविष्ट आहे.
SmolVLA (~450 M) आणि ACT (~80 M) हे दोन 24 GB कार्डमध्ये बसतात. इतर तिघांना A100 किंवा H100 80 GB ची आवश्यकता आहे.

एका ग्राहक कार्डवर SmolVLA चे फाइन-ट्यूनिंग

मॅन्युअल मार्ग, lerobot 0.6.1 वर, 23 ऑगस्ट 2026 पर्यंतची सध्याची PyPI रिलीज. खालील सर्व माहिती त्याच दिवशी मिळवलेल्या Hugging Face lerobot SmolVLA डॉक्युमेंटेशनमधून आली आहे; मार्गदर्शित आवृत्ती अधिक सोपी आहे.

  1. 1
    smolvla एक्स्ट्रासह lerobot इन्स्टॉल करा

    SmolVLA च्या डिपेंडन्सीज (dependencies) एक पर्यायी अतिरिक्त भाग आहेत, बेस इन्स्टॉलचा भाग नाहीत. त्याशिवाय इन्स्टॉल करून पॉलिसीचा प्रकार अज्ञात का आहे याचा विचार करण्यात अर्धा तास वाया घालवणे सामान्य आहे.

    bash
    git clone https://github.com/huggingface/lerobot.git
    cd lerobot
    pip install -e ".[smolvla]"
  2. 2
    पुरेशा एपिसोड्ससह डेटासेट मिळवा

    डॉक्युमेंट्समध्ये सुमारे 50 एपिसोड्सची शिफारस केली आहे आणि असे म्हटले आहे की 25 एपिसोड्ससह तेच कार्य पुरेसे नव्हते. AY-Robots ने किमान 30 एपिसोड्स निश्चित केले आहेत. तुमचे स्वतःचे रेकॉर्ड करा, किंवा डेटासेट डिरेक्टरीमधून सुरुवात करा.

    bash
    # any LeRobotDataset on the Hub works as --dataset.repo_id
    # lerobot/svla_so100_pickplace is the paper's own 50-episode set:
    # 5 cube positions, 10 episodes each
  3. 3
    फाइन-ट्यून सुरू करा

    lerobot मार्गदर्शकामधील कमांड, अपरिवर्तित. डॉक्युमेंट्सनुसार 20000 स्टेप्स एका A100 वर अंदाजे 4 तास लागतात. 24 GB कार्डवर, जास्त वेळ लागेल अशी अपेक्षा करा आणि ते मोजा.

    bash
    cd lerobot && lerobot-train \
      --policy.path=lerobot/smolvla_base \
      --dataset.repo_id=${HF_USER}/mydataset \
      --batch_size=64 \
      --steps=20000 \
      --output_dir=outputs/train/my_smolvla \
      --job_name=my_smolvla_training \
      --policy.device=cuda \
      --wandb.enable=true
  4. 4
    बॅच साईज फिट होईपर्यंत कमी करा

    batch_size=64 हे एक डॉक्युमेंटेड उदाहरण आहे, तुमच्या कार्डबद्दलचे वचन नाही. डॉक्युमेंट्समध्ये लहानपासून सुरुवात करण्याचा आणि लोडिंग वेळ कमी असताना वाढवण्याचा सल्ला दिला आहे.

    bash
    lerobot-train --help
  5. 5
    आर्मवर चेकपॉईंट रोल आउट करा

    तीच लायब्ररी, एकच कमांड. रिअल-टाइम चंकिंग फ्लॅग्स डॉक्युमेंट्समध्ये कमेंट केलेले आहेत आणि कमी-पॉवर हार्डवेअरवर वापरण्यासाठी ते उपयुक्त आहेत.

    bash
    lerobot-rollout \
      --strategy.type=base \
      --robot.type=so101_follower \
      --robot.port=/dev/ttyACM0 \
      --robot.id=my_blue_follower_arm \
      --robot.cameras="{ front: {type: opencv, index_or_path: 8, width: 640, height: 480, fps: 30}}" \
      --task="Grasp a lego block and put it in the bin." \
      --policy.path=HF_USER/FINETUNE_MODEL_NAME
चेकपॉईंट हे डिलिवरेबल आहे

तुम्ही कोणताही मार्ग निवडला तरी, तुम्हाला एक चेकपॉईंट आणि ते तयार करणारी कॉन्फिग मिळते. डेटासेट रिव्हिजन, स्टेप काउंट आणि सीड त्याच्यासोबत ठेवा. lerobot डीफॉल्टनुसार सीड 1000 वापरतो; GR00T चा फाइन-ट्यूनिंग एंट्री पॉइंट कोणताही सीड उघड करत नाही, त्यामुळे ते रन बिट-फॉर-बिट रिप्रोड्यूसिबल नाहीत. ट्रेनिंग डॉक्युमेंट्समध्ये मेकॅनिक्स पहा.

लहान VLA आर्मवर मिळवण्याचे दोन मार्ग

मशीन आणि फेल्युअर मोड्स तुमच्या मालकीचे आहेत. SmolVLA साठी हे वाजवी आहे: एक pip एक्स्ट्रा, एक ट्रेन कमांड, एक रोलआउट कमांड. TinyVLA साठी हे फ्रोझन पिन्स, तुटलेला DeepSpeed पाथ आणि तुम्ही स्वतः लिहिलेले डेटा रूपांतरण असलेले संशोधन पुनरुत्पादन आहे.

  1. 24 GB कार्ड मिळवा, 30 ते 50 एपिसोड्स रेकॉर्ड करा, कॅमेरा स्ट्रीम्स फ्रेम बाय फ्रेम सत्यापित करा.
  2. pip install -e ".[smolvla]" करा, lerobot/smolvla_base विरुद्ध lerobot-train करा, नंतर आर्म जोडलेल्या मशीनवर चेकपॉईंट सर्व्ह करा.
  3. TinyVLA साठी: वेगळे conda env, डेटा HDF5 मध्ये रूपांतरित करा, constants.py मध्ये टास्क रजिस्टर करा, zero2.json पाथ दुरुस्त करा, train.sh आठ GPUs वरून एकावर कमी करा.
फायदे
  • कार्डचे पैसे भरल्यानंतर प्रति-तास बिलिंग नाही.
  • इन्फरन्स सर्व्होच्या शेजारी बसते, जलद कंट्रोल लूप मिळवण्याचा हा एकमेव मार्ग आहे.
  • तुम्ही पॉलिसी कोड पॅच करू शकता आणि TinyVLA फक्त याच मार्गाने उपलब्ध आहे.
ट्रेड-ऑफ्स
  • 4090 प्रत्येक ~3 B पॉलिसीला वगळते, त्यामुळे GR00T N1.7 किंवा Pi0.5 विरुद्ध कोणतीही स्थानिक तुलना नाही.
  • एनव्हायरनमेंट सेटअप हे खरे काम आहे. TinyVLA च्या पिन्ससाठीच एक दिवस लागू शकतो.
  • कोणतीही रांग नाही, पुन्हा प्रयत्न नाही, चेकपॉईंट स्टोरेज नाही. 14000 व्या स्टेपवर रीबूट झाल्यास पुन्हा सुरुवात करावी लागेल.

जेव्हा लहान मॉडेल चुकीचा पर्याय असतो

सारांशांपेक्षा दोन्ही शोधनिबंध येथे अधिक काळजीपूर्वक आहेत. TinyVLA चे अपयश विश्लेषण विशिष्ट आहे: 0.4 B प्रकाराने सूचना चुकीच्या पद्धतीने वाचल्यामुळे तीन वेळा अपयश आले, ज्याचे श्रेय लेखकांनी लहान VLM मधील मर्यादित भाषा समजाला दिले आहे, आणि तो मोड 1.3 B वर अदृश्य झाला. SmolVLA दुसऱ्या टोकापासून समान वक्र दर्शवते: समान आर्किटेक्चरची 2.25 B आवृत्ती LIBERO वर 88.75 आणि Meta-World वर 68.24 गुण मिळवते, तर 0.45 B मॉडेलसाठी 87.3 आणि 57.3 गुण आहेत.

1 B पेक्षा कमी VLA निवडणे
जिथे ते जिंकते
  • 24 GB कार्डमध्ये बसते, ज्यामुळे प्रयोगाचा खर्च दहा डॉलर्सवरून काही डॉलर्सवर येतो.
  • आर्मच्या शेजारी चालवण्यासाठी पुरेसे वेगवान, त्यामुळे नियंत्रण लूपमध्ये नेटवर्क हॉप नाही.
  • एका व्यक्तीने रेकॉर्ड केलेल्या डेटावर फाइन-ट्यून होते, हजारो ऐवजी डझनभर एपिसोड्स.
  • SmolVLA चे वजन, डेटा सूची आणि कोड सार्वजनिक आहेत, त्यामुळे खराब परिणाम डीबग करण्यायोग्य आहे.
जिथे ते हरते
  • कमकुवत सूचना पालन: कमी भाषा पॅरामीटर्स, समान संदर्भ अभिव्यक्ती वेगळे करण्याची कमी क्षमता.
  • तुम्ही रेकॉर्ड न केलेल्या सेटअप्ससाठी कमी स्थानिक आणि दृश्य सामान्यीकरण.
  • डेटासेट दोषांसाठी अधिक संवेदनशील, कमी पूर्व-प्रशिक्षणावर अवलंबून राहण्यासाठी.
  • मल्टी-टास्क आणि दीर्घ-क्षितिज कार्य अजूनही मोठ्या मॉडेल्सना प्राधान्य देते, ज्यात SmolVLA चा स्वतःचा 2.25 B प्रकार समाविष्ट आहे.

चालवण्यासारखी तुलना TinyVLA विरुद्ध SmolVLA नाही. ती SmolVLA विरुद्ध ACT तुमच्या स्वतःच्या कार्यावर आहे, आणि SmolVLA पेपर हे त्याचे कारण आहे. रोबोटिक्स पूर्व-प्रशिक्षणाशिवाय एकल-कार्य प्रशिक्षित, SmolVLA ने तीन SO-100 कार्यांमध्ये सरासरी 40.0 गुण मिळवले, जिथे एकल-कार्य ACT ने 48.3 गुण मिळवले. समुदाय पूर्व-प्रशिक्षण आणि मल्टी-टास्क प्रशिक्षणामुळे ते 78.3 पर्यंत पोहोचते, केवळ आर्किटेक्चरमुळे नाही. SO-101 लेगो कार्यावर, दोन्ही एकल-कार्य असताना, SmolVLA जिंकते: वितरणात 70 च्या तुलनेत 90. नंतर SmolVLA विरुद्ध Pi0.5 जर बजेट परवानगी देत असेल.

या आकारात, डेटासेट परिणाम ठरवतो

खराब डेटासाठी कव्हर करण्यासाठी कमी पूर्व-प्रशिक्षण असते, त्यामुळे सदोष डेटासेटवरील स्वच्छ लॉस कर्व्ह तुम्हाला दोष आत्मविश्वासाने पुनरुत्पादित करणारी पॉलिसी देतो. lerobot डॉक्स संरचनेबद्दल स्पष्ट आहेत: 5 क्यूब पोझिशन्समध्ये 50 एपिसोड्स, प्रत्येक पोझिशनमध्ये 10, काम केले; 25 ने नाही. जर लॉस ठीक दिसत असेल आणि आर्म काहीही उपयुक्त करत नसेल, तर येथून सुरुवात करा लॉस कमी होतो, पॉलिसी काहीही करत नाही, पॉलिसी फक्त एका सेटअपमध्ये काम करते किंवा प्रत्यक्षात वापरण्यायोग्य VLA प्रशिक्षण डेटा गोळा करणे.

पाच पॉलिसी, एक तुलना सारणी

GR00T N1.7, GR00T N1.5, Pi0.5, SmolVLA आणि ACT वास्तविक पॅरामीटर संख्या, प्रति ॲक्शन स्टेप इन्फरन्स लेटन्सी, प्रत्येकाला आवश्यक असलेला GPU टियर आणि काहीही उपयुक्त करण्यापूर्वी आवश्यक असलेली किमान एपिसोड संख्या.

पॉलिसींची तुलना करा

तुम्ही कृती करू शकता असे निर्णय सारणी

तुमची परिस्थितीयापासून सुरुवात कराका
एक कार्य, चांगले प्रात्यक्षिके, कोणतीही भाषा नाहीACT~80 M, 20 ms, 24 GB कार्ड, डाउनलोड करण्यासाठी कोणताही बेस मॉडेल नाही
काही संबंधित कार्ये, प्रत्येकासाठी एक सूचनाSmolVLA450 M, lerobot मध्ये, किमान 30 एपिसोड, प्रति रन 1 ते 3 USD
विशेषतः TinyVLA परिणाम पुनरुत्पादित करणेTinyVLA-B किंवा TinyVLA-Hरेपो हा एकमेव मार्ग आहे: वेगळे वातावरण, रूपांतरित डेटा
मल्टी-टास्क, विविध सूचना, A100 बजेटGR00T N1.7 किंवा Pi0.5~3 B, प्रति स्टेप 152 ms आणि 485 ms, प्रति रन 4 ते 12 USD
अजून रोबोट नाहीवास्तविक आर्म चालवारांग-आधारित लाइव्ह आर्मला कोणत्याही साइनअपची आणि हार्डवेअरची आवश्यकता नाही

शेवटच्या पंक्तीसाठी, थेट आर्म ब्राउझरमधून खाते नसताना तुम्ही चालवू शकता अशा भौतिक SO-100 चे प्रवाह करतो, आणि सुरू करण्याचे तीन मार्ग उर्वरित गोष्टींचा समावेश करतो. SO-100 येथे संदर्भ आर्म आहे, अंदाजे 110 ते 150 EUR भागांमध्ये, सोबत एक संपूर्ण सेटअप मार्गदर्शक.

सब-1 B मॉडेल्सनंतर काय येते

पॅरामीटर संख्या कमी करणे हा VLA स्वस्त करण्याचा एक मार्ग आहे आणि तो स्पष्टपणे जिंकणारा मार्ग नाही. OpenVLA-OFT (arXiv 2502.19645) 7 B बॅकबोन कायम ठेवते आणि केवळ क्रिया कशा डिकोड केल्या जातात हे बदलते, ज्यामुळे क्रिया निर्मिती थ्रूपुटमध्ये 26x वाढ आणि LIBERO 76.5 वरून 97.1 टक्क्यांपर्यंत वाढल्याचे नोंदवले आहे. BitVLA (arXiv 2506.07530) 1-बिट BitNet b1.58 2B4T बॅकबोनचे प्रत्येक वजन टर्नरी बनवते, ज्यामुळे 11.0x कमी मेमरी आणि 4.4x कमी एंड-टू-एंड लेटन्सी नोंदवली जाते, तर पूर्ण-प्रिसिजन OpenVLA-OFT शी जुळते. X-VLA-0.9B (arXiv 2510.10274) फ्लो मॅचिंगसह 1 B लाईनवर आहे.

सामान्य धागा: लेटन्सी भाषा मॉडेलमध्ये नाही, तर ॲक्शन डिकोडरमध्ये आहे. एखादी पॉलिसी किती पॅरामीटर्सची आहे हे विचारण्यापूर्वी ती क्रिया कशी उत्सर्जित करते हे विचारा. arena मध्ये 85 मॉडेल्स आणि 332 परिणाम आहेत, प्रत्येक त्याच्या स्त्रोताशी जोडलेला आहे; एक व्यापक विहंगावलोकन आमच्या VLA परिचयात.

मी RTX 4090 वर SmolVLA ला फाइन-ट्यून करू शकतो का?

होय. SmolVLA मध्ये 450 M पॅरामीटर्स आहेत आणि AY-Robots ते RTX 4090 / 24 GB टियरवर चालवते. lerobot उदाहरण --batch_size=64 वापरते, जे तुमच्या कार्डसाठी हमी नसून एक उदाहरण आहे; डॉक्समध्ये लहान सुरुवात करून लोडिंग वेळ कमी राहीपर्यंत वाढवण्याचा सल्ला दिला आहे. A100 वर 20000 स्टेप्ससाठी डॉक्समध्ये नमूद केलेल्या अंदाजे 4 तासांपेक्षा जास्त वेळ अपेक्षित आहे.

TinyVLA lerobot मध्ये किंवा AY-Robots वर उपलब्ध आहे का?

दोन्हीसाठी नाही. TinyVLA फक्त त्याच्या संशोधन रिपॉझिटरीमध्ये आहे, शेवटची कमिट 11 मार्च 2025 रोजी झाली आहे, आणि त्याचे स्वरूप LeRobot ऐवजी ACT-शैलीतील HDF5 आहे. AY-Robots GR00T N1.7, GR00T N1.5, Pi0.5, SmolVLA आणि ACT ला प्रशिक्षित करते. जर तुम्हाला TinyVLA हवे असेल, तर तुम्हाला ते स्वतः तयार करावे लागेल आणि scripts/train.sh मधील DeepSpeed कॉन्फिग पाथ आधी दुरुस्त करावा लागेल.

450 M मॉडेल खरोखरच 3 B मॉडेलशी स्पर्धात्मक आहे का?

लेखकांच्या स्वतःच्या बेंचमार्कमध्ये, होय: LIBERO वर 87.3 विरुद्ध 86.0, 3.3 B च्या रोबोटिक्स-प्रशिक्षित Pi0 च्या तुलनेत, आणि तीन वास्तविक SO-100 कार्यांवर 78.3 विरुद्ध 61.7, जिथे त्याच पेपरमध्ये Pi0 ला 3.5 B असे लेबल केले आहे. मर्यादा त्याच पेपरमध्ये आहे: रोबोटिक्स प्रीट्रेनिंगशिवाय सिंगल-टास्कमध्ये, SmolVLA 40.0 पर्यंत घसरते, जे ACT च्या 48.3 पेक्षा कमी आहे.

एक लहान VLA काहीतरी करण्यापूर्वी मला किती एपिसोड्सची आवश्यकता आहे?

AY-Robots SmolVLA साठी किमान 30 एपिसोड्स आणि ACT साठी किमान 50 एपिसोड्स सेट करते. lerobot डॉक्समध्ये सुमारे 50 ची शिफारस केली आहे आणि अहवाल दिला आहे की त्याच कार्यासाठी 25 पुरेसे नव्हते. संख्येइतकीच रचना देखील महत्त्वाची आहे: पेपरच्या सेटमध्ये 5 क्यूब पोझिशन्स वापरल्या होत्या, प्रत्येकी 10 एपिसोड्ससह.

प्रकाशित लेटन्सी संख्यांमध्ये इतका फरक का आहे?

ते वेगवेगळ्या गोष्टी मोजतात. TinyVLA A6000 वर प्रति ॲक्शन प्रेडिक्शन 14 ms नोंदवते; AY-Robots SmolVLA ला 245 ms आणि ACT ला प्रति ॲक्शन स्टेप 20 ms सूचीबद्ध करते. काही आकडे एका फॉरवर्ड पासला कव्हर करतात, काही 50-ॲक्शन चंकमध्ये पासला विभाजित करतात आणि कॅमेरा कॅप्चर किंवा सर्व्होमध्ये लिहिणे यापैकी जवळजवळ काहीही समाविष्ट करत नाहीत.

क्लाउड इन्फरन्स GPU समस्या सोडवते का?

अंशतः. AY-Robots एक पॉड आपोआप प्रोव्हिजन करते जे पॉलिसी सर्व्ह करते, तर स्थानिक क्लायंट त्या एंडपॉइंटशी संवाद साधतो, ज्यात निष्क्रिय वॉचडॉग असतो ज्यामुळे ते शांतपणे बिलिंग करण्याऐवजी स्वतःला नष्ट करते. ते सार्वजनिक-इंटरनेट राउंड ट्रिप काढू शकत नाही, आणि कंट्रोल लूप आधीच प्रति ॲक्शन स्टेप 20 ते 485 ms आहे. हळू पिक-अँड-प्लेससाठी ठीक आहे, परंतु जलद प्रतिक्रियाशील गतीसाठी नाही.

Sources

Ready for high-quality robotics data?

AY-Robots connects your robots to skilled operators worldwide.

Get Started