Sobre o projeto

BERTopic é uma técnica de modelagem de tópicos que utiliza embeddings de transformers e c-TF-IDF para criar clusters densos, produzindo tópicos facilmente interpretáveis enquanto mantém palavras importantes nas descrições dos tópicos. É distribuído como um pacote Python (Python 3.10+) sob a licença MIT, com um artigo arXiv acompanhante. Fluxo de trabalho principal: os documentos são incorporados, os embeddings são reduzidos em dimensionalidade (tipicamente UMAP), agrupados em tópicos (tipicamente HDBSCAN), tokenizados, ponderados com c-TF-IDF e, finalmente, representados como descrições de tópicos. Cada uma dessas etapas é modular e pode ser trocada ou removida, permitindo que os usuários construam pipelines personalizados ou explorem técnicas alternativas de modelagem de tópicos além da padrão. As variações suportadas de modelagem de tópicos incluem guiada, supervisionada, semissupervisionada, manual, distribuições de múltiplos tópicos, hierárquica, baseada em classes, dinâmica (tópicos ao longo do tempo), online/incremental, multimodal, multiaspecto, geração de texto/LLM, zero-shot, fusão de modelos e palavras-semente. O README também destaca suporte multilíngue por meio de uma configuração de idioma que cobre mais de 50 idiomas. As representações de tópicos podem ser refinadas com opções como KeyBERTInspired ou com modelos baseados em LLM (por exemplo, modelos OpenAI) para gerar rótulos, resumos, frases e palavras-chave. Representações multiaspecto permitem modelar várias representações simultaneamente. Os métodos comuns da API incluem fit, fit_transform, transform, get_topic, get_topics, get_topic_freq, get_topic_info, get_document_info, get_representative_docs, update_topics, generate_topic_labels, set_topic_labels, merge_topics, reduce_topics, reduce_outliers, find_topics, save e load. Atributos públicos que terminam com sublinhado expõem tópicos, probabilidades, tamanhos de tópicos, representações de tópicos, a matriz c-TF-IDF, aspectos de tópicos, rótulos, embeddings de tópicos e documentos representativos. Os métodos de visualização incluem visualize_topics, visualize_documents, visualize_hierarchical_documents, visualize_hierarchy, get_topic_tree, visualize_barchart, visualize_heatmap, visualize_term_rank, visualize_distribution, visualize_topics_over_time e visualize_topics_per_class. A instalação está disponível via uv ou pip, com extras opcionais para backends de embedding (flair, gensim, spacy, use), visão e uma instalação leve sem transformers, UMAP ou HDBSCAN. Documentação, notebooks Colab e exemplos Kaggle estão vinculados no README.