This commit is contained in:
2025-07-01 07:11:25 +00:00
parent 0291655963
commit 6bdaff76a4

View File

@@ -894,6 +894,7 @@ def summarize_batch_openai(tasks_data):
# 9. OPENAI API WRAPPER (BRANCH EVALUATION) # 9. OPENAI API WRAPPER (BRANCH EVALUATION)
# ============================================================================== # ==============================================================================
@retry_on_failure
@retry_on_failure @retry_on_failure
def evaluate_branche_chatgpt(crm_branche, beschreibung, wiki_branche, wiki_kategorien, website_summary): def evaluate_branche_chatgpt(crm_branche, beschreibung, wiki_branche, wiki_kategorien, website_summary):
""" """
@@ -904,10 +905,10 @@ def evaluate_branche_chatgpt(crm_branche, beschreibung, wiki_branche, wiki_kateg
from config import TARGET_SCHEMA_STRING, FOCUS_BRANCHES_PROMPT_PART, ALLOWED_TARGET_BRANCHES from config import TARGET_SCHEMA_STRING, FOCUS_BRANCHES_PROMPT_PART, ALLOWED_TARGET_BRANCHES
# NEU: Lazy Loading des Branchenschemas # Lazy Loading des Branchenschemas
if not ALLOWED_TARGET_BRANCHES: if not ALLOWED_TARGET_BRANCHES:
logger.warning("Branchenschema nicht geladen. Versuche es jetzt zu laden...") logger.warning("Branchenschema nicht geladen. Versuche es jetzt zu laden...")
if not initialize_target_schema(): # <<< HIER GEÄNDERT if not initialize_target_schema():
logger.critical("FEHLER in evaluate_branche_chatgpt: Ziel-Branchenschema konnte auch bei Bedarf nicht geladen werden. Breche Evaluation ab.") logger.critical("FEHLER in evaluate_branche_chatgpt: Ziel-Branchenschema konnte auch bei Bedarf nicht geladen werden. Breche Evaluation ab.")
return { return {
"branch": "FEHLER - SCHEMA FEHLT", "branch": "FEHLER - SCHEMA FEHLT",
@@ -983,7 +984,7 @@ def evaluate_branche_chatgpt(crm_branche, beschreibung, wiki_branche, wiki_kateg
parsed_branch = False parsed_branch = False
parsed_confidence = False parsed_confidence = False
for line in lines: for line in lines:
line_stripped = line.strip() line_stripped = line.strip()
line_lower = line_stripped.lower() # WICHTIG: Variable wieder einführen line_lower = line_stripped.lower() # WICHTIG: Variable wieder einführen
@@ -1008,13 +1009,13 @@ for line in lines:
if result["justification"]: result["justification"] += " " + justification_text if result["justification"]: result["justification"] += " " + justification_text
else: result["justification"] = justification_text else: result["justification"] = justification_text
if not parsed_branch or not suggested_branch or suggested_branch.lower() in ["k.a.", "n/a"]: if not parsed_branch or not suggested_branch or suggested_branch.lower() in ["k.a.", "n/a"]:
logger.error(f"Fehler in evaluate_branche_chatgpt: Konnte 'Branche:' nicht oder nur leer/k.A. aus Antwort parsen: {chat_response[:500]}...") logger.error(f"Fehler in evaluate_branche_chatgpt: Konnte 'Branche:' nicht oder nur leer/k.A. aus Antwort parsen: {chat_response[:500]}...")
crm_short_branch_for_fallback = "k.A." crm_short_branch_for_fallback = "k.A."
if crm_branche and isinstance(crm_branche, str) and crm_branche.strip().lower() != "k.a.": if crm_branche and isinstance(crm_branche, str) and crm_branche.strip().lower() != "k.a.":
crm_short_branch_for_fallback = crm_branche.strip() crm_short_branch_for_fallback = crm_branche.strip()
return { return {
"branch": crm_short_branch_for_fallback if crm_short_branch_for_fallback.lower() != "k.a." else "FEHLER PARSING", "branch": crm_short_branch_for_fallback if crm_short_branch_for_fallback.lower() != "k.a." else "FEHLER PARSING",
"confidence": result.get("confidence", "N/A"), "confidence": result.get("confidence", "N/A"),
"consistency": "error_parsing", "consistency": "error_parsing",