טבלת השוואת המדיניות של AY-Robots עם ספירת פרמטרים, רמות GPU וזמן השהיה של הסקה עבור GR00T N1.7, GR00T N1.5, Pi0.5, SmolVLA ו-ACT
SmolVLATinyVLAVLA קטןGPU לצרכניםLeRobot

מודלי VLA קטנים: TinyVLA, SmolVLA ומקרה התת-1B

AY-Robots ResearchAugust 23, 202619 דקות קריאה

TinyVLA ו-SmolVLA מציבים VLA עובד מתחת למיליארד פרמטרים. נתונים אמיתיים משני המאמרים, ברירות המחדל של LeRobot, זמן השהיה מדוד, ומה עולה הרצה על כרטיס 24 GB.

כמעט כל מודל ראייה-שפה-פעולה שנכתב עליו מניח כרטיס דאטה סנטר. OpenVLA הוא בעל 7 מיליארד פרמטרים. GR00T N1.7 ו-Pi0.5 הם בסביבות 3 מיליארד ודורשים A100 80 GB לכוונון עדין. אם הכרטיס על שולחנך הוא 4090, סוג מודל זה אינו בהישג יד.

שני מאמרים טוענים שאינך זקוק לכך. TinyVLA (arXiv 2409.12514, התקבל על ידי IEEE Robotics and Automation Letters בפברואר 2025) בונה VLA מליבה של 400 מיליון עד 1.3 מיליארד בתוספת ראש פעולה מבוסס דיפוזיה. SmolVLA (arXiv 2506.01844, הוגש ב-2 ביוני 2025) מגיע עם 450 מיליון פרמטרים עם משקלים פתוחים, נתונים פתוחים וסקריפט שרץ על כרטיס צרכני אחד. הנה מה ששניהם מדדו, והיכן שהטיעון של פחות מ-1 מיליארד מפסיק להיות תקף.

מה שאתה צריך לדעת

  • TinyVLA מגיע בשלושה גדלים: 422 מיליון בסך הכל עם 101 מיליון ניתנים לאימון, 740 מיליון עם 138 מיליון, 1.3 מיליארד עם 143 מיליון. רק שני הראשונים נמצאים מתחת ל-1 מיליארד.
  • טבלה IV שלו מודדת 14 ms לחיזוי פעולה עבור TinyVLA-1B על A6000 אחד, לעומת 292 ms עבור OpenVLA-7B ו-140 ms עבור OpenVLA-1B מוקטן.
  • הראש הוא זה שמחזיק את המהירות, לא הליבה: החלף את ראש הדיפוזיה של TinyVLA-H בראש ACT וחמש משימות הרובוט האמיתיות יורדות מממוצע של 94.0 לספרות בודדות. ראש MLP מקבל ציון 0 בכל מקום.
  • SmolVLA הוא 450 מיליון, כ-100 מיליון מתוכם מומחה הפעולה, שאומן מראש על 481 מערכי נתונים קהילתיים של LeRobot ו-10.6 מיליון פריימים. הוא מדווח על 87.3 ב-LIBERO לעומת 86.0 עבור Pi0 שאומן מראש לרובוטיקה ב-3.3 מיליארד, ו-78.3 בשלוש משימות SO-100 אמיתיות לעומת 61.7 עבור Pi0 ב-3.5 מיליארד.
  • כאשר אומן למשימה בודדת ללא אימון מוקדם זה, SmolVLA יורד ל-40.0 במשימות אלו, מתחת ל-48.3 של ACT. קטן אינו בהכרח קל.
  • ל-TinyVLA אין אינטגרציה עם LeRobot והוא מקבע ערימת גלגלים של CUDA 11.7. SmolVLA נמצא ב-lerobot ועולה בערך 1 עד 3 USD לריצה בשכבת ה-24 GB כאן.

מה באמת נחשב ל-VLA קטן

מספר הפרמטרים בכרטיס מודל אינו מספר יחיד. הוא יכול להתייחס למשקלים הכוללים, למשקלים שנטענים בזמן הסקה, או למשקלים שמקבלים גרדיאנטים במהלך . TinyVLA מדווח על שניהם, והפער גדול: TinyVLA-H הוא 1.3 B סה"כ אך 143 M ניתנים לאימון, מכיוון שמגדל הראייה ורוב מודל השפה נשארים קפואים בזמן שמתאמי LoRA וראש הפעולה נעים. המאמר מציין את החלק הניתן לאימון בכ-5 אחוזים.

