Tutoriel Qwen 2.5 : Démarrage rapide, déploiement et cas d’utilisation concrets
Mis à jour le: 2025-09-05 12:32:56
L’intelligence artificielle évolue rapidement au-delà des modèles purement textuels vers une ère multimodale où les systèmes comprennent les mots, les images, et même la vidéo. Cette transition ouvre la voie à des applications plus naturelles et puissantes, allant de l’automatisation documentaire à l’enseignement intelligent et l’analyse multimédia.
Qwen 2.5, développé par Alibaba Cloud, est l’un des modèles open source multimodaux les plus avancés disponibles aujourd’hui. Il combine compréhension du langage, traitement d’images haute résolution et raisonnement vidéo dans un seul système. Contrairement à de nombreuses plateformes fermées, Qwen 2.5 peut être utilisé librement pour la recherche et à des fins commerciales, ce qui en fait un choix attractif pour les développeurs, les startups et les entreprises cherchant à concevoir des solutions d’IA concrètes.
Ce guide explique comment débuter avec Qwen 2.5. Il couvre l’installation, des exemples de démarrage rapide, les modes de déploiement et des cas d’usage réels afin que vous puissiez mettre le modèle en pratique dans vos propres projets.
Qu’est-ce que Qwen 2.5-VL
Qwen 2.5-VL est la dernière génération de modèles vision-langage du projet Tongyi Qianwen. Il associe traitement de langage à grande échelle, analyse d’images haute résolution et compréhension vidéo. Cette famille comprend des modèles de 3B, 7B, 32B et 72B paramètres. Les variantes plus petites conviennent aux expérimentations locales, tandis que les modèles plus grands offrent des performances de pointe pour des tâches à grande échelle. Avec un contexte allant jusqu’à 128 000 tokens, Qwen 2.5 peut traiter des livres entiers ou de longues conversations. À la différence de GPT-4V ou Gemini, Qwen est entièrement open source, ce qui permet une adoption flexible.
Installation et configuration
Environnement et licence
Qwen 2.5-VL est publié sous licence Apache 2.0. Cela signifie qu’il est totalement open source et utilisable pour des projets de recherche comme pour des projets commerciaux, sans restrictions majeures.
Taille des modèles et prise en charge du contexte
La famille inclut plusieurs tailles de paramètres, notamment 3B, 7B, 32B et 72B. Les modèles plus petits sont plus faciles à exécuter localement, tandis que le modèle le plus grand offre les meilleures performances mais nécessite des GPU puissants. Tous les modèles, à l’exception de la version 72B, sont couverts par la licence open source. Qwen 2.5-VL prend également en charge les entrées à long contexte jusqu’à 128 000 tokens, ce qui le rend idéal pour l’analyse de documents longs et de grandes conversations.
Étapes d’installation
Pour installer le modèle avec Hugging Face Transformers, installez les paquets nécessaires :
pip install git+https://github.com/huggingface/transformers accelerate
pip install qwen-vl-utils[decord]==0.0.8
Une fois installés, le modèle et le processeur peuvent être chargés en quelques lignes de Python :
from transformers import Qwen2_5_VLForConditionalGeneration, AutoProcessor
model = Qwen2_5_VLForConditionalGeneration.from_pretrained("Qwen/Qwen2.5-VL-7B-Instruct", torch_dtype="auto", device_map="auto")
processor = AutoProcessor.from_pretrained("Qwen/Qwen2.5-VL-7B-Instruct")
Matériel et quantification
- Les versions 3B et 7B peuvent fonctionner sur un seul GPU moderne, surtout en utilisant les versions quantifiées.
- Les modèles 32B et 72B nécessitent des configurations multi-GPU plus puissantes.
- Des options de quantification comme INT8 ou INT4 permettent de réduire l’usage mémoire, ce qui facilite le déploiement local tout en conservant une précision acceptable.
Démarrage rapide avec Transformers
Une fois l’environnement prêt, vous pouvez utiliser Qwen 2.5-VL en quelques lignes de code. La bibliothèque Hugging Face Transformers offre une interface simple pour traiter le texte, les images et la vidéo.
Charger le modèle et le processeur
from transformers import Qwen2_5_VLForConditionalGeneration, AutoProcessorimport torch
model = Qwen2_5_VLForConditionalGeneration.from_pretrained("Qwen/Qwen2.5-VL-7B-Instruct",
torch_dtype=torch.float16,
device_map="auto")
processor = AutoProcessor.from_pretrained("Qwen/Qwen2.5-VL-7B-Instruct")
Questions-réponses sur image
Par exemple, si vous avez une image de facture et souhaitez extraire des informations :
from PIL import Image
image = Image.open("invoice_sample.png")
question = "Quel est le montant total de cette facture ?"inputs = processor(text=question, images=image, return_tensors="pt").to("cuda")
outputs = model.generate(**inputs, max_new_tokens=128)print(processor.batch_decode(outputs, skip_special_tokens=True))
Compréhension vidéo
Qwen 2.5-VL accepte aussi les entrées vidéo, ce qui vous permet de résumer ou d’analyser des extraits :
video_path = "meeting_clip.mp4"question = "Résumez les principaux points abordés dans cette vidéo."inputs = processor(text=question, videos=video_path, return_tensors="pt").to("cuda")
outputs = model.generate(**inputs, max_new_tokens=256)print(processor.batch_decode(outputs, skip_special_tokens=True))
Entrées multi-modales
Vous pouvez également fournir plusieurs images, ou combiner images et vidéo dans une même requête pour un raisonnement plus complexe.
Déploiement local avec une démo web et Ollama
Qwen 2.5-VL ne se limite pas aux appels d’API ou scripts Python. Vous pouvez aussi exécuter le modèle localement avec des interfaces conviviales et des solutions légères.
Démo web pour des tests locaux
Le dépôt officiel inclut un script web_demo_mm qui lance une interface web simple. Avec cette démo, vous pouvez téléverser des images ou des fichiers vidéo et interagir avec le modèle dans un format de chat. C’est un moyen rapide de tester les capacités multimodales sans écrire de code personnalisé.
Pour démarrer la démo, exécutez la commande suivante dans le répertoire du projet :
python web_demo_mm.py
Une fois lancée, l’interface est accessible dans votre navigateur, vous permettant de saisir des instructions et de télécharger des médias. Ce dispositif est idéal pour explorer et prototyper rapidement.
Démo de chat vidéo en temps réel
Un autre exemple fourni par les développeurs est une démo de chat vidéo en temps réel. Cette version vous permet de diffuser l’entrée d’une webcam ou d’une source vidéo, et de poser des questions au modèle sur le contenu en direct. Cela démontre la puissance de Qwen 2.5-VL dans des scénarios dynamiques comme la surveillance ou le tutorat interactif.
Utiliser Qwen avec Ollama
Pour ceux qui veulent une expérience légère, Qwen 2.5 est aussi compatible avec Ollama. Ollama fournit un environnement d’exécution facile d’utilisation pour faire tourner localement de grands modèles. Une fois installé, vous pouvez télécharger le modèle Qwen 2.5 avec une seule commande et commencer à interagir sans devoir effectuer de longues configurations.
Cette méthode est particulièrement utile pour ceux qui souhaitent une configuration minimale et essayer Qwen sur leur ordinateur portable ou de bureau sans maîtriser les environnements Python.
Cas d’usage commun : détection d’objets zéro-shot
L’une des façons les plus pratiques d’utiliser Qwen 2.5-VL est la détection d’objets zéro-shot. Contrairement aux systèmes traditionnels de vision par ordinateur nécessitant des données annotées, Qwen peut détecter des objets simplement à partir d’une description en langage naturel de ce qu’il doit chercher.
Cela rend possible l’exécution de tâches comme « repérer toutes les tasses sur la table » ou « repérer tous les feux de signalisation sur cette photo » sans besoin de jeu de données personnalisé. Le modèle peut même fournir les coordonnées des boîtes englobantes dans un format structuré tel que JSON, ce qui est utile pour des chaînes d’automatisation en aval.
Exemple de flux de travail
- Fournissez une image en entrée.
- Demandez à Qwen d’identifier des objets d’intérêt en langage simple.
- Le modèle renvoie des coordonnées et des étiquettes au format JSON.
- Les résultats peuvent être visualisés ou intégrés à d’autres applications.
Exemple de code
from transformers import Qwen2_5_VLForConditionalGeneration, AutoProcessorfrom PIL import Imageimport torch, json
# Charger le modèle et le processeur model = Qwen2_5_VLForConditionalGeneration.from_pretrained("Qwen/Qwen2.5-VL-7B-Instruct", torch_dtype=torch.float16, device_map="auto")
processor = AutoProcessor.from_pretrained("Qwen/Qwen2.5-VL-7B-Instruct")
# Image d’entrée image = Image.open("street_scene.jpg")
prompt = "Détecte toutes les voitures et feux de signalisation dans cette image et retourne le résultat en JSON."
# Prétraitement et génération inputs = processor(text=prompt, images=image, return_tensors="pt").to("cuda")
outputs = model.generate(**inputs, max_new_tokens=256)
result = processor.batch_decode(outputs, skip_special_tokens=True)
# Analyser la sortie (si de type JSON)
try:
parsed = json.loads(result[0])print(parsed)except:print(result)
Pourquoi c’est important
Cette approche diminue le besoin de projets d’annotation coûteux. Les développeurs peuvent appliquer Qwen 2.5-VL à des domaines comme l’analyse en magasin, la surveillance du trafic, la robotique ou les villes intelligentes avec une configuration minimale.
Performances et affinage
Performances de référence
Qwen 2.5-VL a été évalué sur de nombreux types de tâches multimodales. Il montre d’excellents résultats en questions-réponses sur documents (DocVQA), reconnaissance optique de caractères et raisonnement sur de longs contextes. Comparé à de nombreuses alternatives open source, il se distingue particulièrement dans la gestion de documents complexes et l’entrée vidéo.
Le modèle prend également en charge des entrées allant jusqu’à 128K tokens, ce qui permet l’analyse de livres volumineux, de rapports ou de longues conversations sans perte de contexte. Cela en fait l’un des modèles open source les plus performants pour le raisonnement sur des contextes longs.
Options d’affinage
Bien que les modèles de base soient déjà très performants, beaucoup de développeurs souhaiteront adapter Qwen 2.5-VL à des domaines spécifiques. Les options d’affinage incluent :
- Affinage complet : Mise à jour de tous les paramètres du modèle pour une personnalisation maximale, idéal pour les organisations disposant de ressources de calcul importantes.
- Affinage efficace des paramètres : Utilisation de techniques comme LoRA ou QLoRA pour adapter le modèle avec beaucoup moins de paramètres. Cette méthode est économique et largement utilisée en production.
- Adaptation au domaine : Entraînement avec des ensembles de données spécialisés, tels que des images médicales, des rapports financiers ou des contrats juridiques, pour améliorer la précision dans des domaines spécifiques.
Quantification et Optimisation
Pour rendre le déploiement plus pratique, les développeurs peuvent utiliser des versions quantifiées du modèle en précision INT8 ou INT4. Cela réduit la mémoire GPU utilisée et accélère l’inférence, tout en conservant une précision acceptable. Ces optimisations sont essentielles pour exécuter Qwen 2.5 en local ou dans des environnements cloud avec des ressources limitées.
Résolution des problèmes et conseils
Éviter les boucles de décodage
Il arrive parfois que le modèle génère des sorties répétitives ou incomplètes. Pour éviter cela, ajustez les paramètres de décodage comme la température, top_p ou max_new_tokens. Un équilibre dans la configuration donne généralement des réponses plus stables.
Contraintes matérielles
Les grands modèles comme les variantes 32B ou 72B nécessitent beaucoup de mémoire GPU. En cas d’erreurs de mémoire insuffisante, pensez à utiliser une version plus petite (3B ou 7B) ou à appliquer la quantification (INT8 ou INT4). Ces solutions réduisent les besoins en VRAM tout en gardant des performances adaptées.
Choix du décodeur
Avec l'entrée vidéo, certains utilisateurs ont signalé des problèmes avec certains décodeurs. Passer de decord à torchcodec ou à d’autres bibliothèques optimisées peut améliorer la stabilité et la rapidité. Assurez-vous d’installer la dernière version des packages nécessaires.
Conception de prompts
Pour des tâches comme la détection d’objets ou l’analyse de documents, soyez précis dans vos instructions. Par exemple, demandez au modèle de "retourner les résultats au format JSON" ou de "résumer sous forme de points de liste". Des prompts clairs réduisent l’ambiguïté et améliorent la qualité des résultats.
Traitement par lot
Si vous traitez plusieurs images ou vidéos, regrouper les entrées permet d’économiser du temps et des ressources. Utilisez les fonctions de traitement par lots du processeur au lieu de traiter chaque fichier séparément. Cela aide aussi le modèle à conserver le contexte entre les entrées liées.
Conclusion
Qwen 2.5-VL montre que les modèles open-source peuvent concurrencer les systèmes fermés en intelligence artificielle multimodale. Avec ses capacités avancées en OCR, raisonnement vidéo et gestion de longs contextes, il est un outil efficace pour les développeurs comme pour les entreprises. Sa licence Apache 2.0 offre une grande flexibilité et ses tailles de modèles adaptées couvrent de nombreux usages. Avec les futures versions qui s’élargissent vers l’audio et la 3D, Qwen reste un excellent choix pour tous ceux qui travaillent avec l’IA multimodale de pointe.
FAQs et sujets complémentaires
Qwen 2.5-VL peut-il être utilisé via une API ?
Oui. En plus d’un déploiement local, Qwen 2.5-VL est accessible via les APIs cloud, ce qui facilite l’intégration dans des applications web ou mobiles.
Quelles plateformes supportent Qwen 2.5 ?
Le modèle peut être déployé sur des machines locales, serveurs d’entreprise ou grandes plateformes cloud. Des images Docker sont aussi disponibles pour une installation simplifiée.
Comment choisir la bonne taille de modèle ?
Pour l’expérimentation ou les applications légères, il est conseillé d’utiliser les versions 3B ou 7B. Les entreprises disposant de ressources matérielles plus puissantes peuvent opter pour les variantes 32B ou 72B pour des performances maximales.
Qwen 2.5 prend-il en charge les sorties structurées ?
Oui. Le modèle peut produire des résultats au format JSON, tableaux ou en paires clé-valeur lorsque c’est demandé, ce qui est très utile pour l’extraction de données ou les rapports automatisés.