Model reference · open weights

Janus-Pro

LLMs deepseek-community Omni (any→any) 2 builds Open weights 26k dl/mo

Janus-Pro is an open-weight language model from deepseek-community. Janus-Pro-1B (BF16) weighs 4.2 GB; the smallest configuration that runs it is RTX 3060 12 GB.

  • Janus-Pro is a unified multimodal model developed by deepseek-community that handles both understanding and generation tasks.
  • It features 2.1 billion parameters and a context length of 16,384 tokens.
  • The model is published under the identifier deepseek-community/Janus-Pro-1B and uses an MIT license for its code repository.

Summary of the deepseek-community/Janus-Pro-1B model card, 2026-10-01

What it is

Released bydeepseek-community
Released2025-03-01
Parameters2.1B
VRAM4.2 GB for the weights

What it runs on

Memory and cards for Janus-Pro-1B (BF16)

4.2 GBweights, file size
197 MBcache per 1K tokens
1.9 GBruntime overhead, at least
16,384 tokenscontext max
CardRequests at onceContext maxMemory
8K each
RTX 3060 12 GB3all 16K11.6 GB
RTX 4060 Ti 16 GB5all 16K15.4 GB
RTX 3090 24 GB10all 16K23.4 GB
RTX 4090 24 GB10all 16K23.4 GB
RTX 5090 32 GB15all 16K31.0 GB
L40S 48 GB23all 16K44.0 GB
A100 80 GB44all 16K78.2 GB
H100 80 GB42all 16K78.1 GB
RTX PRO 6000 Blackwell 96 GB52all 16K93.8 GB
DGX Spark (GB10) 128 GB unified60all 16K107 GB
H200 141 GB79all 16K138 GB
B200 180 GB103all 16K176 GB
2× RTX 3060 12 GB
tensor parallel
9all 16K11.6 GB a card
2× RTX 4060 Ti 16 GB
tensor parallel
14all 16K15.4 GB a card
Memory needed at each load
Requests at once8K tokens each
17.7 GB
514.1 GB
818.9 GB
1631.8 GB
3257.6 GB
64109 GB

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

Builds

Sizes, precisions & builds

BuildParamsPrecisionWeightsSmallest setup
Janus-Pro-1B (above) ↗ 2.1BBF16 4.2 GBRTX 3060 12 GB
Janus-Pro-7B ↗ 7.4BBF16 14.8 GB2× RTX 3060 12 GB

From the model card

What deepseek-community says about Janus-Pro

Read the model card

1. Introduction

Janus-Pro is a novel autoregressive framework that unifies multimodal understanding and generation. It addresses the limitations of previous approaches by decoupling visual encoding into separate pathways, while still utilizing a single, unified transformer architecture for processing. The decoupling not only alleviates the conflict between the visual encoder’s roles in understanding and generation, but also enhances the framework’s flexibility. Janus-Pro surpasses previous unified model and matches or exceeds the performance of task-specific models. The simplicity, high flexibility, and effectiveness of Janus-Pro make it a strong candidate for next-generation unified multimodal models.

Github Repository

2. Model Summary

Janus-Pro is a unified understanding and generation MLLM, which decouples visual encoding for multimodal understanding and generation. Janus-Pro is constructed based on the DeepSeek-LLM-1.5b-base/DeepSeek-LLM-7b-base.

For multimodal understanding, it uses the SigLIP-L as the vision encoder, which supports 384 x 384 image input. For image generation, Janus-Pro uses the tokenizer from here with a downsample rate of 16.

3. Usage Examples

Single Image Inference

Here is an example of visual understanding with a single image.

import torch
from PIL import Image
import requests
from transformers import JanusForConditionalGeneration, JanusProcessor

model_id = "deepseek-community/Janus-Pro-1B"

# Prepare input for generation
messages = [
    {
        "role": "user",
        "content": [
            {'type': 'image', 'url': 'http://images.cocodataset.org/val2017/000000039769.jpg'},
            {'type': 'text', 'text': "What do you see in this image?"}
        ]
    },
]

# Set generation mode to 'text' to perform text generation
processor = JanusProcessor.from_pretrained(model_id)
model = JanusForConditionalGeneration.from_pretrained(
    model_id, torch_dtype=torch.bfloat16, device_map="auto"
)

inputs = processor.apply_chat_template(
    messages,
    add_generation_prompt=True,
    generation_mode="text",
    tokenize=True,
    return_dict=True,
    return_tensors="pt"
).to(model.device, dtype=torch.bfloat16)

output = model.generate(**inputs, max_new_tokens=40, generation_mode='text', do_sample=True)
text = processor.decode(output[0], skip_special_tokens=True)
print(text)

Text to Image generation

Janus can also generate images from prompts by simply setting the generation mode to image as shown below.

import torch
from transformers import JanusForConditionalGeneration, JanusProcessor

model_id = "deepseek-community/Janus-Pro-1B"

# Load processor and model
processor = JanusProcessor.from_pretrained(model_id)
model = JanusForConditionalGeneration.from_pretrained(
    model_id, torch_dtype=torch.bfloat16, device_map="auto"
)

messages = [
    {
        "role": "user",
        "content": [
            {"type": "text", "text": "A dog running under the rain."}
        ]
    }
]

# Apply chat template
prompt = processor.apply_chat_template(messages, add_generation_prompt=True)
inputs = processor(
    text=prompt,
    generation_mode="image",
    return_tensors="pt"
).to(model.device, dtype=torch.bfloat16)

# Set number of images to generate
model.generation_config.num_return_sequences = 2

outputs = model.generate(
    **inputs,
    generation_mode="image",
    do_sample=True,
    use_cache=True
)

# Decode and save images
decoded_image = model.decode_image_tokens(outputs)
images = processor.postprocess(list(decoded_image.float()), return_tensors="PIL.Image.Image")

for i, image in enumerate(images["pixel_values"]):
    image.save(f"image{i}.png")

4. License

This code repository is licensed under the MIT License. The use of Janus-Pro models is subject to DeepSeek Model License.

5. Citation

@article{chen2025janus,
  title={Janus-Pro: Unified Multimodal Understanding and Generation with Data and Model Scaling},
  author={Chen, Xiaokang and Wu, Zhiyu and Liu, Xingchao and Pan, Zizheng and Liu, Wen and Xie, Zhenda and Yu, Xingkai and Ruan, Chong},
  journal={arXiv preprint arXiv:2501.17811},
  year={2025}
}

6. Contact

If you have any questions, please raise an issue or contact us at service@deepseek.com.

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