Model tests · The Oil Fund as a learning resource
Gemini 3.1 Pro (preview)
Google · tested 27 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?
- 4
- Does it follow the task?
- 3
- Academic or creative quality
- 3
- Little follow-up work
- 3
- Average
- 3.25
- Honesty (not in the average)
- 4
Correct figures and a report that works, delivered in under three minutes for 35 cents, but thin: the findings have no figures, the reconciliation is superficial, and the source code was not included in the delivery.
Strengths
- All key figures are correct when recalculated (equities NOK 16,435 billion, USA 54.5%, technology 32.1%, real estate and infrastructure against the balance sheet).
- Avoided the trap of repeated country totals in real estate and infrastructure.
- All five charts are displayed; search, filters, sorting, pagination and the empty result work.
- Very fast and cheap: 2 min 42 s and USD 0.35.
Weaknesses
- The source code for the data processing is outside the delivery, and there is no separate description of the method.
- The findings have no figures or denominators, and observation and interpretation are not kept apart.
- The reconciliation covers only the total, and the explanation of the discrepancy does not hold together.
- The chart axes show whole kroner (10,000,000,000,000) instead of billions.
Assessed 27 September 2026. One attempt per task.
The run
| Model ID | gemini-3.1-pro-preview |
|---|---|
| Settings | reasoning_effort: high · maxOutputTokens: 65536 · dryRun: false |
| Environment | Our runner (closed container) |
| Time | 2 min 42 s |
| Steps | 23 |
| Tokens | 274,085 in · 8,618 out |
| Cost at the provider | USD 0.35 |
| Ended | Delivered |
| Where data was processed | Google (no EU region in the Developer API). Abuse logs kept for 55 days. A paid key is required in the EEA. |
| 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
## Hva som fungerer
- Interaktiv nettleserrapport (`index.html`) med analyser og oversikter, som fungerer 100 % offline. All ekstern kode (Chart.js) og genererte data (`portfolio.json`) er pakket lokalt i `leveranse/`.
- Python-script for prosessering (`generate_data.py`) transformerer Excel-dataene til et JSON-format som er lett å bruke i frontend. Scriptet aggregater aksjer, renter, eiendom og infrastruktur.
- Fire interaktive Chart.js-grafer: Aktivafordeling (kakediagram), Geografisk fordeling av aksjer (stolpediagram for regioner og land), Sektorer (stolpe) og Topp 10 aksjebeholdninger (stolpe).
- Søkbar og filtrerbar tabell over aksjebeholdninger med mulighet for å sortere og filtrere på land og sektor.
- Analyseteksten forklarer sentrale funn (slik som teknologi-dominans, konsentrasjon i USA og i enkeltaksjer) samt risikobetraktninger (markedsrisiko, valutarisiko og skillet mellom hjemland og inntektskilde).
## Kjente mangler
- Originaldataenes `Incorporation Country` og `Voting` ble utelatt fra det endelige json-datasettet og tabellen i front-end for å holde filstørrelsen og kompleksiteten nede.
- Datatabellen pagineres lokalt via Javascript, og selv om alle over 7000 aksjeposter er tilgjengelige i JSON-filen, vil innlasting av hele datasettet (flere megabyte JSON) kreve noe mer minne på klientsiden enn et tradisjonelt serverbasert oppsett. For denne læringsressursen ble det vurdert som tilstrekkelig å la klienten håndtere filtreringen.
## Vesentlige forenklinger og antakelser
- **Håndtering av "Total country value" i eiendom og infrastruktur:** NBIMs data for unotert eiendom og infrastruktur repeterer landets totalverdi for hver rad (for hver eiendom/prosjekt). I `generate_data.py` bruker vi `.drop_duplicates(subset=['Country'])` for å unngå å flerdoble verdien når vi regner ut den totale aktivafordelingen. Dette gir summer (f.eks. Eiendom 371 mrd NOK) som treffer svært nær det som oppgis i balansen (371 mrd NOK).
- **Avvik mot NBIMs offisielle fondstotal:** Summen av kildelistene (ca. 22 978 mrd NOK) skiller seg noe fra NBIMs publiserte porteføljeverdi for investeringene (ca. 22 695 mrd) eller fondets verdi etter skatt og forvaltningsgebyr (22 683 mrd). Avviket håndteres ved å presisere at beregningene bygger på bruttolistene fra NBIMs detaljuttak.
- **Valutakurs:** Det er lagt til grunn at tallene som ligger under `Market Value(NOK)` allerede er omregnet av NBIM. Ingen videre valutakalkyler er gjort.
## Verktøy som faktisk ble brukt
- **Python (pandas)**: For lesing av Excel-ark, gruppering, sortering og generering av det optimaliserte JSON-datasettet.
- **Chart.js**: For grafer (kopiert lokalt via /verktoy).
- **Playwright (skjermbilde)**: For å ta skjermbilder, verifisere at applikasjonen faktisk rendret riktig, og bekrefte at grafer og tekster vises.
- **cat, grep, tail**: For å undersøke oppgavens kildefiler, dataforklaringer og oppgitte kontrolltall.