Biblioteca Python para agrupar rapidamente, na CPU, grandes vetores de embeddings de alta dimensionalidade, com uma API no estilo scikit-learn.
MaartenGr/BERTopic
Biblioteca Python de modelagem de tópicos que combina embeddings de transformers com c-TF-IDF para gerar tópicos interpretáveis a partir de textos.
- Estrelas
- 7,937
- Forks
- 931
- Issues abertas
- 478
- Último commit
- anteontem
O que é?
BERTopic é uma biblioteca Python para modelagem de tópicos. Ela gera embeddings dos documentos com modelos transformer, reduz sua dimensionalidade, agrupa-os e, em seguida, descreve cada grupo com suas palavras mais distintivas usando um procedimento de TF-IDF baseado em classes. O resultado é um conjunto de tópicos com descrições legíveis por palavras-chave, além da atribuição de tópicos e das probabilidades para cada documento.
A biblioteca é modular. Cada etapa — incluindo o modelo de embeddings, a redução de dimensionalidade, o agrupamento, a tokenização, a ponderação dos termos e a representação dos tópicos — pode ser substituída ou removida. As representações dos tópicos podem ser refinadas com palavras-chave no estilo KeyBERT, rótulos gerados por LLMs, como os de modelos da OpenAI, ou várias representações simultaneamente por meio de modelagem de múltiplos aspectos.
Além do ajuste básico, o BERTopic oferece modelagem de tópicos guiada, supervisionada, semissupervisionada, zero-shot, hierárquica, dinâmica ao longo do tempo, por classe, online e multimodal. Também conta com visualizações interativas, como um mapa de tópicos semelhante ao LDAvis, e métodos para salvar, carregar e mesclar modelos.
Recursos principais
- 01Gera tópicos a partir de embeddings de transformers, redução de dimensionalidade no estilo UMAP e agrupamento no estilo HDBSCAN.
- 02Descreve tópicos com palavras-chave c-TF-IDF e permite refiná-los com representações baseadas em KeyBERT ou LLMs.
- 03Oferece modelagem de tópicos guiada, supervisionada, zero-shot, hierárquica, dinâmica e online.
- 04Oferece visualizações interativas de tópicos, documentos, hierarquias e tópicos ao longo do tempo.
- 05Permite substituir ou remover cada etapa do pipeline.
Casos de uso
- Explorar grandes coleções de feedback de clientes, chamados de suporte ou respostas a pesquisas para encontrar temas recorrentes.
- Acompanhar como os tópicos de notícias, redes sociais ou resumos de pesquisas mudam ao longo do tempo.
- Analisar coleções de documentos em vários idiomas usando um modelo multilíngue de embeddings.
- Atribuir nomes de tópicos legíveis por pessoas a grupos de textos, gerados por um LLM.
Início rápido
- 1
Instale o BERTopic com pip
pip install bertopic - 2
Ajuste o modelo aos seus documentos usando fit_transform no Python
Antes de usar
- A instalação padrão inclui dependências pesadas, como transformers e UMAP. Para reduzir o espaço ocupado, é necessária uma instalação leve.
- Alguns recursos opcionais de rotulagem de tópicos, como a representação da OpenAI, exigem uma chave de API de um serviço pago.
Em coleções
Tópicos
Perguntas frequentes
- O que é BERTopic?
- Biblioteca Python de modelagem de tópicos que combina embeddings de transformers com c-TF-IDF para gerar tópicos interpretáveis a partir de textos. BERTopic é uma biblioteca Python para modelagem de tópicos. Ela gera embeddings dos documentos com modelos transformer, reduz sua dimensionalidade, agrupa-os e, em seguida, descreve cada grupo com suas palavras mais distintivas usando um procedimento de TF-IDF baseado em classes. O resultado é um conjunto de tópicos com descrições legíveis por palavras-chave, além da atribuição de tópicos e das probabilidades para cada documento.
- BERTopic é gratuito? Qual é a licença?
- BERTopic é open source sob a licença MIT. Confira os termos da licença antes de usá-lo em produtos comerciais.
- BERTopic ainda é mantido?
- Manutenção ativa. O último commit de BERTopic foi em 5 de nov. de 2026.
- Para que posso usar BERTopic?
- Explorar grandes coleções de feedback de clientes, chamados de suporte ou respostas a pesquisas para encontrar temas recorrentes. Acompanhar como os tópicos de notícias, redes sociais ou resumos de pesquisas mudam ao longo do tempo. Analisar coleções de documentos em vários idiomas usando um modelo multilíngue de embeddings. Atribuir nomes de tópicos legíveis por pessoas a grupos de textos, gerados por um LLM.
- Como instalar BERTopic?
- Instale o BERTopic com pip: pip install bertopic Ajuste o modelo aos seus documentos usando fit_transform no Python
- Onde consigo BERTopic?
- O código-fonte e as instruções de instalação estão no GitHub: https://github.com/MaartenGr/BERTopic
Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.
Projetos relacionados
Biblioteca de tokenização de ponta e rápida, escrita em Rust, com bindings para Python e Node.js para pipelines de NLP e modelos de linguagem.
Componentes e arquiteturas do spaCy que integram modelos transformer do Hugging Face, como BERT, RoBERTa e XLNet, a pipelines do spaCy.
Repositório em formato de curso, em chinês, sobre fundamentos matemáticos de IA, machine learning, deep learning, Transformer, BERT e estudos de caso de competições, com código comentado e datasets.
Biblioteca de NLP robusta para Python e Cython, com tokenização, pipelines pré-treinados e modelos treinados para etiquetagem, análise sintática e reconhecimento de entidades.
Execute modelos Transformers da Hugging Face diretamente no navegador ou em runtimes JavaScript, sem servidor, usando ONNX Runtime.