מודלפרמטריםשלדראש פעולהמקור
TinyVLA-S422 M סה"כ, 101 M ניתנים לאימוןLlava-Pythia ~400 MDiffusion (droid_diffusion U-Net)arXiv 2409.12514
TinyVLA-B740 M סה"כ, 138 M ניתנים לאימוןLlava-Pythia ~700 MDiffusionarXiv 2409.12514
TinyVLA-H1.3 B סה"כ, 143 M ניתנים לאימוןLlava-Pythia ~1.3 BDiffusionarXiv 2409.12514
SmolVLA450 M, ~100 M מומחה פעולהSmolVLM2-500M-Video-InstructFlow matching expertarXiv 2506.01844
Octo-Small27 MViT-S scale, T5-Base text encoderDiffusionocto-small-1.5 card
ACT~80 MResNet, ללא מודל שפהרגרסיית נתחים ישירהAY-Robots catalog
OpenVLA7 BLlama 2 7 B, DINOv2 and SigLIP encodersאסימוני פעולה אוטורגרסיבייםarXiv 2406.09246

שתי שורות ראויות לדיון. בערך 80 M קטן מכל השאר כאן אך אין לו מודל שפה, ולכן הוא אינו VLA: הוא לומד משימה אחת ולא ניתן לומר לו לבצע אחרת. ב-27 M מותנה באמצעות מקודד טקסט T5-Base, לא שלד LLM. בסיסי השוואה טובים, אך אף אחד מהם לא מספק את ביצוע ההוראות שהתווית מרמזת עליו.

קו ה-1 B שרירותי

TinyVLA-H, הגרסה הנושאת את תוצאות הכותרת, היא 1.3 B ויושבת מעל הקו. השאלה הטובה יותר היא האם מודל נכנס ל-24 GB במהלך אימון ומגיע לקצב הבקרה שלך בזמן הסקה. חמשת המדיניות שתוכל לאמן כאן נמצאות בדף המדיניות; ל-TinyVLA יש ערך בזירה אם אתה רוצה את המספרים שלו לצד של כולם.

TinyVLA: המהירות מגיעה מהראש, לא מה-backbone

הקריאה המתבקשת היא שהם הקטינו את מודל השפה, ולכן הוא הפך מהיר יותר. ניתוח האבלציה של המאמר אומר אחרת. החלפת ה-backbone של OpenVLA בגודל 7 B באחד בגודל של כ-1 B קיצצה את חיזוי הפעולה מ-292 אלפיות השנייה ל-140 אלפיות השנייה, שיפור של פי 2. TinyVLA-H, עם מספר פרמטרים דומה, פועל ב-14 אלפיות השנייה על אותו כרטיס. הפי 10 הנוספים הם בזכות ראש הפעולה (action head).

מודלחיזוי לכל פעולהנמדד על
OpenVLA-7B292 mssingle A6000
OpenVLA-1B, backbone swapped for TinyVLA's140 mssingle A6000
TinyVLA-1B (TinyVLA-H)14 mssingle A6000

OpenVLA פולט פעולות כאסימונים בדידים דרך ראש מודל השפה, אחד לכל מימד פעולה, באופן אוטורגרסיבי. TinyVLA מצרף מפענח דיפוזיה שמייצר את כל הנתח בפעם אחת. טבלה V מציגה את הארכיטקטורה ב-TinyVLA-H ומחליפה רק את הראש, באותן חמש משימות רובוט אמיתיות. זוהי העדות הברורה ביותר בשני המאמרים לטיעון שהתאמת זרימה מדיניות יוצרת, והסיבה שPi0 התרחק מפענוח אסימונים.

ראש על TinyVLA-Hהנחת כדור טניסהפיכת ספלערימת קוביותסגירת מגירהפתיחת קופסה
דיפוזיה (droid_diffusion)90.098.398.396.786.7
טרנספורמר חלוקת פעולות13.38.38.313.323.3
פרספטרון רב-שכבתי00000
מה מכסים מספרי TinyVLA

הנתונים של 292 / 140 / 14 אלפיות השנייה הם מלוח IV, כולם על A6000 אחד. הם לכל חיזוי פעולה ואינם כוללים לכידת מצלמה, עיבוד מקדים וכתיבה טורית לסרווים. התייחסו לזמן השהיה המפורסם כגבול תחתון, לעולם לא כקצב הבקרה. המספרים שלנו נושאים את אותה מגבלה: ראו זמן השהיה של הסקה.

