KM tokenizer, per tick, coarse (3 ร 1000)
A discrete tokenizer for keyboard and mouse input, trained on Minecraft gameplay recordings. It turns
100 Hz key and mouse frames into 3 codes per 80 ms tick (each code in [0, 1000)), and turns codes
back into key and mouse frames.
It differs from CharlieH512/km_tokenizer_ctx14_8x1000 in two ways:
- One step per tick. Before encoding, each tick's 8 frames are reduced to a single step: a key counts as held for the whole tick if it was held at any moment in it, and the tick's mouse movement is summed and spread evenly over its 8 frames. The tokenizer encodes and rebuilds this coarse form; the exact 10 ms timing inside a tick is not kept.
- Strictly per tick. No attention across ticks in the encoder or the decoder: a tick's codes describe that tick alone. The only exception is the first frame's "pressed / released this frame" key features, which compare with the previous tick's last frame, so a tick's codes can depend on whether a key was already held in the previous tick.
During training, each tick's key loss was weighted up by how rare its key pattern is in the training data (up to 10ร), so rare key combinations are rebuilt as well as common ones.
- Weights:
model.safetensors(10.75 M parameters, fp32) - Config:
config.json(fields ofKmTokenizerCtx14Config;coarse_ticks: true,encoder_tick_radius: [0, 0, 0, 0],decoder_across_ticks: false,num_tokens: 3,fsq_levels: [8, 5, 5, 5])
The network is the ctx14 architecture (attention over a tick's 8 frames, a linear map to one latent per tick cut into 3 slices, each slice quantized with FSQ levels 8 ร 5 ร 5 ร 5 = 1000 codes; the decoder expands each tick's codes back to 8 frames of 79 key logits and, per mouse axis, logits over 241 movement bins). Input format and key order are the same as ctx14's.
- Downloads last month
- 29