Selección de modelos de NER: ¿spaCy, GLiNER, Transformers o LLMs?
Traducción automática
Este artículo se tradujo automáticamente a partir de la versión original en inglés.
El reconocimiento de entidades con nombre (NER) localiza y etiqueta fragmentos de texto, como personas, empresas y códigos de producto. Esta página está dirigida a ingenieros que deben elegir un enfoque de extracción para una carga de trabajo de producción. Ofrece un punto de partida que puedes probar con tu esquema, tus documentos y tus restricciones operativas.
Usa spaCy para etiquetas estables y pipelines rápidos. Elige GLiNER cuando las etiquetas cambien con frecuencia. Prueba un bi-encoder cuando muchas etiquetas puedan reutilizar embeddings en caché, o un clasificador de tokens basado en un Transformer con fine-tuning cuando dispongas de ejemplos etiquetados. Usa extracción estructurada basada en LLM cuando necesites un registro complejo en lugar de una simple lista de fragmentos.
Elige según las etiquetas necesarias, el idioma, la forma de la salida, los datos etiquetados y el presupuesto de latencia.
Tabla de decisión
| Necesidad | Punto de partida | Motivo |
|---|---|---|
| Etiquetas conocidas y despliegue en CPU | Referencia inicial con spaCy | Los pipelines preentrenados y las reglas ofrecen una referencia inicial; comprueba la precisión en el idioma y el dominio. |
| Etiquetas nuevas sin entrenamiento completo | GLiNER | La extracción condicionada por etiquetas funciona bien cuando cambia el conjunto de etiquetas. Empieza con descripciones claras de los tipos, no con nombres aislados. |
| Inventario de etiquetas grande y reutilizable | GLiNER bi-encoder | Puede precomputar y almacenar en caché los embeddings de las etiquetas en lugar de codificarlas con cada documento. |
| Entidades y relaciones en una sola pasada | Candidato GLiNER-Relex | Extrae conjuntamente tipos de entidades y relaciones. Compáralo con etapas separadas usando el esquema de relaciones objetivo. |
| Entidades y campos documentales o clasificación | GLiNER2 | Su interfaz de esquema combina reconocimiento de entidades, clasificación y tareas de extracción estructurada. |
| Entidades anidadas o solapadas | Decodificador compatible con anidamiento, incluido GLiNER con flat_ner=False | La decodificación plana suprime los solapamientos. Prueba fragmentos anidados con anotaciones que contengan los patrones de solapamiento esperados. |
| Extracción multilingüe o en varios sistemas de escritura | GLiNER-X o una referencia inicial XLM-R | Prueba cada idioma objetivo, dominio y formulación de las descripciones de tipos. |
| Etiquetas de dominio estables con fragmentos etiquetados representativos | Clasificador de tokens con fine-tuning o pipeline de spaCy | Establece una referencia inicial supervisada y compara F1 de fragmentos exactos, latencia y coste en tu conjunto de dominio. |
| Campos implícitos, entre frases o estructurados | Candidato LLM o híbrido | Los structured outputs restringen la forma de la respuesta, no la corrección de la extracción. Valida la precisión por campo en un conjunto de prueba del dominio. |
| PII crítica o flujo regulado | Presidio más candidato GLiNER2-PII | Combina la salida del modelo con comprobaciones deterministas, controles de ocultación y revisión. |
| IDs exactos, códigos de producto o términos conocidos | Reglas y diccionarios | La coincidencia determinista resulta útil para patrones fijos; comprueba las variantes omitidas y las coincidencias incorrectas. |
Cómo elegir
Escribe los tipos de entidad y unos cuantos ejemplos etiquetados antes de elegir un modelo. Incluye términos ambiguos y fragmentos dentro de otros fragmentos si la tarea los necesita.
Si las etiquetas son estables, prueba primero un pipeline existente. Aplica fine-tuning a un clasificador de tokens cuando sus errores de dominio justifiquen el entrenamiento y dispongas de ejemplos etiquetados representativos. Compáralo en un conjunto de dominio reservado para evaluación. Predice etiquetas de tokens sin generar la respuesta token a token.
Si las etiquetas cambian con frecuencia, prueba GLiNER o un extractor basado en LLM. Escribe una descripción breve para cada tipo ambiguo. ZeroNER evalúa descripciones de tipos con tipos de entidad no vistos durante el entrenamiento. Las descripciones aclaran la etiqueta; una prueba de tipos no vistos también debe excluir esos tipos del entrenamiento.
Si reutilizas un inventario grande de etiquetas, evalúa un bi-encoder antes que un codificador conjunto de etiquetas y texto. El artículo sobre GLiNER bi-encoder informa de un rendimiento aproximadamente 130 veces superior para gliner-bi-edge-v2.0 con embeddings de etiquetas en caché que para gliner_small-v2.5 con 1.024 etiquetas. La comparación utilizó una GPU H100 y tamaño de lote 1; las pruebas de velocidad cubrieron entradas de 64, 256 y 512 tokens. Esto demuestra por qué merece la pena probar la reutilización de etiquetas, no qué aceleración debes esperar en otra carga de trabajo.
Si los documentos abarcan varios idiomas, haz benchmark de cada idioma y sistema de escritura objetivo. OpenNER 1.0 no encontró un único modelo que fuera el mejor en su colección de 52 idiomas. Prueba tanto descripciones de tipos en inglés como localizadas, porque el texto de la etiqueta forma parte de la entrada del modelo.
Si la salida es un registro estructurado en lugar de fragmentos, usa un LLM con structured outputs o un pipeline híbrido. LangExtract resulta útil cuando cada extracción debe poder vincularse con su ubicación de origen. NuExtract es una opción alojada en infraestructura propia para la extracción multimodal de documentos. Ambos necesitan evaluación a nivel de campo en los documentos objetivo.
Muchas tareas de extracción empresarial no son NER puro. «Encuentra las partes, las obligaciones, la fecha de entrada en vigor, la cláusula de rescisión y la ley aplicable» es comprensión documental con campos de entidades.
Para PII, usa un framework de PII como Presidio como capa de integración y ocultación. Trata GLiNER2-PII como candidato de modelo, no como una decisión de cumplimiento normativo. Mide la exhaustividad en los formatos sensibles, idiomas y documentos que procesará el sistema.
Pipeline de producción
Un pipeline de extracción de producción suele añadir etapas alrededor del modelo:
- Extracción de candidatos: spaCy, GLiNER, modelo Transformer, LLM, reglas o una combinación.
- Normalización o vinculación de entidades opcional: asigna fragmentos a IDs canónicos, códigos de producto, usuarios, empresas o entradas del vocabulario de tu dominio.
- Validación y revisión: rechaza etiquetas imposibles, aplica las restricciones del esquema, elimina fragmentos duplicados y envía los casos inciertos a revisión.
La normalización asigna el texto extraído a un ID estable en tus datos. Para el fragmento «Apple», decide primero si se refiere a la empresa, a la fruta, a una familia de productos o a un símbolo bursátil. Después asigna ese significado al ID correspondiente.
Lista de comprobación de la evaluación
Mide más que el F1 a nivel de entidad:
El F1 de fragmentos exactos considera correcta una predicción solo cuando tanto el fragmento como la etiqueta coinciden con la anotación. Una puntuación con criterios más flexibles puede aceptar fragmentos solapados, así que documenta su regla de correspondencia. Ninguna de las dos puntuaciones comprueba si el nombre extraído corresponde al ID correcto de la base de datos.
- F1 de fragmentos exactos
- F1 con correspondencia flexible de fragmentos
- matriz de confusión de etiquetas
- gestión de entidades anidadas
- precisión de la normalización de entidades
- sensibilidad a las descripciones de tipos y al idioma de las etiquetas
- cortes por idioma, sistema de escritura y formato documental
- falsos positivos por etiqueta
- calibración de confianza
- latencia y coste por documento
- tasa de correcciones humanas
Mantén el conjunto de prueba separado del diseño del esquema y del ajuste de umbrales. Informa del número de documentos y menciones de entidades por etiqueta. Usa intervalos de confianza a nivel de documento cuando las menciones repetidas en un mismo documento pudieran inflar la certeza.
Lecturas recomendadas
- Guía de NER 2026 cubre codificadores, LLMs y la arquitectura de producción de tres niveles.
- Razonamiento guiado por esquemas es relevante cuando NER se convierte en extracción estructurada.
Referencias
- Documentación de GLiNER
- Artículo sobre GLiNER bi-encoder - embeddings de etiquetas en caché para inventarios grandes.
- Documentación de GLiNER2
- Artículo sobre GLiNER-Relex - extracción conjunta de entidades y relaciones.
- Artículo sobre ZeroNER - evaluación zero-shot estricta con descripciones de tipos.
- Artículo sobre OpenNER 1.0 - evaluación multilingüe y con múltiples ontologías de NER.
- LangExtract - extracción con LLM con referencias a la fuente.
- NuExtract - extracción multimodal alojada en infraestructura propia.
- Presidio - framework de detección y anonimización de PII.
- Artículo sobre GLiNER2-PII - candidato de modelo multilingüe de PII.
- Documentación de entidades con nombre de spaCy
- Guía de clasificación de tokens de Hugging Face
- Guía de structured outputs de OpenAI