QwenVL model conversion
Author: zucchini-nlp
Pull request: yes

<!-- ci-dashboard-badge:start -->
[![CI](https://transformers-ci.lor-e.huggingface.cool/badge/pr?pr=46881)](https://transformers-ci.lor-e.huggingface.cool/d/pytest-observability-by-pr/pytest-observability-branch?var-pr=46881)
<!-- ci-dashboard-badge:end -->

# What does this PR do?

Loading a base qwen vl doesn't work on `main`, I don't know when the conversion got lost for it. Checked with the below script that loading and re-loading works fine

```python
from transformers import AutoModelForMultimodalLM, AutoModel, ColQwen2ForRetrieval

model = AutoModelForMultimodalLM.from_pretrained("Qwen/Qwen2.5-VL-3B-Instruct", device_map="cuda")
model.save_pretrained("tmp_qwen")
model = AutoModelForMultimodalLM.from_pretrained("tmp_qwen", device_map="cuda")

base_model = AutoModel.from_pretrained("Qwen/Qwen2.5-VL-3B-Instruct", device_map="cuda")
base_model.save_pretrained("tmp_qwen_base")
base_model = AutoModel.from_pretrained("tmp_qwen_base", device_map="cuda")

ret = ColQwen2ForRetrieval.from_pretrained("vidore/colqwen2-v1.0-hf", device_map="cuda")
ret.save_pretrained("tmp_colqwen")
ret = ColQwen2ForRetrieval.from_pretrained("tmp_colqwen", device_map="cuda")


```

<!-- ci-dashboard-recap:start -->

---

### CI recap

**Dashboard:** [View test results in Grafana](https://transformers-ci.lor-e.huggingface.cool/d/pytest-observability-by-pr/pytest-observability-branch?var-pr=46881)
**Latest run:** [28430645169:1](https://github.com/huggingface/transformers/actions/runs/28430645169)
**Result:** `success` | **Jobs:** 14 | **Tests:** 49,790 | **Failures:** 0 | **Duration:** 16h 32m

<!-- ci-dashboard-recap:end -->

Comments:
BTW, we never check the loading with base models since all our integration tests check generation capabilities (that is true for almost all models). I didn't add tests to check only qwen2-vl and imo we need either to start enforcing a slow test with base-models OR just wait until we get reliable tiny-ckpt for testing

run-slow: auto, qwen2_5_vl, qwen2_vl

[Workflow Run ⚙️](https://github.com/huggingface/transformers/actions/runs/28164637635)

This comment contains `run-slow`, running the specified jobs: 

models: ["models/auto", "models/qwen2_5_vl", "models/qwen2_vl"]
quantizations: []

The docs for this PR live [here](https://moon-ci-docs.huggingface.co/docs/transformers/pr_46881). All of your documentation changes will be reflected on that endpoint. The docs are available until 30 days after the last update.

## CI Results
[Workflow Run ⚙️](https://github.com/huggingface/transformers/actions/runs/28164637635)

### Commit Info
| Context | Commit | Description |
|---------|--------|-------------|
| RUN | [15d6965d](https://github.com/huggingface/transformers/commit/15d6965da0200512876a226dfe692682785c8653) | workflow commit (merge commit) |
| PR | [765b2a7e](https://github.com/zucchini-nlp/transformers/commit/765b2a7e749a987b210e2dfd8b4a4be1823f6e10) | branch commit (from PR) |
| main | [dc5a497c](https://github.com/huggingface/transformers/commit/dc5a497c18973abfec4bc188fabcac46766cc579) | base commit (on `main`) |

✅ No failing test specific to this PR 🎉 👏 !


run-slow: colqwen2

[Workflow Run ⚙️](https://github.com/huggingface/transformers/actions/runs/28168506422)

This comment contains `run-slow`, running the specified jobs: 

models: ["models/colqwen2"]
quantizations: []

## CI Results
[Workflow Run ⚙️](https://github.com/huggingface/transformers/actions/runs/28168506422)

### Commit Info
| Context | Commit | Description |
|---------|--------|-------------|
| RUN | [15d6965d](https://github.com/huggingface/transformers/commit/15d6965da0200512876a226dfe692682785c8653) | workflow commit (merge commit) |
| PR | [765b2a7e](https://github.com/zucchini-nlp/transformers/commit/765b2a7e749a987b210e2dfd8b4a4be1823f6e10) | branch commit (from PR) |
| main | [dc5a497c](https://github.com/huggingface/transformers/commit/dc5a497c18973abfec4bc188fabcac46766cc579) | base commit (on `main`) |

### Model CI Report

❌ **[1 new failed tests from this PR](https://huggingface.co/datasets/hf-internal-testing/transformers_pr_ci/raw/68150f6bda57945c870624219a7da9668b8a8755/2026-06-25/runs/36887-28168506422/ci_results_run_models_gpu/new_failures_with_bad_commit.json)** 😭

- [colqwen2](https://github.com/huggingface/transformers/actions/runs/28168506422/job/83427807539):
    tests/models/colqwen2/test_modeling_colqwen2.py::ColQwen2ForRetrievalModelTest::test_reverse_loading_mapping (✅ ⟹ ❌)



vllm uses the base model 😢  I suppose it doesn't have a test or they didn't yet bump the broken version 

Yea I think they wanted to bump to 5.10.x but not sure if they even made that :eyes: 

Maybe 👁️ Lets wait for Cyril's review and if he's oke, I'll merge

**[For maintainers]** Suggested jobs to run (before merge)

run-slow: auto, colqwen2, qwen2_5_vl, qwen2_vl