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 !

Annonces et mises à jour de .NET à la Microsoft Build 2024 : intégration profonde de l'IA, simplification du développement-natif avec .Net Aspire
Ainsi que des améliorations des fonctionnalités C# pour C# 13

Le , par Jade Emy

364PARTAGES

7  0 
Lors de la Microsoft Build 2024, Microsoft a dévoilé un nouvel ensemble de fonctionnalités et d'outils conçus pour rendre le développement .NET plus rapide et plus facile.

Voici un aperçu des mises à jour et annonces :

  • Intelligence artificielle : Des scénarios de bout en bout pour construire des applications basées sur l'IA, l'adoption de l'écosystème de l'IA et l'intégration profonde avec les services cloud.
  • .NET Aspire : pour la création d'applications distribuées cloud-natives.
  • C# 13 : Améliorations des fonctionnalités C# les plus appréciées afin de les rendre encore meilleures pour vous.
  • Performance : Réduction de la mémoire et du temps d'exécution à l'aide de points de référence critiques.
  • Améliorations apportées aux bibliothèques et frameworks .NET, notamment ASP.NET Core, Blazor, .NET MAUI, et bien plus encore.




.NET et l'intelligence artificielle

.NET fournit des outils pour créer des applications puissantes avec l'IA. Vous pouvez utiliser le noyau sémantique pour orchestrer des plugins d'IA, ce qui vous permet d'intégrer de manière transparente des fonctionnalités d'IA dans vos applications.

Vous pouvez utiliser des bibliothèques de pointe comme OpenAI, Qdrant et Milvus pour améliorer la fonctionnalité de vos applications. Vous pouvez également déployer vos applications dans le cloud avec .NET Aspire, ce qui garantit des performances et une évolutivité optimales.


Principes fondamentaux de l'IA

Microsoft introduit un nouveau type Tensor<T>. Les tenseurs sont des composants fondamentaux de nombreux modèles mathématiques, y compris les algorithmes d'apprentissage profond. Il s'agit de tableaux multidimensionnels qui contiennent des poids, des biais et des calculs intermédiaires au sein des réseaux neuronaux.

Cela permet un traitement efficace des données et un flux d'informations à des fins d'apprentissage et de prédiction. Qu'il s'agisse de reconnaissance d'images, de compréhension du langage ou de prévision des tendances, les tenseurs jouent un rôle crucial dans toutes les facettes de l'IA.

En outre, ils facilitent le partage des données entre des bibliothèques telles que ONNX Runtime, TorchSharp ou ML.NET, la création de vos propres bibliothèques mathématiques ou le développement d'applications utilisant des modèles d'IA. La performance est essentielle et on obtient des efficacités supplémentaires en construisant sur les TensorPrimitives, qui utilisent les instructions SIMD pour optimiser le débit.

Commencez rapidement à créer des applications d'IA

Le monde de l'IA évolue rapidement, et Microsoft souhaite que les développeurs puissent commencer rapidement avec un minimum de changements dans leur code.

Microsoft déclare :

Essayez nos nouveaux échantillons de démarrage rapide de l'IA pour voir comment vous pouvez commencer à utiliser des frameworks LLM comme Semantic Kernel pour accéder rapidement à l'écosystème de l'IA. Semantic Kernel permet aux développeurs d'exploiter différents modèles, de se connecter à des magasins de vecteurs et de simplifier leur processus d'invite avec des modèles.

En plus de nos échantillons, nous avons développé des Smart Components, des contrôles préconstruits avec des fonctionnalités d'IA de bout en bout, conçus spécifiquement pour Blazor et MVC / Razor. Ces composants peuvent être intégrés à vos applications existantes en quelques minutes pour leur insuffler des capacités d'IA.

Avec les Smart Components, les équipes peuvent gagner un temps de développement considérable et éviter la nécessité d'une conception UX étendue ou d'une recherche approfondie sur l'apprentissage automatique et l'ingénierie rapide. Actuellement, nous disposons de trois composants intelligents que vous pouvez intégrer, à savoir : SmartPasteButton, SmartTechnology et SmartPasteButton : SmartPasteButton, SmartTextArea et SmartComboBox.

