Mistral OCR 4 : la classification par blocs qui révolutionne le chunking pour le RAG
Le 24 juin 2026, Mistral AI a annoncé la sortie de OCR 4, un nouveau modèle de reconnaissance optique de caractères qui dépasse le simple extracteur de texte brut. Pour les équipes qui construisent des pipelines RAG (Retrieval-Augmented Generation), cette sortie mérite une attention particulière : la classification automatique des blocs de contenu change fondamentalement la manière dont on peut aborder le chunking intelligent.
Source : The Decoder
Ce que fait vraiment OCR 4 : au-delà de l'extraction brute
La plupart des solutions OCR classiques — et même beaucoup d'approches basées sur des LLM — se contentent d'extraire le texte d'un document en le « aplatissant » : tout devient une suite de caractères, sans hiérarchie ni structure sémantique.
OCR 4 adopte une approche différente. Pour chaque élément détecté dans un document (PDF, Word, PowerPoint), le modèle produit :
- La position spatiale de l'élément sur la page
- Sa classification sémantique : titre, paragraphe, tableau, équation, signature, etc.
- Un score de confiance par mot et par page
Cette triple information — position, rôle, certitude — est exactement ce qu'il manque aux pipelines RAG qui souffrent de chunks mal découpés, mélangeant des données de natures hétérogènes.
Le problème du chunking naïf dans les pipelines RAG
Dans un pipeline RAG standard, la qualité de la retrieval dépend directement de la qualité du découpage des documents. Un chunking naïf — par exemple, couper tous les 500 tokens — produit des morceaux qui peuvent :
- Fusionner un titre avec le contenu qui ne lui appartient pas
- Découper un tableau en deux, rendant les données inutilisables pour le LLM
- Mélanger une équation mathématique avec du texte narratif, polluant l'embedding
Le résultat : des embeddings de mauvaise qualité, une retrieval imprécise, et des réponses générées moins pertinentes.
La classification par blocs d'OCR 4 offre une solution directe à ce problème. Puisque le modèle identifie la nature de chaque bloc avant même que vous ne traitiez le document, vous pouvez construire une stratégie de chunking guidée par la sémantique :
[TITRE H1] → ancre de contexte pour les blocs suivants
[PARAGRAPHE] → chunk autonome, embeddings narratifs
[TABLEAU] → chunk isolé, traitement structuré séparé
[ÉQUATION] → chunk isolé ou ignoré selon le cas d'usage
[SIGNATURE] → métadonnée, exclue du retrieval
Chaque type de bloc peut ainsi être traité avec la stratégie la plus adaptée : chunking, exclusion, stockage en métadonnée, ou indexation dans un index dédié.
Intégration concrète dans un pipeline Symfony/PHP
OCR 4 est disponible via l'API Mistral, Mistral Studio et Microsoft Foundry. La tarification est de 4 $ pour 1 000 pages (ou 2 $ en mode batch), ce qui reste compétitif pour des volumes documentaires importants.
Dans un contexte Symfony, l'intégration peut s'articuler autour du client HTTP natif et d'un service dédié :
// src/Service/OcrChunkingService.php
class OcrChunkingService
{
public function __construct(
private readonly HttpClientInterface $httpClient,
private readonly string $mistralApiKey,
) {}
public function extractBlocks(string $pdfPath): array
{
$response = $this->httpClient->request('POST', 'https://api.mistral.ai/v1/ocr', [
'headers' => [
'Authorization' => 'Bearer ' . $this->mistralApiKey,
'Content-Type' => 'application/json',
],
'json' => [
'model' => 'mistral-ocr-4',
'document' => base64_encode(file_get_contents($pdfPath)),
],
]);
return $response->toArray()['blocks'] ?? [];
}
public function chunkBySemanticType(array $blocks): array
{
$chunks = [];
foreach ($blocks as $block) {
// On ignore les signatures et les éléments à faible confiance
if ($block['type'] === 'signature' || $block['confidence'] < 0.75) {
continue;
}
$chunks[] = [
'text' => $block['text'],
'type' => $block['type'],
'metadata' => [
'page' => $block['page'],
'position' => $block['bbox'],
'confidence' => $block['confidence'],
],
];
}
return $chunks;
}
}
Ce service produit des chunks enrichis de métadonnées, directement exploitables pour un stockage dans pgvector ou un moteur de recherche vectoriel.
💡 Astuce : les tableaux détectés par OCR 4 peuvent être routés vers un traitement séparé — conversion en CSV ou en JSON structuré — avant embedding, pour préserver leur sémantique tabulaire.
Performances et fiabilité : ce que disent les chiffres
Mistral annonce des résultats solides pour OCR 4 :
- 170 langues supportées, y compris des langues peu courantes
- 72 % de préférence dans un test en aveugle sur plus de 600 documents, face aux modèles concurrents
- Performances supérieures sur les benchmarks publiés
Ces chiffres sont ceux communiqués par Mistral AI eux-mêmes, ce qui appelle naturellement à une validation indépendante sur vos propres corpus. Les performances OCR varient fortement selon la qualité des scans, la densité du contenu et les langues présentes. Un test sur un échantillon représentatif de vos documents métier reste indispensable avant tout déploiement en production.
Cela dit, la combinaison score de confiance + classification de blocs est un signal fort pour les cas d'usage RAG : vous pouvez filtrer automatiquement les pages mal lues (confidence basse) et adapter votre stratégie de chunking en temps réel.
Conclusion : un outil à évaluer sérieusement pour vos pipelines documentaires
Mistral OCR 4 n'est pas qu'un nouvel OCR plus précis. C'est une couche de structuration sémantique automatique qui s'insère naturellement en amont d'un pipeline RAG. Pour les équipes PHP/Symfony qui gèrent des volumes importants de documents hétérogènes — contrats, rapports, fiches techniques — la classification par blocs ouvre la voie à un chunking véritablement intelligent, sans couche de post-traitement coûteuse.
À 2 $ pour 1 000 pages en mode batch, le rapport qualité/prix mérite d'être évalué face aux solutions actuelles de votre stack. Le test en aveugle à 72 % est encourageant ; vos propres documents seront le vrai banc d'essai.