Model reference · open weights
Flora-Captioner is an open-weight language model from NVIDIA. Flora-Captioner (FP32) weighs 54.7 GB; the smallest configuration that runs it is H100 80 GB.
For self-hosting, compare this build's requirements below with the GPU you plan to rent.
Summary of the nvidia/Flora-Captioner model card, 2026-10-23
What it is
| Released by | NVIDIA |
|---|---|
| Released | 2026-10-01 |
| Parameters | 27.4B |
| VRAM | 54.7 GB for the weights |
What it runs on
| Card | Requests at once | Context max | Memory | |
|---|---|---|---|---|
| 8K each | 32K each | |||
| RTX 3060 12 GB … L40S 48 GB 6 smaller cards | ||||
| A100 80 GB | 25 | 8 | all 256K | 78.2 GB |
| H100 80 GB | 18 | 6 | 227K | 78.1 GB |
| RTX PRO 6000 Blackwell 96 GB | 37 | 12 | all 256K | 93.8 GB |
| DGX Spark (GB10) 128 GB unified | 53 | 18 | all 256K | 107 GB |
| H200 141 GB | 89 | 30 | all 256K | 138 GB |
| B200 180 GB | 133 | 45 | all 256K | 176 GB |
| 2× L40S 48 GB tensor parallel | 34 | 11 | all 256K | 44.0 GB a card |
| 4× RTX 4090 24 GB tensor parallel | 35 | 12 | all 256K | 23.4 GB a card |
| 4× RTX 3090 24 GB tensor parallel | 35 | 12 | all 256K | 23.4 GB a card |
| 4× RTX 5090 32 GB tensor parallel | 71 | 24 | all 256K | 31.0 GB a card |
| Requests at once | 8K tokens each | 32K tokens each |
|---|---|---|
| 1 | 57.8 GB | 59.4 GB |
| 5 | 61.1 GB | 69.2 GB |
| 8 | 63.7 GB | 76.6 GB |
| 16 | 70.4 GB | 96.2 GB |
| 32 | 83.9 GB | 135 GB |
| 64 | 111 GB | 214 GB |
One card, with vLLM's small-card settings.
From the model card
Flora-captioner-27B generates one action instruction for a supplied target interval in a robot or human manipulation video. It uses neighboring video context to disambiguate the intended local operation. In the Flora data engine, target intervals come from temporal segmentation and stitching; the captioner supplies the text used for balancing the pretraining data distribution. Flora was developed by NVIDIA as the data engine used for training GR00T-2, and is released to help researchers scale up custom robot datasets.
This model is for research and development only.
Use of this model is governed by the NVIDIA OneWay Noncommercial License (22 March 2022).
This model has been post-trained on Qwen/Qwen3.5-27B, revision fc05daec18b0a78c049392ed2e771dde82bdf654. The Qwen base model is licensed under Apache License 2.0.
You are responsible for ensuring that your use of NVIDIA provided models complies with all applicable laws.
Global
Researchers, Academics, Open-Source Community: Annotating robot datasets with language; and research into emerging applications such as physical auto-research and human-to-robot transfer. Developers: Prototyping and evaluating data curation, filtering, and monitoring pipelines for robotics foundation model research.
Flora is intended for non-commercial robotics research and development only, including annotating robot and human demonstration videos. Flora is not intended or supported for commercial or production use. Flora outputs are annotations. It is not intended to directly control robots or to serve as the sole safety monitor for a physical system.
Architecture Type: Transformer
Network Architecture: Other: Qwen3.5 vision-language model (natively multimodal vision encoder with a decoder-only Large Language Model)
This model was developed based on Qwen3.5-27B.
Number of model parameters:
Flora-captioner-27B is trained in two stages. Supervised fine-tuning updates all weights of the language model and visual merger, without Low-Rank Adaptation (LoRA), while keeping the visual patch embedding and visual transformer blocks frozen. The supervised model is then further optimized with reinforcement learning using Group Relative Policy Optimization (GRPO) with a reference-grounded caption-quality reward, with the vision encoder frozen. Sampled video frames are encoded by the vision encoder. Visual tokens from explicitly labeled BEFORE, TARGET, and AFTER blocks are combined with the annotation prompt and passed to the language model decoder. The decoder autoregressively generates one instruction for TARGET; context-only operations are not part of the requested output.
Input Type(s):
Input Format(s):
Input Parameters:
Other Properties Related to Input: The native reference inference profile is:
| Property | Setting |
|---|---|
| Temporal blocks | BEFORE, TARGET, AFTER, in this order; unavailable context is omitted |
| TARGET sampling | Duration-adaptive sampling at nominal 8 Hz, with 8–40 frames |
| Context sampling | Nominal 8 Hz, with 4–12 frames per available block |
| Total frame budget | At most 64 frames across all blocks |
| Frame preparation | Preserve chronological order and the full duration of each block when applying its frame budget; use temporal-pair-compatible frame counts |
| Spatial preparation | Preserve aspect ratio; cap each single-camera frame at 262,144 pixels, or each three-camera mosaic at 524,288 pixels, before the model processor's resize |
| Processor | Use the trained Qwen3.5 processor and chat template, with a 32,768-token sequence budget; the native processor uses min_pixels=1024 and max_pixels=589824 |
8 Hz is the requested sampling rate, not the recording's source frame rate. Duration caps and source-frame availability can change the effective sampling rate. Preserve each block's source clock and selected source-frame indices in the processor's video metadata; disable additional frame sampling with do_sample_frames=False. Short source spans require the reference frame-planning policy rather than invented observations. Missing context can be omitted; source-limited targets must be handled explicitly.
The caller supplies a half-open target interval [start_s, end_s) in the source video's clock. BEFORE and AFTER are the nearest available non-overlapping event intervals on either side, not a fixed number of seconds of padding. After temporal stitching, refresh these context intervals from the reconstructed event timeline. Sample all three blocks independently and ret
Quoted from the model card on Hugging Face. The full card is behind the Hugging Face link above.