Model reference · open weights

North-Micro-Vision

LLMs CohereLabs Vision + text 1 build Open weights 31k dl/mo

North-Micro-Vision is an open-weight language model from Cohere. North-Micro-Vision-Instruct (BF16) weighs 5.0 GB; the smallest configuration that runs it is RTX 3060 12 GB.

  • North-Micro-Vision is a 2.4B-parameter vision-language model developed by Cohere for image-text-to-text tasks.
  • It supports native-resolution image processing and operates with a 128K-token context window, though the validated multimodal range is 8K tokens.
  • The model is released under the Apache 2.0 license and supports English, German, French, Spanish, Italian, Portuguese, Hindi, Japanese, Korean, Chinese, and Arabic.

Summary of the CohereLabs/North-Micro-Vision-Instruct model card, 2026-10-01

What it is

Released byCohere
Released2026-08-10
Parameters2.5B
VRAM5.0 GB for the weights

What it runs on

Memory and cards for North-Micro-Vision-Instruct (BF16)

5.0 GBweights, file size
29 MBcache per 1K tokens
705 MBwindow cache per request
2.1 GBruntime overhead, at least
500,000 tokenscontext max
CardRequests at onceContext maxMemory
8K each32K each
RTX 3060 12 GB42131K11.6 GB
RTX 4060 Ti 16 GB85261K15.4 GB
RTX 3090 24 GB179all 488K23.4 GB
RTX 4090 24 GB179all 488K23.4 GB
RTX 5090 32 GB2514all 488K31.0 GB
L40S 48 GB3922all 488K44.0 GB
A100 80 GB7543all 488K78.2 GB
H100 80 GB6924all 488K78.1 GB
RTX PRO 6000 Blackwell 96 GB8630all 488K93.8 GB
DGX Spark (GB10) 128 GB unified10135all 488K107 GB
H200 141 GB13346all 488K138 GB
B200 180 GB17443all 488K176 GB
2× RTX 3060 12 GB
tensor parallel
158457K11.6 GB a card
Memory needed at each load
Requests at once8K tokens each32K tokens each
18.0 GB8.7 GB
511.7 GB15.3 GB
814.6 GB20.2 GB
1622.1 GB33.3 GB
3237.1 GB59.7 GB
6467.2 GB112 GB

One card, with vLLM's small-card settings.

From the model card

What Cohere says about North-Micro-Vision

Read the model card

North Micro Vision Instruct is a 2.4B-parameter open-weight vision-language model with native-resolution image support, released under the Apache 2.0 license. It is designed as a compact foundation for prototyping, task-specific fine-tuning, and specialized multimodal applications.

Developed by Cohere.

Technical deep dive: Read the North Micro Vision technical blog post for architecture, training, and evaluation details.

Highlights

  • Native-resolution image processing that preserves aspect ratios and fine visual detail.
  • Broad image-understanding capabilities across VQA, captioning, grounding, OCR, charts, and documents.
  • Multilingual and multi-image support.
  • Compact 2.4B-parameter scale suited to customization and deployment experimentation.
  • Apache 2.0-licensed model weights.

Model Details

PropertyValue
Model IDCohereLabs/North-Micro-Vision-Instruct
Total parameters2.4B
Language model2B parameters
Vision encoder400M parameters; custom-trained starting from SigLIP 2 SO400M
InputsInterleaved text and images
OutputText
LanguagesEnglish, German, French, Spanish, Italian, Portuguese, Hindi, Japanese, Korean, Chinese, Arabic, and more
Tokenizer vocabulary size262,144
LM Backbone context window128K tokens
Multimodal training context8K tokens
Checkpoint precisionbfloat16
LicenseApache 2.0

The language backbone supports a 128K-token context window, but the validated operating range for multimodal prompts is up to 8K tokens. Longer multimodal contexts may rely on extrapolation and have not been benchmarked.

Quickstart

Installation

