fix: whisper repetition loops, meeting transcript punctuation

- transcription: add temperature_inc=0 to whispercpp to disable fallback (prevents loops)
- pipeline: punctuate meeting transcript in one pass (parallel with summarize)
- output: write_meeting_docs accepts pre-built transcript_text
- llm: punctuate prompt preserves speaker labels

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-04-02 12:34:11 +02:00
parent 658f9be47f
commit 8ec9044c75
4 changed files with 19 additions and 7 deletions
+8 -4
View File
@@ -152,6 +152,7 @@ def write_meeting_docs(
dt: "datetime | None" = None,
title: str = "",
tldr: str = "",
transcript_text: str = "",
) -> dict[str, str]:
"""Write index (in output_dir), transkript + zusammenfassung (in subdir)."""
if dt is None:
@@ -172,10 +173,13 @@ def write_meeting_docs(
os.makedirs(subdir, exist_ok=True)
# --- transkript (in subdir) ---
transcript_lines = []
for speaker, text in aligned_segments:
transcript_lines.append(f"**{speaker}:** {text}\n")
transcript_content = "\n".join(transcript_lines)
if transcript_text:
transcript_content = transcript_text
else:
transcript_lines = []
for speaker, text in aligned_segments:
transcript_lines.append(f"**{speaker}:** {text}\n")
transcript_content = "\n".join(transcript_lines)
transkript_filename = f"{base}-transkript.md"
transkript_path = os.path.join(subdir, transkript_filename)
with open(transkript_path, "w", encoding="utf-8") as f: