fix: enforce meeting summary sections
This commit is contained in:
+38
-11
@@ -311,14 +311,27 @@ async def _chat_completion(prompt: str, *, timeout: int = 180) -> str:
|
||||
|
||||
|
||||
def _summary_prompt(transcript: str) -> str:
|
||||
return f"""You are a meeting summarizer. Given the following meeting transcript, produce a concise, well-structured summary with:
|
||||
return f"""You are a meeting summarizer. Given the following meeting transcript, produce a concise, well-structured summary.
|
||||
|
||||
1. **Overview** — 2-3 sentences covering what was discussed
|
||||
2. **Key Decisions** — decisions that were made
|
||||
3. **Action Items** — who needs to do what (use bullet points)
|
||||
4. **Next Steps / Deadlines** — any dates, timelines, or follow-ups mentioned
|
||||
Use exactly these markdown section headings, in this order:
|
||||
|
||||
If speaker labels are present, preserve them where helpful in action items.
|
||||
## What Was Done
|
||||
- Summarize the work completed, progress reported, and status updates.
|
||||
- Include all dev team members' reports that appear in the transcript; do not omit any named person.
|
||||
|
||||
## What Will Be Done Next
|
||||
- Summarize the upcoming work, planned follow-ups, and expected next steps.
|
||||
|
||||
## Action Items
|
||||
- Use bullet points.
|
||||
- For each item, include the owner when it is mentioned.
|
||||
|
||||
## Decisions
|
||||
- List decisions that were made.
|
||||
- If no decisions were made, say "- None recorded."
|
||||
|
||||
If speaker labels are present, preserve them where helpful.
|
||||
Do not add extra top-level sections.
|
||||
|
||||
Transcript:
|
||||
{transcript}"""
|
||||
@@ -341,12 +354,26 @@ def _combined_summary_prompt(chunk_summaries: list[str]) -> str:
|
||||
merged = "\n\n".join(
|
||||
f"Chunk {index}:\n{summary}" for index, summary in enumerate(chunk_summaries, start=1)
|
||||
)
|
||||
return f"""You are a meeting summarizer. The transcript was summarized in chunks first. Combine them into one final meeting summary with:
|
||||
return f"""You are a meeting summarizer. The transcript was summarized in chunks first. Combine them into one final meeting summary.
|
||||
|
||||
1. **Overview** — 2-3 sentences covering what was discussed
|
||||
2. **Key Decisions** — decisions that were made
|
||||
3. **Action Items** — who needs to do what (use bullet points)
|
||||
4. **Next Steps / Deadlines** — any dates, timelines, or follow-ups mentioned
|
||||
Use exactly these markdown section headings, in this order:
|
||||
|
||||
## What Was Done
|
||||
- Summarize the work completed, progress reported, and status updates.
|
||||
- Include all dev team members' reports that appear in the chunk summaries; do not omit any named person.
|
||||
|
||||
## What Will Be Done Next
|
||||
- Summarize the upcoming work, planned follow-ups, and expected next steps.
|
||||
|
||||
## Action Items
|
||||
- Use bullet points.
|
||||
- For each item, include the owner when it is mentioned.
|
||||
|
||||
## Decisions
|
||||
- List decisions that were made.
|
||||
- If no decisions were made, say "- None recorded."
|
||||
|
||||
Do not add extra top-level sections.
|
||||
|
||||
Combined chunk summaries:
|
||||
{merged}"""
|
||||
|
||||
Reference in New Issue
Block a user