מה TinyVLA השיג

מדד ביצועיםפרוטוקולTinyVLA-Hקווי בסיס
MetaWorld, 50 משימות, סימולציהריבוי משימות, 50 הדגמות, 3 זרעים77.6 / 21.5 / 11.4 / 15.8 לפי קושי, ממוצע 31.6Diffusion Policy ממוצע 10.5
Franka Panda אמיתי, 5 משימות100 מסלולים למשימה, 20 ניסויים94.0 ממוצעOpenVLA 68.3, Diffusion Policy 35.3
UR5 דו-ידני, 3 משימותריבוי משימות, 10 ניסויים למשימה76.7 / 36.7 / 30.0OpenVLA 0 / 0 / 0, Diffusion Policy 40.3 / 31.3 / 43.0

לשורה הדו-ידית יש הסבר משעמם שהמאמר עצמו מספק: OpenVLA אומן מראש על Open X-Embodiment, המורכב כולו מנתונים של זרוע אחת, ולכן מרחב פעולה דו-ידי חורג מההתפלגות והוא מקבל ציון אפס. בסיס המדיניות של דיפוזיה מנצח את TinyVLA-H בשתיים מתוך שלוש המשימות הללו. רקע בהסקירה של Open X-Embodiment.

לוח המובילים של AY-Robots arena, טבלה ניתנת למיון של 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 .
רצף ההתקנה מקובץ ה-README של TinyVLA, נבדק מול המאגר בתאריך 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 או חדש יותר, כך ששניהם אינם יכולים לחלוק סביבה. ודאו תחילה שקיימת בניית torch 2.0.1 עבור דור ה-GPU שלכם. אם הרצה קורסת עקב VRAM במקום זאת, רשימת הבדיקה למצבי חוסר זיכרון מהירה יותר מניחושים.

TinyVLA גם לא קורא מערכי נתונים של LeRobot. הפורמט שלו הוא HDF5 בסגנון ACT: action, language_raw, וקבוצת תצפיות עם תמונות מרובות תצוגה, joint_positions, qpos ו-qvel. הריפו מספק את data_utils/rlds_to_h5py.py עבור קלט RLDS, וכל משימה נרשמת ידנית ב-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 מצביע על קובץ שאינו נמצא בספריית ה-scripts הראשית. הגדרות DeepSpeed נשלחות ב-llava-pythia/scripts/zero2.json. תקן את הנתיב לפני ההרצה הראשונה שלך.
  • קובץ ה-README דורש ששם ספריית הפלט יכיל את llava_pythia, בתוספת lora אם LoRA מופעל.
  • ה-backbone הוא הורדה נפרדת: lesjie/Llava-Pythia-400M, -700M or -1.3B. אין נקודת בדיקה בסיסית יחידה שאליה אתה מכוון מדיניות באותה צורה שבה אתה מכוון ל-lerobot/smolvla_base.

SmolVLA: מודל תת-1B שתוכל להריץ אחר הצהריים

SmolVLA מציג את אותה טענה בתוך ספרייה מתוחזקת. הוא בעל 450 מיליון פרמטרים על גבי backbone מסוג SmolVLM2-500M-Video-Instruct, והיעילות נובעת מהגדרות שניתן לקרוא מתוך configuration_smolvla.py ולא מטענה על היותו קטן.

הגדרה ב-configuration_smolvla.pyברירת מחדלמה זה נותן
num_vlm_layers16רק 16 שכבות מודל השפה הראשונות רצות
expert_width_multiplier0.75גודל נסתר של מומחה הפעולה הוא 75 אחוז מזה של ה-VLM
self_attn_every_n_layers2Self-attention משולב עם cross-attention
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לא מתכון המאמר: האימון המקדים שלו השתמש ב-warmup של 100 צעדים על פני 200000 צעדים

אימון מוקדם השתמש ב-481 מערכי נתונים קהילתיים של LeRobot, ב-22.9 אלף פרקים וב-10.6 מיליון פריימים על 4 כרטיסי GPU, ב-200,000 צעדים עם גודל אצווה גלובלי של 256; המאמר מעריך את הפרויקט כולו בכ-30 אלף שעות GPU. נתון אחד שכדאי לשים לב אליו: בלוג ההשקה של Hugging Face מציין 487 מערכי נתונים מאוצרים בעוד שהטבלה במאמר מציינת 481. אנו משתמשים בנתון מהמאמר ומציינים את אי ההתאמה.

