Стажировка по проекту
Компания: Онлайн-гипермаркет «РусЭкспресс»
Разработка модели для задачи NER обработки тестовых данных и нахождения необходимых сущностей
Суть проекта
Задача
Для чего
Вводные данные
Выходные данные
Основная: разработка системы автоматизации обработки и отбора тендерных документов для компании "РусЭкспресс" с использованием нейронной сети или модели GPT.
Дополнительная. Разработка системы автоматизации обработки прайс-листов для компании "РусЭкспресс" с использованием нейронной сети или модели GPT
Цель модели состоит в извлечении релевантных данных для заказчика из материалов тендеров и прайс-листов с целью автоматического определения наименования товаров и их характеристик для ускорения обработки документов и исключения пропуска важной информации из-за человеческого фактора.
Исходные данные, предоставляемые участниками тендеров и поставщиками прайс-листов, не соответствуют общему стандарту. Каждый участник предоставляет информацию в собственном формате. Эти данные могут представлять собой текстовые файлы, электронные таблицы или изображения в различных форматах. Файлы также могут быть упакованы в различные типы архивов. Эти факторы замедляют обработку документов для принятия решений о участии в тендерах и сравнении условий поставщиков.
34562 объекта в форматах .txt .csv .docx .xlsx и других, большинство из которых в виде zip и rar архивов
1 команда: После обработки представляет выявленную информацию в виде стандартизованных формализованных таблиц, содержащих интересующие Заказчика данные
2 команда: • Успешная обработка (парсинг) более 98% входящих документов различных форматов
• Выделение целевых сущностей (NER) с высокой точностью (до 0.85)
Участники
1 команды проекта
  • Терещенко Алексей
    Тимлид проекта
    Алексей — руководитель группы разработчиков, отвечал за полную разработку проекта
  • Лещинский Игорь
    Помощник тимлида
    Игорь помогал руководителю команды организовывать процесс разработки проекта
  • Малицкий Андрей
    Помощник тимлида
    Андрей помогал руководителю команды организовывать процесс разработки проекта
  • Зайцев Валерий
    Группа НИКОС, Заместитель директора, Руководитель проекта Руниверс
    Участвовал в решении обеих задач:
    • Тендеры ( основная задача). Провел анализ исходных данных, количественный и качественный;
    • Участвовал в разработке проекта базового алгоритма работы с данными по проекту. Тестирование методов и алгоритмов работы с данными;
    • Преобразование данных к единому формату, очистка данных от дублей, структурный анализ данных, подсчет количества токенов, для оценки подходов к подаче данных в языковые модели;
    • -Подготовка датасетов для кластеризации и классификации тендерных данных, парсинг данных с сайта госзакупки;
    • Кластеризация данных с использованием метода DBSCAN без предварительно заданного количества кластеров;
    • Классификация данных тендеров на тендеры по закупке товаров и тендеры на оказание услуг и проведение работ на основе моделей бинарной классификации TF-IDF + RandomForestClassification и BERT- BertForSequenceClassification, DeepPavlov/rubert-base-cased-sentence;
    • Парсинг данных, получение и обработка тендерных заявок и преобразование полученных данных в формат Заказчика

    Прайс-листы (дополнительная задача от Заказчика):
    • Анализ исходных данных, количественный и качественный;
    • Разработка базового алгоритма работы с данными по проекту;
    • Тестирование методов и алгоритмов работы с данными;
    • Преобразование данных к единому формату, структурный анализ данных, проработка алгоритмов выделения ключевых сущностей;
    • Анализ, выявление ключевых признаков данных позволяющих идентифицировать прайс-листы в файлах. Алгоритмы очистки данных от пустых или не значимых документов, листов, полей и значений, алгоритмы преобразования данных;
    • Анализ параметров языковых моделей, влияющих на качество преобразования данных и выявления необходимых сущностей, модели gpt-3.5-turbo-0613 (основная модель), gpt-4 и gpt-4-turbo-2024-04-09;
    • Подбор параметров и содержания Промпта и анализ его влияния на качество выявления необходимых сущностей
    • Итоговый скрипт преобразования исходных прайс-листов в базовый формат прайс-листов по форме предложенной Заказчиком на основе выявления сущностей с использованием языковых моделей и проработанных алгоритмов преобразования данных
  • Выймов зорислав
    Бизнес-аналитик в ФГАУ НИИ Восход
    • Разработка и отладка скриптов автоматической обработки многоуровневых архивов разноформатных файлов с сортировкой по целевым классам с отбраковкой заведомо не релевантных задаче файлов;
    • Преобразование отсортированных файлов к единому формату для последующей автоматизированной обработки;
    • Разработка двух методов «интеллектуальная сортировки» файлов на основе содержания – выделение файлов с релевантным задаче содержанием;
    • Извлечение искомых сущностей из текстовых файлов с формализованным выводом результатов в формате Json;
    • Преобразование ответов LLM-модели в табличный вид формата XLS
  • Чернодедова Ольга
    Индивидуальный предприниматель
    Разработано несколько модулей на языке Питон для:
    • Автоматической корректной распаковки архивов .zip и .rar с исправлением кодировки в именах файлов, написанных кириллицей и исключением из обработки архивов с ошибками;
    • Анализа docx - файлов и выгрузки результатов обработки в таблицу, выгрузки таблиц в csv;
    • Модули преобразования файлов формата docx в файлы формата txt;
    • Проведено тестирование разных промптов для GigaChat с целью извлечения нужных сущностей из текстовых файлов
    • Помощь в подготовке датасета для обучения нейронной сети по классификации документов на тендеры по закупке товаров и тендеры на оказание услуг
  • Забигуллин Вадим
    Инженер по контрольно-измерительным приборам и системам автоматизации в нефтяной отрасли
    • Подготовка, предобработка и структурирование данных, с приведением к единообразному формату и исключение записей, выдающих ошибки;
    • Обучение модели spaCy на структурированных табличных данных тендеров для поиска сущностей в неструктурированных данных, таких как номер тендера, наименование объекта закупки, тип, код позиции, наименование товара, работы, услуги, их характеристики, единицы измерения, количество, цену за единицу и общую стоимость
