Importer une API Azure OpenAI

S’APPLIQUE À : tous les niveaux de Gestion des API

Cet article présente deux options pour importer une API Azure OpenAI Service dans une instance Gestion des API Azure en tant qu’API REST :

Prérequis

  • Disposer d’une instance d’API Management. Si vous ne l’avez pas déjà fait, créez-en un.

  • Ressource Azure OpenAI avec un modèle déployé. Pour plus d’informations sur le déploiement de modèle, consultez le guide de déploiement de ressources.

    Notez l’ID (nom) du déploiement. Vous en aurez besoin lors du test de l’API importée dans Gestion des API.

  • Autorisations permettant d’accorder l’accès à la ressource Azure OpenAI à partir de l’instance Gestion des API.

Option 1. Importer l’API à partir d’Azure OpenAI Service

Vous pouvez importer une API Azure OpenAI directement depuis Azure OpenAI Service vers API Management.

Remarque

Actuellement, cette fonctionnalité n’est pas disponible dans les espaces de travail.

Lorsque vous importez l’API, Gestion des API configure automatiquement :

  • Les opérations pour chacun des points de terminaison de l’API REST Azure OpenAI.
  • Une identité affectée par le système avec les autorisations nécessaires pour accéder à la ressource Azure OpenAI.
  • Une ressource back-end et une stratégie set-backend-service qui dirige les requêtes d’API vers le point de terminaison Azure OpenAI Service.
  • Une stratégie authentication-managed-identity qui peut s’authentifier auprès de la ressource Azure OpenAI à l’aide de l’identité affectée par le système de l’instance.
  • Des stratégies pour vous aider à surveiller et à gérer la consommation de jetons par l’API Azure OpenAI (facultatif).

Pour importer une API Azure OpenAI dans Gestion des API :

  1. Dans le portail Azure, accédez à votre instance APIM.

  2. Dans le menu de gauche, sous API, sélectionnez API>+ Ajouter une API.

  3. Sous Créer à partir d’une ressource Azure, sélectionnez Azure OpenAI Service.

    Capture d’écran de la création d’une API à partir d’Azure OpenAI Service sur le portail.

  4. Sous l’onglet Général :

    1. Sélectionnez la ressource Azure OpenAI que vous souhaitez importer.

    2. Si vous le souhaitez, sélectionnez une version de l’API Azure OpenAI. Si vous ne la sélectionnez pas, la dernière version de l’API REST prête pour la production est utilisée par défaut.

    3. Entrez un Nom d’affichage et une Description facultative pour l’API.

    4. Dans URL de base, ajoutez un chemin d’accès que votre instance Gestion des API utilise pour accéder aux points de terminaison de l’API Azure OpenAI. Si vous activez Assurer la compatibilité du SDK OpenAI (recommandé), /openai est automatiquement ajouté à l’URL de base.

      Par exemple, si votre point de terminaison de passerelle Gestion des API est https://contoso.azure-api.net, définissez une URL de base similaire à https://contoso.azure-api.net/my-openai-api/openai.

    5. Si vous le souhaitez, sélectionnez un ou plusieurs produits à associer à l’API. Cliquez sur Suivant.

  5. Sous l’onglet Stratégies, activez des stratégies pour surveiller et gérer la consommation des jetons d’API Azure OpenAI (facultatif). Si cette option est sélectionnée, entrez les paramètres ou acceptez les valeurs par défaut qui définissent les stratégies azure-openai-token-limit et azure-openai-emit-token-metric de votre API. Vous pouvez également définir ou mettre à jour ultérieurement la configuration des stratégies. Sélectionnez Vérifier + créer.

  6. Une fois que vos paramètres sont validés, sélectionnez Créer.

Option 2. Ajouter la spécification OpenAPI à Gestion des API

Vous pouvez également télécharger manuellement la spécification OpenAPI pour l’API REST Azure OpenAI et l’ajouter à Gestion des API en tant qu’API OpenAPI.

Télécharger la spécification OpenAPI

