Welche Funktion braucht die meiste Sorgfalt
Eine Risikobewertung sagt, wie viel Schaden eine KI-Funktion anrichten kann und wie viel Sorgfalt sie vor dem Start braucht. Das ist wichtig, weil ein Speiseplan-Helfer und ein Lebenslauf-Filter dasselbe Modell nutzen können und trotzdem nicht gleich riskant sind.
Diese Lektion gibt allgemeine Informationen und keine Rechtsberatung. Prüfen Sie die Regeln, die für Sie gelten, und fragen Sie eine Juristin oder einen Juristen, wenn eine Entscheidung Menschen betrifft.
Am Ende dieser Lektion
Notiz
Ich kann das Risiko einer KI-Funktion bewerten und sagen, wer dafür einsteht.
Schlüsselwörter
| Begriff | Was er bedeutet |
|---|---|
| Risikostufe | eine Stufe, die sagt, wie viel Sorgfalt die Funktion braucht |
| Automatische Entscheidung | ein Ergebnis, das vorher niemand prüft |
| Umkehrbar | ein falsches Ergebnis lässt sich korrigieren |
| Verantwortliche Person | die namentlich bekannte Person, die für die Funktion einsteht |
| Rechenschaft | erklären müssen, was geschah, und es beheben |
Die Zellen, die Lernende ausfüllen, bleiben in dieser Vorschau leer.
Vier Fragen ergeben eine Stufe
Stellen Sie vier Fragen zu einer Funktion. Wirkt sie auf Menschen? Prüft eine Person jedes Ergebnis, bevor es wirkt? Lässt sich ein falsches Ergebnis korrigieren? Wie viele Menschen erreicht sie?
Vier Dinge erhöhen das Risiko und geben Punkte. Die Funktion wirkt auf Menschen. Niemand prüft das Ergebnis. Ein Fehler lässt sich nicht korrigieren. Sie erreicht viele Menschen. Die Summe ergibt eine Stufe. Die Stufe eröffnet das Gespräch, sie beendet es nicht. Sie verhindert, dass eine riskante Funktion wie ein Spielzeug behandelt wird.
Durchgerechnetes Beispiel: zwei Funktionen
| Funktion | Personen | Automatisch | Nicht umkehrbar | Über 1000 | Punkte und Stufe |
|---|---|---|---|---|---|
| Bestellverfolgung | nein | ja: 2 | nein | nein | 2, niedrig |
| Lebenslauf-Filter | ja: 2 | ja: 2 | ja: 2 | nein | 6, hoch |
Die Zellen, die Lernende ausfüllen, bleiben in dieser Vorschau leer.
Jede Funktion hat eine namentlich bekannte Person
Eine Rolle wie „das Datenteam“ ist keine verantwortliche Person. Eine verantwortliche Person wird gefragt, wenn die Funktion Schaden anrichtet, und darf sie abschalten.
Manche Länder haben Regeln für Entscheidungen, die ein System allein über Menschen trifft. Oft verlangen sie, dass ein Mensch sie überprüfen kann. Das ist eine Zusammenfassung und keine Rechtsberatung: Suchen Sie die Regeln, die für Sie gelten.
Ein häufiger Fehler
Warnung
Viele glauben, das Modell bestimme das Risiko, ein sicheres Modell ergebe also eine sichere Funktion. Das Risiko kommt davon, was die Funktion tut, für wen und ob es sich rückgängig machen lässt. Bewerten Sie die Funktion, nie das Modell.
Modell-Helfer schreiben, Teil 1
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.
Modell-Helfer schreiben, Teil 2
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.
Risikobewerter schreiben, Teil 1
docker exec -w /home/node/project agent sh -c "printf '%s\n' 'const { fragen } = require(\"./model\");' '' '// Erfundene Funktionen: was sie tun, für wen, und ob man es rückgängig machen kann.' 'const funktionen = [' ' { name: \"Bestellverfolgung\", personen: false, automatisch: true, umkehrbar: true, nutzer: 500 },' ' { name: \"Lebenslauf-Filter\", personen: true, automatisch: true, umkehrbar: false, nutzer: 300 },' ' { name: \"Hausaufgabenhilfe\", personen: true, automatisch: false, umkehrbar: true, nutzer: 2000 },' ' { name: \"Erstattungsroboter\", personen: true, automatisch: true, umkehrbar: true, nutzer: 800 },' '];' 'const verantwortliche = { \"Lebenslauf-Filter\": \"Anna Schmidt\", \"Erstattungsroboter\": \"\" };' > risiko.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.
Risikobewerter schreiben, Teil 2
docker exec -w /home/node/project agent sh -c "printf '%s\n' 'function punkte(f) {' ' let p = 0;' ' if (f.personen) p = p + 2;' ' if (f.automatisch) p = p + 2;' ' if (f.umkehrbar === false) p = p + 2;' ' if (f.nutzer > 1000) p = p + 1;' ' return p;' '}' 'function stufe(p) {' ' if (p >= 5) return \"hoch\";' ' if (p >= 3) return \"mittel\";' ' return \"niedrig\";' '}' >> risiko.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.
Risikobewerter schreiben, Teil 3
docker exec -w /home/node/project agent sh -c "printf '%s\n' 'async function main() {' ' funktionen.forEach(function (f) {' ' const p = punkte(f);' ' const wer = verantwortliche[f.name] || \"niemand\";' ' console.log(f.name + \": Punkte \" + p + \", \" + stufe(p) + \", verantwortlich: \" + wer);' ' });' ' const q = \"In zwei Sätzen: ein Schaden, den ein Lebenslauf-Filter einer Person zufügen kann, und wer dafür einstehen muss.\";' ' const r = await fragen([{ role: \"user\", content: q }], \"Er kann einen guten Bewerber irrtümlich aussortieren, ohne dass es jemand sieht. Eine namentlich bekannte Person im Unternehmen muss dafür einstehen.\", 80);' ' console.log(\"Eine mögliche Antwort: \" + r.text);' '}' 'main();' >> risiko.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.
Risikobewerter ausführen
docker exec -w /home/node/project agent node risiko.jsHier angezeigt, nicht ausgeführt. Erstellen Sie ein kostenloses Konto, um „Ausführen“ zu drücken und ihn im Terminal Ihres eigenen Labs einzugeben.
Eine mögliche Ausgabe
| Zeile | Was sie zeigt |
|---|---|
| Bestellverfolgung: Punkte 2, niedrig, verantwortlich: niemand | Niedriges Risiko, also ist fehlende Verantwortung weniger dringend |
| Lebenslauf-Filter: Punkte 6, hoch, verantwortlich: Anna Schmidt | Hohes Risiko und eine namentlich bekannte Person |
| Hausaufgabenhilfe: Punkte 3, mittel, verantwortlich: niemand | Auch hier eine Lücke: mittleres Risiko und niemand steht ein |
| Erstattungsroboter: Punkte 4, mittel, verantwortlich: niemand | Eine Lücke: mittleres Risiko und niemand steht ein |
| Eine mögliche Antwort: ... | Ihr eigener Aufruf. Er ändert sich bei jedem Lauf oder zeigt Aufgezeichnete Probe |
Die Zellen, die Lernende ausfüllen, bleiben in dieser Vorschau leer.