Révolutionner l’IA autonome : exploiter les bases de données vectorielles pour renforcer Auto-GPT
ChatGPT, ou Chat Generative Pre-trained Transformer, a révolutionné la technologie de l’IA grâce à des avancées révolutionnaires. Cependant, même avec de grands modèles de langage (LLM) tels que GPT et des applications d’IA spécialisées comme Midjourney, l’intervention humaine reste nécessaire pour les prompts. Cette dépendance aux humains soulève la question suivante : l’IA peut-elle fonctionner de manière autonome et atteindre des objectifs sans intervention humaine ? Auto-GPT s’est imposé comme une solution populaire à ce besoin.
Qu’est-ce qu’Auto-GPT ?
Auto-GPT est un projet open-source expérimental sur GitHub. Il combine un modèle de langage GPT avec d’autres outils pour créer un système d’IA capable de travailler en continu et de manière indépendante avec une intervention humaine minimale, voire sans intervention humaine.
Auto-GPT comporte deux parties essentielles : un LLM et un ensemble de commandes. Le LLM, tel que GPT, sert de « cerveau » à Auto-GPT et gère le traitement cognitif. Les prompts d’Auto-GPT sont donc développés par le LLM plutôt que par une saisie humaine traditionnelle. Parallèlement, l’ensemble de commandes exécute diverses tâches de manière autonome, comme la gestion de fichiers, la réalisation de recherches sur le Web et l’accès aux réseaux sociaux. Ces capacités équivalent aux « mains » et aux « sens » d’Auto-GPT.
Pour expliquer davantage le processus, Auto-GPT utilise le modèle de langage GPT et le retour humain pour analyser et décomposer les grandes tâches en tâches plus petites. Il attribue ensuite des commandes spécifiques à ces tâches plus petites, les exécute et reçoit des entrées pour le cycle suivant de traitement cognitif. Ces procédures se répètent jusqu’à ce qu’Auto-GPT termine la tâche.
Les restrictions d’Auto-GPT
Maintenant que vous connaissez Auto-GPT, il est important de comprendre ses capacités et ses restrictions. Bien qu’Auto-GPT puisse exécuter des tâches automatiquement, il présente des limites dans la compréhension et la conservation d’informations contextuelles étendues, car le modèle GPT qu’il exploite possède une limite de tokens. Par exemple, GPT-3 d’OpenAI ne peut traiter qu’un maximum de 4 096 tokens pour le contexte, ce qui signifie que lorsque les conversations dépassent la limite de tokens, GPT-3 peut oublier les discussions précédentes.
De plus, pour accomplir une tâche complexe, Auto-GPT doit effectuer plusieurs étapes. Cependant, vous ne pouvez pas envoyer chaque étape séparément au modèle GPT, car cela pourrait entraîner une perte de contexte. Une telle perte rendrait difficile de déterminer si les actions sont correctes et si elles permettent d’atteindre efficacement l’objectif. Mais si vous envoyez tous les messages précédents au modèle GPT à chaque étape, ils dépasseront plus rapidement la limite de tokens de GPT.
Une façon de résoudre ce problème contextuel consiste à accéder à une fenêtre de messages historiques, comme les dix derniers messages ou un nombre fixe de tokens, sans dépasser la limite de tokens d’une seule conversation. Cependant, cette méthode empêche Auto-GPT d’accéder aux informations contextuelles antérieures, ce qui pourrait entraîner l’échec d’Auto-GPT dans l’accomplissement de son objectif.
Améliorer la capacité contextuelle d’Auto-GPT avec une base de données vectorielle
L’intégration d’Auto-GPT à une base de données vectorielle est une solution plus efficace et plus performante pour améliorer la mémoire et la compréhension contextuelle d’Auto-GPT. Voici comment fonctionne l’intégration :
L’intégration convertit les commandes d’Auto-GPT et les résultats d’exécution de chaque étape en embeddings et les stocke dans une base de données vectorielle.
Lors de la génération de la tâche suivante, elle récupère les messages de la fenêtre d’historique et les stocke comme entrée pour une recherche dans une base de données vectorielle.
Elle récupère ensuite les messages historiques
top-kafin d’améliorer le contexte avec une portée chronologique plus large.
image
De plus, grâce à la capacité de récupération par similarité de la base de données vectorielle, le système peut déterminer si la dernière action est similaire à l’action actuelle et si elle contribue à accomplir la tâche, fournissant ainsi des informations plus précises pour la commande suivante.
Comment configurer Auto-GPT avec Milvus
Milvus est l’une des bases de données vectorielles open source les plus populaires, capable de gérer d’immenses jeux de données contenant des millions, des milliards, voire des milliers de milliards de vecteurs. Vous pouvez suivre le guide ci-dessous pour intégrer facilement Milvus à votre Auto-GPT.
- Récupérez l’image Docker de Milvus et installez-la à l’aide de Docker Compose :
https://github.com/milvus-io/milvus/releases/download/v2.2.8/milvus-standalone-docker-compose.yml
docker compose up -d
- Installez le client
pymilvusdans votre environnement python :
pip install pymilvus==2.2.8
- Mettez à jour votre fichier
.env:
MEMORY_BACKEND=milvus
Si vous trouvez difficile de déployer et de maintenir Milvus, envisagez d’utiliser Zilliz Cloud. Il s’agit d’un service cloud-native entièrement géré pour Milvus, qui peut vous aider à gérer facilement la mémoire d’Auto-GPT. Zilliz Cloud dispose d’une large base d’utilisateurs dans le monde entier et a été recommandé par Jensen Huang, PDG de Nvidia, lors de la GTC 2023. De plus, Zilliz Cloud est le fournisseur désigné par OpenAI pour le plugin ChatGPT Retrieval.
Voici un guide expliquant comment utiliser Zilliz Cloud comme backend de mémoire d’Auto-GPT :
Connectez-vous à Zilliz Cloud ou inscrivez-vous pour créer un compte si vous n’en avez pas.
Créez une base de données et obtenez le point de terminaison du cloud public.
Installez
pymilvusen exécutantpip install pymilvus==2.2.8, puis mettez à jour votre fichier.envavec les commandes suivantes :
MEMORY_BACKEND=milvus
MILVUS_ADDR=your-public-cloud-endpoint
MILVUS_USERNAME=your-db-username
MILVUS_PASSWORD=your-db-password
En utilisant Milvus ou Zilliz Cloud comme backend de mémoire pour Auto-GPT, vous pouvez améliorer considérablement ses capacités et le rapprocher encore davantage d’une véritable autonomie.
Limites de l’intégration d’Auto-GPT avec une base de données vectorielle
L’intégration d’une base de données vectorielle à Auto-GPT est très bénéfique et nécessaire pour automatiser les tâches et générer des commandes alignées sur les objectifs de l’utilisateur. Malgré cela, il existe encore certaines limites.
Lors de la récupération des messages depuis la base de données vectorielle, les résultats top-k ne sont pas filtrés. Par conséquent, des informations à faible similarité peuvent être présentes, ce qui pourrait induire le modèle GPT en erreur et, au final, ralentir sa progression vers l’obtention du résultat souhaité.
Vous pouvez uniquement ajouter et interroger les données de contexte, mais vous ne pouvez pas supprimer les données qui ne sont plus pertinentes ou nécessaires.
Actuellement, il n’est pas possible de personnaliser le modèle d’embedding. La seule option disponible consiste à utiliser l’interface d’embedding fournie par OpenAI.
Auto-GPT expliqué
Auto-GPT est une nouvelle avancée dans la technologie de l’IA qui vise à atteindre une autonomie complète avec une intervention humaine minimale, voire nulle. Bien qu’encore expérimental, Auto-GPT possède un immense potentiel, en particulier lorsqu’il est combiné à des bases de données vectorielles comme Milvus.
En tant que fournisseur de logiciels d’infrastructure pour les technologies d’IA, nous sommes ravis de voir les bases de données vectorielles jouer un rôle crucial dans le développement et le renforcement de nouveaux systèmes de contenu généré par l’IA (AIGC) comme Auto-GPT. Nous proposons de nombreux articles informatifs si vous souhaitez en savoir plus sur les bases de données vectorielles open source et Milvus, ainsi que sur des sujets connexes tels que les Hierarchical Navigable Small Worlds (HNSW). Alors, travaillons ensemble pour continuer à repousser les limites de l’IA et créer un avenir plus prometteur pour l’AIGC.
Continuer à lire

Data Deduplication at Trillion Scale: How to Solve the Biggest Bottleneck of LLM Training
Explore how MinHash LSH and Milvus handle data deduplication at the trillion-scale level, solving key bottlenecks in LLM training for improved AI model performance.

VidTok: Rethinking Video Processing with Compact Tokenization
VidTok tokenizes videos to reduce redundancy while preserving spatial and temporal details for efficient processing.

Selecting the Right ETL Tools for Unstructured Data to Prepare for AI
Learn the right ETL tools for unstructured data to power AI. Explore key challenges, tool comparisons, and integrations with Milvus for vector search.



