Repolode
spencermountain

spencermountain/compromise

Biblioteca de processamento de linguagem natural em JavaScript que identifica classes gramaticais, encontra padrões no texto e transforma verbos, números e outros elementos.

Estrelas
12,165
Forks
668
Issues abertas
93
Último commit
há 17 horas

O que é?

compromise é uma biblioteca leve de processamento de linguagem natural para JavaScript, que roda no navegador e no Node.js. Ela transforma texto bruto em um documento estruturado no qual você pode encontrar substantivos, verbos, números, datas, pessoas e lugares e, depois, ler esses elementos ou reescrevê-los.

A biblioteca oferece uma sintaxe simples para encontrar padrões, como “#Adjective of times”, que permite selecionar partes de uma frase, além de um conjunto de transformações para, por exemplo, conjugar verbos no passado, pluralizar substantivos, expandir contrações ou adicionar números. Os resultados podem ser exportados como texto ou JSON. A build principal inclui um tokenizador e um identificador de classes gramaticais, com pontos de entrada separados para usos mais leves, apenas com tokenização. Plugins opcionais ampliam os recursos, como o compromise-speech, que oferece suporte a sílabas.

O projeto é voltado ao inglês. Pacotes relacionados dão suporte a francês, alemão, italiano e espanhol.

Recursos principais

  • 01Identificação de classes gramaticais com um grafo de 83 etiquetas
  • 02Busca por padrões com uma sintaxe simples para selecionar expressões
  • 03Conjugação de verbos, pluralização de substantivos e conversão de tempos verbais
  • 04Interpretação e operações aritméticas com números, dinheiro, frações e porcentagens
  • 05Expansão de contrações e normalização de texto
  • 06Sistema de plugins e build somente com tokenizador para usos mais leves

Casos de uso

  • Extração de nomes, lugares e datas de textos de artigos ou conversas
  • Geração ou correção de frases em inglês com formas verbais adequadas
  • Interpretação de números e valores monetários fornecidos por usuários em formulários ou buscas
  • Execução de análises leves de texto diretamente no navegador

Início rápido

  1. 1

    Instale a biblioteca pelo npm

    npm install compromise
  2. 2

    Importe-a e execute um exemplo rápido com uma frase

Antes de usar

  • Ela não é tão inteligente quanto parece e depende de decisões limitadas, baseadas em regras.
  • A biblioteca completa tem cerca de 250 kb minificada, o que é muito para bundles pequenos.
  • Os outros idiomas são oferecidos apenas como projetos separados, como fr-compromise, de-compromise, it-compromise e es-compromise.

Tópicos

Perguntas frequentes

O que é compromise?
Biblioteca de processamento de linguagem natural em JavaScript que identifica classes gramaticais, encontra padrões no texto e transforma verbos, números e outros elementos. compromise é uma biblioteca leve de processamento de linguagem natural para JavaScript, que roda no navegador e no Node.js. Ela transforma texto bruto em um documento estruturado no qual você pode encontrar substantivos, verbos, números, datas, pessoas e lugares e, depois, ler esses elementos ou reescrevê-los.
compromise é gratuito? Qual é a licença?
compromise é open source sob a licença MIT. Confira os termos da licença antes de usá-lo em produtos comerciais.
compromise ainda é mantido?
Manutenção ativa. O último commit de compromise foi em 19 de out. de 2026.
Para que posso usar compromise?
Extração de nomes, lugares e datas de textos de artigos ou conversas Geração ou correção de frases em inglês com formas verbais adequadas Interpretação de números e valores monetários fornecidos por usuários em formulários ou buscas Execução de análises leves de texto diretamente no navegador
Como instalar compromise?
Instale a biblioteca pelo npm: npm install compromise Importe-a e execute um exemplo rápido com uma frase
Onde consigo compromise?
O código-fonte e as instruções de instalação estão no GitHub: https://github.com/spencermountain/compromise

Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.

Projetos relacionados