Créer un outil avec du code Python
Maintenant que votre agent conversationnel dispose des outils d'événements historiques et de Wikipedia, l'administration souhaite aussi que vous ajoutiez un outil de grammaire pour le programme d'anglais. On vous demande de créer un vérificateur de palindrome qui détermine si une phrase ou un mot en entrée se lit de la même façon lorsqu'on l'écrit à l'envers. Les élèves devraient pouvoir utiliser cet outil pour tester différents types de chaînes afin de vérifier s'il s'agit de palindromes, comme « level » ou « never odd or even », qui se lisent identiquement à reculons.
Cette activité fait partie du cours
Concevoir des systèmes agentiques avec LangChain
Instructions de l’exercice
- Indiquez le type d'entrée de l'outil comme une chaîne de caractères.
- Convertissez les caractères en minuscules avec
.lower(), en retirant tout caractère non alphanumérique à l'aide de.isalnum(). - Pour déterminer si le texte est un palindrome, vérifiez si le texte nettoyé correspond à sa version inversée.
- Complétez les espaces réservés de l'instruction
elseavec l'entrée originale pour retourner le message approprié pour les non-palindromes.
Exercice interactif pratique
Essayez cet exercice en complétant ce code d’exemple.
@tool
# Set input format to string
def palindrome_checker(text: ____) -> str:
"""Check if a word or phrase is a palindrome."""
# Remove non-alphanumeric characters and convert to lowercase
cleaned_text = ''.join(char.____() for char in ____ if char.____())
# Set up if-else block to check reversed text against original text
if cleaned_text == ____[::-1]:
return f"The phrase or word '{____}' is a palindrome."
else:
# Print an alternative statement if text is not a palindrome
____ f"The phrase or word '{____}' is not a palindrome."