Improve semantic classification precision for BUG-015
This commit is contained in:
@@ -101,17 +101,20 @@ Final answer:
|
||||
prompt = build_prompt("transcript.txt", "Anna: Agreed.")
|
||||
|
||||
self.assertIn("Du extrahierst Informationen aus Meeting-Transkripten.", prompt)
|
||||
self.assertIn("You extract decisions from meeting transcript text.", prompt)
|
||||
self.assertIn("Extract each decision as one atomic commitment.", prompt)
|
||||
self.assertIn("Classification contract for Decisions", prompt)
|
||||
self.assertIn("A Decision requires evidence", prompt)
|
||||
self.assertIn("Anna: Agreed.", prompt)
|
||||
|
||||
def test_build_prompt_includes_todo_prompt_file(self) -> None:
|
||||
prompt = build_prompt("transcript.txt", "Nina: I will update it.")
|
||||
|
||||
self.assertEqual(EXTRACTION_TASK_PROMPT_NAMES, ("decisions.md", "todos.md"))
|
||||
self.assertIn("Action-item responsibility rule:", prompt)
|
||||
self.assertEqual(
|
||||
EXTRACTION_TASK_PROMPT_NAMES,
|
||||
("classification.md",),
|
||||
)
|
||||
self.assertIn("Action Item:", prompt)
|
||||
self.assertIn(
|
||||
"A named responsible person may be extracted only when the transcript contains",
|
||||
"person may be named only when explicitly assigned",
|
||||
prompt,
|
||||
)
|
||||
|
||||
@@ -131,8 +134,9 @@ Final answer:
|
||||
)
|
||||
|
||||
for prompt in (no_context_prompt, context_prompt):
|
||||
self.assertIn("You extract decisions from meeting transcript text.", prompt)
|
||||
self.assertIn("Action-item responsibility rule:", prompt)
|
||||
self.assertIn("Classification contract for Decisions", prompt)
|
||||
self.assertIn("Action Item:", prompt)
|
||||
self.assertIn("Open Question:", prompt)
|
||||
|
||||
def test_prompt_assembly_is_deterministic(self) -> None:
|
||||
first = build_prompt("transcript.txt", "Nina: I will update it.")
|
||||
@@ -140,6 +144,20 @@ Final answer:
|
||||
|
||||
self.assertEqual(first, second)
|
||||
|
||||
def test_classification_contracts_follow_transcript(self) -> None:
|
||||
prompt = build_prompt("transcript.txt", "SOURCE_SENTINEL")
|
||||
|
||||
transcript_end = prompt.index("--- ENDE TRANSKRIPT ---")
|
||||
self.assertGreater(prompt.index("Classification contract", transcript_end), transcript_end)
|
||||
self.assertGreater(
|
||||
prompt.index("Action Item:", transcript_end),
|
||||
transcript_end,
|
||||
)
|
||||
self.assertGreater(
|
||||
prompt.index("Open Question:", transcript_end),
|
||||
transcript_end,
|
||||
)
|
||||
|
||||
def test_build_protocol_groups_extraction_items(self) -> None:
|
||||
with tempfile.TemporaryDirectory() as directory:
|
||||
input_dir = Path(directory)
|
||||
|
||||
Reference in New Issue
Block a user