Nie umiesz namalować fotorealistycznego obrazu spadającego kubka. Serio, spróbuj — odbicia światła na szkliwie, rozmycie ruchu, cień na blacie. A mimo to złapiesz ten kubek, zanim dotknie podłogi, i to bez zastanowienia. Twój mózg nie renderuje pikseli przyszłości. On utrzymuje stan świata: kubek, krawędź, grawitacja, za sekundę będzie za późno.

Tymczasem AI od lat idzie w drugą stronę. LLM-y przewidują następny token, generatory wideo malują następną klatkę piksel po pikselu, modele VLA (vision-language-action) przewidują następną komendę silnika robota. Trzy rodziny modeli, trzy cele treningowe, trzy osobne, niekompatybilne obrazy tego samego fizycznego świata.

Orca (arXiv 2606.30534, BAAI, czerwiec 2026 — podtytuł papera brzmi “The World is in Your Mind”, a na liście autorów jest 57 nazwisk) proponuje wyjście z tego rozdrobnienia: jeden latentny stan świata, uczony z 12.5K godzin wideo i eventów opisanych językiem, bez ani jednej etykiety akcji. Po pre-trainingu backbone zostaje zamrożony na zawsze, a tekst, obraz i sterowanie robotem czytają z niego trzy lekkie, trenowane osobno dekodery. Wynik z nagłówka: readout akcji, uczony od zera na 200 trajektoriach na zadanie, wygrywa z π0.5 — modelem pre-trenowanym na wielkoskalowych danych robotycznych — w testach out-of-distribution, 32.4 vs 29.4 w metryce rule-based. Robot nauczył się rąk, w dużej mierze, z samego patrzenia.


Problem: trzy paradygmaty, trzy silosy

Każdy z trzech obozów płaci inny podatek za swoją definicję inteligencji.

Modele next-frame (Sora, Cosmos od NVIDII) utożsamiają rozumienie świata z jego renderowaniem. Ogromna część pojemności modelu idzie na wysokoentropijne detale — fakturę dywanu, połysk blatu — które nie mają nic wspólnego z wiedzą, że kubek na krawędzi zaraz spadnie. Zamawiałeś fizyka, płacisz za malarza.

Modele JEPA (V-JEPA 2 z Mety, linia Yanna LeCuna) naprawiają to, przewidując w przestrzeni reprezentacji zamiast w pikselach. Uczą się świetnej dynamiki wideo. Tu jest haczyk: są nieme. Nie powiesz im, co ma się wydarzyć, ani nie spytasz, dlaczego coś się stało. Planner V-JEPA potrzebuje obrazka-celu — spróbuj wygenerować taki dla polecenia “odłóż książkę na drugą półkę”.

Modele VLA (π0.5, OpenVLA) celują od razu w to, co się liczy — akcje robota — ale ich paliwem jest teleoperacja: droga, rzadka i wąska. Ludzie godzinami sterują robotem jak marionetką, a wytrenowana polityka i tak się sypie, gdy zmienisz obrus.

A przecież wszystkie trzy rodziny modelują ten sam świat. Token, klatka i akcja to różne serializacje jednego stanu. Zakład Orki: jeśli dobrze nauczysz się stanu, serializery mogą być niemal trywialne.


Rozwiązanie: Next-State-Prediction w pigułce

Cała filozofia papera mieści się w jednym równaniu. Multimodalne sygnały świata $X = \{X^m\}_{m \in \mathcal{M}}$ (tutaj: wizja i język) są kompresowane enkoderem do latentnego stanu $S = f_\theta(X)$, a każde zadanie AI staje się próbkowaniem z rozkładu przejścia między stanami:

$$ S_{t+\Delta} \sim p_{\Theta}\left(S_{t+\Delta} \mid S_t,\, z_t,\, c_t\right), \qquad \Delta \in \mathbb{Z}_{\neq 0} \tag{1} $$

gdzie:

  • $S_t$ — latentny stan świata w chwili $t$
  • $S_{t+\Delta}$ — stan przesunięty o $\Delta$ kroków; $\Delta > 0$ to predykcja przyszłości, $\Delta < 0$ to backtracking do przeszłości
  • $p_\Theta$ — parametryczny rozkład przejścia stanów (cały model o parametrach $\Theta$)
  • $z_t$ — implicit dynamics: prawa fizyki, własności obiektów, siły środowiska — ukryta maszyneria zmian, której nie obserwujemy wprost
  • $c_t$ — explicit conditions: jawne sterowanie, np. instrukcja człowieka, opis eventu, intencja zadania
  • $\Delta \in \mathbb{Z}_{\neq 0}$ — dowolna niezerowa liczba całkowita; model ma umieć chodzić po osi czasu w obie strony

