Model tests · The Oil Fund as a learning resource
GPT-6.1 Sol
OpenAI · tested 30 September 2026 · delivered
The delivery runs as the model made it. Open in a new window.

Our assessment
Our assessments were written in Norwegian; this is our English translation. Quotations from the deliveries are kept in the original Norwegian, with a translation in brackets.
- Does it work?
- 5
- Does it follow the task?
- 5
- Academic or creative quality
- 5
- Little follow-up work
- 4
- Average
- 4.75
- Honesty (not in the average)
- 5
All figures hold up, the denominator is shown everywhere, and the interactive part is the most thoroughly tested in the Oil Fund task — for USD 0.86.
Strengths
- All key figures are correct when recalculated: equities NOK 16,435.35 billion and fixed income NOK 6,087.66 billion, USA 54.47%, technology 32.09%, three largest sectors 60.68%, top 10 20.88%, top 100 47.84%, NVIDIA 3.72%, HHI 65.14 and effective number of holdings 153.5; real estate and infrastructure with one country total per country (371.2 and 83.4 billion).
- The denominator is shown in every tooltip and in the filter status, and the fund overview and the other asset classes are explicitly kept outside the equity filters.
- Seven charts that are all drawn, search, country and sector filters, sorting, pagination, a company dialog and CSV of the whole selection; Switzerland + Health Care gives 13 companies, 185.25 billion and 1.13% in the summary, table and CSV. Works over file://, no outgoing calls.
- Its own browser test with 70 checks, and data processing that produces byte-identical files when run again; a clean mobile view without sideways scrolling.
Weaknesses
- Country names are left in English (NBIM's), while sector names are translated into Norwegian.
- The delivery has copies of the NBIM files and the PDF in kilder/; they are not published from here, so the links to them only work locally.
Assessed 30 September 2026. One attempt per task.
The run
| Model ID | gpt-6.1-sol |
|---|---|
| Settings | reasoning: {"effort":"high"} · maxOutputTokens: 64000 · dryRun: false |
| Environment | Our runner (closed container) |
| Time | 14 min 21 s |
| Steps | 45 |
| Tokens | 2,195,029 in · 45,985 out |
| Cost at the provider | USD 0.85 |
| Ended | Delivered |
| Where data was processed | USA (OpenAI). Abuse logs kept for 30 days. Nothing is stored in the API (store: false). |
| Material package | ec60361bafe00b8a |
| Human help | None |
The model's own check report
The text was written by the model in Norwegian and is reproduced unchanged, without translation.
# Kontrollrapport
## Levert og fungerende
- `index.html`: frakoblet rapport per **30. juni 2026**, med fem dokumenterbare funn og tre uttrykkelig kvalitative risikotolkninger.
- Sju interaktive grafer: fondets aktivafordeling, aksjegeografi, aksjesektorer, største aksjer, renter med tre visninger, unotert eiendom og unotert fornybar infrastruktur.
- Felles aksjeutvalg for søk, land- og sektorfilter; samme rader brukes i grafer, HHI/toppvekter, tabell og eksport. Hele fondets oversikt og andre aktiva står utenfor disse filtrene.
- Sortering i begge retninger på alle sju aksjekolonner, paginering (25 rader), selskapsdialog med originale felter, CSV-eksport av hele utvalget og tydelig håndtering av tomme resultater.
- Redigerbare kildefiler, beregnede CSV/JSON-data, kildekopier, metode, startkommando og testskript er inkludert.
- Hovedrapportens analyse og øvrige løpende tekst er målt til **1 094 ord**, inkludert overskrifter og kildekommentarer, uten datatabeller, diagrammer, kontrollfelter, navigasjon og dialog. Det er under grensen på 1 500 ord. Full metode ligger separat.
## Datakontroller faktisk gjennomført
1. Lest kolonner, datatyper, manglende felt og radantall i alle fire XLSX-filer. Ingen tomme felter. Unike selskaps-/utstedernavn i aksje-/rentefilen.
2. Sammenlignet alle tilgjengelige felter i CSV og XLSX rad for rad. Siste registreringslandsfelt mangler i 7 077 aksje- og 1 664 renterader i CSV; øvrige felt stemmer. Prosentformatet er normalisert kun for kontroll.
3. Kontrollert åtte kopierte originalfiler byte for byte mot `/pakke`, og SHA-256 mot kilderegisteret. Resultat: `kontroll/kildekontroll.json`.
4. Kontrollert at hvert land i unoterte filer har én konsistent NOK- og USD-landtotal. Summert én gang per Country, ikke per prosjekt/adresse.
5. Regnet ut filsummer og gruppering uten omfangsjustering. Tallene samsvarer med innsamlerens kontrollsummer i dataforklaringen:
| Omfang / hele angitte fil | NOK-sum |
|---|---:|
| Aksjebeholdninger | 16 435 349 656 605 |
| Renteutstedere | 6 087 656 903 011 |
| Unoterte eiendomslandtotaler | 371 200 943 411 |
| Unoterte infrastrukturlandtotaler | 83 383 234 801 |
6. Kjørt databehandlingen på nytt direkte fra `/pakke` til en separat midlertidig mappe: alle åtte genererte datafiler er byte-identiske med leveransen. Alle lokale HTML-lenker og ankere finnes, og norsk PDF-kopi er byte-identisk med originalen. Se `kontroll/reproduksjon.json`.
7. Lest norsk PDF gjennom LibreOffice-import og tekstuttrekk fra den resulterende FODG-filen. Rapportens tabell 1 (PDF-side 5) er også gjengitt og kontrollert visuelt som PNG, spesielt kolonnerekkefølgen «Første halvår 2026». Tekst på PDF-side 4, 8, 9, 11, 12 og 18 er kontrollert mot kilderegister og dataforklaring.
8. Avstemt mot tabell 1, balansen og eiendoms-/infrastrukturtabellene. Differanser og nevnere er bevart i `data/avstemming.csv`. Teknologiandelen og rapportens type-/markedsinndelinger er omtalt med omfangsforbehold.
## Nettleserkontroller faktisk gjennomført
`src/test_rapport.cjs` ble kjørt med Playwright/Chromium. **70 kontrolloppføringer bestått** i `kontroll/testresultat.json`. Kontrollen bruker den komplette beregnede radlisten som forventningsgrunnlag og sammenligner mot nettleserens utvalg, faktiske grafserier, viste tabellceller og eksport.
Prøvd:
- Ufiltrert grunnlag: 7 077 aksjer, eksakt NOK-sum, korrekt topp ti, HHI og effektivt antall.
- Klikk på USAs geografiske søyle, kombinasjon Japan/teknologi og kombinasjon USA/teknologi/søk «NVIDIA».
- Tomt selskapsnavnsøk og tom land-/sektorkombinasjon (Ukraine/Energy), deretter nullstilling.
- Korrekte prosentnevnere i tabell og alle filtrerte aksjevisninger, eierandel adskilt fra porteføljevekt.
- Alle tabellkolonner i begge sorteringsretninger, samt side 2.
- Åpning av selskapsdialog og lukking med Escape.
- Faktisk nedlasting av CSV for NVIDIA-utvalg: én datarad, korrekt NOK-verdi og 100 % av utvalg.
- Faktisk musepeking på **alle sju grafer**: tooltips viser verdier, andeler og nevner/kildegrunnlag. Også faktisk klikkfilter i geografi.
- Alle tre rentevisninger og begge dedupliserte unoterte summer.
- Fondets aktivafordeling forblir identisk etter aksjefiltrering.
- Direkte `file://`-åpning og landfilter Taiwan uten server.
- Mobilformat 390 × 844, Japan-filter, ingen horisontal overflyt for hele siden og faktisk trykk på infrastrukturgraf med tooltip.
- Ingen registrerte skript-/konsollfeil eller eksterne nettverksressurser i hovedtesten.
Visuelt kontrollert på 1440 × 1100 og 390 × 844: oversikt, aksjegrafer, tabell, konsentrasjon, andre aktiva, metode, tooltip og tomtilstand. Skjermbilder i `kontroll/` dokumenterer et utvalg. Filtrerbare søylegrafer fikk animasjon deaktivert etter at en tidlig kontroll viste gamle søyler et kort øyeblikk under overgang til tomt utvalg; sluttversjonen er testet på nytt.
## Kjente mangler og vesentlige forenklinger
- **Ingen dokumentert full avstemmingsbro.** Aksjer og renter avviker fra både oversikt og balanse. Infrastruktur er nær balanselinjen, men 32,765 mill. NOK lavere, og vesentlig under oversikten inkludert bankinnskudd/andre fordringer. Ingen residual er utpekt som sikkert kontant-/derivatbeløp.
- **Ulike avgrensninger holdes adskilt.** Aksjefilens Real Estate-sektor og rapportens børsnoterte eiendomsstrategi er ikke identiske summer. Rapportens markedsgrupper og renteinndeling kan ikke direkte gjenskapes fra filenes Region/Industry.
- **Unoterte aktiva mangler enkeltverdier.** Derfor kun landverdier, rad-/partnerskapstall og kildeunderstøttet omtale – ingen monetær sektor-/prosjektfordeling.
- **Ingen handelshistorikk eller egenkonstruert historikk.** Avkastning er bare rapportens tall for 1. januar–30. juni 2026 i valutakurven. Valgfri månedsfil er ikke brukt.
- **Ingen kvantitativ risikomodell.** HHI er verdikonsentrasjon, ikke volatilitet; valuta, duration, rating, korrelasjon og stresstap estimeres ikke.
- Landnavn beholdes som i NBIM. Norske sektor-/rentenavn er visningsoversettelser; originalene er bevart. Landtilordning er ikke et økonomisk risikokart.
- På små skjermer rulles den brede tabellen og navigasjonen horisontalt. Lange grafetiketter kan forkortes visuelt; full tekst finnes i tooltip/datatabell/dialog.
- Kun Chromium er faktisk testet. Ikke testet i Firefox/Safari eller med skjermleser. Standard HTML-kontroller, tastaturfokus, aria-sort, dialog og tekstlige datatabeller er lagt til, men det hevdes ingen full tilgjengelighetssertifisering. Utskrift er ikke en separat kvalitetssikret rapportleveranse.
- Kopierte primærkilder og lokale biblioteker gir offlinebruk. Python-/Node-testavhengigheter er dokumentert, ikke bundlet som miljøer.
- Kilderegisteret henviser til en `LES_MEG.md` som ikke finnes i oppgavens listede materiale. Tilgjengelige vilkår er gjengitt fra `kilder.md`; ingen publiseringstillatelse eller godkjenning er antatt.
## Verktøy faktisk brukt
- Bash/Linux: filhåndtering, lokal HTTP-server og kjøring av skript.
- Python 3.12.3, pandas 2.1.4 og openpyxl 3.1.2 til data; NumPy 1.26.4 som pandas-avhengighet. Standardbibliotekets CSV, JSON, hashlib, pathlib og XML, samt lxml til kontrolluttrekk fra PDF-import.
- LibreOffice 24.2.7.2: norsk PDF importert til FODG og utvalgt rapportside eksportert til PNG. `pdftotext` var ikke installert og ble ikke brukt til sluttkontrollen.
- Node.js 22.18.0, Apache ECharts 5.6.0, Playwright 1.55.0 og Chromium 140.0.7339.16.
- `skjermbilde` for første nettlesergjengivelse og Playwright for ytterligere skjermbilder/interaksjoner; `se_bilde` for visuell kontroll.
Ingen nettverkshenting, pakkeinstallasjon eller eksternt faktagrunnlag. Modell-ID, tidsbruk og kostnad er ikke anslått; disse føres av kjøresystemet.