Библиотека Python для быстрого CPU-кластеризации больших высокоразмерных embedding-векторов с API в стиле scikit-learn.
MaartenGr/BERTopic
Библиотека Python для тематического моделирования: она объединяет эмбеддинги трансформеров и c-TF-IDF, чтобы выделять понятные темы в текстах.
- Звёзды
- 7,942
- Форки
- 931
- Открытые issues
- 478
- Последний коммит
- позавчера
Что это?
BERTopic — библиотека Python для тематического моделирования. Она строит эмбеддинги документов с помощью моделей-трансформеров, снижает их размерность, группирует документы в кластеры, а затем описывает каждый кластер наиболее характерными словами с помощью процедуры class-based TF-IDF. В результате получается набор тем с понятными описаниями по ключевым словам, а также распределение документов по темам и вероятности для каждого документа.
Библиотека устроена модульно. Каждый этап — в том числе выбор модели для построения эмбеддингов, снижение размерности, кластеризация, токенизация, взвешивание терминов и представление тем — можно заменить или отключить. Представления тем можно уточнять с помощью ключевых слов в стиле KeyBERT, меток, сгенерированных LLM, например моделями OpenAI, или нескольких представлений одновременно с помощью моделирования с несколькими аспектами.
Помимо базового обучения BERTopic поддерживает управляемое, supervised-, semi-supervised-, zero-shot-, иерархическое, динамическое (с учётом времени), поклассовое, онлайн- и мультимодальное тематическое моделирование. Библиотека также предлагает интерактивные визуализации, например карту тем в стиле LDAvis, а ещё методы для сохранения, загрузки и объединения моделей.
Ключевые возможности
- 01Строит темы на основе эмбеддингов трансформеров, снижения размерности в стиле UMAP и кластеризации в стиле HDBSCAN.
- 02Описывает темы ключевыми словами c-TF-IDF и позволяет уточнять их представлениями на основе KeyBERT или LLM.
- 03Поддерживает управляемое, supervised-, zero-shot-, иерархическое, динамическое и онлайн-тематическое моделирование.
- 04Предоставляет интерактивные визуализации тем, документов, иерархий и изменений тем во времени.
- 05Позволяет заменить или отключить любой этап конвейера.
Сценарии использования
- Изучение больших массивов отзывов клиентов, обращений в поддержку или ответов на опросы для выявления повторяющихся тем.
- Отслеживание изменений тем в новостях, социальных сетях или аннотациях научных работ с течением времени.
- Анализ коллекций документов на нескольких языках с помощью многоязычной модели эмбеддингов.
- Присвоение кластерам текстов понятных человеку названий тем, сгенерированных LLM.
Быстрый старт
- 1
Установите BERTopic с помощью pip
pip install bertopic - 2
Обучите модель на документах с помощью fit_transform в Python
Что важно знать
- При стандартной установке добавляются тяжёлые зависимости, такие как transformers и UMAP. Чтобы уменьшить занимаемое место, нужна облегчённая установка.
- Для некоторых дополнительных функций разметки тем, например представления OpenAI, требуется API-ключ платного сервиса.
В подборках
Темы
Частые вопросы
- Что такое BERTopic?
- Библиотека Python для тематического моделирования: она объединяет эмбеддинги трансформеров и c-TF-IDF, чтобы выделять понятные темы в текстах. BERTopic — библиотека Python для тематического моделирования. Она строит эмбеддинги документов с помощью моделей-трансформеров, снижает их размерность, группирует документы в кластеры, а затем описывает каждый кластер наиболее характерными словами с помощью процедуры class-based TF-IDF. В результате получается набор тем с понятными описаниями по ключевым словам, а также распределение документов по темам и вероятности для каждого документа.
- BERTopic можно использовать бесплатно? Какая у него лицензия?
- BERTopic распространяется с открытым исходным кодом под лицензией MIT. Перед использованием в коммерческих продуктах проверьте условия лицензии.
- BERTopic всё ещё поддерживается?
- Активно поддерживается. Последний коммит в BERTopic — 5 нояб. 2026 г..
- Для чего можно использовать BERTopic?
- Изучение больших массивов отзывов клиентов, обращений в поддержку или ответов на опросы для выявления повторяющихся тем. Отслеживание изменений тем в новостях, социальных сетях или аннотациях научных работ с течением времени. Анализ коллекций документов на нескольких языках с помощью многоязычной модели эмбеддингов. Присвоение кластерам текстов понятных человеку названий тем, сгенерированных LLM.
- Как установить BERTopic?
- Установите BERTopic с помощью pip: pip install bertopic Обучите модель на документах с помощью fit_transform в Python
- Где скачать BERTopic?
- Исходный код и инструкции по установке — на GitHub: https://github.com/MaartenGr/BERTopic
Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.
Похожие проекты
Быстрая современная библиотека токенизации на Rust с привязками для Python и Node.js для NLP- и языковых модельных пайплайнов.
Компоненты и архитектуры spaCy для интеграции в пайплайны spaCy моделей-трансформеров Hugging Face, таких как BERT, RoBERTa и XLNet.
Учебный репозиторий на китайском языке: основы математики для ИИ, машинное и глубокое обучение, Transformer, BERT и разборы конкурсных задач с пояснениями к коду и датасетами.
Мощная NLP-библиотека для Python и Cython: токенизация, предобученные пайплайны и модели для разметки, синтаксического анализа и распознавания сущностей.
Запускайте модели Hugging Face Transformers прямо в браузере или JavaScript-среде без сервера — с помощью ONNX Runtime.