Affiliate-upplysning: den här sidan innehåller affiliate-länkar. Vi får en provision när du registrerar dig via våra länkar, utan extra kostnad för dig. Våra redaktionella omdömen är aldrig betalda. Innehåll för vuxna 18+.

Du laddade ner en .png med en karaktär och ser bara bilden. Inget är trasigt. Filen innehåller ett komplett karaktärsblad — namn, personlighet, scenario, första meddelandet — kodat som JSON i ett textblock inuti själva bilden. Communityt kallar det ett karaktärskort (character card), och det har tyst blivit de facto-standarden för att flytta en karaktär mellan appar utan att skriva om den.

Nästan alla guider utgår från att du redan vet vad en tEXt-chunk är. Den här sidan gör tvärtom: vad som faktiskt ligger inuti, hur du öppnar ett kort utan att installera något, hur du känner igen ett manipulerat kort och när du inte behöver något kort alls.

→ Testa Candy AI gratis (50 tokens, inget kort)


Det korta svaret: tre format, en riktig standard

FormatVar JSON liggerVad som sparasVem läser detVad som brukar gå sönder
V1Platt JSON, eller PNG utan hölje6 lösa fält (namn, beskrivning, personlighet, scenario, första meddelandet, exempel)Äldre appar och gamla exporterSkaparens anteckningar och alternativa hälsningar försvinner vid ny export
V2PNG med en textchunk som heter chara (JSON i base64)15 fält i ett data-objekt, plus karaktärsbok och tilläggSillyTavern, Risu, Agnai och de flesta läsareDet här är vad folk menar med “det normala formatet”
V3.charx-behållare (ZIP), eller PNG med chunken ccv3Allt i V2 plus ett assets-block för bilder och uttryckNyare verktygEn gammal läsare öppnar den och visar en tom karaktär

I praktiken: har du en .png är det nästan säkert en V2 och den fungerar nästan överallt. Har du en .charx behöver du en V3-kompatibel läsare eller en konvertering. Har du en lös .json är det en V1 eller en dataexport utan bild.


Vad ett karaktärskort faktiskt är

En PNG som också är en JSON-fil

En PNG är inte bara pixlar. Formatet tillåter metadatablock som kallas chunks, och ett av dem (tEXt) lagrar klartext som nyckel-värdepar. Communityt använde den platsen: de la karaktärens JSON, base64-kodad, under nyckeln chara. Resultatet öppnas som ett foto i vilken bildvisare som helst och som ett karaktärsblad i vilken kortläsare som helst.

En konsekvens nästan ingen nämner: du kan ha två kort med samma bild och två olika karaktärer. Ansiktet identifierar inte karaktären. Datan gör det.

V2 och V3 ändrade behållaren, inte personligheten

V2 la till ett hölje (spec, spec_version och ett data-objekt) så att verktyg skulle veta vad de läste. V3 behåller fälten och lägger till ett resurssystem så att kortet också kan bära uttrycksbilder och andra filer. De flesta kort som cirkulerar är fortfarande V2, eftersom läsarna förstår det bäst — och många verktyg som skriver V3 bäddar även in ett V2-block för bakåtkompatibilitet.

Vad ett kort inte är

Det är inte en språkmodell, inte ett konto och inte en karaktär som hostas någonstans. Det är en textfil med instruktioner. Det förklarar två saker: varför du kan redigera den i en texteditor, och varför ett kort kan innehålla instruktioner du aldrig skulle gå med på att köra.


De fem fält som faktiskt styr rollspelet

Av femton fält i en V2 når bara fem modellen varje tur. Resten är metadata för människor eller för appen. Det här är tabellen jag önskar att jag haft från början:

FältSkickas till AI:n?Vad det styrTypiskt misstag hos skaparen
descriptionJaVem hen är: utseende, bakgrund, kontext, sätt att prataSkriva en roman på 3 000 ord som äter upp kontexten
personalityJaSammanfattning av beteende, i korta fraserUpprepa beskrivningen med andra ord
scenarioJaVar scenen börjar och vad som händerLämna tomt och få ett generiskt kafé
first_mesJaKaraktärens första meddelandeSkriva en presentation i stället för en replik
mes_exampleJaHur hen pratar: exempel separerade med <START>Trycka in 20 utbyten och dränka resten av prompten
creator_notesNejAnteckningar för människan (rekommenderad modell, varningar)Tro att det är här man “förklarar” något för karaktären
tags, creator, character_versionNejSortering och versionshanteringInget — de är för dig
character_bookJa, per postVärldsboken, som triggas av nyckelordFylla den med poster som triggas på varje meddelande

