🌠Qwen3-VL : guide pour exécuter

Apprenez à fine-tuner et exécuter Qwen3-VL localement avec Unsloth.

Qwen3-VL est les nouveaux modèles de vision de Qwen avec instruct et thinking versions. Les modèles 2B, 4B, 8B et 32B sont denses, tandis que 30B et 235B sont MoE. Le LLM 235B thinking offre des performances SOTA en vision et en codage rivalisant avec GPT-5 (haut) et Gemini 2.5 Pro. Qwen3-VL possède des capacités de vision, vidéo et OCR ainsi qu'un contexte de 256K (peut être étendu à 1M). Unslotharrow-up-right prend en charge l'ajustement fin (fine-tuning) de Qwen3-VL et RL. Entraînez Qwen3-VL (8B) gratuitement avec nos carnets (notebooks).

Exécution de Qwen3-VLAjustement fin (Fine-tuning) de Qwen3-VL

🖥️ Exécution de Qwen3-VL

Pour exécuter le modèle dans llama.cpp, vLLM, Ollama, etc., voici les paramètres recommandés :

⚙️ Paramètres recommandés

Qwen recommande ces paramètres pour les deux modèles (ils sont légèrement différents pour Instruct vs Thinking) :

Paramètres Instruct :
Paramètres Thinking :

Température = 0.7

Température = 1.0

Top_P = 0.8

Top_P = 0.95

presence_penalty = 1.5

presence_penalty = 0.0

