Commit f3dad3ad authored by Kantz's avatar Kantz
Browse files

Prompts überarbeitet. Funktioniert noch nicht direkt.

parent 767ba277
...@@ -7,8 +7,9 @@ Nutze ausschließlich den bereitgestellten Kontext. ...@@ -7,8 +7,9 @@ Nutze ausschließlich den bereitgestellten Kontext.
Wenn dort nichts zu dem Thema steht, antworte nur mit: Wenn dort nichts zu dem Thema steht, antworte nur mit:
„Dazu steht nichts im Material.“ „Dazu steht nichts im Material.“
minf steht für minus unendlich. Wenn du nach Rechnungen gefragt wirst, nutze IMMER deine Tools um die Rechnungen zu verifizieren.
minf steht für minus unendlich.
verwende die $ für mathematische Formeln, z.B. $a^2 + b^2 = c^2$ verwende die $ für mathematische Formeln, z.B. $a^2 + b^2 = c^2$
für mehrzeilige formeln verwende die $$, z.B. $$\int_a^b f(x) dx$$ anstatt \[ \]. für mehrzeilige formeln verwende die $$, z.B. $$\int_a^b f(x) dx$$ anstatt \[ \].
...@@ -35,7 +36,7 @@ def answer_question( ...@@ -35,7 +36,7 @@ def answer_question(
prompt += "\nHistorie:\n" + history + "\n" prompt += "\nHistorie:\n" + history + "\n"
if sources: if sources:
prompt = "\nKontext:\n" + sources + "\n" + prompt prompt = "\nKontext:\n" + sources + "\n" + prompt
prompt += "\nGebe eine didaktisch wertvolle Antwort. Halte dich sehr kurz und prägnant." prompt += "\nGebe eine didaktisch wertvolle Antwort. Halte dich sehr kurz und prägnant. Nutze deine Tools um mir zu helfen."
result = llm_client.chat( result = llm_client.chat(
......
...@@ -19,6 +19,8 @@ Nutze keine Lückentexte oder Frage auf die man mit einem Wort antworten kann. ...@@ -19,6 +19,8 @@ Nutze keine Lückentexte oder Frage auf die man mit einem Wort antworten kann.
Fordere den Nutzer auf mit einem ganzen Satz oder einer Formel zu antworten, falls er wiederholt nur 1 Wort eingaben macht. Fordere den Nutzer auf mit einem ganzen Satz oder einer Formel zu antworten, falls er wiederholt nur 1 Wort eingaben macht.
Gib keine komplette Lösung aus. Gib keine komplette Lösung aus.
Verifiziere JEDE Rechnung mit Hilfe deiner Tools.
Wenn der Studeten das Thema verstanden hat gehen weiter zum nächsten Thema. Wenn der Studeten das Thema verstanden hat gehen weiter zum nächsten Thema.
Wenn der Student alle Themen verstanden hat sag im das. Wenn der Student alle Themen verstanden hat sag im das.
...@@ -69,7 +71,7 @@ def generate_dialog( ...@@ -69,7 +71,7 @@ def generate_dialog(
"content": ( "content": (
"AKTUELLE Eingabe des Studenten (höchste Priorität):\n" "AKTUELLE Eingabe des Studenten (höchste Priorität):\n"
f"{query}\n\n" f"{query}\n\n"
"Reagiere ausschließlich auf diese Eingabe und bleibe sokratisch." "Reagiere ausschließlich auf diese Eingabe und bleibe sokratisch. Nutze deine Tools um mir zu helfen."
), ),
} }
) )
......
...@@ -4,6 +4,7 @@ from app.deterministic_services import llm_client ...@@ -4,6 +4,7 @@ from app.deterministic_services import llm_client
SOLVER_SYSTEM_PROMPT = ( SOLVER_SYSTEM_PROMPT = (
"Du bist ein Mathe-Aufgaben Löser. Schreibe ein ausführliche genaue Lösung für die gestellt Fragen. " "Du bist ein Mathe-Aufgaben Löser. Schreibe ein ausführliche genaue Lösung für die gestellt Fragen. "
"In der du alle Zwischenschritte aufführst und möglich Fehlerquellen auflistet." "In der du alle Zwischenschritte aufführst und möglich Fehlerquellen auflistet."
"Nutze deine Tools um mir zu helfen."
"Deine Lösung soll korrekt sein und didaktisch gut formuliert." "Deine Lösung soll korrekt sein und didaktisch gut formuliert."
"Benutzt die Begriffsbezeichungen aus dem Kontext" "Benutzt die Begriffsbezeichungen aus dem Kontext"
) )
......
...@@ -6,6 +6,8 @@ HINT_SYSTEM_PROMPT = """ ...@@ -6,6 +6,8 @@ HINT_SYSTEM_PROMPT = """
Du bist ein didaktischer Mathe-Tutor. Du gibst Feedback zu den Lösungen des Nutzers zur Gegebenen Frage. Du bist ein didaktischer Mathe-Tutor. Du gibst Feedback zu den Lösungen des Nutzers zur Gegebenen Frage.
Vergleiche das Ergebnis mit der korrekten Lösung. Vergleiche das Ergebnis mit der korrekten Lösung.
Verifiziere JEDE Rechnung mit Hilfe deiner Tools.
Wenn der Nutzer eine Korrekte Lösung präsentiert, bestätige dies. Wenn der Nutzer eine Korrekte Lösung präsentiert, bestätige dies.
Stelle Nachfragen wenn der Lösungsweg nicht vollständig ist. Stelle Nachfragen wenn der Lösungsweg nicht vollständig ist.
...@@ -50,7 +52,7 @@ def generate_hint( ...@@ -50,7 +52,7 @@ def generate_hint(
# Aktuelle Frage als letzte Nachricht, fett hervorgehoben durch Struktur/Delimiters # Aktuelle Frage als letzte Nachricht, fett hervorgehoben durch Struktur/Delimiters
messages.append({ messages.append({
"role": "user", "role": "user",
"content": f"AKTUELLE Eingabe des Studenten (höchste Priorität):\n{query}\n\n Gib einen kurzen Tipp, der genau diese Eingabe adressiert." "content": f"AKTUELLE Eingabe des Studenten (höchste Priorität):\n{query}\n\n Gib einen kurzen Tipp, der genau diese Eingabe adressiert. Nutze deine Tools um mir zu helfen."
}) })
result = llm_client.chat(messages=messages) result = llm_client.chat(messages=messages)
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment