Sobre el proyecto

HanLP (Han Language Processing) es un kit de procesamiento del lenguaje natural multilingüe orientado a entornos de producción, basado en los motores PyTorch y TensorFlow 2.x. El objetivo del proyecto es popularizar la aplicación de tecnologías NLP de vanguardia, caracterizándose por funciones completas, precisión alta, rendimiento eficiente, corpus actualizados, arquitectura clara y personalización. Cobertura de funciones: - Segmentación de palabras (gruesa y fina) - Etiquetado de partes de la speech (estándares CTB, PKU, 863, etc.) - Reconocimiento de entidades nombradas (estándares PKU, MSRA, OntoNotes, etc.) - Análisis sintáctico de dependencias (SD, UD, PMT) - Análisis sintáctico de constituyentes (Chinese Tree Bank) - Análisis de dependencias semánticas (CSDP) - Etiquetado de roles semánticos (Chinese Proposition Bank) - Representación de significado abstracto (CAMR) - Resolución de referencias - Similitud de texto semántico - Conversión de estilo de texto - Extracción de frases clave - Resumen automático extractivo y generativo - Corrección gramatical de texto - Clasificación de texto y análisis de sentimiento - Detección de idioma - Vectores de palabras y completar espacios en blanco - Conversión simplificado/tradicional, pinyin, descubrimiento de nuevas palabras, agrupamiento de texto (referencia a la versión 1.x) Soporte multilingüe: Mediante un gran corpus multilingüe, HanLP 2.1 admite 10 tareas conjuntas y múltiples tareas individuales en 130 idiomas, incluyendo chino simplificado y tradicional, inglés, japonés, ruso, francés y alemán. Dos formas de API: 1. API RESTful ligera: Tamaño de solo unos pocos KB, adecuada para desarrollo ágil, aplicaciones móviles, etc., sin necesidad de entorno GPU, instalación rápida. Proporciona clientes para Python, Golang, Java, etc. 2. API nativa masiva: Depende de tecnologías de aprendizaje profundo como PyTorch y TensorFlow, adecuada para ingenieros NLP profesionales, investigadores y escenarios de datos locales masivos. Requiere Python 3.6 a 3.10, admite Windows, se recomienda sistemas tipo Unix, puede ejecutarse en CPU, se recomienda GPU/TPU. Tipos de modelos: - Modelos multitarea: Rápidos y que ahorran memoria de vídeo, pueden completar múltiples tareas con una sola llamada. - Modelos de tarea única: Mayor precisión y flexibilidad, pueden ensamblarse mediante modo de pipeline. Capacidad de personalización: Admite diccionarios personalizados eficientes basados en árboles trie, así como tres tipos de reglas: forzar, fusionar y corregir. Los efectos de las reglas se aplican sin problemas a los modelos estadísticos posteriores, adaptándose rápidamente a nuevos dominios. Formato de salida: Independientemente de la API, el lenguaje de desarrollo o el idioma natural, la salida es un objeto Document en formato JSON compatible con dict, que incluye campos como segmentación, partes de la speech, entidades nombradas, roles semánticos, dependencias sintácticas, dependencias semánticas y constituyentes sintácticos. Las API RESTful y nativas de Python también admiten visualización basada en fuentes monoespaciadas, mostrando directamente estructuras lingüísticas en la consola. El proyecto también proporciona vías para entrenar modelos de dominios personalizados y adjunta citas de artículos de EMNLP.