> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.nvidia.com/nemo/curator/llms.txt.
> For full documentation content, see https://docs.nvidia.com/nemo/curator/llms-full.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.nvidia.com/nemo/curator/_mcp/server.

# nemo_curator.models.nemotron_3_nano_omni

## Module Contents### Classes| Name                                                                               | Description                                               |
| ---------------------------------------------------------------------------------- | --------------------------------------------------------- |
| [`LLM`](#nemo_curator-models-nemotron_3_nano_omni-LLM)                             | -                                                         |
| [`Nemotron3NanoOmni`](#nemo_curator-models-nemotron_3_nano_omni-Nemotron3NanoOmni) | Nemotron 3 Nano Omni multimodal VLM for video captioning. |
| [`SamplingParams`](#nemo_curator-models-nemotron_3_nano_omni-SamplingParams)       | -                                                         |### Data[`VLLM_AVAILABLE`](#nemo_curator-models-nemotron_3_nano_omni-VLLM_AVAILABLE)[`_EXPECTED_VIDEO_TAG_PARTS`](#nemo_curator-models-nemotron_3_nano_omni-_EXPECTED_VIDEO_TAG_PARTS)[`_HF_MODEL_ID`](#nemo_curator-models-nemotron_3_nano_omni-_HF_MODEL_ID)[`_HF_REVISION`](#nemo_curator-models-nemotron_3_nano_omni-_HF_REVISION)[`_VIDEO_TAG_SPLIT_MAX`](#nemo_curator-models-nemotron_3_nano_omni-_VIDEO_TAG_SPLIT_MAX)### API```python
class nemo_curator.models.nemotron_3_nano_omni.LLM()
``````python
class nemo_curator.models.nemotron_3_nano_omni.Nemotron3NanoOmni(
    model_dir: str,
    caption_batch_size: int = 8,
    max_output_tokens: int = 512,
    stage2_prompt_text: str | None = None,
    verbose: bool = False
)
```**Bases:** [ModelInterface](/nemo-curator/nemo_curator/models/base#nemo_curator-models-base-ModelInterface)Nemotron 3 Nano Omni multimodal VLM for video captioning.Weights are downloaded automatically from HuggingFace on first use.
model\_dir is the base directory; weights are stored at model\_dir/\<\_HF\_MODEL\_ID>/.```python
nemo_curator.models.nemotron_3_nano_omni.Nemotron3NanoOmni._patch_config(
    model_dir_path: pathlib.Path
) -> None
```staticmethod```python
nemo_curator.models.nemotron_3_nano_omni.Nemotron3NanoOmni._refine_caption_prompt(
    original_prompt: str,
    refinement_text: str
) -> str
``````python
nemo_curator.models.nemotron_3_nano_omni.Nemotron3NanoOmni.download_weights_on_node(
    model_dir: str
) -> None
```classmethodDownload Nemotron3NanoOmni weights.```python
nemo_curator.models.nemotron_3_nano_omni.Nemotron3NanoOmni.generate(
    videos: list[dict[str, typing.Any]],
    generate_stage2_caption: bool = False,
    batch_size: int | None = None
) -> list[str]
``````python
nemo_curator.models.nemotron_3_nano_omni.Nemotron3NanoOmni.setup() -> None
``````python
class nemo_curator.models.nemotron_3_nano_omni.SamplingParams()
``````python
nemo_curator.models.nemotron_3_nano_omni.VLLM_AVAILABLE = True
``````python
nemo_curator.models.nemotron_3_nano_omni._EXPECTED_VIDEO_TAG_PARTS = 2
``````python
nemo_curator.models.nemotron_3_nano_omni._HF_MODEL_ID: Final[str] = 'nvidia/Nemotron-3-Nano-Omni-30B-A3B-Reasoning'
``````python
nemo_curator.models.nemotron_3_nano_omni._HF_REVISION: Final[str] = '23d21acd455d9836d50c48570a329bde77e08ba4'
``````python
nemo_curator.models.nemotron_3_nano_omni._VIDEO_TAG_SPLIT_MAX = 1
```