Connect with us

Auto-GPT & GPT-Engineer : Un guide approfondi sur les agents IA les plus performants d’aujourd’hui

Intelligence artificielle

Auto-GPT & GPT-Engineer : Un guide approfondi sur les agents IA les plus performants d’aujourd’hui

mm

Lorsque l’on compare ChatGPT avec des agents IA autonomes tels que Auto-GPT et GPT-Engineer, une différence significative émerge dans le processus de prise de décision. Alors que ChatGPT nécessite une implication humaine active pour conduire la conversation, en fournissant des conseils basés sur les invites de l’utilisateur, le processus de planification dépend en grande partie de l’intervention humaine.

Les modèles d’IA générative comme les transformateurs sont la technologie de pointe, qui alimente ces agents IA autonomes. Ces transformateurs sont formés sur de grands ensembles de données, leur permettant de simuler des capacités de raisonnement et de prise de décision complexes.

Les racines open-source des agents autonomes : Auto-GPT et GPT-Engineer

De nombreux agents IA autonomes proviennent d’initiatives open-source menées par des individus innovants qui transforment les flux de travail conventionnels. Plutôt que de simplement offrir des suggestions, des agents tels qu’Auto-GPT peuvent gérer de manière indépendante des tâches, allant des achats en ligne à la construction d’applications de base. L’interpréteur de code d’OpenAI vise à améliorer ChatGPT en passant de la simple suggestion d’idées à la résolution active de problèmes avec ces idées.

Les deux Auto-GPT et GPT-Engineer sont équipés de la puissance de GPT 3.5 et GPT-4. Il comprend la logique du code, combine plusieurs fichiers et accélère le processus de développement.

Le cœur de la fonctionnalité d’Auto-GPT réside dans ses agents IA. Ces agents sont programmés pour exécuter des tâches spécifiques, allant des tâches banales comme la planification à des tâches plus complexes qui nécessitent une prise de décision stratégique. Cependant, ces agents IA opèrent dans les limites fixées par les utilisateurs. En contrôlant leur accès via les API, les utilisateurs peuvent déterminer la profondeur et la portée des actions que l’IA peut effectuer.

Par exemple, si la tâche consiste à créer une application Web de chat intégrée à ChatGPT, Auto-GPT divise de manière autonome l’objectif en étapes actionnables, comme la création d’une interface frontale HTML ou la création d’un backend Python. Alors que l’application produit de manière autonome ces invites, les utilisateurs peuvent toujours les surveiller et les modifier. Comme le montre le créateur d’AutoGPT @SigGravitas, il est capable de construire et d’exécuter un programme de test basé sur Python.

https://twitter.com/SigGravitas/status/1642181498278408193

Alors que le diagramme ci-dessous décrit une architecture plus générale d’un agent IA autonome, il offre des informations précieuses sur les processus qui se déroulent en arrière-plan.

Architecture d'agent IA autonome comme Autogpt, GPT Engineer

Architecture d’agent IA autonome

Le processus est initié par la vérification de la clé API OpenAI et l’initialisation de divers paramètres, notamment la mémoire à court terme et le contenu de la base de données. Une fois les données clés transmises à l’agent, le modèle interagit avec GPT3.5/GPT4 pour récupérer une réponse. Cette réponse est ensuite transformée au format JSON, que l’agent interprète pour exécuter diverses fonctions, comme effectuer des recherches en ligne, lire ou écrire des fichiers, ou même exécuter du code. Auto-GPT utilise un modèle pré-entraîné pour stocker ces réponses dans une base de données, et les interactions futures utilisent ces informations stockées pour référence. La boucle se poursuit jusqu’à ce que la tâche soit considérée comme terminée.

Guide de configuration pour Auto-GPT et GPT-Engineer

La configuration d’outils de pointe comme GPT-Engineer et Auto-GPT peut rationaliser votre processus de développement. Ci-dessous se trouve un guide structuré pour vous aider à installer et à configurer les deux outils.

Auto-GPT

La configuration d’Auto-GPT peut sembler complexe, mais avec les étapes appropriées, elle devient straightforward. Ce guide couvre la procédure pour configurer Auto-GPT et offre des informations sur ses divers scénarios.

