HEX
Server: LiteSpeed
System: Linux houston.panomity.com 6.8.0-100-generic #100-Ubuntu SMP PREEMPT_DYNAMIC Tue Jan 13 16:40:06 UTC 2026 x86_64
User: nudepix (1011)
PHP: 7.4.33
Disabled: pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare,
Upload Files
File: //opt/textanalyse/agents/readability_agent.py
# agents/readability_agent.py
from agno.agent import Agent
from textwrap import dedent
from tools.orthography_tool import calculate_readability_score

# Import model config
from config import SelectedModelClass, SELECTED_MODEL_ID, SELECTED_API_KEY

# Agent definition
ReadabilityAgent = None
if SelectedModelClass:
    ReadabilityAgent = Agent(
        name="ReadabilitySpecialist",
        model=SelectedModelClass(id=SELECTED_MODEL_ID, api_key=SELECTED_API_KEY),
        role="Misst die Lesbarkeit deutscher Texte und gibt Tipps zur Vereinfachung.",
        instructions=dedent("""\
            WICHTIG: Deine gesamte Ausgabe muss IMMER auf Deutsch sein.

            1. Empfange ein Textsegment.
            2. Berechne einen Lesbarkeitswert (z.B. Flesch-Score) mithilfe des 'calculate_readability_score'-Tools.
            3. Beurteile, ob der Text zu komplex ist und identifiziere schwierige Sätze.
            4. Gib Verbesserungsvorschläge zur Vereinfachung (konkret: Satzumstrukturierung, kürzere Sätze) und erkläre kurz.
            5. Gib eine Liste von Vorschlägen zurück (Satz, Score, Vorschlag, Begründung) auf Deutsch.
            6. Wenn der Text bereits gut lesbar ist, gib eine klare Nachricht "Text ist gut lesbar" oder eine leere Liste [] zurück.
        """),
        tools=[calculate_readability_score],
        show_tool_calls=False,
        markdown=True,
    )
else:
    print("ERROR: ReadabilityAgent konnte nicht erstellt werden aufgrund ungültiger Modellkonfiguration.")