IA et FileMaker : la correspondance d’entités – Partie 1

Utiliser l’intelligence artificielle pour relever le défi de la correspondance approximative

ÉVÉNEMENT À VENIR : “Using AI to Handle Duplicates in FileMaker”
(Audio en anglais avec sous-titres simultanés en français)

Rejoignez Direct Impact Solutions pour un webinaire en direct exclusif et découvrez comment l’IA peut simplifier la recherche dans vos données, détecter et nettoyer les doublons, et les prévenir avant qu’ils ne surviennent.

📅 Date : 30 septembre 2025
⏰ Heure : 11h00 Pacifique / 14h00 Heure de l’Est / 20h00 Europe Centrale
🔗 Réservez votre place ici: Inscription au webinaire

Animateur : David Weiner, développeur sénior et chargé de projet chez Direct Impact Solutions
Langues : Audio en anglais avec sous-titres simultanés en français

Ne manquez pas cette occasion unique d’interagir avec nos experts et d’explorer tout le potentiel de l’IA dans FileMaker pour votre organisation !

Depuis la sortie de Claris FileMaker 21, les utilisateurs disposent de deux types de recherche. Il y a la recherche « correspondance exacte » standard, et désormais la recherche sémantique, alimentée par les modèles de langage et l’intelligence artificielle. La recherche standard dans FileMaker est celle que la plupart des gens connaissent : saisir un terme et FileMaker renvoie les enregistrements qui correspondent exactement à la requête. La recherche sémantique fonctionne différemment : elle renvoie les enregistrements qui correspondent au sens de la requête. Le cas d’utilisation le plus courant est la recherche dans de grands champs texte pour en dégager le sens. Toutefois, la recherche sémantique peut aussi être utilisée pour résoudre un type très spécifique de défi dans les bases de données : la correspondance d’entités ou « recherche approximative ». Il existe des défis techniques et quelques compromis, mais les résultats sont convaincants. Dans cet article, j’explique brièvement comment fonctionnent les recherches et je montre comment les nouveaux outils de recherche sémantique peuvent aider à résoudre le problème de correspondance d’entités.

Recherche traditionnelle « correspondance exacte »

Une recherche FileMaker ordinaire recherche une correspondance exacte, généralement avec des données indexées. C’est le type de recherche le plus courant, il est très rapide et utile pour trouver des enregistrements avec des critères très précis :

  • Trouver tous les enregistrements où Prénom = « Hannah » et Nom = « Beuler »
  • Trouver tous les enregistrements où Date = « 4/5/2025 »
  • Trouver tous les enregistrements où Taille = « 3,45 cm » et Matériau = « Aluminium »

Il existe de nombreuses façons d’affiner ce type de recherche avec les outils standards (opérateurs logiques, plages numériques, caractères génériques, etc.), mais au cœur, ce type de recherche repose sur le fait que les données recherchées soient relativement propres et précises. Si le prénom n’est pas exactement « Hannah » et le nom n’est pas exactement « Beuler », ou si la date n’est pas exactement « 4/5/2025 », l’enregistrement ne sera pas trouvé.

Recherche sémantique

La recherche sémantique, quant à elle, ne repose pas sur des données parfaitement propres. Elle peut interpréter le sens de vos données et renvoyer les enregistrements les plus pertinents. Par exemple :

  • Trouver toutes les notes de vente qui font référence à « coût trop élevé pour les clients »
  • Trouver tous les produits du catalogue utiles par temps chaud
  • Trouver les livres documentaires sur l’histoire maritime du Japon et de la Chine

Contrairement à une recherche exacte, ces résultats peuvent varier dans leur contenu mais rester pertinents, car la recherche sémantique interprète le sens de la requête et le rapproche du contenu des enregistrements.

Qu’est-ce que la correspondance d’entités (et pourquoi est-ce difficile) ?

Alors que la recherche sémantique recherche des similitudes de sens, la correspondance d’entités, parfois appelée « correspondance approximative », consiste à déterminer si deux descriptions d’entités se réfèrent à la même entité réelle. Elle tente de répondre à des questions comme :

  • Ces nouvelles données entrantes sont-elles les mêmes que celles déjà présentes dans la base de données ?
  • Ces enregistrements se réfèrent-ils réellement à la même chose ?
  • Avons-nous des doublons dans notre base de données ?

