Сначала вам нужно будет сгенерировать bert embeddidngs для предложений.
Служба bert-as-service предоставляет очень простой способ создания вложений для предложений.
Вот как вы можете привязать векторы Берта к списку предложений, которые вам нужно объединить. Это очень хорошо объясняется в репозитории bert-as-service:
https://github.com/hanxiao/bert-as-service
Установка:
pip install bert-serving-server # server
pip install bert-serving-client # client, independent of `bert-serving-server`
Скачать одну из предварительно обученных моделей можно по адресу https://github.com/google-research/bert
Запустить сервис:
bert-serving-start -model_dir /your_model_directory/ -num_worker=4
Генерация векторов для списка предложений:
from bert_serving.client import BertClient
bc = BertClient()
vectors=bc.encode(your_list_of_sentences)
Это даст вам список векторов, вы можете записать их в CSV и использовать любой алгоритм кластеризации, так как предложения сводятся к числам.