עמוד מודל SmolVLA ב-AY-Robots המציג את ספירת הפרמטרים, רמת ה-GPU של 24 GB, זמן השהיה של הסקה לכל שלב פעולה ומספר הפרקים המינימלי
עמוד SmolVLA של הפלטפורמה: 450 מיליון פרמטרים, 245 אלפיות השנייה לכל שלב פעולה, רמת RTX 4090, מינימום 30 פרקים.
מדד ביצועיםSmolVLA 0.45 BSmolVLA 2.25 BPi0ACT
ממוצע LIBERO, ריבוי משימות87.388.7586.0 (3.3 B, מאומן מראש לרובוטיקה)-
ממוצע Meta-World, ריבוי משימות57.368.2447.9 (3.5 B, מאומן מראש לרובוטיקה)-
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 מיליון מנצח מודל של 3.5 מיליארד ב-16.6 נקודות, היא המעניינת; השורה שמתחתיה היא משקל הנגד. הסירו את האימון המוקדם הקהילתי ואת אימון ריבוי המשימות והמודל יורד ל-40.0, מתחת ל-ACT. הטענה הניתנת להגנה היא שמודל קטן אינו גרוע יותר באופן אוטומטי, לא שהוא טוב יותר.

מקרה אחד מסייע: הטבלה של Meta-World במאמר של SmolVLA מציגה את המספרים שפורסמו על ידי TinyVLA כבסיס השוואה, כך שלפעם אחת שני המודלים נמצאים בטבלה אחת, SmolVLA-0.45B עם 57.3 לעומת TinyVLA-H עם 31.6. הוא גם מדווח על אימון SmolVLA מהיר בכ-40 אחוז מ-Pi0 תוך שימוש בפי 6 פחות זיכרון. כל זה מגיע מהמחברים של SmolVLA; ה-ערך בזירה מקשר כל ערך למקור שלו.

היכן SmolVLA מבלה את זמנו

AY-Robots מפרטת את SmolVLA ב-245 אלפיות שנייה לכל שלב פעולה ואת ACT ב-20 אלפיות שנייה בקטלוג מדיניות. TinyVLA מדווח על 14 אלפיות שנייה לחיזוי פעולה. מספרים אלה אינם ניתנים להשוואה, והתייחסות אליהם כאילו הם כן היא הטעות הנפוצה ביותר בנושא זה: חלק מודדים זמן של מעבר קדימה אחד, חלק מחלקים את המעבר הזה על פני מקטע ברגע שחלוקת פעולות למקטעים מפזרת אותו.

  • SmolVLA פולט 50 פעולות בכל מעבר קדימה ומבצע את כל ה-50. בקצב של 30 פריימים לשנייה שהמאמר משתמש בו על רובוטים אמיתיים, הסקה אחת מכסה כ-1.7 שניות של תנועה.
  • הסקה אסינכרונית מחשבת את המקטע הבא בזמן שהנוכחי עדיין מתבצע: 9.7 שניות השלמת משימה ממוצעת לעומת 13.75 שניות סינכרונית, מהיר בכ-30 אחוז, ו-19 מחזורי הרמה והנחה בחלון קבוע של 60 שניות לעומת 9.
  • שיעורי ההצלחה היו דומים ולא טובים יותר, 78.3 סינכרוני לעומת 73.3 אסינכרוני. אסינכרוני קונה תפוקה, לא דיוק.
  • חלוקה למקטעים מסתירה את השהיית החישוב, לא את השהיית הרשת, והיא הופכת את המדיניות לפחות תגובתית מכיוון שהיא מחויבת ל-50 פעולות.
הסקה מרחוק אינה חינמית, ואף פלטפורמה אינה מתקנת את חוקי הפיזיקה

AY-Robots יכולה להקצות אוטומטית פוד GPU בענן שמשרת את המדיניות שלך בזמן שלקוח הרובוט המקומי מדבר עם נקודת קצה זו, והפוד נושא כלב שמירה סרק (idle watchdog) כך שהוא משמיד את עצמו במקום לחייב בשקט. מה שהוא לא עושה זה להסיר את הלוך ושוב דרך האינטרנט הציבורי. לולאת הבקרה על פני חמש המדיניות כאן היא 20 עד 485 אלפיות השנייה לכל שלב פעולה לפני כל רשת שהיא, כך שהסקה מרחוק ישימה עבור איסוף והנחה איטיים (slow pick-and-place), לא עבור תנועה ריאקטיבית מהירה.

טבלת השוואת המדיניות של AY-Robots המציגה את GR00T N1.7, GR00T N1.5, Pi0.5, SmolVLA ו-ACT עם ספירת פרמטרים, רמת GPU נדרשת, זמן השהיה של הסקה לכל שלב פעולה ומספר הפרקים המינימלי שכל אחד מהם דורש.
SmolVLA ב-~450M ו-ACT ב-~80M הם השניים שמתאימים לכרטיס 24GB. שלושת האחרים דורשים A100 או H100 80GB.

כוונון עדין של SmolVLA על כרטיס צרכני אחד

הנתיב הידני, ב-lerobot 0.6.1, הגרסה הנוכחית של PyPI נכון ל-23 באוגוסט 2026. כל מה שלמטה מגיע מתיעוד Hugging Face lerobot SmolVLA, שנשלף באותו יום; הגרסה המודרכת עדינה יותר.

  1. 1
    התקן את lerobot עם תוסף smolvla

    תלויות SmolVLA הן תוסף אופציונלי, לא חלק מההתקנה הבסיסית. התקנה בלעדיהן ואז תהייה מדוע סוג המדיניות אינו ידוע היא חצי שעה אבודה נפוצה.

    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 צעדים בכ-4 שעות על A100 אחד. על כרטיס 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
נקודת הבדיקה היא התוצר הסופי

בכל דרך שתבחר, תסיים עם נקודת בדיקה בתוספת התצורה שיצרה אותה. שמור את גרסת מערך הנתונים, ספירת הצעדים וה-seed לידה. lerobot מוגדר כברירת מחדל ל-seed 1000; נקודת הכניסה לכוונון עדין של GR00T אינה חושפת seed כלל, ולכן ריצות אלו אינן ניתנות לשחזור ביט-אחר-ביט. מכניקה בתיעוד האימון.

שתי דרכים להעלות VLA קטן על זרוע

אתה הבעלים של המכונה ומצבי הכשל. עבור SmolVLA זה סביר: תוסף pip אחד, פקודת אימון אחת, פקודת הפעלה אחת. עבור TinyVLA זוהי רפרודוקציה מחקרית עם פינים קפואים, נתיב DeepSpeed שבור והמרת נתונים שאתה כותב בעצמך.

  1. השג כרטיס 24 GB, הקלט 30 עד 50 פרקים, וודא את זרמי המצלמה פריים אחר פריים.
  2. pip install -e ".[smolvla]", אמן את lerobot מול lerobot/smolvla_base, ולאחר מכן הגש את נקודת הבדיקה במכונה שאליה מחוברת הזרוע.
  3. עבור TinyVLA: סביבת conda נפרדת, המר נתונים ל-HDF5, רשום את המשימה ב-constants.py, תקן את נתיב zero2.json, חתוך את train.sh משמונה GPUs לאחד.
יתרונות
  • אין חיוב לפי שעה לאחר תשלום על הכרטיס.
  • הסקת מסקנות יושבת ליד הסרוואים, הדרך היחידה לקבל לולאת בקרה מהירה.
  • אתה יכול לתקן את קוד המדיניות, ו-TinyVLA זמין רק בדרך זו.
פשרות
  • כרטיס 4090 פוסל כל מדיניות של כ-3 מיליארד פרמטרים, כך שאין השוואה מקומית מול GR00T N1.7 או Pi0.5.
  • הגדרת הסביבה היא העבודה האמיתית. הפינים של TinyVLA לבדם יכולים לעלות יום שלם.
  • אין תור, אין ניסיון חוזר, אין אחסון נקודות בדיקה. אתחול מחדש בצעד 14000 פירושו להתחיל מחדש.

כאשר מודל קטן הוא הבחירה הלא נכונה

שני המאמרים זהירים יותר כאן מאשר הסיכומים. ניתוח הכשלים של TinyVLA ספציפי: גרסת ה-0.4 B נכשלה שלוש פעמים בקריאה שגויה של ההוראה, מה שהמחברים מייחסים להבנת שפה מוגבלת ב-VLM הקטן יותר, ומצב זה נעלם ב-1.3 B. SmolVLA מציג את אותה עקומה מהקצה השני: גרסת ה-2.25 B של הארכיטקטורה הזהה מקבלת ציון 88.75 ב-LIBERO ו-68.24 ב-Meta-World לעומת 87.3 ו-57.3 עבור מודל ה-0.45 B.

