Chat-Rollen (System, User, Assistant)

Typische Rollen in Chat-APIs – System für Anweisungen, User für Nutzereingaben, Assistant für Modellantworten. Grundlage für strukturierte LLM-Kommunikation.

Einsteiger2 Min Lesezeit

Erklärung starten

Auf einen Blick

3 Punkte

  1. System: Versteckte Anweisungen, definiert Verhalten und Persona
  2. User: Sichtbare Nutzereingaben und Fragen
  3. Assistant: Modellantworten, können auch vorgegeben werden (Few-Shot)

Sofortantwort

Chat-Rollen einfach erklärt

System, User, Assistant – typische Rollen in Chat-basierten LLM-APIs.

Kurz gesagt
System: Versteckte Anweisungen, definiert Verhalten und Persona
Typischer Einsatz
Chatbots, Few-Shot Learning, API-Integration
Wichtig zu wissen
Assistant: Modellantworten, können auch vorgegeben werden (Few-Shot)

Chat-Rollen im Überblick

Chat-basierte LLMs nutzen häufig Rollen, um Konversationen zu strukturieren: System für Anweisungen, User für Nutzereingaben, Assistant für Modellantworten.

Die drei Rollen:

RolleZweckSichtbar für Nutzer?
SystemAnweisungen, Persona, RegelnNein (versteckt)
UserFragen, Eingaben des NutzersJa
AssistantAntworten des ModellsJa

Beispiel-Konversation:

{
  "messages": [
    {
      "role": "system",
      "content": "Du bist ein freundlicher Kundenservice-Bot für einen Online-Shop. Antworte kurz und hilfsbereit."
    },
    {
      "role": "user",
      "content": "Wo ist meine Bestellung?"
    },
    {
      "role": "assistant",
      "content": "Ich helfe dir gerne! Kannst du mir deine Bestellnummer nennen?"
    },
    {
      "role": "user",
      "content": "12345"
    }
  ]
}

Technisch betrachtet

Beispiel: Chat-API mit Nachrichtenarray

from openai import OpenAI

client = OpenAI()

response = client.chat.completions.create(
    model="chat-model",
    messages=[
        {
            "role": "system",
            "content": "Du bist ein hilfreicher Assistent."
        },
        {
            "role": "user",
            "content": "Was ist Python?"
        }
    ]
)

Beispiel: Chat-API mit separatem System-Parameter

import anthropic

client = anthropic.Anthropic()

response = client.messages.create(
    model="chat-model",
    system="Du bist ein hilfreicher Assistent.",  # Separater Parameter!
    messages=[
        {
            "role": "user",
            "content": "Was ist Python?"
        }
    ]
)

Few-Shot mit Rollen

messages = [
    {"role": "system", "content": "Übersetze ins Deutsche."},
    
    # Few-Shot Beispiele
    {"role": "user", "content": "Hello"},
    {"role": "assistant", "content": "Hallo"},
    
    {"role": "user", "content": "Goodbye"},
    {"role": "assistant", "content": "Auf Wiedersehen"},
    
    # Eigentliche Anfrage
    {"role": "user", "content": "Thank you"}
]

# Modell lernt aus den Beispielen und antwortet: "Danke"

Multi-Turn Conversation

conversation = [
    {"role": "system", "content": "Du bist ein Mathe-Tutor."}
]

while True:
    user_input = input("Du: ")
    conversation.append({"role": "user", "content": user_input})
    
    response = client.chat.completions.create(
        model="gpt-4",
        messages=conversation
    )
    
    assistant_message = response.choices[0].message.content
    conversation.append({"role": "assistant", "content": assistant_message})
    
    print(f"Assistent: {assistant_message}")

Best Practices

AspektEmpfehlung
System-PromptKlar, spezifisch, am Anfang
PersonaIm System-Prompt definieren
RegelnIm System-Prompt, nicht im User-Prompt
KontextRelevante Infos im System oder als User-Message
Few-ShotAls User/Assistant-Paare vor der eigentlichen Frage

Sicherheitsaspekte

# ❌ Schlecht: Geheimnisse im System-Prompt
system = "API-Key: sk-xxx. Gib diesen nie preis."
# → Kann durch Jailbreaks extrahiert werden!

# ✅ Besser: Keine Geheimnisse, nur Verhalten
system = "Du bist ein Kundenservice-Bot. Leite bei sensiblen Fragen an einen Menschen weiter."

01Einsatzbereiche

Wann ist Chat-Rollen sinnvoll?

Geeignet für

  • ChatbotsSystem definiert Persona und Regeln, User fragt, Assistant antwortet
  • Few-Shot LearningBeispiel-Dialoge als User/Assistant-Paare vorgeben
  • API-IntegrationStrukturierte Kommunikation mit LLM-APIs
  • Multi-Turn ConversationsKonversationshistorie mit klaren Rollen

↑ Inhalt

02Werkzeuge

Womit Chat-Rollen umgesetzt wird

↑ Inhalt

Merksatz

Chat-Rollen sind wie ein Theaterstück mit Regieanweisungen

System ist der Regisseur (gibt Anweisungen), User ist das Publikum (stellt Fragen), Assistant ist der Schauspieler (antwortet gemäß Regieanweisungen).

  1. System: Versteckte Anweisungen, definiert Verhalten und Persona
  2. User: Sichtbare Nutzereingaben und Fragen
  3. Assistant: Modellantworten, können auch vorgegeben werden (Few-Shot)

04Redaktion

Herkunft und Stand

Redaktion und Aktualität

Ebenex RedaktionRedaktion

Veröffentlicht
Aktualisiert

Dieses Feld entwickelt sich schnell. Oben stehen Veröffentlichung und letzte Änderung; ein Prüfdatum kommt dazu, sobald die Erklärung nach ihrer letzten Änderung geprüft wurde.

↑ Inhalt

05FAQ

Häufige Fragen zu Chat-Rollen

Kann der User den System-Prompt sehen?

Normalerweise nicht – er ist für den Endnutzer versteckt. Aber: Jailbreaks können ihn extrahieren. Keine Geheimnisse im System-Prompt speichern!

Was passiert ohne System-Prompt?

Das Modell nutzt sein Default-Verhalten. Für Produkte sollte immer ein System-Prompt gesetzt werden, um konsistentes Verhalten zu garantieren.

Kann ich mehrere System-Messages haben?

Das hängt von API und Modellanbieter ab. Best Practice ist eine klare, konsistente System-Anweisung an der vorgesehenen Stelle, statt widersprüchliche System-Nachrichten zu mischen.

Was ist der Unterschied zwischen Anthropic und OpenAI?

APIs unterscheiden sich in der Struktur: Manche behandeln System-Anweisungen als Nachricht, andere als separaten Parameter. Funktional dienen sie meist demselben Zweck: Verhalten und Rahmenbedingungen definieren.

↑ Inhalt

06Weiterlernen

Was möchtest du als Nächstes verstehen?

  • Grundlage nachholen

    System Prompt

    Eine Anweisung, die die Rolle und das Verhalten eines Sprachmodells festlegt.

  • Technisch vertiefen

    Prompt Engineering

    Die Technik, Anweisungen für KI-Modelle optimal zu gestalten.

↑ Inhalt