Innymi słowy: świat to łańcuch Markowa w przestrzeni latentnej, a wszystkie zadania AI to zapytania do jego rozkładu przejścia. Next-token prediction? Równanie (1) z $S$ = tokeny tekstu i $\Delta = 1$. Next-frame? $S$ = klatki wideo. Next-action? $S$ = komendy silników. Orca traktuje całą trójkę jako zubożone rzuty przypadku ogólnego.

Rozdzielenie $z_t$ od $c_t$ to najbardziej praktyczna decyzja w całym frameworku: dzieli trening na dwa osobne tryby.

Unconscious vs conscious learning — jak nauka cudzego codebase’u

Autorzy nazwali te tryby “unconscious” i “conscious learning” (brzmi jak System 1 i System 2 Kahnemana przeniesione na uczenie reprezentacji). Mnie bardziej przemawia analogia z wdrażaniem się w nowy projekt: konwencje kodu wchłaniasz nieświadomie, czytając setki commitów — nikt ci ich nie tłumaczy, po prostu widzisz, jak kod się zmienia. A świadomie uczysz się z code review, gdzie ktoś słowami wyjaśnia, dlaczego ta zmiana wywali produkcję.

Unconscious learning to świat zmieniający się sam z siebie, gdy patrzysz przez okno. Podstawiamy $c_t = \varnothing$ i przejście zależy tylko od ukrytej dynamiki:

$$ S_{t+\Delta} \sim p^{\mathrm{u}}_{\Theta}\left(S_{t+\Delta} \mid S_t,\, z_t\right) \tag{2} $$

gdzie:

  • $p^{\mathrm{u}}_{\Theta}$ — rozkład przejścia w trybie nieświadomym (u = unconscious)
  • $c_t = \varnothing$ — warunek pusty; targetem jest po prostu najbliższa przyszła obserwacja, czyli następna klatka wideo

Innymi słowy: każda para sąsiednich klatek surowego wideo to darmowy przykład treningowy o ruchu, okluzjach i interakcjach obiektów. Gęsty sygnał, zero etykiet — a inwentarz danych ma tego 125K godzin.

Conscious learning to przejścia rzadkie, ale znaczące: powiązane z przyczyną albo intencją opisaną językiem. Warunkiem staje się opis eventu $e_{t+\Delta}$:

$$ S_{t+\Delta} \sim p^{\mathrm{c}}_{\Theta}\left(S_{t+\Delta} \mid S_t,\, z_t,\, e_{t+\Delta}\right) \tag{3} $$

gdzie:

  • $p^{\mathrm{c}}_{\Theta}$ — rozkład przejścia w trybie świadomym
  • $e_{t+\Delta}$ — językowy opis eventu docelowego: przyszłego ($\Delta > 0$) lub przeszłego ($\Delta < 0$)
  • $S_{t+\Delta}$ — stan wewnątrz opisanego eventu; w praktyce latent losowo wybranej klatki z segmentu wideo odpowiadającego eventowi

Innymi słowy: język działa jak klucz w bazie danych — wybiera, którą z wielu możliwych przyszłości (albo przeszłości) model ma przewidzieć. “Lody topnieją, gdy je podgrzejesz” to przejście świadome; liście strącane wiatrem za oknem — nieświadome. W tym samym trybie działa też VQA (pytanie–odpowiedź o wideo), które trzyma przy życiu interfejs językowy.

I to jest dokładnie to, czego brakowało obu obozom naraz: czyste JEPA nie ma sterowalności, czyste next-token nie ma darmowego strumienia fizyki.


Jak to działa: query, zamrożony ViT i trzy straty

Implementacja jest bardziej pragmatyczna niż filozofia — i paper tego nie ukrywa. Orca startuje z pre-trenowanego multimodalnego VLM (Qwen3.5 w wersjach 0.8B i 4B) z zamrożonym vision encoderem. Sekwencja wejściowa wygląda tak: tokeny wizualne, potem 256 uczonych od zera wektorów query (“Query 1”), potem instrukcja, potem kolejne 256 query (“Query 2”). Query działają jak porty odczytu: ostatni hidden state Query 1 przechowuje przekonanie modelu o nieuwarunkowanej przyszłości, Query 2 — o stanie wskazanym instrukcją.

Na tę samą przestrzeń latentną naciskają jednocześnie trzy cele:

