ds4sd / SmolDocling-256M-preview

huggingface.co
Total runs: 348.6K
24-hour runs: 0
7-day runs: 17.3K
30-day runs: 117.7K
Model's Last Updated: September 17 2025
image-text-to-text

Introduction of SmolDocling-256M-preview

Model Details of SmolDocling-256M-preview

SmolDocling
SmolDocling-256M-preview

SmolDocling is a multimodal Image-Text-to-Text model designed for efficient document conversion. It retains Docling's most popular features while ensuring full compatibility with Docling through seamless support for DoclingDocuments .

๐Ÿš€ Features:
  • ๐Ÿท๏ธ DocTags for Efficient Tokenization โ€“ Introduces DocTags an efficient and minimal representation for documents that is fully compatible with DoclingDocuments .
  • ๐Ÿ” OCR (Optical Character Recognition) โ€“ Extracts text accurately from images.
  • ๐Ÿ“ Layout and Localization โ€“ Preserves document structure and document element bounding boxes .
  • ๐Ÿ’ป Code Recognition โ€“ Detects and formats code blocks including identation.
  • ๐Ÿ”ข Formula Recognition โ€“ Identifies and processes mathematical expressions.
  • ๐Ÿ“Š Chart Recognition โ€“ Extracts and interprets chart data.
  • ๐Ÿ“‘ Table Recognition โ€“ Supports column and row headers for structured table extraction.
  • ๐Ÿ–ผ๏ธ Figure Classification โ€“ Differentiates figures and graphical elements.
  • ๐Ÿ“ Caption Correspondence โ€“ Links captions to relevant images and figures.
  • ๐Ÿ“œ List Grouping โ€“ Organizes and structures list elements correctly.
  • ๐Ÿ“„ Full-Page Conversion โ€“ Processes entire pages for comprehensive document conversion including all page elements (code, equations, tables, charts etc.)
  • ๐Ÿ”ฒ OCR with Bounding Boxes โ€“ OCR regions using a bounding box.
  • ๐Ÿ“‚ General Document Processing โ€“ Trained for both scientific and non-scientific documents.
  • ๐Ÿ”„ Seamless Docling Integration โ€“ Import into Docling and export in multiple formats.
  • ๐Ÿ’จ Fast inference using VLLM โ€“ Avg of 0.35 secs per page on A100 GPU.
๐Ÿšง Coming soon!
  • ๐Ÿ“Š Better chart recognition ๐Ÿ› ๏ธ
  • ๐Ÿ“š One shot multi-page inference โฑ๏ธ
  • ๐Ÿงช Chemical Recognition
  • ๐Ÿ“™ Datasets
โŒจ๏ธ Get started (code examples)

You can use transformers or vllm to perform inference, and Docling to convert results to variety of ourput formats (md, html, etc.):

๐Ÿ“„ Single page image inference using Tranformers ๐Ÿค–
# Prerequisites:
# pip install torch
# pip install docling_core
# pip install transformers

import torch
from docling_core.types.doc import DoclingDocument
from docling_core.types.doc.document import DocTagsDocument
from transformers import AutoProcessor, AutoModelForVision2Seq
from transformers.image_utils import load_image

DEVICE = "cuda" if torch.cuda.is_available() else "cpu"

# Load images
image = load_image("https://upload.wikimedia.org/wikipedia/commons/7/76/GazettedeFrance.jpg")

# Initialize processor and model
processor = AutoProcessor.from_pretrained("ds4sd/SmolDocling-256M-preview")
model = AutoModelForVision2Seq.from_pretrained(
    "ds4sd/SmolDocling-256M-preview",
    torch_dtype=torch.bfloat16,
    _attn_implementation="flash_attention_2" if DEVICE == "cuda" else "eager",
).to(DEVICE)

# Create input messages
messages = [
    {
        "role": "user",
        "content": [
            {"type": "image"},
            {"type": "text", "text": "Convert this page to docling."}
        ]
    },
]

# Prepare inputs
prompt = processor.apply_chat_template(messages, add_generation_prompt=True)
inputs = processor(text=prompt, images=[image], return_tensors="pt")
inputs = inputs.to(DEVICE)

# Generate outputs
generated_ids = model.generate(**inputs, max_new_tokens=8192)
prompt_length = inputs.input_ids.shape[1]
trimmed_generated_ids = generated_ids[:, prompt_length:]
doctags = processor.batch_decode(
    trimmed_generated_ids,
    skip_special_tokens=False,
)[0].lstrip()

# Populate document
doctags_doc = DocTagsDocument.from_doctags_and_image_pairs([doctags], [image])
print(doctags)
# create a docling document
doc = DoclingDocument(name="Document")
doc.load_from_doctags(doctags_doc)

# export as any format
# HTML
# doc.save_as_html(output_file)
# MD
print(doc.export_to_markdown())
๐Ÿš€ Fast Batch Inference Using VLLM
# Prerequisites:
# pip install vllm
# pip install docling_core
# place page images you want to convert into "img/" dir

import time
import os
from vllm import LLM, SamplingParams
from PIL import Image
from docling_core.types.doc import DoclingDocument
from docling_core.types.doc.document import DocTagsDocument

# Configuration
MODEL_PATH = "ds4sd/SmolDocling-256M-preview"
IMAGE_DIR = "img/"  # Place your page images here
OUTPUT_DIR = "out/"
PROMPT_TEXT = "Convert page to Docling."

# Ensure output directory exists
os.makedirs(OUTPUT_DIR, exist_ok=True)

# Initialize LLM
llm = LLM(model=MODEL_PATH, limit_mm_per_prompt={"image": 1})

sampling_params = SamplingParams(
    temperature=0.0,
    max_tokens=8192)

