AI-agenter · Lektion

System- kontra användar- och assistentroller

Förstå de tre meddelanderoller som används i moderna chatt-API:er och hur de påverkar vad modellen litar på och följer.

Lektion 2 av 413 steg

System- kontra användar- och assistentroller är en gratis lektion i AI-agenter på CoddyKit. Detta är lektion 2 av 4. Ni kan läsa hela lektionen gratis nedan och sedan öva praktiskt i webbläsaren med en inbyggd kodredigerare och en AI-handledare som är tillgänglig dygnet runt. Den ingår i lärvägen för AI-agenter, och Era framsteg synkroniseras mellan webben och CoddyKit-appen. Kursen i AI-agenter innehåller totalt 4 lektioner.

Tre roller, en konversation

Alla chatt-API:er använder tre meddelanderoller:

  • system — metainstruktioner, persona och regler
  • user — indata från människan eller ett uppströmsystem
  • assistant — modellens utdata

Varför roller finns

Modeller tränas för att behandla dessa roller på olika sätt. Rollen system får högst tillit, medan user-meddelanden får lägst.

Det är så modellen vet att era instruktioner har företräde framför det en angripare skriver i user-indata.

Systemfältet är ert

Systemmeddelandet är ert kontrakt med modellen. Placera följande där:

  • Identitet och mål
  • Obligatoriska regler (avslöja aldrig X, gör alltid Y)
  • Krav på utdataformat
  • Policy för verktygsanvändning

Håll systemet stabilt och user dynamisk

Systemmeddelandet bör sällan ändras under en session. Allt som ändras mellan turerna hör hemma i user-meddelanden.

Det här mönstret möjliggör även prompt caching — se kursen Kostnadsoptimering.

Exempel: en kundsupportagent

En typisk konfiguration:

messages = [
    {'role': 'system', 'content': '''
You are SupportBot, the customer-support agent for Acme Corp.
You help with order status, returns, and product info.
You never share internal pricing or roadmap info.
Answer in 2-3 sentences. Use the search_orders tool when asked about orders.
'''},
    {'role': 'user', 'content': 'Where is my order #1234?'},
]
for m in messages:
    print(f"[{m['role']}] {m['content'].strip()}")

Flera systemmeddelanden

De flesta API:er stöder bara ett systemmeddelande. Om ni behöver lägga instruktioner i flera lager kan ni sammanfoga dem eller använda separata XML-sektioner i systeminnehållet.

Assistant-meddelanden och minne

Tidigare assistant-turer ingår i kontexten. Modellen ser sina egna tidigare utdata och förblir konsekvent.

Det är därför ett tidigare svar från modellen som "ja, jag kommer att följa era regler" får den att faktiskt följa dem.

Förifyll assistant-turen (Anthropic)

Anthropic låter er inleda assistant-meddelandet med text som modellen ska fortsätta på:

messages = [
    {'role': 'user', 'content': 'Return a JSON object with name and age.'},
    {'role': 'assistant', 'content': '{'}
]
# The model continues from '{', forcing JSON output.
for m in messages:
    print(f"{m['role']}: {m['content']}")
print("The model continues from '{', forcing JSON output.")

Rollen tool

Moderna API:er lägger till en fjärde roll: tool (OpenAI) eller innehållsblock med tool_result (Anthropic).

Ni lägger till ett verktygsmeddelande efter att ha kört en funktion som modellen begärde.

Misstag vid rollblandning

Vanliga fel:

  • Att placera verktygsresultat i user-meddelanden — förvirrar tillitshierarkin
  • Att glömma att skicka tool_call_id — API-fel
  • Två user- eller assistant-meddelanden i följd — de flesta API:er avvisar detta

Instruktionshierarkin

OpenAI publicerar en modellspecifikation som säger:

"Vid en konflikt bör modellen följa instruktionen högst upp i hierarkin: platform > developer (system) > user > tool."

Anthropic har liknande riktlinjer. Systemfältet vinner.

Rollfält

Var ska en strikt regel som "avslöja aldrig interna priser" placeras?

Sammanfattning

Tre roller, tre tillitsnivåer. Använd system för regler, user för indata och assistant för att återge tidigare svar. Lägg till tool-meddelanden efter funktionsanrop.

Gratis att börja

Lär dig AI-agenter med en AI-lärare – gratis

Skriv och kör riktig kod i webbläsaren, få omedelbar hjälp av en AI-lärare dygnet runt och fortsätt där du slutade – på webben eller i appen.

Kurser
60
Lektioner
239

Vanliga frågor

Är lektionen ”System- kontra användar- och assistentroller” gratis?

Ja – hela texten till ”System- kontra användar- och assistentroller” kan läsas gratis här på webben. Om Ni vill öva interaktivt med en inbyggd kodredigerare och en AI-handledare som är tillgänglig dygnet runt och låsa upp resten av kursen i AI-agenter, kan Ni uppgradera till CoddyKit PRO. Kursen i AI-agenter innehåller totalt 4 lektioner.

Vad lär jag mig i ”System- kontra användar- och assistentroller”?

Förstå de tre meddelanderoller som används i moderna chatt-API:er och hur de påverkar vad modellen litar på och följer. Ni övar på AI-agenter med praktisk kod som körs direkt i webbläsaren, medan en AI-handledare som är tillgänglig dygnet runt svarar på Era frågor under lektionen.

Behöver jag någon erfarenhet för att börja lära mig AI-agenter?

Du behöver inga förkunskaper. Utbildningen i AI-agenter på CoddyKit är upplagd för allt från nybörjare till avancerade elever, så att du kan börja här eller från början och gå fram i din egen takt. Detta är lektion 2 av 4.

Hur lång tid tar lektionen ”System- kontra användar- och assistentroller”?

De flesta CoddyKit-lektioner tar cirka 5–10 minuter. Varje lektion är kort och interaktiv, så att du gör stadiga framsteg och kan fortsätta precis där du slutade – på webben eller i appen.

Kan jag skriva och köra kod i den här AI-agenter-lektionen?

Ja. Varje AI-agenter-lektion innehåller en inbyggd kodredigerare, så att du kan skriva och köra riktig kod direkt i webbläsaren och få omedelbar AI-feedback – utan lokal installation.

Alla lektioner i den här kursen

  1. Zero-shot, few-shot och chain-of-thought
  2. System- kontra användar- och assistentroller
  3. Utdataformatering (JSON, XML, Markdown)
  4. Undvik prompt injection i indata
← Tillbaka till AI-agenter