ForHosting KIT · Texte et IA

Calculer la distance d’édition de Levenshtein

La distance d’édition de Levenshtein indique combien de modifications d’un caractère transforment une chaîne en une autre.

● BetaGratuit · dans votre navigateur
Utilisez-le depuis WebAPIE-mailTelegramApp bientôt

Saisissez deux chaînes pour obtenir le nombre minimal d’insertions, de suppressions et de substitutions. Cette mesure convient lorsque l’égalité exacte est trop stricte, mais qu’il faut une différence claire et reproductible. La comparaison est déterministe, sensible à la casse et effectuée sur les points de code Unicode, sans réseau ni score probabiliste.

Comprendre la distance obtenue

La distance de Levenshtein est un entier positif ou nul. Zéro désigne deux chaînes identiques ; un signifie qu’une insertion, suppression ou substitution suffit. Une valeur plus élevée exige davantage d’éditions. L’algorithme examine toutes les suites valides et retient le total minimal, au lieu de modifier le texte de gauche à droite de façon gloutonne. Cette propriété compte avec des caractères répétés ou des fragments décalés. Le résultat distingue majuscules et minuscules et représente un nombre absolu, non un pourcentage. Une distance de trois peut être importante pour un code de quatre caractères et faible pour un paragraphe. Interprétez-la avec la longueur des chaînes et la tolérance propre à votre application.

Méthode de calcul

Le calculateur emploie la programmation dynamique pour déterminer le moyen le moins coûteux de transformer chaque préfixe de la première chaîne en chaque préfixe de la seconde. Chaque position envisage une insertion, une suppression ou une substitution ; une correspondance n’ajoute aucun coût. Seules la ligne précédente et la ligne courante sont conservées, ce qui garantit le résultat exact avec une mémoire proportionnelle à l’entrée la plus courte. Les caractères sont lus comme points de code Unicode : un caractère supplémentaire codé par une paire de substitution JavaScript compte donc pour un élément. Aucune normalisation Unicode ni harmonisation de casse n’est appliquée. Normalisez vos textes avant l’envoi si des représentations visuellement identiques doivent être équivalentes.

Exploiter le résultat

Envoyez les valeurs dans <code>first</code> et <code>second</code>. Ces champs doivent contenir des chaînes, mais une chaîne vide est valide ; sa distance correspond au nombre de points de code Unicode de l’autre chaîne. La réponse fournit l’entier <code>distance</code>. Vous pouvez comparer un nom saisi à un nom connu ou vérifier qu’un identifiant corrigé se trouve à une édition de l’original. N’adoptez pas un seuil universel : codes courts, noms et phrases présentent des erreurs différentes. Décidez aussi si espaces, ponctuation, accents et casse doivent compter. Le navigateur convient aux vérifications interactives ; l’API exécute le même calcul déterministe pour $0.002 par requête. Toute valeur non textuelle est rejetée sans conversion silencieuse.

Repérer les fautes de frappe probables

Mesurez les éditions séparant un mot ou un nom saisi de la valeur attendue avant d’appliquer un seuil métier.

Comparer des identifiants

Signalez les identifiants qui ne diffèrent que d’une ou deux insertions, suppressions ou substitutions.

Évaluer des corrections

Quantifiez le changement caractère par caractère entre le texte initial et sa version corrigée avec un entier reproductible.

Quelles opérations comptent dans la distance ?

Chaque insertion, suppression ou substitution d’un caractère coûte un. Le plus petit total est renvoyé.

La comparaison est-elle sensible à la casse ?

Oui. Convertissez les deux textes dans la même casse avant l’envoi si cette différence doit être ignorée.

Une chaîne peut-elle être vide ?

Oui. Sa distance est alors le nombre de points de code Unicode contenus dans l’autre chaîne.

Le calculateur normalise-t-il Unicode ?

Non. Il compare les points de code reçus ; normalisez les formes combinées si elles doivent être équivalentes.

Renvoie-t-il un pourcentage de similarité ?

Non. Il renvoie le nombre absolu minimal d’éditions, que vous pouvez normaliser avec un dénominateur adapté.

Quel est le prix d’une requête API ?

Chaque requête API coûte $0.002. Le calcul peut aussi être exécuté dans le navigateur pour un usage interactif.

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.

POSThttps://api.kit.forhosting.com/text/text-similarity-levenshtein

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é.

curl -X POST https://api.kit.forhosting.com/text/text-similarity-levenshtein \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"first":"kitten","second":"sitting"}'
{
  "first": "kitten",
  "second": "sitting"
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "text.text_similarity_levenshtein",
  "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.

par requête$0.002

Le prix est publié, sans tokens ni crédits. Une tâche qui échoue n’est pas facturée.

max_tokens20000
HTTPCodeSignification
401unauthorizedClé API absente ou invalide : vérifiez l’en-tête Authorization.
402insufficient_balanceSolde insuffisant : rechargez votre compte pour lancer cette tâche.
404unknown_typeType de tâche inconnu : vérifiez le champ type de votre requête.
429rate_limitedTrop de requêtes : ralentissez la cadence, puis réessayez.

Consulter la documentation complète du KIT →