Об этом проекте
eurlex-builder — это настраиваемый конвейер командной строки на Python для создания готовых к исследованию наборов данных из законодательных материалов EUR-Lex / Cellar. Он извлекает директивы, регламенты, решения, сообщения и другие акты ЕС, а затем извлекает текст с выбираемой гранулярностью: целые статьи, нумерованные пункты или буквенные подпункты. Инструмент ориентирован на количественные правовые исследования, NLP, классификацию и сетевой анализ законодательства ЕС.
Конвейер создаёт рабочую базу данных DuckDB и четыре таблицы Parquet: works, text_units, relations и eurovoc. Поддерживаются два основных режима запросов: фиксированный режим, в котором пользователи указывают идентификаторы CELEX или номера процедур, и описательный режим, в котором пользователи выбирают типы документов, диапазоны дат и необязательные фильтры по ключевым словам EuroVoc. Инструмент обрабатывает несколько HTML-структур EUR-Lex и включает резервное извлечение из PDF для старых или немашиночитаемых документов с использованием Docling и pymupdf.
Ключевые возможности включают разложение на подстатьи, удаление шаблонного текста, извлечение преамбул, статей и приложений, фиксацию связей между документами, таких как цитирования, поправки, правовые основания, отмены и консолидации, а также опциональный перевод неанглоязычного контента с использованием ревизий Helsinki-NLP Opus-MT. Перевод защищён повторными попытками с ограничением по токенам и проверками качества; отклонённые результаты остаются на исходном языке, а не заменяют оригинальный текст.
Инструмент делает акцент на воспроизводимости и возможности возобновления. Один файл YAML определяет набор данных, а DuckDB хранит контрольные точки, манифесты запусков, проверенные хеши конфигурации, версии зависимостей и статус завершения. Команды CLI включают run, translate, enrich, status и validate. Обогащение может добавлять постфактум метаданные через SPARQL, включая даты вступления в силу, ELI, учреждения-авторы, предметную область, сведения о процедуре, дескрипторы EuroVoc и связи отмены. Команда validate выполняет проверки целостности только для чтения, не изменяя базу данных.
В README отмечается, что полнотекстовый поиск работает широко, но гранулярное извлечение наиболее надёжно для регламентов, директив и решений. Сообщения извлекаются хорошо, но имеют известные пробелы, тогда как предложения, рабочие документы сотрудников и судебная практика могут терять структурные единицы или не создавать текстовых единиц. Это делает проект особенно полезным для исследователей, создающих структурированные, проверяемые корпуса законодательных текстов ЕС.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.