


Le programmeur d'IA open source est là : bénédiction GPT-4, capacité comparable à Devin, 1,4k étoiles par jour
Pour en savoir plus sur l'AIGC, veuillez visiter :
Communauté 51CTO AI.x
https://www.51cto.com/aigc/
Récemment, de nombreuses personnes remplacent leur propre travail d'IA et s'inquiètent.
Devin, le "premier programmeur IA" devenu populaire dans le cercle de l'IA le mois dernier, maîtrise les compétences full-stack en utilisant des capacités de grands modèles. Il peut effectuer automatiquement des tâches de code complexes en n'exigeant que le langage naturel. instructions des humains.
Les capacités des outils démontrées par Devin sont très étonnantes, en particulier pour cette startup qui emprunte la voie du code source fermé. Actuellement, seules quelques personnes peuvent utiliser ce quota bêta fermé.
Mardi, des chercheurs du groupe NLP de l'Université de Princeton ont publié SWE-agent, un programmeur d'IA open source, qui a reçu des milliers d'étoiles GitHub en moins d'une journée. Cet agent SWE est basé sur une technologie d'apprentissage profond et peut écrire automatiquement du code efficace et fiable. Sa sortie a attiré une large attention et de nombreux développeurs ont exprimé une grande reconnaissance pour sa technologie et ses performances. Ces réalisations prouvent également l'avancement de la recherche sur l'IA dans le domaine de la PNL
SWE-agent est un nouveau système permettant de résoudre de manière autonome les problèmes dans les référentiels GitHub. Il a atteint une précision similaire à celle de Devin sur le banc SWE, en prenant en moyenne 93 secondes.
- Site Web du projet : https://swe-agent.com/
- GitHub : https://github.com/princeton-nlp/SWE-agent
Le John Yang, l'auteur du projet, a déclaré qu'une version pré-imprimée de l'article concerné serait également mise en ligne le 10 avril.
En principe, l'agent SWE peut corriger les bugs et les problèmes dans les véritables référentiels GitHub en transformant de grands modèles (tels que GPT-4) en agents d'ingénierie logicielle.
Sur l'ensemble complet de tests du banc SWE, l'agent SWE a résolu 12,29 % des problèmes, atteignant ainsi les performances SOTA.
Pour automatiser le processus de développement, l'agent SWE fonctionne en interagissant avec un terminal dédié, qui peut ouvrir, rechercher le contenu des fichiers, utiliser la vérification automatique de la syntaxe, modifier des lignes spécifiques et peut également écrire et exécuter des tests. .
Les développeurs de ce projet ont soigneusement conçu l'interface utilisateur et l'ont présentée sur GitHub.
Interface agent-ordinateur (ACI)
L'équipe de recherche a conçu un format simple de commande et de retour d'informations centré sur les grands modèles (LM) pour permettre aux grands modèles de parcourir plus facilement le référentiel, d'afficher, de modifier et d'exécuter le fichier de code, c'est ce qu'on appelle l'interface agent-ordinateur (ACI). L’équipe de recherche a également construit un référentiel d’agents SWE pour itérer facilement sur les conceptions ACI d’agents codés au niveau du référentiel.
Tout comme les modèles de langage nécessitent une bonne ingénierie rapide, une bonne conception ACI conduira à de meilleurs résultats lors de l'utilisation d'agents. L'agent de base sans ACI bien réglé est bien moins performant que l'agent SWE.
SWE-agent contient des fonctionnalités que l'équipe de recherche a trouvées très utiles lors de la conception de l'interface agent-ordinateur, notamment :
1 Ajoutez un linter qui s'exécute lorsqu'une commande d'édition est émise, si la syntaxe du code. est incorrect, la commande d'édition ne sera pas autorisée à passer.
2. Fournissez une visionneuse de fichiers spécialement conçue pour l'agent. L'équipe de recherche a constaté que cette visionneuse de fichiers fonctionne mieux lorsqu'elle affiche seulement 100 lignes par tour et que l'éditeur de fichiers dispose de commandes permettant de faire défiler le fichier vers le haut et vers le bas et d'effectuer des recherches dans le fichier.
3. Fournissez des commandes de recherche de chaîne à l'échelle du répertoire spécialement conçues pour les agents. L'équipe de recherche a trouvé important que l'outil répertorie les correspondances de manière succincte : il suffit de répertorier tous les fichiers qui ont au moins une correspondance. L'étude a montré que montrer au modèle plus de contexte sur chaque correspondance serait trop déroutant pour le modèle.
4. Lorsque le résultat de la commande est vide, renvoyez un message : "Votre commande s'est exécutée avec succès, mais n'a produit aucune sortie."
Les futurs articles publiés détailleront plus d’informations.
Installation et utilisation
Pour utiliser l'agent SWE, vous devez d'abord définir les conditions suivantes :
1 Installez Docker et démarrez Docker localement
2. fenvironment.yml crée l'environnement swe-agent
3. Utilisez conda activate swe-agent pour activer
4. 5. Créez un fichier keys.cfg dans le répertoire racine de ce référentiel et remplissez le contenu suivant :
OPENAI_API_KEY: 'OpenAI API Key Here if using OpenAI Model (optional)'ANTHROPIC_API_KEY: 'Anthropic API Key Here if using Anthropic Model (optional)'GITHUB_TOKEN: 'GitHub Token Here (required)'
Étape 1 : L'agent SWE reçoit le problème GitHub d'entrée et renvoie une pull request pour essayer de le résoudre
- Étape 2 : Évaluez la pull request pour vérifier qu'elle résout réellement le problème (actuellement disponible uniquement pour les problèmes du benchmark SWE-bench) .
- Si vous souhaitez exécuter et évaluer sur l'ensemble du banc SWE, le moyen le plus simple est d'utiliser une machine x86.
python run.py --model_name gpt4 \--data_path https://github.com/pvlib/pvlib-python/issues/1603 --config_file config/default_from_url.yaml
python run.py --model_name gpt4 \--per_instance_cost_limit 2.00 \--config_file ./config/default.yaml
python run.py --model_name gpt4 \--instance_filter marshmallow-code__marshmallow-1359
https://www.51cto.com/aigc/
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)

