IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)

Vous êtes nouveau sur Developpez.com ? Créez votre compte ou connectez-vous afin de pouvoir participer !

Vous devez avoir un compte Developpez.com et être connecté pour pouvoir participer aux discussions.

Vous n'avez pas encore de compte Developpez.com ? Créez-en un en quelques instants, c'est entièrement gratuit !

Si vous disposez déjà d'un compte et qu'il est bien activé, connectez-vous à l'aide du formulaire ci-dessous.

Identifiez-vous
Identifiant
Mot de passe
Mot de passe oublié ?
Créer un compte

L'inscription est gratuite et ne vous prendra que quelques instants !

Je m'inscris !

GitHub Copilot, l'assistant de programmation basé sur l'IA, sous le feu des critiques,
Un développeur affirme qu'il émet de nombreux bouts de son code protégé par le droit d'auteur

Le , par Bruno

5PARTAGES

9  0 
Le développeur Tim Davis, professeur d'informatique et d'ingénierie à l'université A&M du Texas, a affirmé sur Twitter que GitHub Copilot, un assistant de programmation basé sur l'IA, « émet de gros morceaux de mon code protégé par le droit d'auteur, sans attribution, sans licence LGPC ».

Pas du tout, selon Alex Graveley, ingénieur principal chez GitHub et inventeur de Copilot, qui a répondu que « le code en question est différent de l'exemple donné. Semblable, mais différent ». Cela dit, a-t-il ajouté, « c'est vraiment un problème difficile. Les solutions évolutives sont les bienvenues. »


GitHub Copilot est un assistant de programmation basé sur l'IA, il offre des suggestions de type autocomplétion pendant que vous codez. Vous pouvez recevoir des suggestions de GitHub Copilot soit en commençant à écrire le code que vous voulez utiliser, soit en écrivant un commentaire en langage naturel décrivant ce que vous voulez que le code fasse. GitHub Copilot analyse le contexte du fichier que vous êtes en train de modifier, ainsi que les fichiers connexes, et vous propose des suggestions à partir de votre éditeur de texte.

GitHub Copilot est optimisé pour du Python, JavaScript, TypeScript, Ruby, Go, C# ou C++. Il est également possible d’utiliser GitHub Copilot pour générer des suggestions dans d'autres langages et une grande variété de frameworks. GitHub Copilot est alimenté par OpenAI Codex, un nouveau système d'IA créé par OpenAI.
Il est disponible en tant qu'extension dans Visual Studio Code, Visual Studio, Neovim et la suite d'IDEs JetBrains.

Le code que Davis a posté semble effectivement très proche. Il a tapé le commentaire : //transposition de matrice éparse

dans un fichier C++ et la suggestion principale de Copilot, générée en réponse, comporte non seulement du code mais aussi des commentaires qui correspondent étroitement à son propre code précédent, comme par exemple :

“/* place A(I,j) as entry C(j,i) */

Le développeur Tim Davis a publié cette image sur Twitter, montrant son commentaire dans Visual Studio Code, son code original provenant d'un autre projet en dessous, et la suggestion de Copilot à droite.


Il est important de noter que le code original en question est lui-même open source et se trouve sur GitHub sous la licence LGPL 2.1. Cependant, open source ne signifie pas absence de droits d'auteur, et il existe de nombreuses licences open source différentes, chacune d'entre elles donnant des autorisations différentes. L'une des préoccupations de la communauté open source est que si des morceaux de code open source sont régurgités en gros, sans spécifier de licence, cela va à l'encontre de l'objectif de la licence.