$$ \mathcal{L} = \lambda_{\mathrm{obs}}\,\mathcal{L}_{\mathrm{obs}} + \lambda_{\mathrm{evt}}\,\mathcal{L}_{\mathrm{evt}} + \lambda_{\mathrm{vqa}}\,\mathcal{L}_{\mathrm{vqa}} \tag{4} $$

gdzie:

  • $\mathcal{L}_{\mathrm{obs}}$ — strata observation-only state transition (unconscious learning): dopasuj latent następnej klatki
  • $\mathcal{L}_{\mathrm{evt}}$ — strata event-conditioned state transition (conscious learning): dopasuj latent klatki, na którą wskazuje język
  • $\mathcal{L}_{\mathrm{vqa}}$ — klasyczny next-token cross-entropy na odpowiedziach VQA
  • $\lambda_{\mathrm{obs}}, \lambda_{\mathrm{evt}}, \lambda_{\mathrm{vqa}}$ — w Appendixie C.1.3: 0.1 / 0.5 / 0.4, identycznie dla 0.8B i 4B; miks danych state-transition : VQA to około 5:1

Innymi słowy: naturalna dynamika, przejścia sterowane językiem i zdroworozsądkowe uziemienie kształtują jedną reprezentację. Jest w tych wagach cicha ironia — “nieświadome” uczenie, koncepcyjny fundament całej metody, dostaje $\lambda = 0.1$, pięć razy mniej niż eventy. Sweepu po wagach w paperze nie ma, jest tylko ablacja włącz/wyłącz.

Latent matching: 0.1·MSE + 0.9·cosine

Ten fragment podoba mi się najbardziej. Orca nigdy nie rekonstruuje pikseli — targetem obu strat przejścia jest latent docelowej klatki, wyprodukowany przez zamrożony ViT. Przewidziany latent $\hat{v}^l$ (hidden state query przepuszczony przez 2-warstwowy MLP; dla 4B: 2560 → 20480 → 2560) porównujemy z ground truth $v^l$ tak:

$$ \ell_{\mathrm{lat}}\left(\hat{v}^{l}, v^{l}\right) = 0.1\,\left\| \hat{v}^{l} - v^{l} \right\|_2^2 \;+\; 0.9\left(1 - \frac{\left\langle \hat{v}^{l}, v^{l} \right\rangle}{\left\| \hat{v}^{l} \right\|_2 \left\| v^{l} \right\|_2}\right) \tag{5} $$

gdzie:

  • $\hat{v}^{l}$ — latent PRZEWIDZIANY przez Orcę na pozycjach tokenów wizualnych
  • $v^{l}$ — latent GROUND TRUTH: docelowa klatka przepuszczona przez zamrożony vision encoder
  • $\|\cdot\|_2^2$ — kwadrat normy euklidesowej, człon MSE — pilnuje zgodności skali
  • $\langle \cdot, \cdot \rangle$ — iloczyn skalarny; drugi człon to jedynka minus podobieństwo kosinusowe, pilnuje zgodności KIERUNKU wektora
  • $0.1 / 0.9$ — dominuje cosine, MSE tylko stabilizuje

Innymi słowy: w przestrzeni embeddingów semantyka mieszka głównie w kierunku wektora, nie w jego długości — stąd 90% wagi na cosine. Czysty MSE karałby model za nieistotne różnice amplitudy; czysty cosine pozwoliłby latentom eksplodować albo skolapsować co do skali. Mieszanka 0.1/0.9 zabezpiecza przed oboma patologiami. To trochę jak porównywanie hashy zamiast diffowania całych plików binarnych: tanio i odpornie na szum, który nie ma znaczenia.

Jest tu też ukryta obrona przed representation collapse — klasyczną zmorą metod joint-embedding, w których wszystko mapuje się w jeden punkt. Kotwicą jest zamrożony ViT, więc trywialne rozwiązanie nie minimalizuje straty: target się nie rusza.

Dwie straty przejścia to $\ell_{\mathrm{lat}}$ w dwóch skalach czasowych:

$$ \mathcal{L}_{\mathrm{obs}} = \mathbb{E}\left[\, \ell_{\mathrm{lat}}\left(\hat{v}^{l}_{t+1},\; v^{l}_{t+1}\right) \right] \tag{6} $$

gdzie:

  • $\hat{v}^{l}_{t+1}$ — predykcja latentu następnej sąsiedniej klatki, odczytana z Query 1
  • $v^{l}_{t+1}$ — latent prawdziwej następnej klatki z zamrożonego encodera
  • $\mathbb{E}[\cdot]$ — wartość oczekiwana po klatkach próbkowanych z korpusu wideo

