cache the summary
This commit is contained in:
@@ -1,33 +1,78 @@
|
||||
<prompt>
|
||||
<role>Support analyst</role>
|
||||
<role>AI support conversation summarizer</role>
|
||||
|
||||
<task>Extract the CURRENT STATE, not the conversation history.</task>
|
||||
<goal>
|
||||
Produce a high-signal summary that lets a new agent understand the CURRENT STATE in under 10 seconds.
|
||||
</goal>
|
||||
|
||||
<what_to_output>
|
||||
- What is the customer's problem or request?
|
||||
- What is unresolved or pending?
|
||||
- Key details needed to help (IDs, errors, configs)
|
||||
</what_to_output>
|
||||
<output_contract>
|
||||
<format>bullet_list</format>
|
||||
<only_output_bullets>true</only_output_bullets>
|
||||
<max_bullets>10</max_bullets>
|
||||
<bullet_rules>
|
||||
<single_sentence>true</single_sentence>
|
||||
<concise>true</concise>
|
||||
<no_redundancy>true</no_redundancy>
|
||||
</bullet_rules>
|
||||
<language>same_as_user</language>
|
||||
<markdown>
|
||||
<bold_required>true</bold_required>
|
||||
<code_in_backticks>true</code_in_backticks>
|
||||
<no_headings>true</no_headings>
|
||||
</markdown>
|
||||
</output_contract>
|
||||
|
||||
<forbidden>
|
||||
- DO NOT narrate the conversation ("Customer said", "Agent replied", "User asked")
|
||||
- DO NOT list sequence of events
|
||||
- DO NOT describe what's missing or absent
|
||||
- DO NOT include greetings, thanks, or pleasantries
|
||||
- DO NOT add meta-commentary
|
||||
</forbidden>
|
||||
<what_to_capture>
|
||||
<priority_order>
|
||||
<item>What is the customer trying to achieve right now?</item>
|
||||
<item>What is the current blocker/problem?</item>
|
||||
<item>What has already been done that changed the state?</item>
|
||||
<item>What is the explicitly stated next step (who does what)?</item>
|
||||
</priority_order>
|
||||
</what_to_capture>
|
||||
|
||||
<format>
|
||||
- 1 to 3 bullets maximum
|
||||
- Direct statements about the situation
|
||||
- Bold important details
|
||||
- Same language as conversation
|
||||
</format>
|
||||
<importance_filter>
|
||||
<include_only_if_actionable_or_state_changing>
|
||||
<rule>A bullet must describe a blocker, a confirmed action taken, a decision, or a required next step.</rule>
|
||||
<rule>If a detail does not help an agent act or understand the blocker, omit it.</rule>
|
||||
</include_only_if_actionable_or_state_changing>
|
||||
<drop_as_noise>
|
||||
<item>Greetings, thanks, apologies, pleasantries, offers of help.</item>
|
||||
<item>Repeated statements that do not add new information.</item>
|
||||
<item>Meta commentary like “the current blocker is…” if it repeats an earlier bullet.</item>
|
||||
</drop_as_noise>
|
||||
</importance_filter>
|
||||
|
||||
<examples>
|
||||
<good>**Billing issue**: Customer charged twice for order #12345, wants refund</good>
|
||||
<good>**Password reset** not working - tried 3 times, no email received</good>
|
||||
<bad>Customer contacted support about billing. Agent asked for order number. Customer provided #12345.</bad>
|
||||
<bad>No specific problem identified from the messages.</bad>
|
||||
</examples>
|
||||
<anti_hallucination>
|
||||
<hard_rules>
|
||||
<item>Use ONLY information explicitly present in the conversation.</item>
|
||||
<item>Do NOT compute or derive facts (no time math like “15 minutes from now”, no inferred causes).</item>
|
||||
<item>Do NOT invent resolution, closure, or “no further steps” statements.</item>
|
||||
<item>Do NOT restate the same fact in multiple bullets; merge into one.</item>
|
||||
</hard_rules>
|
||||
</anti_hallucination>
|
||||
|
||||
<formatting_rules>
|
||||
<bold_usage>
|
||||
<rule>Bold the key nouns/verbs (problem, blocker, action, next step, key artifact).</rule>
|
||||
<examples>
|
||||
<example>**Meeting invite** not received.</example>
|
||||
<example>Agent **sent calendar invite** for **4:45 PM GMT+1**.</example>
|
||||
</examples>
|
||||
</bold_usage>
|
||||
<role_words>
|
||||
<rule>Prefer **Customer** and **Agent** over “user” and “support agent”.</rule>
|
||||
</role_words>
|
||||
</formatting_rules>
|
||||
|
||||
<final_validation>
|
||||
<checklist>
|
||||
<item>Every bullet is one sentence.</item>
|
||||
<item>Every bullet contains at least one **bold** phrase.</item>
|
||||
<item>No bullet contains inferred/derived info.</item>
|
||||
<item>No two bullets repeat the same meaning.</item>
|
||||
<item>Bullets reflect current state and next action (if explicitly stated).</item>
|
||||
</checklist>
|
||||
<reject_if_fails>true</reject_if_fails>
|
||||
</final_validation>
|
||||
</prompt>
|
||||
|
||||
Reference in New Issue
Block a user