Veille automatisée · Anti-hallucination

Une veille automatisée où un lien inventé est structurellement impossible

Le reproche le plus fréquent fait à l'IA en veille est justifié : elle cite des articles qui n'existent pas. J'ai construit une veille où ce risque est éliminé par l'architecture, pas par la confiance : le modèle ne manipule jamais d'URL. Il ne renvoie que des numéros de ligne, que le serveur remappe sur les vrais articles collectés. Un lien inventé n'est pas improbable — il est impossible. Le reste de cette page raconte comment un plafond de jetons a dicté toute la conception, et ce que j'ai accepté de perdre.

Next.jsTypeScriptGroq (Llama 3.1 + 3.3)RSS (17 flux)Cache mémoire

Le problème

La veille manuelle ne tient pas dans le temps : les deux premières semaines on lit tout, au bout d'un mois plus rien. Mais le piège n'est pas là. Un filtrage par mots-clés bruts est tout simplement inutilisable, et c'est mesurable : sur un socle réel de 440 articles, « intelligence artificielle PME » ne trouve rien du tout — les trois mots ne cooccurrent jamais littéralement ; « RGPD » ne trouve rien non plus — les articles écrivent « données personnelles » ; et « IA » trouve TOUT, parce que ces deux lettres sont dans « média », « spécial » et « diagnostic ». Quant aux outils d'IA généralistes, ils produisent des synthèses crédibles appuyées sur des sources parfois fictives : pire que pas de veille, parce qu'on les cite en réunion.

Ce que j'ai construit

  • Un socle fermé de 17 flux RSS choisis et vérifiés un par un — presse informatique, IA, économie, marketing, plus deux sources primaires de droit du numérique dont la CNIL — au lieu d'un agrégateur. Motif : l'agrégateur remontait des fermes de contenu et ne fournit QUE le titre. Ici chaque article arrive avec un extrait, donc le tri et l'analyse portent sur du texte réel, pas sur dix mots.
  • Un pipeline en trois étapes, dont une seule coûte des jetons là où ils sont utiles. Étape 1, expansion : un petit modèle traduit le sujet en 4 à 8 expressions de recherche — synonymes, sigle ET forme développée, institutions de référence. C'est ce qui rattrape « RGPD » → « données personnelles », « CNIL ».
  • Étape 2, classement déterministe, gratuit et instantané : correspondance sur frontières de mots — ce qui règle « IA » contre « média » — avec le titre pondéré trois fois plus que l'extrait. Un sujet cité dans le titre EST le sujet de l'article ; cité dans le corps, il n'est souvent qu'une mention.
  • Étape 3, sélection et analyse : un modèle plus fort relit les meilleurs candidats avec leurs extraits, tranche, et écrit ce que chaque info change pour un dirigeant de PME. C'est l'extrait qui rend cette étape possible : sur un titre seul, elle ne pourrait que paraphraser.
  • La contrainte qui a dicté toute l'architecture : la première conception faisait lire les 300 titres du socle par un petit modèle à chaque recherche. Mesuré, ça consommait 8 400 jetons par requête pour 6 000 jetons par minute autorisés — donc une erreur HTTP 413 systématique. La leçon, transposable partout : mettre l'étape sémantique là où elle est bon marché, c'est-à-dire sur la requête de cinq mots, pas sur le corpus de trois cents articles.
  • Un cache mémoire de 30 minutes sur le socle : 17 appels réseau par demi-heure au lieu de 17 par recherche, avec déduplication des remplissages simultanés pour qu'une rafale de visiteurs ne déclenche pas quinze collectes en parallèle.
  • Une déduplication à deux niveaux : par URL, puis par signature de sujet — les mots significatifs du titre, normalisés et triés — pour que deux reprises de la même dépêche par deux médias n'occupent pas deux places dans la sélection.

Les garde-fous (c'est là que tout se joue)

  • Aucune URL produite par le modèle n'atteint l'affichage : titres, sources, âges et liens sont reconstruits depuis la collecte. Un indice qui ne correspond à rien, ou répété, est écarté.
  • Une liste vide est une réponse valide et attendue. Le modèle a pour consigne d'écarter les hors-sujets de la présélection automatique, les contenus promotionnels et les listes d'outils, et de ne rien retenir si rien n'est pertinent. Deux articles justes valent mieux que cinq dont trois à côté — c'est ce qui distingue une veille d'un flux de bruit.
  • Interdiction explicite de paraphraser le titre : il est déjà affiché au-dessus. Le commentaire doit dire ce que l'information change concrètement, sinon il n'a pas lieu d'être.
  • Température basse (0,2) : sur un tri factuel, la créativité du modèle est un défaut, pas une qualité.
  • Troncature propre à la fin de phrase ou au dernier mot entier. Un modèle qui déborde laisserait un « …vigilance accrue en matière » à l'écran : bien plus amateur qu'une phrase courte.
  • Résilience du socle : si une collecte revient vide — coupure réseau, flux tous en erreur — alors qu'un socle précédent existe, on sert l'ancien, périmé mais réel, plutôt qu'un vide que le visiteur lirait comme « aucune actualité sur ce sujet ».
  • Filtrage déterministe du sujet AVANT tout appel réseau ou modèle : une requête manifestement hors-cadre est rejetée sans coûter un jeton. Une vitrine professionnelle ne doit pas pouvoir afficher n'importe quoi, ni servir de proxy à qui que ce soit.
  • Journalisation du sujet recherché pour mesurer l'usage, sans adresse IP ni aucune donnée permettant d'identifier qui l'a saisi.

Ce que j'ai accepté de perdre

  • La couverture s'arrête aux thèmes du socle : numérique, IA, cybersécurité, droit du numérique, économie des entreprises. Un sujet sectoriel pointu n'y sera pas. Plutôt que de faire semblant, l'interface propose des sujets réellement couverts et l'état vide le dit franchement. Chez un client, le socle est constitué de SES sources : la limite disparaît avec le catalogue.
  • Le cache vit par instance serveur : chaque instance qui démarre à froid paie une collecte complète. Acceptable pour une démonstration publique, à remplacer par un cache partagé dès que le trafic le justifie.
  • Plusieurs flux pressentis ont été écartés parce qu'ils ne répondent pas — erreurs 404, 403, ou absence de RSS. Chaque source du socle a été testée une par une, et celles qui ont échoué sont documentées dans le code pour qu'on ne les réessaie pas à l'aveugle.

Ce que ça donne chez vous

  • Veille concurrentielle : surveiller en continu un panel de concurrents et ne recevoir que les mouvements qui comptent.
  • Veille réglementaire : suivre les textes d'un secteur et être alerté sur ce qui change vraiment, avec la source d'origine.
  • Newsletter automatisée : la même mécanique branchée sur vos sources internes et externes, qui produit un brouillon prêt à relire et à diffuser.

Un besoin de cette nature ?

Décrivez votre situation à mon assistant, ou écrivez-moi à contact@visual-concept.net. Premier retour sous 24 h, sans engagement.