Wird geladen

Das Erstellen von Tools für Claude erfordert die Lösung mehrerer Herausforderungen, die nicht sofort offensichtlich sind. Wenn du möchtest, dass Claude Erinnerungen für zukünftige Termine setzt, stellst du schnell fest, dass Claude zwar das aktuelle Datum kennt, aber nicht immer die genaue Uhrzeit weiß, mit komplexer Datumsarithmetik zu kämpfen hat und keine integrierte Möglichkeit besitzt, tatsächlich Erinnerungen zu setzen.

Die Lösung besteht darin, benutzerdefinierte Tools zu erstellen, die diese spezifischen Aufgaben übernehmen. Für ein Erinnerungssystem benötigst du drei separate Tools: eines, um das aktuelle Datum und die Uhrzeit abzurufen, ein weiteres, um Zeiträume zu Daten hinzuzufügen, und ein drittes, um die Erinnerung tatsächlich zu setzen.

Warum das herausfordernd ist

Claude hat einige Einschränkungen, wenn es um zeitbasierte Aufgaben geht:

  • Claude kennt möglicherweise das aktuelle Datum, aber nicht die genaue Uhrzeit
  • Claude geht nicht immer gut mit zeitbasierter Addition um, besonders wenn es viele Tage in die Zukunft blicken muss
  • Claude weiß nicht, wie man eine Erinnerung setzt

Die Tools, die du brauchst

Um diese Probleme zu lösen, erstellst du drei dedizierte Tools:

  • Aktuelles Datum und Uhrzeit abrufen - Claude muss das aktuelle Datum und die Uhrzeit kennen
  • Zeitraum zu Datum/Uhrzeit hinzufügen - Claude ist nicht perfekt bei der Addition von Datum und Uhrzeit
  • Eine Erinnerung setzen - Es braucht eine Möglichkeit, eine Erinnerung zu setzen

Wie Tool-Funktionen funktionieren

Das Tool-System folgt einem bestimmten Ablauf zwischen deinem Server und Claude. Du schreibst Funktionen, die Claude aufrufen kann, wenn es zusätzliche Informationen benötigt, und Claude erhält die Ergebnisse, um seine Antwort zu formulieren.

Der Prozess umfasst mehrere Schritte: das Schreiben der Tool-Funktion, das Erstellen einer JSON-Schema-Spezifikation, das Aufrufen von Claude mit diesem Schema, das Ausführen des Tools, wenn Claude es anfordert, und das Zurückgeben der Ergebnisse an Claude.

Tool-Funktionen schreiben

Tool-Funktionen sind einfache Python-Funktionen, die ausgeführt werden, wenn Claude entscheidet, dass es zusätzliche Informationen benötigt, um dem Nutzer zu helfen. So schreibst du sie effektiv:

Best Practices

  • Verwende gut benannte, beschreibende Argumente (das wird später wichtig)
  • Validiere die Eingaben und löse einen Fehler aus, wenn sie die Validierung nicht bestehen
  • Gib aussagekräftige Fehler zurück - Claude wird versuchen, deine Funktion ein zweites Mal aufzurufen, wenn es einen Fehler erhält

Dein erstes Tool erstellen

Beginnen wir mit dem einfachsten Tool - dem Abrufen des aktuellen Datums und der Uhrzeit. Diese Funktion nimmt einen Datumsformat-Parameter entgegen und gibt den aktuellen Zeitstempel zurück:

python
from datetime import datetime, timedelta

def get_current_datetime(date_format="%Y-%m-%d %H:%M:%S"):
    return datetime.now().strftime(date_format)

Diese Funktion ist unkompliziert, folgt aber den wichtigsten Prinzipien: Sie hat einen beschreibenden Namen, nimmt einen gut benannten Parameter mit einem sinnvollen Standardwert entgegen und gibt genau das zurück, was sie verspricht.

JSON-Schema-Spezifikation

Sobald du deine Funktion hast, musst du ein JSON-Schema schreiben, das sie für Claude beschreibt. Dieses Schema teilt Claude mit, welche Argumente die Funktion benötigt, und hilft ihm zu verstehen, wann und wie das Tool zu verwenden ist.

Das JSON-Schema erfüllt zwei Zwecke: Es hilft Claude zu verstehen, welche Argumente deine Funktion benötigt, und es ist nicht nur ein LLM-Konzept - JSON-Schema wird häufig zur Datenvalidierung in vielen Programmierkontexten verwendet. Es gibt zahlreiche Online-Tools, die dir beim Generieren von Schemas helfen.

Best Practices für Schemas

  • Erkläre, was das Tool macht, wann es zu verwenden ist und was es zurückgibt
  • Strebe 3 bis 4 Sätze in deinen Beschreibungen an
  • Gib detaillierte Beschreibungen für Parameter an

Mit deiner geschriebenen Tool-Funktion und dem definierten Schema bist du bereit, sie mit Claude zu integrieren und anspruchsvollere KI-Interaktionen zu erstellen, die reale Aufgaben wie das Setzen von Erinnerungen bewältigen können.