Distanța de editare Levenshtein
Calculați distanța Levenshtein pe puncte de cod Unicode fără normalizarea textului.
def edit_distance(a, b):
if not isinstance(a, str) or not isinstance(b, str):
raise ValueError("text.required")
previous = list(range(len(b) + 1))
for i, left in enumerate(a, 1):
current = [i]
for j, right in enumerate(b, 1):
current.append(min(current[-1] + 1, previous[j] + 1,
previous[j - 1] + (left != right)))
previous = current
return previous[-1]Verifică înainte de aplicare
Compară comportamentul real cu rezultatul așteptat. Dacă o verificare eșuează, cercetează cauza înainte de alte modificări.
Modele
Configurează un endpoint compatibil OpenAI sau Anthropic cu URL-ul de bază și cheia API, dacă este necesară. Testează conexiunea. Serverul local trebuie să ruleze; instrumentele externe pot transmite date separat.
Proiect
Testați intrarea goală, înlocuirea unui emoji și formele compuse sau descompuse fără promisiunea echivalenței vizuale.
def edit_distance(a, b):
if not isinstance(a, str) or not isinstance(b, str):
raise ValueError("text.required")
previous = list(range(len(b) + 1))
for i, left in enumerate(a, 1):
current = [i]
for j, right in enumerate(b, 1):
current.append(min(current[-1] + 1, previous[j] + 1,
previous[j - 1] + (left != right)))
previous = current
return previous[-1]Definiți sensul unei potriviri de text înainte de a o programa
GlyphMetrum este un spațiu de programare Windows în care un model IA conectat vă ajută să examinați modificările procesării textului din proiect. Începeți prin a descrie decizia necesară aplicației: compararea intrării, sugerarea unei etichete apropiate sau respingerea unei valori necorespunzătoare. Cereți asistentului să examineze funcția relevantă și apelantul înainte de a propune modificări, astfel încât conversația să lege detaliile implementării de comportamentul vizibil.
Exemplul distance.py oferă un punct de pornire concret prin compararea editărilor la nivel de caracter. Este context de proiect demonstrativ, nu un motor de căutare sau o funcție de potrivire integrată în GlyphMetrum. Aplicația poate necesita decizii proprii despre majuscule, normalizare și diferența acceptabilă. Verificați separat aceste decizii de mecanismul de calcul al distanței.
Testați comportamentul rezultat cu exemple ale căror rezultate așteptate le puteți explica, inclusiv text gol și șiruri vizual similare, dar reprezentate diferit. Verificați cum tratează apelantul egalitățile sau absența unei potriviri acceptabile. Conectați un endpoint acceptat compatibil cu OpenAI sau Anthropic și adăugați acreditări dacă sunt necesare; un model fără restricții poate fi selectat numai dacă este oferit. Restricțiile modelului, instrumentele disponibile și limitele contextului depind în continuare de serviciul configurat. Spațiul de programare ajută la organizarea lucrului, iar dumneavoastră decideți dacă rezultatul se potrivește aplicației.
Decizii de comparare a textelor pentru o sarcină de programare
Exemplul definește o politică completă de potrivire?
Nu. Oferă un mecanism de comparare pentru discuție. Aplicația trebuie să decidă ce transformări sunt permise și ce rezultat constituie o potrivire, apoi să testeze deciziile prin apelant, fără a se baza doar pe distanță.
Ar trebui uniformizarea majusculelor adăugată automat?
Numai când corespunde comportamentului dorit. Unii identificatori disting majusculele de minuscule, în timp ce etichetele utilizatorilor pot să nu o facă. Oferiți asistentului exemple reprezentative și verificați unde are loc normalizarea, astfel încât să nu afecteze texte fără legătură.
Cum verific sugestiile ambigue?
Includeți cazuri cu mai mulți candidați la fel de apropiați și precizați reacția dorită a aplicației. Examinați logica selecției, pe lângă funcția de comparare: o distanță corectă nu alege o politică utilă pentru egalități.
Este GlyphMetrum un serviciu de căutare aproximativă gata de utilizare?
Nu este revendicat un asemenea serviciu. Este un spațiu de programare în care puteți discuta și verifica codul de procesare a textului din proiect. Indexarea, comportamentul aplicației și orice infrastructură de căutare rămân responsabilitățile dumneavoastră de implementare.
GlyphMetrum · Actualizat 2026-10-25