Hugging Face's logo Hugging Face
  • Models
  • Datasets
  • Spaces
  • Buckets new
  • Docs
  • Enterprise
  • Pricing
    • Website
      • Tasks
      • HuggingChat
      • Collections
      • Languages
      • Organizations
    • Community
      • Blog
      • Posts
      • Daily Papers
      • Learn
      • Discord
      • Forum
      • GitHub
    • Solutions
      • Team & Enterprise
      • Hugging Face PRO
      • Enterprise Support
      • Inference Providers
      • Inference Endpoints
      • Storage Buckets

  • Log In
  • Sign Up

nanonets
/
Nanonets-OCR2-3B

Image-Text-to-Text
Transformers
Safetensors
multilingual
qwen2_5_vl
OCR
image-to-text
pdf2markdown
VQA
conversational
Eval Results
text-generation-inference
Model card Files Files and versions
xet
Community
18

Instructions to use nanonets/Nanonets-OCR2-3B with libraries, inference providers, notebooks, and local apps. Follow these links to get started.

  • Libraries
  • Transformers

    How to use nanonets/Nanonets-OCR2-3B with Transformers:

    # Use a pipeline as a high-level helper
    from transformers import pipeline
    
    pipe = pipeline("image-text-to-text", model="nanonets/Nanonets-OCR2-3B")
    messages = [
        {
            "role": "user",
            "content": [
                {"type": "image", "url": "https://huggingface.co/datasets/huggingface/documentation-images/resolve/main/p-blog/candy.JPG"},
                {"type": "text", "text": "What animal is on the candy?"}
            ]
        },
    ]
    pipe(text=messages)
    # Load model directly
    from transformers import AutoProcessor, AutoModelForImageTextToText
    
    processor = AutoProcessor.from_pretrained("nanonets/Nanonets-OCR2-3B")
    model = AutoModelForImageTextToText.from_pretrained("nanonets/Nanonets-OCR2-3B")
    messages = [
        {
            "role": "user",
            "content": [
                {"type": "image", "url": "https://huggingface.co/datasets/huggingface/documentation-images/resolve/main/p-blog/candy.JPG"},
                {"type": "text", "text": "What animal is on the candy?"}
            ]
        },
    ]
    inputs = processor.apply_chat_template(
    	messages,
    	add_generation_prompt=True,
    	tokenize=True,
    	return_dict=True,
    	return_tensors="pt",
    ).to(model.device)
    
    outputs = model.generate(**inputs, max_new_tokens=40)
    print(processor.decode(outputs[0][inputs["input_ids"].shape[-1]:]))
  • Notebooks
  • Google Colab
  • Kaggle
  • Local Apps
  • vLLM

    How to use nanonets/Nanonets-OCR2-3B with vLLM:

    Install from pip and serve model
    # Install vLLM from pip:
    pip install vllm
    # Start the vLLM server:
    vllm serve "nanonets/Nanonets-OCR2-3B"
    # Call the server using curl (OpenAI-compatible API):
    curl -X POST "http://localhost:8000/v1/chat/completions" \
    	-H "Content-Type: application/json" \
    	--data '{
    		"model": "nanonets/Nanonets-OCR2-3B",
    		"messages": [
    			{
    				"role": "user",
    				"content": [
    					{
    						"type": "text",
    						"text": "Describe this image in one sentence."
    					},
    					{
    						"type": "image_url",
    						"image_url": {
    							"url": "https://cdn.britannica.com/61/93061-050-99147DCE/Statue-of-Liberty-Island-New-York-Bay.jpg"
    						}
    					}
    				]
    			}
    		]
    	}'
    Use Docker
    docker model run hf.co/nanonets/Nanonets-OCR2-3B
  • SGLang

    How to use nanonets/Nanonets-OCR2-3B with SGLang:

    Install from pip and serve model
    # Install SGLang from pip:
    pip install sglang
    # Start the SGLang server:
    python3 -m sglang.launch_server \
        --model-path "nanonets/Nanonets-OCR2-3B" \
        --host 0.0.0.0 \
        --port 30000
    # Call the server using curl (OpenAI-compatible API):
    curl -X POST "http://localhost:30000/v1/chat/completions" \
    	-H "Content-Type: application/json" \
    	--data '{
    		"model": "nanonets/Nanonets-OCR2-3B",
    		"messages": [
    			{
    				"role": "user",
    				"content": [
    					{
    						"type": "text",
    						"text": "Describe this image in one sentence."
    					},
    					{
    						"type": "image_url",
    						"image_url": {
    							"url": "https://cdn.britannica.com/61/93061-050-99147DCE/Statue-of-Liberty-Island-New-York-Bay.jpg"
    						}
    					}
    				]
    			}
    		]
    	}'
    Use Docker images
    docker run --gpus all \
        --shm-size 32g \
        -p 30000:30000 \
        -v ~/.cache/huggingface:/root/.cache/huggingface \
        --env "HF_TOKEN=<secret>" \
        --ipc=host \
        lmsysorg/sglang:latest \
        python3 -m sglang.launch_server \
            --model-path "nanonets/Nanonets-OCR2-3B" \
            --host 0.0.0.0 \
            --port 30000
    # Call the server using curl (OpenAI-compatible API):
    curl -X POST "http://localhost:30000/v1/chat/completions" \
    	-H "Content-Type: application/json" \
    	--data '{
    		"model": "nanonets/Nanonets-OCR2-3B",
    		"messages": [
    			{
    				"role": "user",
    				"content": [
    					{
    						"type": "text",
    						"text": "Describe this image in one sentence."
    					},
    					{
    						"type": "image_url",
    						"image_url": {
    							"url": "https://cdn.britannica.com/61/93061-050-99147DCE/Statue-of-Liberty-Island-New-York-Bay.jpg"
    						}
    					}
    				]
    			}
    		]
    	}'
  • Docker Model Runner

    How to use nanonets/Nanonets-OCR2-3B with Docker Model Runner:

    docker model run hf.co/nanonets/Nanonets-OCR2-3B
New discussion
Resources
  • PR & discussions documentation
  • Code of Conduct
  • Hub documentation

Add MDPBench evaluation results

#18 opened about 1 month ago by
Delores-Lin

Add OlmOCRBench evaluation results

#17 opened 3 months ago by
nielsr

Is adding a requirements.txt possible for this model?

#16 opened 6 months ago by
DebasishDhal99

If possible, could you inference include words with strikethrough formatting where applicable?

#15 opened 6 months ago by
willy1212009

Could you please share the evaluation (metrics / Markdown Evaluations) script ?

#14 opened 7 months ago by
SupercarryNg

Model refuses to return JSON object

#13 opened 7 months ago by
ahmedattia143

Fix model_type

1
#12 opened 7 months ago by
JAmc19

Much worse than old model on llama.cpp

#11 opened 7 months ago by
engrtipusultan

Full Languages list

#10 opened 7 months ago by
trackme518

Preserve Images and Tables

#9 opened 7 months ago by
mox

Genuine User Reviews and Questions on Repo nanonets/Nanonets-OCR2-3B

#8 opened 7 months ago by
DeepNLP

License

➕ 12
#7 opened 7 months ago by
merve

Colab Demo Video and Supported Languages Query

1
#6 opened 7 months ago by
ritheshSree

Local Installation Video and Testing - Step by Step

👍 3
1
#3 opened 7 months ago by
fahdmirzac
Company
TOS Privacy About Careers
Website
Models Datasets Spaces Pricing Docs