Melhores modelos de NER em 2026: spaCy, GLiNER, Transformers, LLMs

Tradução automática Este artigo foi traduzido automaticamente a partir da versão original em inglês.

O reconhecimento de entidades nomeadas (NER) encontra e identifica spans de texto, como pessoas, empresas e códigos de produto. Esta página destina-se a engenheiros que estão a escolher uma abordagem de extração para uma carga de trabalho de produção. Fornece um ponto de partida que pode testar com o seu schema, documentos e restrições operacionais.

Use spaCy para labels estáveis e pipelines rápidos. Escolha GLiNER quando os labels mudam frequentemente, um bi-encoder quando um inventário de labels grande puder reutilizar embeddings em cache, ou um classificador de tokens baseado em Transformer com fine-tuning quando tiver exemplos anotados. Use extração estruturada baseada em LLM quando precisar de um registo complexo em vez de uma simples lista de spans.

Última revisão: 2026-08-17. Critérios de seleção: estabilidade dos labels, inventário de labels, output de spans versus registos, idioma, dados supervisionados, latência, normalização e custo de revisão.

Tabela de decisão

NecessidadeMelhor ponto de partidaMotivo
NER rápido com labels conhecidosspaCyPipelines maduros, boa ergonomia, deployment rápido em CPU e integração com regras.
Novos labels sem treino completoGLiNERA extração condicionada pelos labels funciona bem quando o conjunto de labels muda. Comece com descrições claras dos tipos, não apenas com nomes.
Inventário de labels grande e reutilizávelGLiNER bi-encoderPode pré-calcular e colocar em cache os embeddings dos labels, em vez de codificar os labels em cada documento.
Entidades e relações numa única passagemCandidato GLiNER-RelexExtrai conjuntamente tipos de entidades e de relações. Faça o benchmark em comparação com etapas separadas no schema de relações pretendido.
Entidades e campos de documento ou classificaçãoGLiNER2A sua interface de schema combina reconhecimento de entidades, classificação e tarefas de extração estruturada.
Entidades aninhadas ou sobrepostasDecoder compatível com entidades aninhadas, incluindo GLiNER com flat_ner=FalseA descodificação plana elimina sobreposições. Teste spans aninhados em anotações que contenham os padrões de sobreposição esperados.
Extração multilingue ou com vários scriptsGLiNER-X ou baseline XLM-RNenhum modelo obtém os melhores resultados em todos os idiomas. Teste cada idioma-alvo e a formulação das descrições dos seus tipos.
Labels de domínio estáveis com spans anotados representativosClassificador de tokens com fine-tuning ou pipeline spaCyEstabeleça uma baseline supervisionada e compare exact-span F1, latência e custo no seu conjunto de domínio.
Campos implícitos, entre frases ou estruturadosCandidato LLM ou híbridoOs structured outputs limitam o formato da resposta, não a correção da extração. Valide a precisão dos campos num conjunto de teste do domínio.
PII sensível ou workflow reguladoPresidio mais candidato GLiNER2-PIICombine o output do modelo com verificações determinísticas, controlos de redação e revisão.

Classes de ferramentas

ClassePonto fortePonto fracoAdequado para
NER com spaCyRápido, adequado para produção e consciente de regrasRequer treino ou regras para labels personalizadosLabels conhecidos em sistemas de elevado débito.
GLiNERLabels flexíveis em inferênciaA qualidade depende da formulação dos labels e da incompatibilidade com o domínioIteração rápida da ontologia e labels de cauda longa.
GLiNER bi-encoderEmbeddings de labels em cache escalam para ontologias grandesOs benefícios dependem da reutilização dos labels e do formato da carga de trabalhoInventários reutilizados com dezenas a milhares de labels.
GLiNER2Extração de schemas multitarefaCada tarefa e o schema combinado ainda precisam de avaliaçãoEntidades, classificação e campos estruturados.
GLiNER-RelexExtração conjunta de entidades e relaçõesModelo mais recente que requer comparação específica por tarefaSchemas explícitos de entidade-relação.
Classificador de tokens baseado em TransformerForte precisão supervisionadaRequer spans anotados e novo treinoExtração de domínio estável com dados suficientes.
Extração com LLMFlexibilidade de schema e capacidade de raciocínioMaior latência, custo e não determinismoRegistos complexos, valores implícitos e workflows de baixo volume.
Regras e dicionáriosComportamento determinístico na correspondênciaRecall frágilCompliance, IDs, códigos de produto e pós-filtros.

