Utiliser des outils et des modèles IA dans Azure Functions

Azure Functions fournit des ressources de calcul serverless qui s’intègrent à l’IA et aux services Azure pour vous aider à créer des applications intelligentes hébergées dans le cloud. Cet article analyse les scénarios, les intégrations et les ressources liés à l’IA que vous pouvez utiliser dans vos applications de fonction.

Utilisez le tableau suivant pour choisir une intégration basée sur le début du travail et la manière dont les autres composants l’absorbent :

Option Meilleur ajustement Modèle d’invocation Considérations importantes
Compétences hébergées par Azure Functions Ajoutez le raisonnement IA aux charges de travail pilotées par événements en utilisant des instructions et outils déclaratifs. Déclencheurs de fonctions ou terminaux intégrés HTTP et MCP optionnels Preview
Liaisons d’agents pour Python Ajoutez le raisonnement des agents bornés à une fonction Python tout en conservant le contrôle piloté par le code sur la validation, le branchement, les erreurs et les sorties. Un déclencheur Functions standard invoque du code Python, qui appelle un objet injecté du Microsoft Agent Framework Agent Aperçu ; Python uniquement
Implémentations de points de terminaison du Model Context Protocol (MCP) Exposez des outils synchrones et réutilisables aux agents Microsoft Foundry et autres clients MCP. HTTP diffusable en continu Choisissez entre les compétences hébergées, l’extension MCP en disponibilité générale et l’hébergement basé sur le SDK en préversion.
Outils Azure Functions basés sur files d’attente Exécutez des outils asynchrones en arrière-plan pour les agents Microsoft Foundry. Files d’attente d’entrée et de sortie Stockage File d'attente Azure Spécifique à la fonderie ; nécessite un agent de la fonderie avec la configuration standard.
Flux de travail agentiques Coordonnez des tâches d’IA de longue durée ou en plusieurs étapes qui doivent se poursuivre malgré les redémarrages et les périodes d’attente. Orchestrations durables déclenchées par des événements d’application Choisissez une orchestration directe avec Durable Functions ou des workflows dynamiques avec des compétences hébergées.

Cet article est spécifique au langage. Veillez donc à choisir votre langage de programmation en haut de la page.

Compétences hébergées par Azure Functions

Azure Functions Hosted Skills est un modèle de programmation permettant de développer des capacités intelligentes hébergées dans le cloud et pilotées par des événements sur Azure Functions. Vous définissez le comportement avec Markdown, des instructions en langage naturel et une configuration déclarative. L’environnement d’exécution découvre les fichiers .agent.md, enregistre les déclencheurs et les points de terminaison, et exécute des compétences hébergées lorsque des événements surviennent.

Important

Azure Functions Hosted Skills est actuellement en aperçu. Les fonctionnalités, les noms de configuration et les connecteurs pris en charge peuvent changer avant la disponibilité générale.

Vous n'avez pas besoin d'écrire du code Python pour définir une compétence hébergée. Vous définissez son comportement, ses déclencheurs et ses outils configurés dans Markdown et des fichiers de configuration. Si vous avez besoin d’une logique d’application personnalisée au-delà de ces capacités configurées, vous pouvez ajouter des outils Python personnalisés.

Utilisez des compétences hébergées par Azure Functions lorsque vous souhaitez ajouter un comportement intelligent à une application pilotée par des événements en réponse à une requête HTTP, un planning, un message, un changement de données, un événement provenant d’un connecteur géré ou tout autre événement. Vous pouvez également activer un point de terminaison MCP intégré facultatif qui rend chaque compétence hébergée accessible comme outil basé sur l’IA pour d’autres applications, agents ou environnements d’orchestration d’agents.

Pour commencer, consultez les articles suivants :

Liaisons d’agents pour Python

Important

Les liaisons d’agents pour les applications de fonctions Python sont actuellement en version préliminaire. Les fonctionnalités, les noms de paquets et la configuration peuvent changer avant la disponibilité générale.

Les liaisons d’agents ajoutent un objet Microsoft Agent Agent Framework configuré à une invocation standard de fonction Python. La fonction conserve le contrôle de sa logique de déclenchement et d’application déterministe, et son gestionnaire décide si, quand et comment invoquer l’Agent.

Utilisez des liaisons d’agents lorsque la fonction Python est le modèle d’exécution principal et que le raisonnement d’agent est une partie limitée de son travail. Utilisez plutôt des compétences hébergées par Azure Functions lorsqu'une compétence hébergée définie de manière déclarative est le modèle d'exécution principal de l'application. Utilisez directement le SDK du Microsoft Agent Framework lorsque votre code doit contrôler l’ensemble du cycle de vie de l’Agent plutôt que de recevoir un Agent configuré via un liaison.

