Add tool calling task
This commit is contained in:
@@ -0,0 +1,55 @@
|
||||
# Aufgabe 02: Tool Calling simulieren
|
||||
|
||||
## Ziel
|
||||
|
||||
Du lernst, wie ein LLM nicht nur Text erzeugt, sondern Aktionen auslösen kann.
|
||||
|
||||
## Szenario
|
||||
|
||||
Der User fragt:
|
||||
|
||||
```text
|
||||
Wie viele Personen sind im Raum?
|
||||
```
|
||||
|
||||
Das LLM soll nicht raten, sondern ein Tool anfordern:
|
||||
|
||||
```json
|
||||
{
|
||||
"tool": "count_people",
|
||||
"arguments": {}
|
||||
}
|
||||
```
|
||||
|
||||
## Aufgabe
|
||||
|
||||
Baue ein Programm mit mindestens 3 Tools:
|
||||
|
||||
- `get_time()`
|
||||
- `count_people()` - erstmal fake: gibt z. B. `2` zurück
|
||||
- `look(direction)` - erstmal fake: gibt `looked left` zurück
|
||||
|
||||
Das Programm soll:
|
||||
|
||||
1. User-Input entgegennehmen
|
||||
2. LLM entscheiden lassen, ob ein Tool nötig ist
|
||||
3. Tool ausführen
|
||||
4. Ergebnis zurück ans LLM geben
|
||||
5. finale Antwort ausgeben
|
||||
|
||||
## Lernpunkte
|
||||
|
||||
- Warum Tool Calling für Robotik zentral ist
|
||||
- Warum ein LLM nicht direkt Motoren steuern sollte
|
||||
- Wie man Tools typisiert und validiert
|
||||
- Wie man gefährliche Aktionen begrenzt
|
||||
|
||||
## Akzeptanzkriterien
|
||||
|
||||
- Frage nach Uhrzeit ruft `get_time()` auf.
|
||||
- Frage nach Personen ruft `count_people()` auf.
|
||||
- Befehl "schau nach links" ruft `look("left")` auf.
|
||||
|
||||
## Erweiterung
|
||||
|
||||
Logge jeden Tool-Call mit Timestamp, Argumenten und Ergebnis.
|
||||
Reference in New Issue
Block a user