Update api.py
Browse files
api.py
CHANGED
|
@@ -195,11 +195,14 @@ def youtube_script():
|
|
| 195 |
duration_minutes = (data.get("duration_minutes") or "").strip()
|
| 196 |
tone = (data.get("tone") or "").strip()
|
| 197 |
target_audience = (data.get("target_audience") or "").strip()
|
|
|
|
| 198 |
|
| 199 |
if not topic:
|
| 200 |
return jsonify({"error": "Video topic is required."}), 400
|
| 201 |
|
| 202 |
# Fallback defaults
|
|
|
|
|
|
|
| 203 |
if not duration_minutes:
|
| 204 |
duration_minutes = "10"
|
| 205 |
if not tone:
|
|
@@ -215,10 +218,10 @@ def youtube_script():
|
|
| 215 |
Ziel-Videolänge: ca. {duration_minutes} Minuten
|
| 216 |
Tonfall: {tone}
|
| 217 |
Zielgruppe: {target_audience}
|
|
|
|
| 218 |
|
| 219 |
Struktur des Skripts:
|
| 220 |
1. Starker Hook in den ersten 5–10 Sekunden (sofortige Aufmerksamkeit, großes Versprechen).
|
| 221 |
-
2. Kurze Begrüßung und Positionierung von Javid Niazi-Hoffmann.
|
| 222 |
3. Klar strukturierter Hauptteil mit mehreren Abschnitten:
|
| 223 |
- Erkläre das Thema verständlich.
|
| 224 |
- Nutze Beispiele, Metaphern oder kurze Stories.
|
|
@@ -229,7 +232,6 @@ def youtube_script():
|
|
| 229 |
|
| 230 |
Format:
|
| 231 |
- Schreibe den Text als gesprochenes Skript in der Du-Form.
|
| 232 |
-
- Markiere die Abschnitte mit kurzen Zwischenüberschriften (z.B. [HOOK], [EINSTIEG], [TIPP 1], [CTA]).
|
| 233 |
- Kein Fließtext-Roman, sondern gut lesbare Absätze.
|
| 234 |
- Do not return Headlines like [Hook],[CTA] ...etc
|
| 235 |
"""
|
|
@@ -241,7 +243,7 @@ def youtube_script():
|
|
| 241 |
{"role": "system", "content": system_prompt_youtube_script()},
|
| 242 |
{"role": "user", "content": user_prompt},
|
| 243 |
],
|
| 244 |
-
max_tokens=
|
| 245 |
)
|
| 246 |
script_text = response.choices[0].message.content.strip()
|
| 247 |
except Exception as e:
|
|
|
|
| 195 |
duration_minutes = (data.get("duration_minutes") or "").strip()
|
| 196 |
tone = (data.get("tone") or "").strip()
|
| 197 |
target_audience = (data.get("target_audience") or "").strip()
|
| 198 |
+
userName = (data.get("userName") or "").strip()
|
| 199 |
|
| 200 |
if not topic:
|
| 201 |
return jsonify({"error": "Video topic is required."}), 400
|
| 202 |
|
| 203 |
# Fallback defaults
|
| 204 |
+
if not userName:
|
| 205 |
+
userName = ""
|
| 206 |
if not duration_minutes:
|
| 207 |
duration_minutes = "10"
|
| 208 |
if not tone:
|
|
|
|
| 218 |
Ziel-Videolänge: ca. {duration_minutes} Minuten
|
| 219 |
Tonfall: {tone}
|
| 220 |
Zielgruppe: {target_audience}
|
| 221 |
+
userName: {userName}
|
| 222 |
|
| 223 |
Struktur des Skripts:
|
| 224 |
1. Starker Hook in den ersten 5–10 Sekunden (sofortige Aufmerksamkeit, großes Versprechen).
|
|
|
|
| 225 |
3. Klar strukturierter Hauptteil mit mehreren Abschnitten:
|
| 226 |
- Erkläre das Thema verständlich.
|
| 227 |
- Nutze Beispiele, Metaphern oder kurze Stories.
|
|
|
|
| 232 |
|
| 233 |
Format:
|
| 234 |
- Schreibe den Text als gesprochenes Skript in der Du-Form.
|
|
|
|
| 235 |
- Kein Fließtext-Roman, sondern gut lesbare Absätze.
|
| 236 |
- Do not return Headlines like [Hook],[CTA] ...etc
|
| 237 |
"""
|
|
|
|
| 243 |
{"role": "system", "content": system_prompt_youtube_script()},
|
| 244 |
{"role": "user", "content": user_prompt},
|
| 245 |
],
|
| 246 |
+
max_tokens=10000,
|
| 247 |
)
|
| 248 |
script_text = response.choices[0].message.content.strip()
|
| 249 |
except Exception as e:
|