Back to flin
flin

Analytique de recherche et mise en cache des résultats

Comment FLIN suit les requêtes de recherche, mesure la qualité des résultats et met en cache les résultats fréquemment consultés -- transformant la recherche d'une opération sans état en un système apprenant et optimisant.

Juste A. Gnimavo (Thales) & Claude | March 26, 2026 4 min flin
EN/ FR/ ES
flinanalyticscachingsearchperformance

Un système de recherche sans analytique est un système de recherche que vous ne pouvez pas améliorer. Vous ne savez pas ce que les utilisateurs recherchent, s'ils trouvent ce dont ils ont besoin, ou quelles requêtes retournent des résultats vides. Vous ne pouvez pas identifier les lacunes dans votre contenu, ajuster vos poids de classement ou mesurer l'impact des changements.

Le système de recherche de FLIN inclut une analytique intégrée qui suit chaque requête, chaque ensemble de résultats et chaque interaction utilisateur avec les résultats. Combiné avec une couche de mise en cache intelligente qui élimine les calculs redondants, le système de recherche devient plus rapide et plus intelligent au fil du temps.

Analytique de recherche

Chaque opération de recherche dans FLIN -- que ce soit search, ask ou hybrid_search -- peut optionnellement enregistrer des données analytiques en ajoutant analytics: true dans les options.

Suivi des clics

L'analytique devient précieuse quand vous savez quels résultats les utilisateurs cliquent réellement. Le frontend envoie un événement de clic quand un utilisateur clique sur un résultat de recherche, incluant la position dans la liste des résultats.

Requêtes sans résultat : trouver les lacunes de contenu

La métrique analytique la plus exploitable est celle des requêtes sans résultat. Quand les utilisateurs cherchent quelque chose et n'obtiennent aucun résultat, cela signifie soit que le contenu existe mais n'est pas indexé correctement, soit qu'il n'existe pas et devrait être créé.

Mise en cache des résultats

Les opérations de recherche impliquent la génération d'embeddings, des recherches dans les index et potentiellement des appels IA. La mise en cache élimine les calculs redondants pour les requêtes répétées.

Cache au niveau de la requête

FLIN met en cache les résultats de recherche indexés par la chaîne de requête et les paramètres de recherche. Le cache utilise l'éviction LRU et un TTL configurable (par défaut : 5 minutes pour les résultats de recherche, 1 heure pour les embeddings).

Cache d'embeddings

L'embedding de la requête est mis en cache séparément des résultats de recherche, ce qui est particulièrement précieux pour les interfaces de recherche en temps réel.

Cache d'intentions

Pour les requêtes ask, la traduction IA (le plan de requête) est mise en cache. Les appels répétés passent de 500 ms à 5 ms.

Impact de performance de la mise en cache

OpérationSans cacheAvec cacheAmélioration
Recherche sémantique15 ms3 ms5x plus rapide
Recherche hybride20 ms5 ms4x plus rapide
Requête ask (première)500 ms500 msPas de changement
Requête ask (répétée)500 ms5 ms100x plus rapide

La pile de recherche complète

Le système de recherche de FLIN, construit au cours des dix derniers articles, comprend :

  1. Type semantic text -- génération automatique d'embeddings lors de la sauvegarde.
  2. Index vectoriel HNSW -- recherche rapide de plus proches voisins approximatifs.
  3. Index inversé BM25 -- correspondance précise de mots-clés.
  4. Recherche hybride -- classement fusionné avec RRF.
  5. Reclassement par encodeur croisé -- notation de précision pour le RAG.
  6. Analyse de documents -- extraction PDF, DOCX, CSV, JSON, YAML.
  7. Découpage conscient du code -- division intelligente de documents.
  8. FastEmbed -- génération locale et privée d'embeddings.
  9. Passerelle IA -- accès LLM multi-fournisseur.
  10. Analytique et mise en cache -- apprentissage et optimisation.

Tout cela est intégré au runtime FLIN. Pas de services externes. Pas d'infrastructure à gérer. Un développeur écrit search "query" in Entity by field et toute la pile s'active.

Ceci conclut l'arc 11 -- l'IA et le moteur d'intentions de FLIN. Le prochain arc continue le voyage dans la bibliothèque standard et les outils de l'écosystème de FLIN.


Ceci est la partie 125 de la série « Comment nous avons construit FLIN », documentant comment un CEO à Abidjan et un CTO IA ont conçu et construit un langage de programmation à partir de zéro.

Navigation de la série : - [124] Conception d'un langage IA-first - [125] Analytique de recherche et mise en cache des résultats (vous êtes ici) - Prochain arc : bibliothèque standard et écosystème FLIN

Share this article:

Responses

Write a response
0/2000
Loading responses...

Related Articles

Thales & Claude deblo

Le segfault qui n'était pas le nôtre : livrer le tracking du jour de lancement de Déblo la nuit du lancement — analytics conditionnées par l'environnement, attribution native des stores, trois bugs que le compilateur ne pouvait pas voir, et un build à court de mémoire que nous avons diagnostiqué au lieu de le rétablir

Le 1er juillet 2026 — jour de lancement — le risque n'a jamais été le texte. C'était les campagnes payantes qui partaient à l'aveugle. Voici le build-log de la livraison des analytics et de l'attribution d'installation de Déblo sous forme de code, la nuit du lancement : des tags GA4, Meta et LinkedIn conditionnés par l'environnement, qui se déploient sans risque avant même que les comptes publicitaires existent ; une attribution routée par les canaux natifs des stores plutôt que par le pixel web ; un audit adverse qui a attrapé trois bugs que le typecheck et le build passaient tous les deux ; et un déploiement Easypanel qui a segfaulté au premier build — que nous avons prouvé ne pas venir de notre code avant d'en changer une seule ligne.

18 min Jul 1, 2026
deblolaunch-dayclaude-opus-4.8claude-code +26
Thales & Claude thales

Treize agents, quarante-trois minutes : la première session Workflow de Claude Fable 5, et ce qu'un script d'orchestration déterministe change aux builds multi-agents

Un prompt, treize agents, quarante-trois minutes : la première session de production avec Claude Fable 5 et l'outil Workflow de Claude Code a livré un site web de production complet de sept pages plus un endpoint backend de capture de leads, en un seul commit. Le carnet de bord : le script d'orchestration déterministe, le patron d'injection de contrat entre les phases, l'économie par agent du fan-out parallèle, et le suspense de la limite de session que le journal de reprise a transformé en non-événement.

23 min Jun 12, 2026
claude-fable-5claude-codeworkflow-toolmulti-agent +10
Thales & Claude casp

La porte a détecté sa propre dérive : une journée dans CASP avec Claude Fable 5

Nous avons confié au modèle Claude le plus autonome à ce jour les clés de CASP — le CLI open source qui garde les agents de code IA honnêtes face à git — avec l'autorité de rejeter notre propre roadmap. Il a rejeté cinq choses, trouvé deux vrais bugs dans le validateur en le dogfoodant, les a corrigés sous une porte à deux auditeurs, et a laissé casp check entièrement vert sur son propre dépôt pour la première fois. CASP 0.3.0 en est le résultat.

16 min Jun 10, 2026
caspzerosuiteworkflowai-cto +9