fix(gtm): Implement ultimate prompt robustness, version logging, and final doc update
This commit is contained in:
@@ -56,15 +56,16 @@ Multi-Line Prompts können in Docker-Umgebungen zu **sehr hartnäckigen Syntaxfe
|
||||
* **Das Problem:** Der Python-Parser (insbesondere bei `f-strings` in Kombination mit Zahlen/Punkten am Zeilenanfang oder verschachtelten Klammern) kann Multi-Line-Strings (`f"""..."""`) falsch interpretieren, was zu Fehlern wie `SyntaxError: invalid decimal literal` oder `unmatched ')'` führt, auch wenn der Code scheinbar korrekt ist.
|
||||
|
||||
* **ULTIMATIVE LÖSUNG (Maximale Robustheit):**
|
||||
1. **Vermeide `f"""` komplett für komplexe Multi-Line-Prompts.** Definiere stattdessen den Prompt als normalen Multi-Line-String (ohne `f` Präfix).
|
||||
2. **Nutze die `.format()` Methode** zur Variablen-Injektion. Dies trennt die String-Definition komplett von der Variablen-Interpolation und ist die robusteste Methode.
|
||||
1. **Vermeide `f"""` komplett für komplexe Multi-Line-Prompts.** Definiere stattdessen den Prompt als **Liste von einzelnen String-Zeilen** und füge sie mit `"\n".join(prompt_parts)` zusammen.
|
||||
2. **Nutze die `.format()` Methode oder f-Strings in EINZEILIGEN Strings** zur Variablen-Injektion. Dies trennt die String-Definition komplett von der Variablen-Interpolation und ist die robusteste Methode.
|
||||
|
||||
```python
|
||||
# Beispiel: So ist es maximal robust (bevorzugte Methode)
|
||||
prompt_template = """
|
||||
1) Mache dies: {variable_1}
|
||||
2) Mache das: {variable_2}
|
||||
"""
|
||||
# Beispiel: Maximal robust
|
||||
prompt_template_parts = [
|
||||
"1) Mache dies: {variable_1}",
|
||||
"2) Mache das: {variable_2}",
|
||||
]
|
||||
prompt_template = "\n".join(prompt_template_parts)
|
||||
prompt = prompt_template.format(variable_1=wert1, variable_2=wert2)
|
||||
# System-Instruktion muss immer noch vorangestellt werden:
|
||||
full_prompt = sys_instr + "\n\n" + prompt
|
||||
|
||||
Reference in New Issue
Block a user