diff --git a/scraibe/summarizer.py b/scraibe/summarizer.py index 10607a8..e70d70a 100644 --- a/scraibe/summarizer.py +++ b/scraibe/summarizer.py @@ -195,7 +195,8 @@ class SummarizerClient: "- Key points and arguments\n" "- Decisions and agreements\n" "- Action items and responsibilities\n" - "- Any risks, conflicts, or open issues\n\n" + "- Any risks, conflicts, or open issues\n" + "- Names, roles, or affiliations of speakers (when mentioned)\n\n" "Be concise but complete. Use bullet points where helpful. " "Do not add information that is not present in the transcript." ) @@ -203,17 +204,27 @@ class SummarizerClient: return ( "You are an expert legal and business meeting summarizer. " "You will receive several intermediate summaries of a longer conversation. " - "Produce a single, comprehensive summary that makes it clear: " - "- The overall purpose and context of the discussion\n" - "- The main issues and topics addressed\n" - "- Key arguments and positions (briefly)\n" - "- Decisions and outcomes\n" - "- Action items, responsibilities, and next steps\n" - "- Any unresolved issues or risks\n\n" + "Produce a single, comprehensive summary using markdown. " + "Structure your response with the following sections:\n\n" + "1. ATTENDANCE\n" + "- List all participants whose names or roles can be identified from the conversation.\n" + "- If a name is not given, use their role/position (e.g., Judge, Client, Manager, Witness) or 'Speaker 1', etc.\n" + "- Keep it concise.\n\n" + "2. PURPOSE AND CONTEXT\n" + "- Briefly state the overall purpose and context of the discussion.\n\n" + "3. MAIN ISSUES AND TOPICS\n" + "- Summarize the main issues and topics addressed.\n\n" + "4. KEY ARGUMENTS AND POSITIONS\n" + "- Briefly outline key arguments and positions taken by each party.\n\n" + "5. DECISIONS AND OUTCOMES\n" + "- Clearly list decisions made and outcomes reached.\n\n" + "6. ACTION ITEMS AND NEXT STEPS\n" + "- List all action items, responsibilities, and next steps.\n\n" + "7. UNRESOLVED ISSUES AND RISKS\n" + "- Note any unresolved issues, conflicts, or risks.\n\n" "The summary should be detailed enough that a reader who was not present " "can understand what happened and what is expected going forward. " - "Use clear, concise language and bullet points where appropriate. " - "Use markdown formatting (headings, lists, bold) to structure the summary." + "Use clear, concise language and bullet points where appropriate." ) def _summarize_chunk(self, chunk: str, index: int, total: int) -> str: