Lässt es sich mit cremefarbenem Papier, einer Tönung, mehr Kontrast oder größerer Schrift besser lesen? Wählen Sie Ihre Farben und Ihre Schrift, einmalig für alle Seiten.

Kostenlose Lektion

Ein Risikoregister für eine KI-Funktion

Nach dieser Lektion: Ich kann die Risiken einer KI-Funktion so aufschreiben, dass nichts fehlt.

Lektion, 65 Min.7 BefehleLab für KI-Coding-Agenten: mit opencode Code erklären und reparieren lassen und die Arbeit prüfen

Risiken aufschreiben, damit keines fehlt

Ein Risikoregister ist eine Tabelle dessen, was bei einer Funktion schiefgehen kann, wie wahrscheinlich das ist und was Sie dagegen tun.

Ein Team, das über Risiken nur spricht, vergisst einige. Ein Register steht auf Papier. So prüfen Sie es auf Lücken und ordnen das Schlimmste nach vorn.

Am Ende dieser Lektion

Notiz

Ich kann die Risiken einer KI-Funktion so aufschreiben, dass nichts fehlt.

Schlüsselwörter

BegriffWas er bedeutet
Risikoetwas, das für einen Menschen schiefgehen kann
Wahrscheinlichkeitwie wahrscheinlich es ist, von 1 bis 3
Auswirkungwie schlimm es wäre, von 1 bis 3
Maßnahmewas Sie tun, damit ein Risiko kleiner wird
Bereichein Teil des Weges der Daten, etwa Speicherung

Die Zellen, die Lernende ausfüllen, bleiben in dieser Vorschau leer.

Jedes Risiko hat eine Punktzahl und eine Maßnahme

Geben Sie jedem Risiko eine Wahrscheinlichkeit und eine Auswirkung, jeweils von 1 bis 3. Die Punktzahl ist das Produkt beider. Eine Punktzahl bis 2 ist niedrig, 3 oder 4 ist mittel, und 6 oder 9 ist hoch.

Jede Zeile braucht außerdem eine Maßnahme. Ein Risiko ohne Plan ist nur eine Sorge.

Durchgerechnetes Beispiel: Wahrscheinlichkeit mal Auswirkung

RisikoWahrscheinlichkeitAuswirkungPunktzahlStufe
Prompt enthält eine E-Mail326Hoch
Protokoll speichert ganze Prompts236Hoch
Sicherung behält gelöschte Daten224Mittel
Beschäftigte lesen jeden Chat133Mittel

Die Zellen, die Lernende ausfüllen, bleiben in dieser Vorschau leer.

Ein Register kann Lücken und schlechte Zeilen haben

Eine Zeile kann falsch sein: eine Wahrscheinlichkeit von 5 oder eine leere Maßnahme. Ein Register kann auch unvollständig sein. Prüfen Sie, dass jeder Bereich des Datenwegs mindestens eine Zeile hat.

Typische Bereiche sind Erhebung, Versand, Speicherung, Zugriff, Löschung und Training, also die Nutzung der Daten, um ein Modell etwas zu lehren. Ein Bereich ohne Zeile ist eine Lücke.

Ein häufiger Fehler

Warnung

Viele denken, die Punktzahl sei eine Messung. Sie ist ein Urteil, das als Zahl geschrieben steht, und zwei Menschen können abweichen. Nutzen Sie sie, um das Gespräch zu ordnen, und nie, um zu beweisen, dass eine Funktion sicher ist. Ein kurzes Register kann einfach ein unvollständiges sein.

Die Modellhilfe schreiben, Teil 1

Befehl
docker exec -w /home/node/project agent sh -c "printf '%s\n' 'const basis = process.env.AI_URL || \"http://ai:4000\";' '// Die Token einer Antwort oder null, wenn sie keine nennt.' 'function zaehlen(daten, name) {' '  return daten.usage && typeof daten.usage[name] === \"number\" ? daten.usage[name] : null;' '}' > model.js"

Hier angezeigt, nicht ausgeführt. Erstellen Sie ein kostenloses Konto, um „Ausführen“ zu drücken und ihn im Terminal Ihres eigenen Labs einzugeben.

Die Modellhilfe schreiben, Teil 2

Befehl
docker exec -w /home/node/project agent sh -c "printf '%s\n' 'async function fragen(nachrichten, probe, max) {' '  try {' '    const res = await fetch(basis + \"/v1/chat/completions\", {' '      method: \"POST\",' '      headers: { \"content-type\": \"application/json\", authorization: \"Bearer lab\" },' '      body: JSON.stringify({ model: \"lab\", messages: nachrichten, max_tokens: max || 100 }),' '      signal: AbortSignal.timeout(30000),' '    });' '    if (res.ok === false) throw new Error(\"Status \" + res.status);' '    const d = await res.json();' '    return { text: d.choices[0].message.content, eingabe: zaehlen(d, \"prompt_tokens\"), ausgabe: zaehlen(d, \"completion_tokens\"), aufgezeichnet: false };' '  } catch (fehler) {' '    console.log(\"Aufgezeichnete Probe: Kein Modell hat geantwortet (\" + fehler.message + \").\");' '    return { text: probe, eingabe: null, ausgabe: null, aufgezeichnet: true };' '  }' '}' 'module.exports = { fragen };' >> model.js"

Hier angezeigt, nicht ausgeführt. Erstellen Sie ein kostenloses Konto, um „Ausführen“ zu drücken und ihn im Terminal Ihres eigenen Labs einzugeben.

