# Валидация тегов (шаг 4)

Отдельный шаг пайплайна после извлечения тегов (шаг 3). Проверка релевантности каждого тега содержанию главы, соответствие каркасу/инсайтам/применению, фильтрация нерелевантных и слишком общих тегов, обновление confidence scores.

## Промпт

| Файл             | Назначение                                      |
|------------------|-------------------------------------------------|
| validate_tags.txt | Валидация извлечённых тегов по анализу и тексту главы |

## Подстановки

- `{book_title}` — название книги
- `{chapter_title}` — название главы
- `{extracted_tags_json}` — JSON из шага 3 (tags по категориям + proposed)
- `{framework}` — JSON блока framework
- `{insights}` — JSON блока insights
- `{application}` — JSON блока application
- `{chapter_text}` — выдержка текста главы (для проверки релевантности)

## Вход

Извлечённые теги (шаг 3) + валидированный анализ главы (framework, insights, application) + оригинальный текст главы.

## Выход

JSON: проверенные теги по категориям с обновлёнными confidence; теги, снятые при валидации, — в блоке `removed` (tag, category, reason). Формат `tags` совпадает с выходом шага 3 для передачи в эмбеддинг и сохранение в БД.

## Скрипт через Ollama

`run_validate_tags_ollama.py` — один вызов Ollama для валидации извлечённых тегов. На выходе один JSON-файл.

**Вход (по умолчанию):**
- `../3_извлечение_тегов/extracted_tags.json` — результат шага 3 (tags по категориям, proposed)
- `../1_анализ_главы/merge.json` — полный анализ (framework, insights, application)
- `../1_анализ_главы/вход_главы.json` — текст главы и метаданные

**Выход:** `validated_tags.json` в каталоге скрипта (или путь через `-o`).

**Формат выхода:** `tags` (по категориям с обновлённым confidence), `removed` (массив снятых тегов: tag, category, reason).

**Запуск:**
```bash
cd 4_валидация_тегов
python3 run_validate_tags_ollama.py
# с указанием путей:
python3 run_validate_tags_ollama.py --extracted-tags /path/to/extracted_tags.json --merge /path/to/merge.json --chapter /path/to/вход_главы.json -o validated_tags.json
```

## Использование в пайплайне

Вызывается после шага 3 (извлечение тегов). Модель: qwen3-14b:8bit (или аналог). Время: ~20–30 сек на главу.
