Anwendungen auf der API bauen
Vom einzelnen Aufruf zum echten Programm – mehrstufige Gespräche, Streaming-Ausgabe, Tool-Aufrufe, Wiederholungen bei Fehlern und Kostenprotokoll – und zum Schluss die erste Version des durchgehenden Projekts RepoBot.
Lektionen
- 01Mehrstufige Gespräche: Das Modell merkt sich eigentlich nichts
Ein Chatprogramm für die Kommandozeile schreiben und selbst sehen, dass das Modell kein Gedächtnis hat und „Erinnerung“ nur heißt, den Verlauf jedes Mal neu zu senden. Dann, wie gut Kürzen und Zusammenfassen funktionieren, wenn der Verlauf zu lang wird.
35 Minuten · Einsteiger - 02Streaming-Ausgabe
Die Antwort beim Erzeugen anzeigen. Die Zeit bis zum ersten Zeichen mit und ohne Streaming messen, usage und Denkinhalte beim Streaming behandeln und dann mit FastAPI die Ausgabe des Modells in Echtzeit an den Browser senden.
35 Minuten · Fortgeschritten - 03Tool-Aufrufe: das Modell handeln lassen
Das Modell kann selbst keine Echtzeitdaten abfragen und keine Aktionen ausführen. Wir geben ihm ein echtes Tool, das auf PyPI die neueste Version eines Pakets nachschlägt, und gehen den gesamten Ablauf eines Tool-Aufrufs durch, einschließlich paralleler Aufrufe, Fehlerbehandlung und dem, was im Denkmodus zu beachten ist.
45 Minuten · Fortgeschritten - 04Fehler, Wiederholungen, Rate Limits und Kosten
Die häufigsten API-Fehler nachstellen, sehen, welche Wiederholungen das openai-SDK standardmäßig schon übernimmt, und dann eine Aufruffunktion mit Timeout, exponentiellem Backoff, Begrenzung der Parallelität und Kostenprotokoll schreiben, die man direkt ins Projekt übernehmen kann.
40 Minuten · Fortgeschritten - 05Projekt: die erste Version des Frage-Antwort-Assistenten
Mehrstufige Gespräche, Streaming, Wiederholungen und Kostenstatistik zu RepoBot v1 zusammensetzen, einem Frage-Antwort-Assistenten für httpx. Mit 6 Fragen mit Musterlösung testen und sehen, was er richtig beantwortet und was er erfindet.
60 Minuten · Fortgeschritten
In den ersten beiden Modulen lief jedes Beispiel nach dem Muster „einmal aufrufen, Ergebnis ausgeben“. Echte Anwendungen haben mehr Probleme: Nutzer stellen mehrere Fragen hintereinander; Antworten sind so lang, dass Nutzer nicht warten wollen; Echtzeitdaten müssen abgefragt werden; das Netz bricht ab, Dienste drosseln, und die Rechnung muss stimmen.
Dieses Modul löst diese Probleme eins nach dem anderen und setzt sie zum Schluss zur ersten Version des durchgehenden Projekts RepoBot zusammen: einem httpx-Frage-Antwort-Assistenten auf der Kommandozeile, mit dem man fortlaufend chatten kann, der streamt, automatisch wiederholt und nach jeder Runde die Kosten anzeigt.
Warum diese Reihenfolge
Lektion 1 klärt zuerst, was ein „Gespräch“ auf API-Ebene eigentlich ist; alle weiteren Lektionen bauen auf der Nachrichtenliste auf. Das Streaming in Lektion 2 verbessert das Nutzererlebnis und steht recht für sich. Die Tool-Aufrufe in Lektion 3 sind am wichtigsten und auch am komplexesten; sie sind die Grundlage für die Agenten in Modul 05. Lektion 4 behandelt, worauf all diese Funktionen im echten Einsatz stoßen: Fehler und Kosten. Lektion 5 setzt die ersten vier Lektionen zusammen.
Du bist fertig, wenn
- du ein Chatprogramm für die Kommandozeile schreiben kannst, das den Verlauf kürzt oder komprimiert, wenn er zu lang wird.
- du eine Antwort per Streaming beim Erzeugen anzeigen kannst und weißt, wie man sie an den Browser weiterleitet.
- du die vollständige Schleife für Tool-Aufrufe von Grund auf schreiben kannst: Beschreibung, Ausführung, Ergebnis zurückgeben, parallele Aufrufe und Tool-Fehler behandeln.
- du eine Aufruffunktion mit Timeout, Wiederholung mit exponentiellem Backoff, Begrenzung der Parallelität und Kostenprotokoll schreiben kannst.
- RepoBot v1 auf deinem Rechner läuft und du sagen kannst, bei welchen Fragen er falsch antwortet und warum.
Code zu diesem Modul
Code und Programmausgaben stehen genau so da, wie sie gelaufen sind – Kommentare und Ausgaben sind daher auf Chinesisch.