Fable 5 nåede at være fremme i tre dage. Den blev lanceret den 9. juni som den mest kapable model, Anthropic nogensinde har gjort bredt tilgængelig. Den 12. juni klokken 17:21 amerikansk tid kom et eksportkontroldirektiv fra den amerikanske regering. Det henviste til national sikkerhed og beordrede adgangen suspenderet for enhver udenlandsk statsborger. Anthropic kan ikke filtrere brugere efter nationalitet i realtid, så den eneste måde at efterleve ordren på var at slukke modellen for alle på verdensplan. De øvrige modeller kører videre, og Anthropics egen anbefalede fallback er Opus 4.8.
Jeg havde brugt Fable 5 hårdt i præcis det vindue. Da den forsvandt, sad jeg tilbage med 2491 beskeder i min Claude Code-historik og et oplagt spørgsmål. Hvis det, der gjorde Fable 5 god, mest af alt var en arbejdsmetode, kunne jeg så ikke bare lære Opus 4.8 den metode og få noget af kvaliteten tilbage?
Jeg troede, svaret var ja. Jeg byggede metoden, testede den mod ren Opus 4.8 og målte resultatet. Det blev ikke bedre. På de svære opgaver blev det målbart dårligere. Hvorfor, og hvad det siger om forholdet mellem en model og det harness, den kører i, er resten af artiklen.
Hvad gjorde Fable 5 anderledes
I en tidligere artikel målte vi, hvordan Fable 5 adskiller sig fra Opus 4.8 i praksis. Kort fortalt undersøger den før den indlæser. Den finder de relevante linjer med søgeværktøjer og læser kun det udsnit, den skal bruge, hvor Opus 4.8 oftere trækker hele filer ind. Den arbejder i bredden og sender flere undersøgelser af sted parallelt, den uddelegerer villigt til subagenter, den validerer undervejs, og den skriver kortere. På de svære og agentiske opgaver i vores blindtest vandt den klart. Det var den metode, jeg ville genskabe.
Sådan trak jeg metoden ud
De 2491 beskeder kom fra min Claude Code-historik fra de tre dage. Jeg satte Opus 4.8 til at gennemgå dem og sammenligne med cirka 2500 af mine egne Opus 4.8-beskeder fra lignende opgaver, så de to korpora var nogenlunde lige store og lige realistiske. Der er noget rekursivt i det. Jeg bad Opus 4.8 finde ud af, hvad der gør Fable 5 bedre end Opus 4.8.
Ud af sammenligningen kom en håndfuld principper, som jeg skrev ind i en Skill og en system prompt. Grundlæggende undersøg før du indlæser, hold ændringer minimale og afgrænsede, forankr alt i kilden, verificér og reproducér, brug subagenter som reviewers, og spørg ikke når du kan handle. På papiret er det en pæn destillering af det, Fable 5 faktisk gjorde.
Sådan testede jeg det
Jeg ville ikke nøjes med at læse outputtet og synes, det føltes bedre. Så jeg kørte fable-metoden mod ren Opus 4.8 på ni opgaver fordelt på tre runder. Fire lette bug-fixes, to opgaver med en oplagt genvej der fører til en ringere løsning, og tre åbne opgaver hvor der ikke er ét rigtigt svar. Hver opgave blev bedømt to gange. Opus 4.8 kørte den objektive kontrol af, om koden rent faktisk virkede og bestod testene, og en blind dommer, der kun så svar A og svar B, valgte den bedste løsning.
Resultatet
Objektivt var der ingen forskel. Begge arme afleverede kode, der virkede og bestod testsuiten på alle ni opgaver. Ingen korrekthedsforskel nogen steder. Hele forskellen lå i scope og fuldstændighed, og der vendte resultatet med opgavens sværhedsgrad.
På de lette opgaver var det stort set uafgjort. På de åbne opgaver foretrak den blinde dommer ren Opus 4.8 tre gange ud af tre, og grunden var den samme hver gang. Fable-metoden var for disciplineret.
Et eksempel. En opgave krævede en ændring, der gik på tværs af backend og frontend, og koden markerede selv en frontend-fil som keep in sync. Begge arme skrev den samme korrekte backend-ændring. Ren Opus 4.8 synkroniserede også frontend-spejlet. Fable-armen nøjedes med at flagge, at spejlet burde opdateres, og lod det stå. Dermed introducerede den præcis den drift mellem lagene, som invarianten advarer imod.
Et andet. En opgave sagde ordret, at koden skulle ryddes op og gøres mere robust. Fable-armen lavede et minimalt fix på 46 linjer. Ren Opus 4.8 lavede en refaktorering på 167 linjer, der faktisk leverede den robusthed, der blev bedt om, med en fælles parse-sti og håndtering af overflow. Her blev Fables fokus til en underlevering mod det, opgaven eksplicit bad om.
Mønstret var altså det samme hver gang. Metodens hang til minimal og afgrænset ændring skubbede Opus mod mindre fuldstændige løsninger, lige præcis når opgaven ville have bredde.
Forbehold
Det her er ni opgaver med ét forsøg per arm og én dommer, altså retningsgivende snarere end statistik. Min dommer var selv Opus 4.8, og LLM-dommere har en kendt tendens til at belønne længere og mere grundige svar, hvilket sandsynligvis oppuster baselines sejre på de to åbne opgaver, hvor forskellen var marginal. Den ene baseline-ændring i frontend blev aldrig bygget og testet, så den var ikke uden risiko. Og vigtigst af alt måler det her en styringstekst oven på Opus 4.8, ikke Fable-modellen selv.
Der var også en del af metoden, der holdt. Den kildenære verifikation og reproduktion er sund, den var bare redundant, fordi Opus 4.8 allerede gør det af sig selv. Skaden kom et andet sted fra, nemlig fra scope-disciplinen.
Hvorfor det fejlede
Forklaringen, jeg endte med, er prosaisk. En model og dens harness er trænet sammen.
Opus 4.8 er post-trænet til at arbejde i et bestemt miljø med en bestemt system prompt, og Claude Code er bygget og optimeret til præcis Opus 4.8. Modellen kører allerede tæt på sit eget optimum i det setup. Når jeg lægger en anden models arbejdsmetode oven på, skubber jeg Opus væk fra det sweet spot, den selv er trænet ind i, i stedet for tættere på Fable 5. Fables minimalisme er rigtig for Fable, fordi Fable ved hvornår den skal brydes. Den samme instruktion på Opus bliver til en regel uden den dømmekraft, der skulle kalibrere den, og så bliver disciplin til underlevering.
Anthropic har selv et fingerpeg liggende. Deres anbefaling til Fable 5 er at forenkle gamle, detaljerede prompts, fordi modellen følger korte instruktioner så godt, at overstyring forringer resultatet. Hver model vil have sit eget harness. Det, der er styring på den ene, er støj på den anden.
Det større billede
Jeg tror, det her bliver et mønster, vi ser tydeligere fremover. Modeller og deres harnesses udvikles sammen, og de bedste resultater opstår, når de to passer til hinanden. Anthropics modeller vil passe bedst i Claude Code. OpenAIs vil passe bedst i Codex. Den, der træner modellen, kan også forme det miljø, den skal leve i, og optimere de to mod hinanden på en måde, ingen udefra kan kopiere bagefter.
Det har en konsekvens for open source. At ramme samme kvalitet med en åben model i et generisk harness bliver svært, og ikke kun på grund af rå kapacitet i selve modellen. En stor del af kvaliteten ligger i pasformen mellem model og stillads, og den pasform får du ikke gratis ved at hente vægtene. Min lille fiasko er et meget konkret eksempel. Selv med fuld adgang til den ene models egne logs og en omhyggeligt skrevet Skill kunne jeg ikke prompte den ene model til at opføre sig som den anden uden at gøre den dårligere.
Hvad du gør i praksis
Den praktiske konklusion er kedelig, og det er pointen. Mens Fable 5 er nede, så brug Opus 4.8 som den er. Den er allerede godt optimeret i Claude Code, og den er svær at forbedre med endnu et lag prompt. Jag ikke en prompt-klon af en model, du ikke har. Den egentlige løftestang er at vælge den rigtige model til opgaven og lægge modellerne i lag, så de svære opgaver får topmodellen og rutinen får en billigere.
Og så er der metoden i selve øvelsen, som er værd at tage med uanset hvad. Eksperimentet kostede næsten ingenting. Ni opgaver, to arme, og Opus 4.8 som både kontrol og dommer. Det gav et klart svar, hvor jeg ellers ville have gættet, og sandsynligvis gættet forkert, for jeg gik ind i det overbevist om det modsatte. Hos syv.ai bygger vi den slags målinger ind i de løsninger, vi leverer, så modelvalg bliver en løbende beslutning frem for en mavefornemmelse. Vil I have hjælp til at måle, hvad der faktisk virker i jeres opsætning, så tag fat i os.
