refactor: Pipeline-Stufen in Ordner mit ihren Prompts
Im Wurzelverzeichnis liegt nur noch TextToModel.py (Ablauf und CLI). Jede Stufe liegt mit Code und Prompt in einem eigenen Ordner: core, understanding, modeling, checks, solving, reporting, data, benchmark; Tests unter tests/, Aufgaben unter tasks/. understand_task, text_to_model/revise_model und review_assumptions/needs_work/select_best sind aus TextToModel.py zu ihren Prompts gewandert, inhaltlich unveraendert. Prompt-Kennung des Benchmarks bleibt 93744636095a. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
parent
b74445b8d6
commit
7459690bf5
1 changed files with 315 additions and 279 deletions
26
understanding/understand.py
Normal file
26
understanding/understand.py
Normal file
|
|
@ -0,0 +1,26 @@
|
|||
"""Stufe 1 der Pipeline: erfassen, was im Aufgabentext steht – Teilfragen und Zahlen, noch kein Modell."""
|
||||
from pathlib import Path
|
||||
from typing import List
|
||||
|
||||
from core.llm import LLMSession
|
||||
from core.model_schema import CheckIssue, TaskUnderstanding
|
||||
|
||||
UNDERSTAND_PROMPT_FILE = Path(__file__).parent / "Verstehen-Prompt.txt"
|
||||
|
||||
|
||||
def understand_task(session: LLMSession, task: str, issues: List[CheckIssue] = (),
|
||||
data_prompt: str = "") -> TaskUnderstanding:
|
||||
"""Stufe 0: erfassen, was im Text steht – Teilfragen, Zahlen, Machbarkeit. Noch kein Modell."""
|
||||
nachtrag = ""
|
||||
if issues:
|
||||
nachtrag = ("\n\nDEIN VORIGER VERSUCH WAR UNVOLLSTÄNDIG:\n"
|
||||
+ "\n".join(f"- [{i.code}] {i.message}" for i in issues)
|
||||
+ "\nErfasse die fehlenden Punkte, behalte den Rest bei.")
|
||||
return session.create(
|
||||
TaskUnderstanding,
|
||||
[
|
||||
{"role": "system", "content": UNDERSTAND_PROMPT_FILE.read_text(encoding="utf-8")},
|
||||
{"role": "user", "content": f"AUFGABENTEXT:\n{task}\n\n{data_prompt}{nachtrag}".strip()},
|
||||
],
|
||||
step="Verstehen",
|
||||
)
|
||||
Loading…
Reference in a new issue