Accéder au contenu principal

Pixtral Large : Un guide avec des exemples

Apprenez à utiliser Pixtral Large de Mistral via Le Chat ou accédez-y de manière programmatique grâce à l'API sur La Plateforme.
Actualisé 14 févr. 2025  · 8 min de lecture

Mistral AI a récemment annoncé Pixtral Large, un modèle multimodal qui est une version plus puissante de Pixtral 12Bqui a été lancé au début de l'année.

Pixtral Large est un modèle multimodal 124B qui peut s'attaquer à des tâches avancées de compréhension d'images tout en préservant les capacités exceptionnelles de traitement de texte de Pixtral Large. Mistral Large 2. Avec une énorme fenêtre contextuelle de 128K, ce modèle peut analyser jusqu'à 30 images haute résolution en même temps que du texte, ce qui le rend idéal pour les documents, les graphiques et les images naturelles.

Dans ce tutoriel, je vous guiderai à travers différents exemples et vous fournirai des instructions détaillées, étape par étape, sur la façon d'utiliser Pixtral Large à travers l'interface web Le Chat et l'API. Avant de passer aux étapes pratiques, explorons d'abord les concepts théoriques clés qui sous-tendent Pixtral Large.

Qu'est-ce que Pixtral Large ?

Pixtral Large dispose d'un décodeur multimodal 123B et d'un encodeur de vision à 1B paramètres (124B paramètres), ce qui lui permet de traiter efficacement les cas suivants multimodales multimodales. Il a démontré des capacités inégalées dans divers scénarios tels que :

  • OCR multilingue: Il permet de traiter avec précision les reçus et d'effectuer des calculs en fonction du contexte (par exemple, l'analyse de nos factures de restaurant).
  • Compréhension des graphiques: Ces données sont utilisées pour identifier les anomalies et les tendances, par exemple pour repérer les problèmes dans les courbes de perte de formation.
  • Analyse générale: Il peut extraire des informations à partir de captures d'écran, répondre efficacement à des questions contextuelles, etc.

Pixtral Large présente de bons résultats sur un certain nombre de benchmarks - voici ceux qui ont attiré mon attention :

  • MathVista: 69,4 % de précision dans le raisonnement mathématique sur des données visuelles.
  • ChartQA et DocVQA: Surpasse des concurrents de premier plan tels que GPT-4o et Gemini-1.5 Pro dans le raisonnement sur des graphiques et des documents complexes.
  • MM-MT-Bench: Surpasse Claude-3.5 Sonnet, Gemini-1.5 Pro et GPT-4o dans des tâches multimodales réelles.

Pixtral Large sur de nombreux benchmarks

Source : Mistral AI

Pixtral Large 124B vs Pixtral 12B

Pixtral Large 124B et Pixtral 12B partagent certaines bases architecturales mais ne sont pas identiques. Bien que Pixtral Large repose sur les bases posées par Pixtral 12B, ses caractéristiques sont significatives en termes d'architecture, de taille de la fenêtre contextuelle et d'intégration multimodale, ce qui permet d'obtenir des performances supérieures dans diverses tâches. Voici quelques différences entre les deux modèles.

  • Cette différence de taille permet à Pixtral Large de gérer des tâches plus complexes et des ensembles de données plus importants.
  • Une fenêtre contextuelle plus large permet à Pixtral Large de traiter et de comprendre des séquences de texte plus longues et des images plus complexes.
  • Les deux modèles sont conçus pour des tâches multimodales, intégrant des données textuelles et des images. Cependant, Pixtral Large introduit des couches d'attention croisée spécialisées afin de mieux fusionner les informations entre les différentes modalités, améliorant ainsi ses performances dans des tâches telles que la compréhension d'images et le traitement de documents.
  • Pixtral Large nécessite davantage de ressources informatiques, notamment plus de 200 Go de données et un puissant GPU, par rapport à Pixtral 12B. Cela met en évidence la complexité et la capacité accrues du modèle le plus grand.

Architecture Pixtral

Architecture Pixtral. Source : Rapport technique Pixtral 12B.

Si vous souhaitez explorer plus en profondeur l'architecture du modèle, consultez le rapport technique Pixtral 12B technique. Le rapport technique de Pixtral Large n'est pas disponible actuellement.

Comment utiliser Pixtral Large sur Le Chat

Le Chat offre une interface basée sur le chat, à l'instar du populaire ChatGPT.

L'interface Le Chat de Mistral AI

Bien que nous ne puissions pas sélectionner le modèle Pixtral Large de manière spécifique, l'article d'annonce article d'annonce indique clairement que le nouveau modèle multimodal Pixtral Large permet une "compréhension des documents et des images à la pointe de la technologie".

J'ai essayé Pixtral Large pour la première fois dans le cadre d'un travail de recherche sur Transformateur-Litequi contient beaucoup de texte et de graphiques. J'ai demandé au modèle de me fournir un résumé du document :

