whatisgithub

What is flowwam?

yixiangchen515/flowwam — explained in plain English

Analysis updated 2026-05-18

29PythonAudience · researcherComplexity · 5/5Setup · hard

In one sentence

Research code for FlowWAM, which uses optical flow (per-pixel motion) as a shared representation to let a video generation model also predict robot actions.

Mindmap

mindmap
  root((FlowWAM))
    What it does
      Optical flow actions
      World action model
      Robot control
    Tech stack
      Python
      PyTorch
      Diffusion models
    Use cases
      Robot policy inference
      RoboTwin evaluation
      Video pretraining
    Audience
      Researchers

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Reproduce the paper's robot control results by running the released checkpoint against the RoboTwin benchmark.

USE CASE 2

Use optical flow computed from unlabeled video to pretrain an action model before fine-tuning on robot data.

USE CASE 3

Run multi-GPU evaluation across RoboTwin's 50 built-in robot manipulation tasks.

What is it built with?

PythonPyTorchCUDADiffusion Models

How does it compare?

yixiangchen515/flowwamadityasharmadotai-hash/docs-reader-rag-agentalekseiul/hermes-researcher-agent
Stars292929
LanguagePythonPythonPython
Setup difficultyhardeasymoderate
Complexity5/52/52/5
Audienceresearchervibe coderresearcher

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · hard Time to first run · 1day+

Needs a GPU, a matched CUDA/PyTorch build, a separate RoboTwin simulator environment, and multi-gigabyte model downloads.

So what is it?

FlowWAM is the official code release for a research paper about controlling robots using a technique called optical flow, and it is written in Python. The broader idea it builds on is called a World Action Model, which repurposes an AI video generator, a model normally trained to predict what happens next in a video, so that it can also predict robot actions. The problem the paper addresses is that action commands for a robot, such as joint movements, do not naturally look like the pixels a video model was trained on, creating a mismatch between the two. FlowWAM's solution is to represent robot actions using optical flow instead, which is a per pixel map of how things visually move from one video frame to the next. Because optical flow can be extracted directly from ordinary video, even video that was never labeled with robot action data, it fits naturally into the same visual format the underlying video generator already understands. A single shared model, built as what the authors call a dual stream diffusion model, both predicts this flow as the action to take and uses flow as an input when imagining what the world will look like next, and it can be pretrained on large amounts of unlabeled video before being fine tuned for a specific robot task. The repository includes training code, an inference server that a robot control script can talk to over a network connection, and a data generation tool that renders a robot-only view of a scene for computing flow. It is built to plug into an existing robot simulation benchmark called RoboTwin as an add on policy, without needing to edit RoboTwin's own source code, and it ships scripts to evaluate performance across RoboTwin's 50 built in tasks, including support for running multiple evaluations in parallel across several graphics cards. Setting it up requires a GPU, a specific version of PyTorch matched to a particular CUDA version, a separate RoboTwin simulation environment installed alongside it, and downloading multi gigabyte pretrained video model weights along with the project's own released checkpoints and training dataset from Hugging Face.

Copy-paste prompts

Prompt 1
Walk me through setting up the flowwam conda environment and downloading the base Wan model weights.
Prompt 2
Explain how optical flow is used here as a shared representation for both robot actions and world prediction.
Prompt 3
Show me how to start the FlowWAM inference server and connect it to a RoboTwin evaluation.
Prompt 4
Describe what the robot-only rendered view is used for when generating training data.

Frequently asked questions

What is flowwam?

Research code for FlowWAM, which uses optical flow (per-pixel motion) as a shared representation to let a video generation model also predict robot actions.

What language is flowwam written in?

Mainly Python. The stack also includes Python, PyTorch, CUDA.

How hard is flowwam to set up?

Setup difficulty is rated hard, with roughly 1day+ to a first successful run.

Who is flowwam for?

Mainly researcher.

Open on GitHub → Ask about another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.