Готовим данные для LLM: открытые инструменты для нормализации, очистки и не только. Big Data.. Big Data. Data Engineering.. Big Data. Data Engineering. llm.. Big Data. Data Engineering. llm. MWS.. Big Data. Data Engineering. llm. MWS. MWS GPT.. Big Data. Data Engineering. llm. MWS. MWS GPT. Блог компании MWS.. Big Data. Data Engineering. llm. MWS. MWS GPT. Блог компании MWS. датасет.. Big Data. Data Engineering. llm. MWS. MWS GPT. Блог компании MWS. датасет. искусственный интеллект.. Big Data. Data Engineering. llm. MWS. MWS GPT. Блог компании MWS. датасет. искусственный интеллект. Машинное обучение.
Готовим данные для LLM: открытые инструменты для нормализации, очистки и не только - 1

Компании активно внедряют у себя решения на основе больших языковых моделей: боты техподдержки, умный поиск по базе знаний, выявление мошенников в диалоге или HR-ассистенты.

Но самостоятельно вывести модель в полноценное продакшн-использование не так просто. К тому же для разных сценариев нужно тестировать разные модели. Это требует больших усилий. Чтобы уменьшить порог входа в эту технологию, мы создали собственную платформу — MWS GPT. Под капотом — наша инфраструктура с GPU.

О том, как тестировать разные LLM в MWS GPT и запускать ИИ-агентов без кода скоро расскажем на вебинаре — присоединяйтесь.

Для обучения LLM требуются огромные и разнообразные датасеты. Однако качество данных часто важнее простого объёма: хорошие данные позволяют модели лучше обобщать и снижать ошибки.  К счастью, есть открытые решения, способные помочь с их обработкой.

Сегодня делимся подборкой систем контроля качества ML-датасетов, проектом для автоматической категоризации и системой контроля версий для наборов данных.

dlt

Python-библиотека под лицензией Apache 2.0 для автогенерации датасетов на основе неструктурированных данных из различных источников: SQL- и векторных хранилищ, озёр данных, локальных БД и так далее. Ее представили разработчики из dltHub в 2022 году. 

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

Так, dlt преобразует данные и самостоятельно координирует миграцию схем, а также поддерживает написание «контрактов» для тонкого контроля. 

В то же время dlt умеет в инкрементальную загрузку — пользователь может повторно загружать не все данные разом, а лишь изменённые или новые. Само же содержимое датасетов нормализуется перед каждым запуском. 

Есть и модуль мониторинга данных — можно отобразить число загруженных в таблицу строк и время загрузки содержимого датасетов. Также стоит отметить, что для этой библиотеки доступна браузерная демоверсия, в которой показана загрузка Python-структуры в DuckDB.

Databonsai

Python-библиотека с лицензией MIT для разметки и очистки данных с помощью LLM. Решение предложил инженер Алвин Райанпутра, который также выступает одним из разработчиков инструмента для извлечения информации из документов Reducto.

Databonsai способен разбивать неструктурированные данные на заданные пользователем категории. В то же время он поддерживает пакетную категоризацию, то есть обрабатывает множество запросов одновременно и экономит токены. В репозитории есть пример категоризации датасета с заголовками новостей по темам: «Погода», «Спорт», «Технологии» и так далее. При необходимости (используя класс MultiCategorizer) можно присваивать одной записи разные категории.

Кроме категоризации данных, databonsai может выполнять их преобразование. Для этих целей существует специальный класс — BaseTransformer. Он отвечает за работу с промптами для LLM: проверяет их целостность, принимает на вход примеры преобразований для повышения точности. Перечисленные возможности дополняет другой класс — ExtractTransformer. Он позволяет назначить собственный шаблон для вывода структурированных данных.

Lilac

Инструмент для проверки и обработки неструктурированных данных перед тонкой настройкой LLM-моделей. Первая версия Lilac вышла в 2023 году под лицензией Apache 2.0. Его разработали два бывших инженера Google, проработавшие в компании больше десяти лет. Они занимались повышением качества данных для машинного обучения и регулярно сталкивались с тем, что в неструктурированных датасетах (с контентом на естественном языке или изображениями) было сложно находить ошибки и неточности. По сути, Lilac был разработан, чтобы решить эту проблему. 

Стоит отметить, что в 2024 году проект Lilac приобрела крупная ИТ-компания Databricks и интегрировала Lilac в собственные решения. И с конца июля  2025 года репозиторий проекта переведен в read-only. Однако демо Lilac все еще доступно на платформе HuggingFace Spaces для всех желающих. 

Инструмент умеет фильтровать и кластеризовать данные, добавлять к ним аннотации. Есть возможность сопоставить две версии одного и того же поля — до и после преобразования данных, чтобы отследить внесенные в них изменения. Функция редактирования позволяет добавлять в датасет новые столбцы, применять изменения ко всем строкам разом, а также просматривать информацию о происхождении данных.

Lilac реализует несколько типов расширенного поиска — например, по ключевым словам или «концепциям». Так, инструмент способен проанализировать текст на положительные или отрицательные коннотации. Можно описать собственный концепт — для этого Lilac необходимо обучить на примерах. 

Наборы данных можно загружать из источников HuggingFace, Parquet, CSV, JSON, SQLite и многих других. Стоит отметить и классы Signal, отвечающие за обогащение метаданными. Сигналы в Lilac — это как простые, так и сложные Python-функции или комплексные модели машинного обучения.

Oxen

Система контроля версий для работы с данными для машинного обучения — CSV-файлами с миллионами строк или каталогами документов. Oxen был опубликован в 2022 году под лицензией Apache-2.0. Его представили программисты из компании Oxen.ai, которые также регулярно публикуют обучающие статьи по машинному обучению и анализируют последние научные работы в сфере ИИ.

По мнению представителей Oxen, система управления версиями объёмных датасетов Git LFS работает слишком медленно, что критично в сценариях машинного обучения, когда наборы данных могут включать в себя миллионы файлов. Поэтому при создании Oxen программисты уделили особое внимание скорости и производительности.

В целом интерфейс Oxen похож на Git, однако решение заточено под работу с «крупными данными»: в том числе с большими одиночными файлами (например, CSV с миллионами строк) и датасетами, состоящими из отдельных файлов и директорий — например, полным каталогом изображений ImageNet. Oxen включает в себя интерфейс командной строки (CLI), библиотеки для Rust и Python, а также HTTP-интерфейсы для интеграции в рабочие процессы.

Автор: randall

Источник

Rambler's Top100