Como escolher

Comece pelo schema de entidades, não pelo modelo.

Se os labels forem estáveis e estiverem disponíveis exemplos representativos, faça fine-tuning de um classificador de tokens. Compare-o num conjunto de domínio separado para validação. Este modelo prevê labels de tokens sem geração autoregressiva. A latência e o custo continuam a depender do modelo, do hardware, do batch size e da stack de serving.

Se os labels mudarem semanalmente, use GLiNER ou um extrator com LLM enquanto a ontologia estabiliza. Escreva uma descrição curta do tipo para cada label ambíguo. Investigação recente sobre NER hard zero-shot conclui que as descrições melhoram a generalização e evitam tratar leakage dos labels como capacidade zero-shot. O objetivo é perceber qual deve ser o schema antes de investir orçamento em anotação.

Se reutilizar um inventário de labels grande, avalie um bi-encoder antes de um encoder conjunto de labels e texto. O artigo sobre o GLiNER bi-encoder reporta 61,5 de micro-F1 no CrossNER. Reporta também um débito até 130 vezes superior com 1 024 labels e embeddings pré-calculados, nas condições de teste H100 do estudo. Estes resultados identificam um comportamento de escalabilidade. Não constituem uma estimativa para outra carga de trabalho de produção.

Se os documentos abrangerem vários idiomas, faça benchmark de todos os idiomas e scripts-alvo. O OpenNER 1.0 não encontrou um único modelo que fosse o melhor em toda a sua coleção de 52 idiomas. Teste tanto descrições dos tipos em inglês como descrições localizadas, porque o texto dos labels faz parte do input do modelo.

Se o output for um registo estruturado em vez de spans, use um LLM com structured outputs ou um pipeline híbrido. O LangExtract é útil quando cada extração tem de ser associada à sua localização na fonte. O NuExtract é uma opção self-hosted para extração multimodal de documentos. Ambos continuam a necessitar de avaliação ao nível dos campos nos documentos-alvo.

Muitas tarefas de extração empresarial não são NER puro. “Encontre as partes, obrigações, data de entrada em vigor, cláusula de rescisão e lei aplicável” é compreensão de documentos com campos de entidades.

Para PII, use um framework de PII como o Presidio como camada de integração e redação. Trate o GLiNER2-PII como candidato a modelo, não como uma decisão de compliance. Meça o recall nos formatos sensíveis, idiomas e documentos que o sistema irá processar.

Pipeline de produção

Um pipeline de extração de produção acrescenta frequentemente etapas em torno do modelo:

  1. Extração de candidatos: spaCy, GLiNER, modelo Transformer, LLM, regras ou uma combinação destes.
  2. Normalização opcional ou entity linking: associe spans a IDs canónicos, códigos de produto, utilizadores, empresas ou entradas de uma ontologia.
  3. Validação e revisão: rejeite labels impossíveis, aplique as restrições do schema, elimine spans duplicados e encaminhe os casos incertos para revisão.

A normalização transforma o texto extraído em dados úteis para o produto. Encontrar o span “Apple” é apenas o primeiro passo. O sistema ainda tem de decidir se significa a empresa, a fruta, uma família de produtos ou um ticker bolsista e, em seguida, associá-lo a um ID estável.

Checklist de avaliação

Meça mais do que o F1 ao nível da entidade:

  • F1 de spans exatos
  • F1 de spans relaxados
  • matriz de confusão dos labels
  • tratamento de entidades aninhadas
  • precisão da normalização de entidades
  • sensibilidade às descrições dos tipos e ao idioma dos labels
  • segmentos por idioma, script e formato do documento
  • falsos positivos por label
  • calibração da confiança
  • latência e custo por documento
  • taxa de correções humanas

Mantenha o conjunto de teste separado do design do schema e do ajuste de thresholds. Comunique o número de documentos e de menções de entidades por label. Use intervalos de confiança ao nível do documento quando várias menções no mesmo documento pudessem, de outro modo, inflacionar a certeza.

Leitura aprofundada

Referências