L'année dernière, GitHub a publié Copilot, un aperçu de leur "programmeur de paires d'IA", un outil de type complétion de code qui fournit des recommandations de ligne ou de fonction dans votre IDE.
Il a sans aucun doute fait des vagues dans l'industrie de la programmation et au-delà, et vous en avez probablement entendu parler.
Copilot « comprend » des dizaines de langages et est désormais disponible pour Visual Studio Code et les systèmes pris en charge par un backend VS Code, tels que les Codespaces de GitHub.
L'aperçu technique est caractérisé comme "particulièrement bien pour Python, JavaScript, TypeScript, Ruby et Go".
Acceptez les idées de code par défaut, parcourez d'autres propositions, modifiez le code que vous acceptez ou rejetez complètement les suggestions Copilot à un endroit spécifique de votre code.
Copilot n'est actuellement disponible que sur demande autorisée. Mais ne vous inquiétez pas; des options de spécifications variées existent.
Dans cet article, nous examinerons en profondeur GitHub Copilot et les meilleures alternatives que vous pouvez utiliser immédiatement.
Donc qu'est-ce Copilote GitHub?
GitHub Copilot est un outil de complétion de code développé par OpenAI et GitHub. Il utilise le Codex d'OpenAI, un transformateur formé sur des milliards de lignes de code sur GitHub, pour générer du code basé sur le contenu du fichier actuel et l'emplacement de votre curseur.
Copilot prend en charge Python, JavaScript, TypeScript, Ruby et Go et fonctionne avec les éditeurs de code populaires tels que Visual Studio Code, Visual Studio, Neovim et les IDE JetBrains.
Copilot peut produire des lignes de code entières, des fonctions, des tests et de la documentation, selon GitHub et les commentaires des utilisateurs. Tout ce qu'il faut, c'est le contexte et l'effort des développeurs qui ont soumis leur code à GitHub, quelle que soit leur licence logicielle.
Lorsque le test Copilot s'est terminé, GitHub a mis les prix à la disposition des utilisateurs individuels. L'adhésion offrait un essai gratuit de 60 jours, après quoi il en coûterait 10 $ par mois ou 100 $ par an et par utilisateur.
Meilleures alternatives GitHub Copilot
1. Visual Studio IntelliCode
Outil Microsoft exclusivement accessible via Visual Studio, IntelliCode est une assistance expérimentale au codage de l'IA formée sur un échantillon de projets GitHub. Votre liste d'achèvement est hiérarchisée par IntelliCode afin que les éléments que vous êtes le plus susceptible d'utiliser soient au premier plan.
Des milliers de projets open source sur GitHub, chacun avec plus de 100 étoiles, servent de base aux suggestions d'IntelliCode. La liste d'achèvement est faite dans le but de promouvoir des pratiques standard lorsqu'elles sont jumelées au contexte de votre travail.
L'achèvement des équipes est l'une des capacités les plus séduisantes d'IntelliCode. Pour les entreprises dont l'architecture est basée sur Microsoft et pour les ingénieurs habitués à Visual Studio à l'ère du travail à distance, la réalisation en équipe pourrait être avantageuse.
IntelliCode fournit une assistance pour l'achèvement des déclarations et les signatures, ainsi que des suggestions pour les meilleurs arguments à utiliser. Dans Visual Studio 2022, IntelliCode est préinstallé avec toute tâche prenant en charge C#, C++, TypeScript/JavaScript ou XAML.
2. tabnine
Tabnine a été l'un des premiers programmes de complétion de code à arriver sur le marché (autrefois connu sous le nom de Codota). Dans vos IDE préférés, le plug-in de complétion de code Tabnine prend en charge tous les langages, bibliothèques et frameworks les plus populaires.
Les modèles Tabnine AI ne sont formés que sur du code sous licence open source permissif, garantissant que votre travail reste le vôtre.
L'adhésion à Tabnine Pro inclut la possibilité de former votre propre modèle d'IA privé en fonction de votre code et de recevoir des complétions de code personnalisées qui correspondent à votre style et à vos modèles.
Vous n'aurez pas à vous fier au code produit par quelqu'un d'autre que vous-même dans votre référentiel.
La possibilité d'héberger et de former vos propres modèles d'IA permet une auto-complétion collaborative entre les IDE pour les équipes et les organisations. Il améliore également la sécurité du code car vous pouvez maintenir la base de code et le modèle d'IA sur vos serveurs d'entreprise sécurisés.
De plus, Tabnine nécessite beaucoup moins de contexte que Copilot pour produire du code pour vous. En réalité, Tabnine fournit des idées médianes au fur et à mesure que vous tapez plutôt que des suggestions pour la ligne de code suivante après avoir terminé la précédente.
3. AiXcodeur
AiXcoder est un puissant moteur de complétion de code et de recherche qui utilise une technologie d'apprentissage en profondeur de pointe.
Il a la capacité de proposer toute une ligne de code, ce qui vous permettra de développer plus rapidement. AiXcoder dispose également d'un moteur de recherche de code qui peut vous aider à trouver des cas d'utilisation d'API sur GitHub.
AiXcoder fonctionne localement et en douceur en utilisant des algorithmes de pointe de compression de modèles d'apprentissage en profondeur. Une quantité substantielle de code open-source est utilisée pour entraîner les modèles.
Une fenêtre de recherche s'intègre facilement à l'IDE et vous permet de rechercher du code open-source sur GitHub.
L'apprentissage en profondeur est utilisé dans les résultats de recherche pour filtrer le code de haute qualité. Recherchez des exemples d'API et utilisez-les. Recherchez un code comparable pour éviter la duplication de code.
4. Boîte noire
Blackbox vous permet de choisir le code de n'importe quelle vidéo, puis de le copier dans votre éditeur de texte. Cela fonctionne comme par magie.
Il vous permet d'extraire le code de n'importe quelle vidéo, que vous regardiez des cours de codage sur YouTube, Coursera ou Udemy ou que vous travailliez avec votre équipe sur Zoom, Google Meet ou Teams.
Il est compatible avec tous langages de programmation et préserve l'indentation précise du code. Il n'est pas nécessaire de laisser votre environnement de codage afin de chercher une solution pour développer une certaine fonction.
Sans quitter votre environnement, ouvrir de nombreux onglets ou faire défiler des pages de documentation, Blackbox facilite l'identification de l'extrait de code correct.
De plus, il peut produire l'extrait de code que vous souhaitez dans n'importe quel langage de programmation. Entrez simplement votre question.
5. Amazon CodeWishperer
Amazon CodeWhisperer est un machine learning (ML) - un outil puissant qui augmente la productivité des développeurs en produisant des recommandations de code basées sur des commentaires en langage naturel et du code dans l'environnement de développement intégré (IDE).
Les développeurs peuvent employer de manière éthique intelligence artificielle (IA) pour construire des applications sûres et syntaxiquement précises. Générez des fonctions complètes et des morceaux de code logiques sans avoir à parcourir Internet pour rechercher et personnaliser des extraits de code.
Vous pouvez rester concentré et ne pas quitter l'IDE avec des recommandations de code personnalisées en temps réel pour les applications Java, Python ou JavaScript.
Amazon CodeWhisperer, piloté par l'apprentissage automatique (ML), aide les développeurs à augmenter leur productivité en produisant des recommandations de code basées sur leurs commentaires en langage naturel et le code dans l'environnement de développement intégré (IDE).
Les suggestions de code automatiques permettent aux développeurs d'accélérer le développement frontend et backend. CodeWhisperer peut créer du code pour créer et former des modèles ML.
6. Jedi
Jedi est un plugin pour les éditeurs et un IDE qui effectue une analyse statique sur le code Python. Jedi met l'accent sur les capacités d'auto-complétion et de goto, entre autres. La recherche de code, la refactorisation et la localisation des références sont d'autres fonctionnalités. Jedi fournit une API conviviale.
En tant que plugin VIM, une implémentation de référence est accessible. Vous pouvez faire compléter automatiquement votre REPL. Il est utilisé nativement par IPython.
De plus, il peut être installé pour CPython REPL. Compte tenu de ses tests approfondis, il devrait avoir quelques problèmes.
Un script sert de base aux complétions Jedi, aux gotos et à tout ce dont vous pourriez avoir besoin. Cette classe comprend également un interprète.
Cela fonctionne avec un dictionnaire réel ainsi qu'un REPL. Cette classe doit être utilisée lors de la modification de code dans un éditeur. La plupart des méthodes contiennent à la fois un paramètre de ligne et un paramètre de colonne.
Les lignes Jedi sont toujours basées sur un, tandis que les colonnes sont toujours basées sur zéro. Ils ne sont généralement pas documentés pour éviter les doublons.
7. Codega
Codiga est une plateforme qui permet aux développeurs d'écrire plus rapidement un meilleur code. Les développeurs peuvent utiliser Codiga Coding Assistant pour générer, distribuer et réutiliser des extraits de code directement depuis leur IDE.
Au lieu de perdre du temps à chercher, les développeurs peuvent rechercher du code réutilisable directement dans leur IDE. Codiga Code Analysis et Automated Cod Review peuvent découvrir instantanément les problèmes de codage dans chaque pull request ou push.
Codiga identifie les problèmes de sécurité, de vulnérabilité, de fonctions compliquées et de duplication de code. Il signale également les vulnérabilités CVE et CWE, ainsi que toutes les dépendances obsolètes.
Codiga s'intègre à GitHub, GitLab et Bitbucket et peut être configuré en quelques secondes. Il est compatible avec n'importe quel fournisseur CI/CD.
Il prend officiellement en charge GitHub Actions, Circle CI et AWS CodeBuild, et fournit des outils d'intégration avec des pipelines personnalisés. Codiga prend en charge plus de 2,000 12 règles et fonctionne dans plus de XNUMX langues.
8. JetBrains Datalore
C'est la meilleure plateforme pour Cahiers Jupyter. Dans les notebooks Jupyter, une aide au codage intelligente pour Python est accessible.
Vous pouvez exécuter du code sur des CPU ou des GPU puissants, travailler en temps réel avec des pairs, échanger les résultats et même les partager.
Un environnement de pré-configuration vous permet de vous mettre immédiatement au travail. À l'aide de puissants ordinateurs CPU et GPU, téléchargez des données sur un stockage permanent, évaluez-les et entraînez-vous modèles d'apprentissage automatique.
Des appareils puissants et des fonctionnalités illimitées seront avantageux pour les utilisateurs avancés scientifiques de données et analystes.
9. Capitaine Pile
Stackoverflow et les développeurs sont similaires à LinkedIn et aux professionnels des RH. Un plugin VSCode open-source appelé Captain Stack combine des éléments des deux.
Captain Stack est un outil de recommandation de code qui emprunte à Copilot mais utilise Google plutôt que l'IA.
La fonction de recommandation de code sur GitHub Copilot est assez comparable à celle-ci.
Cependant, il utilise Google pour transmettre votre requête de recherche, puis collecte les réponses de StackOverflow et Github Gist, puis les complète automatiquement pour vous. L'IA n'est pas utilisée dans ce processus.
10. Kite
Codez plus rapidement. Maintenez votre flux. Kite permet aux développeurs d'intégrer des complétions de code basées sur l'IA dans leur éditeur de code. Le cerf-volant peut être installé pour offrir des complétions de code alimentées par l'IA à tous vos éditeurs de code.
Kite prend en charge plus de 16 langues ainsi que 16 éditeurs de code. Vous remarquerez des complétions de code sensibles au contexte qui sont rapides comme l'éclair. Votre éditeur de code est un super-héros qui peut compléter des lignes multilignes plus rapidement que vous.
Affichage de la documentation Python en un seul clic. Des guides pratiques et des exemples sont également disponibles.
Recherchez dans votre base de code des fichiers qui pourraient être connectés à celui dans lequel vous écrivez actuellement. Cela augmentera la productivité de milliers de développeurs.
Conclusion
C'est assez cool de voir un outil propulsé par l'IA produire du code.
L'objectif de GitHub n'est pas de remplacer les programmeurs, mais de les aider à augmenter leur efficacité lors du développement, en particulier avec des tâches de codage répétitives telles que la production de docstrings appropriés dans des fonctions ou des classes..
Pour l'instant, Copilot est une technologie unique en son genre. Si tout ce dont vous avez besoin est un bon système de complétion d'IA, il existe plusieurs choix supplémentaires à considérer.
Espérons que ce petit éventail d'options vous guidera jusqu'à ce que Copilot soit distribué au public. Vous pourriez même découvrir que l'un d'entre eux est suffisamment bénéfique pour travailler pour vous à long terme.
Soyez sympa! Laissez un commentaire