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

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Logiciels Libres & Open Source Discussion :

GitHub Copilot, l’assistant de programmation basé sur l'IA, sous le feu des critiques


Sujet :

Logiciels Libres & Open Source

  1. #1
    Chroniqueur Actualités
    Avatar de Bruno
    Homme Profil pro
    Rédacteur technique
    Inscrit en
    Mai 2019
    Messages
    1 846
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Rédacteur technique
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Mai 2019
    Messages : 1 846
    Points : 36 289
    Points
    36 289
    Par défaut GitHub Copilot, l’assistant de programmation basé sur l'IA, sous le feu des critiques
    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 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. »

    Nom : Tim Davis.jpg
Affichages : 2650
Taille : 37,4 Ko

    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) */

    Nom : copilot2.jpg
Affichages : 2246
Taille : 132,1 Ko
    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
    Images attachées Images attachées  
    Contribuez au club : corrections, suggestions, critiques, ... Contactez le service news et Rédigez des actualités

  2. #2
    Membre confirmé Avatar de Se7h22
    Homme Profil pro
    Développeur Web
    Inscrit en
    Août 2010
    Messages
    155
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Août 2010
    Messages : 155
    Points : 467
    Points
    467
    Par défaut
    Comme quoi, avoir fait des commentaires inutiles et de manière dégueulasse en bout de ligne aura finalement servi à quelque chose 👀

Discussions similaires

  1. Réponses: 4
    Dernier message: 18/07/2019, 14h08
  2. programme basé sur deux fichiers - gfortran
    Par oodbae_adriano dans le forum Fortran
    Réponses: 2
    Dernier message: 11/10/2012, 23h59
  3. Crash du programme basé sur le tuto
    Par Demystificator dans le forum Ogre
    Réponses: 5
    Dernier message: 25/03/2010, 10h58
  4. Créer un programme indépendant basé sur Access
    Par GCAccess dans le forum Access
    Réponses: 7
    Dernier message: 18/09/2008, 11h59

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo