Мерж анализа и тегов (шаг 5)
Объединение выхода 2b (финальная валидация согласованности) и выхода 4 (валидация тегов) в один JSON. Этапы 2b и 4 разнесены по времени; шаг 5 выполняется после того, как оба результата готовы.
Вход
| Источник | Файл | Содержимое |
|---|---|---|
| 2b | merge.json | framework, insights, application, limitations |
| 4 | выход_valid_tag.json | tags по категориям, removed |
| 1 (опционально) | вход_главы.json | book_id, chapter_id, chapter_number, chapter_title, book_title, author — для шага 7 |
Выход
Один JSON: все поля анализа + tags, removed. Если задан --input-chapter, в выход добавляются метаданные главы/книги (book_id, chapter_id, chapter_number, chapter_title, book_title, author). Этот документ передаётся в шаг 6 (генерация эмбеддингов) и в шаг 7 (payload Qdrant).
Скрипт с путями по умолчанию
run_merge_analysis_tags.py — мерж с путями по умолчанию (как в остальных этапах). Без вызова LLM.
Вход (по умолчанию):
../1_анализ_главы/merge.json— полный анализ (framework, insights, application, limitations)../4_валидация_тегов/validated_tags.json— результат шага 4 (tags, removed)../1_анализ_главы/вход_главы.json— метаданные главы/книги (book_id, chapter_id и т.д.; подставляются в выход для шагов 6–8)
Выход: merged_with_tags.json в каталоге скрипта (или путь через -o).
Запуск:
cd 5_мерж_анализа_и_тегов
python3 run_merge_analysis_tags.py
# с указанием путей:
python3 run_merge_analysis_tags.py --merge /path/to/merge.json --tags /path/to/validated_tags.json --input-chapter /path/to/вход_главы.json -o merged_with_tags.json
# без метаданных главы:
python3 run_merge_analysis_tags.py --no-chapter
Универсальный скрипт (позиционные аргументы)
python3 merge_analysis_tags.py <merge.json> <validated_tags.json> [--input-chapter вход_главы.json] [-o выход.json]
Пример:
python3 merge_analysis_tags.py ../1_анализ_главы/merge.json ../4_валидация_тегов/validated_tags.json --input-chapter ../1_анализ_главы/вход_главы.json -o merged_with_tags.json
Без -o результат выводится в stdout.