feat(etl): нормализация к справочнику (код→точное→эмбеддинги→fuzzy), валидация и конвейер в SQLite

This commit is contained in:
2026-06-26 18:20:00 +05:00
parent 26283d5432
commit e03e70535e
7 changed files with 603 additions and 0 deletions
+28
View File
@@ -0,0 +1,28 @@
"""Запуск конвейера на архиве: data/raw → SQLite + отчёт о качестве.
Флаг --vision включает добор трудных PDF через Gemini Vision (медленно).
"""
import json
import sys
from datetime import date
from pathlib import Path
REPO = Path(__file__).resolve().parents[1]
sys.path.insert(0, str(REPO))
from etl.normalize.embedding import GeminiEmbedder # noqa: E402
from etl.pipeline import run # noqa: E402
summary = run(
data_dir=str(REPO / "data/raw"),
db_path=str(REPO / "data/medarchive.db"),
dict_path=str(REPO / "data/reference/dictionary.xlsx"),
embedder=GeminiEmbedder(),
use_vision="--vision" in sys.argv,
today=date(2026, 6, 26),
)
(REPO / "data/quality_report.json").write_text(
json.dumps(summary, ensure_ascii=False, indent=2), encoding="utf-8"
)
print(json.dumps(summary, ensure_ascii=False, indent=2))