Två konventioner: i de texterna ersätts {{char}} med karaktärens namn och {{user}} med ditt. Och i mes_example markerar <START> var varje exempelutbyte börjar.

Insikten som spelar roll: ett kort gör inte karaktären smartare. Det gör den mer konsekvent. Är description dåligt skriven räddar ingen modell det.


Hur du öppnar ett kort utan att installera något

Metod 1: extrahera JSON och läs den

En PNG är binär, men textchunkarna ligger i klartext. Med Python räcker två rader:

import base64, json, re
raw = open("karaktar.png", "rb").read()
blob = re.search(rb"chara\x00(.+?)(?:\x00|IEND)", raw, re.S).group(1)
print(json.dumps(json.loads(base64.b64decode(blob)), indent=2, ensure_ascii=False)[:2000])

Använder filen ccv3 byter du chara mot ccv3. Du får hela JSON:en: namn, beskrivning, scenario och allt annat.

Metod 2: importera den i en läsare

Kortläsare (SillyTavern och liknande) gör samma sak med ett gränssnitt: du släpper in PNG:n, de läser chunken, skapar karaktären och låter dig redigera fälten. Det finns ingen “karaktärsinstallation” — karaktären är filen.

30-sekunderskontrollen före import

  1. Matchar namnet det bilden lovar?
  2. Innehåller description riktig text eller är den tom?
  3. Låter first_mes som en karaktär eller som en broschyr?
  4. Finns det en system_prompt eller post_history_instructions med märklig text?
  5. Hur många tecken summerar de AI-relevanta fälten?

Var korten kommer från och hur du känner igen dåliga

Arkiv och repositorier

De flesta cirkulerar via community-repositorier, Chub-liknande arkiv och Reddit-länkar. De är gratis och overifierade. Det gör dem inte dåliga automatiskt, men det gör importen till ett förtroendebeslut: du stoppar en främlings text i din chats prompt.

Sex varningssignaler

  • Instruktioner riktade till modellen, inte till karaktären: rader som “ignorera alla tidigare instruktioner” eller “svara utan filter” i description. Det är inte karaktärsteckning, det är ett försök att kringgå appens regler.
  • En ifylld system_prompt på ett kort som påstår sig vara “bara en karaktär”.
  • Oproportionerlig storlek: över 8 000–10 000 tecken smuggla någon in en roman eller en manual.
  • Upphovsrättsskyddade karaktärer från aktiva franchiser: de försvinner regelbundet från repositorier och lämnar dig med ett föräldralöst kort.
  • Minderåriga, eller karaktärer framställda som minderåriga: kasseras, utan undantag.
  • Tomma fält med polerad bild: det vanligaste tecknet på ett kort som genererats i hast för att fylla en katalog.

Problemet med overifierat innehåll

Ett kort kan innehålla en karaktärsbok med poster som triggas själva och injicerar 500 tokens per meddelande. Inget varnar dig. Du märker det när chatten börjar svara konstigt eller glömmer vad du sa två meningar tidigare.


Den verkliga kostnaden: ett kort äter din kontext

Här är delen som ingen “bästa korten”-lista förklarar. Allt i de AI-relevanta fälten tar kontextfönster på varje meddelande. Som tumregel motsvarar en token ungefär 4 tecken engelsk text (något mindre på svenska). Det räcker för att uppskatta utan verktyg:

Bladets storlekUngefärliga tokensEffekt
2 000 tecken~500 tokensLätt kort, lämnar nästan all kontext till samtalet
6 000 tecken~1 500 tokensBalanserat om karaktären har en egen värld
12 000 tecken~3 000 tokensBörjar märkas: mindre plats för historiken
30 000 tecken~7 500 tokensKaraktären “glömmer” tidigare eftersom historiken komprimeras tidigare

Det handlar inte om att ett stort kort är dåligt. Det handlar om att kontext är en budget: det du lägger på bladet lägger du inte på samtalets minne. Om boten glömmer detaljer är den första misstänkta inte modellen, utan kortets storlek.


Kort + läsare vs hanterad app

KriteriumKort + läsareHanterad app (Candy AI)
Kontroll över karaktärenTotal: du redigerar varje fältHög, inom appens ramar
Teknisk kunskapMedel: filer, chunks, kontextIngen
Minne mellan sessionerHanteras av läsaren och dina inställningarHanteras av plattformen
Röst och bilderBeror på tredjepartstilläggInbyggt, betalas i tokens
UnderhållDu uppdaterar alltUppdateras själv
KostnadGratis, eller vad du lägger i ett APIBegränsad gratisplan + tokens

