Zusammenfassung (Audio)
Keine Audio-Zusammenfassung für diese Lektion.
Studiennotizen
Studiennotizen: Bedrock Converse Stream
**I. Problem und Lösung**
- Problem: Standard-API-Aufrufe (Request/Response) haben hohe Latenz (z. B. 3 bis 30 Sekunden), da der gesamte Text erst nach Abschluss der Generierung zurückgegeben wird.
- Nutzererwartung: Nutzer erwarten sofortiges Feedback und sehen den Text, während er generiert wird.
- Lösung: Verwendung der Funktion converse stream, um die Antwort in Echtzeit (Streaming) zurückzusenden.
**II. Funktionsweise von Converse Stream**
- Ablauf:
- Benutzer sendet eine Frage an den Server.
- Der Server ruft Bedrock mit converse stream auf.
- Initial Response: Sofort wird eine erste Antwort zurückgegeben (Bestätigung des Erhalts, noch kein generierter Text).
- Event Stream: Anschließend beginnt ein kontinuierlicher Stream von Ereignissen (Events).
- Jedes Event enthält einen kleinen Teil (Chunk) der generierten Antwort.
- Der Server sendet jeden Chunk sofort an den Browser/App zur Anzeige.
- Vorteil: Reduziert die wahrgenommene Latenz, da der Nutzer sofort mit dem Lesen beginnen kann.
**III. Ereignis-Typen (Events)**
- Der Stream liefert verschiedene Event-Typen, die den Zustand der Generierung beschreiben.
- Wichtige Event-Typen:
- message start: Beginn der Nachricht.
- content block delta: **Der entscheidende Event-Typ für Textgenerierung. ** Enthält einen Teil des generierten Textes.
- message stop: Ende der Nachricht.
- metadata: Metadaten zum Request.
- Hinweis: content block start ist relevant für Tool-Nutzung, aber bei reiner Textgenerierung nicht sichtbar.
**IV. Datenverarbeitung und Extraktion**
- Ziel: Alle Text-Chunks sammeln und zur finalen Nachricht zusammenfügen.
- Extraktion des Textes: Der eigentliche Text befindet sich innerhalb des content block delta Events:
- Pfad: event['content block delta']['delta']['text']
- Implementierungsschritte:
- Iteriere über den Stream (z. B. mit einer for Schleife).
- Prüfe, ob das aktuelle Event vom Typ content block delta ist.
- Extrahiere den Text-Chunk.
- Zeige den Chunk sofort an (Streaming).
- Füge den Chunk zu einer Gesamtvariablen (total_message) hinzu, um die finale Nachricht zu speichern.
Takeaways
- converse stream wird verwendet, um die hohe Latenz von Standard-API-Aufrufen zu umgehen und Antworten in Echtzeit (Streaming) zu liefern.
- Der Ablauf umfasst eine sofortige Initial Response, gefolgt von einem kontinuierlichen Event Stream, der den generierten Text in kleinen Chunks liefert.
- Der entscheidende Event-Typ für die Textgenerierung ist content block delta, da er die einzelnen Text-Chunks enthält.
- Die Implementierung erfordert die Iteration über den Stream, die Extraktion des Textes aus content block delta und die sofortige Anzeige sowie die Speicherung aller Chunks.
Lernkarten 8 Karten
Frage
zum Aufdecken klicken · ←/→
Antwort
zum Zurückdrehen klicken
Wissensüberprüfung 0 Fragen
No quiz for this lesson yet.