1. Prérequis :

  1. Environnement Python : Assurez-vous d’avoir Python 3.8 ou une version ultérieure installée. Vous pouvez obtenir Python à partir de son site officiel.
  2. Si vous prévoyez de cloner des référentiels, installez Git.
  3. Clé API OpenAI : Pour interagir avec OpenAI, une clé API est nécessaire. Obtenez la clé à partir de votre compte OpenAI
Génération de clé API Open AI

Génération de clé API Open AI

Options de backend de mémoire : Un backend de mémoire sert de mécanisme de stockage pour que AutoGPT puisse accéder aux données essentielles pour ses opérations. AutoGPT utilise à la fois des capacités de stockage à court terme et à long terme. Pinecone, Milvus, Redis, et d’autres sont des options disponibles.

2. Configuration de votre espace de travail :

  1. Créez un environnement virtuel : python3 -m venv myenv
  2. Activez l’environnement :
    1. MacOS ou Linux : source myenv/bin/activate

3. Installation :

  1. Clonez le référentiel Auto-GPT (assurez-vous d’avoir Git installé) : git clone https://github.com/Significant-Gravitas/Auto-GPT.git
  2. Pour vous assurer de travailler avec la version 0.2.2 d’Auto-GPT, vous devrez checkout à cette version spécifique : git checkout stable-0.2.2
  3. Navigatez jusqu’au référentiel téléchargé : cd Auto-GPT
  4. Installez les dépendances requises : pip install -r requirements.txt

4. Configuration :

  1. Localisez .env.template dans le répertoire principal /Auto-GPT. Dupliquez-le et renommez-le en .env
  2. Ouvrez .env et définissez votre clé API OpenAI à côté de OPENAI_API_KEY=
  3. De même, pour utiliser Pinecone ou d’autres backends de mémoire, mettez à jour le fichier .env avec votre clé API Pinecone et votre région.

5. Instructions de ligne de commande :

Auto-GPT offre un ensemble riche d’arguments de ligne de commande pour personnaliser son comportement :

  • Utilisation générale :
    • Afficher l’aide : python -m autogpt --help
    • Ajuster les paramètres IA : python -m autogpt --ai-settings <filename>
    • Spécifier un backend de mémoire : python -m autogpt --use-memory <backend de mémoire>
AutoGPT en ligne de commande

AutoGPT en ligne de commande

6. Lancement d’Auto-GPT :

Une fois les configurations terminées, initialisez Auto-GPT en utilisant :

  • Linux ou Mac : ./run.sh start
  • Windows : .run.bat

Intégration Docker (Approche de configuration recommandée)

Pour ceux qui souhaitent conteneuriser Auto-GPT, Docker offre une approche rationalisée. Cependant, soyez conscient que la configuration initiale de Docker peut être légèrement complexe. Référez-vous au guide d’installation de Docker pour obtenir de l’aide.

Procédez en suivant les étapes ci-dessous pour modifier la clé API OpenAI. Assurez-vous que Docker est en cours d’exécution en arrière-plan. Allez maintenant dans le répertoire principal d’AutoGPT et suivez les étapes ci-dessous sur votre terminal

  • Construisez l’image Docker : docker build -t autogpt .
  • Exécutez maintenant : docker run -it --env-file=./.env -v$PWD/auto_gpt_workspace:/app/auto_gpt_workspace autogpt

