Création d'un proxy REST pour Azure OpenAI avec l'option AI Gateway

Créez un proxy REST qui utilise le site AI Gateway pour contrôler l'accès aux modèles d'IA.

Avant de commencer

Effectuez les tâches décrites dans la section Conditions préalables à l'utilisation du site AI Gateway pour vous assurer que vous pouvez accéder au site Azure OpenAI.

A propos de cette tâche

Le site AI Gateway n'est pris en charge que par les API OpenAPI 3.0.

Procédure

  1. Dans le volet de navigation, cliquez sur Développer l'icône.

  2. Sur la page Développer, cliquez sur Ajouter > API.

  3. Sur la page Sélectionner un type d'API, cliquez sur l'onglet OpenAPI 3.0.

  4. Dans la section Créer, sélectionnez la passerelle AI, puis cliquez sur Suivant.

  5. Sur la page Créer une API à partir d'une passerelle d'IA, utilisez le champ Plateforme pour sélectionner Azure openai comme service d'IA que la nouvelle API utilisera.

  6. Utilisez la section "Info" pour fournir des informations de base sur l'API, puis cliquez sur Suivant :
    • La version OpenAPI est basée sur la sélection de l'étape 3 où vous avez cliqué sur OpenAPI 3.0

    • Titre : Le titre peut contenir des caractères spéciaux, mais il doit être court afin de pouvoir être facilement affiché dans l'interface utilisateur.

    • Le nom est rempli pour vous en fonction du titre. La valeur est une chaîne unique utilisée pour identifier l'API dans les commandes CLI du kit de développement.

    • Version : Accepter la valeur par défaut ou la modifier si nécessaire. La version correspond à la valeur de la propriété info.version de la définition OpenAPI. Il est recommandé d'utiliser le schéma de numérotation de version version.release.modification ; par exemple 1.0.0.

    • Chemin de base : Accepter la valeur par défaut ou la modifier si nécessaire. Le "chemin de base" de l'API est le serveur URL, qui est utilisé pour déterminer le point d'extrémité URL complet pour l'appel de l'API, en tenant compte de toute configuration de point d'extrémité de vanité dans le catalogue dans lequel l'API est publiée. Pour une API appliquée par DataPower® API Gateway, il suffit de fournir la valeur du chemin d'accès de base. De plus, veuillez noter que :
      • Ne pas inclure le nom d'hôte ou tout autre segment supplémentaire pour les chemins d'accès ou les opérations
      • Ne pas inclure de caractères spéciaux
      • Le site URL commence par une barre oblique ( / ) même s'il est vide

    • Description : La description facultative permet d'identifier l'API.
  7. Fournissez des informations sur la manière dont l'API accède à Azure OpenAI pour soumettre des demandes, puis cliquez sur Créer :
    • Clé API : Fournissez soit la valeur de la clé API, soit la variable $(nom d'une propriété du catalogue) dont la valeur est la clé API.

      La clé API permet à l'API de s'authentifier auprès du serveur Azure OpenAI et est nécessaire pour accéder au service Azure OpenAI .

    • Exposed paths (Chemins exposés) : Acceptez la liste par défaut des chemins exposés ou sélectionnez uniquement les chemins auxquels vous souhaitez que votre API accède. Les chemins exposés définissent les opérations Azure OpenAI incluses dans l'API générée.

    • Activer la mise en cache des réponses : la mise en cache des réponses est activée par défaut pour optimiser les performances de l'API; toutefois, vous pouvez la désactiver si cela est nécessaire pour votre API. Si vous utilisez la mise en cache des réponses, vous pouvez spécifier la durée de la mise en cache dans le champ Cache TTL en secondes.

      Lorsque la mise en cache des réponses est activée, lorsqu'une demande est envoyée au service Azure OpenAI , le cache des réponses est inspecté pour déterminer si la charge utile de la demande est associée à une réponse mise en cache. Si c'est le cas, cette réponse et les en-têtes de réponse HTTP qui lui sont associés sont placés dans le message contextuel DataPower API Gateway (qui, par défaut, est appelé message). La propriété Output Message de l'interface utilisateur des politiques peut être modifiée après la génération de l'API si un message différent est nécessaire.

      S'il n'y a pas de réponse mise en cache, la demande est transmise au service Azure OpenAI et la réponse est mise en cache pour les opérations suivantes en utilisant le délai d'attente spécifié dans la propriété Cache TTL en secondes.

      TTL du cache en secondes : Si vous activez la mise en cache des réponses, configurez la durée de la mise en cache en acceptant la valeur par défaut ou en sélectionnant (ou en saisissant) une nouvelle valeur. La durée minimale est de 60 secondes et la durée maximale est de 86400 secondes (1 jour). Toute valeur en dehors de cette fourchette ne sera pas validée lors de la publication de l'API, même si la valeur est acceptée dans ce champ.

    • Dans la section Rate Limiting, sélectionnez Create product (Créer un produit) si vous souhaitez générer un produit API Connect qui contrôle la limitation des tarifs pour l'API.

      Sur le site API Connect, un produit sert de conteneur pour une API et les plans d'utilisation associés, qui définissent les limites tarifaires. La définition des limites de cadence du produit ici crée un plan qui contient les limites de cadence d'assemblage requises azure-openai-default et azure-openai-token-weighted et spécifie les limites que vous avez définies.

      Si vous choisissez de ne pas générer un produit automatiquement, vous devez en créer un comme expliqué dans la section Création d'un produit personnalisé pour une API Azure OpenAI.

      Attention : Un produit créé ultérieurement à l'aide de la fonction de publication automatique (lors de la publication de votre API) n'inclut pas le plan requis pour l'utilisation du service d'IA. Vous pouvez soit créer le produit maintenant, soit créer un produit personnalisé avant de publier l'API.

      Configurez les types de limitation de débit à appliquer aux appels API :

      Note : Si vous choisissez de ne pas spécifier les valeurs d'une limite de taux, des valeurs par défaut seront attribuées à cette limite de taux.
      • Set rate limit : (Time based) Accepter la limite de taux par défaut ou configurer une nouvelle limite basée sur le nombre de requêtes API envoyées dans une période de temps spécifiée. Ce type de limite de taux n'utilise pas de jetons.

      • Set AI token limit : (Token based) Accepter la limite de taux par défaut ou configurer une nouvelle limite basée sur le nombre de jetons basés sur les coûts utilisés au cours d'une période de temps spécifiée. La limitation de débit basée sur les jetons utilise l'opération /chat/completions pour suivre l'utilisation des jetons.

        La limite de jetons AI applique une limitation de taux basée sur l'utilisation des jetons. La limite de débit détermine le nombre de jetons autorisés à passer par la passerelle dans un laps de temps donné.

  8. Examinez la page de résumé pour vérifier que l'API ne présente aucun problème.

  9. Modifiez la nouvelle API et ajoutez des politiques et des constructions logiques qui contrôlent le flux de travail de l'API.

    L'API créée contiendra les politiques d'invocation de Azure OpenAI pour les chemins exposés qui ont été demandés. Leurs propriétés peuvent être modifiées si nécessaire.