Innymi słowy: gęsta, darmowa supervisja — każda para sąsiednich klatek to jeden przykład.

$$ \mathcal{L}_{\mathrm{evt}} = \frac{1}{2}\,\mathbb{E}\left[\, \ell_{\mathrm{lat}}\left(\hat{v}^{l}_{\mathrm{prev}},\; v^{l}_{\mathrm{prev}}\right) + \ell_{\mathrm{lat}}\left(\hat{v}^{l}_{\mathrm{next}},\; v^{l}_{\mathrm{next}}\right) \right] \tag{7} $$

gdzie:

  • $\hat{v}^{l}_{\mathrm{next}}$ — predykcja latentu losowej klatki NASTĘPNEGO eventu, gdy instrukcja opisuje przyszłość ($\Delta > 0$); odczyt z Query 2
  • $\hat{v}^{l}_{\mathrm{prev}}$ — to samo dla eventu POPRZEDNIEGO ($\Delta < 0$) — jedyne miejsce, gdzie backtracking z równania (1) staje się konkretem
  • $v^{l}_{\mathrm{prev}}, v^{l}_{\mathrm{next}}$ — ground-truth latenty z zamrożonego encodera
  • $\tfrac{1}{2}$ — oba kierunki czasu ważone równo

Innymi słowy: model uczy się zarówno “co będzie po”, jak i “co musiało być przed” eventem opisanym słowami. Wnioskowanie wstecz wymusza strukturę bliższą przyczynowości niż zwykła ekstrapolacja do przodu. (Szkoda tylko, że paper nie sprawdza kierunku wstecznego w osobnej ablacji — nie wiemy, ile naprawdę wnosi.)

Trzy readouty: LM head, SD3.5 + LoRA, Action Expert z flow matchingiem

Po pre-trainingu backbone jest nietykalny. I to jest moim zdaniem najlepszy pomysł w całym paperze — czystość protokołu. Jeśli zamrożony rdzeń plus cienki dekoder działają, zasługa należy do reprezentacji, nie do dekodera. Dla programisty: to test integracyjny przez publiczne API. Nie wolno ci grzebać w serwerze; jeśli wszystkie klienty mimo to działają, model danych jest zdrowy.

  • Tekst: zero nowych parametrów — reużyty LM head samego VLM-a (VQA, interpretacja eventów, wyjaśnienia przyczynowe).
  • Obraz: MLP-adaptor (556.9M parametrów) + LoRA (rank 32) na projekcjach attention zamrożonego Stable Diffusion 3.5; 200K kroków, batch 512, obrazy 768×768.
  • Akcje: DiT (Diffusion Transformer) — Action Expert trenowany od zera: 8 bloków, hidden 1024, 12 głów, naprzemienne self- i cross-attention; przewiduje chunki 30 kroków akcji 16-wymiarowych, inferencja w 4 krokach odszumiania. Trening: 200 trajektorii na zadanie, 20K kroków, batch 128.

Action Expert uczy się przez conditional flow matching. Ważne zastrzeżenie: paper tego równania nie wypisuje — odsyła do Lipmana et al. (2022) i opisuje procedurę słownie (ground-truth chunk akcji zaburzany szumem gaussowskim, ekspert przewiduje odpowiadającą prędkość). Poniższa postać to standardowy conditional flow matching zrekonstruowany z tego opisu:

$$ \mathcal{L}_{\mathrm{FM}} = \mathbb{E}_{\tau,\, a_0,\, \epsilon}\left[\, \left\| u_{\phi}\left(a_{\tau}, \tau \mid q_1,\, s_{\mathrm{proprio}}\right) - \left(\epsilon - a_0\right) \right\|^2 \right] \tag{8} $$

gdzie:

  • $a_0$ — ground-truth action chunk (horyzont 30 kroków, akcje 16-wymiarowe)
  • $a_{\tau}$ — zaszumiona interpolacja akcji w “czasie dyfuzji” $\tau$
  • $u_{\phi}$ — pole prędkości przewidywane przez DiT Action Expert
  • $q_1$ — warunek: latent Query 1 z zamrożonej Orki po MLP-adaptorze — dosłownie “prognoza ewolucji stanu świata”
  • $s_{\mathrm{proprio}}$ — propriocepcja robota (stany stawów i end-effectora, 16 wymiarów)
  • $\epsilon$ — szum gaussowski; inferencja to 4 kroki odszumiania → chunk akcji sterujący robotem