Avec docker-compose :

  • Exécutez : docker-compose run --build --rm auto-gpt
  • Pour une personnalisation supplémentaire, vous pouvez intégrer des arguments supplémentaires. Par exemple, pour exécuter avec –gpt3only et –continuous : docker-compose run --rm auto-gpt --gpt3only--continuous
  • Compte tenu de l’autonomie étendue d’Auto-GPT dans la génération de contenu à partir de grands ensembles de données, il existe un risque potentiel qu’il accède involontairement à des sources Web malveillantes.
  • </ul)

    Pour atténuer les risques, exécutez Auto-GPT dans un conteneur virtuel, comme Docker. Cela garantit que tout contenu potentiellement nocif reste confiné dans l'espace virtuel, laissant vos fichiers et système externes intacts. Alternativement, Windows Sandbox est une option, bien qu'il réinitialise après chaque session, ne parvenant pas à conserver son état.

    Pour des raisons de sécurité, exécutez toujours Auto-GPT dans un environnement virtuel, garantissant que votre système reste isolé des sorties inattendues.

    Compte tenu de tout cela, il est possible que vous ne parveniez pas à obtenir les résultats souhaités. Les utilisateurs d'Auto-GPT ont signalé des problèmes récurrents lors de la tentative d’écriture dans un fichier, rencontrant souvent des tentatives infructueuses en raison de noms de fichiers problématiques. Voici une telle erreur : Auto-GPT (version 0.2.2) n'ajoute pas le texte après l'erreur "write_to_file returned : Error : Le fichier a déjà été mis à jour

    Diverses solutions pour résoudre ce problème ont été discutées sur le fil de discussion GitHub associé.

    GPT-Engineer

    Flux de travail GPT-Engineer :

    1. Définition de l’invite : Créez une description détaillée de votre projet en utilisant un langage naturel.
    2. Génération de code : Sur la base de votre invite, GPT-Engineer se met au travail, produisant des extraits de code, des fonctions ou même des applications complètes.
    3. Affinement et optimisation : Après la génération, il y a toujours de la place pour l’amélioration. Les développeurs peuvent modifier le code généré pour répondre à des exigences spécifiques, garantissant une qualité de premier ordre.

    Le processus de configuration de GPT-Engineer a été condensé en un guide facile à suivre. Voici une ventilation étape par étape :

    1. Préparation de l’environnement : Avant de commencer, assurez-vous d’avoir votre répertoire de projet prêt. Ouvrez un terminal et exécutez la commande ci-dessous

    • Créez un nouveau répertoire nommé ‘site Web’ : mkdir website
    • Accédez au répertoire : cd website

    2. Clonez le référentiel :  git clone https://github.com/AntonOsika/gpt-engineer.git .

    3. Accédez et installez les dépendances : Une fois cloné, basculez vers le répertoire cd gpt-engineer et installez toutes les dépendances nécessaires make install

    4. Activez l’environnement virtuel : En fonction de votre système d’exploitation, activez l’environnement virtuel créé.

    • Pour macOS/Linux : source venv/bin/activate
    • Pour Windows, cela diffère légèrement en raison de la configuration de la clé API : set OPENAI_API_KEY=[votre clé API]

    5. Configuration – Configuration de la clé API : Pour interagir avec OpenAI, vous aurez besoin d’une clé API. Si vous n’en avez pas encore, inscrivez-vous sur la plateforme OpenAI, puis :

    • Pour macOS/Linux : export OPENAI_API_KEY=[votre clé API]
    • Pour Windows (comme mentionné précédemment) : set OPENAI_API_KEY=[votre clé API]

    6. Initialisation du projet et génération de code : La magie de GPT-Engineer commence avec le fichier main_prompt trouvé dans le répertoire projects .

    • Si vous souhaitez lancer un nouveau projet : cp -r projects/example/ projects/website

    Remplacez ‘website’ par le nom de votre projet.

    • Éditez le fichier main_prompt en utilisant un éditeur de texte de votre choix, en rédigeant les exigences de votre projet.

    • Une fois que vous êtes satisfait de l’invite, exécutez : gpt-engineer projects/website

    Le code généré se trouvera dans le répertoire workspace à l’intérieur du répertoire du projet.

    7. Après la génération : Bien que GPT-Engineer soit puissant, il ne sera pas toujours parfait. Inspectez le code généré, apportez des modifications manuelles si nécessaire et assurez-vous que tout fonctionne correctement.

    Exemple d’exécution

    Invite :

    “Je veux développer une application Streamlit de base en Python qui visualise les données des utilisateurs via des graphiques interactifs. L’application doit permettre aux utilisateurs de télécharger un fichier CSV, de sélectionner le type de graphique (par exemple, barre, pie, ligne) et de visualiser dynamiquement les données. Elle peut utiliser des bibliothèques comme Pandas pour la manipulation de données et Plotly pour la visualisation.”

    Configuration et exécution de l'ingénieur GPT

    Configuration et exécution de l’ingénieur GPT

    De même qu’Auto-GPT, GPT-Engineer peut parfois rencontrer des erreurs même après une configuration complète. Cependant, à ma troisième tentative, j’ai réussi à accéder à la page Web Streamlit suivante. Assurez-vous d’examiner toutes les erreurs sur la page des problèmes du référentiel GPT-Engineer.

    Application Streamlit générée à l'aide de l'ingénieur GPT

    Application Streamlit générée à l’aide de l’ingénieur GPT

    Goulots d’étranglement actuels des agents IA

    Coûts d’exploitation

    Une tâche unique exécutée par Auto-GPT peut impliquer de nombreuses étapes. Importamment, chacune de ces étapes pourrait être facturée individuellement, augmentant les coûts. Auto-GPT peut être piégé dans des boucles répétitives, échouant à livrer les résultats promis. De telles occurrences compromettent sa fiabilité et sapent l’investissement.

    Imaginez que vous souhaitiez créer un court essai avec Auto-GPT. La longueur idéale de l’essai est de 8 000 jetons, mais lors du processus de création, le modèle se lance dans de multiples étapes intermédiaires pour finaliser le contenu. Si vous utilisez GPT-4 avec une longueur de contexte de 8 000, vous seriez facturé 0,03 $ pour l’entrée. Et pour la sortie, le coût serait de 0,06 $. Maintenant, supposons que le modèle rencontre une boucle inattendue, répétant certaines parties à plusieurs reprises. Non seulement le processus devient plus long, mais chaque répétition ajoute également au coût.

    Pour vous protéger contre cela :

    Définissez des limites d’utilisation dans OpenAI Billing & Limits :

    • Limite stricte : Restreint l’utilisation au-delà de votre seuil défini.
    • Limite souple : Vous envoie un e-mail d’alerte une fois le seuil atteint.

    Limitations de fonctionnalité

    Les capacités d’Auto-GPT, comme le montre son code source, viennent avec certaines limites. Ses stratégies de résolution de problèmes sont régies par ses fonctions intrinsèques et l’accessibilité fournie par l’API GPT-4. Pour des discussions approfondies et des solutions de contournement possibles, consultez : Discussion Auto-GPT.

    Impact de l’IA sur le marché du travail

    Le lien entre l’IA et les marchés du travail est en constante évolution et est documenté en détail dans ce document de recherche. Un point clé à retenir est que même si le progrès technologique profite souvent aux travailleurs qualifiés, il pose des risques pour ceux qui s’engagent dans des tâches routinières. En fait, les progrès technologiques peuvent remplacer certaines tâches, mais ils ouvrent également la voie à des tâches diverses et intensives en main-d’œuvre.

    Marché du travail IA Agents autonomes prennent le relais

    On estime que 80 % des travailleurs américains pourraient constater que les LLM (modèles d’apprentissage de langage) influencent environ 10 % de leurs tâches quotidiennes. Cette statistique souligne la fusion des rôles de l’IA et de l’humain.

    Le rôle double de l’IA dans la main-d’œuvre :

    • Aspects positifs : L’IA peut automatiser de nombreuses tâches, allant du service client à la consultation financière, offrant un répit aux petites entreprises qui manquent de fonds pour des équipes dédiées.
    • Préoccupations : L’avantage de l’automatisation soulève des sourcils quant aux pertes d’emplois potentielles, en particulier dans les secteurs où l’implication humaine est primordiale, tels que le support client. Avec cela vient le labyrinthe éthique lié à l’accès de l’IA aux données confidentielles. Cela nécessite une infrastructure solide garantissant la transparence, la responsabilité et l’utilisation éthique de l’IA.

    Conclusion

    Il est clair que des outils tels que ChatGPT, Auto-GPT et GPT-Engineer se tiennent à la pointe de la refonte de l’interaction entre la technologie et ses utilisateurs. Avec des racines dans les mouvements open-source, ces agents IA manifestent les possibilités de l’autonomie des machines, rationalisant des tâches allant de la planification au développement de logiciels.

    Alors que nous nous lançons dans un avenir où l’IA s’intègre plus profondément dans nos routines quotidiennes, un équilibre entre l’adoption des capacités de l’IA et la sauvegarde des rôles humains devient crucial. Dans un spectre plus large, la dynamique IA-marché du travail peint une image à double face de possibilités de croissance et de défis, exigeant une intégration consciente de l’éthique de la technologie et de la transparence.

J'ai passé les cinq dernières années à me plonger dans le monde fascinant de l'apprentissage automatique et de l'apprentissage profond. Ma passion et mon expertise m'ont conduit à contribuer à plus de 50 projets de génie logiciel divers, avec un accent particulier sur l'IA/ML. Ma curiosité permanente m'a également attiré vers le traitement automatique des langues, un domaine que je suis impatient d'explorer plus en détail.