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

Wann mehrere Agenten sinnvoll sind

Nach dieser Lektion: Ich kann sagen, wann mehr als ein Agent die Kosten wert ist, und es mit Token-Schätzungen belegen.

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

Mehr Agenten sind nicht mehr Intelligenz

Ein Multi-Agenten-System ist ein Programm, in dem ein Modellaufruf Arbeit an andere Aufrufe verteilt, jeder mit eigenem Kontext. Das ist wichtig, denn jeder zusätzliche Agent kostet Token, Zeit und bringt neue Fehlermöglichkeiten.

Agententeams werden oft als nächster Schritt verkauft. Manchmal stimmt das. Häufig erledigt ein einzelner Agent mit guten Werkzeugen die Arbeit billiger.

Am Ende dieser Lektion

Notiz

Ich kann sagen, wann mehr als ein Agent die Kosten wert ist, und es mit Token-Schätzungen belegen.

Schlüsselwörter

BegriffWas er bedeutet
Kontextfensterder meiste Text, den ein Agent auf einmal halten kann
Orchestratorder Agent, der die Arbeit aufteilt und die Antworten zusammenführt
Arbeiterein Agent, der einen Teil erledigt und berichtet
Gemeinsamer Textdie Anweisungen, die jeder Agent erneut lesen muss
Gekoppelte ArbeitSchritte, bei denen jeder das Ergebnis des vorigen braucht
ParallelTeile, die zur selben Zeit erledigt werden können

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

Jeder Agent liest den gemeinsamen Text neu

Ein einzelner Agent liest seine Anweisungen einmal. Ein Team nicht. Der Orchestrator liest sie, und jeder Arbeiter auch, denn er hat einen eigenen Kontext und sieht den der anderen nicht.

Ein Team kostet also den gemeinsamen Text einmal pro Agent, dazu einen Auftrag und ein Ergebnis je Teil. Den Teil selbst liest nur der Arbeiter, dem er gehört.

Ausgearbeitetes Beispiel: drei Berichte

WerLiestToken
Ein einzelner AgentGemeinsam 1500 + drei Berichte 5500 + Antwort 4007400
OrchestratorGemeinsam 1500 + drei Aufträge 600 + Abschluss 3002400
Drei ArbeiterJe gemeinsam 1500 + ein Bericht + ein Ergebnis10600
Das Team insgesamtOrchestrator und Arbeiter zusammen13000

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

Wann sich eine Aufteilung lohnt

Teilen Sie auf, wenn ein einzelner Agent die Arbeit nicht halten kann. Teilen Sie auf, wenn die Teile unabhängig sind und Tempo zählt. Teilen Sie auf, wenn ein Teil einen sauberen Kontext braucht, damit früherer Text ihn nicht in die Irre führt.

Teilen Sie gekoppelte Arbeit nicht auf. Braucht Schritt zwei das genaue Ergebnis von Schritt eins, fügt ein zweiter Agent nur eine verlustbehaftete Zusammenfassung dazwischen.

Ein häufiger Fehler

Warnung

Viele teilen eine Aufgabe auf, weil sie mehrere Hauptwörter enthält. Zählen Sie die Abhängigkeiten, nicht die Hauptwörter. Arbeit, die einen einzigen Datensatz teilt und der Reihe nach bearbeitet, gehört einem einzelnen Agenten.

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.

Das Kostenskript schreiben, Teil 1

Befehl
docker exec -w /home/node/project agent sh -c "printf '%s\n' 'const { fragen } = require(\"./model\");' 'const FENSTER = 8000; // Token, die ein Agent halten kann' 'const NOTIZ = 200; // ein Auftrag oder ein Ergebnis' 'const FAELLE = [' '  { name: \"drei Berichte\", gemeinsam: 1500, teile: [1800, 2000, 1700], gekoppelt: false },' '  { name: \"ein langer Bericht\", gemeinsam: 1500, teile: [900], gekoppelt: false },' '  { name: \"eine Datei bearbeiten\", gemeinsam: 1500, teile: [1200, 1000], gekoppelt: true },' '  { name: \"zehn Dokumente\", gemeinsam: 1500, teile: Array(10).fill(900), gekoppelt: false },' '];' > aufteilen.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.

Das Kostenskript schreiben, Teil 2

Befehl
docker exec -w /home/node/project agent sh -c "printf '%s\n' 'function summe(liste) { return liste.reduce(function (a, b) { return a + b; }, 0); }' '// Ein einzelner Agent liest den gemeinsamen Text einmal, dann alle Teile, dann antwortet er.' 'function einzeln(f) { return f.gemeinsam + summe(f.teile) + 400; }' '// Ein Team: Der Chef liest den gemeinsamen Text neu, und jeder Arbeiter auch.' 'function team(f) {' '  const chef = f.gemeinsam + NOTIZ * f.teile.length + 300;' '  const arbeiter = f.teile.map(function (t) { return f.gemeinsam + t + NOTIZ; });' '  return chef + summe(arbeiter);' '}' >> aufteilen.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.

Das Kostenskript schreiben, Teil 3

Befehl
docker exec -w /home/node/project agent sh -c "printf '%s\n' 'function waehlen(f) {' '  if (f.gekoppelt || f.teile.length < 2) return \"einer\";' '  if (einzeln(f) > FENSTER) return \"mehrere\";' '  return team(f) <= 2 * einzeln(f) ? \"mehrere\" : \"einer\";' '}' 'async function main() {' '  for (const f of FAELLE) {' '    const x = Math.round((team(f) * 10) / einzeln(f)) / 10;' '    console.log(f.name + \": einzeln \" + einzeln(f) + \", Team \" + team(f) + \" (x\" + x + \"), Wahl \" + waehlen(f));' '  }' '  const q = [{ role: \"user\", content: \"Nennen Sie in einem Satz eine Arbeit, die man nicht auf mehrere Agenten verteilen sollte.\" }];' '  const r = await fragen(q, \"Eine Datei schrittweise bearbeiten, weil jeder Schritt den vorigen braucht.\", 40);' '  console.log(\"Modell: \" + r.text.trim());' '}' 'main();' >> aufteilen.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.

Das Kostenskript starten

Befehl
docker exec -w /home/node/project agent node aufteilen.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.

Das sind Schätzungen

Der Run ruft kein Team auf. Er rechnet vier aufgezeichnete Fälle durch, denn ein echtes Team würde das Guthaben des Labors auf einmal aufbrauchen. Die Token-Größen sind erfunden, und ein echtes System misst seine eigenen.

Der eine Live-Aufruf bittet nur um einen Satz.

Eine mögliche Ausgabe

ZeileWas sie zeigt
drei Berichte: einzeln 7400, Team 13000 (x1.8), Wahl mehrerePasst in ein Fenster, aber das Team kostet weniger als das Doppelte
ein langer Bericht: … Wahl einerEin einziger Teil lässt sich nicht verteilen
eine Datei bearbeiten: … Wahl einerGekoppelte Arbeit bleibt bei einem Agenten
zehn Dokumente: einzeln 10900, Team 29800 (x2.7), Wahl mehrereEin Agent kann nicht alles halten, also zahlt man
Modell: …Ein Satz, der bei jedem Lauf anders ist

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.