GGlyphMetrum
Ambiente de programação com IA

Distância de edição de Levenshtein

Calcule a distância Levenshtein por pontos de código Unicode sem normalizar strings.

● ● ●GlyphMetrum●
Fluxos de trabalho · Distância de edição de Levenshtein ×
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]
✳Calcule a distância Levenshtein por pontos de código Unicode sem normalizar strings.
✓ AlteraçõesRevise antes de aplicar ↗
Ilustração do ambiente
  1. Revise antes de aplicar

    Compare o comportamento real com o resultado esperado. Se uma verificação falhar, investigue a causa antes de fazer outras alterações.

  2. Modelos

    Configure um endpoint compatível com OpenAI ou Anthropic com a URL base e uma chave API, quando necessária. Teste a conexão. O servidor local precisa estar em execução; ferramentas remotas podem transmitir dados separadamente.

  3. Projeto

    Teste entrada vazia, substituição de emoji e formas compostas ou decompostas sem prometer equivalência visual.

Fluxos de trabalho

Distância de edição de Levenshtein

Fluxos de trabalho ↗
Fluxos de trabalho
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]
Ambiente de programação com IA

Defina o significado de uma correspondência de texto antes de programá-la

GlyphMetrum é um ambiente de programação para Windows no qual você usa um modelo de IA conectado para examinar mudanças no processamento de texto do projeto. Comece descrevendo a decisão que o aplicativo precisa tomar: comparar uma entrada, sugerir um rótulo próximo ou rejeitar um valor que não se qualifica. Peça ao assistente que examine a função relevante e seu chamador antes de propor mudanças, para que a conversa conecte detalhes de implementação ao comportamento visível.

O exemplo distance.py oferece um ponto de partida concreto para essa discussão por meio de uma comparação de edições de caracteres. É um exemplo de contexto de projeto, não um mecanismo de busca ou recurso de correspondência incorporado ao GlyphMetrum. Seu aplicativo pode precisar de decisões próprias sobre maiúsculas e minúsculas, normalização e o grau aceitável de diferença. Revise essas decisões separadamente do mecanismo usado para calcular uma distância.

Teste o comportamento resultante com exemplos cujos resultados esperados você possa explicar, incluindo texto vazio e strings visualmente semelhantes representadas de maneiras diferentes. Verifique como o chamador trata empates ou a ausência de correspondência aceitável. Conecte um endpoint suportado compatível com OpenAI ou da Anthropic, adicionando credenciais quando exigidas; um modelo sem restrições só pode ser selecionado quando oferecido. Restrições do modelo, ferramentas disponíveis e limites de contexto continuam dependendo do serviço configurado. O ambiente de programação ajuda a organizar o trabalho enquanto você decide se o resultado atende ao aplicativo.

Decisões de comparação de texto para uma tarefa de programação

O exemplo define uma política completa de correspondência?

Não. Ele fornece um mecanismo de comparação para discussão. Seu aplicativo deve decidir quais transformações são permitidas e qual resultado se qualifica como correspondência; depois, deve testar essas decisões pelo chamador, em vez de depender apenas da distância.

A uniformização de maiúsculas e minúsculas deve ser adicionada automaticamente?

Somente quando corresponder ao comportamento pretendido. Alguns identificadores diferenciam maiúsculas de minúsculas, enquanto rótulos exibidos ao usuário podem não diferenciar. Dê ao assistente exemplos representativos e revise onde ocorre qualquer normalização para que ela não afete texto não relacionado.

Como posso verificar sugestões ambíguas?

Inclua casos em que vários candidatos sejam igualmente próximos e defina como o aplicativo deve responder. Examine a lógica de seleção além da função de comparação, pois uma distância correta não escolhe uma política útil de desempate.

GlyphMetrum é um serviço pronto de busca aproximada?

Não se afirma que exista esse serviço. É um ambiente de programação no qual você pode discutir e revisar código de processamento de texto no seu projeto. Indexação, comportamento do aplicativo e qualquer infraestrutura de busca continuam sendo responsabilidades da sua implementação.

Baixar para Windows ↗

GlyphMetrum · Atualizado 2026-10-25