Innymi słowy: robot nie dostaje ani pikseli, ani tekstu. Dostaje skompresowaną prognozę “jak świat zaraz się zmieni” plus stan własnego ciała — i z tego odszumia trajektorię. Jeśli latent naprawdę koduje przyszły stan świata, malutki, trenowany od zera ekspert powinien wystarczyć do sterowania. Teza papera zamieniona w falsyfikowalny eksperyment.

Dane: 125K godzin świata (i dlaczego użyto tylko 1/10)

“World-learning inventory” to osobne osiągnięcie inżynierskie: 125K godzin wideo (ego-centric interaction, exo-centric manipulation, action-free robot execution, natural dynamics), 160M anotacji eventów z wielopoziomowej segmentacji — grube kroki procesu plus drobne przejścia wewnątrz nich, każdy segment z captionem — i 11.5M par VQA.

Orca zużyła jedną dziesiątą wideo. Nie z braku compute — autorzy piszą wprost, że przy 4B parametrów wąskim gardłem jest pojemność modelu, nie dane. Świat się nie mieści. Pre-training: 256×H100 (32 nody), 10 844 kroki, AdamW (LR 3.5e-5 dla backbone’u, 1.2e-4 dla głów wizualnych), sekwencje do 1024 tokenów.


Liczby, które przekonują

Tekst: +5.1 średnio nad własnym backbone’em (i gdzie V-JEPA 2.1 wciąż wygrywa)

Najczystsze porównanie to Orca kontra backbone, z którego wystartowała — różnica jest w całości zasługą world-learningowego pre-trainingu:

ModelMVBenchTemporalBench (MBA)SWITCHAvg (4 benchmarki)
Orca-4B65.334.255.651.8
Qwen3.5-4B (backbone)67.125.242.846.7
V-JEPA 2.1 + LLaMA3-8B75.428.5
MiniCPM-V-4.637.9
Emu3.529.8

Avg obejmuje MVBench + TemporalBench + 3DSRBench + SWITCH.

W małej skali ta sama historia, tylko mocniej: Orca-0.8B średnio 40.8 vs 33.1 Qwen3.5-0.8B — plus 7.7 punktu z remiksu tego samego backbone’u.

Uczciwie o porażkach: V-JEPA 2.1 z LLM-em 8B wygrywa MVBench w cuglach (75.4 vs 65.3), a nawet goły Qwen3.5-4B jest tam minimalnie lepszy od Orki (67.1 vs 65.3). Za to zyski Orki lądują dokładnie tam, gdzie celuje metoda. Rozbicie na wymiary zdolności (Table 2, Orca-4B vs Qwen3.5-4B):

Wymiar zdolnościOrca-4BΔ vs Qwen3.5-4B
State Transition64.13+12.27
Dynamic Motion65.55+8.52
Commonsense62.95+5.19
Spatial Relations55.25+0.57

Przejścia stanów i ruch rosną, relacje przestrzenne stoją w miejscu. Sygnał treningowy kształtuje dokładnie to, czego dotyka — to bardziej potwierdzenie mechanizmu niż przypadek.

Obraz: PRICE-V0.1 i sędziowie-LLM

Predykcję obrazu (“pokaż klatkę po wykonaniu tej instrukcji”) oceniono na PRICE-V0.1 — własnym benchmarku autorów, punktowanym przez czterech sędziów-LLM:

ModelAvg score (%)
Orca-4B (+2B SD3.5)59.8 ± 10.9
FLUX.2 [klein] (4+4B)56.1 ± 18.1
FLUX.1-Kontext (12B)40.9 ± 13.5
OmniGen2 (3+4B)39.6 ± 10.2
Orca-0.8B (+2B SD3.5)34.5 ± 15.3

Orca-4B ogrywa 12-miliardowy model edycyjny zamrożonym 2B dekoderem i cienkim adaptorem. Tylko spójrz na kolumnę ±: rozrzut sędziów jest kuriozalny. Za te same obrazki Orki-4B Gemini 3.1 Pro daje 44.0, a GPT 5.4 — 67.9. Dwadzieścia cztery punkty różnicy za identyczne wyjścia. Open-source’owy Gemma 4-31B dodano do składu sędziowskiego wyłącznie po to, żeby wyniki dało się zreprodukować. No i Orca-0.8B zajmuje na tym benchmarku ostatnie miejsce — o czym narracja o skalowaniu wolałaby zapomnieć.

Robot: 200 trajektorii vs wielkoskalowy pre-training π0.5

