ML Application · Text to motion

OaAlm

An Animation Language Model that turns a text prompt into motion tokens, reconstructs canonical human motion, and writes a playable USD skeleton clip through one OA pipeline.

End-to-end verifiedNative Vulkan text encoderEarly checkpoint
A literal prompt is encoded on Vulkan, sampled into three motion sequences, exported as USD, and opened in a Hydra viewport. 720p · 30fps · 1:08.

A complete early result

The current model is deliberately small enough to train on a 2021 Lenovo ThinkPad X1 Carbon Gen 9. Its 11th-generation Intel Core i5-1145G7 and integrated Iris Xe trained the presentation checkpoint from scratch in approximately 95 minutes of recorded training time. The promptattack with one handed right hand weapon, sword already produces recognizably attack-like movement.

This is a working research checkpoint, not a polished animation model. The important result is that text conditioning changes motion through the complete native path on ordinary integrated graphics—without a server-side generator or a separate Python inference stack.

One deployable model

Text encoder, tokenizer, motion prior, weights, architecture metadata, and BPE state ship in one versioned Alm.oam bundle.

Native conditioning

The frozen CLIP text tower and the motion model execute through OA on Vulkan; no precomputed feature file is needed at generation time.

Hardware-efficient scale

The complete presentation checkpoint was trained locally on an Intel Iris Xe integrated GPU rather than datacenter hardware.

Portable execution model

The same OA runtime already trains neural networks on Android. OaAlm mobile inference is an integration target, not a separate architecture.

What the demonstration shows

Demo contractObserved run
HardwareLenovo ThinkPad X1 Carbon Gen 9 · Core i5-1145G7 · Intel Iris Xe
PrecisionFP32
Promptattack with one handed right hand weapon, sword
ArtifactOne OaAlmAg / Alm.oam model bundle
GenerationThree clips in 8.81 seconds
Output length116–256 frames per clip
Output boundaryCanonical HumanML3D skeleton motion in USD plus metadata

Prompt to USD

StageOperation
PromptCLIP-compatible byte-BPE produces the text token sequence.
ConditioningThe frozen CLIP text tower executes through OA on Vulkan and produces the semantic prefix.
GenerationA dense causal Transformer samples discrete motion tokens from the conditioned prefix.
ReconstructionThe temporal VQ tokenizer decodes and denormalizes 263-channel HumanML3D motion.
OutputThe canonical inverse writes an inspectable USD skeleton clip and generation metadata.

The USD file is the canonical ML output boundary. Production-character retargeting, rig controls, joint constraints, and DCC-specific animation curves remain downstream animation tasks rather than being baked into the learned representation.

Held-out checkpoint metrics

MetricResult
Tokenizer validation loss0.146767
Tokenizer MPJPE33.634 cm
Tokenizer contact accuracy92.74%
Conditional prior validation loss2.021006
Conditional prior perplexity7.546
Motion-token accuracy64.72%

Current quality boundary

Motion is still noisy, initial and final frames can deform, and multiple samples can converge on similar movement. These are visible model-quality limitations, not hidden pipeline gaps. The next work is better tokenizer reconstruction, boundary-aware training, stronger conditioning, and longer quality-focused runs.

OA's Android runtime already validates native Vulkan training and checkpoint replay on a physical phone. That establishes the portability path for OaAlm inference; the exact 506MB presentation bundle has not yet been qualified on mobile hardware.See OA Mobile Lab.

View the generation application View the OaAlm module