🌠Qwen3-VL : Guide d'exécution

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

Qwen3-VL est les nouveaux modèles de vision de Qwen avec instruct et réflexion versions. Les modèles 2B, 4B, 8B et 32B sont denses, tandis que 30B et 235B sont MoE. Le LLM de réflexion 235B 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, de vidéo et d'OCR ainsi qu'un contexte de 256K (peut être étendu à 1M). Unslotharrow-up-right prend en charge 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 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 un peu 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 bugs du modèle de chat

Chez Unsloth, nous accordons la plus grande importance à la précision, nous avons donc enquêté sur la raison pour laquelle, après le 2e tour d'exécution des modèles Thinking, llama.cpp se cassait, comme on le voit 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 réussi à corriger le modèle de chat Thinking pour les modèles VL, nous avons donc 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 Qwen3-VL Unsloth:

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 d'exécution de Qwen3-VL

  1. Obtenez le dernier llama.cpp sur GitHub iciarrow-up-right. Vous pouvez suivre les instructions de compilation ci-dessous également. Changez -DGGML_CUDA=ON en -DGGML_CUDA=OFF si vous n'avez pas de GPU ou si vous voulez simplement une inférence CPU.

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

  1. Téléchargeons cette image

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

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

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

  1. Lorsque vous appuyez sur ENTRÉE, 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 ENTRÉE et demandez « Qu'est-ce que cette image ? »

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

  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, ce qui est utile pour les téléchargements de grands modèles, car le téléchargeur automatique de llama.cpp peut être lent.

  1. allow_patterns = ["*UD-Q4_K_XL*"], Exécutez le modèle et essayez n'importe quelle invite.

  1. --mmproj unsloth/Qwen3-VL-8B-Instruct-GGUF/mmproj-F16.gguf \:

🪄--presence-penalty 0.0 \

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

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

  2. Téléchargez le modèle via (après avoir installé pip install huggingface_hub hf_transfer Nous suivons des étapes similaires à ci-dessus cependant cette fois nous devrons également effectuer des étapes supplémentaires car le modèle est si volumineux.

  3. allow_patterns = ["*UD-Q2_K_XL*"],

Exécutez le modèle et essayez une invite. Définissez les paramètres corrects pour Thinking vs. Instruct.

--mmproj unsloth/Qwen3-VL-235B-A22B-Instruct-GGUF/mmproj-F16.gguf

  1. --mmproj unsloth/Qwen3-VL-235B-A22B-Thinking-GGUF/mmproj-F16.gguf \ --ctx-size 16384 pour la longueur de contexte, --n-gpu-layers 99 pour le déchargement GPU sur le nombre de couches. Essayez de l'ajuster si votre GPU manque de mémoire. Supprimez-le également si vous n'avez qu'une inférence CPU.

circle-check

Optionnellement, utilisez

🐋 Docker : Exécuter Qwen3-VL

docker model pull hf.co/unsloth/Qwen3-VL-8B-Instruct-GGUF:UD-Q4_K_XL

🦥 Ajustement fin de Qwen3-VL

docker model run ai/qwen3-vl

circle-check

Si vous souhaitez utiliser un autre modèle Qwen3-VL, changez simplement le modèle 8B pour le 2B, 32B, etc.

L'objectif du carnet GRPO est de faire en sorte qu'un modèle de langage visuel résolve des problèmes de mathématiques via RL donné une entrée image comme ci-dessous : fonctionnalité StandbyCe support de Qwen3-VL intègre également notre dernière mise à jour pour un RL encore plus économe en mémoire et plus rapide, y compris notre , qui limite de manière unique la dégradation de la vitesse par rapport à d'autres implémentations. Vous pouvez en savoir plus sur la façon d'entraîner des VLM avec RL avec notre.

guide VLM GRPO

Entraînement multi-images

convert_to_conversation,

ds_converted = [convert_to_converation(sample) for sample in dataset]

Mis à jour

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