Introduction : Pourquoi la compression est désormais une superpuissance pour les LLM
Si vous avez déjà essayé d’intégrer une semaine de journaux de discussion, de données de télémétrie ou de traces d’application multi-systèmes dans une invite, vous avez atteint le plafond rigide des fenêtres contextuelles. Le manuel habituel (résumer, élaguer, fragmenter) ne vous mène que jusqu’à un certain point avant que la perte de signal ne s’installe. DeepSeek‑OCR introduit une tournure frappante : compresser le texte en jetons visuels à l’aide d’un pipeline OCR‑VLM pour réduire considérablement le contexte sans perdre de sens. Les premiers rapports de la communauté font état d’une efficacité de compression d’un ordre de grandeur en tirant parti des jetons visuels au lieu des jetons de texte brut, un paradigme que certaines analyses décrivent comme une « Compression Optique Contextuelle » et « des milliers de jetons de texte en quelques centaines de jetons visuels » pour les flux de travail à contexte long.
Dans ce tutoriel pratique et étape par étape sur DeepSeek‑OCR, vous apprendrez à compresser les historiques de conversation, les journaux et les données pour les LLM tout en conservant la précision de la récupération, et comment combiner la compression basée sur l’OCR avec la synthèse, la fragmentation hiérarchique et RAG pour une invite puissante et à faible latence.
À qui s’adresse ce guide
- Aux créateurs de copilotes d’IA qui doivent ingérer de longues conversations et des pistes d’activité
- Aux ingénieurs de données qui gèrent les journaux, les traces et les mesures pour le raisonnement LLM
- Aux chercheurs qui prototyper des flux de travail à très long contexte avec un budget limité
Accroche en une phrase : Si vous pouvez transformer un texte tentaculaire en représentations visuelles compactes que les LLM peuvent lire, vous récupérez un budget de contexte sans sacrifier les miettes de raisonnement.
Qu’est-ce que la compression DeepSeek‑OCR ? L’idée principale
- Compression de jetons visuels : Convertir les étendues de texte denses en intégrations visuelles à haute information ; les jetons visuels peuvent être moins chers et plus compacts que les jetons de texte équivalents.
- Compression Optique Contextuelle : Utiliser OCR/VLM pour encoder un contexte textuel important sous forme d’images ou de mises en page visuellement structurées, en préservant la structure sémantique tout en réduisant le nombre de jetons.
- Flux de travail à contexte long : Compresser des milliers de jetons en centaines de jetons visuels, permettant des ensembles de travail plus importants pour la planification, l’utilisation d’outils ou le raisonnement multi-tours.
Quand l’utiliser
- Historiques de conversation avec des formulations répétitives ou une structure prévisible
- Journaux système, traces, sorties de build ou dumps d’analyse
- Instantanés de documentation, tableaux de bord ou rapports semi-structurés
Ce que vous allez construire dans ce tutoriel
Vous allez implémenter un pipeline pour :
- Normaliser et segmenter les données de conversation/journal.
- Choisir des stratégies de compression (OCR‑visuelle, synthèse textuelle ou hybride).
- Générer des représentations visuelles compactes via DeepSeek‑OCR.
- Indexer avec des métadonnées pour la récupération.
- Interroger avec une invite RAG hybride qui accepte à la fois du texte et des images.
- Évaluer la fidélité et le coût.
Section 1 — Préparation des données : Rendre les historiques désordonnés adaptés au modèle
- Normaliser les horodatages et les rôles : p. ex., {timestamp format}.
- Inconvénients : nécessite la prise en charge de VLM ; nécessite le rendu et l’E/S d’image.
- À utiliser lorsque : vous avez besoin d’une fidélité de contexte long, de diagrammes/tableaux ou d’une conservation exacte de la formulation.
- Conserver le résumé de texte « squelettique » pour l’ancrage + joindre des cartes visuelles compressées pour la profondeur.
- Cela équilibre la précision de la récupération (texte) et le rappel/la fidélité (vision).
Section 3 — Création de cartes de contexte visuel avec DeepSeek‑OCR
Objectif : Transformer des étendues de texte de 5 à 20 Ko en images de 512 à 1 024 px optimisées pour la lecture OCR/VLM.
Suggestions de modèles
- Barre de titre : ID de session, plage horaire, étiquette de sujet.
- Disposition à deux colonnes : colonne de gauche pour les tours/journaux clés ; colonne de droite pour les points saillants (erreurs, décisions, commandes, mesures).
- Blocs à espacement fixe pour les lignes de code/journal ; résumés à puces pour le contexte.
- Thème convivial pour le contraste ; éviter les petites polices (moins de 11–12 pt à l’échelle 1x).
Conseils de rendu
- Utiliser HTML/CSS pour produire des cartes propres et cohérentes (p. ex., captures d’écran Puppeteer/Playwright).
- Inclure des ancres stables (numéros de ligne, ID) pour référencer des éléments spécifiques dans les invites.
- Limiter à environ 200–400 mots par carte ; créer une pile de cartes par session.
Passage DeepSeek‑OCR
- Exécuter DeepSeek‑OCR pour assurer la fidélité aller-retour : carte → texte OCR. Cela vérifie que votre mise en page et vos polices sont décodées avec précision.
- Si le texte OCR diverge, ajuster les polices, l’espacement ou diviser le code dense en plusieurs cartes.
Pourquoi cela fonctionne
La communauté et les articles tiers soulignent des gains d’efficacité significatifs lors de la compression du contexte textuel en jetons visuels tout en conservant la lisibilité.
Section 4 — Couches de synthèse : Conserver le squelette, stocker le muscle
Implémenter des résumés en couches afin de pouvoir augmenter la résolution uniquement en cas de besoin.
- L0 : Balises de ligne/tour atomiques — rôle, horodatage, type (erreur, note, code), intégration.
- L1 : Micro-résumé (1–2 phrases) pour toutes les 20–40 tours ou 2–5 minutes de journaux.
- L2 : Résumé de session (5–8 puces) avec les décisions, les bloqueurs, les résultats et les liens vers les cartes visuelles.
- L3 : Fil de discussion — cumuls hebdomadaires ou au niveau du projet.
Heuristiques pratiques
- Toujours inclure des ancres textuelles : codes d’erreur, ID SQL, ID de trace, SHA de commit.
- Utiliser des résumés extractifs avant des résumés abstractifs ; puis affiner avec abstractif pour la lisibilité.
- Ajouter une puce « ce qui a changé depuis la dernière session » pour accélérer l’invite de rattrapage.
Section 5 — Indexation et récupération pour RAG hybride
Schéma de métadonnées
- doc_id, session_id, time_range, rôles, étiquettes de sujet
- score d’importance, gravité de l’erreur, composant/service
- liens : {Liens vers les résumés, les cartes visuelles, les artefacts connexes}.
- Combiner la compression basée sur l’OCR avec des résumés en couches et RAG pour la précision et la profondeur.
- Optimiser les mises en page, les polices et l’indexation pour maintenir une fidélité élevée et une faible latence.
- Traiter les cartes compressées comme des preuves de première classe et les citer dans les invites.
Prochaines étapes
- Prototyper le pipeline minimal sur un projet de conversation ou un ensemble de données de journal.
- Tester A/B la compression texte uniquement par rapport à la compression hybride pour 10 requêtes typiques.
- Ajuster la conception des cartes, le mélange de récupérateur et les budgets en fonction des mesures de fidélité.
- Mettre à l’échelle les flux de travail de l’équipe avec la mise en cache, les ACL et la surveillance.
FAQ
Q1 : Qu’est-ce que DeepSeek‑OCR et pourquoi l’utiliser pour compresser les historiques de conversation pour les LLM ?
DeepSeek‑OCR permet la Compression Optique Contextuelle : encoder de grandes étendues de texte sous forme de jetons visuels que les VLM peuvent traiter efficacement. Cela peut réduire les budgets de jetons et mieux préserver la structure que la synthèse en texte seul tout en maintenant une fidélité élevée pour les contextes longs.
Q2 : Comment la compression de jetons visuels se compare-t-elle à la synthèse de texte ?
La compression de jetons visuels permet souvent d’obtenir une compression effective plus élevée tout en conservant la mise en page et la formulation exacte, ce qui est utile pour les citations, le code et les chaînes d’erreur. La synthèse est plus rapide et plus simple, mais peut omettre des détails rares ou introduire des erreurs d’abstraction.
Q3 : Puis-je mélanger DeepSeek‑OCR avec RAG pour les journaux et les conversations ?
Oui. Utiliser des résumés de texte pour un rappel rapide et joindre des cartes visuelles validées par OCR pour la profondeur. Un récupérateur en deux étapes peut d’abord extraire les résumés, puis les cartes les plus pertinentes, ce qui équilibre la précision et la couverture du contexte.
Q4 : Quelles mises en page fonctionnent le mieux pour les cartes de contexte compressées par OCR ?
Utiliser HTML/CSS propre avec une barre de titre, un contenu à deux colonnes, des blocs à espacement fixe pour le code et des puces claires pour les points saillants. Conserver 200–400 mots par carte, des polices de 11–12 pt ou plus, et valider la lisibilité avec un aller-retour OCR.
Q5 : Comment puis-je mesurer si la compression perd des informations importantes ?
Suivre Fidélité@K par rapport à un ensemble d’or de faits, la couverture des preuves via des citations de numéro de ligne et les mesures de latence/coût. Cibler ≥95 % de rétention des faits et s’assurer que la plupart des réponses citent une ligne de carte ou un ID d’ancre.