Die Registerprüfung schreiben, Teil 1

Befehl
docker exec -w /home/node/project agent sh -c "printf '%s\n' 'const { fragen } = require(\"./model\");' 'const erforderlich = [\"erhebung\", \"versand\", \"speicherung\", \"zugriff\", \"loeschung\", \"training\"];' 'const register = [' '  { risiko: \"Prompt enthält eine E-Mail\", bereich: \"versand\", w: 3, a: 2, massnahme: \"Vorher schwärzen\" },' '  { risiko: \"Protokoll speichert ganze Prompts\", bereich: \"speicherung\", w: 2, a: 3, massnahme: \"Nur die Länge protokollieren\" },' '  { risiko: \"Sicherung behält gelöschte Daten\", bereich: \"loeschung\", w: 2, a: 2, massnahme: \"\" },' '  { risiko: \"Beschäftigte lesen jeden Chat\", bereich: \"zugriff\", w: 1, a: 3, massnahme: \"Leser begrenzen\" },' '  { risiko: \"Anbieter behält Prompts\", bereich: \"erhebung\", w: 0, a: 3, massnahme: \"Vertrag prüfen\" },' '];' > register.js"

Hier angezeigt, nicht ausgeführt. Erstellen Sie ein kostenloses Konto, um „Ausführen“ zu drücken und ihn im Terminal Ihres eigenen Labs einzugeben.

Die Registerprüfung schreiben, Teil 2

Befehl
docker exec -w /home/node/project agent sh -c "printf '%s\n' 'function stufe(s) { return s <= 2 ? \"niedrig\" : s <= 4 ? \"mittel\" : \"hoch\"; }' 'function probleme(r) {' '  const aus = [];' '  if (r.w < 1 || r.w > 3) aus.push(\"Wahrscheinlichkeit außerhalb 1 bis 3\");' '  if (r.a < 1 || r.a > 3) aus.push(\"Auswirkung außerhalb 1 bis 3\");' '  if (r.massnahme.trim().length === 0) aus.push(\"keine Maßnahme\");' '  return aus;' '}' >> register.js"

Hier angezeigt, nicht ausgeführt. Erstellen Sie ein kostenloses Konto, um „Ausführen“ zu drücken und ihn im Terminal Ihres eigenen Labs einzugeben.

Die Registerprüfung schreiben, Teil 3

Befehl
docker exec -w /home/node/project agent sh -c "printf '%s\n' 'function abgedeckt(bereich) {' '  return register.some(function (r) { return r.bereich === bereich; });' '}' 'async function main() {' '  const rang = register.slice().sort(function (a, b) { return b.w * b.a - a.w * a.a; });' '  rang.forEach(function (r) {' '    const s = r.w * r.a;' '    console.log(s + \" \" + stufe(s) + \" | \" + r.risiko + \" | \" + JSON.stringify(probleme(r)));' '  });' '  console.log(\"fehlende Bereiche: \" + JSON.stringify(erforderlich.filter(function (b) { return abgedeckt(b) === false; })));' >> register.js"

Hier angezeigt, nicht ausgeführt. Erstellen Sie ein kostenloses Konto, um „Ausführen“ zu drücken und ihn im Terminal Ihres eigenen Labs einzugeben.

Die Registerprüfung schreiben, Teil 4

Befehl
docker exec -w /home/node/project agent sh -c "printf '%s\n' '  const q = \"Nennen Sie in einem kurzen Satz eine Maßnahme gegen dieses Risiko: Eine Sicherung behält Daten nach einer Löschanfrage.\";' '  const probe = \"Legen Sie eine kurze Frist für Sicherungen fest und sagen Sie der Person, wann sie frei wird.\";' '  const antwort = await fragen([{ role: \"user\", content: q }], probe, 60);' '  console.log(\"Das Modell sagte: \" + antwort.text);' '}' 'main();' >> register.js"

Hier angezeigt, nicht ausgeführt. Erstellen Sie ein kostenloses Konto, um „Ausführen“ zu drücken und ihn im Terminal Ihres eigenen Labs einzugeben.

Die Registerprüfung ausführen

Befehl
docker exec -w /home/node/project agent node register.js

Hier angezeigt, nicht ausgeführt. Erstellen Sie ein kostenloses Konto, um „Ausführen“ zu drücken und ihn im Terminal Ihres eigenen Labs einzugeben.

Was der Run ausgibt

ZeileWas sie zeigt
6 hoch | Prompt enthält eine E-Mail | []Das schlimmste Risiko, ohne Problem
4 mittel | Sicherung behält gelöschte Daten | ["keine Maßnahme"]Eine Zeile mit fehlendem Teil
0 niedrig | Anbieter behält Prompts | ["Wahrscheinlichkeit außerhalb 1 bis 3"]Eine Zeile mit falscher Zahl
fehlende Bereiche: ["training"]Ein Bereich ohne Zeile
Das Modell sagte: ...Ein Satz. Die Worte ändern sich bei jedem Lauf

Die Zellen, die Lernende ausfüllen, bleiben in dieser Vorschau leer.

Über dieses Lab und seinen Quellcode: Lab für KI-Coding-Agenten: mit opencode Code erklären und reparieren lassen und die Arbeit prüfen

Sie unterrichten eine Gruppe? Weisen Sie dieses Modul Ihren Studierenden zu, mit Handbuch für Lehrende, automatisch geprüften Aufgaben und einem Lab für jede Person.