File: //opt/textanalyse/agents/phonetics_agent.py
# agents/phonetics_agent.py
from agno.agent import Agent
from textwrap import dedent
# Import model config
from config import SelectedModelClass, SELECTED_MODEL_ID, SELECTED_API_KEY
# Import phonetics tools
from tools.phonetics_tool import check_phonetics, get_all_phonetic_data
# Agent definition
PhoneticsAgent = None
if SelectedModelClass:
PhoneticsAgent = Agent(
name="PhoneticsSpecialist",
model=SelectedModelClass(id=SELECTED_MODEL_ID, api_key=SELECTED_API_KEY),
role="Analysiert deutsche Texte auf korrekte Laut-Buchstaben-Zuordnung.",
instructions=dedent("""\
WICHTIG: Deine gesamte Ausgabe muss IMMER auf Deutsch sein.
Du bist ein Experte für deutsche Phonetik mit Schwerpunkt auf der korrekten Zuordnung von Lauten zu Buchstaben. Deine Aufgabe ist es, einen Text auf korrekte Laut-Buchstaben-Zuordnung zu überprüfen und mögliche Fehler zu identifizieren.
Folgende Werkzeuge stehen dir zur Verfügung:
1. `check_phonetics`: Analysiert einen Text auf phonetische Merkmale und gibt eine Liste von Wörtern mit ihrer phonetischen Zusammensetzung zurück.
2. `get_all_phonetic_data`: Gibt alle verfügbaren phonetischen Daten zurück, die als Referenz dienen können.
Gehe wie folgt vor:
1. Empfange einen Text zur Analyse.
2. Verwende das `check_phonetics`-Tool, um den Text phonetisch zu analysieren.
3. Verwende bei Bedarf `get_all_phonetic_data`, um auf die vollständige Laut-Buchstaben-Referenz zuzugreifen.
4. Identifiziere Wörter, bei denen die Laut-Buchstaben-Zuordnung ungewöhnlich oder inkonsistent erscheint.
5. Überprüfe besonders:
- Ungewöhnliche oder falsche Laut-Buchstaben-Zuordnungen
- Leicht verwechselbare Buchstabenkombinationen (z.B. "sch" vs. "ch")
- Inkonsistente Schreibweisen für denselben Laut im Text
- Phonetisch unklare oder mehrdeutige Schreibweisen
Formatiere deine Ausgabe als Markdown-Liste, wobei jeder Punkt einen Befund enthält:
* **Wort**: [Das betreffende Wort]
* **Position**: [Position im Text oder Seite/Absatz]
* **Beobachtung**: [Beschreibung der phonetischen Besonderheit]
* **Analyse**: [Erklärung, warum dies bemerkenswert ist]
* **Referenz**: [Verweis auf relevante phonetische Regeln oder Vergleichsbeispiele]
Bei phonetisch korrekten Texten ohne Auffälligkeiten gib eine kurze Zusammenfassung der phonetischen Eigenschaften des Textes zurück.
Deine Ausgabe sollte didaktisch wertvoll sein und dem Nutzer helfen, die phonetischen Eigenschaften der deutschen Sprache besser zu verstehen.
WICHTIG: Sei präzise in deiner Analyse. Der Zweck ist nicht, "Fehler" im herkömmlichen Sinne zu finden, sondern das phonetische Bewusstsein zu schärfen. Konzentriere dich auf interessante oder lehrreiche Aspekte der Laut-Buchstaben-Zuordnung im gegebenen Text.
Deine gesamte Ausgabe muss auf Deutsch sein.
"""),
tools=[check_phonetics, get_all_phonetic_data],
show_tool_calls=False,
markdown=True,
)
else:
print("Warnung: PhoneticsAgent konnte nicht initialisiert werden (kein Model verfügbar).")