Skip to content

Solution for the 2023 International Hackathon (2nd place). MVP in the form of a software module using artificial intelligence technologies to automatically classify incoming messages from citizens and highlight named entities.

License

Notifications You must be signed in to change notification settings

artiebears13/Citizens_Appeals

 
 

Repository files navigation

Обработка обращений граждан

Общая информация

Проект выполнен составом команды AAA IT:

1. Andrei Donskoi donskoi.com@gmail.com
2. Artem Medvedev artiebears@mail.ru
3. Ali Ramazanov ali_ramazanov_2000@mail.ru
4. Ivan Butakov vanessbut@yandex.ru
5. Timofei Shshudro t.shshudro@alumni.nsu.ru

Описание проекта, актуальность и проблематика

Постановка задачи

На сегодняшний день работа по реагированию на неофициальные обращения от жителей организована следующим образом: существует система для автоматизированной агрегации таких общений. Через систему поступают обращения жителей из открытых источников, в основном это комментарии под различными постами в социальных сетях Вконтакте, Одноклассники и мессенджера Telegram, а также обращения в официальные аккаунты. Далее поступившие сообщения проходят классификацию и распределяются по соответствующим ведомственным структурам в зависимости от тематики обращения.

На данный момент эти процессы производятся людьми – модераторами. Таким образом, с одной стороны существует задержка по времени между обращением и передачей его в профильное ведомство, а с другой стороны присутствуют расходы на оплату труда модераторов. Автоматизация процессов позволит сократить расходы на их обеспечение, а также повысить скорость реакции со стороны профильных ведомств.

Актуальность решения данной задачи повышается еще и тем, что процессы по работе с обращениями протекают во всех регионах Российской Федерации, что говорит о потенциале масштабирования решения.

Решение кейса представляет собой прототип системы классификации и выделения именованных сущностей. При оценке будет учитываться точность классификации и выделения сущностей.

Техническая информация

Структура проекта
├── data
│   ├── images                  <------- Изображения
│   └── raw                     <------- Сырые данные
├── docs                        <------- Документация
├── models                      <------- Параметры моделей
├── notebooks                   <------- Ноутбуки с экспериментами
├── project                     <------- Основной код
│   └── source                   
│       ├── django_settings     <------- Конфиг сервиса
│       ├── ml                  <------- ML пайплайн
│       ├── string_processing   <------- Предобработка
│       ├── templates           <------- Шаблоны HTML-страниц
│       └── web                 <------- Сервис
└── tests                       <------- Тестирование

Системные требования:

OS Linux (протестировано на Ubuntu 22.04.3 LTS).

В качестве менеджера пакетов используется Poetry.
Все необходимые зависимости зафиксированы в конфигурационном файле — pyproject.toml.
Основные команды определены в Makefile.

Запуск тестирования
make tests
Вызов справочной информации
make help

Запуск проекта

Установка виртуальный среды и пакетов

При необходимости согласиться с чем-то в консоли, необходимо вписать y.

make setup
Добавление параметров модели

Загрузите параметры модели с гугл-диска: https://drive.google.com/drive/folders/1fy8hYLdW1pJfB4Mysfs18tn_m1ZxPiz9?usp=sharing

И положите их в папку models в корне проекта.

Запуск на Linux (стабильно)
make run_linux

Далее перейдите в браузере по адресу: http://127.0.0.1:8000/

Запуск на Windows
make run_windows

Далее перейдите в браузере по адресу: http://127.0.0.1:8000/

Пример работы

example

About

Solution for the 2023 International Hackathon (2nd place). MVP in the form of a software module using artificial intelligence technologies to automatically classify incoming messages from citizens and highlight named entities.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Jupyter Notebook 47.6%
  • Python 44.6%
  • HTML 4.3%
  • CSS 2.0%
  • Makefile 1.5%