Les liaisons d'agent prennent également en charge les appels d'agent protégés contre les relectures depuis des orchestrations de fonctions durables. Pour en savoir plus et commencer, consultez Agents bindings for Python in Azure Functions.

Outils et serveurs MCP

Les modèles et agents IA utilisent l’appel de fonction pour demander des ressources externes appelées outils. En utilisant l’appel de fonction, les modèles et agents peuvent invoquer dynamiquement des fonctionnalités spécifiques en fonction du contexte d’une conversation ou d’une tâche.

Functions est particulièrement adapté à l’implémentation d’appels de fonctions dans des flux de travail agentiques, car elle s’adapte efficacement pour gérer la demande et fournit des extensions binding qui simplifient la connexion des agents avec des services de Azure distants. Lorsque vous créez ou hébergez des outils IA dans Functions, vous obtenez également des modèles tarifaires serverless et des fonctionnalités de sécurité de plateforme.

Le MCP est la norme industrielle pour l’interaction avec les serveurs distants. Il fournit un moyen standardisé pour les modèles et agents IA de communiquer avec des systèmes externes. En utilisant un serveur MCP, ces clients IA peuvent déterminer efficacement les outils et capacités d’un système externe.

Azure Functions prend actuellement en charge l’exposition de votre code de fonction à l’aide de ces types d’outils :

Type d’outil Descriptif
Endpoint MCP intégré pour les compétences hébergées Exposez des compétences hébergées qui utilisent le raisonnement de l’IA en tant qu’outils via un point de terminaison MCP intégré.
Serveur MCP distant Créer des outils MCP déterministes ou héberger des serveurs MCP basés sur SDK pour les appels d’outils synchrones.
Outil Azure Functions basé sur la file d'attente Utilisez l’outil spécifique à Microsoft Foundry pour appeler des fonctions asynchrones via des files d’attente de messages.

Choisissez comment exposer un point de terminaison MCP

Functions prend en charge ces options pour exposer les capacités via MCP :

  • Activez le point de terminaison MCP intégré pour les compétences hébergées par Azure Functions afin d’exposer des outils alimentés par l’IA définis dans des .agent.md fichiers. Les compétences personnalisées sont disponibles en version préliminaire.
  • Utilisez l’extension MCP binding pour créer et héberger des outils MCP déterministes comme vous le feriez pour toute autre application de fonctions.
  • Serveurs MCP auto-hébergés créés en utilisant les SDK MCP officiels. Cette option d’hébergement est actuellement en préversion.

Voici une comparaison des options actuelles de points de terminaison MCP fournies par Functions :

Caractéristique Endpoint MCP intégré pour les compétences hébergées Extension de liaison MCP Serveurs MCP auto-hébergés
Meilleur ajustement Exposez une compétence hébergée alimentée par l’IA comme outil MCP. Créer des outils MCP déterministes avec des déclencheurs et des liaisons Functions. Hébergez un serveur existant construit avec un SDK MCP officiel.
Niveau de prise en charge actuelle Preview Généralement disponible Aperçu*
Modèle de programmation .agent.md Compétence hébergée Déclencheurs et liaisons de fonctions Kits SDK MCP standard
Exécution avec état Historique des sessions supporté Soutenu Non prise en charge pour le moment
Langages de code personnalisés Python (outils personnalisés optionnels) C# (processus isolé)
Python
TypeScript
JavaScript
Java
C# (processus isolé)
Python
TypeScript
Java
Plan d’hébergement Consommation flexible
Premium
Dédié (App Service)
Plans d’hébergement Azure Functions pris en charge Consommation flexible uniquement
Autres exigences Activer builtin_endpoints.mcp dans la compétence hébergée Aucun Serveur sans état utilisant un transport HTTP streamable
Comment est implémenté Point de terminaison MCP intégré dans l’environnement d’exécution des compétences hébergées Extension de liaison MCP Gestionnaires personnalisés

*Les détails de configuration des serveurs MCP auto-hébergés changent pendant la préversion.

Utilisez les ressources spécifiques à chaque langage suivantes pour commencer avec des serveurs MCP distants dans Fonctions :

Pour C#, comparez ces ressources pour l’extension MCP et l’hébergement basé sur SDK :

Options Extension de liaison MCP Serveurs MCP auto-hébergés
Documentation Extension de liaison MCP Sans objet
Samples Serveur MCP personnalisé distant Serveur Météo
Modèles HelloTool Sans objet

Pour Python, comparez ces ressources pour l’extension MCP et l’hébergement basé sur SDK :

Options Extension de liaison MCP Serveurs MCP auto-hébergés
Documentation Extension de liaison MCP Sans objet
Samples Serveur MCP personnalisé distant Serveur Météo

Pour TypeScript, comparez ces ressources pour l’extension MCP et l’hébergement basé sur SDK :

Options Extension de liaison MCP Serveurs MCP auto-hébergés
Documentation Extension de liaison MCP Sans objet
Samples Serveur MCP personnalisé distant Serveur Météo

