Телефон: 8-800-350-22-65
Напишите нам:
WhatsApp:
Telegram:
MAX:
Прием заявок круглосуточно
График работы офиса: с 9.00 до 18.00 Нск (5.00 - 14.00 Мск)

Статья опубликована в рамках: CXX Международной научно-практической конференции «Экспериментальные и теоретические исследования в современной науке» (Россия, г. Новосибирск, 29 декабря 2025 г.)

Наука: Информационные технологии

Скачать книгу(-и): Сборник статей конференции

Библиографическое описание:
Жданов Д.Е. ПРИМЕНЕНИЕ ИСКУССТВЕННОГО ИНТЕЛЛЕКТА ДЛЯ АВТОМАТИЧЕСКОГО ОБЕСПЕЧЕНИЯ КАЧЕСТВА ДАННЫХ В ETL ПРОЦЕССАХ В ОБРАЗОВАНИИ // Экспериментальные и теоретические исследования в современной науке: сб. ст. по матер. CXX междунар. науч.-практ. конф. № 12(112). – Новосибирск: СибАК, 2025. – С. 6-19.
Проголосовать за статью
Дипломы участников
У данной статьи нет
дипломов

ПРИМЕНЕНИЕ ИСКУССТВЕННОГО ИНТЕЛЛЕКТА ДЛЯ АВТОМАТИЧЕСКОГО ОБЕСПЕЧЕНИЯ КАЧЕСТВА ДАННЫХ В ETL ПРОЦЕССАХ В ОБРАЗОВАНИИ

Жданов Дмитрий Евгеньевич

студент-магистр, МПГУ (бывш. МПГИ им. Ленина),

РФ, г. Москва

АННОТАЦИЯ

Целью исследования является оценка возможностей применения ИИ-агентов для обеспечения качества данных в цепочке поставки данных в хранилище (DWH) для организации. В работе использовались синтетические данные о студентах и языковая модель для реализации ИИ-агентов, оценивающих точность, полноту и достоверность данных. В ходе исследования и разработки были выявлены основные параметры качества данных, после чего они были реализованы на языке программирования Python, используя модель GigaChat от Сбербанка. Дальнейшая перспектива исследования заключается в обеспечении максимально возможного уровня качества данных в организации с помощью искусственного интеллекта.

ABSTRACT

The purpose of the study is to evaluate the possibilities of using AI agents to ensure data quality in the data Warehouse Supply chain (DWH) for an organization. The work used synthetic student data and a language model to implement AI agents that evaluate the accuracy, completeness, and reliability of the data. During the research and development, the main data quality parameters were identified, after which they were implemented in the Python programming language using the GigaChat model from Sberbank. The further perspective of the research is to ensure the highest possible level of data quality in an organization using artificial intelligence.

 

Ключевые слова: ИИ агенты; программирование; качество данных; ETL; Хранилища данных; Образование

Keywords: AI agents; programming; data quality; ETL; Data Warehouse; Education

 

Введение

Сегодня существуют различные типы СУБД, которые подходят для большинства задач, необходимых бизнесу и государству. По данным International Data Corporation, объем данных, генерируемых компаниями, ежегодно растет в среднем на 61%, что создает значительные трудности при их проверке и анализе [1]. Поэтому в текущей ситуации гораздо эффективнее инвестировать ресурсы в технологии обеспечения качества данных: необходимо придумывать методологии и инструменты, которые позволят увеличить общую оценку качества данных организации - этим и обуславливается проведение данного исследования.

Цель исследования. Целью исследования является оценка возможностей применения ИИ агентов для обеспечения качества данных в цепочке поставки данных в хранилище (DWH) для организации.

В отличие от других исследований, которые предлагают методологию реализации такой системы или математическую модель оценки качества данных, например, как в работах “Разработка системы управления качеством и аудита достоверности данных с применением ИИ” Гаранина И. В. [1] и “Оценка качества данных информационных систем” Гадасина Д. В., Бессолицына А. Д., Гадасина Д. Д. [2] предлагается практическая реализация такой системы на основе современных LLM моделей и новый подход к архитектуре хранилища данных для обеспечения максимального уровня качества данных в организации.

Материалы и методы исследования

В качестве материалов для проведения исследования использовались:

  1. Синтетически сгенерированные образовательные данные: в соотношении 80:20, то есть используется 80% абсолютно корректных и верных данных, 20% данные имеющие неточности, как грубые, так и мелкие с помощью LLM модели DeepSeek-V3.
  2. Языковая модель (LLM) от Сбера, доступная в РФ - GigaChat.
  3. Язык программирования Python, с библиотеками по работе с данными и в частности использование библиотеки gigachat для разработки ИИ агентов.

Произведено моделирование работы системы в реальных условиях внутри организации: с учетом реальной нагрузки на систему.

Результаты исследования и их обсуждение

В общем смысле, можно сказать, что качество данных - характеристика, показывающая степень пригодности данных к использованию. То есть, качество данных - это некоторая оценка, например от 0 до 1, или от 1 до 10 - не имеет значения, которая складывается из следующих параметров (см. таблицу 1).

Таблица 1.

Параметры качества данных

Параметр

Описание параметра

Точность (T)

Оценка отклонения данных от ожидаемых или реальных показателей.

Полнота (F)

Оценка объема, глубины и широты данных.

Согласованность (C)

Оценка непротиворечивости данных, целостности соответствующих идентификационных ссылок.

Достоверность (R)

Оценка достоверности данных, то есть насколько информация правдива.

Своевременность (A)

Оценка актуальности данных для определенной задачи.

Составлено автором по [2].

 

Пусть P - это оценка качества данных, тогда введем , которая складывается из оценки каждого параметра качества данных, где .

Далее адаптируем эти оценки, чтобы они стали пригодными для анализа LLM моделью. Необходимо создать подробную цепочку действий ИИ агента и составить грамотные промпт-запросы на каждом этапе, чтобы обеспечить высокое качество получаемых результатов. Это очень важно, потому что качество ответа напрямую зависит от качества промта и контекста, который составил пользователь.

Для оценки точности (T), ясно, что ни ИИ, ни мы сами не знаем истинные данные сразу, для этого нужно идти в систему источник и сравнивать данные, однако мы точно можем определить примерные показатели каждой метрики используя LLM вывод нейронной сети относительно текущих данных, на основе её базы знаний.

Для оценки своевременности (A) все гораздо проще. Если данные поступили в указанный промежуток времени, например, с 9 до 10 (данные уже есть в базе данных), то ставим оценку 1, если идет смещение на +1 час, оценка уменьшается 1/12 (~0.08) и так далее, если данные не поступили до конца дня, то оценка равна 0. [2] В измерении этой оценки LLM модель будет избыточна, так как это можно посчитать самостоятельно.

Для оценки достоверности (R) можно поступить таким же образом, как и для оценки точности, но спрашивать LLM напрямую: “Как ты думаешь возможен ли такой показатель исходя из текущей образовательной ситуации: точный, не похож на правду, похож на правду”. Тогда в ответ мы получим полностью размеченный датасет данных, который мы можем далее анализировать. Сюда входит оценка адекватности показателя. Оценка достоверности = (кол-во правдивых значений + точных)/(кол-во всех значений).

Далее необходимо проанализировать полноту (F) данных. Данные являются полными по определению, если они удовлетворяют двум условиям:

  1. Сущность имеет достаточное кол-во атрибутов для анализа.  Под сущностью подразумевается некоторый объект системы.
  2. Кол-во строк/Мб/Гб данных совпадает с кол-вом, находящимся в системе-источнике.

Если кол-во атрибутов 1 сущности достаточно для анализа бизнес-процесса, то условие пункта 2 соблюдено, иначе не соблюдено. Оценка этого пункта может быть равна кол-ву текущих атрибутов деленное на необходимое кол-во атрибутов одной сущности.

Для первого пункта ИИ-агент сможет помочь проанализировать недостающие значения объекта 1 сущности и достаточность этого для анализа на примере эталонного значения.

Ежедневно ETL или ELT процесс загружает данные в базу данных. Искусственный интеллект поможет подобрать необходимое значение, если оно было пропущено и его можно найти в интернете или базе знаний образовательного учреждения.

Для оценки согласованности (C) стоит уточнить, что она работает не для всех СУБД на рынке. Например, одна из главных аналитических баз мира - ClickHouse не поддерживает ссылочную целостность, в отличие, например, от PostgreSQL. В общем смысле, эту оценку сможет поставить только профессиональный разработчик баз данных и аналитик.

Таким образом, принимая в расчет методологию работы LLM моделей различных видов, в реализации прототипа автоматизированной системы проверки качества данных с помощью ИИ необходимо составлять качественный промт-запрос под каждый этап проверки качества данных и создавать отдельных ИИ-агентов. Общая схема работы такой системы может быть представлена на рисунке 1.

 

[составлено автором]

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

 

На рисунке представлен направленный ацикличный граф, который имеет соответственно только вход и выход, в этом и состоит концепция LangChain проекта. Также в ходе реализации приложения по проверки качества данных на базе ИИ, автору потребуется и другая концепция в виде конечного автомата (State Machine) [3]. Это классический и мощный паттерн проектирования, который хорошо подходит для управления циклическими и многошаговыми процессами - проект LangGraph [4].

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

во-первых мы можем так сделать, но исчезнет гибкость решения, то есть пропадет возможность подкручивать эффективность модели.

Для исследования применения ИИ в ETL/ELT процессы был взят следующий датасет из 20 полей предметной области образования (см. рисунок 2).

 

[составлено автором]

Рисунок 2. Датасет из студентов и основных показателей по ним

 

Данные на рисунке 2 сгенерированы в соотношении 80:20, где 80% - качественные данные, а 20% некачественные.

Структура датасета и типы переменных следующие:

  1. student_id - уникальный идентификатор студента (категориальная переменная)
  2. email - электронная почта студента (категориальная переменная)
  3. phone_number - мобильный номер телефона студента (категориальная переменная)
  4. date_of_birth - дата рождения студента (категориальная переменная)
  5. age - возраст студента (числовая переменная)
  6. admission_year - год поступления в учебное заведение (числовая переменная)
  7. faculty - факультет, на котором учится студента (категориальная переменная)
  8. group_name - наименование группы обучения (категориальная переменная)
  9. gpa - средний балл студента (числовая переменная)
  10. last_test_score - балл за последний сданный экзамен или тест (числовая переменная)
  11. attendance_percent - процент посещаемости занятий (числовая переменная)
  12. scholarship_amount - размер стипендии в рублях (числовая переменная)
  13. extracurricular_activities - внеучебные активности (категориальная переменная)
  14. on_probation - находится ли студент на академическом испытательном сроке (категориальная переменная)
  15. has_dormitory - проживает ли студент в общежитии (категориальная переменная)
  16. enrollment_status - текущий статус обучения студента (категориальная переменная)
  17. preferred_language - предпочитаемый язык для обучения или язык, на котором обучается студент (категориальная переменная)
  18. mentor_id - идентификатор ментора (категориальная переменная)
  19. average_study_hours - среднее количество часов, которое тратит на самостоятельное обучение студент (числовая переменная)
  20. library_visits_per_month - среднее количество посещений библиотеки в месяц (числовая переменная)

Итого в датасете содержится: 8 числовых переменных и 12 категориальных переменных.

Так как мы не получали данные датасета по API или иным способом, а собрали синтетически, то предположим, что оценка своевременности данных уже равна 1. Тоже самое касается и оценки согласованности данных, причина была описана ранее, поставим также оценку 1. Таким образом, ИИ останется решить задачу с 3 другими параметрами оценки качества данных.

Оценка точности данных

Для проверки точности данных на рынке образования был написан класс PrecisionAiAgent, который содержал в себе следующие методы:

  1. send_gigachat_request_precision - отправляем сообщение в модель.
  2. read_dataset_edtech_data_prompt - составляем промпт для чтения данных.
  3. check_dataset_correct_prompt - составляем промпт для первой проверки корректности данных.
  4. add_solution_gpt - составляем промпт с просьбой, чтобы модель предложила свои данные, вместо некачественных.
  5. get_accuracy_assessment - получение итоговой оценки точности данных.
  6. create_agent_chain - создаем цепочки вызовов из 2, 3, 4, 5 пунктов

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

data_error_standart = {

    "scholarship_amount": 1500,

    "average_study_hours": 15,

    "library_visits_per_month": 10

}

GigaChat модель показала следующие результаты при оценке данных датасета на точность (см. рисунок 3).

 

[составлено автором]

Рисунок 3. Оценка точности данных моделью GigaChat

 

Результаты демонстрируют эффективность модели. Так она определила три основных проблемы связанные с точностью данных:

  1. Неправильные значения полей (можно назвать их, как валидационные ошибки)
  2. Логические ошибки - наиболее значимый аспект, так как при больших объемах данных невозможно учесть все потенциальные ошибки. В случае с GigaChat, то модель самостоятельно описала корректно ошибки в данных и указала на них.
  3. Аномальные значения или выбросы в данных. Модель подсветила и их.

В конце промпта по запросу автора дана оценка точности данных, которая составила 3/10 или 0.3 и дополнена комментарием, что значительная доля данных содержит некорректные или отсутствующие данные.

Оценка полноты данных

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

Ранее в статье автором было дано еще один критерий полноты данных: сущность имеет достаточное кол-во атрибутов для анализа. Цель данных, которая была передана в промпт запросе - понять факторы от которых зависит успех в обучении.

Для проверки полноты данных на рынке образования был написан класс FulnessAgent, который содержал в себе следующие методы:

  1. send_gigachat_request_fulness - отправляем сообщение в модель.
  2. read_dataset_edtech_data_prompt - получаем промпт запрос для оценки полноты данных.
  3. create_agent_chain - создаем цепочку вызовов из 1 и 2 пункта.

GigaChat модель показала следующие результаты при оценке данных на полноту (см. рисунок 4).

 

[составлено автором]

Рисунок 4. Оценка полноты данных моделью GigaChat

 

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