Dla tej tabeli ten paper istnieje. Pięć zadań na prawdziwym robocie (książka na półkę, stackowanie misek, chusteczka z pudełka, pieczątka, cukier łyżeczką), każde uczone z 200 trajektorii, testowane out-of-distribution: niewidziane obrusy (Environment OOD) i podmienione obiekty — chusteczki zastąpione chlebem z tostera, miski pudełkami (Object OOD).

Model (rule-based score)OverallEnvironment OODObject OOD
Orca-4B32.436.628.2
π0.5 (wielkoskalowy pre-training robotyczny)29.427.631.2
V-JEPA 2.1 w/ Action Expert17.0
Qwen3.5 w/ Action Expert10.5

Trzy obserwacje, od najprzyjemniejszej do najmniej wygodnej:

  1. W pre-trainingu Orki nie było ani jednej etykiety akcji, a mimo to overall wygrywa z π0.5 — modelem, którego całą racją bytu jest wielkoskalowy pre-training na akcjach. W Environment OOD przewaga to +9.0. Przyznam, że ten wynik mnie zaskoczył — wiedza motoryczna wyłoniła się z samego oglądania wideo.
  2. Object OOD wygrywa π0.5 (31.2 vs 28.2, do tego prowadzi tam w milestone’ach M25: 25.1 vs 21.8 i M50: 12.9 vs 10.8). Patrzenie na wideo uczy, jak ewoluują sceny; generalizacji chwytu na nowy obiekt najwyraźniej lepiej uczy fizyczne obcowanie z obiektami.
  3. Ten sam Action Expert doklejony do V-JEPA 2.1 daje 17.0, a do gołego Qwen3.5 — 10.5. Ta ostatnia liczba mówi najwięcej: wynik niosą dedykowane query i pre-training przejść, a nie backbone Qwena ani architektura eksperta (10.5 → 32.4 przy tym samym budżecie dekodera).

I liczba, o której paper pisze uczciwie, ale nagłówki już nie: binarny success rate jest u wszystkich bliski zera (0–3%). Żaden model nie kończy tych zadań niezawodnie. Zwycięstwo mierzy się częściowym postępem — osiągniętymi milestone’ami — nie dowiezioną manipulacją.


Ablacja: który loss naprawdę robi robotę?

Ablacja włącz/wyłącz trzech strat to moim zdaniem najciekawsza tabela w paperze — między innymi dlatego, że podważa jego własną narrację:

KonfiguracjaTekstObrazAkcje
obs + evt + vqa (pełny model)51.859.832.4
tylko vqa48.410.2
obs + vqa32.6
evt + vqa23.0

("—" przy obrazie: bez $\mathcal{L}_{\mathrm{evt}}$ readout obrazu w ogóle nie działa.)

Co z tego wynika:

  • $\mathcal{L}_{\mathrm{evt}}$ to warunek konieczny predykcji obrazu — bez event-conditioningu nie ma jak wskazać językiem stanu docelowego i readout po prostu pada.
  • $\mathcal{L}_{\mathrm{vqa}}$ utrzymuje interfejs językowy przy życiu — wyrzuć go, a readout tekstu umiera.
  • $\mathcal{L}_{\mathrm{obs}}$ karmi robota. Sama VQA daje akcje 10.2; dołożenie gęstej dynamiki klatka-po-klatce skacze do 32.6; eventy plus VQA bez obs wyciągają ledwie 23.0. Polityka manipulacji konsumuje krótkoskalowy, naturalny ruch — nie semantykę eventów.

I niespodzianka: obs + vqa daje na akcjach 32.6 — odrobinę WIĘCEJ niż pełny model (32.4). Sztandarowy “conscious learning” eventów nie dodaje akcjom nic; pełna trójka wygrywa tylko zbalansowaną średnią (48.0 po trzech readoutach). Sama VQA jest z kolei tylko 3.4 punktu za pełnym modelem na tekście. Ściśle rzecz biorąc, event-conditioning jest niezbędny dla dokładnie jednego readoutu z trzech: obrazu. Chętnie przeczytałbym, co autorzy o tym sądzą — paper przechodzi nad tym dość szybko.

Drugą stroną medalu jest probing checkpointów (Figure 6) — i to jemu ufam najbardziej: zamroź backbone na kolejnych checkpointach pre-trainingu, przetrenuj readouty od nowa, a wszystkie trzy krzywe rosną monotonicznie z ilością danych, przy czym 4B > 0.8B wszędzie. Jakość latentu przekłada się na wszystkie trzy readouty naraz. To jest teza o “jednej kanonicznej bazie”, przetestowana tak, jak należy.