Vous pouvez passer à la source de miroir domestique. Les étapes sont les suivantes: 1. Modifiez le fichier de configuration /etc/docker/daemon.json et ajoutez l'adresse source miroir; 2. Après enregistrer et sortir, redémarrez le service Docker Sudo Systemctl Docker pour améliorer la vitesse et la stabilité du téléchargement d'image.

Étapes pour créer une image docker: écrivez un dockerfile qui contient les instructions de construction. Créez l'image dans le terminal, en utilisant la commande docker build. Marquez l'image et attribuez des noms et des balises à l'aide de la commande docker tag.

Comment utiliser Docker Desktop? Docker Desktop est un outil pour exécuter des conteneurs Docker sur les machines locales. Les étapes à utiliser incluent: 1. Installer Docker Desktop; 2. Démarrer Docker Desktop; 3. Créer une image Docker (à l'aide de DockerFile); 4. Build Docker Image (en utilisant Docker Build); 5. Exécuter Docker Container (à l'aide de Docker Run).

Pour enregistrer l'image dans Docker, vous pouvez utiliser la commande docker commit pour créer une nouvelle image, contenant l'état actuel du conteneur spécifié, Syntaxe: Docker Commit [Options] Nom d'image de l'ID de conteneur. Pour enregistrer l'image dans le référentiel, vous pouvez utiliser la commande docker push, Syntax: Docker Push Image Name [: Tag]. Pour importer des images enregistrées, vous pouvez utiliser la commande docker pull, syntaxe: docker pull name [: tag].

Les étapes pour mettre à jour une image Docker sont les suivantes: Tirez la dernière étiquette d'image Nouvelle image Supprimer l'ancienne image pour une balise spécifique (facultative) Redémarrez le conteneur (si nécessaire)

Docker LNMP Container Call Étapes: Exécutez le conteneur: docker run -d --name lnmp-container -p 80:80 -p 443: 443 lnmp-stack pour obtenir le conteneur ip: docker inspect lnmp-container | Site Web d'accès Grep iPadress: http: // & lt; contener ip & gt; /index.phpssh Access: docker exec -it lnmp-container bash access mysql: mysql -u roo

Vous pouvez créer des référentiels privés Docker pour stocker et gérer en toute sécurité les images de conteneurs, en fournissant un contrôle et une sécurité stricts. Les étapes incluent: la création d'un référentiel, l'accès, le déploiement d'un référentiel, la poussée d'une image et le tir d'une image. Les avantages incluent la sécurité, le contrôle des versions, la réduction du trafic réseau et la personnalisation.

Comment exécuter les commandes Docker? Installez Docker et démarrez le démon. Commandes docker communes: Docker Images: Afficher l'image docker PS: afficher le conteneur Docker Exécuter: Exécuter le conteneur Docker Stop: Stop Container Docker RM: Delete Container Interagissez avec Container à l'aide de Docker Commande: Docker Exec: Exécuter Commande Docker Docker: Attacher les journaux Docker Console: Afficher le journal Dock
