(feat) Update with correct deriver prompt
This commit is contained in:
parent
535b486378
commit
498dcb1e9f
|
|
@ -27,23 +27,48 @@ def minimal_deriver_prompt(
|
|||
"""
|
||||
return c(
|
||||
f"""
|
||||
Analyze messages from {peer_id} to extract **explicit atomic facts** about them.
|
||||
Extract **molecular facts** about {peer_id} from their messages.
|
||||
|
||||
[EXPLICIT] DEFINITION: Facts about {peer_id} that can be derived directly from their messages.
|
||||
- Transform statements into one or multiple conclusions
|
||||
- Each conclusion must be self-contained with enough context
|
||||
- Use absolute dates/times when possible (e.g. "June 26, 2025" not "yesterday")
|
||||
**Core principle**: One fact = one claim. No bundling. No explanation.
|
||||
|
||||
RULES:
|
||||
- Properly attribute observations to the correct subject: if it is about {peer_id}, say so. If {peer_id} is referencing someone or something else, make that clear.
|
||||
- Observations should make sense on their own. Each observation will be used in the future to better understand {peer_id}.
|
||||
- Extract ALL observations from {peer_id} messages, using others as context.
|
||||
- Contextualize each observation sufficiently (e.g. "Ann is nervous about the job interview at the pharmacy" not just "Ann is nervous")
|
||||
## STEP 1: Identify All Candidate Claims
|
||||
Read each message from {peer_id}. List every distinct claim (even if nested).
|
||||
|
||||
EXAMPLES:
|
||||
- EXPLICIT: "I just had my 25th birthday last Saturday" → "{peer_id} is 25 years old", "{peer_id}'s birthday is June 21st"
|
||||
- EXPLICIT: "I took my dog for a walk in NYC" → "{peer_id} has a dog", "{peer_id} lives in NYC"
|
||||
- EXPLICIT: "{peer_id} attended college" + general knowledge → "{peer_id} completed high school or equivalent"
|
||||
**Example**: "I got the job at the pharmacy and I'm really excited because I start next month"
|
||||
- Claim A: {peer_id} got a job at a pharmacy
|
||||
- Claim B: {peer_id} is excited (about the job)
|
||||
- Claim C: {peer_id} starts the job next month
|
||||
|
||||
→ Evaluate each separately.
|
||||
|
||||
## STEP 2: For Each Claim, Verify It's Atomic
|
||||
Does it contain:
|
||||
- One subject? (If multiple subjects → split)
|
||||
- One verb/action? (If multiple actions → split)
|
||||
- One object? (If multiple objects → split)
|
||||
|
||||
**Example of splitting**: "I interviewed at two companies and both rejected me"
|
||||
- Split into: "{peer_id} interviewed at company A" + "{peer_id} interviewed at company B" + "{peer_id} was rejected by company A" + "{peer_id} was rejected by company B"
|
||||
|
||||
## STEP 3: Decontextualize (Resolve Ambiguities)
|
||||
Replace:
|
||||
- Pronouns → nouns
|
||||
- Vague references → specific names
|
||||
- Relative times → absolute dates (or SKIP)
|
||||
- Unnamed people → named people (or SKIP)
|
||||
|
||||
## STEP 4: Strip Excess Detail
|
||||
Remove: explanations, reasons, emotional elaboration, context.
|
||||
|
||||
**Before**: "{peer_id} is really stressed and anxious about their pharmacy interview next Tuesday because they're worried about failing the clinical questions"
|
||||
|
||||
**After**: "{peer_id} is stressed about their pharmacy interview next Tuesday"
|
||||
|
||||
(The anxiety, worry, and reason are elaboration, not separate facts.)
|
||||
|
||||
## OUTPUT FORMAT
|
||||
- **Fact**: [One atomic claim, decontextualized, no elaboration]
|
||||
- **Source**: [Direct quote from {peer_id}]
|
||||
|
||||
Messages to analyze:
|
||||
<messages>
|
||||
|
|
|
|||
Loading…
Reference in New Issue