Odległość edycyjna Levenshteina
Oblicz odległość Levenshteina według punktów kodowych Unicode bez normalizacji tekstu.
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]Sprawdź przed zastosowaniem
Porównaj rzeczywiste zachowanie z oczekiwanym wynikiem. Jeśli sprawdzenie się nie powiedzie, wyjaśnij przyczynę przed kolejnymi zmianami.
Modele
Dodaj endpoint zgodny z OpenAI lub Anthropic, podając bazowy URL i klucz API, jeśli jest wymagany. Sprawdź połączenie. Lokalny serwer modelu musi działać; zdalne narzędzia mogą przesyłać dane oddzielnie.
Projekt
Sprawdź pusty tekst, zamianę emoji i postacie złożone lub rozłożone bez obietnicy zgodności wizualnej.
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]Określ znaczenie dopasowania tekstu, zanim je zaprogramujesz
GlyphMetrum to środowisko programistyczne Windows do analizowania zmian przetwarzania tekstu w projekcie z podłączonym modelem AI. Zacznij od opisania decyzji, którą musi podjąć aplikacja: porównać wejście, zasugerować podobną etykietę lub odrzucić niekwalifikującą się wartość. Poproś asystenta o sprawdzenie odpowiedniej funkcji i kodu ją wywołującego przed zaproponowaniem zmian, aby połączyć szczegóły implementacji z widocznym zachowaniem.
Przykład distance.py stanowi konkretny punkt wyjścia do dyskusji dzięki porównaniu opartemu na edycjach znaków. Jest to przykładowy kontekst projektu, a nie wyszukiwarka ani funkcja dopasowania wbudowana w GlyphMetrum. Twoja aplikacja może potrzebować własnych decyzji dotyczących wielkości liter, normalizacji i akceptowalnego stopnia różnicy. Oceniaj te decyzje oddzielnie od mechanizmu obliczania odległości.
Testuj uzyskane zachowanie na przykładach, których oczekiwane wyniki potrafisz wyjaśnić, w tym pustym tekście i wizualnie podobnych ciągach o różnej reprezentacji. Sprawdź obsługę remisów lub braku akceptowalnego dopasowania przez kod wywołujący. Podłącz obsługiwany punkt końcowy zgodny z OpenAI lub Anthropic, dodając dane uwierzytelniające, gdy są wymagane; model bez ograniczeń można wybrać tylko tam, gdzie jest oferowany. Ograniczenia modelu, dostępne narzędzia i limity kontekstu nadal zależą od skonfigurowanej usługi. Środowisko programistyczne pomaga organizować pracę, a Ty decydujesz, czy wynik odpowiada aplikacji.
Decyzje o porównywaniu tekstu w zadaniu programistycznym
Czy przykład określa pełną politykę dopasowania?
Nie. Dostarcza mechanizm porównania do omówienia. Aplikacja musi określić dozwolone przekształcenia i wynik kwalifikujący się jako dopasowanie, a następnie przetestować te decyzje przez kod wywołujący, zamiast polegać wyłącznie na odległości.
Czy automatycznie dodawać ujednolicanie wielkości liter?
Tylko gdy odpowiada zamierzonemu zachowaniu. Niektóre identyfikatory rozróżniają wielkość liter, a etykiety dla użytkownika mogą jej nie rozróżniać. Podaj asystentowi reprezentatywne przykłady i sprawdź miejsce normalizacji, aby nie wpływała na niepowiązany tekst.
Jak sprawdzać niejednoznaczne sugestie?
Uwzględnij przypadki, w których kilku kandydatów jest równie bliskich, i określ reakcję aplikacji. Sprawdź logikę wyboru poza funkcją porównującą, ponieważ poprawna odległość nie wybiera użytecznej zasady rozstrzygania remisów.
Czy GlyphMetrum jest gotową usługą wyszukiwania przybliżonego?
Nie deklaruje takiej usługi. To środowisko programistyczne do omawiania i oceniania kodu przetwarzania tekstu w projekcie. Indeksowanie, zachowanie aplikacji i wszelka infrastruktura wyszukiwania pozostają Twoją odpowiedzialnością implementacyjną.
GlyphMetrum · Zaktualizowano 2026-10-25