Créer des agents d’IA autonomes avec Python à partir de zéro | Hassan Aboul hassan | Skillshare

Vitesse de lecture


1.0x


  • 0.5x
  • 0.75x
  • 1 x (normale)
  • 1.25x
  • 1.5x
  • 1.75x
  • 2x

Créer des agents d’IA autonomes avec Python à partir de zéro

teacher avatar Hassan Aboul hassan, Founder @LearnWithHasan & @SimplerLLM

Regardez ce cours et des milliers d'autres

Bénéficiez d'un accès illimité à tous les cours
Suivez des cours enseignés par des leaders de l'industrie et des professionnels
Explorez divers sujets comme l'illustration, le graphisme, la photographie et bien d'autres

Regardez ce cours et des milliers d'autres

Bénéficiez d'un accès illimité à tous les cours
Suivez des cours enseignés par des leaders de l'industrie et des professionnels
Explorez divers sujets comme l'illustration, le graphisme, la photographie et bien d'autres

Leçons de ce cours

    • 1.

      Qu’est-ce qu’un agent d’IA ?

      3:08

    • 2.

      Configuration de base

      4:46

    • 3.

      Limitation LLM en action

      1:54

    • 4.

      Agent d’IA en dur

      4:38

    • 5.

      L’invite ReAct

      6:24

    • 6.

      Ajouter des fonctions

      9:03

    • 7.

      La boucle

      2:11

    • 8.

      L’agent final

      6:59

    • 9.

      L’invite

      3:17

    • 10.

      Simplifier avec SimplerLLM

      3:11

    • 11.

      Créer un agent d’IA d’auditeur SEO

      8:13

    • 12.

      Quelle est la prochaine étape ?

      0:54

  • --
  • Niveau débutant
  • Niveau intermédiaire
  • Niveau avancé
  • Tous niveaux

Généré par la communauté

Le niveau est déterminé par l'opinion majoritaire des apprenants qui ont évalué ce cours. La recommandation de l'enseignant est affichée jusqu'à ce qu'au moins 5 réponses d'apprenants soient collectées.

1 037

apprenants

3

projets

À propos de ce cours

Bienvenue dans “Build AI Agents from Scratch with Python”, un cours dynamique destiné aux personnes désireuses de plonger dans le monde des agents d’IA autonomes à partir de zéro.

Ce cours vous expliquera les bases des agents d’IA et vous présentera l’innovant ReAct Prompting, qui permet aux modèles de grande langue (LLM) de réfléchir et de prendre des mesures exploitables.

Vous apprendrez à créer des agents d’IA de base aux agents avancés à partir de zéro sans utiliser de tiers.

Nous allons créer des agents en intégrant des fonctions personnalisées qui permettent à ces modèles de répondre intelligemment aux requêtes des utilisateurs et aux limitations de fonctionnement, telles que l’accès aux données en direct, aux API et aux fonctions externes.

Que vous souhaitiez créer un agent IA simple ou un agent IA dans le monde réel, ce cours fournit tous les codes et les modèles nécessaires pour vous lancer !

Ce cours de niveau intermédiaire exige des participants qu’ils aient une compréhension fondamentale de la programmation Python et des notions fondamentales de l’ingénierie rapide.

Rencontrez votre enseignant·e

Teacher Profile Image

Hassan Aboul hassan

Founder @LearnWithHasan & @SimplerLLM

Enseignant·e

Hello, I'm Hassan.

The thing I dislike most is talking about myself, but here, I'm obliged to do so. I fell in love with computers when I was 8 years old, and by the age of 9, I had made a full Windows installation. I tried my best to learn everything I could about computers, such as Programming, Network and Server Administration, Hacking and Security, Computer Maintenance, Virtualization, Linux, and even Adobe and Auto DeskGraphic, and design products.

Computers are my life. By the time I wrote this biography, I had gained more than 8 years of experience in network and server administration.

I have more than six years of experience in .Net, Java, and C++ Programming, as well as, of course, Database design and administration.

I used to teach these subjects in... Voir le profil complet

Compétences associées

IA et innovation Bases de l'IA Prompts
Level: Advanced

Notes attribuées au cours

Les attentes sont-elles satisfaites ?
    Dépassées !
  • 0%
  • Oui
  • 0%
  • En partie
  • 0%
  • Pas vraiment
  • 0%

Pourquoi s'inscrire à Skillshare ?

Suivez des cours Skillshare Original primés

Chaque cours comprend de courtes leçons et des travaux pratiques

Votre abonnement soutient les enseignants Skillshare

Apprenez, où que vous soyez

Suivez des cours où que vous soyez avec l'application Skillshare. Suivez-les en streaming ou téléchargez-les pour les regarder dans l'avion, dans le métro ou tout autre endroit où vous aimez apprendre.

Transcription

