--- license: apache-2.0 language: - ru base_model: - Qwen/Qwen3.5-2B-Base pipeline_tag: text-generation tags: - russian - legal - norms - fire-safety - information-extraction - json - llm - compliance --- # Модель для поиска ссылок на нормы в проектной документации Модель предназначена для извлечения ссылок на нормативные документы и конкретные структурные элементы норм из русскоязычных текстов проектной и нормативной документации. Основная задача модели — поиск ссылок вида: - `п.7.1.8 СП 1.13130` - `ч.1 ст.6 184-ФЗ` - `таблица 7 СП 4.13130` - `приложение А ГОСТ ...` Модель ориентирована на работу с документами в области: - пожарной безопасности; - строительного проектирования; - технического регулирования; - нормативной экспертизы; - проверки соответствия проектной документации. --- # Что делает модель Модель получает: - код интересующего нормативного документа (`doc_code`); - фрагмент текста (`text`); и возвращает ссылки только на конкретные места внутри указанного нормативного документа. ## Пример ### Input ```json { "doc_code": "СП 1.13130", "text": "...Коридоры отделены перегородками (что соответствует п.7.1.11 СП 1.13130)." } ``` ### Output ```json [ { "punkt": "п.7.1.11 СП 1.13130", "full_paragraph": "Коридоры отделены перегородками (что соответствует п.7.1.11 СП 1.13130)." } ] ``` --- # Что НЕ считается ссылкой Простое перечисление нормативных документов без указания конкретного пункта НЕ считается ссылкой. ## Пример ```text СП 1.13130.2020 Системы противопожарной защиты... ``` В таком случае результат должен быть пустым: ```json [] ``` --- # Формат выходных данных ```json [ { "punkt": "<найденная ссылка>", "full_paragraph": "<полный текст абзаца>" } ] ``` --- # Пример использования ```python from transformers import pipeline pipe = pipeline( "text-generation", model="GreenMap/qwen3.5-2b-ru-norm-link-extractor", tokenizer="GreenMap/qwen3.5-2b-ru-norm-link-extractor" ) doc_code = "СП 1.13130" text = """ 9.3.23 Коридоры, холлы, вестибюли во всем здании отделены перегородками с пределом огнестойкости не менее (R)EI(W) 30 (что соответствует п.7.1.11 СП 1.13130). """ prompt = f""" Верни отрывок и ссылку на "{doc_code}" на основе текста. Если в тексте нет ссылок на конкретное место нормативного документа верни []. Верни в формате JSON: [{{"punkt": "<ссылка на норму>", "full_paragraph": "<релевантный фрагмент текста>"}}] Текст: {text} Ответ: """ result = pipe( prompt, max_new_tokens=1024, do_sample=False ) print(result[0]["generated_text"]) ``` ## Пример ожидаемого результата ```json [ { "punkt": "п.7.1.11 СП 1.13130", "full_paragraph": "9.3.23 Коридоры, холлы, вестибюли во всем здании отделены перегородками с пределом огнестойкости не менее (R)EI(W) 30 (что соответствует п.7.1.11 СП 1.13130)." } ] ``` --- # Датасет Датасет был сформирован вручную. --- # Язык Русский. --- # Лицензия Apache 2.0