Doublons similaires
Cet outil repère les doublons qui ne sont pas identiques au caractère près : « Sté Garnier » et « Société Garnier », une variante d’écriture, une faute de frappe. Il compare le sens des valeurs plutôt que leur texte exact. Utile pour assainir un fichier clients truffé de variantes.
Exécuter en ligne
Exécutez cette tâche sur nos serveurs, avec votre compte. Les outils gratuits tournent dans votre navigateur ; celui-ci est facturé sur votre solde KIT au prix affiché ci-dessus.
Au-delà de l’identique
Un dédoublonnage classique ne voit que les valeurs rigoureusement égales. Or, dans la vraie vie, la même entité s’écrit de dix façons : abréviations, fautes de frappe, ponctuation, majuscules. « Menuiserie Rousseau & Fils » et « Menuiserie Rousseau et Fils » désignent la même entreprise sans être identiques. Cet outil rapproche ces variantes en comparant leur proximité de sens, là où une comparaison stricte les traiterait comme distinctes.
Comment fonctionne le rapprochement
Chaque valeur est transformée en une représentation numérique qui capte son sens, puis l’outil mesure la proximité entre ces représentations pour regrouper celles qui se ressemblent. Ce n’est pas une règle exacte mais une estimation de similarité : très efficace sur les variantes réelles, elle demande un seuil de sensibilité adapté à votre fichier, car trop large elle rapproche à tort, trop stricte elle laisse passer des doublons.
Relisez les regroupements
Parce qu’il s’agit d’une estimation, le résultat doit être relu avant d’agir. Deux raisons sociales proches peuvent désigner deux entreprises différentes ; à l’inverse, une variante inattendue peut échapper au regroupement. Considérez les rapprochements proposés comme une aide à la décision, à valider par un œil humain, surtout avant de fusionner des lignes clients ou de supprimer définitivement des enregistrements.
Exécution et prix
L’analyse s’exécute sur nos serveurs, depuis cette page ou par appel programmable, car elle repose sur un calcul sémantique. Elle coûte $0.002 par requête, plus $0.0015 par tranche de mille lignes traitées. Le tarif est affiché en dollars, sans abonnement ni compte : vous ne payez que les analyses réellement lancées, ce qui reste modeste même sur un fichier volumineux.
Cas d’usage
Fusionner des raisons sociales
Studio Lumen SAS a un fichier clients où la même société apparaît sous plusieurs graphies. L’outil rapproche « Sté Garnier » et « Société Garnier » pour proposer un regroupement.
Assainir un catalogue fournisseurs
Nadia Benali repère les fournisseurs saisis avec des variantes d’orthographe, que le dédoublonnage strict laissait en double.
Consolider une base d’adresses
Thomas Rousseau rapproche des libellés d’adresses écrits différemment mais désignant le même lieu, avant de fiabiliser sa base.
Questions fréquentes
En quoi est-ce différent du dédoublonnage classique ?
Le dédoublonnage classique ne repère que les valeurs identiques. Ici, l’outil rapproche aussi des variantes de sens, comme une abréviation ou une faute de frappe.
Le résultat est-il sûr ?
C’est une estimation de similarité, pas une certitude. Relisez les regroupements avant de fusionner ou de supprimer, surtout sur des données clients.
Combien coûte l’analyse ?
$0.002 par requête, plus $0.0015 par tranche de mille lignes traitées. Le tarif est en dollars, sans abonnement.
Où mes données sont-elles traitées ?
Sur nos serveurs, car l’analyse sémantique ne s’exécute pas dans le navigateur. Le fichier est traité pour l’analyse puis écarté, sans être conservé au-delà.
Puis-je régler la sensibilité ?
Oui, un seuil ajuste la tolérance : plus strict, il rapproche moins ; plus large, il rapproche davantage, au risque de faux positifs.
Faut-il créer un compte ?
Non, le paiement est direct, sans inscription.
Pour les développeurs — accès API
Tout sur cette page est disponible par programmation. Cette section s'adresse aux équipes qui veulent l'intégrer à leurs systèmes ; les autres peuvent simplement utiliser l'outil ci-dessus.
Endpoint
Authentification par jeton Bearer : un seul POST met la tâche en file d’attente, et le résultat vous parvient par webhook ou lien signé.
Appeler depuis votre stack
curl -X POST https://api.kit.forhosting.com/data/dedupe-semantic \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"text":"…"}'const res = await fetch("https://api.kit.forhosting.com/data/dedupe-semantic", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"text": "…"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/data/dedupe-semantic",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"text": "…"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/data/dedupe-semantic", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"text":"…"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"text":"…"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/data/dedupe-semantic", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Exemple de requête
{
"text": "…"
}Exemple de réponse
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "data.dedupe_semantic",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}L’API est asynchrone : chaque appel renvoie un task_id immédiatement, puis vous interrogez l’état à raison d’une requête par seconde.
Tarifs
Le prix est publié, sans tokens ni crédits. Une tâche qui échoue n’est pas facturée.
Limites
max_mb | 25 |
Erreurs
| HTTP | Code | Signification |
|---|---|---|
401 | unauthorized | Clé API absente ou invalide : vérifiez l’en-tête Authorization. |
402 | insufficient_balance | Solde insuffisant : rechargez votre compte pour lancer cette tâche. |
404 | unknown_type | Type de tâche inconnu : vérifiez le champ type de votre requête. |
429 | rate_limited | Trop de requêtes : ralentissez la cadence, puis réessayez. |