Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
L’IA générative, alimentée par de grands modèles de langage (LLMs), offre de nouvelles opportunités pour les développeurs et les organisations. Les services comme Azure OpenAI facilitent l’utilisation de l’IA avec des API simples. Les développeurs de tous les niveaux de compétence peuvent ajouter des fonctionnalités d’IA avancées à leurs applications sans avoir besoin de connaissances ou de matériel spéciaux.
En tant que développeur, vous pouvez vous demander ce que votre rôle est et où vous vous inscrivez. Peut-être souhaitez-vous savoir quelle partie de la « pile d’ia » doit se concentrer sur, ou ce que vous pouvez créer avec la technologie d’aujourd’hui.
Pour répondre à ces questions, commencez par créer un modèle mental qui connecte de nouveaux termes et technologies à ce que vous connaissez déjà. Cette approche vous aide à concevoir et à ajouter des fonctionnalités d’IA génératives à vos applications.
Dans cette série, nous montrons comment vos compétences logicielles actuelles s’appliquent à l’IA générative. Nous présentons également des termes et concepts clés pour vous aider à commencer à créer vos premières solutions d’IA génératives.
Comment les entreprises bénéficient de l’utilisation de l’IA générative
Pour voir comment vos compétences logicielles s’adaptent à l’IA générative, commencez par examiner la façon dont les entreprises l’utilisent.
Les entreprises utilisent l’IA générative pour stimuler l’engagement des clients, travailler plus efficacement et résoudre les problèmes de manière créative. L’ajout de l’IA générative aux systèmes existants permet aux entreprises d’améliorer leurs logiciels. Il peut ajouter des fonctionnalités telles que des recommandations personnalisées ou des agents intelligents qui répondent à des questions sur une entreprise ou ses produits.
Les méthodes courantes d’intelligence artificielle générative aident les entreprises :
Génération de contenu :
- Créez du texte, du code, des images et du son pour le marketing, les ventes, l’informatique et les communications internes.
Traitement du langage naturel:
- Écrivez ou améliorez les messages professionnels.
- Permettre aux utilisateurs de discuter avec leurs données en posant des questions basées sur des documents d’entreprise.
- Résumez, organisez et simplifiez de grandes quantités de contenu.
- Utilisez la recherche sémantique pour rechercher des informations sans mots clés exacts.
- Traduire du contenu pour atteindre plus de personnes.
Analyse des données :
- Recherchez des tendances dans les données et analysez les marchés.
- Modélisez les scénarios « what if » pour vous aider à planifier les modifications.
- Passez en revue le code pour suggérer des améliorations, corriger les bogues et créer de la documentation.
En tant que développeur, vous pouvez apporter des améliorations significatives en ajoutant des fonctionnalités d’IA génératives au logiciel que votre organisation utilise.
Comment créer des applications IA génératives
Bien que le LLM effectue le gros travail, vous créez des systèmes qui intègrent, orchestrent et surveillent les résultats. Il y a beaucoup à apprendre, mais vous pouvez appliquer les compétences que vous avez déjà, notamment comment :
- Effectuer des appels aux API à l’aide de kits de développement logiciel (SDK) REST, JSON ou propres au langage
- Orchestrer les appels aux API et effectuer une logique métier
- Stocker dans des magasins de données et extraire des données de ces magasins
- Intégrer des entrées et des résultats dans l’expérience utilisateur
- Créer des API qui peuvent être appelées à partir des GML
Le développement de solutions d’IA génératives s’appuie sur vos compétences existantes.
Outils et services de développement
Microsoft crée des outils, des services, des API, des exemples et des ressources d’apprentissage pour vous aider à commencer par l’IA générative. Chacun d’eux couvre une partie clé de la création d’une solution d’IA générative. Pour utiliser ces ressources correctement, assurez-vous de :
- Connaissez les principales fonctions, rôles et responsabilités pour chaque type de fonctionnalité d’IA générative. Par exemple, dans les systèmes de conversation basés sur RAG, vous devez comprendre le problème et ses limites avant de concevoir une solution.
- Découvrez les API, services et outils pour chaque fonction ou rôle. Une fois que vous connaissez le problème, vous pouvez le générer vous-même avec du code, utiliser des outils à faible code/sans code ou appeler des services existants.
- Explorez vos options, notamment le code, le faible code et les solutions sans code. Vous pouvez créer tout vous-même, mais il est parfois plus rapide et plus facile de combiner différents outils et approches.
Il n’existe aucun moyen approprié d’ajouter des fonctionnalités d’IA génératives à vos applications. Vous pouvez choisir parmi de nombreux outils et méthodes. Pèse toujours les avantages et les inconvénients de chacun d’eux.
Commencer par la couche Application
Vous n’avez pas besoin de tout savoir sur l’IA générative pour commencer. Vous avez probablement déjà les compétences dont vous avez besoin. Utilisez les API et vos connaissances actuelles pour commencer.
Vous n’avez pas besoin d’entraîner votre propre LLM. La formation d’un LLM prend trop de temps et d’argent pour la plupart des entreprises. Utilisez plutôt des modèles préentraînés existants comme GPT-4o en effectuant des appels d’API vers des services hébergés tels que l’API Azure OpenAI. L’ajout de fonctionnalités d’IA génératives à votre application est tout comme l’ajout d’une autre fonctionnalité qui utilise une API.
Vous souhaiterez peut-être apprendre comment les machines virtuelles sont formées ou comment elles fonctionnent. Mais la compréhension complète des llMs nécessite une connaissance approfondie de la science des données et des mathématiques, souvent à un niveau supérieur.
Si vous avez un arrière-plan informatique, vous savez que la plupart des développements d’applications se produisent à une couche supérieure dans la pile technologique. Vous connaissez peut-être un peu chaque couche, mais vous vous concentrez probablement sur le développement d’applications, à l’aide d’un langage, d’une plateforme, d’API et d’outils spécifiques.
La même idée s’applique à l’IA. Vous pouvez apprendre la théorie derrière les llms, mais vous devez vous concentrer sur la création d’applications ou la création de modèles et de processus pour l’IA générative dans votre entreprise.
Voici une vue simple des couches de connaissances nécessaires pour ajouter des fonctionnalités d’IA générative à une application :
Au niveau le plus bas, les scientifiques des données effectuent des recherches pour améliorer l’IA à l’aide de mathématiques avancées telles que les statistiques et la probabilité.
Une couche vers le haut, les scientifiques des données utilisent la théorie pour créer des llMs. Ils créent des réseaux neuronaux et les entraînent pour accepter les invites et générer des résultats (achèvements). Le processus de génération de résultats à partir d’invites est appelé inférence. Les scientifiques des données décident de la façon dont le réseau neuronal prédit le mot ou le pixel suivant.
Étant donné que l’entraînement et l’exécution de modèles prennent une puissance de calcul importante, la plupart des modèles sont formés et hébergés dans de grands centres de données. Vous pouvez entraîner ou héberger un modèle sur votre propre ordinateur, mais il est lent. Les GPU dédiés rendent cette formation plus rapide et plus efficace.
Lorsque les modèles s’exécutent dans des centres de données, vous y accédez via des API REST. Les kits SDK encapsulent souvent ces API pour les rendre plus faciles pour les développeurs. D’autres outils aident à surveiller et à effectuer d’autres tâches.
Les développeurs d’applications utilisent ces API pour créer des fonctionnalités métier.
Au-delà des modèles appelants, les nouveaux modèles et les processus aident les organisations à créer des fonctionnalités d’IA générative fiables. Par exemple, certains modèles permettent de s’assurer que le contenu généré répond aux normes éthiques, de sécurité et de confidentialité.
Si vous êtes développeur d’applications, envisagez de vous concentrer sur ces rubriques de couche d’application :
- API et kits SDK : découvrez ce qui est disponible et ce que fait chaque point de terminaison.
- Outils et services : Découvrez comment créer les fonctionnalités nécessaires à une solution d’IA générative prête pour la production.
- Ingénierie rapide : Découvrez comment obtenir les meilleurs résultats en posant ou en rééchissant des questions.
- Goulots d’étranglement et mise à l’échelle : recherchez où se produisent les ralentissements et comment effectuer une mise à l’échelle. Découvrez comment journaliser et obtenir des données d’application sans violer la confidentialité.
- Caractéristiques LLM : connaître les points forts, les cas d’usage, les benchmarks et les différences entre les modèles et les fournisseurs. Cette connaissance vous aide à choisir le modèle approprié pour vos besoins.
- Modèles et flux de travail : restez à jour sur les dernières façons de créer des fonctionnalités d’intelligence artificielle efficaces et fiables dans vos applications.
Outils et services de Microsoft
Vous pouvez utiliser des outils et des services d’INTELLIGENCE artificielle non codés et sans code de Microsoft pour vous aider à créer une partie ou l’ensemble de votre solution. Différents services Azure peuvent jouer des rôles essentiels. Chacun contribue à l’efficacité, à la scalabilité et à la robustesse de la solution.
API et kits sdk pour une approche centrée sur le code
Chaque solution d’IA générative utilise un LLM. Azure OpenAI vous offre toutes les fonctionnalités des modèles tels que GPT-4.
| Produit | Descriptif |
|---|---|
| Azure OpenAI | Un service hébergé qui vous donne accès à des modèles de langage puissants comme GPT-4. Utilisez des API pour créer des incorporations, créer des fonctionnalités de conversation et personnaliser les résultats en fonction de vos besoins. |
Environnements d’exécution
Vous avez besoin d’un service pour exécuter votre logique métier, votre logique de présentation ou vos API pour l’IA générative dans vos applications.
| Produit | Descriptif |
|---|---|
| Azure App Service (ou d’autres services cloud basés sur des conteneurs) | Héberger des interfaces web ou des API pour permettre aux utilisateurs d’interagir avec votre système de conversation RAG. Développez, déployez et mettez rapidement à l’échelle des applications web. Gérez facilement le serveur frontal de votre système. |
| Azure Functions | Utilisez le calcul serverless pour les tâches pilotées par les événements dans votre système de conversation RAG. Déclenchez la récupération des données, traitez les requêtes utilisateur ou gérez des tâches en arrière-plan telles que la synchronisation et le nettoyage. Créez un back-end modulaire et évolutif. |
Solutions à faible code et sans code
Une partie de la logique dont vous avez besoin pour implémenter votre vision d’IA générative peut être générée rapidement et être hébergée de manière fiable à l’aide d’une solution à faible code ou sans code.
| Produit | Descriptif |
|---|---|
| Fonderie d'IA Azure | Vous pouvez utiliser Azure AI Foundry pour entraîner, tester et déployer des modèles Machine Learning personnalisés pour améliorer un système de conversation RAG. Par exemple, utilisez Azure AI Foundry pour personnaliser la génération de réponse ou améliorer la pertinence des informations récupérées. |
Pour obtenir des conseils sur la création de solutions à faible code, consultez développement d’applications à faible code sur Azure.
Base de données vectorielles
Certaines solutions d’IA génératives doivent stocker et récupérer des données pour améliorer les résultats. Par exemple, un système de conversation basé sur RAG permet aux utilisateurs de discuter avec les données de votre entreprise. Dans ce cas, vous avez besoin d’une base de données vectorielle.
| Produit | Descriptif |
|---|---|
| Recherche d’IA Azure | Recherchez des jeux de données volumineux pour rechercher des informations sur le modèle de langage. Utilisez-le pour la partie de récupération d’un système RAG pour rendre les réponses plus pertinentes et utiles. |
| Azure Cosmos DB | Stockez de grandes quantités de données structurées et non structurées pour le système de conversation RAG. Les vitesses de lecture et d’écriture rapides permettent de traiter les données en temps réel et de stocker les interactions utilisateur. |
| Cache Azure pour Redis | Cachez les informations fréquemment utilisées pour réduire les retards et accélérer le système de conversation RAG. Stockez les données de session, les préférences utilisateur et les requêtes courantes. |
| Azure Database pour PostgreSQL - Serveur flexible | Stocker des données d’application telles que les journaux, les profils utilisateur et l’historique des conversations. Sa flexibilité et sa scalabilité conservent vos données disponibles et sécurisées. |
Chacun de ces services Azure vous aide à créer une solution d’INTELLIGENCE artificielle évolutive et efficace. Ils vous permettent d’utiliser le meilleur des fonctionnalités cloud et IA d’Azure. Pour plus d’informations, consultez Choisir une base de données vectorielle.
Développement d’IA générative centré sur le code à l’aide de l’API Azure OpenAI
Cette section traite de l’API Azure OpenAI. Vous utilisez une API REST pour accéder aux fonctionnalités LLM. Vous pouvez appeler ces API à partir de n’importe quel langage de programmation moderne. De nombreuses langues ont des kits SDK qui facilitent l’appel de l’API.
Voici la liste des wrappers d’API REST Azure OpenAI :
- Bibliothèque de client Azure OpenAI pour .NET
- Bibliothèque de client Azure OpenAI pour Java
- Bibliothèque de client Azure OpenAI pour JavaScript
- Module client Azure OpenAI pour Go
- Utilisez le package OpenAI Python et modifiez plusieurs options. Python ne propose pas de bibliothèque cliente spécifique à Azure.
S’il n’existe aucun kit SDK pour votre langue ou plateforme, effectuez des appels REST directement aux API web :
La plupart des développeurs savent comment appeler des API web.
Azure OpenAI a plusieurs API pour différentes tâches IA. Voici une vue d’ensemble des API principales :
- API De saisie semi-automatique de conversation : Générer du texte, une conversation et répondre aux questions. Utilisez-le pour les chatbots, les assistants virtuels, la synthèse, l’écriture et la traduction. Il prend également en charge les fonctionnalités de vision (telles que le chargement d’une image et la pose de questions).
- API Modération du contenu : Recherchez et filtrez du contenu dangereux ou dangereux dans du texte. Utilisez-la pour sécuriser les interactions utilisateur.
- API Incorporations : transformez du texte en vecteurs pour la recherche, le clustering et la recherche de contenu similaire. Utilisez-la pour capturer la signification et les relations dans le texte.
- API génération d’images : créer des images et des images à partir d’invites de texte. Basé sur DALL· Modèle E.
- API REST de reconnaissance vocale : convertir la parole en texte ou en synthèse vocale dans de nombreuses langues. Utilisez-le pour les commandes vocales et la transcription audio.
Cet article se concentre sur l’IA générative basée sur du texte, comme la conversation et la synthèse, mais vous pouvez utiliser ces API pour de nombreux types de médias.
Commencez à développer avec l'IA générative
Lorsque vous apprenez un nouveau langage, une API ou une technologie, commencez par des didacticiels ou des formations qui montrent comment créer de petites applications. Certains développeurs préfèrent apprendre en créant leurs propres petits projets. Les deux façons fonctionnent bien.
Commencez petit, définissez des objectifs simples et créez vos compétences étape par étape. Le développement d’IA générative est différent du logiciel traditionnel. Dans les logiciels standard, vous obtenez la même sortie pour la même entrée à chaque fois. Avec l’IA générative, vous obtenez des réponses différentes pour la même invite, ce qui apporte de nouveaux défis.
Au début, gardez ces conseils à l’esprit.
Conseil 1 : Soyez clair sur votre objectif
- Définissez le problème que vous souhaitez résoudre. L’IA générative peut faire beaucoup de choses, mais vous obtenez de meilleurs résultats si vous savez exactement ce que vous voulez, comme générer du texte, des images ou du code.
- Connaissez votre public. Personnalisez la sortie de l’IA pour qu’elle corresponde à celle qui l’utilise, qu’il s’agisse d’utilisateurs occasionnels ou d’experts.
Conseil 2 : Utiliser les forces LLM
- Connaissez les limites et les préjugés des machines virtuelles. Ils sont puissants, mais pas parfaits. Planifiez leurs faiblesses.
- Utilisez les modules LLM pour ce qu’ils font le mieux, comme la création de contenu, la synthèse ou la traduction. Parfois, un autre type d’IA peut être préférable pour vos besoins.
Conseil 3 : Écrire de bonnes invites
- Découvrez l’ingénierie rapide. Essayez différentes invites pour voir ce qui fonctionne le mieux. Soyez clair et précis.
- Affinez vos invites. La première itération peut ne pas fonctionner. Utilisez les résultats pour améliorer votre invite suivante.
Créer votre première solution d’IA générative
Pour essayer de créer une solution d’IA générative, commencez par démarrer avec la conversation à l’aide de votre propre exemple de données pour Python. Vous trouverez également des didacticiels pour .NET, Java et JavaScript.
Considérations finales relatives à la conception de l’application
Voici une courte liste des éléments à prendre en compte et d’autres points à prendre en compte dans cet article susceptibles d’affecter vos décisions de conception d’application :
- Définissez clairement l’espace de problème et l’audience pour aligner clairement les fonctionnalités de l’IA avec les attentes des utilisateurs. Optimisez l’efficacité de la solution pour le cas d’usage prévu.
- Utilisez des plateformes à faible code/sans code pour le prototypage et le développement rapides s’ils répondent aux exigences de votre projet. Évaluez le compromis entre la vitesse de développement et la personnalisation. Essayez des outils de faible code et sans code pour les parties de votre application afin d’accélérer le développement et de permettre aux membres de l’équipe non technique d’aider.