docling-project / docling-project/docling
docling problem with Qwen3_VL
- Dominant language
- Python
- Stars
- 66.4k
- Forks
- 4.8k
- Avg merge
- 2d 21h
- Merged PRs (30d)
- 84
Description
### Bug
I'm trying to use Qwen3_VL with docling and I got the following error :
Traceback (most recent call last):
File "/root/miniconda3/bin/docling", line 8, in
sys.exit(app())
~~~^^
File "/root/miniconda3/lib/python3.13/site-packages/typer/main.py", line 325, in __call__
raise e
File "/root/miniconda3/lib/python3.13/site-packages/typer/main.py", line 308, in __call__
return get_command(self)(*args, **kwargs)
~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^
File "/root/miniconda3/lib/python3.13/site-packages/click/core.py", line 1161, in __call__
return self.main(*args, **kwargs)
~~~~~~~~~^^^^^^^^^^^^^^^^^
File "/root/miniconda3/lib/python3.13/site-packages/typer/core.py", line 719, in main
return _main(
self,
...<6 lines>...
**extra,
)
File "/root/miniconda3/lib/python3.13/site-packages/typer/core.py", line 192, in _main
rv = self.invoke(ctx)
File "/root/miniconda3/lib/python3.13/site-packages/click/core.py", line 1443, in invoke
return ctx.invoke(self.callback, **ctx.params)
~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/root/miniconda3/lib/python3.13/site-packages/click/core.py", line 788, in invoke
return __callback(*args, **kwargs)
File "/root/miniconda3/lib/python3.13/site-packages/typer/main.py", line 685, in wrapper
return callback(**use_params)
File "/root/miniconda3/lib/python3.13/site-packages/docling/cli/main.py", line 872, in convert
export_documents(
~~~~~~~~~~~~~~~~^
conv_results,
^^^^^^^^^^^^^
...<8 lines>...
image_export_mode=image_export_mode,
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
)
^
File "/root/miniconda3/lib/python3.13/site-packages/docling/cli/main.py", line 215, in export_documents
for conv_res in conv_results:
^^^^^^^^^^^^
File "/root/miniconda3/lib/python3.13/site-packages/docling/document_converter.py", line 288, in convert_all
for conv_res in conv_res_iter:
^^^^^^^^^^^^^
File "/root/miniconda3/lib/python3.13/site-packages/docling/document_converter.py", line 364, in _convert
for item in map(
~~~^
process_func,
^^^^^^^^^^^^^
input_batch,
^^^^^^^^^^^^
):
^
File "/root/miniconda3/lib/python3.13/site-packages/docling/document_converter.py", line 411, in _process_document
conv_res = self._execute_pipeline(in_doc, raises_on_error=raises_on_error)
File "/root/miniconda3/lib/python3.13/site-packages/docling/document_converter.py", line 432, in _execute_pipeline
pipeline = self._get_pipeline(in_doc.format)
File "/root/miniconda3/lib/python3.13/site-packages/docling/document_converter.py", line 394, in _get_pipeline
self.initialized_pipelines[cache_key] = pipeline_class(
~~~~~~~~~~~~~~^
pipeline_options=pipeline_options
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
)
^
File "/root/miniconda3/lib/python3.13/site-packages/docling/pipeline/vlm_pipeline.py", line 88, in __init__
HuggingFaceTransformersVlmModel(
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
enabled=True, # must be always enabled for this pipeline to make sense.
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
...<2 lines>...
vlm_options=vlm_options,
^^^^^^^^^^^^^^^^^^^^^^^^
),
^
File "/root/miniconda3/lib/python3.13/site-packages/docling/models/vlm_models_inline/hf_transformers_model.py", line 113, in __init__
self.processor = AutoProcessor.from_pretrained(
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
artifacts_path,
^^^^^^^^^^^^^^^
trust_remote_code=vlm_options.trust_remote_code,
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
revision=vlm_options.revision,
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
)
^
File "/root/miniconda3/lib/python3.13/site-packages/transformers/models/auto/processing_auto.py", line 363, in from_pretrained
config = AutoConfig.from_pretrained(
pretrained_model_name_or_path, trust_remote_code=trust_remote_code, **kwargs
)
File "/root/miniconda3/lib/python3.13/site-packages/transformers/models/auto/configuration_auto.py", line 1380, in from_pretrained
raise ValueError(
...<3 lines>...
)
ValueError: Unrecognized model in /root/.cache/docling/models. Should have a `model_type` key in its config.json, or contain one of the following strings in its name: aimv2, aimv2_vision_model, albert, align, altclip, apertus, arcee, aria, aria_text, audio-spectrogram-transformer, autoformer, aya_vision, bamba, bark, bart, beit, bert, bert-generation, big_bird, bigbird_pegasus, biogpt, bit, bitnet, blenderbot, blenderbot-small, blip, blip-2, blip_2_qformer, bloom, blt, bridgetower, bros, camembert, canine, chameleon, chinese_clip, chinese_clip_vision_model, clap, clip, clip_text_model, clip_vision_model, clipseg, clvp, code_llama, codegen, cohere, cohere2, cohere2_vision, colpali, colqwen2, conditional_detr, convbert, convnext, convnextv2, cpmant, csm, ctrl, cvt, d_fine, dab-detr, dac, data2vec-audio, data2vec-text, data2vec-vision, dbrx, deberta, deberta-v2, decision_transformer, deepseek_v2, deepseek_v3, deepseek_vl, deepseek_vl_hybrid, deformable_detr, deit, depth_anything, depth_pro, deta, detr, dia, diffllama, dinat, dinov2, dinov2_with_registers, dinov3_convnext, dinov3_vit, distilbert, doge, donut-swin, dots1, dpr, dpt, edgetam, edgetam_video, edgetam_vision_model, efficientformer, efficientloftr, efficientnet, electra, emu3, encodec, encoder-decoder, eomt, ernie, ernie4_5, ernie4_5_moe, ernie_m, esm, evolla, exaone4, falcon, falcon_h1, falcon_mamba, fastspeech2_conformer, fastspeech2_conformer_with_hifigan, flaubert, flava, flex_olmo, florence2, fnet, focalnet, fsmt, funnel, fuyu, gemma, gemma2, gemma3, gemma3_text, gemma3n, gemma3n_audio, gemma3n_text, gemma3n_vision, git, glm, glm4, glm4_moe, glm4v, glm4v_moe, glm4v_moe_text, glm4v_text, glpn, got_ocr2, gpt-sw3, gpt2, gpt_bigcode, gpt_neo, gpt_neox, gpt_neox_japanese, gpt_oss, gptj, gptsan-japanese, granite, granite_speech, granitemoe, granitemoehybrid, granitemoeshared, granitevision, graphormer, grounding-dino, groupvit, helium, hgnet_v2, hiera, hubert, hunyuan_v1_dense, hunyuan_v1_moe, ibert, idefics, idefics2, idefics3, idefics3_vision, ijepa, imagegpt, informer, instructblip, instructblipvideo, internvl, internvl_vision, jamba, janus, jetmoe, jukebox, kosmos-2, kosmos-2.5, kyutai_speech_to_text, layoutlm, layoutlmv2, layoutlmv3, led, levit, lfm2, lfm2_vl, lightglue, lilt, llama, llama4, llama4_text, llava, llava_next, llava_next_video, llava_onevision, longcat_flash, longformer, longt5, luke, lxmert, m2m_100, mamba, mamba2, marian, markuplm, mask2former, maskformer, maskformer-swin, mbart, mctct, mega, megatron-bert, metaclip_2, mgp-str, mimi, minimax, ministral, mistral, mistral3, mixtral, mlcd, mllama, mm-grounding-dino, mobilebert, mobilenet_v1, mobilenet_v2, mobilevit, mobilevitv2, modernbert, modernbert-decoder, moonshine, moshi, mpnet, mpt, mra, mt5, musicgen, musicgen_melody, mvp, nat, nemotron, nezha, nllb-moe, nougat, nystromformer, olmo, olmo2, olmo3, olmoe, omdet-turbo, oneformer, open-llama, openai-gpt, opt, ovis2, owlv2, owlvit, paligemma, parakeet_ctc, parakeet_encoder, patchtsmixer, patchtst, pegasus, pegasus_x, perceiver, perception_encoder, perception_lm, persimmon, phi, phi3, phi4_multimodal, phimoe, pix2struct, pixtral, plbart, poolformer, pop2piano, prompt_depth_anything, prophetnet, pvt, pvt_v2, qdqbert, qwen2, qwen2_5_omni, qwen2_5_vl, qwen2_5_vl_text, qwen2_audio, qwen2_audio_encoder, qwen2_moe, qwen2_vl, qwen2_vl_text, qwen3, qwen3_moe, qwen3_next, qwen3_omni_moe, qwen3_vl, qwen3_vl_moe, qwen3_vl_moe_text, qwen3_vl_text, rag, realm, recurrent_gemma, reformer, regnet, rembert, resnet, retribert, roberta, roberta-prelayernorm, roc_bert, roformer, rt_detr, rt_detr_resnet, rt_detr_v2, rwkv, sam, sam2, sam2_hiera_det_model, sam2_video, sam2_vision_model, sam_hq, sam_hq_vision_model, sam_vision_model, seamless_m4t, seamless_m4t_v2, seed_oss, segformer, seggpt, sew, sew-d, shieldgemma2, siglip, siglip2, siglip2_vision_model, siglip_vision_model, smollm3, smolvlm, smolvlm_vision, speech-encoder-decoder, speech_to_text, speech_to_text_2, speecht5, splinter, squeezebert, stablelm, starcoder2, superglue, superpoint, swiftformer, swin, swin2sr, swinv2, switch_transformers, t5, t5gemma, table-transformer, tapas, textnet, time_series_transformer, timesfm, timesformer, timm_backbone, timm_wrapper, trajectory_transformer, transfo-xl, trocr, tvlt, tvp, udop, umt5, unispeech, unispeech-sat, univnet, upernet, van, vaultgemma, video_llava, videomae, vilt, vipllava, vision-encoder-decoder, vision-text-dual-encoder, visual_bert, vit, vit_hybrid, vit_mae, vit_msn, vitdet, vitmatte, vitpose, vitpose_backbone, vits, vivit, vjepa2, voxtral, voxtral_encoder, wav2vec2, wav2vec2-bert, wav2vec2-conformer, wavlm, whisper, xclip, xcodec, xglm, xlm, xlm-prophetnet, xlm-roberta, xlm-roberta-xl, xlnet, xlstm, xmod, yolos, yoso, zamba, zamba2, zoedepth
### Steps to reproduce
I'm running docling with this cli :
docling --to md --image-export-mode referenced --pipeline vlm --enrich-formula --artifacts-path /root/.cache/docling/models --enable-remote-services --output /docs/results /docs/input.pdf
the model was downloaded using this command :
docling-tools models download-hf-repo Qwen/Qwen3-VL-30B-A3B-Instruct-FP8
### Docling version
2025-12-04 14:37:03,008 - INFO - Loading plugin 'docling_defaults'
2025-12-04 14:37:03,011 - INFO - Registered ocr engines: ['auto', 'easyocr', 'ocrmac', 'rapidocr', 'tesserocr', 'tesseract']
Docling version: 2.64.0
Docling Core version: 2.54.0
Docling IBM Models version: 3.10.2
Docling Parse version: 4.7.0
Python: cpython-313 (3.13.5)
Platform: Linux-6.6.87.2-microsoft-standard-WSL2-x86_64-with-glibc2.39
### Python version
Python 3.13.5
Contributor guide
Assessment
This issue has not been assessed yet.