Comment automatiser des tâches avec les outils d’Anthropic et Claude 3 ?
Démarrer avec les outils d’Anthropic
Le plus grand avantage de l’emploi de LLM pour des tâches est leur polyvalence. Les LLM peuvent être sollicités de manière spécifique pour servir une myriade d’objectifs, en fonctionnant comme des API pour la génération de texte ou en convertissant des données non structurées en formats organisés. Nous sommes nombreux à utiliser ChatGPT pour nos tâches quotidiennes, qu’il s’agisse de rédiger des courriels ou de participer à des débats ludiques avec l’IA.
L’architecture des plugins, également connus sous le nom de “GPT”, consiste à identifier les mots-clés à partir des réponses et des requêtes et à exécuter les fonctions correspondantes. Ces plugins permettent d’interagir avec des applications externes ou de déclencher des fonctions personnalisées.
Alors qu’OpenAI a ouvert la voie en permettant des appels de fonctions externes pour l’exécution de tâches, Anthropic a récemment introduit une fonctionnalité améliorée appelée “Tool Use”, qui remplace leur ancien mécanisme d’appel de fonctions. Cette version actualisée simplifie le développement en utilisant des balises JSON au lieu de balises XML. En outre, Claude-3 Opus présente un avantage par rapport aux modèles GPT grâce à sa fenêtre contextuelle plus large de 200 000 jetons, particulièrement précieuse dans certains scénarios.
Dans ce blog, nous allons explorer le concept d'”utilisation d’outils”, discuter de ses caractéristiques et offrir des conseils pour commencer.
Qu’est-ce que l’utilisation d’un outil ?
Claude a la capacité d’interagir avec des outils et des fonctions externes côté client, ce qui vous permet de l’équiper de vos propres outils personnalisés pour un plus grand nombre de tâches.
La procédure d’utilisation des outils avec Claude est la suivante :
- Fournir à Claude des outils et un guide de l’utilisateur (demande d’API)
- Définir un ensemble d’outils parmi lesquels Claude pourra choisir.
- Incluez-les avec la requête de l’utilisateur dans l’invite de génération de texte.
- Claude sélectionne un outil
- Claude analyse le message de l’utilisateur et le compare à tous les outils disponibles pour sélectionner le plus pertinent.
- En utilisant le processus de “réflexion” du LLM, il identifie les mots-clés nécessaires pour l’outil concerné.
- Génération de réponses (réponse API)
- À l’issue du processus, l’invite à la réflexion, ainsi que l’outil et les paramètres sélectionnés, sont générés en sortie.
À l’issue de ce processus, vous exécutez la fonction/l’outil sélectionné et utilisez ses résultats pour générer une autre réponse si nécessaire.
Schéma général de l’outil
Ce schéma permet de communiquer au LLM les exigences relatives à la procédure d’appel de fonction. Il n’appelle directement aucune fonction et ne déclenche aucune action de son propre chef. Pour garantir une identification précise des outils, une description détaillée de chaque outil doit être fournie. Properties
dans le schéma sont utilisés pour identifier les paramètres qui seront transmis à la fonction à un stade ultérieur.
Démonstration
Allons de l’avant et créons des outils permettant d’explorer le web et de trouver le prix de n’importe quelle action.
Outils Schéma
Dans l’outil scrape_website
, l’URL du site web est récupérée à partir de l’invite de l’utilisateur. Quant à l’outil stock_price
, il identifiera le nom de l’entreprise à partir de l’invite de l’utilisateur et le convertira en un ticker yfinance.
Invite de l’utilisateur
En posant deux questions au robot, une pour chaque outil, nous obtenons les résultats suivants :
Le processus de réflexion énumère toutes les étapes suivies par le LLM pour sélectionner avec précision l’outil adéquat pour chaque requête et exécuter les conversions nécessaires telles que décrites dans les descriptions des outils.
Choisir l’outil approprié
Nous devrons écrire du code supplémentaire qui déclenchera les fonctions appropriées en fonction des conditions.
Cette fonction permet d’activer le code approprié en fonction du nom de l’outil récupéré dans la réponse LLM. Dans la première condition, nous récupérons l’URL du site web obtenue à partir de l’entrée de l’outil, tandis que dans la deuxième condition, nous récupérons le ticker de l’action et le transmettons à la bibliothèque python yfinance.
Exécution des fonctions
Nous transmettrons l’intégralité du site ToolUseBlock
à la fonction select_tool()
afin de déclencher le code correspondant.
Sorties
- Premier message
- Deuxième proposition
Si vous souhaitez consulter l’intégralité du code source de cette démonstration, vous pouvez consulter ce carnet.
Quelques cas d’utilisation
La fonction “utilisation d’outils” pour Claude élève la polyvalence du LLM à un niveau supérieur. Bien que l’exemple fourni soit fondamental, il sert de base à l’extension des fonctionnalités. En voici une application concrète :
Hier, @AnthropicAI a lancé une version bêta de l’outil !
Voici un exemple de ce que j’ai construit avec ce logiciel : un robot de service client qui peut réellement résoudre votre problème !
J’ai hâte de voir ce que les autres construisent ! https://t.co/Xmi7pnwouS pic.twitter.com/T5bE4peexR
– Erik Schluntz (@ErikSchluntz) 5 avril 2024
Pour trouver d’autres cas d’utilisation, vous pouvez visiter le dépôt officiel d’Anthropic
ici
.