בחירת VLA מתחת ל-1 B
היכן הוא מנצח
  • מתאים לכרטיס 24 GB, מה שמוריד עלות ניסוי מעשרות דולרים לכמה בודדים.
  • מהיר מספיק כדי לרוץ ליד הזרוע, כך שאין קפיצת רשת בלולאת הבקרה.
  • מכוונן עדין (fine-tunes) על נתונים שאדם אחד יכול להקליט, עשרות אפיזודות במקום אלפים.
  • המשקלים, רשימת הנתונים והקוד של SmolVLA ציבוריים, כך שניתן לנפות שגיאות מתוצאה גרועה.
היכן הוא מפסיד
  • ביצוע הוראות חלש יותר: פחות פרמטרי שפה, פחות יכולת להפריד ביטויים מפנים דומים.
  • פחות הכללה מרחבית וויזואלית למערכים שלא תיעדת.
  • רגיש יותר לפגמים במערך הנתונים, עם פחות אימון מוקדם (pretraining) להישען עליו.
  • עבודה מרובת משימות וארוכת טווח עדיין מעדיפה מודלים גדולים יותר, כולל גרסת ה-2.25 B של SmolVLA עצמו.

ההשוואה שכדאי לבצע אינה TinyVLA מול SmolVLA. זוהי SmolVLA מול ACT במשימה שלך, והמאמר של SmolVLA הוא הטיעון לכך. SmolVLA, שאומן למשימה בודדת ללא אימון מוקדם ברובוטיקה, השיג ממוצע של 40.0 על פני שלוש משימות SO-100, בעוד ש-ACT למשימה בודדת השיג 48.3. מה שמקפיץ אותו ל-78.3 הוא אימון מוקדם קהילתי בתוספת אימון מרובה משימות, לא הארכיטקטורה לבדה. במשימת הלגו SO-101, שניהם למשימה בודדת, SmolVLA אכן מנצח: 90 מול 70 בהתפלגות. לאחר מכן SmolVLA מול Pi0.5 אם התקציב מאפשר.

בגודל הזה, מערך הנתונים קובע את התוצאה

יש פחות אימון מוקדם שיכסה על נתונים גרועים, ולכן עקומת הפסד נקייה על מערך נתונים פגום נותנת לך מדיניות המשחזרת את הפגם בביטחון. התיעוד של lerobot ברור לגבי המבנה: 50 אפיזודות על פני 5 מיקומי קוביות, 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 דולר לריצה
שחזור תוצאת TinyVLA באופן ספציפיTinyVLA-B or TinyVLA-Hהמאגר הוא הדרך היחידה: סביבה מבודדת, נתונים מומרים
ריבוי משימות, הוראות מגוונות, תקציב A100GR00T N1.7 or Pi0.5~3 B, 152 ms ו-485 ms לכל שלב, 4 עד 12 דולר לריצה
אין רובוט עדייןהפעל זרוע אמיתיתהזרוע החיה מבוססת התור אינה דורשת הרשמה או חומרה

עבור השורה האחרונה, הזרוע החיה משדרת SO-100 פיזי שניתן להפעיל מהדפדפן ללא צורך בחשבון, ו-שלוש הדרכים להתחיל מכסה את השאר. ה-SO-100 היא זרוע הייחוס כאן, בעלות של כ-110 עד 150 אירו בחלקים, עם מדריך התקנה מלא.

מה מגיע אחרי מודלים של פחות מ-1 מיליארד פרמטרים

הקטנת ספירת הפרמטרים היא דרך אחת להפוך VLA לזול ולא בהכרח הדרך המנצחת. OpenVLA-OFT (arXiv 2502.19645) שומר על עמוד השדרה של 7 מיליארד פרמטרים ומשנה רק את אופן פענוח הפעולות, ומדווח על עלייה של פי 26 בתפוקת יצירת הפעולות ועלייה של LIBERO מ-76.5 ל-97.1 אחוזים. BitVLA (arXiv 2506.07530) הופך כל משקל של עמוד שדרה BitNet b1.58 2B4T חד-ביטי לטרנרי, ומדווח על 11.0x פחות זיכרון ו-4.4x פחות זמן אחזור מקצה לקצה תוך התאמה ל-OpenVLA-OFT בדיוק מלא. X-VLA-0.9B (arXiv 2510.10274) נמצא על קו ה-1 מיליארד פרמטרים עם התאמת זרימה.

