Devin utilise un assistant de programmation IA autonome pour corriger le code problématique de la communauté open source.

Devin利用自主AI编程助手为开源社区修复问题代码

Nous annonçons aujourd'hui Devin Initiative Open Source.

 

Dans le cadre du lancement officiel de Devin, nous offrons un quota de 500 ACUs gratuits à des mainteneurs de projets open source sélectionnés. Visitez app.devin.ai dès aujourd'hui pour vous inscrire et contactez-nous à l'adresse osi@cognition.ai pour nous rejoindre.

Les projets open source ont souvent un grand nombre de problèmes non résolus. Devin est le partenaire idéal pour gérer ces tâches. En s'occupant des tâches mineures en arrière-plan, Devin aide les mainteneurs à se concentrer sur les tâches critiques.

 

Voici ce que Devin a déjà apporté à la communauté open source :

MCP anthropique

Demande d'extraction : https://github.com/modelcontextprotocol/inspector/pull/105

Session de Devin : https://app.devin.ai/sessions/266955553baf40cfa7fdd32d42ab219d

Dans ce projet, Devin travaille sur un projet pour MCP Projet d'interface de débogage du serveur inspector Ajout d'une nouvelle fonctionnalité qui montre la négociation des fonctions.

Question : https://github.com/modelcontextprotocol/inspector/issues/85

Devin利用自主AI编程助手为开源社区修复问题代码

Devin a commencé par utiliser un navigateur pour étudier le fonctionnement de la négociation des fonctionnalités : Devin利用自主AI编程助手为开源社区修复问题代码

Une fois que Devin a écrit le code, certaines fonctionnalités clés permettent d'assurer des tests appropriés :

  1. Paramètres du dépôt de codeAvant de démarrer une session Devin. Avant de démarrer une session Devin, nous avons facilité la tâche du serveur Python MCP en installant l'extension uv pour configurer la machine virtuelle de Devin.
  2. liés à la connaissance. Nous pouvons soit indiquer manuellement à Devin comment tester le code, soit ajouter ces informations à sa base de connaissances afin que Devin s'en souvienne automatiquement lors des prochaines sessions.
Devin利用自主AI编程助手为开源社区修复问题代码

Ce paramètre permet à Devin de vérifier que les changements de code sont valides dans le navigateur : Devin利用自主AI编程助手为开源社区修复问题代码

Une fois le code testé, le responsable peut le réviser. Devin利用自主AI编程助手为开源社区修复问题代码

Poignard.

Demande d'extraction : https://github.com/dagger/dagger/pull/9130

Session de Devin : https://app.devin.ai/sessions/2afcdb9847ff416382ee6126bc77ee8c

La RP de Devin concerne une tâche peu prioritaire du projet Dagger.

Devin利用自主AI编程助手为开源社区修复问题代码

Bien que Devin ait finalement réussi à résoudre le problème, il a parfois dû faire plusieurs allers-retours pour effectuer les ajustements nécessaires. Devin利用自主AI编程助手为开源社区修复问题代码

L'intégration de Devin à Github simplifie ce processus avec les commentaires PR et les vérifications CI. Tous les commentaires PR peuvent être automatiquement envoyés à Devin via Webhook. Devin利用自主AI编程助手为开源社区修复问题代码

Enfin, tirez le meilleur parti de Devin et n'attendez pas de 100% des RP parfaits. Bien que Devin puisse faire ce que 80% peut faire, il est toujours nécessaire de s'assurer manuellement de la qualité du résultat final. Par exemple, en supprimant les différences de code redondantes avant de les fusionner. Dans ce PR, Devin a ajouté des logs de débogage qui devront être supprimés manuellement plus tard.

 

En savoir plus sur la manière dont Devin apporte de la valeur à Dagger

Devin利用自主AI编程助手为开源社区修复问题代码

Pas quelqu'un qui travaille dans l'IA, mais un membre de l'équipe d'IA. C'est une expérience fascinante et un aperçu de ce qui est possible à l'avenir.

Chez Dagger, nous sommes une petite équipe qui construit un moteur complexe avec une liste croissante de scénarios d'utilisation. Comme beaucoup de projets open source, nous sommes confrontés au défi de maintenir la "longue traîne" des problèmes - les petites tâches qui sont importantes mais pas assez urgentes pour être prioritaires s'accumulent souvent. C'est ce qui me vient à l'esprit lorsque j'entends parler de Devin, un membre de l'équipe chargée de l'IA.

Un problème typique de l'open source

Voici une histoire familière : quelqu'un signale un problème qui n'est pas trop important - peut-être un peu ennuyeux mais pas urgent. Chez Dagger, nous sommes très concentrés sur l'excellence du produit, mais la liste des choses à faire était trop longue. Ce type de problème est enregistré, mais il n'est pas prioritaire et est mis de côté. Trois mois passent et personne n'a le temps de s'en occuper. Au mieux, il est classé rapidement ; au pire, il disparaît dans l'abîme des problèmes de GitHub.

Par exemple :Numéro #8195. Un contributeur a mis en évidence un point faible mais légitime de notre flux de travail. Sans Devin, ce problème aurait pu rester en suspens. Mais avec Devin dans l'équipe, nous avons demandé : "Pouvez-vous vous en occuper ?" Et c'est ce qui s'est passé.