Résumer un document de recherche en utilisant le modèle Pixtal Large via Le Chat

J'ai été assez satisfait du résultat. Ensuite, j'ai demandé à Pixtral d'expliquer ce diagramme circulaire de la distribution des marques de smartphones, mais j'ai pris soin de rester vague et de ne pas dévoiler le contenu du diagramme.

Expérience 2 - Résumé d'un diagramme circulaire à l'aide du modèle Pixtal Large via Le Chat

Le modèle a compris le diagramme circulaire et a identifié les chiffres correctement. La réponse est bien structurée et donne également une interprétation précise, en disant que si Samsung et Apple dominent le marché, une part importante est occupée par une variété d'autres marques.

Comment utiliser l'API de Pixtral Large sur La Plateforme

Pour la plupart des cas d'utilisation quotidienne, Le Chat est une excellente option, mais si nous voulons utiliser Pixtral Large de manière programmatique, nous devons nous connecter via son API. Je vous montrerai d'abord comment vous connecter à l'API via La Plateforme, puis je testerai Pixtral Large sur mes propres dessins.

Se connecter à La Plateforme

Pour utiliser Pixtral Large à travers l'API, nous pouvons suivre les étapes suivantes :

1. Connectez-vous à La Plateforme.

2. Cliquez sur Démarrage rapide → Demandes d'API

Démarrage rapide de l'API Mistral

3. Sélectionnez l'option de compte gratuit. Cliquez sur Experiment for free, ce qui nous amène à une autre page pour vérifier le compte en utilisant notre numéro de mobile à l'aide d'un OTP et en créant un nouveau compte.

Options du plan de facturation Mistral

4. Une fois le compte configuré, sélectionnez API keys dans l'onglet API (à gauche).

Onglet clés API Mistral

5. Ensuite, cliquez sur Créer une nouvelle clé. Nous pouvons remplir les détails facultatifs et cliquer sur Créer une clé.

Mistral pop up pour créer une clé API

La clé API est maintenant prête à être utilisée. 

Onglet pour trouver les clés API actives et expirées dans Mistral

Générateur de description d'image utilisant l'API sur mon dessin

Créons maintenant un générateur de description d'image à l'aide de l'API. L'objectif est de transmettre au modèle n'importe quelle image accompagnée d'une question dans l'invite (par exemple, "Fournissez une description détaillée de l'image donnée") et de recevoir une réponse.

Je vais tester cela en générant une description pour l'un de mes dessins, qui est illustré ci-dessous. L'image représente un cadre mobile pour une application de chatbot d'assistance à la clientèle 24/7.

dessin utilisé pour la démo de l'api pixtral large

Avant de commencer, assurez-vous que vous disposez de la configuration suivante :

  1. GPU: Un GPU T4 est nécessaire pour cette configuration. Vous pouvez utiliser Google Colab, qui fournit un accès gratuit à un GPU T4.
  2. Bibliothèque Mistral AI : Pour l'installer, exécutez la commande suivante :
!pip install -U mistralai

Commençons :

Étape 1 : Importations

Ensuite, nous mettons en place nos importations. Pour ce tutoriel, nous utiliserons les bibliothèques suivantes :

  • Pillow (PIL) pour le traitement d'images
  • Base64 pour le codage et le décodage de données binaires dans un format base64
  • La bibliothèque io.BytesIO fournit une interface de flux d'octets en mémoire
import base64
from io import BytesIO
from PIL import Image
from mistralai import Mistral

Étape 2 : Client API Pixtral

Ensuite, utilisez la clé API. Pour configurer la clé API dans Google Colab, accédez à l'onglet Secrets. Cliquez sur l'icône de la clé dans la barre latérale gauche, puis collez votre clé API et attribuez un nom au secret. Ensuite, faites basculer le bouton pour activer le secret et l'utiliser dans votre code. Cela nous permettra d'utiliser le code suivant dans notre application.

from google.colab import userdata
userdata.get('secretName') # pass in your secretName here

Une fois la clé secrète en place, nous créons une variable portant le nom API_KEY et lui transmettons notre nom secret, comme le montre le code ci-dessous. Ensuite, nous transmettons la clé API à la fonction Mistral et configurons le client.

from google.colab import userdata
API_KEY = userdata.get('secretName')  # Replace with your actual secret name
client = Mistral(api_key=API_KEY) 

Note : Il est possible de transmettre directement la clé API, mais cela n'est pas recommandé pour des raisons de sécurité et de confidentialité. 

Étape 3 : Encodage de l'image

Une fois le client installé, nous commençons à traiter l'image qui servira d'entrée au modèle Pixtral Large.

