


Quand GPT-4 réfléchit à son erreur : les performances ont augmenté de près de 30 % et la capacité de programmation a augmenté de 21 %
La façon de penser du GPT-4 devient de plus en plus humaine.
Lorsque les humains font des erreurs, ils réfléchissent à leurs actions pour éviter de commettre des erreurs à nouveau. Si les grands modèles de langage tels que GPT-4 ont également la capacité de réfléchir, les performances seront améliorées d'autant.
Il est bien connu que les grands modèles de langage (LLM) ont démontré des performances sans précédent sur diverses tâches. Cependant, ces méthodes SOTA nécessitent généralement un réglage fin du modèle, une optimisation des politiques et d'autres opérations sur l'espace d'état défini. En raison du manque de données de formation de haute qualité et d’un espace d’état bien défini, il est encore difficile de mettre en œuvre un modèle optimisé. De plus, les modèles ne possèdent pas encore certaines qualités inhérentes au processus de décision humain, notamment la capacité d’apprendre de ses erreurs.
Mais maintenant, dans un article récent, des chercheurs de la Northeastern University, du MIT et d'autres institutions ont proposé Reflexion, qui donne à l'agent la capacité de se souvenir de manière dynamique et de s'auto-réfléchir.
Afin de vérifier l'efficacité de la méthode, cette étude a évalué la capacité de l'agent à accomplir des tâches de prise de décision dans l'environnement AlfWorld, et sa capacité à accomplir des tâches de questions et réponses à forte intensité de connaissances et basées sur la recherche dans l'environnement HotPotQA. Le taux de réussite dans ces deux tâches est respectivement de 97% et 51%.
Adresse papier : https://arxiv.org/pdf/2303.11366.pdf
Adresse du projet : https://github.com/GammaTauAI/reflexion-human-eval
Comme le montre l'image ci-dessous, dans AlfWorld Dans l'environnement, il y a divers objets disposés dans la pièce, et l'agent doit donner un plan de raisonnement pour obtenir un certain objet. La partie supérieure de l'image ci-dessous échoue en raison du plan inefficace de l'agent. Après réflexion, l'agent se rend compte de l'erreur, corrige la trajectoire du raisonnement, et donne une méthode de trajectoire concise (partie inférieure de la figure).
Modèle de réflexion sur les stratégies de recherche défectueuses :
Cet article montre que vous pouvez corriger cette erreur en demandant à GPT-4 de réfléchir à « Pourquoi vous êtes-vous trompé et de générer une nouvelle invite pour vous-même ? » sont pris en compte jusqu'à ce que le résultat soit correct, améliorant ainsi les performances du GPT-4 d'un étonnant 30 %.
Les internautes ne peuvent s'empêcher de soupirer : la vitesse de développement de l'intelligence artificielle a dépassé notre capacité d'adaptation.
Introduction à la méthode
L'architecture globale de l'agent Reflexion est présentée dans la figure 1 ci-dessous, où Reflexion utilise ReAct (Yao et al., 2023). Dans le premier essai, l'agent se voit confier une tâche de l'environnement qui constitue la requête initiale, puis l'agent exécute une séquence d'actions générée par le LLM et reçoit des observations et des récompenses de l'environnement. Pour les environnements offrant des récompenses descriptives ou continues, l’étude limite les résultats à de simples états de réussite binaires pour garantir l’applicabilité.
Après chaque action a_t, l'agent calcule une fonction heuristique h, comme le montre la figure ci-dessous
Cette fonction heuristique est conçue pour détecter l'illusion d'information (c'est-à-dire des informations fausses ou erronées) produite par l'agent Ou inefficace, et "indiquer" à l'agent quand il doit réfléchir (réflexion), où t est le pas de temps, s_t est l'état actuel, Ω représente le nombre de cycles d'action répétés, ε représente le nombre total maximum d'actions effectuées, [ a_o, o_0 , a_(t−1), o_(t−1)] représente l'historique de la trajectoire. répéter est une fonction simple qui détermine le nombre de fois qu'une boucle d'actions répétées produit le même résultat.
Si la fonction h indique à l'agent qu'il doit réfléchir, alors l'agent interroge le LLM pour refléter sa tâche actuelle, son historique de trajectoire et sa dernière récompense, puis l'agent réinitialise l'environnement et réessaye lors des essais suivants. Si la fonction h n'indique pas à l'agent qu'une réflexion est nécessaire, alors l'agent ajoute a_t et o_t à son historique de trajectoire et interroge le LLM pour l'action suivante.
Si l'heuristique h suggère une réflexion à l'étape de temps t, l'agent réfléchira en fonction de son état actuel s_t, de sa dernière récompense r_t, des actions et observations précédentes [a_0, o_0, , a_t, o_t] et du travail existant de. l'agent est stocké dans la mémoire, ce qui lance un processus de réflexion.
Le but de la réflexion est d'aider l'agent à corriger les « illusions » et les inefficacités par essais et erreurs. Le modèle utilisé pour la réflexion est un LLM qui utilise des trajectoires d'échec spécifiques et des exemples de réflexion idéaux pour inciter.
L'agent effectuera de manière itérative le processus de réflexion ci-dessus. Dans les expériences, l'étude a fixé le nombre de réflexions stockées dans la mémoire de l'agent à un maximum de 3 fois afin d'éviter que les requêtes ne dépassent les limites du LLM. L'exécution se terminera dans les situations suivantes :
- Dépasse le nombre maximum d'essais ;
- Ne parvient pas à améliorer les performances entre deux essais consécutifs ;
- Termine la tâche.
Expériences et résultats
AlfWorld propose six tâches différentes et plus de 3 000 environnements, qui nécessitent que l'agent comprenne la tâche cible, formule un plan séquentiel pour les sous-tâches et effectue des opérations dans un environnement donné.
L'étude a testé l'agent dans 134 environnements AlfWorld, avec des tâches telles que trouver des objets cachés (par exemple, trouver un couteau à fruits dans un tiroir), déplacer des objets (par exemple, déplacer un couteau vers une planche à découper) et utiliser d'autres objets pour manipuler. d'autres objets. Un objet (par exemple, des tomates dans le réfrigérateur).
Sans réflexion, la précision de l'agent est de 63 %, puis la réflexion est ajoutée à des fins de comparaison. Les résultats ont montré que l’agent était capable de gérer 97 % de l’environnement au cours de 12 essais et n’a réussi à résoudre que 4 tâches sur 134.
L'expérience suivante a été menée dans HotPotQA, qui est un ensemble de données basé sur Wikipédia et contient 113 000 paires de questions et réponses, principalement utilisées pour tester la capacité de l'agent à analyser le contenu et la raison.
Sur les 100 tests de paires de questions-réponses de HotpotQA, l'étude a comparé les agents de base et les agents basés sur Reflexion jusqu'à ce qu'ils ne parviennent pas à améliorer la précision au cours des essais successifs. Les résultats montrent que les performances de l'agent basique ne se sont pas améliorées. Lors du premier test, la précision de l'agent basique était de 34 % et celle de l'agent Reflexion était de 32 %. Cependant, après 7 tests, la performance de l'agent Reflexion était de 34 %. L'agent s'est considérablement amélioré. L'amélioration est proche de 30%, ce qui est bien meilleur que l'agent de base.
De même, GPT-4 avec Reflexion a également largement surpassé le GPT-4 classique lors du test de la capacité du modèle à écrire du code :
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Lors de la conversion des chaînes en objets dans vue.js, JSON.Parse () est préféré pour les chaînes JSON standard. Pour les chaînes JSON non standard, la chaîne peut être traitée en utilisant des expressions régulières et réduisez les méthodes en fonction du format ou du codé décodé par URL. Sélectionnez la méthode appropriée en fonction du format de chaîne et faites attention aux problèmes de sécurité et d'encodage pour éviter les bogues.

L'article présente le fonctionnement de la base de données MySQL. Tout d'abord, vous devez installer un client MySQL, tel que MySQLWorkBench ou le client de ligne de commande. 1. Utilisez la commande MySQL-UROot-P pour vous connecter au serveur et connecter avec le mot de passe du compte racine; 2. Utilisez Createdatabase pour créer une base de données et utilisez Sélectionner une base de données; 3. Utilisez CreateTable pour créer une table, définissez des champs et des types de données; 4. Utilisez InsertInto pour insérer des données, remettre en question les données, mettre à jour les données par mise à jour et supprimer les données par Supprimer. Ce n'est qu'en maîtrisant ces étapes, en apprenant à faire face à des problèmes courants et à l'optimisation des performances de la base de données que vous pouvez utiliser efficacement MySQL.

Il existe de nombreuses raisons pour lesquelles la startup MySQL échoue, et elle peut être diagnostiquée en vérifiant le journal des erreurs. Les causes courantes incluent les conflits de port (vérifier l'occupation du port et la configuration de modification), les problèmes d'autorisation (vérifier le service exécutant les autorisations des utilisateurs), les erreurs de fichier de configuration (vérifier les paramètres des paramètres), la corruption du répertoire de données (restaurer les données ou reconstruire l'espace de la table), les problèmes d'espace de la table InNODB (vérifier les fichiers IBDATA1), la défaillance du chargement du plug-in (vérification du journal des erreurs). Lors de la résolution de problèmes, vous devez les analyser en fonction du journal d'erreur, trouver la cause profonde du problème et développer l'habitude de sauvegarder régulièrement les données pour prévenir et résoudre des problèmes.

Afin de définir le délai d'expiration de Vue Axios, nous pouvons créer une instance AxiOS et spécifier l'option Timeout: dans les paramètres globaux: vue.prototype. $ Axios = axios.create ({timeout: 5000}); Dans une seule demande: ce. $ axios.get ('/ api / utilisateurs', {timeout: 10000}).

Résumé: Il existe les méthodes suivantes pour convertir les tableaux de chaîne Vue.js en tableaux d'objets: Méthode de base: utilisez la fonction de carte pour convenir à des données formatées régulières. Gameplay avancé: l'utilisation d'expressions régulières peut gérer des formats complexes, mais ils doivent être soigneusement écrits et considérés. Optimisation des performances: Considérant la grande quantité de données, des opérations asynchrones ou des bibliothèques efficaces de traitement des données peuvent être utilisées. MEILLEUR PRATIQUE: Effacer le style de code, utilisez des noms de variables significatifs et des commentaires pour garder le code concis.

Traiter efficacement 7 millions d'enregistrements et créer des cartes interactives avec la technologie géospatiale. Cet article explore comment traiter efficacement plus de 7 millions d'enregistrements en utilisant Laravel et MySQL et les convertir en visualisations de cartes interactives. Exigences initiales du projet de défi: extraire des informations précieuses en utilisant 7 millions d'enregistrements dans la base de données MySQL. Beaucoup de gens considèrent d'abord les langages de programmation, mais ignorent la base de données elle-même: peut-il répondre aux besoins? La migration des données ou l'ajustement structurel est-il requis? MySQL peut-il résister à une charge de données aussi importante? Analyse préliminaire: les filtres et les propriétés clés doivent être identifiés. Après analyse, il a été constaté que seuls quelques attributs étaient liés à la solution. Nous avons vérifié la faisabilité du filtre et établi certaines restrictions pour optimiser la recherche. Recherche de cartes basée sur la ville

L'optimisation des performances MySQL doit commencer à partir de trois aspects: configuration d'installation, indexation et optimisation des requêtes, surveillance et réglage. 1. Après l'installation, vous devez ajuster le fichier my.cnf en fonction de la configuration du serveur, tel que le paramètre innodb_buffer_pool_size, et fermer query_cache_size; 2. Créez un index approprié pour éviter les index excessifs et optimiser les instructions de requête, telles que l'utilisation de la commande Explication pour analyser le plan d'exécution; 3. Utilisez le propre outil de surveillance de MySQL (ShowProcessList, Showstatus) pour surveiller la santé de la base de données, et sauvegarde régulièrement et organisez la base de données. Ce n'est qu'en optimisant en continu ces étapes que les performances de la base de données MySQL peuvent être améliorées.

Ingénieur backend à distance Emploi Vacant Société: Emplacement du cercle: Bureau à distance Type d'emploi: Salaire à temps plein: 130 000 $ - 140 000 $ Description du poste Participez à la recherche et au développement des applications mobiles Circle et des fonctionnalités publiques liées à l'API couvrant l'intégralité du cycle de vie de développement logiciel. Les principales responsabilités complètent indépendamment les travaux de développement basés sur RubyOnRails et collaborent avec l'équipe frontale React / Redux / Relay. Créez les fonctionnalités de base et les améliorations des applications Web et travaillez en étroite collaboration avec les concepteurs et le leadership tout au long du processus de conception fonctionnelle. Promouvoir les processus de développement positifs et hiérarchiser la vitesse d'itération. Nécessite plus de 6 ans de backend d'applications Web complexe
