Hey guys! I’m Neel, been holed up in our south park office for the past year working on model training. excited to share our research!<p>This is a preview of a very different type of computer use model—we train on the internet. Specifically we have 11 million hours of computer video stored on our storage cluster (previously shared <a href="https://news.ycombinator.com/item?id=45438496">https://news.ycombinator.com/item?id=45438496</a> !) and the model can work in 30 FPS. Since we match the fundamental form factor of computer-use, we can get our model to do CAD, browse websites, and even drive a car using arrow keys. I’m super excited to see what our model can do as we scale more, it's a fun frontier to work on (not language models :) ).<p>The team and I will be online responding to the comments, so drop any questions.
11 million hours of data is a lot, did you have to synthesize it at all, or was it purely collected?
This looks like a really promising approach<p>In particular the Forward rollout module is very important. It aligns your (effectively) world model with what it expects from the world, and keeping those in sync I think gives this the power it needs to be able to generate the state action pairs to continuously train semi supervised
This looks extremely impressive, really deserves more attention here.<p>Are the inverse dynamics and forward dynamics models trained separately? It sounds like if the inverse dynamics model is meant to extrapolate more training data, then perhaps all that means is it takes very little data to generalize directly with the forward dynamics model assuming the right architecture.
I rly liked the point about ctrl-c only being able to be labelled retrocausally. I do think that with enough past context you should be able to know what was copied - in some sense the past does encode the future - but also an agentic decision is precisely the kind where the future is more informative than the past for reconstructing that decision.<p>It does make me wonder if you should have the inverse dynamics model split into specifically retrocausal and causal. You kind of do this already with the inverse and forward dynamics model, but the idea of a model that knows only
about the future training in a feedback loop with a model that knows only about the past is kind of interesting.<p>I think you could just do a clever masking regime in your diffusion model to achieve the same effect without a whole architecture change.
At first glance, this looks incredible to me. The authors train one model on 40K hours of computer-use video, previously labeled by contractors with keyboard and mouse actions, then use that model, in effect, to label 11M hours of computer-use video, which they use to train the computer-action model. The key advance is in compression. Quoting from the OP:<p><i>> [previous models] burn a million tokens to understand just one minute of 30 FPS computer data. Our video encoder encodes nearly 2 hours of video in the same number of tokens—that’s 50x more token-efficient than the previous state-of-the-art and 100x more token-efficient than OpenAI’s encoder.</i><p>While I was already aware that there are people working on new, more efficient "world models," this is the first one I've seen in action. I'm a bit in shock at how good it is, quite frankly.<p>I've added the OP, as well as a related 2018 paper on <i>Behavioral Cloning from Obervation</i> (BCO) to my reading list.[a] So far, I've only skimmed the 2018 paper, but it's already evident that it's well-written. I'm no expert in deep RL, and I can understand it. BTW, "Behavioral Cloning from Obervation" is a really good name, with an easy-to-remember acronym.<p>Thank you for sharing this on HN.<p>[a] <a href="https://arxiv.org/abs/1805.01954" rel="nofollow">https://arxiv.org/abs/1805.01954</a>
dammmmmmnnnn - lots to like here. I'm impressed with the 80,000 parallel website fuzzing desktops. And the 30hz (everything). Amazing.
Nice that it can drive a car, but you could just use openpilot.
May I suggest a driving demo in a parking lot with a mannequin instead of a real world video where it drives way too close to a pedestrian?<p>Otherwise, very cool and exciting!
Just wanted to say: this is might impressive research.<p>Really interesting breakdown, proper nerdsniped into this, thanks for the refreshing AI news outside of language models :)
The video compression is very cool. And the small tricks like binning the mouse movements.<p>Wonder how much data is generalizable across different UIs? ie how good will the model be at using Figma if it’s never seen it before but has seen a lot of Photoshop
Curious about the masked diffusion IDM choice. They mention CTC loss and cross-entropy both underperformed — I'd love to see ablations on that. The claim that typos were "extremely common" with non-causal cross-entropy is interesting but hand-wavy without numbers.
The car thing is very impressive
By the way, do you have plans to handle the computer’s audio output?
Can it defeat captchas?
Looks like it's playing the special stages from Knuckles' Chaotix?
What sort of fine tuning data was needed to allow the model to self-drive? One hour of video of someone driving, or extra labeling?
i actually drove the car (with arrow keys) around south park for around ~45 minutes as finetuning data, no extra labelling other than that. think the car line graph is super cool because you actually see the videegame prior working
relevant note is that we finetuned by having the human also use arrow keys which keeps it in-distribution but also slower to collect
what tasks can the model do out of the box? was each of the examples a different fine tuned model?
it's a pretty general policy but this is all super early, it's great at exploring websites so fuzzing was easy, for CAD it has good enough base rates with the few-shot prompt when we do the repetitive stuff, and we gave it checkpoints on each step, the other stuff in the mosaic are just some of our favorite clips from internal evals
How do you tokenize the mouse inputs?
good question! we use exponential binning (map the mouse movements onto a plane with exponentially increasing tick marks <a href="https://si.inc/fdm1/exponential_binning.webp" rel="nofollow">https://si.inc/fdm1/exponential_binning.webp</a>) but tried a bunch of other methods (linear creates too many tokens for the model to learn well). Polar coordinates seem like a better solution but empirically didn't work well because the tokens got too coarse too fast.
we do exponential binning but fwiw I think we can do way better just hasn't been the main research area initially
Amazing!
holy crap, this is so good. How did it get buried?
My tech-informed but ML-ignorant take: This will soon be the biggest thing since ChatGPT.
[dead]