Voir le flux RSS

Blog de Hinault Romaric (.NET Core, ASP.NET Core, Azure, DevOps)

[Actualité] IntelliCode : quand l’intelligence artificielle s’invite dans Visual Studio

Noter ce billet
par , 16/05/2019 à 22h29 (559 Affichages)
L'intelligence artificielle devient de plus en plus présente dans notre quotidien, avec pour objectif de nous simplifier la vie. C'est au tour de Visual Studio et Visual Studio Code de bénéficier de l'intelligence artificielle pour améliorer la productivité des développeurs avec Visual Studio IntelliCode.

Il s'agit d'une nouveauté disponible sous forme d'une extension pour Visual Studio 2019, Visual Studio 2017 et Visual Studio Code. Elle permet aux développeurs d'être assistés par l'intelligence artificielle pendant l'écriture du code. Ceux-ci peuvent donc écrire du code en toute confiance, détecter les problèmes plus rapidement et procéder à des révisions ciblées.

Selon Microsoft, IntelliCode vous fait gagner du temps en plaçant ce que vous êtes le plus susceptible d'utiliser en tête de votre liste de saisie semi-automatique. Les suggestions IntelliCode reposent sur des centaines de projets open source sur GitHub, chacun avec plus de 100 étoiles. Combinée avec le contexte de votre code, la liste de saisie semi-automatique est adaptée pour promouvoir les pratiques courantes.

IntelliCode n'est pas limité à la saisie semi-automatique des instructions. L'aide sur les signatures recommande également la surcharge la plus probable pour votre contexte.


Pour les utilisateurs de C#, en plus de fournir des suggestions de membres, IntelliCode fournit également la complétion des arguments. Cette fonctionnalité, qui est actuellement en préversion, marque d'une étoile les noms des arguments les plus probables que vous allez utiliser quand vous appelez une méthode, et place ces suggestions en haut de la liste des complétions. La liste des complétions apparaît quand vous commencez à taper dans les parenthèses ou que vous appuyez sur Ctrl+Barre d'espace.

IntelliCode supporte les langages C#, C++, Java, Python, XAML, JavaScript/TypeScript. Plusieurs fonctionnalités sont encore au stade de préversion.

Inférence du style du code

Pour le langage C#, IntelliCode peut inférer vos conventions de style et de mise en forme du code pour créer dynamiquement un fichier EditorConfig. Les fichiers EditorConfig aident à assurer la cohérence du code en définissant des styles et des mises en forme de code. Ces conventions permettent à Visual Studio d'offrir des correctifs de format et de style automatiques pour nettoyer votre document.

Le fichier EditorConfig peut être ajouté au niveau d'un projet ou d'une solution dans Visual Studio (Clic droit sur le projet ou la solution dans Visual Studio, puis sur Ajouter et ensuite sur Nouvel EditorConfig.)


Une fois le fichier ajouter, IntelliCode le remplit automatiquement avec les conventions de style de code qu'il infère de votre code base.

Modèles personnalisés pour C#

Pour les développeurs utilisant C#, les modèles personnalisés sont offerts par IntelliCode. Ils permettent d'obtenir des recommandations d'IntelliSense assisté par IA basées sur votre code C#. Les modèles personnalisés sont utiles si vous utilisez du code comme des bibliothèques de classes de base et d'utilitaires internes, ou comme des bibliothèques spécifiques à un domaine, qui ne sont pas couramment utilisées dans du code open source.

En effet, les recommandations du modèle de base d'IntelliCode sont basées uniquement sur les modèles appris à partir de dépôts GitHub open source. Si vous utilisez du code qui n'est pas dans cet ensemble de dépôts, ces recommandations ne sont pas aussi utiles pour vous. Pour les utilisateurs de C#, IntelliCode peut apprendre des modèles à partir de votre code pour faire des recommandations concernant des éléments qui ne sont pas dans le domaine open source.

Toutefois, il est de votre responsabilité de créer et d'entraîner votre modèle personnalisé. Une interface graphique est offerte dans Visual Studio pour permettre de créer et entraîner votre modèle dans le Cloud. Concrètement, les caractéristiques du code seront extraites de votre solution et seront transmises via HTTPS au service IntelliCode. Le service utilise ensuite des algorithmes de machine learning pour entraîner un modèle pour votre code. Il retourne le modèle à votre ordinateur, où il est fusionné avec le modèle de base. Plus les données extraites de votre solution seront nombreuses, plus la précision de votre modèle sera élevée.


Partage de modèles personnalisés

IntelliCode a une fonctionnalité de partage de modèle qui vous permet de partager n'importe quel modèle que vous avez créé avec des personnes à qui vous fournissez un lien vers un modèle. De plus, les utilisateurs qui ont accès au modèle partagé reçoivent automatiquement les dernières mises à jour quand vous entraînez de nouveau le modèle.

Pour intégrer un modèle partagé, il suffit juste de saisir le lien dans la fenêtre Ajouter un modèle à partir de l'interface de gestion des modèles personnalisés d'IntelliCode.


Cette fonctionnalité, bien qu'intéressante, apporte des interrogations sur la confidentialité, vu que des données de votre solution sont extraites et envoyées dans le Cloud de Microsoft. Toutefois, la firme rassure que le transfert est sécurisé via HTTPS et que seuls les éléments nécessaires à la création d'un modèle sont extraits.

Envoyer le billet « IntelliCode : quand l’intelligence artificielle s’invite dans Visual Studio » dans le blog Viadeo Envoyer le billet « IntelliCode : quand l’intelligence artificielle s’invite dans Visual Studio » dans le blog Twitter Envoyer le billet « IntelliCode : quand l’intelligence artificielle s’invite dans Visual Studio » dans le blog Google Envoyer le billet « IntelliCode : quand l’intelligence artificielle s’invite dans Visual Studio » dans le blog Facebook Envoyer le billet « IntelliCode : quand l’intelligence artificielle s’invite dans Visual Studio » dans le blog Digg Envoyer le billet « IntelliCode : quand l’intelligence artificielle s’invite dans Visual Studio » dans le blog Delicious Envoyer le billet « IntelliCode : quand l’intelligence artificielle s’invite dans Visual Studio » dans le blog MySpace Envoyer le billet « IntelliCode : quand l’intelligence artificielle s’invite dans Visual Studio » dans le blog Yahoo

Mis à jour 17/05/2019 à 02h30 par Malick

Catégories
DotNET , Visual Studio

Commentaires

  1. Avatar de air-dex
    • |
    • permalink
    Une bonne chose si ça reste dans son coin. Au fond ça reste de la suggestion et point trop n'en faut sinon c'est désastreux pour l'expérience utilisateur. Le plus important c'est ce que je veux maintenant, pas ce qui pourrait m'intéresser plus tard. Donc des suggestions oui, mais qu'elles ne soient pas envahissantes au point de me rendre plus difficile l'accès à ce que je désire effectivement. Il est essentiel de ne pas oublier qu'aussi intelligent l'outil puisse être, je suis celui qui est le mieux placé pour savoir ce que je veux.