Install PyTorch for your platform first. North Micro Vision requires Transformers 5.16.0, together with accelerate for automatic device placement and Pillow for image loading. Until Transformers 5.16.0 is released, install the runtime dependencies and Transformers from source:

uv pip install accelerate pillow
uv pip install "git+https://github.com/huggingface/transformers.git"

Once Transformers 5.16.0 is available on PyPI, install the released package with:

uv pip install accelerate pillow "transformers==5.16.0"

Flash Attention 2 is optional. On supported CUDA systems, install it with:

uv pip install flash-attn --no-build-isolation

If you do not use uv, replace uv pip with pip in the commands above.

Transformers

The following example loads an image from a URL and asks the model to describe it. Prompts can interleave text with one or more images; for text-only prompts, omit the image entries.

import torch
from transformers import AutoModelForImageTextToText, AutoProcessor

model_id = "CohereLabs/North-Micro-Vision-Instruct"

processor = AutoProcessor.from_pretrained(
    model_id,
)
model = AutoModelForImageTextToText.from_pretrained(
    model_id,
    dtype="auto",
    device_map="auto",
)

# To enable Flash Attention 2, load the model with the following settings:
# model = AutoModelForImageTextToText.from_pretrained(
#     model_id,
#     dtype=torch.bfloat16,
#     attn_implementation="flash_attention_2",
#     device_map="auto",
# )

image_url = "https://cdn-uploads.huggingface.co/production/uploads/66d732effe6684fc16b12c28/Io_5OCmftsmH-n158ZtPs.png"
messages = [
    {
        "role": "user",
        "content": [
            {"type": "image", "url": image_url},
            {"type": "text", "text": "What do you see?"},
        ],
    }
]

inputs = processor.apply_chat_template(
    messages,
    tokenize=True,
    add_generation_prompt=True,
    return_tensors="pt",
    return_dict=True,
).to(model.device)

outputs = model.generate(
    **inputs,
    max_new_tokens=128,
    do_sample=True,
    temperature=0.7,
    top_p=0.8,
    top_k=20,
)

generated_ids = [
    output_ids[len(input_ids) :]
    for input_ids, output_ids in zip(inputs.input_ids, outputs)
]
response = processor.batch_decode(
    generated_ids,
    skip_special_tokens=True,
    clean_up_tokenization_spaces=False,
)[0]
print(response)

The example uses the recommended Transformers sampling settings. For deterministic output, set do_sample=False and omit temperature, top_p, and top_k.

Architecture

North Micro Vision combines a custom-trained 400M-parameter native-resolution vision encoder with an in-house 2B-parameter language model North Micro LLM. The language model follows our Command A+ architecture, interleaving three sliding-window attention layers that use rotary positional embeddings with one global attention layer without positional embeddings. The vision encoder combines 2D RoPE with learned 1D positional embeddings to preserve spatial structure across native-resolution inputs.

The projector maps visual features into the language model's embedding space. Following DeepStack, patch embeddings from multiple vision-encoder layers are injected into corresponding early LLM layers, giving the language model access to visual representations at different levels of abstraction.

High-level North Micro Vision architecture, consisting of a native-resolution vision encoder, a projector, and a language model.

Grounding Coordinates

Bounding boxes are returned as [x1, y1, x2, y2] on a normalized 0–1000 scale. Map them back to the original image by scaling each axis:

x1_px = x1 / 1000 * image_width
y1_px = y1 / 1000 * image_height
x2_px = x2 / 1000 * image_width
y2_px = y2 / 1000 * image_height

vLLM

Public vLLM support is coming soon. Until it is available, use Transformers as shown above. The recommended vLLM settings will be:

temperature = 0.7
top_p = 0.8
top_k = 20
min_p = 0.0
presence_penalty = 1.5
repetition_penalty = 1.0

Intended Use

N

Quoted from the model card on Hugging Face. The full card is behind the Hugging Face link above.

© 2026 AxForge · EU-hosted AI infrastructure Pricing Docs Trust Privacy Terms