Hugging Face × Reflection · Build with Beam
Beam plays a game
that runs inside Beam.
Beam-1.0-501B plays live. The game’s CPU, RAM and clock run as tokens inside a hand-built BeamForCausalLM, and every frame is verified.
What you’re looking at
By the numbers
How one turn works repeated 43 times in the run
1 · BEAM LOOKS
Beam-1.0-501B (on Hugging Face Inference) gets the screen as text, plus short hints like “gap 12 px ahead”.2 · BEAM PRESSES KEYS
It answers with a move, such as right+jump, which is held for 4 frames.3 · THE MODEL RUNS THE GAME
The small model writes about 1,800 tokens per frame: every instruction, memory write and pixel the game produces.4 · NEW SCREEN
The screen is rebuilt from those tokens, checked against the emulator, and sent back to Beam.Look inside the model every part is known
Normal AI models are black boxes. This one was built by hand, so we know what every part does, and we can check it inside the real model.
Example: how the model remembers. The game asks “what is in register V0 right now?” Over the game, 24 different values were stored in V0. One attention head in layer 5 looks back over everything the model has written (4,036 tokens) and puts 100% of its attention on the most recent value, and 0% on the 23 older ones. Attention, used this way, is the computer’s memory.
Every time the game read a register in this frame, the head found the newest value (over 99% of its attention).
Old values and every other token get no attention at all.
A Beam-design model where the right answer is known is a test for interpretability tools: can your method find the memory head we know is here?
Reproduce: in the Hub repo's vendor/ (full source of the computer), run python scripts/attention_probe.py --frames 6 --draft-tokens 1400. It takes about a minute on a CPU.
The live run
Train your own agent on it an OpenEnv RL environment
Anyone can plug an AI agent into SUPERBEAM and train it. reset() starts a level; step(action) presses keys and returns the new screen and a score. It follows the OpenEnv standard, so it works with TRL and other RL tools.
6 actions: noop, left, right, jump, right+jump, left+jump text + pixels: labelled ASCII screen, facts line, raw 32x64 bits reward: 100 x progress, +5 per coin, +50 win, -25 death endless new levels, each checked to be winnable; separate training and test levels
Two engines: a fast emulator for training (CPU only), and the model-as-console above for checked evaluation.
from superbeam_env import SuperBeamAction, SuperBeamEnv
URL = "https://baptinjean20--superbeam-env-web.us-east.modal.run"
with SuperBeamEnv(base_url=URL).sync() as env:
r = env.reset()
while not r.done:
r = env.step(SuperBeamAction(action="right"))
print(r.observation.facts)
That URL is a public server that is already running (the first request after a quiet spell takes ~30 s). Code, docs and a TRL GRPO training example: huggingface.co/StarAtNyte1/superbeam-env.
Leaderboard 20 new levels nobody trained on
Prior work: Qwenputer and Nesformer put CPUs inside Qwen weights. Super Beam adds a frontier model playing live against a verified in-weights computer, shipped as an RL environment.