C’est facile si les données sont très propres, mais beaucoup plus difficile dès que des « données désordonnées » apparaissent. Cela arrive, par exemple, lorsqu’on fusionne des bases de données issues de sources différentes, ou lorsque les données proviennent d’une source externe (soumissions d’utilisateurs, flux de données, crowdsourcing, web scraping, importations, etc.). Les données peuvent contenir des abréviations, des surnoms, des orthographes alternatives, des inversions de valeurs ou des fautes de frappe. Les erreurs humaines y contribuent aussi.

Prenons l’exemple suivant :

Enregistrement 1 — Hanna C Bueler, née le 03/12/1990

Enregistrement 2 — Hannah Beuler, née le 12/03/1990

Ici, le prénom et le nom sont orthographiés différemment, un enregistrement ne contient pas l’initiale du milieu et le mois et le jour ont été inversés dans la date de naissance. Pour un humain, il est assez facile de repérer l’erreur et de reconnaître qu’il s’agit d’un doublon. Pour un programme informatique, ce n’est pas si simple.

Le problème est donc de déterminer de manière plus précise, de façon programmatique, si ces deux enregistrements représentent la même personne. La recherche déterministe traditionnelle est mal adaptée à ce problème (sans beaucoup de script) en raison de sa nature même. Elle excelle à trouver une correspondance exacte, mais ici nous cherchons quelque chose qui s’en rapproche. En revanche, en utilisant la recherche sémantique et un modèle d’IA spécialement conçu pour la similarité sémantique, on peut trouver cette correspondance avec une forte probabilité que ces deux enregistrements concernent la même personne. Dans ce cas précis, mes tests avec la recherche sémantique de FileMaker et les embeddings textuels de Google Gemini ont permis de déterminer qu’il y avait 87 % de chances qu’il s’agisse de la même personne !

Cas d’utilisation de la correspondance d’entités

La correspondance d’entités est nécessaire dans de nombreux environnements de données, notamment la santé, la finance, les systèmes CRM et le commerce électronique, où la déduplication des données de personnes, d’organisations ou de produits est essentielle. Toute donnée utilisée pour identifier une entité qui peut varier légèrement (orthographes alternatives, fautes de frappe, abréviations, etc.) rend la déduplication plus difficile. Exemples courants :

Noms

  • Kristine vs. Christine
  • Fernández vs. Fernandes
  • Bob vs. Robert
  • William vs. Willy vs. Bill

Adresses

  • First Avenue vs. 1st Ave
  • Southeast Main Street vs. SE Main
  • Greenlake Road vs. Green Lake Rd

Dates de naissance

  • 1995 vs. 1959
  • 10/2/2003 vs. 2/10/2003
  • 1/21/1980 vs. 1/12/1980

Noms d’organisations

  • First National Bank Corp.
  • 1st National Bank
  • F.N.B. Corporation
  • First National

Descriptions de produits

  • Ruban adhésif noir, rouleau – 2 po
  • Rouleau de ruban – 2 pouces noir
  • Ruban adhésif 2 po noir
  • Rouleau 2” – noir

En résumé, la correspondance d’entités est nécessaire partout où des données désordonnées compliquent l’identification des doublons. Comment la recherche sémantique peut-elle nous aider ?

Comment la recherche sémantique peut aider

Grâce aux outils de recherche sémantique, les données désordonnées peuvent être préparées pour ce type de recherche, ce qui facilite l’identification de deux enregistrements représentant probablement la même entité. Cela nécessite un encodage unique des données en « vecteurs » à l’aide de l’IA, puis la recherche sémantique utilise ces vecteurs pour effectuer la recherche. Une fois les données préparées ainsi, on peut, par exemple, afficher une liste des enregistrements de personnes correspondants avant d’enregistrer une nouvelle personne, même si le nom est orthographié différemment, évitant ainsi les doublons. On peut utiliser la même approche pour les noms d’organisations, les adresses ou l’ajout d’un nouvel article en stock. La recherche sémantique peut servir à construire un module de déduplication qui s’exécute chaque soir, fusionnant automatiquement les doublons nouvellement créés si le pourcentage de correspondance est supérieur à un certain seuil. Ou on peut créer une alerte pour les utilisateurs lorsqu’ils sont sur le point d’ajouter un nouvel enregistrement qui existe peut-être déjà – « Il semble que cet enregistrement existe déjà. Êtes-vous sûr de vouloir l’ajouter ? ».

La correspondance d’entités est un processus crucial pour garder vos données propres et exactes. Jusqu’à présent, c’était un problème difficile à résoudre avec les outils natifs de FileMaker. Mais la recherche sémantique offre un nouvel ensemble d’outils qui rendent cette fonctionnalité beaucoup plus accessible.