Участники
2 команды проекта
  • Бугров Алексей
    Тимлид
    • Организация и планирование работ группы, координация работы группы по решению прикладных задач проекта
    • Экспертная поддержка участников стажировки
    • Разработка итоговых презентационных материалов по проекту
  • Аленникова Елена
    Помощник Тимлида
    • Подготовка ТЗ и организационных документов проекта
    • Ведение документации и коммуникаций с участниками
    • Координация вопросов группы
    • Организация работы по разметке документов в Doccano
    • Создание презентационных материалов проекта
  • Выборных Дмитрий
    врач
    • Разработка алгоритмов предобработки документов
    • Реализация различных вариантов конвертеров PDF-файлов (на базе easyOCR, Tesseract)
    • Реализация различных вариантов конвертеров DOCX-файлов в TXT, JSON и CSV
    • Обработка PDF-файлов: отбор сканированных файлов PDF
    • Разработка механизмов предобработки PDF (нормализация — повышение контрастности, выравнивание относительно горизонта Deskew) для более эффективного распознавания текста
    • Парсинг PDF в CSV, разработка механизмов «треккинга таблиц» — сохранение структуры таблиц в документах, где таблица на разных листах
    • Разметка документов в Doccano
  • Кобелев Данил
    Работает руководителем инженерной группы на НПЗ//участвовал в подготовке олимпийских игр в г. Сочи.
    • Разработка алгоритмов предобработки PDF-документов
    • Парсинг PDF (скан/фото документа) в CSV (Tabula), разработка механизмов «треккинга таблиц» — сохранение структуры таблиц в документах, где таблица на разных листах
    • Разметка документов в Doccano
  • Лисицын Кирилл
    Главный юрисконсульт ВИНК
    • Разметка документов в Doccano
  • Клевцов Павел
    • Разработка алгоритмов предобработки документов (all to CSV)
    • Разметка документов в Doccano
    • Эксперименты с SpaCy (NER) — точность выделения сущностей 0.85
    • Постобработка данных, формирование итоговой структуры данных (CSV to JSON)
    • Сборка/запуск итогового pipeline механизма обработки документов
    • Разработка рекомендаций для дальнейшего улучшения результатов NER
    • Запуск итогового pipeline на Streamlit
  • Иванова Татьяна
    • Анализ исходных данных в архивах
    • Обзор, анализ и оценка инструментов разметки данных для машинного обучения
    • Разметка документов в Doccano
  • Аганин Александр
    • Запуск итогового pipeline на Streamlit
    • Бизнес-аналитика данных с использованием PowerQuery — реализация отбора релевантных тендеров
  • Алимжанов Ермек
    преподаватель вуза
    • Эксперименты с SpaCy (NER) на предобученной модели на медицинском датасете
    • Автоматическая разметка текста с использованием обученной модели NER и оптимизация гиперпараметров
    • Разработка скрипта для автоматизации процесса
  • Кирикович Валерий
    • Работа с LangChain, конвертация из ZIP в Excel при помощи ezyzip для подачи в обработчик LangChain
    • Настройка API и тестирование модели
  • Середа Пётр
    • Разметка документов в Doccano
Благодарность университетУ