Voici un exemple d'ajout d'un bouton SmartPasteButton qui prend un texte copié dans le presse-papiers et remplit automatiquement les contrôles InputText à l'aide d'AI :

Code : Sélectionner tout
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
@page "/" 
@using SmartComponents 
 
<form> 
    <p>Name: <InputText @bind-Value="@name" /></p> 
    <p>Address line 1: <InputText @bind-Value="@addr1" /></p> 
    <p>City: <InputText @bind-Value="@city" /></p> 
    <p>Zip/postal code: <InputText @bind-Value="@zip" /></p> 
 
    <button type="submit">Submit</button> 
    <SmartPasteButton DefaultIcon /> 
</form> 
 
@code { 
    string? name, addr1, city, zip; 
}


Élargissement de l'écosystème IA avec .NET

Microsoft annonce avoir collaboré avec de nombreux partenaires de l'industrie pour permettre aux développeurs d'exploiter l'écosystème de l'IA.

Microsoft :

L'une de nos collaborations les plus intéressantes cette année a été celle avec OpenAI. Nous nous sommes associés à eux pour fournir une bibliothèque .NET officielle, qui devrait être publiée dans le courant du mois. Cette collaboration et ce nouveau SDK garantissent aux développeurs .NET une expérience agréable et une parité avec les bibliothèques d'autres langages de programmation que vous connaissez peut-être. Il prend également en charge les dernières fonctionnalités et modèles OpenAI, tels que GPT4o et Assistants v2, et offre une expérience unifiée entre OpenAI et Azure OpenAI.

Nos partenariats ne s'arrêtent pas là. L'année dernière, nous avons annoncé des clients C# officiels avec Qdrant et Milivus. Nos efforts de collaboration se poursuivent avec des partenaires comme Weavite pour offrir aux développeurs une variété d'options de bases de données vectorielles .NET.

Enfin, nous avons travaillé avec des équipes de Microsoft, notamment Semantic Kernel, Azure SQL et Azure AI Search, afin de garantir que nos développeurs puissent bénéficier d'une expérience native transparente avec leurs capacités d'IA.

Investissements d'avenir : Surveillance et observation de vos applications LLM.

Les applications de grand modèle de langage (LLM) nécessitent des résultats fiables, performants et de haute qualité. Les développeurs doivent mesurer et suivre les résultats et les comportements de leurs applications LLM dans les environnements de développement et de production, et identifier et résoudre les problèmes.

L'équipe .Net de Microsoft travaille sur la manière dont les développeurs peuvent utiliser .NET Aspire, Semantic Kernel et Azure pour surveiller leurs applications d'IA. Ces fonctionnalités sont en cours de prévisualisation.

Les images suivantes montrent comment vous pouvez utiliser .NET Aspire avec un code minimal pour collecter des métriques détaillées et des données de traçage à partir de Semantic Kernel, telles que le modèle, le nombre de jetons, l'invite et la réponse générée, en suivant la convention standard OpenTelemetry pour les LLM qui est actuellement en cours de conception.

De plus, la collecte de ces données télémétriques avec Semantic Kernel devrait être simple, avec seulement quelques lignes de code :

Code : Sélectionner tout
1
2
3
4
5
6
7
// Enable the draft OpenTelemetry LLM data to be collected 
AppContext.SetSwitch("Microsoft.SemanticKernel.Experimental.GenAI.EnableOTelDiagnosticsSensitive", true); 
 
// Export the data 
builder.Services.AddOpenTelemetry() 
   .WithMetrics(m => m.AddMeter("Microsoft.SemanticKernel*")) 
   .WithTracing(t => t.AddSource("Microsoft.SemanticKernel*"));
Microsoft veut faire de .NET une plateforme spectaculaire pour construire et intégrer l'IA dans vos apps et travailler de manière transparente avec les bibliothèques de l'écosystème de l'IA et avec des frameworks étonnants, notamment ASP.NET Core et .NET Aspire, pour construire des apps cloud-natives.

