ketl cloud
MOAT · Explainability by design

Hver AI-beslutning med kilde, regel og menneske-i-loopen

Strise bygget EU AI Act og AMLA inn som designpremiss. Ketl går skrittet videre: alle AI-kall tvinges gjennom en wrapper som produserer ExplainableResult<T> med kilder, regler, konfidens, modellversjon og prompt-hash. Resultatet er at regulator kan reprodusere en beslutning 3–5 år etter at den ble tatt.

6 prinsipper

Konfidens i hver output

Alle AI-kall returnerer et tall 0–1. Lav konfidens → policy tvinger menneske-i-loopen før beslutningen er bindende.

Kilder, ikke påstander

Hvert resultat lister faktiske kilder (Brreg, Kartverket, Sanksjonslisten …) med URI og tidspunkt. «Lest 2026-04-17 09:45» — ikke «typisk».

Modell-register i kode

Vi vet hvilken modell som produserte hvilken output. Endringslogg er versjonert i Git. AMLA art. 25 dekket.

Prompt-hash for reproduserbarhet

SHA-256 av canonical JSON(system, user, schema, context). Regulator kan 3–5 år senere reprodusere eksakt samme prompt.

Human-i-loopen-gating

Konfigurerbar policy: alle høyrisiko-events må bekreftes manuelt. Skjer i kode, ikke i modell — EU AI Act art. 14.

Null AI-output uten metadata

wrapLlmCall() er eneste vei til modellen. Schema-validering tvinger explainability-pakken på alle utgående kall.

Type-signatur

All AI-output bærer samme struktur. T er den domenespesifikke nyttelasten (risikoscore, sammendrag, triage- anbefaling …).

type ExplainableResult<T> = {
  result: T;
  explanation: {
    confidence: number;              // 0..1
    sources: SourceRef[];            // {kind, label, uri, retrievedAt}
    rulesFired: RuleHit[];           // {ruleId, ruleName, weight, reason}
    model: {id, provider, version};  // fra model-registry
    promptHash: string;              // SHA-256 hex
    timestamp: string;                // ISO 8601
    humanLoop: {
      status: "not_required"
            | "required_pending"
            | "required_done"
            | "overridden";
      reason: string;
      reviewerId?: string;
      reviewedAt?: string;
      overrideNote?: string;
    };
    rationale: string;                // klartekst til UI
    riskSignals: string[];
  };
};

Rammeverk-mapping

Hvilke felt i Explanation dekker hvilke juridiske krav. Brukes i revisor-samtaler og i pre-vedtaksdokumentasjon for offentlig sektor.

RammeverkArtikkelKravDekket av felt
EU AI ActArt. 13Transparens: bruker må få tilstrekkelig informasjon til å tolke output
ForklaringstekstKilderKonfidensnivå
EU AI ActArt. 14Menneskelig oversyn: design som muliggjør effektiv human-i-loopen
Menneske-i-loopen-statusKonfidensnivå
EU AI ActArt. 15Nøyaktighet, robusthet og cybersikkerhet
ModellversjonKonfidensnivå
EU AI ActArt. 60Logg av modellversjoner for generalformål-AI
ModellversjonPrompt-hash (reproduserbarhet)Tidspunkt
EU AMLAArt. 25Risikobaserte tiltak må være dokumentert og reproduserbare 5 år tilbake
KilderRegler som ble triggetPrompt-hash (reproduserbarhet)Tidspunkt
EU AMLAArt. 29Beslutninger om skjerpede tiltak skal kunne forklares
ForklaringstekstRegler som ble triggetMenneske-i-loopen-status
Norsk KI-lov§ 4 (forslag)Krav om forklaring til borger når offentlig sektor tar AI-beslutning
ForklaringstekstKilderMenneske-i-loopen-status
Norsk KI-lov§ 6 (forslag)Logg av modell og kilder for 3 år
ModellversjonKilderPrompt-hash (reproduserbarhet)
GDPRArt. 22Rett til menneskelig vurdering ved automatiserte beslutninger
Menneske-i-loopen-status
GDPRArt. 15Rett til innsyn i logikk bak automatisert beslutning
ForklaringstekstRegler som ble triggetModellversjon
DORAArt. 28Sporbarhet av tredjeparts modeller (anthropic, google …)
Modellversjon
EU MARArt. 16Logg av mistanke-deteksjon må kunne rekonstrueres
KilderRegler som ble triggetPrompt-hash (reproduserbarhet)Tidspunkt

Modell-register

Dette er de modellene som er produksjonsgodkjent i Ketl per dags dato. Endringer krever PR — diff-loggen er endringsloggen.

claude-sonnet-4-6AI Act high-risk

Triage av review-saker: anbefaler close_auto / human_review / escalate

Provider: anthropic

Versjon: 2026-03-15

Rolle: triage

Aktivert: 2026-03-20T00:00:00Z

Changelog (1)
  • 2026-03-20 — Tatt i bruk som erstatning for Sonnet 4.5
claude-opus-4-6

Sammendrag av lange saksdokumenter i living business record (#72)

Provider: anthropic

Versjon: 2026-03-15

Rolle: summary

Aktivert: 2026-03-25T00:00:00Z

Changelog (1)
  • 2026-03-25 — Tatt i bruk for sammendragsgenerering
gemini-2.5-proAI Act high-risk

Klassifisering av Brreg-event-typer (#73)

Provider: google

Versjon: 2026-02-10

Rolle: classification

Aktivert: 2026-02-15T00:00:00Z

Changelog (2)
  • 2026-02-15 — Første versjon, erstattet regex-baseline
  • 2026-04-01 — Finjustert med 2 400 Brreg-events
ketl-rules-v3

Deterministisk regelmotor for AMLA-triggere — IKKE AI, men loggføres likt

Provider: ketl-internal

Versjon: 3.2.0

Rolle: rules-engine

Aktivert: 2026-01-05T00:00:00Z

Changelog (2)
  • 2026-01-05 — v3 — støtter tenant-spesifikke regler
  • 2026-04-08 — v3.2 — severity-override for styrelederskifte
ketl-scoring-v2AI Act high-risk

Risikoscore 0–100 basert på 11 signaler (konkurs-nære roller, ...)

Provider: ketl-internal

Versjon: 2.1.0

Rolle: scoring

Aktivert: 2026-02-01T00:00:00Z

Changelog (2)
  • 2026-02-01 — v2 — skalert til 100 ulike signaler
  • 2026-03-10 — v2.1 — fikset overvekt av adresseendring
ketl cloud
DataApperMCPPriser
AI-transparensPersonvernSikkerhet

© 2026 ketl cloud

build c372edd · 2026-05-11 14:18:12 UTC