tune(learning): סף-אשכול סינתזת-לקחים 0.82 → 0.68 (#158) #349

Merged
chaim merged 1 commits from worktree-synth-threshold-068 into main 2026-06-28 22:45:11 +00:00

View File

@@ -286,7 +286,12 @@ LESSON_SYNTH_MODEL = os.environ.get("LESSON_SYNTH_MODEL", HALACHA_EXTRACT_MODEL)
LESSON_SYNTH_EFFORT = os.environ.get("LESSON_SYNTH_EFFORT", "high")
LESSON_SYNTH_DRIFT_FLOOR = float(os.environ.get("LESSON_SYNTH_DRIFT_FLOOR", "0.80"))
# Cosine floor for two lessons to land in the same cluster (greedy, within shard).
LESSON_SYNTH_CLUSTER_THRESHOLD = float(os.environ.get("LESSON_SYNTH_CLUSTER_THRESHOLD", "0.82"))
# Tuned empirically (#158 dry-run, 81 lessons): the lessons are diverse (median
# pairwise cosine ~0.48, max ~0.72), so 0.82 merged nothing. 0.68 captures the real
# near-duplicates (5 faithful clusters across rishuy+betterment, all clearing the
# 0.80 drift gate) without merging weakly-related lessons; the drift gate is the
# quality backstop below this.
LESSON_SYNTH_CLUSTER_THRESHOLD = float(os.environ.get("LESSON_SYNTH_CLUSTER_THRESHOLD", "0.68"))
# Mistral OCR (fallback for scanned PDFs — replaces Google Cloud Vision)
MISTRAL_API_KEY = os.environ.get("MISTRAL_API_KEY", "")