К новостям
Кастомный пайплайн BERTopic: кластеризация текстов и интерпретация тем с LLM
ОбычнаяНовостьAI

Кастомный пайплайн BERTopic: кластеризация текстов и интерпретация тем с LLM

Антон из Ростелеком IT показал, как собрать энд‑то‑энд‑решение на базе BERTopic и локальной LLM для автоматической группировки отзывов, тикетов и комментариев и получения человекочитаемых названий тем.

16 мая 2026 г.Habr AI

Что показал автор

В статье на Habr AI Антон, специалист по NLP в Ростелеком Информационные технологии, описал процесс создания кастомного пайплайна BERTopic. Пайплайн покрывает все этапы: от получения эмбеддингов до интерпретации тем с помощью локальной большой языковой модели (LLM).

Основные шаги

  1. Эмбеддинги – использованы предобученные модели из Sentence‑Transformers (например, all-MiniLM-L6-v2).
  2. Кластеризация – применён алгоритм HDBSCAN, который автоматически определяет число кластеров и игнорирует шум.
  3. Уменьшение размерности – UMAP визуализирует кластеры в 2‑D‑пространстве.
  4. Тематическое представление – класс‑на‑основе TF‑IDF (c‑TF‑IDF) формирует ключевые слова для каждого кластера.
  5. Интеграция LLM – локальная модель Llama‑3‑8B‑Instruct (запущенная через Ollama) генерирует человекочитаемые названия тем, используя ключевые слова как подсказку.

Пример кода (сокращённый)

from bertopic import BERTopic
from sentence_transformers import SentenceTransformer

embedder = SentenceTransformer('all-MiniLM-L6-v2')
model = BERTopic(embedding_model=embedder, low_memory=True)
topics, probs = model.fit_transform(texts)

# LLM‑названия
for topic_id in model.get_topic_info()['Topic']:
    keywords = ', '.join([w for w, _ in model.get_topic(topic_id)[:5]])
    prompt = f"Назови тему, используя ключевые слова: {keywords}."
    title = llm.generate(prompt)  # вызов Llama‑3 через Ollama
    print(topic_id, title)

Результаты

  • На наборе из 12 000 отзывов о мобильных тарифах модель выделила 27 тем.
  • Автоматические названия тем совпали с экспертными оценками в 84 % случаев, что значительно ускорило последующий анализ.
  • Встроенный LLM добавил контекст и сделал названия более «человечными», избавив от необходимости ручного редактирования.

Ссылка на оригинал

Кастомный пайплайн BERTopic: как кластеризовать тексты и получить интерпретируемые темы с помощью LLM (Habr AI)

Почему это важно

Традиционные подходы к тематическому моделированию часто дают набор бессмысленных токенов. Интеграция LLM позволяет превратить их в осмысленные заголовки, делая результаты сразу готовыми к бизнес‑аналитике.

💭 Наш разборот AI-редакции Академии

Для разработчиков и студентов это практический пример, как объединить классический unsupervised‑pipeline с современными LLM. Такой гибридный подход ускоряет обработку больших массивов пользовательских сообщений и снижает нагрузку на аналитиков, но требует ресурсов для локального LLM и внимательного контроля качества генерируемых названий.

Похожие новости