chat_template = f"<|im_start|>User:<image>{PROMPT_TEXT}<end_of_utterance>\nAssistant:"

image_files = sorted([f for f in os.listdir(IMAGE_DIR) if f.lower().endswith((".png", ".jpg", ".jpeg"))])

start_time = time.time()
total_tokens = 0

for idx, img_file in enumerate(image_files, 1):
    img_path = os.path.join(IMAGE_DIR, img_file)
    image = Image.open(img_path).convert("RGB")

    llm_input = {"prompt": chat_template, "multi_modal_data": {"image": image}}
    output = llm.generate([llm_input], sampling_params=sampling_params)[0]
    
    doctags = output.outputs[0].text
    img_fn = os.path.splitext(img_file)[0]
    output_filename = img_fn + ".dt"
    output_path = os.path.join(OUTPUT_DIR, output_filename)

    with open(output_path, "w", encoding="utf-8") as f:
        f.write(doctags)

    # To convert to Docling Document, MD, HTML, etc.:
    doctags_doc = DocTagsDocument.from_doctags_and_image_pairs([doctags], [image])
    doc = DoclingDocument(name="Document")
    doc.load_from_doctags(doctags_doc)
    # export as any format
    # HTML
    # doc.save_as_html(output_file)
    # MD
    output_filename_md = img_fn + ".md"
    output_path_md = os.path.join(OUTPUT_DIR, output_filename_md)
    doc.save_as_markdown(output_path_md)

print(f"Total time: {time.time() - start_time:.2f} sec")
DocTags
Image description DocTags create a clear and structured system of tags and rules that separate text from the document's structure. This makes things easier for Image-to-Sequence models by reducing confusion. On the other hand, converting directly to formats like HTML or Markdown can be messyโ€”it often loses details, doesnโ€™t clearly show the documentโ€™s layout, and increases the number of tokens, making processing less efficient. DocTags are integrated with Docling, which allows export to HTML, Markdown, and JSON. These exports can be offloaded to the CPU, reducing token generation overhead and improving efficiency.
Supported Instructions
Description Instruction Comment
Full conversion Convert this page to docling. DocTags represetation
Chart Convert chart to table. (e.g., <chart>)
Formula Convert formula to LaTeX. (e.g., <formula>)
Code Convert code to text. (e.g., <code>)
Table Convert table to OTSL. (e.g., <otsl>) OTSL: Lysak et al., 2023
Actions and Pipelines OCR the text in a specific location: <loc_155><loc_233><loc_206><loc_237>
Identify element at: <loc_247><loc_482><10c_252><loc_486>
Find all 'text' elements on the page, retrieve all section headers.
Detect footer elements on the page.
Model Summary
  • Developed by: Docling Team, IBM Research
  • Model type: Multi-modal model (image+text)
  • Language(s) (NLP): English
  • License: Apache 2.0
  • Finetuned from model: Based on Idefics3 (see technical summary)

Repository: Docling

Paper: [Coming soon]

Demo: [Coming soon]

Runs of ds4sd SmolDocling-256M-preview on huggingface.co

348.6K
Total runs
0
24-hour runs
-958
3-day runs
17.3K
7-day runs
117.7K
30-day runs

More Information About SmolDocling-256M-preview huggingface.co Model

More SmolDocling-256M-preview license Visit here:

https://choosealicense.com/licenses/cdla-permissive-2.0

SmolDocling-256M-preview huggingface.co

SmolDocling-256M-preview huggingface.co is an AI model on huggingface.co that provides SmolDocling-256M-preview's model effect (), which can be used instantly with this ds4sd SmolDocling-256M-preview model. huggingface.co supports a free trial of the SmolDocling-256M-preview model, and also provides paid use of the SmolDocling-256M-preview. Support call SmolDocling-256M-preview model through api, including Node.js, Python, http.

SmolDocling-256M-preview huggingface.co Url

https://huggingface.co/ds4sd/SmolDocling-256M-preview

ds4sd SmolDocling-256M-preview online free

SmolDocling-256M-preview huggingface.co is an online trial and call api platform, which integrates SmolDocling-256M-preview's modeling effects, including api services, and provides a free online trial of SmolDocling-256M-preview, you can try SmolDocling-256M-preview online for free by clicking the link below.

ds4sd SmolDocling-256M-preview online free url in huggingface.co:

https://huggingface.co/ds4sd/SmolDocling-256M-preview

SmolDocling-256M-preview install

SmolDocling-256M-preview is an open source model from GitHub that offers a free installation service, and any user can find SmolDocling-256M-preview on GitHub to install. At the same time, huggingface.co provides the effect of SmolDocling-256M-preview install, users can directly use SmolDocling-256M-preview installed effect in huggingface.co for debugging and trial. It also supports api for free installation.

SmolDocling-256M-preview install url in huggingface.co:

https://huggingface.co/ds4sd/SmolDocling-256M-preview

Url of SmolDocling-256M-preview

SmolDocling-256M-preview huggingface.co Url

Provider of SmolDocling-256M-preview huggingface.co

ds4sd
ORGANIZATIONS

Other API from ds4sd

huggingface.co

Total runs: 515.5K
Run Growth: 155.1K
Growth Rate: 30.08%
Updated:July 23 2025
huggingface.co

Total runs: 33.5K
Run Growth: 0
Growth Rate: 0.00%
Updated:January 27 2025
huggingface.co

Total runs: 18
Run Growth: 0
Growth Rate: 0.00%
Updated:August 11 2025
huggingface.co

Total runs: 0
Run Growth: 0
Growth Rate: 0.00%
Updated:October 28 2025
huggingface.co

Total runs: 0
Run Growth: 0
Growth Rate: 0.00%
Updated:October 28 2025