Модель дала данным оценку полноты данных равную 0.7. Учитывая предположение, которое было сделано ранее по поводу кол-ва строк, итоговая оценка будет равна (0.7 + 1)/2 = 0.85, что в целом соответствует действительности.

Оценка достоверности данных

Для проверки достоверности данных был написан класс ValidityAgent, который содержал в себе следующие методы:

  1. send_gigachat_request_validity - отправляем сообщение в модель.
  2. read_dataset_edtech_data_prompt - получаем промпт запрос для оценки достоверности данных. Формула расчета достоверности данных была представлена ранее в статье.
  3. get_validity_assessment - получение итоговой оценки достоверности данных.
  4. create_agent_chain - создаем цепочку вызовов по пункту 2 и 3.

GigaChat модель показала следующие результаты при оценке достоверности данных, которые представлены на рисунке 5-6.

 

[составлено автором]

Рисунок 5. Анализ и оценка качества датасета по критерию достоверности

 

[составлено автором]

Рисунок 6. Анализ и оценка качества датасета по критерию достоверности (продолжение)

 

Можно увидеть каким образом модель разметила данные по заданным параметрам: из 33 студентов группы правильными оказались 14 записей и оценка по критерию достоверности составила 0.42.

Таким образом, в результате применения модели искусственного интеллекта в виде GigaChat были получены следующие результаты:

  1. Общая оценка качества данных (P)  синтетического датасета полученная с помощью модели:

(1 + 1 + 0.42 + 0.85 + 0.3)/5 = 0.714

  1. Эта оценка является очень близкой к сгенерированным данным, которые имеют 80% корректных строк.
  2. Таким образом, модели искусственного интеллекта GigaChat и мощнее могут справиться с автоматическим обеспечением качества данных в ETL процессах.

Проведенное исследование расширяет и дополняет рассмотренные ранее статьи. Полный код представленной разработки можно найти на github автора [5]. Дальнейшая перспектива исследования заключается в обеспечении максимально возможного уровня качества данных в организации с помощью искусственного интеллекта: возможность внедрения ИИ не только в ETL/ELT процессах, но и на ранних этапах, например, при вводе данных в систему-источник пользователями.

Заключение

В статье рассмотрена возможность применения ИИ агентов для обеспечения качества данных в цепочке поставки данных в хранилище  для организации. Также определены основные компоненты качества данных: точность, полнота, достоверность, своевременность, согласованность. На основе этих компонентов были разработаны правила или промпты для ИИ модели, которые далее отправлялись в виде запроса в GigaChat. Полученные результаты свидетельствовали о том, что AI допустимо использовать для обеспечения качества данных в системе. Полный код запуска модели и тестов можно найти на платформе github.

Сделан вывод, что дальнейшие исследования в этой области смогут привести отрасль анализа данных к потребности использования ИИ в ETL/ELT процессах и стать основой для разработки коммерческих продуктов для бизнеса и образования. Так как ручная проверка достоверности аналитических расчетов с ростом объемов информации и усложнением используемых методов вычисления часто оказывается невозможной [6].

 

Список литературы:

  1. И. В. Гаранин. Разработка системы управления качеством и аудита достоверности данных с применением ИИ. 2025, 9 с. URL: https://www.elibrary.ru/download/elibrary_81197744_60381600.pdf (дата обращения: 05.10.2025).
  2. Д. В. Гадасин, А. Д. Бессолицын, Д. Д. Гадасин. Оценка качества данных информационных систем. 2024, 4 с. URL: https://media-publisher.ru/wp-content/uploads/DSPA-2-2024.pdf#page=4 (дата обращения: 05.10.2025).
  3. Тращенко C. Современный ReAct-агент: подробное руководство по созданию с помощью LangGraph // Habr. URL: https://habr.com/ru/companies/sberbank/articles/934938/ (дата обращения: 05.10.2024). 
  4. Крестников К.  Гайд: AI-агент на GigaChat и LangGraph (от архитектуры до валидации) на примере Lean Canvas // Habr. URL: https://habr.com/ru/companies/sberbank/articles/941340/ (дата обращения: 05.10.2024). 
  5. Жданов Д. Е. ai_for_data_quality // GitHub. URL: https://github.com/ZhDmitriy/ai_for_data_quality (дата обращения: 05.10.2025).
  6. В.Г. Старовойтов, Н.В. Кузнецов, Н.Е. Котова, Н.В. Лапенкова. Проблема обеспечения качества данных в информационных системах государственного управления. 2019, 174 с. URL: https://s.fundamental-research.ru/pdf/2019/11/42607.pdf (дата обращения: 05.10.2025).
Проголосовать за статью
Дипломы участников
У данной статьи нет
дипломов

Оставить комментарий