Longueur de sortie = 32768 (jusqu'à 256K)

Longueur de sortie = 40960 (jusqu'à 256K)

Top_K = 20

Top_K = 20

Qwen3-VL a également utilisé les paramètres ci-dessous pour leurs chiffres de référence, comme mentionné sur GitHubarrow-up-right.

Paramètres Instruct :

export greedy='false'
export seed=3407
export top_p=0.8
export top_k=20
export temperature=0.7
export repetition_penalty=1.0
export presence_penalty=1.5
export out_seq_length=32768

Paramètres Thinking :

export greedy='false'
export seed=1234
export top_p=0.95
export top_k=20
export temperature=1.0
export repetition_penalty=1.0
export presence_penalty=0.0
export out_seq_length=40960

🐛Corrections de bogues du modèle de conversation (chat template)

Chez Unsloth, nous privilégions avant tout la précision, donc nous avons enquêté sur la raison pour laquelle, après le 2e tour d'exécution des modèles Thinking, llama.cpp se plantait, comme montré ci-dessous :

Le code d'erreur :

terminate called after throwing an instance of 'std::runtime_error'
  what():  Value is not callable: null at row 63, column 78:
            {%- if '</think>' in content %}
                {%- set reasoning_content = ((content.split('</think>')|first).rstrip('\n').split('<think>')|last).lstrip('\n') %}
                                                                             ^

Nous avons corrigé avec succès le template de conversation Thinking pour les modèles VL, donc nous avons re-téléversé tous les quants Thinking et les quants d'Unsloth. Ils devraient maintenant tous fonctionner après la 2e conversation - d'autres quants échoueront à se charger après la 2e conversation.

Téléversements Unsloth de Qwen3-VL:

Qwen3-VL est désormais pris en charge pour les GGUF par llama.cpp depuis le 30 octobre 2025, vous pouvez donc les exécuter localement !

📖 Llama.cpp : Tutoriel pour exécuter Qwen3-VL

  1. Obtenez la dernière llama.cpp sur GitHub iciarrow-up-right. Vous pouvez aussi suivre les instructions de compilation ci-dessous. Changez -DGGML_CUDA=ON en -DGGML_CUDA=OFF si vous n'avez pas de GPU ou si vous voulez uniquement l'inférence CPU. Pour les appareils Apple Mac / Metal, définissez -DGGML_CUDA=OFF puis continuez comme d'habitude - le support Metal est activé par défaut.

  1. Commençons par obtenir une image ! Vous pouvez aussi téléverser des images. Nous allons utiliser https://raw.githubusercontent.com/unslothai/unsloth/refs/heads/main/images/unsloth%20made%20with%20love.pngarrow-up-right, qui est simplement notre mini logo montrant comment les finetunes sont faits avec Unsloth :

  1. Téléchargeons cette image

  1. Ensuite, utilisons la fonction de téléchargement automatique de modèle de llama.cpp, essayez ceci pour le modèle 8B Instruct :

  1. Une fois dedans, vous verrez l'écran ci-dessous :

  1. Chargez l'image via /image PATH c.-à-d. /image unsloth.png puis appuyez sur ENTER

  1. Quand vous appuyez sur ENTER, il dira "unsloth.png image loaded"

  1. Maintenant posons une question comme "Qu'est-ce que cette image ?" :

  1. Chargez maintenant la photo 2 via /image picture.png puis appuyez sur ENTER et demandez "Qu'est-ce que cette image ?"

  1. Et enfin, demandons comment les deux images sont liées (ça marche !)

  1. Vous pouvez également télécharger le modèle via (après avoir installé pip install huggingface_hub hf_transfer ) le snapshot_download de HuggingFace, puisque le téléchargeur automatique de llama.cpp peut être lent. Vous pouvez choisir Q4_K_M, ou d'autres versions quantifiées.

  1. Lancez le modèle et essayez n'importe quelle invite (prompt). Pour Instruct :

  1. Pour Thinking:

🪄Exécution de Qwen3-VL-235B-A22B et Qwen3-VL-30B-A3B

Pour Qwen3-VL-235B-A22B, nous utiliserons llama.cpp pour une inférence optimisée et une pléthore d'options.

  1. Nous suivons des étapes similaires à celles ci-dessus mais cette fois nous devrons aussi effectuer des étapes supplémentaires car le modèle est tellement volumineux.

  2. Téléchargez le modèle via (après avoir installé pip install huggingface_hub hf_transfer ). Vous pouvez choisir UD-Q2_K_XL, ou d'autres versions quantifiées..

  3. Exécutez le modèle et essayez une invite. Réglez les paramètres corrects pour Thinking vs. Instruct.

Instruct :

Thinking :

  1. Modifiez, --ctx-size 16384 pour la longueur de contexte, --n-gpu-layers 99 pour le déchargement sur GPU du nombre de couches. Essayez de l'ajuster si votre GPU manque de mémoire. Retirez-le également si vous n'avez que l'inférence CPU.

circle-check

🐋 Docker : Exécuter Qwen3-VL

Si vous avez déjà Docker Desktop, pour exécuter les modèles d'Unsloth depuis Hugging Face, exécutez la commande ci-dessous et c'est tout :

Ou vous pouvez exécuter les modèles Qwen3-VL téléversés de Docker :

🦥 Ajustement fin (Fine-tuning) de Qwen3-VL

Unsloth prend en charge le fine-tuning et l'entraînement par renforcement (RL) de Qwen3-VL, y compris les modèles plus grands 32B et 235B. Cela inclut la prise en charge du fine-tuning pour la vidéo et la détection d'objets. Comme d'habitude, Unsloth rend les modèles Qwen3-VL 1,7x plus rapides avec 60 % de VRAM en moins et des longueurs de contexte 8x plus longues sans dégradation de la précision. Nous avons créé deux carnets d'entraînement Qwen3-VL (8B) que vous pouvez entraîner gratuitement sur Colab :

circle-check

L'objectif du carnet GRPO est de faire résoudre des problèmes de mathématiques à un modèle langage-visuel via RL à partir d'une entrée image comme ci-dessous :

Ce support de Qwen3-VL intègre également notre dernière mise à jour pour un RL encore plus économe en mémoire et plus rapide incluant notre fonction Standby, qui limite de manière unique la dégradation de la vitesse par rapport à d'autres implémentations. Vous pouvez en lire plus sur la façon d'entraîner des VLM avec RL dans notre guide VLM GRPO.

Entraînement multi-images

Pour fine-tuner ou entraîner Qwen3-VL avec plusieurs images, le changement le plus simple est de remplacer

par :

L'utilisation de map déclenche la standardisation du dataset et les règles de traitement arrow qui peuvent être strictes et plus compliquées à définir.

Mis à jour

Ce contenu vous a-t-il été utile ?