Une autre préoccupation est que les développeurs peuvent par inadvertance combiner du code avec des licences incompatibles dans un même projet. « Le blanchiment illégal de code source, automatisé par GitHub », affirme Jeremy Soller, ingénieur principal chez System 76, qui abrite la distribution Linux pop!_os. « Vous pouvez littéralement trouver un morceau de code que vous voulez, sous une licence incompatible, puis continuer à sonder copilote jusqu'à ce qu'il le reproduise. Avec un déni plausible par la suite (Copilot m'a _donné_ ce code) ! » a-t-il ajouté.

Copilot anticipe ce problème dans une certaine mesure. Il existe un filtre de code public décrit ici qui prétend « détecter les suggestions de code correspondant au code public sur GitHub ... lorsque le filtre est activé, GitHub Copilot vérifie les suggestions de code avec leur code environnant d'environ 150 caractères par rapport au code public sur GitHub. S'il y a une correspondance ou une quasi-correspondance, la suggestion ne vous sera pas montrée ».

Toutefois, Davis précise que « lorsque je me suis inscrit, j'ai désactivé l'option » Autoriser Github à utiliser mon code... « . Notez également que "les suggestions correspondant au code public sont bloquées". Même résultat ». Une partie du problème est que le code open source, de par sa conception, est susceptible d'apparaître dans plusieurs projets de différentes personnes, il finira donc plusieurs fois sur GitHub et parmi plusieurs utilisateurs de Copilot. Avec ou sans Copilot, les développeurs peuvent faire un usage illicite du code protégé par le droit d'auteur.

La FAQ de Copilot n'est pas tout à fait claire sur le sujet. Elle indique : « Le code que vous écrivez avec l'aide de GitHub Copilot vous appartient, et vous en êtes responsable", et aussi que "la grande majorité du code que GitHub Copilot suggère n'a jamais été vu auparavant. » Cependant, il est également indiqué qu'« environ 1 % du temps, une suggestion peut contenir quelques extraits de code de plus de ~150 caractères qui correspondent à l'ensemble d'entraînement. »

Une autre entrée de la FAQ indique que « Vous devez prendre les mêmes précautions que pour tout code que vous écrivez et qui utilise du matériel dont vous n'êtes pas l'auteur indépendant. Il s'agit notamment de procéder à des tests rigoureux, d'effectuer un balayage IP et de vérifier les vulnérabilités de sécurité. » Les développeurs peuvent se demander : s'agit-il d'une IA qui génère du code, ou d'une IA qui recherche sur le web un code open source qui pourrait convenir ?

GitHub Copilot propose des suggestions via un modèle qu'OpenAI a construit à partir de milliards de lignes de code open source. Par conséquent, l'ensemble des connaissances acquises par GitHub Copilot peut contenir des modèles de codage non sécurisés, des bogues ou des références à des API ou des idiomes obsolètes. Lorsque GitHub Copilot produit des suggestions basées sur ces données de formation, ces suggestions peuvent également contenir des modèles indésirables.

Il incombe au programmeur de garantir la sécurité et la qualité de son code. Il est recommandé de prendre les mêmes précautions lorsqu’on utilise le code généré par GitHub pilot que lorsqu’on utilise un code écrit par quelqu’un d’autre. Ces précautions comprennent des tests rigoureux, un balayage IP et un suivi des vulnérabilités de sécurité.

GitHub fournit un certain nombre de fonctionnalités pour aider à surveiller et à améliorer la qualité du code, comme GitHub Actions, Dependabot, CodeQL et l'analyse du code. Toutes ces fonctionnalités sont gratuites et peuvent être utilisées dans les dépôts publics. GitHub Copilot utilise des filtres pour bloquer les mots offensants dans les invites. « Nous nous engageons à améliorer constamment le système de filtres afin de détecter et de supprimer plus intelligemment les suggestions offensantes générées par GitHub Copilot, notamment les sorties tendancieuses, discriminatoires ou abusives », écrit GitHub.

GitHub Copilot est une fonctionnalité payante, nécessitant un abonnement mensuel ou annuel. Les étudiants, enseignants et responsables vérifiés de projets open source populaires sur GitHub peuvent utiliser GitHub Copilot gratuitement.

Source : Tim Davis on Twitter

Et vous ?

Quel est votre avis sur le sujet ?

Trouvez-vous la plainte du professeur d'informatique, Tim Davis, contre GitHub Copilot fondée ?

Voir aussi :

Copilot, l'outil d'IA commercial de GitHub, est critiqué par la communauté du logiciel open source, pour sa reproduction aveugle des blocs de code

Microsoft crée un autocompléteur de code à l'aide de GPT-3, le système de génération de texte d'OpenAI, pour combler le manque de développeurs dans le monde

Open AI présente DALL-E (comme GPT-3), un modèle qui crée des images à partir de texte, pour un large éventail de concepts exprimables en langage naturel

OpenAI a publié l'IA de génération de texte qu'il disait trop dangereuse pour être divulguée, mais le modèle n'est pas encore parfait

Une erreur dans cette actualité ? Signalez-nous-la !

Avatar de Se7h22
Membre confirmé https://www.developpez.com
Le 19/10/2022 à 1:11
Comme quoi, avoir fait des commentaires inutiles et de manière dégueulasse en bout de ligne aura finalement servi à quelque chose 👀
2  0