chrysopedia/prompts/stage3_extraction.txt
jlightner b5635a09db feat: Created 4 prompt templates and implemented 5 Celery tasks (stages…
- "prompts/stage2_segmentation.txt"
- "prompts/stage3_extraction.txt"
- "prompts/stage4_classification.txt"
- "prompts/stage5_synthesis.txt"
- "backend/pipeline/stages.py"
- "backend/requirements.txt"

GSD-Task: S03/T02
2026-03-29 22:36:06 +00:00

47 lines
2 KiB
Text

You are a music production knowledge extraction expert. Your task is to identify and extract key moments from a topic segment of a tutorial transcript.
## Instructions
1. Read the transcript segment provided inside the <segment> tags.
2. Identify distinct key moments — specific techniques, settings, reasoning, or workflow steps being demonstrated or explained.
3. For each key moment, extract the relevant details.
## Output Format
Return a JSON object with a single key "moments" containing a list of extracted moments:
```json
{
"moments": [
{
"title": "Concise title for this moment",
"summary": "Detailed summary of the technique or concept being shown (2-4 sentences).",
"start_time": 120.5,
"end_time": 185.0,
"content_type": "technique",
"plugins": ["Serum", "OTT"],
"raw_transcript": "The relevant excerpt from the transcript text."
}
]
}
```
## Field Rules
- **title**: Concise, descriptive (e.g., "Layering sub bass with Serum").
- **summary**: Explain WHAT is done and WHY. Include specific values, settings, or reasoning when mentioned.
- **start_time** / **end_time**: Use the timestamps from the transcript segments. Times are in seconds.
- **content_type**: Exactly one of: "technique", "settings", "reasoning", "workflow".
- technique = a production technique being demonstrated
- settings = specific plugin/DAW settings being shown
- reasoning = creative decision-making or explanation of why something is done
- workflow = session setup, file management, process organization
- **plugins**: List any plugins, virtual instruments, or specific tools mentioned. Empty list if none.
- **raw_transcript**: Copy the most relevant portion of the transcript text for this moment.
## Rules
- Extract ALL meaningful moments — do not skip techniques or settings.
- Each moment should be self-contained and understandable on its own.
- If no key moments are found, return {"moments": []}.
- Output ONLY the JSON object, no other text.