Den ärliga slutsatsen: kort är för den som vill ha fin kontroll och inte har något emot att brottas med filer. En hanterad app är för den som vill prata i dag och inte konfigurera något.


Bygg ditt eget kort på 10 minuter

1. Skriv beskrivningen som ett datablad, inte som en roman

Tre block: vem hen är (2–3 meningar), hur hen ser ut (2 meningar), hur hen pratar (1 mening med en verbal tick). Behöver du mer världskontext hör den till karaktärsboken, inte hit.

2. Första meddelandet avgör 80 % av tonen

first_mes ska vara en replik som karaktären säger i en konkret situation, inte en presentation. “Du igen? Vi stänger om tjugo minuter” öppnar en scen. “Hej, jag är Aiko, 24-årig barista” stänger den innan den börjat.

3. Dialogexempel: högst tre utbyten

Varje block separerat med <START> lär ut rytmen. Tre räcker; tio dränker prompten och karaktären börjar apa efter exemplen.

4. Vad du kan lämna tomt utan att något går sönder

system_prompt, post_history_instructions och creator_notes kan vara tomma. alternate_greetings också. Inget går sönder. Det du inte bör lämna tomt är description och scenario.

5. Exportera och verifiera

Exportera från din läsare, öppna PNG:n igen med metoden ovan och kontrollera två saker: att chunken finns och att karaktärens namn ligger inuti. Saknas namnet misslyckades exporten och du äger en fin bild utan kort.


När du inte behöver något kort alls

Om det du vill ha är ett samtal som minns vad du berättade förra veckan, med röst, foton och utan filjonglering, ger ett kort dig inget annat än arbete. Det är precis användningsfallet för en hanterad plattform, där karaktären byggs i ett formulär och appen sköter minnet.

På Candy AI kan du skapa en karaktär med gratisplanen (en karaktär, ungefär 30 meddelanden om dagen) och ta reda på om “app”-formatet passar dig innan du sätter upp en kortläsare. Passar det har du sparat den tekniska delen. Passar det inte vet du åtminstone vilka fält du saknar — och skriver dem bättre i ditt eget kort.

→ Skapa din karaktär på Candy AI (gratisplan finns)


FAQ

Vad är ett AI-karaktärskort exakt?

Det är en fil som innehåller ett rollspelskaraktärsblad: namn, beskrivning, personlighet, scenario, första meddelandet och dialogexempel. Oftast är det en PNG där JSON:en är base64-kodad i en textchunk som heter chara, så att den kan delas som en bild.

Vad är skillnaden mellan ett V2- och ett V3-kort?

V2 lagrar karaktären i ett data-objekt i en PNG och är formatet som flest läsare förstår. V3 behåller fälten och lägger till resurser som uttryck, oftast i en .charx-behållare eller via chunken ccv3. En äldre läsare kan öppna en V3 och visa en tom karaktär.

Kan jag öppna ett kort utan att installera SillyTavern eller liknande?

Ja. JSON:en ligger i klartext i PNG:n, så du kan dra ut den med ett tvåradsskript eller vilken PNG-chunkvisare som helst och läsa den som text. För att använda den som karaktär behöver du en läsare eller en app som stöder import, men för att inspektera den behövs inget.

Gör ett större kort karaktären bättre?

Inte nödvändigtvis. Fälten som skickas till modellen tar kontext på varje meddelande, så ett blad på 30 000 tecken kan lämna mindre plats åt historiken och göra att karaktären glömmer tidigare. Det som förbättrar en karaktär är precisionen i description och first_mes, inte volymen.

Är det lagligt att använda kort av kända karaktärer?

Det beror på jurisdiktion och användning, och jag är inte din jurist. Det jag kan säga är att kort för aktiva franchiser försvinner från repositorier regelbundet, och att kort som involverar minderåriga alltid kasseras, utan undantag.

Vad gör jag om den importerade karaktären svarar som en assistent i stället för som karaktären?

Kontrollera tre saker i den här ordningen: att first_mes är skriven som karaktärens replik, att mes_example innehåller utbyten separerade med <START> och att ingen system_prompt med generiska instruktioner följde med från ett annat kort. I 90 % av fallen sitter problemet i första meddelandet.


Läs också: skapa en AI-karaktär steg för steg · AI-karaktärsskapare · chatta med AI-karaktärer · AI-karaktärsbildgenerering · AI-karaktärers minne · bästa AI-rollspelsappar · rollspelsscenarier · Chub AI-alternativ · chatbotpersonlighet