Développement cloud-natif avec .NET

En utilisant .NET, vous pouvez créer des applications cloud-natives sécurisées, efficaces, résilientes, observables et configurables. Microsoft annonce avoir amélioré le développement d'apps cloud-natives avec la version reach en proposant :

  • Des conteneurs ciselés : Réduction de la taille des images de conteneurs .NET
  • NativeAOT & Trimming : Réduction de la taille de l'application tout en améliorant le temps de démarrage de l'application
  • De nouvelles fonctionnalités et bibliothèques pour ASP.NET Core afin de rationaliser les scénarios cloud-native.
  • Performance : Exploiter chaque goutte de performance dans tous les frameworks et bibliothèques.


.NET Aspire : Simplifier le développement cloud-natif

.NET Aspire est une nouvelle pile qui simplifie le développement d'applications et de services cloud-natifs .NET. .NET Aspire est désormais disponible pour tous.

https://youtu.be/fYqnWmhR-HU

.NET Aspire permet de créer des applications distribuées, y compris l'orchestration de projets, des composants à intégrer avec des services et des plates-formes de premier plan, la découverte de services, les valeurs par défaut des services, et bien plus encore.

L'un des points forts de .NET Aspire est le tableau de bord, qui offre une vue consolidée des ressources de vos applications, avec des journaux, des traces distribuées et des mesures. Qu'il soit exécuté dans la boucle interne du développeur local ou déployé dans le cloud, le tableau de bord offre une vue en temps réel, centrée sur le développeur, de ce que fait votre application à l'instant même.

Les développeurs doivent déployer des applications distribuées tout au long de leur processus de développement pour effectuer des tests rapides et doivent être en mesure de les déployer facilement en production le moment venu. .NET Aspire est là pour vous aider avec de puissantes fonctionnalités pour amener vos applications dans le cloud, avec la prise en charge du provisionnement et de la connexion aux services cloud dans Azure et AWS pendant le développement et le déploiement d'applications vers Azure Container Apps à l'aide de l'interface CLI du développeur Azure, ou Kubernetes avec Aspirate.


.NET est natif pour Linux

.NET est multiplateforme. Microsoft se donne pour mission de veiller à ce que .NET fonctionne de manière spectaculaire partout où les développeurs créent des applications. Ils ont beaucoup investi dans l'amélioration des flux de travail des développeurs et de la production pour les applications fonctionnant sous Linux.

Microsoft :

Nous travaillons avec Canonical, Red Hat et d'autres mainteneurs pour nous assurer que les paquets .NET sont disponibles à l'installation à partir des flux officiels et mis à jour pour les correctifs de sécurité selon le même calendrier que Microsoft.

Les conteneurs sont le moyen le plus populaire de déployer des apps cloud-natives. Plus le conteneur est petit, plus les nouveaux nœuds peuvent être approvisionnés rapidement. Les images plus petites sont souvent plus sûres. Les conteneurs ciselés sont la solution à ce problème, et ils sont maintenant généralement disponibles pour Ubuntu 24.04 pour .NET 8 et .NET 9. Des images adaptées à la mondialisation, très demandées, sont désormais disponibles et incluent les bibliothèques icu et tzdata.


Réduction de l'utilisation de la mémoire

La gestion automatique de la mémoire a toujours été une caractéristique clé de .NET, avec un ramasse-miette optimisé pour de nombreux scénarios. En ce qui concerne le développement d'apps cloud-natives, .NET 9 introduit un nouveau mode de ramasse-miette (GC) serveur. Ce nouveau mode réduit l'utilisation de la mémoire, ce qui peut réduire les coûts, tout en offrant les mêmes excellentes performances que celles qui font la réputation de .NET.

[QUOTE]Microsoft :

Qu'est-ce que cela...
La fin de cet article est réservée aux abonnés. Soutenez le Club Developpez.com en prenant un abonnement pour que nous puissions continuer à vous proposer des publications.

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