Sceptyczne okulary: co paper przemilcza

Czas zdjąć czapkę kibica.

  • “World latent” jest odziedziczony, nie nauczony. W tej wersji przestrzeń stanów to przestrzeń embeddingów zamrożonego ViT z Qwen3.5 — semantycznego enkodera wytrenowanego przez kogoś innego. Orca uczy się przejść wewnątrz niej. Autorzy przyznają to w Limitation 2, ale tytuł i abstract sugerują coś bardziej natywnego, niż faktycznie zbudowano.
  • Porównania są starannie dobrane. “Przewaga nad wyspecjalizowanymi baselinami porównywalnej skali” dyskretnie omija MVBench, gdzie V-JEPA 2.1 wygrywa o 10 punktów, a nawet goły backbone o 1.8 — oraz Object OOD, gdzie wygrywa π0.5.
  • PRICE-V0.1 to własne boisko. Mały, o ograniczonej różnorodności (Limitation 4), oceniany przez LLM-y z promptem nakazującym łagodne kryteria zaliczenia, z 24-punktowym rozrzutem między sędziami. A wariant 0.8B zajmuje na nim ostatnie miejsce.
  • Binarny sukces bliski zera. Robot właściwie nie kończy zadań; zwycięstwo żyje w metrykach częściowego postępu. Metryki uczciwe i raportowane wprost — ale “wygrywa z π0.5” zasługuje na tę gwiazdkę.
  • Brak kontroli compute-matched. Porównanie, którego brakuje mi najbardziej: dotrenuj gołego Qwen3.5 na tych samych 12.5K godzin wideo samą VQA, ten sam budżet, zero strat przejścia. Ablacja “tylko vqa” jest tego przybliżeniem i na tekście traci ledwie 3.4 punktu. Ile zysku daje “modelowanie świata”, a ile “po prostu więcej wideo” — pozostaje otwarte.

Nic z tego papera nie zatapia. Ale wielka rama (“zunifikowany model świata”) wyprzedza materiał dowodowy, który na dziś brzmi: pre-training przejść w latencie to mocny, bezetykietowy prior dla sterowania, przydatny dla rozumowania czasowego i niezbędny dla predykcji obrazu warunkowanej instrukcją. To prawdziwy wynik. Tylko krótsze zdanie.


Dla kogo to jest?

Dla praktyków

Jeśli robisz robotykę, najważniejsza jest tu ekonomia danych. Teleoperacja kosztuje i się nie skaluje; wideo jest darmowe. Orca sugeruje pipeline, w którym fizyka pochodzi z biernego oglądania, a demonstracje pokrywają tylko ostatnią motoryczną milę — tutaj 200 na zadanie. Warto wypatrywać checkpointów: zamrożony backbone plus trenowany od zera DiT (8 bloków, hidden 1024) to setup, na którego replikację stać małe laboratorium, a najdroższy z dekoderów to 556.9M adaptor obrazu.

Jeśli budujesz produkty multimodalne, a nie roboty, zabierz ze sobą sam protokół: zamroź swój foundation model i mierz jakość reprezentacji tym, jak radzą sobie cienkie readouty. To czystszy test regresji na pytanie “czy nasz pre-training coś poprawił” niż fine-tuning end-to-end, w którym dekoder potrafi zamaskować stojący w miejscu rdzeń.

Dla badaczy

Orca to pierwsza poważna próba sklejenia programu JEPA z warunkowaniem językowym na taką skalę, a jej najtrwalsze artefakty są metodologiczne: protokół probingu z zamrożonym backbone’em, taksonomia unconscious/conscious dla danych i obserwacja, że ogranicza pojemność, nie dane — zużyto 10% własnego korpusu. Otwarte wątki, częściowo podarowane przez ablacje: dlaczego event-conditioning pomaga obrazom, a akcjom nie? Czy predykcja wsteczna ($\Delta < 0$) w ogóle coś wnosi, skoro nigdy nie zbadano jej w osobnej ablacji? Da się zastąpić trzy straty jedną, wierną równaniu (1)? (Autorzy sami tego chcą — Limitation 7.) I pytanie największe: podmień odziedziczony ViT na natywnie uczoną przestrzeń stanów i sprawdź, czy historia przetrwa.


Techniczne szczegóły

Dla zaawansowanego czytelnika — trzy rzeczy, które trzeba wiedzieć przed replikacją.

