CanIEmbody

Flow matching

Also: conditional flow matching, CFM

A generative training method that regresses a velocity field carrying noise to data; VLAs such as π0 and SmolVLA use it to generate continuous action chunks.

Flow matching trains a network to predict a velocity field that transports samples from a simple noise distribution to the data distribution along a chosen probability path. At inference the field is integrated with an ODE solver over a fixed number of steps. It was introduced by Lipman, Chen, Ben-Hamu, Nickel and Le in "Flow Matching for Generative Modeling" (2022), which describes it as "a simulation-free approach for training CNFs based on regressing vector fields of fixed conditional probability paths". Diffusion paths are a special case; straight optimal-transport paths are the usual choice.

In robot policies the generated sample is an action chunk, conditioned on images, language and proprioceptive state. π0 (Black et al., 2024) attaches a flow-matching action expert to a pretrained vision-language model. LeRobot documents flow-matching action heads for π0.5, SmolVLA, GR00T N1.7, X-VLA, EO-1 and EVO-1. In LeRobot v0.6.1, π0 defaults to num_inference_steps=10 and SmolVLA to num_steps=10: each chunk costs ten passes through the action network, so the step count belongs in any inference latency figure.

A common misconception is that flow matching and diffusion are unrelated families. The π0 paper itself calls flow matching "a variant of diffusion". The practical differences are the training target (a velocity rather than noise) and, typically, fewer integration steps at inference. Both are iterative samplers, so both pay a per-step cost on the robot, and real-time chunking was designed for policies of either kind.

Policies where this matters

π0 · π0.5 · SmolVLA · GR00T N1.7 · X-VLA · EO-1 · Evo-1

Related

Diffusion policy · Action chunking · Vision-language-action model · Inference latency · Real-time chunking

Sources

  1. T1 · upstream documentedpapersource 2022-10-06verified 2026-10-24 (1d ago)

    Lipman et al. introduce Flow Matching.

    “we present the notion of Flow Matching (FM), a simulation-free approach for training CNFs based on regressing vector fields of fixed conditional probability paths.”
    https://arxiv.org/abs/2210.02747
  2. T1 · upstream documentedpapersource 2024-10-31verified 2026-10-24 (1d ago)

    π0 uses a flow-matching architecture on top of a pretrained VLM.

    “We propose a novel flow matching architecture built on top of a pre-trained vision-language model (VLM) to inherit Internet-scale semantic knowledge.”
    https://arxiv.org/abs/2410.24164
  3. T1 · upstream documentedpapersource 2024-10-31verified 2026-10-24 (1d ago)

    π0 paper describes flow matching as a variant of diffusion.

    “flow matching (a variant of diffusion) to represent complex continuous action distributions”
    https://arxiv.org/html/2410.24164
  4. T1 · upstream documentedofficial-docssource 2026-08-03verified 2026-10-24 (1d ago)lerobot 0.6.1

    LeRobot RTC docs name Pi0, Pi0.5 and SmolVLA as flow-matching policies.

    “large, flow-matching based robotic policies, such as [Pi0](./pi0), [Pi0.5](./pi05), and [SmolVLA](./smolvla)”
    https://github.com/huggingface/lerobot/blob/v0.6.1/docs/source/rtc.mdx
  5. T1 · upstream documentedsource-codesource 2026-08-03verified 2026-10-24 (1d ago)lerobot 0.6.1

    LeRobot v0.6.1 π0 uses 10 denoising steps by default.

    “num_inference_steps: int = 10 # Number of denoising steps during inference”
    https://github.com/huggingface/lerobot/blob/v0.6.1/src/lerobot/policies/pi0/configuration_pi0.py