Devin利用自主AI编程助手为开源社区修复问题代码

En quelques minutes, Devin a soumisUne demande d'extractionCe PR a nécessité une révision manuelle, mais son implémentation de base était fonctionnellement correcte dès le départ. Ce PR a nécessité une révision manuelle, mais son implémentation de base était fonctionnellement correcte dès le départ, et Devin a même suivi nos commentaires, itérant jusqu'à ce que le PR soit prêt à être fusionné.

Cela ressemble à une contribution solide d'un développeur débutant intelligent - un développeur qui est nouveau dans la base de code mais qui est désireux d'apprendre et de s'améliorer. C'est juste que Devin est une IA. La façon dont il travaille semble tout à fait naturelle.

Si vous êtes intéressé, vous pouvezRegarder la session complète. Vous verrez comment il résout les problèmes, s'adapte au retour d'information et produit des résultats significatifs.

Apprendre à Devin à développer Dagger

Devin est différent du développeur moyen, mais sa gestion est familière à certains égards ; Devin est très "intelligent", mais pas tout à fait "intelligent", comme certains développeurs juniors très intelligents. Pour que Devin soit utile, il faut à la fois choisir les bonnes tâches et le former de manière intelligente. L'une des choses les plus étonnantes à propos de Devin est la facilité avec laquelle il apprend.

Devin利用自主AI编程助手为开源社区修复问题代码 Nous donnons notre avis via l'application et directement sur GitHub, et Devin gère les deux de manière transparente.

Devin利用自主AI编程助手为开源社区修复问题代码 Nous avons ensuite franchi une étape supplémentaire : nous avons appris à Devin à utiliser le logiciel Dagger Développement Dagger Parce que nos environnements de construction et de test sont entièrement conteneurisés avec Dagger, Devin n'a pas du tout besoin de CI. Parce que nos environnements de construction et de test sont entièrement conteneurisés par Dagger, Devin n'a pas du tout besoin de CI ; il peut exécuter son propre CI localement, vérifier qu'il fonctionne et rapporter les résultats dans les commentaires. Lorsque les humains ont besoin de reproduire les résultats, nous utilisons simplement le même environnement conteneurisé que Devin a configuré !

Ce n'est pas seulement un gain de temps, c'est aussi un gain d'argent. Moment "Oh, mon Dieu". Il a révolutionné la façon dont nous concevons les flux de développement. La capacité de Devin à automatiser localement les tests, la validation et l'itération a changé notre façon de collaborer et préfigure l'avenir de DevOps.

Devin利用自主AI编程助手为开源社区修复问题代码

Si vous menez un projet open source qui nécessite beaucoup de maintenance, vous ne pouvez pas vous tromper avec Devin - ce n'est pas seulement un outil, c'est un nouveau type d'équipier, toujours prêt à s'attaquer à ces tâches "de longue haleine" dont vous ne pouvez pas vous préoccuper.

Devin ne remplace pas les développeurs. Il s'agit d'amplifier notre capacité à gérer les tâches répétitives et monotones, ce qui nous permet de nous concentrer sur ce qui compte le plus. Il s'agit d'un gain de productivité, d'une nouvelle perspective et d'un moyen de faire avancer les projets lorsque les ressources sont limitées.

Ce que cela signifie pour DevOps

La capacité de Devin à contribuer de manière autonome, à exécuter un processus d'intégration locale et à s'adapter au retour d'information humain est plus qu'une simple fonctionnalité sympathique - c'est un aperçu de l'avenir du développement de logiciels. Avec les bonnes protections en place, Devin peut apporter beaucoup de valeur ajoutée aujourd'hui ; mais à long terme, cette technologie pourrait changer fondamentalement la relation entre le développeur et l'outil, en nous permettant de créer et de fournir des logiciels d'une manière inimaginable jusqu'à présent.

 

Nous avons impliqué Devin dans la contribution à un certain nombre de dépôts de code source ouvert, y compris :

PRSession de Devin
karpathy/nanoGPT/pull/578lien (sur un site web)
modelcontextprotocol/inspector/pull/105lien (sur un site web)
run-llama/llama_index/pull/17201lien (sur un site web)
hyperliquid-dex/hyperliquid-rust-sdk/pull/68lien (sur un site web)
poignard/dague/tirer/9130lien (sur un site web)
modelcontextprotocol/inspector/pull/104lien (sur un site web)
modelcontextprotocol/servers/pull/256lien (sur un site web)
ekzhang/bore/pull/146lien (sur un site web)
colinhacks/zod/pull/3893lien (sur un site web)
google/go-github/pull/3369lien (sur un site web)

Nous sommes impatients de voir ce que Devin peut faire pour votre projet open source ! Visitez app.devin.ai dès aujourd'hui pour vous inscrire et vous enregistrer via osi@cognition.ai Contactez-nous pour un programme gratuit de quotas pour l'équipe !

© déclaration de droits d'auteur

Articles connexes

Pas de commentaires

Vous devez être connecté pour participer aux commentaires !
S'inscrire maintenant
aucun
Pas de commentaires...