Skip to content

Pragrammist/Diplom

Repository files navigation

Это мой диплом.

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

Для анализа используются две нейронки, одна возвращает эмбединги, другая нейронка анализирует эмоциональный окрас сообщения.

Каждая нейронка работает отдельным процессом, и под каждую нейронку создан grpc сервер на python, чтобы можно было использовать нейронку из c# с минимальной задержкой (на фоне работы нейронки она даже не чувствуется).

Каждая нейронка передает данные через GRPC Stream.

Главный сервер, на котором происходит анализ и кластеризация написан на c#. Чтобы обходить защиту от робота используется Playwright (на момент написания диплома это работало, сейчас перестало, надо искать другой способ) Чтобы систему сделать отказоустойчивой к различным исключениям, которые могут возникнуть: сеть сломалась, запрос не сработал и т.д используется Hangfire + mssql0 (изначальн использовался Redis, но после переноса разработки на windows оно сломалось с redis и работает с mssql) Чтобы сохранять промежуточные данные во время анализа, прочтенные комментарии, промежуточную кластеризацию и т.д используется redis Используется рекурсивные вызовы планировщика задач из Hangfire пока не закончатся комментарии и они не будут проанализированы Алгоритм анализа сложно описать словами, но если кратко:

  1. Происходит чтения и парсинг данных с яндекс маркета с помощью Hangfire и Playwright
  2. После окончания чтения происходит анализ комментариев с помощью алгоритма k-means. Каждая итерация данного алгоритма это одна задача в Hangfire
  3. Когда анализ закнчивается по SignalR отправляет событие что анализ завершен

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published