Inżynieria treningu na poziomie startupu infrastrukturalnego. Migracja z DeepSpeed na FlagScale + FSDP2, chunked cross-entropy (bez materializacji pełnych logitów), activation recompute i pre-fetching all-gather w forward/backward podniosły przepustowość z 0.66 do 2.91 samples/sec/GPU na H100 — 4.4× względem standardowego stacku społeczności embodied (StarVLA) i 3.0× względem gołego FSDP2. Rozbicie: chunked CE 0.97 → 1.35, recompute → 2.86, pre-fetching → 2.91.

Okablowanie readoutów, dokładnie. Obraz: 64 tokeny latentu × 2560 → LayerNorm + Linear 2560→4096 → 4 bloki rezydualne 4096→16384→4096 → mean-pool do 2048 wymiarów jako pooled condition, wpięty w jedną ścieżkę MMDiT zamrożonego SD3.5; trenują się tylko adaptor (556.9M) i LoRA rank 32 na projekcjach attention. Akcje: hidden state Query 1 idzie przez MLP-adaptor do cross-attention DiT-eksperta; warunkami są zaszumiony chunk akcji + time embedding + 16-wymiarowa propriocepcja.

Query nie są ozdobą. Baseline “Qwen3.5 w/ Action Expert” czyta ten sam dekoder z last hidden state VLM-a zamiast z dedykowanych query — i dostaje 10.5 wobec 32.4 Orki. Dedykowane, uczone od zera porty odczytu, które nie zaburzają oryginalnego strumienia tokenów, są warte na tej metryce jakieś 3×. Najtańsze 2×256 wektorów, jakie zaalokujesz w tym roku.


Ograniczenia

Paper wylicza własne słabości z rzadką szczerością — jest ich osiem:

  • Tylko dwie modalności. Brak audio (wrzącą wodę słychać, zanim ją widać), dotyku, siły i propriocepcji w pre-trainingu.
  • Odziedziczona przestrzeń stanów. Latent zakotwiczony w zamrożonym ViT cudzego VLM-a, nie uczony natywnie z sygnałów świata.
  • Mała skala i widoczny trade-off. Przy 0.8B, a nawet 4B, readouty konkurują o pojemność w trakcie pre-trainingu; zmieściła się 1/10 wideo — gardłem jest model, nie dane.
  • PRICE-V0.1 jest mały i mało różnorodny.
  • Eventy krótko-horyzontowe. Anotacje obejmują minuty; ewolucji stanu w godzinach i dniach nikt nie modeluje.
  • Trzy przetestowane readouty. Audio, obwody kwantowe, białka — zadeklarowane, niesprawdzone.
  • Trzy osobne straty zamiast jednej, spójnej z duchem Next-State-Prediction.
  • Proste zadania robotyczne, niski sukces bezwzględny. Krótkie manipulacje, a binarny success rate bliski zera u wszystkich metod.

Podsumowanie

  1. Jeden cel, trzy paradygmaty. Next-State-Prediction (równanie 1) obejmuje next-token, next-frame i next-action jako rzuty latentnego stanu świata, ewoluującego w przód i w tył w czasie, napędzanego ukrytą dynamiką $z_t$ i sterowanego jawnymi warunkami $c_t$.
  2. Nadzór w latencie zamiast malowania pikseli. Predykcja embeddingów zamrożonego ViT ze stratą 0.1·MSE + 0.9·cosine kupuje fizykę bez płacenia za teksturę — a zamrożona kotwica przy okazji chroni przed representation collapse.
  3. Protokół frozen backbone to właściwy wkład papera. Cienkie readouty na nietkniętym rdzeniu zamieniają pytanie “czy reprezentacja jest dobra?” w mierzalne, a wszystkie trzy readouty rosną monotonicznie z danymi pre-trainingu (4B > 0.8B wszędzie).
  4. Emergentna motoryka to nagłówek. Zero etykiet akcji w pre-trainingu, 200 trajektorii na zadanie — i readout akcji wygrywa overall z π0.5 (32.4 vs 29.4). Ale π0.5 trzyma Object OOD, V-JEPA 2.1 trzyma MVBench, a binarny sukces nikogo nie przekracza 3%.
  5. Ablacja to drobny druk. obs+vqa minimalnie bije pełny model na akcjach (32.6 vs 32.4), a sama VQA traci na tekście tylko 3.4 punktu — event-conditioning jest naprawdę niezbędny wyłącznie dla obrazu. Zunifikowana opowieść ma widoczne szwy.

Model, który świat wyłącznie oglądał, prawie dogonił model, który całe życie w nim działał — więc może większość tego, czego robot potrzebuje, nigdy nie siedziała w etykietach akcji.

📎 Linki