Refonte identification des séries : PDF-first en deux étapes
Avant : le LLM devait simultanément grouper les notes ET les matcher aux titres du site → résultats incohérents, séries perdues si pas de correspondance sur le site. Après (pipeline en 4 étapes) : 1. cluster_notes_into_series : LLM groupe les notes du PDF en séries canoniques, SANS le catalogue du site 2. scrape_catalog : enrichissement optionnel (+ extraction des dates de représentation depuis chaque page événement) 3. match_series_to_catalog : correspondance canonique→site pour enrichir le titre et la description (null si pas de match) 4. Génération ICS pour TOUTES les séries PDF, même sans correspondance site (répétitions seules incluses) Autres changements : - _build_description : inclut les dates du site et l'URL quand dispo - clear_cache : inclut series_clusters.json et series_site_match.json - _parse_json_response : helper robuste pour parser les réponses LLM Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
+2
-1
@@ -300,7 +300,8 @@ async def cache_status(user: str = Depends(get_current_user)):
|
||||
async def clear_cache(user: str = Depends(get_current_user)):
|
||||
cache_dir = DATA_DIR / "cache"
|
||||
deleted = []
|
||||
for name in ["website_catalog.json", "series_mapping.json"]:
|
||||
for name in ["website_catalog.json", "series_mapping.json",
|
||||
"series_clusters.json", "series_site_match.json"]:
|
||||
p = cache_dir / name
|
||||
if p.exists():
|
||||
p.unlink()
|
||||
|
||||
Reference in New Issue
Block a user