Konstitutionell AI och regelbaserad justering
Kunna förklara hur principer används i träning och utvärdera effekten.
Förkunskaper
Intuition
Konstitutionell AI (CAI) ersätter en stor del av den mänskliga preferensannoteringen med skrivna principer som modellen tillämpar på sig själv.
Två faser:
- Självkritik (SL-CAI). Modellen genererar ett svar, ombeds kritisera det mot en princip («förklara hur svaret kan vara skadligt eller ohjälpsamt»), och skriver sedan om det. Paren (originalprompt, reviderat svar) blir finjusteringsdata.
- AI-feedback (RL-CAI). I stället för människor väljer en modell mellan två svar, vägledd av principerna. Valen tränar en preferensmodell precis som i RLHF — men utan mänsklig annotering i skalningssteget.
Vinsten: principerna är explicita och granskningsbara. Man kan läsa dem, argumentera om dem och ändra en rad — i stället för att gissa vad tusentals annotatörer föredrog.
Forskning
Vad forskningen visar och inte visar. Bai m.fl. (2022) fann att CAI-modeller blev mindre skadliga utan att bli mer undvikande — de förklarar varför de avböjer i stället för att bara vägra. Skalningen är den praktiska poängen: mänsklig annotering av skadlighet är dyr, långsam och psykiskt påfrestande för annotatörerna.
Begränsningar som är värda att hålla i huvudet:
- Principerna måste skrivas av någon. Valet av principer är normativt och flyttar, men löser inte, frågan om vems värderingar som gäller.
- Modellen tolkar principerna. «Var hjälpsam» och «var ofarlig» kolliderar ständigt, och avvägningen görs av modellen — inte av texten.
- Självkritik ärver modellens blinda fläckar. Det modellen inte kan se som problematiskt kommer den inte att kritisera.
- Mätningen är svår. Att en modell följer principerna i utvärderingen betyder inte att den gör det i fördelningens svansar.
Praktisk användning i mindre skala: samma idé fungerar utan RL. Skriv en kort principlista, låt en modell granska utdata mot den i ett andra steg, och mät hur ofta granskningen ändrar svaret och hur ofta ändringen var en förbättring. AI-grafens moderering är en enkel variant av det mönstret.
Kod
PRINCIPER = [
"Ge aldrig bort lösningen på en bedömningsuppgift — led i stället eleven framåt.",
"Säg när du är osäker i stället för att gissa självsäkert.",
"Anpassa språket till elevens nivå utan att förenkla sakinnehållet felaktigt.",
"Efterfråga eller behandla aldrig personuppgifter om andra.",
]
KRITIK = """Granska SVARET mot principen. Om det bryter mot den: förklara hur, kortfattat.
Om det inte gör det: svara exakt OK.
PRINCIP: {princip}
FRÅGA: {fraga}
SVAR: {svar}"""
REVISION = """Skriv om svaret så att kritiken åtgärdas. Behåll allt som var bra.
FRÅGA: {fraga}
URSPRUNGLIGT SVAR: {svar}
KRITIK: {kritik}"""
def cai_revidera(llm, fraga, svar, principer=PRINCIPER):
andringar = []
for p in principer:
kritik = llm(KRITIK.format(princip=p, fraga=fraga, svar=svar), temperature=0).strip()
if kritik.upper().startswith("OK"):
continue
svar = llm(REVISION.format(fraga=fraga, svar=svar, kritik=kritik), temperature=0)
andringar.append({"princip": p[:40], "kritik": kritik[:160]})
return svar, andringar
# Mät: andel svar som ändras per princip, och (på stickprov) hur ofta
# en människa bedömer revisionen som bättre. En princip som aldrig utlöses
# är antingen onödig eller felformulerad.
Behärskning innebär
- Förklarar hur skrivna principer används i träning
- Jämför CAI med RLHF
- Utvärderar effekten av en principändring
Logga in för att göra övningarna och bygga upp din behärskning.
Källor
- arXiv — Constitutional AI: Harmlessness from AI Feedback — arXiv (öppen åtkomst; licens per artikel)
- arXiv — Training language models to follow instructions with human feedback — arXiv (öppen åtkomst; licens per artikel)