La plupart des systèmes de chat IA basés sur des documents ont le même problème silencieux : ils trouvent du texte, mais ne le comprennent pas vraiment. Nous avons pris le temps de repenser la manière dont Attlas traite et récupère l'information, et la différence est significative.
Voici ce que nous avons changé, et pourquoi c'est important.
L'ancienne méthode : découper les documents comme une machine
Lorsqu'un utilisateur télécharge un document, une annonce immobilière, un contrat juridique, une formation, l'approche classique est simple : découper le texte en morceaux de taille fixe d'environ 1 000 caractères, les stocker, et les parcourir lorsqu'une question est posée.
Ça fonctionne. Jusqu'à ce que ça ne fonctionne plus.
Le problème, c'est qu'une machine se moque du sens lorsqu'elle coupe. Elle coupe au milieu des phrases. Elle sépare une question de sa réponse. Elle divise un tableau en deux. Et lorsque l'IA essaie de répondre en se basant sur ces fragments cassés, le résultat semble faux, incomplet, parfois erroné.
Ce que nous avons reconstruit
1. Découper selon le sens, pas selon le nombre de caractères
Au lieu de compter les caractères, nous découpons désormais selon la structure naturelle du document.

Si un document a des sections et des sous-sections, nous les respectons. S'il a des paragraphes, nous les regroupons intelligemment. Les tableaux ne sont jamais divisés. Et nous ne recourons au découpage mécanique qu'en dernier recours, lorsqu'il n'y a vraiment aucune structure à suivre.
Un document court sans titres ? Un seul bloc. Un mémoire juridique de 20 000 caractères avec dix sections ? Dix blocs significatifs, chacun complet en soi.
2. Préparer les réponses aux questions que personne n'a encore posées
Voici l'idée centrale : une question et sa réponse ne se ressemblent pas.
Un utilisateur demande "combien coûte l'appartement du troisième étage ?" mais le document dit "T3, 85m², 320 000 €, vue dégagée." Pour un humain, ces deux énoncés signifient la même chose. Pour un algorithme de recherche, ils semblent très différents.
Ainsi, pour chaque bloc de contenu que nous stockons, nous demandons désormais à Gemini de générer 3 à 5 questions auxquelles ce bloc répond. Ces questions sont stockées et indexées aux côtés du texte original.
Lorsqu'un utilisateur pose une question, le système cherche désormais simultanément à deux endroits : le contenu original et ces questions pré-générées. Faire correspondre une question à une autre question est bien plus naturel que de faire correspondre une question à un texte brut.

Pour le menu d'un restaurant : le bloc "Spaghetti carbonara, lardons, œuf, parmesan, 14 €" génère des questions comme "Quels plats de pâtes proposez-vous ?", "Quels plats contiennent des lardons ?", "Quel est le prix de la carbonara ?", toutes trouvables instantanément.
Pour la base de données de dossiers d'un cabinet d'avocats : une clause enfouie dans un contrat de 40 pages devient accessible par la formulation exacte qu'un avocat utiliserait naturellement pour la chercher.
3. Donner à l'IA le fil de la conversation
Les documents n'existent pas sous forme de phrases isolées. Les pronoms, les références et le contexte circulent d'un paragraphe à l'autre.
Prenons cet exemple : un document dit "Marie Curie a découvert le radium" dans un paragraphe, et deux paragraphes plus loin dit "Elle a reçu le prix Nobel pour cette découverte." Si le système ne récupère que le deuxième paragraphe, il n'a aucune idée de qui est "elle" ou de ce à quoi "cette découverte" fait référence.
Désormais, chaque bloc porte automatiquement les deux dernières phrases du bloc précédent comme contexte silencieux. L'IA reçoit :
[Contexte : Marie Curie a découvert le radium en 1898.] Elle a reçu le prix Nobel pour cette découverte en 1903.
L'utilisateur obtient une réponse cohérente et exacte. Pas une approximation.
4. Garder les résumés à l'écart
Pour chaque document, nous générons un résumé dense en utilisant la fenêtre de contexte d'un million de tokens de Gemini, ce qui signifie que même un document législatif de 500 pages est résumé entièrement, sans troncature.
Ce résumé est stocké séparément et utilisé uniquement pour les questions larges et générales sur le document. Il ne contamine plus les résultats de recherche précis, ce qui était un problème subtil mais bien réel auparavant.
Ce que cela donne en pratique
L'architecture derrière tout ça
Tout ce pipeline d'enrichissement fonctionne comme un seul point de terminaison API. Un document entre sous forme de texte markdown. Ce qui arrive dans la base de données est un ensemble de blocs structurés, enrichis et prêts à être recherchés, avec des embeddings, des questions pré-générées, des préfixes contextuels et un résumé au niveau du document.

La fonction de recherche interroge à la fois le contenu et la question en parallèle, fusionne les scores, et reconstruit chaque bloc avec son contexte avant de l'envoyer à l'IA.
Pourquoi c'est important pour les utilisateurs d'Attlas
Attlas est utilisé par des agences immobilières, des cabinets d'avocats, des restaurants, des professeurs, des coachs et des ministères, etc… Tous téléchargent des types de documents très différents dans des langues très différentes.
Ils ont tous un point commun : ils ont besoin que leur chat IA sache réellement ce qui se trouve dans leurs documents. Pas approximativement. Pas la plupart du temps. De manière fiable.
C'est l'objet de cette reconstruction.

Fondateur d'Attlas. Il combine la réflexion produit, les outils low-code et le design pour permettre à chacun de créer des conversations IA à partir de ses propres données.


