0Pricing
AI Agents · Lektion

Tools zur Laufzeit auswählen

Lassen Sie das Modell entscheiden, welches Tool aufgerufen wird, erzwingen Sie ein bestimmtes Tool oder stellen Sie nur die für den aktuellen Zustand relevanten Tools bereit.

Tools zur Laufzeit auswählen ist eine kostenlose AI Agents-Lektion auf CoddyKit. Dies ist Lektion 3 von 4. Du kannst die komplette Lektion unten kostenlos lesen – dann übst du sie direkt im Browser mit einem integrierten Code-Editor und einem KI-Tutor rund um die Uhr. Sie ist Teil des AI Agents-Lernpfads, und dein Fortschritt wird über Web und CoddyKit-App synchronisiert. Der AI Agents-Kurs umfasst insgesamt 4 Lektionen.

Das Modell auswählen lassen

Standardmäßig geben Sie dem Modell eine Liste von Tools, und es entscheidet, welches davon aufgerufen wird (oder keines). Dieser Standardmodus funktioniert gut, wenn:

  • Sie 5–15 Tools haben
  • Die Tools klare, voneinander abgegrenzte Beschreibungen besitzen
  • Das passende Tool von der Eingabe der Benutzerin oder des Benutzers abhängt

tool_choice: auto

Der Standard – das Modell entscheidet:

response = client.chat.completions.create(
    model='gpt-4o-mini',
    messages=messages,
    tools=tools,
    tool_choice='auto',  # default; can be omitted
)

tool_choice: required

Erzwingen Sie, dass das Modell EIN Tool aufruft (beliebiges Tool):

response = client.chat.completions.create(
    model='gpt-4o-mini',
    messages=messages,
    tools=tools,
    tool_choice='required',
)
# Model must return a tool_call, never a free-form answer

Ein bestimmtes Tool erzwingen

Um ein bestimmtes Tool zu erzwingen, geben Sie seinen Namen an:

response = client.chat.completions.create(
    model='gpt-4o-mini',
    messages=messages,
    tools=tools,
    tool_choice={'type': 'function', 'function': {'name': 'extract_entities'}},
)

tool_choice: none

Deaktivieren Sie Tools für einen Durchlauf:

# After a tool result, you might want a pure text response:
response = client.chat.completions.create(
    model='gpt-4o-mini',
    messages=messages,
    tools=tools,
    tool_choice='none',
)

Tool-Listen nach Kontext kürzen

Modelle treffen aus großen Tool-Mengen schlechtere Auswahlen. Stellen Sie nur die für den aktuellen Zustand relevanten Tools bereit:

def relevant_tools(state):
    if state == 'authenticated':
        return [search_orders, refund_order, escalate]
    elif state == 'guest':
        return [search_products, contact_support]
    return []

Zweistufige Tool-Auswahl

Verwenden Sie bei mehr als 50 Tools eine Hierarchie:

  1. Der äußere Agent wählt eine Domäne (Bestellungen / Abrechnung / Versand)
  2. Der innere Agent wählt das konkrete Tool innerhalb dieser Domäne

Jeder Aufruf sieht nur etwa 10 Tools.

Vektorsuche über Tools

Erstellen Sie ein Embedding für jede Tool-Beschreibung. Erstellen Sie zur Laufzeit ein Embedding für die Benutzeranfrage und rufen Sie die Top-K-Tools ab, die bereitgestellt werden sollen:

from openai import OpenAI
import numpy as np

query_emb = embed(user_query)
sims = [cosine(query_emb, tool.emb) for tool in all_tools]
top = [t for _, t in sorted(zip(sims, all_tools), reverse=True)[:10]]
# Send only these 10 to the model

Anthropic tool_choice

Anthropic verwendet dasselbe Konzept mit einer anderen Struktur:

tool_choice = {'type': 'auto'}
print("auto:", tool_choice)
tool_choice = {'type': 'any'}                              # required
print("any (required):", tool_choice)
tool_choice = {'type': 'tool', 'name': 'get_weather'}      # specific
print("specific tool:", tool_choice)
tool_choice = {'type': 'none'}
print("none:", tool_choice)

Warum ein bestimmtes Tool erzwingen?

Nützlich bei:

  • Validierung – ein bestimmtes strukturiertes Feld extrahieren
  • Routing – die Benutzerin oder der Benutzer hat auf „Rückerstattung“ geklickt, also refund_order aufrufen
  • Strukturierter Ausgabe – Tool Calling zweckentfremden, um JSON zu erhalten

Leere Tool-Listen

Wenn Sie tools=[] übergeben, aber tool_choice="required" setzen, erhalten Sie einen Fehler. Validieren Sie die Tool-Liste immer vor dem Senden.

JSON-Ausgabe erzwingen

Warum sollten Sie einen bestimmten Tool-Aufruf erzwingen?

Zusammenfassung

Verwenden Sie auto in den meisten Fällen. Erzwingen Sie Tools für Routing und strukturierte Extraktion. Kürzen Sie die Tool-Liste abhängig vom Zustand, damit die Auswahl präzise bleibt.

Häufig gestellte Fragen

Ist die Lektion „Tools zur Laufzeit auswählen“ kostenlos?

Ja — der vollständige Text von „Tools zur Laufzeit auswählen“ ist hier im Web kostenlos zu lesen. Um sie interaktiv zu üben (integrierter Code-Editor und 24/7 KI-Tutor) und den Rest des AI Agents-Kurses freizuschalten, upgrade auf CoddyKit PRO. Der AI Agents-Kurs umfasst insgesamt 4 Lektionen.

Was lerne ich in „Tools zur Laufzeit auswählen“?

Lassen Sie das Modell entscheiden, welches Tool aufgerufen wird, erzwingen Sie ein bestimmtes Tool oder stellen Sie nur die für den aktuellen Zustand relevanten Tools bereit. Du übst AI Agents mit praktischem Code, den du direkt im Browser ausführst, und ein 24/7 KI-Tutor beantwortet deine Fragen während du die Lektion bearbeitest.

Brauche ich Erfahrung, um AI Agents zu starten?

Keine Vorkenntnisse erforderlich. AI Agents auf CoddyKit ist für Anfänger bis fortgeschrittene Lernende strukturiert, sodass du hier starten oder von Anfang an beginnen und in deinem eigenen Tempo voranschreiten kannst. Dies ist Lektion 3 von 4.

Wie lange dauert die Lektion „Tools zur Laufzeit auswählen“?

Die meisten CoddyKit-Lektionen dauern etwa 5–10 Minuten. Jede ist kompakt und interaktiv, sodass du stetig Fortschritte machst und genau dort weitermachst, wo du aufgehört hast – im Web und in der App.

Kann ich in dieser AI Agents-Lektion Code schreiben und ausführen?

Ja. Jede AI Agents-Lektion enthält einen integrierten Code-Editor, sodass du echten Code direkt in deinem Browser schreibst und ausführst und sofort KI-Feedback erhältst — ohne lokale Einrichtung erforderlich.

Alle Lektionen in diesem Kurs

  1. So funktioniert Function Calling
  2. Tool-Schemas definieren (JSON Schema)
  3. Tools zur Laufzeit auswählen
  4. Ergebnisse an das Modell zurückgeben
← Zurück zu AI Agents