---
title: "API de vision pour les images · compatible OpenAI, traitée en UE"
description: "Envoyez des images à des modèles de vision ouverts au format chat d'OpenAI. Tickets, captures d'écran, formulaires et photos, traités dans l'UE."
canonical: "https://inference.eu/fr/api/vision/"
language: "fr"
---

Guides · Vision

# Vision : envoyer des images à des modèles ouverts, traitées dans l'UE

Les modèles de vision lisent les images autant que le texte. Ils décrivent une photo, lisent un ticket de caisse, comparent deux captures d'écran, contrôlent un formulaire ou répondent à des questions sur un graphique. Les images partent dans la même requête de chat que le texte, au format OpenAI ou Anthropic, et sont traitées dans des centres de données européens, ce qui compte quand elles montrent des documents, des personnes ou des données clients.

[Contacter l'équipe](https://inference.eu/fr/contact/)[Exemple de requête](#example)

1.  01Format d'API: OpenAI et Anthropic
2.  02Centres de données dans l'UE
3.  03Couvert par un seul DPA

read\_receipt.py

```
import base64, os
from openai import OpenAI

client = OpenAI(base_url="https://api.inference.eu/v1", api_key=os.environ["INFERENCE_EU_API_KEY"])

with open("receipt.jpg", "rb") as f:
    image = base64.b64encode(f.read()).decode()

reply = client.chat.completions.create(
    model="mistral-small-3.2-24b-instruct",
    messages=[{
        "role": "user",
        "content": [
            {"type": "text", "text": "List the items, the VAT rate and the total on this receipt."},
            {"type": "image_url", "image_url": {"url": f"data:image/jpeg;base64,{image}"}},
        ],
    }],
    max_tokens=500,
)
print(reply.choices[0].message.content)
```

## Comment envoyer une image

Choisissez un modèle doté de vision, comme `mistral-small-3.2-24b-instruct`, et faites du `content` du message utilisateur une liste de parties plutôt qu'une chaîne. Une partie `text` porte votre question ; une partie `image_url` porte l'image, soit sous forme d'URL HTTPS publique, soit sous forme d'URL data en base64, comme dans l'exemple. Vous pouvez mêler plusieurs images et textes dans un même message.

La réponse revient en texte normal dans `choices[0].message.content`. Au format Messages d'Anthropic, utilisez plutôt un bloc `image` avec une source `base64` ou `url`. Avec l'API Responses, utilisez un élément `input_image`.

## Taille, niveau de détail et tokens

Les images sont converties en tokens avant d'être lues, et une grande image en produit davantage. Cela pèse sur le coût, la vitesse et la place restante dans la fenêtre de contexte. Adaptez la taille à la tâche : une photo à décrire peut être petite, alors qu'une facture dense ou la capture d'un tableau exige assez de résolution pour que le texte reste lisible.

Utilisez le JPEG pour les photos et le PNG pour les captures et documents au texte net. Recadrez sur la zone utile lorsque c'est possible. Le champ `detail` de `image_url` est accepté par compatibilité ; son effet sur le traitement dépend du modèle.

## Usages éprouvés

Tickets et factures : envoyez l'image avec un schéma JSON dans `response_format` pour obtenir fournisseur, date, lignes et totaux sous forme de données structurées. Captures d'écran : demandez au modèle de décrire un bug d'interface, de lire une boîte de dialogue d'erreur ou de comparer une maquette à la page réalisée. Contrôle qualité : montrez une photo de produit et demandez si l'étiquette est présente et lisible.

Pour un PDF de plusieurs pages, mieux vaut souvent le convertir d'abord en Markdown avec l'outil de conversion de documents et envoyer du texte, en réservant la vision aux pages avec graphiques ou écriture manuscrite. Le texte coûte moins cher par page et se recherche, se cite et se stocke plus facilement.

## Erreurs et cas particuliers

Envoyer une image à un modèle texte seul renvoie une erreur 400 indiquant que le modèle n'accepte pas les images ; consultez la page du modèle ou `GET /v1/models`. Les URL d'images doivent être accessibles publiquement en HTTPS : liens privés, liens qui expirent ou pages protégées échouent, envoyez alors du base64. Un fichier très lourd peut dépasser la taille maximale de requête : compressez-le.

Les modèles de vision peuvent mal lire les petits caractères, l'écriture manuscrite et les chiffres, et décrire ce qu'ils s'attendent à voir plutôt que ce qui figure à l'image. Pour tout ce qui compte, comme les montants d'une facture, validez les valeurs et gardez un humain dans la boucle. N'utilisez pas ces modèles pour identifier des personnes.

## Vision

Catégorie

Guides

Format d'API

OpenAI et Anthropic

Base URL

api.inference.eu/v1

Traitement

Centres de données dans l'UE

Entraînement sur vos données

Jamais

## Vision : questions fréquentes

Les questions que nous posent le plus les achats, les développeurs et les juristes. Il en manque une ? Posez-la-nous directement.

Les modèles dotés de vision sont signalés sur leur page et dans le catalogue ; \`mistral-small-3.2-24b-instruct\` en est un exemple. Appelez \`GET /v1/models\` pour voir ceux accessibles à votre clé, et préférez un modèle de vision plus grand pour les documents denses ou les graphiques complexes.

Oui. Les images se placent dans les messages chat completions sous forme de parties \`image\_url\`, exactement comme avec les modèles de vision d'OpenAI, et dans l'API Responses sous forme d'éléments \`input\_image\`. Le format Messages d'Anthropic accepte les blocs \`image\`. Votre code fonctionne après changement de l'URL de base, de la clé et du modèle.

Oui. Lisez le fichier, encodez-le en base64 et envoyez-le comme URL data, par exemple \`data:image/png;base64,...\`, dans le champ \`image\_url\`. Cela évite aussi d'exposer l'image sur une URL publique. Compressez les grandes images pour rester sous la taille maximale de requête.

Plusieurs, tant que l'ensemble tient dans la fenêtre de contexte du modèle et dans la taille maximale de requête. Chaque image consomme des tokens selon sa résolution. La limite exacte par requête dépend du modèle et de votre offre, et nous vous la confirmons.

Les modèles de vision lisent des images : il faudrait donc convertir chaque page du PDF en image. Pour la plupart des PDF, mieux vaut les convertir en Markdown avec l'outil de conversion de documents et envoyer le texte. Gardez la vision pour les pages où la mise en page, les graphiques ou l'écriture manuscrite portent le sens.

Oui. Associez l'image à \`response\_format\` et à un schéma JSON, par exemple pour extraire les champs d'un ticket de caisse ou d'un formulaire. Le modèle renvoie un JSON conforme à votre schéma. Vérifiez les valeurs importantes, comme les totaux, avant de les utiliser.

Non. Les images sont traitées dans des centres de données de l'UE pour répondre à la requête et ne servent jamais à entraîner des modèles. C'est essentiel pour les scans de contrats ou de factures et les captures d'écran contenant des informations personnelles ou confidentielles.

Un texte petit ou flou perd des détails lors de la conversion en tokens. Envoyez une image plus nette ou recadrée, utilisez le PNG pour les documents et demandez au modèle de citer le texte exact. Pour des chiffres critiques, convertissez le document en texte ou recoupez le résultat avec une autre source.

[Poser une question](https://inference.eu/fr/contact/)

## Pages liées

[Présentation de l'API](https://inference.eu/fr/api/)

-   [Chat completionsEnvoyez vos messages à des modèles open-weight au format chat completions d'OpenAI. Traitement dans des centres de données de l'UE, sans entraînement.Endpoints](https://inference.eu/fr/api/chat-completions/)
-   [Document conversionConvertissez vos fichiers PDF, Word, PowerPoint et Excel en Markdown propre pour le RAG et les prompts. Tableaux, titres et scans, traités dans l'UE.Outils](https://inference.eu/fr/api/document-conversion/)
-   [Structured outputsObtenez des modèles ouverts un JSON valide conforme à votre schéma grâce aux sorties structurées compatibles OpenAI. Mode JSON, json\_schema, strict, pièges.Guides](https://inference.eu/fr/api/structured-outputs/)
-   [Image generationGénérez des images à partir de texte avec une API d'images compatible OpenAI. Modèles ouverts comme FLUX.1 schnell, traités dans des centres de l'UE.Endpoints](https://inference.eu/fr/api/images/)

## Faites passer vos charges IA sur une infrastructure européenne

Dites-nous quels modèles vous utilisez et votre volume approximatif. Nous répondons sous un jour ouvré avec un tarif et la suite.

-   Réponse sous un jour ouvré
-   Tarif adapté à votre volume
-   DPA prêt à signer