Pour JavaScript, utilisez les ressources de l’extension MCP. L’hébergement basé sur SDK est pris en charge, mais un démarrage rapide JavaScript n’est pas actuellement disponible.

Options Extension de liaison MCP Serveurs MCP auto-hébergés
Documentation Extension de liaison MCP Sans objet
Samples Pas encore disponible Pas encore disponible

Pour Java, utilisez la documentation de l’extension MCP. Les exemples spécifiques à la langue ne sont pas disponibles pour le moment.

Options Extension de liaison MCP Serveurs MCP auto-hébergés
Documentation Extension de liaison MCP Sans objet
Samples Pas encore disponible Pas encore disponible

PowerShell n’est actuellement pas pris en charge pour l’option d’hébergement du serveur MCP.

Choisir des outils Azure Functions basés sur les files d’attente pour Microsoft Foundry Agent Service

Microsoft Foundry Agent Service propose également un outil spécifique à Azure Functions pour l’appel asynchrone de fonctions. L’agent place une requête dans une file d’entrée Stockage File d'attente Azure. Une fonction déclenchée par une file d’attente traite la requête et renvoie le résultat via une file d’attente de sortie.

Utilisez cette intégration spécifique à Foundry pour des opérations d’arrière-plan qui ne nécessitent pas de réponse immédiate et bénéficient d’une livraison fiable des messages et de nouvelles tentatives. Pour des interactions synchrones ou des outils que vous souhaitez réutiliser avec d’autres clients IA, utilisez plutôt un serveur MCP.

Les outils Azure Functions basés sur files d’attente nécessitent un agent Foundry avec la configuration standard. Pour examiner les SDK pris en charge et construire un outil, voir Utiliser Azure Functions avec Foundry Agent Service.

Flux de travail agentiques

Utilisez Durable Functions lorsque votre code d’application définit une séquence fiable d’appels d’agents, appels de modèle, approbations et autres travaux. Durable Functions préserve l’état d’orchestration lors des périodes d’attente et des redémarrages, et prend en charge des modèles courants tels que le chaînage de fonctions, le fan-out/fan-in et l’interaction humaine.

Si vous utilisez des compétences hébergées par Azure Functions, les flux de travail dynamiques offrent une option d’aperçu dans laquelle un modèle crée un plan structuré d’appels d’outils, de tâches de sous-agents et d’attentes. Le runtime des compétences hébergées exécute ce plan sous forme d’orchestration Durable Functions. Utilisez l’appel direct d’outils lorsque la tâche peut se terminer en une seule interaction, et utilisez un flux de travail dynamique lorsque la tâche doit s’exécuter au-delà d’un seul échange, se ramifier, attendre ou survivre aux redémarrages.

Option Qui définit le flux de travail Meilleur ajustement Considérations importantes
Orchestration directe de Durable Functions Code d’application Flux de travail prévisibles avec un flux de contrôle explicite, des nouvelles tentatives, des attentes et des validations Utilisez le modèle de programmation Durable Functions pour votre langage.
Flux de travail dynamique basé sur les compétences hébergées Modèle IA Des workflows adaptatifs qui planifient les appels d’outils, les tâches de sous-agents, les attentes et la distribution à l’exécution Aperçu ; nécessite des compétences hébergées sur Azure Functions.

Pour des conseils sur la mise en œuvre, consultez les modèles d’application et Créer et exécuter des flux de travail dynamiques.

Outils et infrastructures IA pour Azure Functions

Avec Functions, vous pouvez créer des applications dans votre langue préférée et utiliser vos bibliothèques favorites. En raison de cette flexibilité, vous pouvez utiliser un large éventail de bibliothèques et d’infrastructures IA dans vos applications de fonction compatibles AVEC l’IA.

Ces plateformes et frameworks d’IA Microsoft prennent en charge différentes architectures d’applications :

Plateforme ou cadre Meilleur ajustement Comment cela fonctionne avec Azure Functions
Microsoft Agent Framework Logique des agents orientée code et flux de travail qui s’exécutent dans votre application Exécutez les SDK du framework dans votre code de fonction.
Microsoft Foundry Agent Service Agents gérés qui utilisent des outils hébergés par des fonctions Créer et gérer des agents en tant que service hébergé. Les agents Foundry peuvent appeler des outils hébergés par Functions via MCP, files d’attente ou OpenAPI.
SDK Microsoft Foundry Appels directs au modèle et aux services qui ne nécessitent pas d’agent géré Appelez les modèles et services Foundry directement depuis votre code de fonction.

Dans Functions, vos applications peuvent également référencer des bibliothèques et frameworks tiers, afin que vous puissiez utiliser tous vos outils et bibliothèques d’IA préférés dans vos fonctions compatibles avec l’IA.