1. Qu’est-ce qu’un agent d’IA ?: Commençons donc par comprendre ce qu' est un agent AI pour rendre les choses aussi simples que possible. Je vais suivre cet exemple pratique. Je suis ici à Cage Pit, et j'ai sélectionné GPT 3.5 Je vais simplement poser cette question. Dois-je prendre un parapluie et sortir aujourd'hui en Californie, d'accord. Essayons donc et maintenant GPT Three me le dira, ou Ch GPT, pour vous fournir les conseils les plus précis dont j' aurais besoin pour connaître votre position précise en Californie et les prévisions météorologiques actuelles pour la journée Je pense donc que vous avez appris dans le cours d'ingénierie rapide que l'une des principales limites des modèles linguistiques est qu'ils ne génèrent des réponses qu'en fonction des données sur lesquelles ils ont été formés. Il n'a donc pas accès aux données en temps réel. C'est pourquoi il ne peut pas répondre à ma question. Il doit d'abord connaître la météo avant me dire si j'ai besoin d' un parapluie ou non. C'est simple. Maintenant, si nous prenons la même question et passons à GPT quatre Posons la même question maintenant. Et regardez ce qui va se passer. GPT four est toujours un modèle de langage et il a ses limites, mais il a répondu à ma question Que s'est-il passé ? Simplement, ce que A j'ai fait avec GPT 4, si vous allez ici et haut, vous verrez avec Dale la navigation Web et d'autres outils Il ne s'agit donc pas uniquement d'un modèle linguistique. C'est le modèle linguistique. Il s'agit du GPT 4, mais combiné à des fonctions et outils externes Il y a donc eu la météo. Ensuite, en fonction de la météo, il a suggéré qu'il n'était peut-être pas nécessaire de porter un parapluie et il a fourni la ressource qu'offrait la météo. J'ai contacté le National Weather Service et, sur la base du résultat, j'ai généré la réponse. Il s'agit d'une forme simple du fonctionnement des agents de l'IA. Si vous souhaitez définir un agent d' intelligence artificielle en termes simples, il s'agit d'un modèle de langage, auquel ajoutent des outils et des fonctions externes. Ces deux sont alimentés par une technique. Cela permet le modèle, veuillez vous concentrer. Cela permet au modèle de réfléchir à la question ou à l'invite, comprendre, peut-être de la diviser en tâches, puis à partir d'une liste d'outils auxquels il est affecté, je peux choisir le bon outil pour la tâche à laquelle il génère le résultat avec l'outil l'action et utiliser le résultat de l'action, encore une fois, dans l'invite pour générer le résultat final. D'une certaine manière, il imite le fonctionnement des humains. J'espère que tu as compris l'idée. 2. Configuration de base: OK, mes amis. Dans cette conférence, je vais créer un environnement virtuel pour notre projet, installer le package Open AI, créer une fonction simple pour génération de texte à l'aide de Pen AI et la tester. Commençons donc. Première étape, je vais monter dans un terminal U ici et créer un environnement virtuel. Exécutez simplement cette machine virtuelle Python courante, puis le nom de l'environnement virtuel, à nouveau, attendez quelques secondes. Parfait. Vous pouvez voir maintenant que le dossier de l'environnement virtuel est créé. Activons-le maintenant. Je vais accéder aux scripts, les activer et les perfectionner. Vous pouvez maintenant voir que nous sommes dans l' environnement virtuel et que nous pouvons installer nos packages. Exécutez simplement pip, installez open AI pour installer le package pen I dans notre projet Et parfait, première étape terminée, deuxième étape terminée. Créons maintenant une fonction simple pour générer du texte avec Pen AI. Je vais créer un nouveau module pour Pen AI afin structurer et d'organiser notre projet d'une manière ou d'une autre. Je vais maintenant dire module stylo . Je vais créer ici une fonction qui utilise l'API Open AI. À partir de Pen AI, importez AI, et c'est créer un fichier de variables environnementales Obtenez votre APIK auprès d'Open AI et collez-le ici. Et revenons maintenant en arrière pour lire la clé dans nos scripts, je vais installer le package Python, afin que nous puissions lire les valeurs de ce fichier. Parfait. Revenons ici et chargeons les variables environnementales. Importons le système d'exploitation et la fonction, parfait. Créons maintenant une instance de la classe Open AI de cette façon, nous avons un objet ouvert. C'est ce que nous pouvons appeler pour générer un texte parfait et nous passons la clé API du stylo. Créons maintenant la fonction qui génère du texte avec Pen AI. Ici, nous générons du texte de base, en utilisant le client Pen I et nous passons le modèle par la photo GPT 3.5 Nous pouvons changer cela si vous le souhaitez, nous passons une invite du système et une invite de l'utilisateur, et nous lisons la réponse, très simple et basique. Nous l'avons déjà beaucoup fait dans le cadre du cours d'ingénierie rapide et d'autres cours. Permettez-moi de faire un zoom arrière et de l' expliquer rapidement. Nous utilisons le package OpenAI, nous avons chargé les variables environnementales, nous obtenons la clé d'API et nous créons une instance Appelons ce client juste pour clarifier les choses. Nous avons créé cet objet AI ouvert à partir de la classe ou de l'instance, puis nous générons du texte à l'aide de cette instance et renvoyons le contenu. Testons cela. Je vais aller ici et créer un module de test et importer un module ouvert ou disons, depuis open import generate text basic. Et maintenant, je vais dire « rapide », générer une réponse de cinq mots » équivaut à générer du texte de base et à transmettre la réponse d'impression rapide. Testons cela maintenant. Python teste les API, nous avons une erreur. Revenons ici. Je pense que c'est APK. De cette façon, nous déclarons l'instance. Essayons de perfectionner. Oui. Nous devons ajouter la clé API comme nom de variable ou nom de paramètre, et nous avons obtenu la phrase. Soyons clairs une fois de plus, et je vais maintenant vous dire de générer un paragraphe sur l'informatique quantique. Courons d'accord. Et parfait. Vous pouvez voir que nous avons maintenant une fonction simple que nous pouvons appeler à tout moment pour générer du texte avec Pen AI. La troisième étape est terminée et nous sommes prêts à commencer à créer notre agent. 3. Limitation LLM en action: OK. Avant de commencer à créer notre agent AII Voyons en action et découvrons à quel point les modèles linguistiques sont limités. Je vais revenir au modèle de test que j'ai créé, et je poserai la même question, si vous vous souvenez, dois-je prendre un parapluie et sortir aujourd'hui en Californie, par défaut, le modèle en GPT 3,5 Tb Supprimons l'invite du système Nous n'en avons pas besoin pour le moment. Alors maintenant, j'utilise cette invite et le modèle est GP 3.5. Voyons la réponse du modèle. Je vous recommande de consulter les prévisions météorologiques pour votre région spécifique afin de déterminer s'il pleut ou quoi que ce soit Vous pouvez donc voir qu'il n'a accès à aucune donnée en direct pour décider en fonction de cela. Encore une fois, je vais effacer et tester avec GPT quatre. Il vous indique que je ne suis actuellement pas en mesure d' accéder aux données en temps réel. Encore une fois, c'est GPT quatre et il n'a accès à aucune donnée. N'oubliez pas que lorsque nous avons posé cette question à C GPT powered by GPT four et d'autres outils, il a pu accéder à cette question et y répondre car il utilise outils externes et ce type d'agent d'IA, comme vous l'avez mentionné précédemment C'est ce que nous allons construire ensemble à partir de zéro dans ce cours. Il a obtenu les prévisions, puis il a répondu en fonction de ces données. Mais si vous contactez directement le modèle, sans ChagPT sans aucun outil externe, c'est limité. Tu vois ? En tant qu'assistant IA, je ne peux actuellement pas accéder aux données en temps réel. C'est la limite que nous allons aborder et résoudre avec les agents d'IA. 4. Agent d’IA en dur: OK, mes amis. À partir de maintenant, nous allons commencer à résoudre le problème et les limites des modèles linguistiques. Et nous donnerons accès au modèle linguistique à des outils externes. Mais dans cette conférence, je vais vous montrer comment créer ce que j'appelle un agent d'IA codé en dur. Commençons. Et je pense qu'avec cet exemple, tu comprendras le point. Donc, si vous vous souvenez, nous avons dit que si nous voulions dépasser cette limite et faire en sorte que GPT 43.5 ou tout autre modèle de langage réponde à des questions nécessitant des données en temps réel, nous devions lui donner accès à des fonctions et à des outils externes Je vais donc aller ici et vous proposer exemples de fonctions et créer une fonction simple qui renvoie simplement la météo en fonction de la ville. C'est très simple et les retours basiques sont ensoleillés, pluvieux , nuageux, etc., en fonction de la ville, du périmètre. Comme je vous l'ai déjà dit, je garde les choses très, très simples, afin que tout le monde puisse comprendre le concept avant de passer à des exemples avancés. Il existe une fonction très basique en Python qui renvoie un texte simple, savoir la météo basée sur la ville. OK ? Maintenant, je vais aller ici et créer un nouveau module, que j'appellerai « agent codé en dur ». Tu comprends ce que je veux dire dans un petit moment. Il s'agit de l'agent codé en dur. Dans ce scénario, nous y allons nous-mêmes, le programmeur. Nous allons appeler la fonction personnalisée, qui est get weather, et nous allons transmettre le résultat et l'injecter dans l' invite avant d' appeler le modèle. Si je reprends le test, je copierai le même. Encore une fois, allez voir l'agent, et disons agent codé en dur. Maintenant, avant de lancer cet exemple qui est limité, je vais importer ma fonction get weather et indiquer la météo actuelle et obtenir depuis la Californie à partir de cette fonction. Maintenant, dans l'invite, je dirais en fonction des conditions météorologiques suivantes et passant le courant à la météo que nous avons obtenue grâce à la fonction. Disons-le clairement en divisant en plusieurs lignes de cette façon, en supprimant les points positifs, en ajoutant la météo actuelle et en formatant la chaîne Nous pouvons donc voir maintenant que notre message est totalement différent. Nous avons posé la question, mais nous avons injecté le résultat de la fonction dans l'invite elle-même. Maintenant, le modèle connaît la météo actuelle grâce à cette fonction, et nous répondrons en fonction de cela. C'est simple, non ? Essayons maintenant de réexécuter ce script, Python et vous lancez l'agent codé en dur. Voyons voir. les conditions météorologiques que vous avez décrites comme étant ensoleillées, vous n'auriez généralement pas besoin d'un parapluie. Tu vois ? Maintenant, il a répondu à la question et nous avons dépassé la limite. Mais elle est codée en dur, ce qui signifie que nous appelons la fonction nous-mêmes dans le code et que nous la transmettons nous-mêmes à l' invite, injectons la valeur puis que nous appelons le modèle pour générer la réponse ou répondre à la question. Bien qu'il s'agisse d'un agent d'IA autonome que nous allons construire plus tard, le modèle d'IA en lui-même comprendra s'il a besoin d'une fonction et il l' appellera lui-même. Tout sera donc automatisé. C'est là la principale différence. Il s'agit d'une solution codée en dur. Cela ressemble aux flux de travail d'automatisation que nous avons créés dans le cadre du cours d'ingénierie rapide ou ce que j'appelle une chaîne de fonctions. Vous créez donc une fonction et vous l'enchaînez dans une invite , puis vous appelez le modèle. C'est ce que j'appelle une solution codée en dur pour résoudre les limites du modèle de langage. L'étape suivante consiste à optimiser, améliorer ou créer une solution automatisée capable de faire tout cela par elle-même. Préparez-vous à un peu de magie à venir. 5. L’invite ReAct: OK. Dans le dernier exemple, je vous ai montré comment créer ce que nous appelons l'agent codé en dur ou le flux de travail codé en dur, et nous résolvons les limites de la LM en injectant le résultat de la fonction ou le résultat de la fonction directement dans l'invite et nous avons obtenu le résultat Il est maintenant temps de passer au niveau supérieur et de voir comment nous pouvons automatiser cela, comment nous pouvons obliger l'IA ou l' agent à appeler automatiquement la fonction et à la transmettre automatiquement à l'invite ou à la question pour y répondre. En termes simples, comment automatiser cela, comment créer un agent qui pense et répond automatiquement. À partir de maintenant, concentrez-vous bien. Je vais procéder étape par étape, et je vais diviser l'ID en plusieurs conférences pour simplifier les choses. Ce que je vais faire maintenant, c'est créer un nouveau module, et je l'appellerai invites. Toute l'idée tourne autour de cette invite. Faisons un zoom arrière. C'est ce que nous appelons l'invite de réaction. Je ne sais pas si tu as entendu parler de React. Il s'agit d'un type d' invite qui permet au modèle de réfléchir à saisie par l'utilisateur, à la question ou l'invite et de prendre des mesures légères pour répondre à la question Voici l'invite que j'utilise. Vous avez été entraîné dans une boucle de pensée, d'action, de pose et de réponse à l'action. À la fin de la boucle, vous obtenez une réponse. Alors je l'explique. Je leur dis que l'idée est de comprendre la question qui vous a été posée. Il faudra donc réfléchir pour comprendre les besoins de l' utilisateur. Ensuite, il utilisera l'action pour exécuter l'une des actions disponibles. Ainsi, en fonction de sa compréhension de la tâche, il choisira une action et l'exécutera. Ensuite, la réponse à l'action est le résultat des actions sélectionnées. Ensuite, j'indiquerai au modèle quelles actions peuvent être utilisées. Dans notre cas, nous avons la fonction get weather. Nous allons donc l'appeler ainsi, obtenir la météo, et les paramètres sont California, qui est le nom de la ville, puis renvoyer l'état météorologique actuel de la ville. Il s'agit donc des fonctions ou actions disponibles pour le modèle. Et à la fin, je vais donner un exemple de session. Je vais donc le dire, par exemple, si la question était je devrais prendre un parapluie en Californie aujourd'hui, l'idée serait que je devrais abord vérifier la météo en Californie. C'est ainsi que pensent les humains. Quand je te le demande, dois-je prendre un parapluie ? Tu penseras d'abord à la météo ? Est-ce qu'il fait beau ? Est-ce qu'il pleut ? Ensuite, vous allez vérifier la météo. Vous utilisez une action, par exemple, vous allez vérifier les prévisions en ligne ou quelque chose comme ça. Dans notre cas, nous avons une fonction pour obtenir la météo. Ensuite, il fera une pause, puis il fera à nouveau froid avec la réponse d'action. Par exemple, si la réponse a été : le temps en Californie est ensoleillé. Nous avons donc maintenant la météo afin pouvoir répondre à la question en fonction de ce résultat. Le résultat serait quelque chose comme : « Non, je ne devrais pas prendre de parapluie aujourd'hui parce que le temps est ensoleillé ». Nous donnons donc un exemple de session pour que le modèle comprenne comment il fonctionnera. Encore une fois, ce bal de fin permet au modèle de réfléchir à la question ou à l' invite qui lui a été posée et essayer de la comprendre, puis de comprendre quelles tâches ou quelles actions il doit entreprendre pour résoudre le problème, et nous lui donnerons une liste d'actions à utiliser. Il utilisera ces actions, obtiendra la réponse et utilisera l'invite pour obtenir la réponse finale. Réponse. Voyons maintenant comment cette invite fonctionnera dans notre scénario. Je vais donc créer à nouveau un nouveau modèle, et je dirais : test de l'agent React. Et je vais maintenant copier l'agent codé en dur ici. Et je vais supprimer celui-ci. Je vais garder la question telle qu'elle figure dans L quatre, puis je transmettrai au système ici l'invite du système. Je vais simplement transmettre l'invite du système, mais importons-la avant. Je vais dire prompt, prompt du système de réaction, parfait, et je vais le transmettre ici. Donc, le seul ajustement que nous avons fait ici est que nous avons de nouveau été invités à répondre à une question simple sans fournir de données Nous déplaçons la fonction, et nous allons maintenant voir comment le modèle fonctionnera avec cette nouvelle invite du système. Permettez-moi également de remplacer la Californie par, par exemple, Arizona, une autre ville. Nous ne voulons pas un match parfait. Juste pour vous assurer que l'invite fonctionne parfaitement et qu'elle est en quelque sorte générique. Exécutons donc ce script, Python, et copions le nom du script. Et voyons maintenant ce qui va se passer. Concentrez-vous sur le résultat. Et c'est parfait. Vous pouvez voir que maintenant, il réfléchit d'une manière ou d'une autre. Il y a une idée. Il s' agit de la première étape. Si vous revenez à l'invite, vous verrez que la première étape consiste à comprendre la question. L'idée est donc je dois vérifier la météo actuelle en Arizona. Ensuite, il choisit une action, qui est d'obtenir la météo et les paramètres en Arizona, puis il pose. Vous voyez, nous avons atteint ce point, c'est parfait. Mais comme nous n' avons pas encore la fonction, le modèle n'a accès à aucune fonction dans ce test. Nous n'avons défini aucune fonction ici, quoi que ce soit. Il s'est donc simplement arrêté et nous n'avons pas eu le résultat final. Mais c'est parfait pour cette conférence sur ce point. L'idée que je veux vous montrer ici est cette invite de pacte permettra au modèle de comprendre la question décider d'une action, de l' exécuter et de choisir l'action Nous avons atteint le point où le modèle peut automatiquement sélectionner une action à utiliser, puis répondre à la question. L'étape suivante consiste à définir cette fonction afin que le modèle puisse l'appeler et l'utiliser. 6. Ajouter des fonctions: OK. Ainsi, lors de la dernière étape, l'agent a pu réfléchir à la question et décider de l'action. Mais comme aucune action n'est définie dans notre script, le modèle n'a appelé aucune action ni aucune fonction. Dans cette conférence, passons au niveau trois et faisons en sorte que le modèle appelle automatiquement l'action nécessaire pour répondre à la question. Je vais donc aller ici et appliquer ce script Je veux suivre chaque mise à jour afin que vous puissiez accéder à chaque script et faire un suivi étape par étape pour voir comment nous développons l' agent à partir de zéro En fait, je vais le renommer R A pour le rendre un peu plus petit, R A, qui signifie agent de réaction, et je dirais avec functions test, et celui-ci, le test de base RA Maintenant, je vais copier le même code et le déplacer ici, et je vais définir l'ensemble des fonctions disponibles pour le modèle. Supprimons donc ceci. Je vais dire ici les actions disponibles, et je définis simplement une liste qui contient le nom de chaque fonction. Et importons la fonction à partir d'exemples de fonctions et de port get to weather. Nous avons donc une liste parmi laquelle le modèle peut choisir. Dans notre cas, nous n'en avons qu'une pour simplifier les choses, comme je l'ai déjà mentionné, mais il s'agit d'une liste, le modèle peut accéder à une fonction, la sélectionner et l'appeler. Nous verrons comment dans un instant. Nous avons une liste des actions disponibles. Maintenant, ce que je vais faire, c'est lire le nom de l'action à partir de la sortie et demander au modèle d'appeler cette fonction Vous pouvez voir que le modèle savait que nous devions obtenir fonction météo avec l'Arizona comme paramètre. Mais comment il va l' appeler, voyons voir. Nous avons donc maintenant la réponse. Ici, nous voulons demander au modèle d'appeler l' action ou la fonction Nous avons donc besoin d'extraire le nom de la fonction de la réponse, et la réponse est une réponse textuelle. Donc, mon petit truc se trouve dans notre invite. Au lieu de renvoyer un simple texte comme celui-ci, je vais renvoyer un Jason structuré. Il nous serait beaucoup plus facile de lire le nom et les paramètres. Ce que je vais faire ici, c'est passer à l'exemple de session et vous verrez ici que l'action renvoyée est dans ce format, le nom de la fonction, puis le paramètre. Au lieu de cela, je dirai au modèle de le renvoyer dans JS de cette façon. Donc, au lieu de ce simple texte ici, nous avons un JSN dans le texte afin que nous puissions l'extraire facilement du texte de la réponse et appeler la fonction Revenons à notre test ici, et avant d'écrire le code pour extraire la fonction, laissez-moi vous montrer ce qui s'est passé, ce qui a changé maintenant. Je vais l'exécuter dans un script, et vous pouvez voir maintenant que l'idée est la même. Je dois d'abord vérifier la météo en Arizona, mais maintenant l'action se déroule au format Jason. Et c'est très important. Maintenant, je peux facilement lire cette chaîne Jason convertir en Jason et appeler la fonction. J'espère que vous avez eu l' idée car si vous avez un texte simple ici comme avant, nous avons peut-être besoin d'expressions régulières. Il sera en quelque sorte plus difficile d'extraire une fonction ou une simple chaîne de caractères à partir de la réponse. Avec un Jason structuré comme celui-ci, ce sera beaucoup plus facile. Mais comment pouvons-nous extraire ce texte JSN de cette réponse. Voici mes fonctions d'assistance que j'ai développées, j'ai créées pour vous faciliter les choses Je vais aller ici et créer un nouveau module Python, je l'appellerai JS helpers. Je collerai les fonctions que j'ai créées. Cela peut vous aider dans de nombreux scénarios Mais ce dont nous avons besoin dans notre cas, c'est de cette fonction, extraire Jason du texte. Regarde comme c'est facile maintenant. Je vais revenir à notre exemple et dire simplement que la fonction Jason est égale au nom de la fonction. Importons-le d'abord depuis Jason Helpers Import. Quel est le nom de la fonction ? Extrayez Jason. Il suffit de dire « extraire JS » et « à partir de la réponse », et nous allons maintenant imprimer la fonction JSN Imprimons également la réponse, je dirais la réponse du modèle, puis je dirais les fonctions JS extraites au-delà de cette chaîne de formatage Et voyons maintenant ce qui va se passer. Donc, ce que je fais ici est simplement d'imprimer la réponse principale, puis d' extraire la fonction JS, puis d'imprimer la fonction extraite pour voir si tout fonctionne parfaitement Alors allons-y. Vous pouvez voir. Il s'agit de la principale réponse du modèle. Ensuite, la fonction JSN extraite. Vous pouvez voir que nous avons maintenant une liste de fonctions avec leurs paramètres. Vous pouvez voir le nom et les paramètres de la fonction City, Arizona. Nous avons maintenant un JCN. Il est beaucoup plus facile de simplement lire les valeurs de ce JSN. J'espère que tu as trouvé l'idée ici. J'ai demandé au modèle ici avec l'invite générer l'action et le paramètre ou la fonction avec le paramètre au format JSM, il me sera donc plus facile de l'extraire ultérieurement et de permettre au modèle d'exécuter cette fonction Commentons ces lignes. J'ai maintenant la fonction JSN sous forme de texte. L'étape suivante consiste à exécuter la fonction. Laissez-moi vous montrer le code. C'est assez simple. Je viens de vérifier si cette fonction JSN existe lorsque nous l'extrayons Ensuite, je reçois le nom de la fonction et les paramètres de la fonction. Vous pouvez voir maintenant à quel point il est facile de les obtenir à partir du JSIN en supprimant directement le JSN Ensuite, je vérifie que le nom de la fonction existe dans la liste des actions disponibles. Où est cette liste, n'oubliez pas que nous l'avons définie ici. Il vérifiera si le nom de cette fonction existe dans cette liste. Sinon, il indiquera une action inconnue. Si c'est le cas, il imprimera le nom de l'action avec les paramètres, puis je définirai la fonction et coderai ici avec les paramètres, j'enregistrerai le résultat dans cette variable et j'afficherai simplement la réponse à l'action du message de résultat de la fonction, qui est le résultat de la fonction, ici le résultat, et imprimons le message du résultat de la fonction. C'est ça. Nous avons extrait le JSN, puis nous extrayons le nom la fonction et les paramètres de la fonction, et nous vérifions s'il est disponible ici, nous obtenons le nom de la fonction, nous l'appelons obtenons le résultat, et je l'imprime maintenant pour montrer que tout fonctionne comme prévu Effacons-le à nouveau et essayons notre nouveau code. Voyons ce qui va se passer maintenant, courez, et vous pouvez voir maintenant, il est écrit courir, connaître la météo. Le mode a donc automatiquement sélectionné la fonction et l'a exécutée. Mais nous avons ici un problème. Il indique que la réponse à l'action est nulle. Pourquoi ? Tout simplement parce que si nous passons à notre exemple de fonction, nous n'avons pas l'Arizona dans la liste. Choisissons donc quelque chose qui est disponible ici, comme Londres, et allons-y et changeons d'invite Devrais-je emporter un parapluie avec moi à Londres, et essayons maintenant de l' exécuter et de le perfectionner. Vous pouvez voir maintenant courir la météo, la ville est Londres et la réponse à l' action est nuageuse. Le modèle qui en est à cette étape a pu décider qu'il devait vérifier la météo, j'active la fonction et nous obtenons la réponse. L'étape suivante consiste à créer le modèle, utiliser la réponse pour répondre à notre demande principale, à notre principale question. Et c'est là que nous aurons besoin de la boucle d'agent AI. Si nous revenons à l'invite, souvenez-vous que nous avons une boucle. Nous allons donc expliquer plus en détail cette boucle et créer notre propre boucle d'agent afin que le modèle ou l'agent d'IA puisse répondre avec la réponse finale. 7. La boucle: OK, mes amis, lors de la dernière conférence, nous avons atteint un point où le modèle nous permet d'obtenir la fonction, extraire de la réponse, appeler et d'obtenir un résultat à partir de la fonction. Dans cet exemple, pour Londres, nous avons constaté que la réponse est floue. Alors maintenant, le mannequin sait que le temps à Londres est nuageux. Mais cela n'a pas généré le résultat final. C'est là que la boucle est importante. Si nous revenons aux instructions, souvenez-vous que vous suivez une boucle de pensée, d' action et de réponse Ce que nous devons faire maintenant, c'est faire en sorte que le modèle fonctionne en boucle. De cette façon, il aura la réponse d'action lors de la deuxième itération de la boucle Ainsi, lors de la première itération, il a obtenu la réponse lors de la deuxième itération Il aura la réponse qui lui permettra de répondre à la question. J'espère que nous avons eu l'idée car dans ce script, nous sommes entrés dans le bal, nous avons extrait la fonction et nous avons obtenu le résultat. Mais nous nous sommes arrêtés ici. Le mannequin ne savait pas comment répondre. Nous venons de recevoir la réponse de la fonction. Nous devons donc imbriquer ce code ici dans une boucle. Le modèle peut donc s'exécuter à nouveau, et maintenant il contiendra les informations. La réponse à l'action figurera dans les messages. Pour ce faire, dans cette conférence, je vais introduire une nouvelle fonction. Revenez à notre module ouvert ici. Je vais créer cette nouvelle fonction. Et au lieu de suivre une simple invite et celle du système et de créer les messages manuellement ici dans le corps de la fonction, je vais simplement transmettre les messages en tant que paramètre. Donc, d'une manière ou d'une autre, nous pouvons créer le modèle, nous souvenir de la conversation. Nous enregistrerons la conversation dans la boucle. Nous avons donc maintenant cette fonction dans la prochaine conférence, nous finaliserons notre agent Et si vous pensez qu'il y a quelque chose de flou ici, je pense que nous l'appliquerons pratiquement dans la prochaine conférence. Vous comprendrez comment fonctionne la boucle, comment le modèle et comment l'agent A fonctionnent à l'intérieur de cette boucle. Et vous comprendrez l' importance de la boucle. 8. L’agent final: OK, mes amis, dans cette conférence. Finalisons notre agent d'IA en implémentant la boucle finale Encore une fois, je vais créer un nouveau module, que j'appellerai RA final. Et c'est notre agent de réaction final. J'espère qu'avec cet exemple, vous comprenez toute l' idée qui sous-tend les agents. Je vais donc recopier le même code ici. OK, supprimons ces commentaires. Et maintenant, je vais ajouter des messages. N'oubliez pas que nous ajoutons cette fonction ici afin de pouvoir transmettre des messages. Nous allons donc utiliser cette fonction à la place. Nous devons donc l' importer ici, parfait. Et au lieu de l'invite et de l'invite du système, nous transmettrons des messages, et nous les définirons ici. Les messages sont égaux. Et faisons face à ce code simple. Vous savez, dans OpenAI, nous avons l'invite système l'invite utilisateur et une conversation, et vous pouvez ajouter autant que vous souhaitez entre l'assistant utilisateur sous conversation à transmettre au modèle pour commencer si vous le souhaitez. Nous n'avons ici que l'invite du système, qui est notre invite de réaction , et nous avons le contenu, qui est notre simple invite ici Maintenant, nous passons ces messages en tant que paramètre à notre nouvelle fonction, elle sera désormais générée en fonction de cette conversation. Jusqu'à présent, rien de nouveau, c'est très simple. Au lieu de transmettre à l'invite une invite système en tant que paramètre, nous utilisons la nouvelle fonction avec ce paramètre de messages. Ensuite, nous extrayons la fonction, rien de nouveau. Nous devons maintenant implémenter la boucle dont nous avons parlé. Concentrez-vous sur cette partie. C'est très important. C'est presque la partie la plus importante la structure des agents d'IA. Maintenant, au lieu de générer directement la réponse à partir de l'IA puis de l'extraire et de continuer, nous allons l'intégrer dans une boucle, comme je l'ai déjà mentionné dans la dernière conférence Définissez simplement deux variables, le nombre de tours et le nombre de tours maximum. Combien de fois voulez-vous que l'asiatique court, combien d'itérations, puis une simple boucle en Y, et vous direz que même si le nombre de tours est inférieur au nombre maximum de tours, il continuera à tourner en boucle J'imprimerai l'itération ou le nombre de tours juste pour savoir où je me situe dans la boucle Ensuite, j'en ajouterai un au nombre de tours afin que nous puissions interrompre la boucle lorsqu'il atteindra cinq et ajoutons simplement une orientation tabulation ici pour que le code se trouve dans la boucle. Donc, à la première itération, que va-t-il se passer, nous allons générer la réponse, nous allons extraire la fonction et nous obtiendrons le résultat de l' action. OK ? Maintenant, nous devons ajouter le résultat à la conversation Vous voyez ici que nous avons les messages. Ce que nous allons faire maintenant ici, c'est ajouter un nouveau message indiquant que nous avons obtenu une réponse Nous avons obtenu un résultat grâce à la fonction. Nous allons indiquer le modèle. OK, nous avons maintenant la réponse pour que vous puissiez répondre à la question. Comment faire cela ? Tout simplement. Après avoir reçu le message du résultat de la fonction, nous ajoutons simplement ce nouveau message ou ce nouveau message de discussion au tableau des messages ici. OK ? Alors maintenant, si tu veux, nous allons avoir quelque chose comme ça. Le tableau des messages ressemblera à ceci à ce stade. Nous avons donc maintenant la conversation complète, et nous pouvons à nouveau, lors la deuxième itération, lorsque nous l'appellerons, les messages contiendront le résultat de la fonction D'où l' importance de la boucle. Nous suivons les résultats générés par le modèle. Nous avons obtenu des résultats grâce à la fonction, nous l'avons donc ajoutée aux messages. Ainsi, dans la deuxième itération, il verra que nous avons un résultat de la fonction Et j'ajouterai ici à la fin que si nous n'avons pas de fonction adjacente, je dirais sinon break. Pour voir tout ce qui se passe dans le cadre de la boucle, laissez-moi également venir ici. Imprimez la réponse pour que nous puissions voir exactement ce qui se passe dans l'esprit de l'agent. Donc, bouclez, imprimez la réponse, extrayez la fonction, nous obtenons la fonction, nous l'exécutons. Nous obtenons le résultat de la fonction. Nous ajoutons le résultat à l'historique des messages, puis nous refaisons une boucle avec les nouveaux résultats. Voyons ce qui va se passer maintenant. C'est clair, et nous allons lancer notre implémentation finale ou final.yn. Parfait. Donc, dans la première itération de la boucle, le mannequin, l'agent a dit que je devrais d'abord vérifier la météo à Londres J'ai donc besoin de cette action. Il a dirigé l'action. Tu vois ? J'ai besoin de connaître la météo. La ville est Londres. La réponse de l'action est trouble. Dans la deuxième boucle, regardez cette incroyable magie. C'est vraiment magique. Quelque chose de vraiment intéressant. Dans la deuxième itération, l'agent sait désormais que le temps est nuageux Cela vous dit que oui, vous devriez envisager de prendre un parapluie car le temps est nuageux à Londres aujourd'hui. Donc, dans la première itération, comprenez la question, j'exécute la fonction, puis j'ajoute les résultats à la deuxième boucle à la deuxième itération, et ainsi de suite jusqu'à ce qu'elle trouve la réponse finale Et ce qui est intéressant ici, c'est que vous pouvez désormais poser à l'agent toutes les questions qui nécessitent de connaître la météo. Il ne s'agit pas uniquement du parapluie. Permettez-moi de vous montrer un exemple. Je vais modifier cette invite et je vais demander autre chose à l' agent. C'est une question très simple. Quel temps fait-il à Londres aujourd'hui ? Donc, si vous êtes sur le sujet, encore une fois, l'agent AI peut désormais répondre facilement à cette question. Cela me dira que le temps est nuageux. Il utilise la fonction externe . ' Alors posez d'autres questions délicates pour voir à quel point cet agent IA est intelligent. Par exemple, c'est une bonne journée pour aller à la plage en Californie. Nous allons tester cela. Oui, c'est une bonne journée. Il fait beau à Sonny. Essayons autre chose. C'est vraiment intéressant. Permettez-moi de le demander de cette façon. Quel est le temps à New York, et j'écrirai New York mal orthographié Voyons s'il peut gérer cela tout seul. Courez à nouveau. Parfait. Il s'en charge. Permettez-moi de vous poser une question qui n' a rien à voir avec la météo. Qu'est-ce que le marketing numérique ? Voyons ce qui va se passer. J'y ai réfléchi, et c'est une question basée sur des faits, alors j'ai obtenu une réponse directe. Peut-être vous demandez-vous maintenant comment je peux limiter cet agent à répondre uniquement aux questions liées à un cas d'utilisation spécifique, par exemple, si c'est uniquement pour marketing ou uniquement pour une aide financière, etc. Comment puis-je restreindre le modèle pour ce faire. Tout dépend de l'invite du système. J'en parlerai plus en détail lors de la prochaine conférence. 9. L’invite: Lors de la dernière conférence, nous avons donc terminé l'agent AI, et je vous ai montré comment fonctionne la boucle et comment l'agent AI était capable d'utiliser automatiquement une fonction externe pour répondre à nos questions. Et nous avons joué avec cette invite et nous avons posé différentes questions. Et je vous ai également montré qu'il peut répondre à des questions génériques comme le marketing numérique. Refaisons-le. Et vous verrez qu'il a obtenu une réponse à propos du marketing numérique. Dans cette conférence, je voudrais parler un peu du système, du React Prom. Tout d'abord, je tiens à mentionner que cette invite n'est pas parfaite. Parfois, si vous modifiez un peu cette invite, vous obtiendrez peut-être de meilleurs résultats. Par exemple, dans ce bloc de publication, et d'ailleurs, c'est un excellent article de bloc, ici, Simon, l'auteur utilise cette invite ici. C'est en quelque sorte similaire, et pour être honnête, j'ai trouvé quelques idées sur son blog lorsque j'ai créé le cours. Mais si vous voyez ici, lorsqu'il obtient la fonction, il la renvoie de cette façon, l' action, le nom de la fonction et le nom du paramètre. Si vous consultez le script Python qu'il a construit ou qu'il a créé, vous verrez qu'il utilise des expressions régulières. À mon avis, cette approche n' est pas la meilleure pour utiliser des expressions régulières. C'est pourquoi, dans mon invite, j'ai préféré utiliser la structure de la réponse Jason, et l'extraire de la réponse, afin que nous puissions facilement interagir avec les fonctions. Même si j'utilise d'une manière ou d'une autre des expressions régulières pour extraire le JSN Mais lorsque nous l' extrairons, nous obtiendrons quelque chose comme celui-ci, qui est facilement accessible et avec lequel nous pouvons jouer bien plus facilement qu' un simple texte brut. Donc, ce que je veux vous dire, c'est que ce message n'est pas un message sacré. Tu peux jouer avec , tu peux changer. Je vais partager avec vous différentes versions de cette invite. Pendant que je préparais le cours, je jouais avec différentes idées rapides. Laisse-moi te montrer celui-ci. Vous pouvez donc voir ici que j'ai différentes versions d'invite. Je vais joindre tout cela, afin que vous puissiez jouer et tester avec si vous le souhaitez. Juste une dernière remarque. Si vous souhaitez que l' agent AI réponde aux questions uniquement dans votre cas, scénario ou cas d'utilisation spécifique. Par exemple, je veux que l'agent réponde uniquement aux questions relatives à savoir si. Je peux l'ajouter à l'invite du système. Ne répondez à aucune question qui n' est pas liée à la météo. Ensuite, vous écrivez l'invite de réaction. Si vous allez ici maintenant et que nous allons tester cela, je vous demande ce qu'est le marketing numérique ? Voyons quelle sera la réponse. Vous pouvez voir que je suis désolée, mais je ne peux fournir que des informations sur la météo. Cette invite du système est très importante, si vous le souhaitez. Pour adapter votre agent à un scénario d'utilisation spécifique . Je pense qu'à partir de maintenant, vous pouvez utiliser le même modèle d' invite, ce modèle de réaction. Vous pouvez ajouter d'autres fonctions et les tester si vous le souhaitez, et nous le ferons plus tard. Je vous montrerai comment implémenter des agents d'IA avancés avec différents scénarios et cas d'utilisation plus loin dans les vidéos du projet. Mais pour l'instant, je pense que vous avez compris l'idée complète et l'importance de cette invite du système. 10. Simplifier avec SimplerLLM: OK, mes amis. Dans cette conférence, je vais vous montrer comment simplifier le processus de création d'agents d' IA à l'aide d'une bibliothèque appelée Simpler LM. Donc, ce que je vais faire simplement, c'est cloner ce copier-coller et simplement le renommer Disons que c'est quelque chose de plus simple. Et l'idée ici est plus simple. LM est une librairie que j'ai développée. Il s'agit d'un package Python qui vous aidera à interagir beaucoup plus facilement avec les modèles de langage. Croyez-moi, cela m'a beaucoup aidé et je l'ai rendu public et open source, tout le monde peut l'utiliser et créer facilement des outils d' IA. Regarde ça maintenant. Nous n'aurons plus besoin de ce module, nous n'aurons plus besoin du module JS Helpers. Nous avons besoin de l'invite et de la fonction d'échantillonnage météo GT Il suffit d'installer LM plus simple et de vous assurer que vous êtes dans l'environnement virtuel. Il suffit de l'installer, d' attendre un peu et de le perfectionner Maintenant, à partir d' un simple fournisseur LLM importation LLM à points LM et LLM Regarde ça. Maintenant, je vais créer une nouvelle instance LM, et je vais sélectionner le fournisseur comme open AI et le nom du modèle comme GPT quatre Maintenant, j'ai cette instance. Je peux l'utiliser pour générer du texte avec l'IA. Ce qui est vraiment bien, c'est que vous pouvez simplement changer le fournisseur en Gemini ou Autoanthropic, et le code restera tel C'est le principal avantage de l'utilisation d'un simple LM. Avec une instance, vous pouvez créer l'application, et si vous souhaitez modifier le modèle, il vous suffit de changer de fournisseur ici. Quoi qu'il en soit, il en va de même pour l'IA , et allons-y , et allons-y, la fonction de génération et dites générer une réponse et transmettre les messages, des messages égaux, et nous n'avons plus besoin du modèle ici puisqu'il est défini avec l'instance, puis nous pouvons simplement saisir également les outils JSN, qui sont intégrés à cette bibliothèque Nous avons un ensemble d' outils, des aides JS, nous importons, extrayons du JS à partir de texte et le remplaçons simplement par cette fonction ici Avec cette bibliothèque, vous n'avez plus besoin de tous ces modules autour de votre script Python. Nous allons le tester. Je vais l'exécuter, voir ce qui va se passer et perfectionner. Il fonctionne comme avant. Alors maintenant, nous n'avons pas besoin de tous ces modules, comme je l'ai mentionné, il vous suffit d' importer la bibliothèque et d'utiliser les outils. Peut-être pensez-vous maintenant que ce n'est pas si grave. Je peux créer ces fichiers, mais vous verrez plus tard que lorsque vous créerez d'autres projets et outils d'IA, etc., vous verrez en quoi cela changera la donne. Croyez-moi, sur la base d'une expérience réelle, de plus de 100 projets d'IA, cela changera la façon dont vous interagissez avec les modèles linguistiques. 11. Créer un agent d’IA d’auditeur SEO: Bonjour à tous, j'espère que vous avez apprécié ce cours sur la création agents d' IA à partir de zéro avec Python. Maintenant, dans cette conférence, nous allons créer un exemple concret. Quelque chose de vraiment super intéressant. Je vais créer un agent, un agent d'intelligence artificielle capable de répondre aux questions sur les pages Web. C'est un agent auditeur SEO. Il aura donc un accès direct aux pages Web, et vous pourrez demander ce que vous voulez, par exemple, combien de photos y a-t-il sur cette page Web. Comment optimiser cette page Web pour qu'elle soit classée sur Google. Tout ce que tu voudras. C'est comme votre assistant SEO. SEO signifie optimisation pour les moteurs de recherche, et c'est la technique utilisée pour optimiser votre site Web, afin que nous puissions nous classer sur Google ou dans les moteurs de recherche pour obtenir du trafic organique. Construisons ensemble l'ancien agent d'IA SEO. Je suis sûr que tu vas adorer ça. C'est super intéressant. Commençons. Voici donc un nouveau projet. Je vais repartir de zéro afin que nous puissions passer en revue tout ce que nous avons pris et vous verrez maintenant l'importance et la puissance d'un LM plus simple dans ce projet. Créez un nouveau fichier Python. Ceci est le fichier principal, et créons le fichier d'invite, ouvrons le terminal. Créons un nouvel environnement virtuel. Ne vous inquiétez pas pour les codes. Tout sera joint au cours. Concentrez-vous maintenant. Comprenez le concept afin que nous puissions créer l'agent de votre choix. Activons. OK. Parfait. Installez un LM plus simple, d'accord, parfait. Ajoutons maintenant notre pâte APike ici, et commençons maintenant premier temps, j' importerai un LM plus simple et je créerai une nouvelle instance comme nous l'avons fait lors de la dernière conférence. Maintenant, nous avons ceci qui extrait le JS du texte, et nous avons l'instance qui génère du texte avec GPT pour l'API Maintenant, avant de passer à autre chose, comprenons l'asiatique que nous allons construire. Comme je l'ai mentionné, il s'agit d'un agent d'audit SEO. Nous pouvons donc lui demander n'importe quoi sur n'importe quelle page Web et il peut accéder aux données de la page Web. Il peut lire la page Web et répondre en fonction de cela. Quelle est donc notre action extérieure, fonction extérieure ? Définissons-le. Disons des actions, par exemple le point Y, et cette fonction est simplement une fonction qui peut générer un rapport SEO pour n'importe quelle page Web. Pour ce faire, je vais utiliser une API simple que j'ai développée. C'est ce qu'on appelle l'outil d'analyse de référencement de site Web. Si vous passez à l'API rapide et que vous la testez, par exemple, c'est mon site Web, le point de terminaison du test, vous verrez que nous obtenons un résumé détaillé, les en-têtes HTTP, les titres, la description, le nombre de mots, les images, tout par exemple, c'est mon site Web, le point de terminaison du test, vous verrez que nous obtenons un résumé détaillé, les en-têtes HTTP, les titres, la description, le nombre de mots, les images, Donc, les données sur n'importe quelle page Web sont parfaites. Alors maintenant, je vais créer une fonction qui appelle cette API et renvoie l'audit SEO. Maintenant, voici la puissance du simple LM. Nous avons intégré un module d'API rapide dans cette bibliothèque. Nous pouvons donc appeler n'importe quelle API sur Rapid API avec cette classe simple. Je vais donc définir cette fonction. Il faut une URL. Je fournirai l' APURL depuis Rapid API. Voyons voir, c'est l'URL, et nous avons le paramètre sous forme d'URL, vous pouvez voir, je définis les paramètres, puis j'appelle l'API avec cette fonction simple et je renvoie la réponse. Vous pouvez maintenant voir à quel point Simple LM facilite beaucoup les choses maintenant et nous créons la fonction facilement à l'aide de Simple LM. Parfait, nous avons l'action. Il est maintenant temps de définir l'invite. Bien sûr, je l'ai déjà préparé . Juste pour ne pas perdre de temps maintenant à écrire l'invite complète. Collons-le et expliquons-le brièvement. Regarde ça. Il s'agit presque de la même action , de la même réponse, du même modèle de réaction, mais nous avons maintenant différentes actions disponibles. Vous pouvez voir la page get SCO reput, et nous aurons une URL en paramètre Et voici l'exemple de session. C'est très important. Regarde ça. Le titre est-il optimisé pour le marketing par mots clés de la page Web nas.com est mon site Web L'idée est que je devrais d'abord générer un reput SCO complet pour la page Web Il appelle cette fonction , puis sur la base du rapport, il répondra à votre question. Vous allez voir maintenant à quel point c'est intéressant ? C'est notre message. Je vais revenir à la session principale pour accéder au script principal, et j'importerai la fonction à partir d'actions, importer, obtenir un rapport de page CO, et depuis import axt et prompt, parfait Nous avons l'action maintenant, nous avons l'invite, nous avons nos fonctions, nous avons l'instance LM, nous sommes prêts à créer l'agent. Désormais, le code est quasiment le même. Je vais le coller. Vous verrez maintenant que nous avons la requête de l'utilisateur, c' est-à-dire la question que vous souhaitez poser. Par exemple, le nombre d'images dans la page Web suivante. Les messages, je les ai définis, puis le nombre de tours, la boucle. Tu te souviens de la boucle. Nous avons donc la réponse de l'agent. En utilisant maintenant l'instance d' élément pour donner la réponse et transmettre les messages, puis simplement ajouter la réponse Nous avons simplement la réponse de l' agent, puis nous extrayons l'action et nous vérifions si elle est disponible. Nous devons donc définir les actions disponibles dans Mémoriser cette liste, définissons-la. Allons ici et définissons-le comme disponible. Actions, voici l'action. Maintenant, je pense que tout est parfait. J'écris le message. OK. Testons cela. La question est maintenant de savoir combien d'images se trouvent dans la page Web suivante ? Essayons-le Python main BY Runs, nous avons une erreur. Une API doit être fournie pour pi. Nous devons également fournir l'APK rapide ici, ajoutant ceci est mon AP Ike et vous pouvez le trouver, d'ailleurs, ici, l'APIke rapide Revenons à notre code principal Effacons-le et réessayons. Maintenant, j'espère que ça marche. Fonction, parfait, génération d'un rapport, boucle deux. Il y a huit images sur cette page Web. Parfait. Posons une autre question. Quelle est la vitesse de réponse de cette page Web ? Fuyons. La réponse finale est 0,08 seconde. Waouh, assez vite. Vous pouvez donc voir que nous avons maintenant cet agent d'IA capable de répondre à toutes les questions liées à vos pages Web à l'aide d'une fonction externe. Voici notre agent AI d'audit SEO. N'oubliez pas qu'il s'agit du back-end de notre agent. Nous interagissons actuellement avec le terminal. Cela peut être un excellent projet pour peut-être un outil sur votre site Web, comme nous l'avons expliqué dans mes autres cours sur la création d' outils d'IA sur WordPress, ou peut-être la création d'un chat bot. Encore une fois, sur WordPress, alimenté par un assistant comme celui-ci ici. Lorsque vous créez cet agent, et d'ailleurs, nous avons des possibilités infinies ici, nous pouvons créer n'importe quel agent choix qui peut vous aider dans n'importe ou le fournir en tant que service à vos clients sur votre propre site Web, à vos propres clients, à vos propres visiteurs. Ce serait quelque chose de très utile pour votre entreprise ou pour vous-même, ou peut-être pour être plus productif dans tout ce que vous voulez. 12. Quelle est la prochaine étape ?: Nous sommes donc arrivés à la fin de ce cours. J'espère que vous avez apprécié d'apprendre à créer des agents d'IA à l'aide de React Prompt et de Python en partant de zéro. Maintenant, quelle est la prochaine étape ? chose la plus importante à faire est de vous entraîner, de créer votre propre agent. Tu peux obtenir tous mes codes. Tout est joint, téléchargé et essayez de le peaufiner, le modifier pour créer votre propre agent personnalisé N'oubliez pas de tout partager avec nous avec la communauté. Nous pouvons partager des idées, nous le pouvons. Je suis là pour vous aider à tout moment si vous rencontrez un problème, postez vos questions. Je suis ici presque tous les jours. La deuxième chose est que je publierai plus de projets asiatiques sur l'IA presque tous les mois dans ma vidéothèque sur mon site Web. Si vous souhaitez participer, vous pouvez y aller et continuer et voir plus d'exemples et de projets chaque mois. Merci et à voir un autre cours.