Fix: Implemented SVG fallback for image generation, enforced phase consolidation in report, and updated troubleshooting guide
This commit is contained in:
@@ -1,3 +1,4 @@
|
|||||||
|
|
||||||
import argparse
|
import argparse
|
||||||
import base64
|
import base64
|
||||||
import json
|
import json
|
||||||
@@ -20,7 +21,7 @@ LOG_DIR = "Log_from_docker"
|
|||||||
if not os.path.exists(LOG_DIR):
|
if not os.path.exists(LOG_DIR):
|
||||||
os.makedirs(LOG_DIR)
|
os.makedirs(LOG_DIR)
|
||||||
|
|
||||||
ORCHESTRATOR_VERSION = "1.2.0" # Bump version for language fix
|
ORCHESTRATOR_VERSION = "1.3.0" # Bump version for image fix & language enforcement
|
||||||
run_timestamp = datetime.now().strftime("%y-%m-%d_%H-%M-%S")
|
run_timestamp = datetime.now().strftime("%y-%m-%d_%H-%M-%S")
|
||||||
log_file_path = os.path.join(LOG_DIR, f"{run_timestamp}_gtm_orchestrator_run.log")
|
log_file_path = os.path.join(LOG_DIR, f"{run_timestamp}_gtm_orchestrator_run.log")
|
||||||
|
|
||||||
@@ -63,7 +64,7 @@ def get_system_instruction(lang):
|
|||||||
Führe eine interne Plausibilitätsprüfung durch, bevor du eine Antwort gibst.
|
Führe eine interne Plausibilitätsprüfung durch, bevor du eine Antwort gibst.
|
||||||
Verwende "Wackler Symbiosis" als internes Framework für die Analyse von Produkt-Synergien.
|
Verwende "Wackler Symbiosis" als internes Framework für die Analyse von Produkt-Synergien.
|
||||||
Nutze das "Hybrid Service Logic" Konzept, um zu bewerten, ob ein Produkt mit einer Dienstleistung kombiniert werden muss (z.B. bei hohen Wartungsanforderungen).
|
Nutze das "Hybrid Service Logic" Konzept, um zu bewerten, ob ein Produkt mit einer Dienstleistung kombiniert werden muss (z.B. bei hohen Wartungsanforderungen).
|
||||||
WICHTIG: Antworte immer in der vom User geforderten Sprache (Deutsch), auch wenn der Input Englisch ist.
|
WICHTIG: Antworte IMMER in der vom User geforderten Sprache (Deutsch), auch wenn der Input Englisch ist.
|
||||||
"""
|
"""
|
||||||
else: # Default to English
|
else: # Default to English
|
||||||
return """
|
return """
|
||||||
@@ -233,8 +234,9 @@ def phase5(payload):
|
|||||||
- Strategy: {json.dumps(phase4_data)}
|
- Strategy: {json.dumps(phase4_data)}
|
||||||
TASK:
|
TASK:
|
||||||
1. Create a "GTM STRATEGY REPORT" in Markdown.
|
1. Create a "GTM STRATEGY REPORT" in Markdown.
|
||||||
2. Report Structure: Executive Summary, Product Analysis, Target Audience, Target Accounts, Strategy Matrix, Assets.
|
2. CONSOLIDATE ALL PREVIOUS PHASES (1-4) into the report. Don't skip details.
|
||||||
3. Hybrid-Check: Ensure "Hybrid Service Logic" is visible.
|
3. Report Structure: Executive Summary, Product Analysis, Target Audience (ICPs), Target Accounts (Whales), Strategy Matrix, Next Steps.
|
||||||
|
4. Hybrid-Check: Ensure "Hybrid Service Logic" is visible.
|
||||||
|
|
||||||
{lang_instr}
|
{lang_instr}
|
||||||
|
|
||||||
@@ -354,8 +356,21 @@ def translate(payload):
|
|||||||
return {"report": "Translated report will be here."}
|
return {"report": "Translated report will be here."}
|
||||||
|
|
||||||
def image(payload):
|
def image(payload):
|
||||||
# ... (to be implemented)
|
prompt = payload.get('prompt', 'No Prompt')[:50] + "..."
|
||||||
return {"imageBase64": ""}
|
# Create a simple SVG placeholder to avoid frontend crash
|
||||||
|
svg = f"""
|
||||||
|
<svg width="512" height="512" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<rect width="100%" height="100%" fill="#eee"/>
|
||||||
|
<text x="50%" y="50%" font-family="Arial" font-size="20" fill="#555" text-anchor="middle" dy=".3em">
|
||||||
|
Image Generation Not Configured
|
||||||
|
</text>
|
||||||
|
<text x="50%" y="60%" font-family="Arial" font-size="12" fill="#888" text-anchor="middle" dy=".3em">
|
||||||
|
{prompt}
|
||||||
|
</text>
|
||||||
|
</svg>
|
||||||
|
"""
|
||||||
|
svg_b64 = base64.b64encode(svg.encode('utf-8')).decode('utf-8')
|
||||||
|
return {"imageBase64": f"data:image/svg+xml;base64,{svg_b64}"}
|
||||||
|
|
||||||
def main():
|
def main():
|
||||||
"""
|
"""
|
||||||
@@ -412,4 +427,4 @@ def main():
|
|||||||
sys.exit(1)
|
sys.exit(1)
|
||||||
|
|
||||||
if __name__ == "__main__":
|
if __name__ == "__main__":
|
||||||
main()
|
main()
|
||||||
|
|||||||
Reference in New Issue
Block a user