Sobre o projeto
HanLP (Han Language Processing) é um kit de ferramentas de processamento de linguagem natural multilíngue voltado para ambientes de produção, baseado nos dois motores PyTorch e TensorFlow 2.x. O objetivo do projeto é popularizar e aplicar tecnologias de PNL de ponta, com características como funcionalidades completas, alta precisão, desempenho eficiente, corpora atualizados, arquitetura clara e personalização.
Cobertura de funcionalidades:
- Segmentação de palavras (grosseira e fina)
- Etiquetagem de classes gramaticais (padrões CTB, PKU, 863, etc.)
- Reconhecimento de entidades nomeadas (padrões PKU, MSRA, OntoNotes, etc.)
- Análise sintática de dependência (SD, UD, PMT)
- Análise sintática de constituintes (Chinese Tree Bank)
- Análise de dependência semântica (CSDP)
- Anotação de papéis semânticos (Chinese Proposition Bank)
- Representação de significado abstrato (CAMR)
- Resolução de correferência
- Similaridade semântica de textos
- Conversão de estilo de texto
- Extração de palavras-chave e frases
- Resumo automático extrativo e generativo
- Correção gramatical de texto
- Classificação de texto e análise de sentimentos
- Detecção de idioma
- Vetores de palavras e preenchimento de lacunas (cloze)
- Conversão entre chinês simplificado e tradicional, pinyin, descoberta de novas palavras, agrupamento de texto (consulte a versão 1.x)
Suporte multilíngue: com base em grandes corpora multilíngues, o HanLP 2.1 suporta 10 tarefas conjuntas e várias tarefas individuais em 130 idiomas, incluindo chinês simplificado e tradicional, inglês, japonês, russo, francês e alemão.
Duas formas de API:
1. API RESTful leve: com apenas alguns KB de tamanho, adequada para desenvolvimento ágil, aplicativos móveis e outros cenários, sem necessidade de ambiente GPU, instalação rápida. Oferece clientes em Python, Golang, Java, etc.
2. API nativa de grande porte: depende de tecnologias de aprendizado profundo como PyTorch e TensorFlow, adequada para engenheiros de PNL profissionais, pesquisadores e cenários com grandes volumes de dados locais. Requer Python 3.6 a 3.10, suporta Windows, recomenda sistemas tipo Unix, pode ser executada em CPU, recomenda GPU/TPU.
Tipos de modelo:
- Modelo multitarefa: rápido, economiza memória de vídeo, pode concluir várias tarefas em uma única chamada.
- Modelo de tarefa única: mais preciso e flexível, pode ser montado em modo de pipeline.
Capacidade de personalização: suporta dicionários personalizados eficientes baseados em árvore trie, além de três regras: forçar, mesclar e corrigir. Os efeitos das regras podem ser aplicados perfeitamente aos modelos estatísticos subsequentes, adaptando-se rapidamente a novos domínios.
Formato de saída: independentemente da API, linguagem de desenvolvimento ou idioma natural, a saída é uniformemente um objeto Document compatível com dict em formato JSON, contendo campos como segmentação de palavras, classes gramaticais, entidades nomeadas, papéis semânticos, sintaxe de dependência, dependência semântica, sintaxe de constituintes, etc. As APIs RESTful e nativa em Python também suportam visualização baseada em fonte monoespaçada, permitindo exibir estruturas linguísticas diretamente no console.
O projeto também oferece meios para treinar modelos personalizados de domínio e inclui citação de artigo da EMNLP.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.