Zusammenfassung (Audio)
Keine Audio-Zusammenfassung für diese Lektion.
Studiennotizen
📚 Lernnotizen: Mehrere Tools mit Claude verbinden
Ziel: Die erfolgreiche Anbindung und Nutzung mehrerer Tools (Funktionsaufrufe) innerhalb einer einzigen Konversation mit Claude.
⚙️ Kernkonzepte des Tool-Workflows
- Sequenzielle Tool-Nutzung: Bei komplexen Anfragen benötigt Claude oft mehrere Tools nacheinander, um eine Antwort zu generieren (z. B. getCurrentDateTime → addDurationToDateTime).
- Annahme von Mehrfachaufrufen: Die Anwendung muss immer davon ausgehen, dass Claude mehr als einen Tool-Aufruf anfordern kann.
- Zyklischer Prozess:
- Benutzer fragt → Claude antwortet mit Tool Use Block.
- Anwendung führt Tool aus → Ergebnis wird an Claude zurückgesendet.
- Claude analysiert Ergebnis → Entweder finale Antwort oder neuer Tool Use Block.
- Dieser Prozess wiederholt sich, bis Claude keine Tools mehr benötigt.
🛠️ Implementierungsstrategie (Refactoring)
Um diesen zyklischen Prozess zu ermöglichen, muss der Code angepasst werden:
- Funktion runConversation: Es muss eine Hauptfunktion implementiert werden, die die Konversation fortsetzt, solange Claude Tool-Aufrufe anfordert.
- Anpassung der Nachrichten-Helfer:
- Die Funktionen addUserMessage und addAssistantMessageHelper müssen so erweitert werden, dass sie nicht nur reinen Text, sondern auch mehrere Nachrichtensblöcke (z. B. Textblock + Tool Use Block) verarbeiten können.
- Anpassung der chat-Funktion:
- Die chat-Funktion muss die Liste der verfügbaren Tool-Schemas entgegennehmen.
- Wichtig: Statt nur den Textblock zurückzugeben, muss die Funktion nun die gesamte Nachricht (Message Object) von Claude zurückgeben, da diese mehrere Blöcke enthalten kann.
- Hilfsfunktion text_from_message:
- Diese neue Funktion dient dazu, alle Textinhalte aus einer Nachricht zu extrahieren, die möglicherweise aus mehreren Blöcken besteht. Sie filtert alle Blöcke, deren Typ Text ist.
🎯 Zusammenfassung des Workflows
Die Anwendung muss einen Loop implementieren, der:
- Die aktuelle Nachricht an Claude sendet.
- Prüft, ob Claude einen Tool-Aufruf anfordert.
- Wenn ja: Tool ausführen → Ergebnis zurücksenden → Loop fortsetzen.
- Wenn nein: Finale Antwort an den Benutzer liefern.
Takeaways
- Der Tool-Workflow ist zyklisch: Benutzeranfrage → Claude Tool Use → Anwendung führt Tool aus → Claude analysiert Ergebnis.
- Die Anwendung muss einen Loop implementieren, der die Konversation fortsetzt, solange Claude Tool-Aufrufe anfordert.
- Nachrichten-Helfer müssen erweitert werden, um mehrere Nachrichtensblöcke (z. B. Textblock und Tool Use Block) zu verarbeiten.
- Die chat-Funktion muss das gesamte Message Object zurückgeben, da Claude mehr als nur reinen Text senden kann.
Lernkarten 8 Karten
Frage
zum Aufdecken klicken · ←/→
Antwort
zum Zurückdrehen klicken
Wissensüberprüfung 0 Fragen
No quiz for this lesson yet.