החוט המקשר: מפענח הפעולות, לא מודל השפה, הוא המקום שבו נמצא זמן האחזור. שאלו כיצד מדיניות פולטת פעולות לפני שאתם שואלים כמה פרמטרים יש לה. ה-זירה מכילה 85 מודלים ו-332 תוצאות, כל אחת מקושרת למקור שלה; יש סקירה רחבה יותר ב-הקדמת ה-VLA שלנו.

האם אוכל לכוונן עדין את SmolVLA על RTX 4090?

כן. SmolVLA הוא בעל 450 מיליון פרמטרים ו-AY-Robots מריץ אותו על שכבת RTX 4090 / 24 GB. הדוגמה של lerobot משתמשת ב-`--batch_size=64`, וזו דוגמה ולא ערובה עבור הכרטיס שלך; התיעוד ממליץ להתחיל בקטן ולהגדיל כל עוד זמני הטעינה נשארים קצרים. צפה לזמן ארוך יותר מאשר כ-4 השעות שהתיעוד מציין עבור 20000 צעדים על A100.

האם TinyVLA זמין ב-lerobot או ב-AY-Robots?

לא לשניהם. TinyVLA קיים רק במאגר המחקר שלו, העדכון האחרון ב-11 במרץ 2025, והפורמט שלו הוא HDF5 בסגנון ACT ולא LeRobot. AY-Robots מאמן את GR00T N1.7, GR00T N1.5, Pi0.5, SmolVLA ו-ACT. אם אתה רוצה את TinyVLA, תצטרך לבנות אותו בעצמך, ותצטרך לתקן קודם את נתיב קובץ התצורה של DeepSpeed ב-scripts/train.sh.

האם מודל של 450 מיליון פרמטרים באמת תחרותי למודל של 3 מיליארד?

לפי מדדי הביצועים של המחברים עצמם, כן: 87.3 לעומת 86.0 ב-LIBERO מול Pi0 מאומן מראש לרובוטיקה ב-3.3 מיליארד, ו-78.3 לעומת 61.7 בשלוש משימות SO-100 אמיתיות שבהן אותו מאמר מתייג את Pi0 ב-3.5 מיליארד. המגבלה נמצאת באותו מאמר: במשימה יחידה ללא אימון מוקדם לרובוטיקה, SmolVLA יורד ל-40.0, מתחת ל-48.3 של ACT.

כמה אפיזודות אני צריך לפני ש-VLA קטן עושה משהו?

AY-Robots קובע את המינימום של SmolVLA ב-30 אפיזודות ואת המינימום של ACT ב-50. התיעוד של lerobot ממליץ על כ-50 ומדווח ש-25 לא הספיקו לאותה משימה. מבנה חשוב לא פחות מהמספר: הסט של המאמר השתמש ב-5 מיקומי קוביות עם 10 אפיזודות לכל אחד.

מדוע מספרי ההשהיה המפורסמים כל כך שונים?

הם מודדים דברים שונים. TinyVLA מדווח על 14 אלפיות השנייה לחיזוי פעולה ב-A6000; AY-Robots מפרט את SmolVLA ב-245 אלפיות השנייה ואת ACT ב-20 אלפיות השנייה לכל שלב פעולה. חלק מהנתונים מכסים מעבר קדימה אחד, חלק מחלקים מעבר על פני מקטע של 50 פעולות, וכמעט אף אחד לא כולל לכידת מצלמה או כתיבה לסרוואים.

האם הסקת ענן פותרת את בעיית ה-GPU?

חלקית. AY-Robots מספק אוטומטית פוד שמשרת את המדיניות בזמן שהלקוח המקומי מדבר עם נקודת קצה זו, עם כלב שמירה סרק כך שהוא משמיד את עצמו במקום לחייב בשקט. הוא לא יכול להסיר את זמן ההלוך ושוב של האינטרנט הציבורי, ולולאת הבקרה היא כבר 20 עד 485 אלפיות השנייה לכל שלב פעולה. מתאים למשימות איסוף והנחה איטיות, לא לתנועה תגובתית מהירה.

Ready for high-quality robotics data?

AY-Robots connects your robots to skilled operators worldwide.

Get Started