From aeb8a48dcc684ee5f9e02f938ad0706cb47c5d69 Mon Sep 17 00:00:00 2001 From: Floke Date: Mon, 21 Jul 2025 08:02:59 +0000 Subject: [PATCH] Refined Data Input for FSM Pitch MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - FIX: Die `generate_fsm_pitch`-Funktion in `helpers.py` extrahiert nun korrekt nur den reinen Beschreibungstext aus der Website-Analyse. - Dies verhindert, dass die KI durch Meta-Informationen (wie "FSM-POTENZIAL") im Prompt verwirrt wird, und verbessert die Qualität der generierten Pitches. --- helpers.py | 24 ++++++++++++++++++------ 1 file changed, 18 insertions(+), 6 deletions(-) diff --git a/helpers.py b/helpers.py index d1e11782..5e3db1f5 100644 --- a/helpers.py +++ b/helpers.py @@ -1036,13 +1036,25 @@ def generate_fsm_pitch( """ logger = logging.getLogger(__name__) - # 1. Daten-Check - parts = [] - if website_summary and 'k.a.' not in website_summary.lower(): - parts.append(f"Website-Zusammenfassung: {website_summary}") + # 1. Daten-Check und Extraktion + beschreibung_kombiniert = [] + # Extrahiere NUR den reinen Zusammenfassungstext, falls unsere strukturierte Analyse vorliegt + if website_summary and '**GESCHÄFTSMODELL**' in website_summary: + try: + # Extrahiert den Text nach "Zusammenfassung:" und vor dem nächsten Abschnitt + summary_text = website_summary.split('Zusammenfassung:')[1].split('**FSM-POTENZIAL**')[0].strip() + if summary_text: + beschreibung_kombiniert.append(f"Website-Zusammenfassung: {summary_text}") + except IndexError: + # Fallback, falls das Format unerwartet ist + beschreibung_kombiniert.append(f"Website-Zusammenfassung: {website_summary}") + elif website_summary and 'k.a.' not in website_summary.lower(): + beschreibung_kombiniert.append(f"Website-Zusammenfassung: {website_summary}") # Für alte, unstrukturierte Zusammenfassungen + if wiki_absatz and 'k.a.' not in wiki_absatz.lower(): - parts.append(f"Wikipedia-Einleitung: {wiki_absatz}") - combined = "\n".join(parts) + beschreibung_kombiniert.append(f"Wikipedia-Einleitung: {wiki_absatz}") + + combined = "\n".join(beschreibung_kombiniert) if len(combined.split()) < 10: logger.warning(f"Zu wenige Informationen für FSM-Pitch bei {company_name}.")