# Helper function to encode an image to base64
def encode_image(image_obj):
    if isinstance(image_obj, Image.Image):  # Check if it's already a PIL Image
        img = image_obj
    else:  # Otherwise, try opening it as a path
        img = Image.open(image_obj)
    buffered = BytesIO()
    img.save(buffered, format="PNG")
    return base64.b64encode(buffered.getvalue()).decode("utf-8")

L'objectif principal de la fonction ci-dessus est de prendre une image, soit sous la forme d'un chemin d'accès à un fichier, soit sous la forme d'un objet PIL.Image.Image préchargé, et de renvoyer sa représentation sous la forme d'une chaîne de caractères Base64. Ceci est utile pour :

  • Intégrer l'image directement dans un objet JSON ou une demande d'API.
  • Il n'est pas nécessaire d'envoyer l'image dans un fichier séparé.

Étape 4 : Inférence sur l'image

Une fois que nous avons l'image, nous voulons générer sa description avec l'API Pixtral Large. Le flux de travail comprend l'encodage de l'image, la création d'une invite, l'envoi d'une requête à l'API Pixtral et la réception d'une réponse descriptive. Voici comment fonctionne le code suivant :

  1. L'image est encodée dans un format Base64 et envoyée avec l'invite dans un message structuré à l'API Pixtral.
  2. Le modèle Pixtral Large traite l'invite et l'image pour générer une description textuelle détaillée du contenu de l'image.
  3. La réponse est analysée pour en extraire la description, qui est affichée à l'utilisateur.

Note : Assurez-vous que sous client.chat.complete, le modèle est défini sur "pixtral-large-latest" qui est actuellement le seul modèle Pixtral Large disponible pour le public.

# Function to perform inference for image description
def describe_image(image_path):
    # Load and encode the image
    image_base64 = encode_image(image_path)
    # Prompt for the Pixtral model
    prompt = "Please provide a detailed description of the given image."
    # Prepare input for the Pixtral API
    messages = [
        {
            "role": "user",
            "content": [
                {"type": "text", "text": prompt},
                {"type": "image_url", "image_url": {"url": f"data:image/png;base64,{image_base64}"}}
            ]
        }
    ]
    # Perform inference
    response = client.chat.complete(
        model="pixtral-large-latest",
        messages=messages,
        max_tokens=300
    )
    # Return the model's output
    return response.choices[0].message.content

# Usage
if __name__ == "__main__":
    # Provide the path to your image file
    image_path = "image.png"  # Replace with the path to your image
    # Get the description of the image
    description = describe_image(image_path)
    
    # Print the result
    print("Image Description:")
    print(description)
Image Description:
The image is a sketch of a mobile app prototype for automated customer support. The sketch depicts a smartphone screen with a customer support interface.
At the top of the screen, there is a header that reads "24x7 Customer Support Powered By AI." Below the header, there is a chat window where a conversation between a user and an AI-powered support system is taking place.
The conversation starts with the AI greeting the user: "Hi! How can I help you?" The user responds: "Hi, I am looking for assistance for featureX." The AI then provides a response: "Sure, here are a few steps:" followed by a placeholder for the steps, which are represented by horizontal lines.
At the bottom of the screen, there is a text input box labeled "Type your message" and a button labeled "Ask AI." The button is highlighted in red, indicating it is an actionable element for the user to interact with.
Overall, the sketch illustrates a user-friendly interface for automated customer support, utilizing AI to provide assistance and guidance to users.

Voici un autre exemple de sapin de Noël que j'ai également dessiné et, sous l'image, ce que Pixtral Large en a pensé.

Dessin d'un arbre de Noël

Image Description:
The image presents a charming scene of a Christmas tree, standing tall and proud. 
.
.
This description is based on the visible content of the image and does not include any speculative or imaginary elements.

Conclusion

Pixtral Large semble être un pas en avant dans l'IA multimodale, avec une meilleure compréhension des images et un meilleur traitement du texte. Dans ce guide, nous avons exploré les capacités du modèle à travers Le Chat et La Plateforme, et j'espère que ce guide vous sera utile.


Aashi Dutt's photo
Author
Aashi Dutt
LinkedIn
Twitter

Je suis un expert Google Developers en ML (Gen AI), un expert Kaggle 3x, et un ambassadeur Women Techmakers avec plus de 3 ans d'expérience dans la technologie. J'ai cofondé une startup dans le domaine de la santé en 2020 et je poursuis un master en informatique à Georgia Tech, avec une spécialisation dans l'apprentissage automatique.

Sujets

Apprenez l'IA avec ces cours !

Certification disponible

cours

Retrieval Augmented Generation (RAG) avec LangChain

3 hr
2.9K
Apprenez des méthodes de pointe pour intégrer des données externes aux LLM en utilisant Retrieval Augmented Generation (RAG) avec LangChain.
Afficher les détailsRight Arrow
Commencer le cours
Voir plusRight Arrow