Téléchargez la spécification OpenAPI pour l’API REST Azure OpenAI, par exemple la version 2024-02-01 en disponibilité générale.

  1. Dans un éditeur de texte, ouvrez le fichier de spécification que vous avez téléchargé.

  2. Dans l’élément servers de la spécification, remplacez le nom du point de terminaison Azure OpenAI Service pour les valeurs d’espace réservé de point de terminaison url et default dans la spécification. Par exemple, si votre point de terminaison Azure OpenAI Service est contoso.openai.azure.com, mettez à jour l’élément servers avec les valeurs suivantes :

    • url : https://contoso.openai.azure.com/openai
    • point de terminaison par défaut : contoso.openai.azure.com
    [...]
    "servers": [
        {
          "url": "https://contoso.openai.azure.com/openai",
          "variables": {
            "endpoint": {
              "default": "contoso.openai.azure.com"
            }
          }
        }
      ],
    [...]
    
  3. Prenez note de la valeur de la version de l’API dans la spécification. Vous en aurez besoin pour tester l’API. Exemple : 2024-02-01.

Ajouter la spécification OpenAPI à Gestion des API

  1. Dans le portail Azure, accédez à votre instance APIM.
  2. Dans le menu de gauche, cliquez sur API>+Ajouter une API.
  3. Sous Définir une nouvelle API, sélectionnez OpenAPI. Entrez un Nom complet et un Nom pour l’API.
  4. Entrez un suffixe d’URL d’API se terminant par /openai pour accéder aux points de terminaison de l’API Azure OpenAI dans votre instance Gestion des API. Exemple : my-openai-api/openai.
  5. Sélectionnez Créer.

L’API est importée et affiche les opérations depuis la spécification OpenAPI.

Configurer l’authentification auprès de l’API Azure OpenAI

Pour vous authentifier auprès de l’API Azure OpenAI, vous fournissez une clé API ou une identité managée. Si vous avez importé l’API Azure OpenAI directement dans votre instance Gestion des API, l’authentification à l’aide de l’identité managée de l’instance Gestion des API est automatiquement configurée.

Si vous avez ajouté l’API Azure OpenAI à partir de sa spécification OpenAPI, vous devez configurer l’authentification. Pour plus d’informations sur la configuration de l’authentification à l’aide de stratégies Gestion des API, consultez Authentifier et autoriser auprès de l’API Azure OpenAI.

Tester l’API Azure OpenAI

Pour vous assurer que votre API Azure OpenAI fonctionne comme prévu, testez-la dans la console de test Gestion des API. Vous devez fournir un ID de modèle de déploiement (nom) configuré dans la ressource Azure OpenAI pour tester l’API.

  1. Sélectionnez l’API que vous avez créée à l’étape précédente.

  2. Sélectionnez l’onglet Test.

  3. Sélectionnez une opération compatible avec le modèle que vous avez déployé dans la ressource Azure OpenAI. La page affiche des champs pour les paramètres et les en-têtes.

  4. Dans Paramètres du modèle, entrez les valeurs suivantes :

    • deployment-id : l’ID d’un déploiement dans le service Azure OpenAI
    • api-version : une version valide de l’API Azure OpenAI, telle que la version de l’API que vous avez sélectionnée lorsque vous avez importé l’API. Capture d’écran montrant le test d’une API Azure OpenAI Service sur le portail.
  5. Entrez d’autres paramètres et en-têtes si nécessaire. Selon l’opération, vous devrez peut-être configurer ou mettre à jour un corps de la demande.

    Remarque

    Dans la console de test, Gestion des API renseigne automatiquement un en-tête Ocp-Apim-Subscription-Key, et configure la clé d’abonnement de l’abonnement avec accès complet intégré. Cette clé permet d’accéder à toutes les API dans l’instance Gestion des API. Vous pouvez éventuellement afficher l’en-tête Ocp-Apim-Subscription-Key en sélectionnant l’icône « œil » en regard de la requête HTTP.

  6. Sélectionnez Envoyer.

    Lorsque le test réussit, le backend répond avec un code de réponse HTTP réussi et quelques données. Des données d’utilisation de jetons ajoutées à la réponse pour vous aider à surveiller et à gérer votre consommation d’API Azure OpenAI. Capture d’écran des données d’utilisation de jetons dans la réponse de l’API sur le portail.

Stratégies de mise en cache pour les API Azure OpenAI

Outre les stratégies azure-openai-token-limit et azure-openai-emit-token-metric que vous pouvez configurer lors de l’importation d’une API Azure OpenAI Service, Gestion des API fournit les stratégies de mise en cache suivantes pour vous aider à optimiser les performances et à réduire la latence pour les API Azure OpenAI :

  • azure-openai-semantic-cache-store
  • azure-openai-semantic-cache-lookup