Implémenter une plate-forme de gestion d'API pour les modèles et services d'IA d'entreprise

Il y a de fortes chances que votre organisation ait implémenté l'IA. Si tel est le cas, vous faites probablement partie des nombreuses organisations qui ont du mal à appliquer la sécurité au niveau de l'entreprise et à standardiser les processus lors de la création d'applications sur des modèles d'IA privés et publics.

La consommation de modèles d'IA peut poser des défis communs aux entreprises de tous les secteurs, notamment :

  • Complexité d'intégration : la gestion des intégrations point à point entre les applications et les modèles d'IA entraîne souvent de la complexité lorsque les entreprises souhaitent adopter des modèles différents.
  • Normalisation de la sécurité : l'implémentation de mesures de sécurité cohérentes sur différents modèles d'IA s'avère être un défi important.
  • Contrôle d'accès : l'application du contrôle d'accès basé sur les rôles aux API de modèle d'IA en fonction des rôles et responsabilités des utilisateurs peut être difficile à gérer efficacement.
  • Monétisation : créer des modèles d'IA dépourvus de fonctionnalités de monétisation si des modèles sont mis à la disposition des consommateurs externes.
  • Consumption and Resource Management: Setting quotas for subscribers to limit consumption of AI models.
  • Ralentissement : ralentissement et limitation du débit des API de modèle d'IA.
  • Surveillance : fonctionnalités de surveillance et de suivi permettant de visualiser l'utilisation des API de modèle d'IA.

Cette architecture décrit une solution pour aider les clients à tirer parti des fonctionnalités d'Oracle Cloud Infrastructure API Gateway et d'autres services OCI pour relever ces défis dans une solution d'IA.

Architecture

Cette architecture utilise OCI API Gateway en tant que middleware pour gérer l'intégration point à point entre les modèles d'IA et d'autres services OCI. Utilisez cette architecture pour les cas d'utilisation de l'IA qui nécessitent des flux de sécurité au niveau de l'entreprise et la normalisation des processus.

Sécurité standardisée

De nombreux modèles d'IA de base et d'autres services d'IA utilisent différents mécanismes d'authentification, tels que OAuth 2.0, Open ID, JWT, etc. OCI API Gateway peut aider à standardiser l'authentification d'API aux modèles d'IA.

Couche de virtualisation ou d'abstraction

Comme la plupart des entreprises modernes exploitent les derniers modèles d'IA de différents fournisseurs spécialisés dans des domaines spécifiques, l'utilisation de modèles d'IA directement à partir d'applications peut créer une complexité d'intégration point à point. OCI API Gateway est utilisé en tant que couche de virtualisation de service pour faciliter le passage d'un modèle d'IA à un autre.

OCI API Gateway et OCI Vault peuvent extraire les informations d'identification d'API de modèle d'IA des consommateurs, tandis que les informations d'identification de modèle d'IA sont stockées dans OCI Vault. Les destinataires accèdent aux adresses OCI API Gateway avec des informations d'identification client générées à partir d'applications confidentielles créées pour ce destinataire. OCI API Gateway authentifie les utilisateurs par rapport aux informations d'identification client. En cas de réussite de l'authentification, OCI API Gateway extrait les informations d'identification d'API de modèle à partir d'OCI Vault pour appeler l'adresse d'API de modèle back-end.

Contrôle d'accès et gouvernance

OCI API Gateway peut appliquer un contrôle d'accès granulaire aux API de modèle AI afin d'accorder l'accès à l'API en fonction du domaine, du rôle ou de la responsabilité du consommateur. Les déploiements OCI API Gateway permettent de packager des API basées sur un domaine afin de permettre aux destinataires de demander l'abonnement à des déploiements spécifiques. Les fonctionnalités de limitation et de limitation de débit d'OCI API Gateway permettent de contrôler l'utilisation et les performances des modèles d'IA.

Contrôle des coûts

Les plans d'utilisation et les quotas peuvent être exploités pour contrôler efficacement les coûts de consommation du modèle d'IA. Les plans d'utilisation vous permettent de créer différents niveaux de plan qui peuvent être alloués aux consommateurs en fonction de la priorité et de la valeur commerciale. Pour les entreprises qui mettent des services d'IA tiers à la disposition de leurs équipes, les plans d'utilisation peuvent garantir que l'utilisation des collaborateurs est régie et surveillée afin d'éviter d'engendrer des coûts élevés.

OCI Cache with Redis peut être intégré à OCI API Gateway pour réduire les coûts et améliorer les performances des API de modèle d'IA en mettant en cache les demandes fréquentes et en déchargeant les demandes d'inférence sur les modèles.

Journalisation et surveillance

Le tableau de bord de reporting prêt à l'emploi d'OCI API Gateway aide les entreprises à obtenir des informations sur l'utilisation et les performances des modèles d'IA et à identifier les opportunités d'économies.

Vous pouvez diffuser des journaux vers Oracle Cloud Infrastructure Logging Analytics pour le dépannage, la surveillance du comportement de consommation du modèle d'IA, la génération de rapports personnalisés pour surveiller la consommation des ressources et la prise de décisions éclairées sur les investissements futurs du portefeuille d'IA de votre organisation. Les journaux peuvent être transmis aux systèmes de facturation si les entreprises veulent monétiser des modèles d'IA affinés.

OCI API Gateway peut émettre des mesures vers OCI Monitoring, où les mesures de plan d'utilisation peuvent être utilisées pour surveiller les principaux clients consommateurs et d'autres dimensions afin de résoudre les problèmes de déploiement et de OCI API Gateway.

Fonctions de réseau

OCI API Gateway est accessible à partir du réseau Internet public et via une connexion réseau privée.

Les utilisateurs et les applications d'Internet peuvent accéder à OCI API Gateway dans un sous-réseau public géré par une passerelle Internet.

Les utilisateurs et les applications sur site peuvent accéder à OCI API Gateway dans un sous-réseau privé via OCI FastConnect ou un VPN. Les applications sur Microsoft Azure ou Google Cloud peuvent accéder à OCI API Gateway dans un sous-réseau privé via l'interconnexion Oracle correspondante pour Microsoft Azure ou l'interconnexion Oracle pour Google Cloud.

Le diagramme suivant illustre l'architecture.



api-gateway-ai-architecture.zip

Le diagramme suivant illustre le workflow entre OCI API Gateway, les modèles d'IA et d'autres services Oracle :



Le workflow se présente comme suit :

  1. Les consommateurs d'IA d'Internet se connectent aux API de service AI via API Gateway. Les consommateurs incluent des applications Web et mobiles créées à l'aide de n'importe quelle technologie d'interface utilisateur telle qu'Oracle Visual Builder, Oracle Analytics Cloud, une application Visual Builder Cloud Service intégrée dans Oracle SaaS. Les consommateurs sur site peuvent établir un tunnel sécurisé hautes performances entre OCI et les centres de données sur site qui permet aux consommateurs sur site d'accéder aux modèles d'IA sans utiliser Internet.
  2. OCI API Gateway est intégré à OCI Identity and Access Management pour l'authentification afin d'assurer une application de la sécurité standardisée via OAuth 2.0 et l'authentification de base.
  3. OCI Vault stocke les informations d'identification d'API de modèle AI en toute sécurité et peut extraire les informations d'identification d'API back-end des destinataires.
  4. Diffusez les journaux OCI API Gateway vers OCI Logging pour conserver plus longtemps les journaux et créer des rapports via des analyses de journalisation pour générer des informations.
  5. Intégrez-vous à OCI Cache with Redis pour réduire les coûts et améliorer les performances des API de modèle d'IA en mettant en cache les demandes fréquentes.
  6. OCI Functions peut être utilisé comme wrapper autour de modèles d'IA qui n'ont pas d'adresses REST. OCI Functions prend en charge l'implémentation à partir de différents langages tels que Python, Java, Node, Go, Ruby et C#.
  7. Intégrez OCI API Gateway aux services AI directement si le service AI expose les adresses REST.
  8. Oracle Integration Cloud Service peut implémenter des transformations complexes ou une logique d'orchestration avant de renvoyer la sortie d'inférence aux destinataires.

L'architecture comprend les composants suivants :

  • Région

    Une région Oracle Cloud Infrastructure est une zone géographique précise, incluant un ou plusieurs centres de données, appelés domaines de disponibilité. Les régions sont indépendantes les unes des autres et de grandes distances peuvent les séparer (entre pays, voire continents).

  • Domaines de disponibilité

    Les domaines de disponibilité sont des centres de données autonomes indépendants au sein d'une région. Les ressources physiques de chaque domaine de disponibilité sont isolées de celles des autres, ce qui garantit la tolérance aux pannes. Les domaines de disponibilité ne partagent ni infrastructure (par exemple, alimentation, système de refroidissement), ni réseau de domaine de disponibilité interne. Par conséquent, une panne sur un domaine de disponibilité ne doit pas affecter les autres domaines de disponibilité de la région.

  • Domaine de pannes

    Un domaine de pannes est un regroupement de matériel et d'infrastructures au sein d'un domaine de disponibilité. Chaque domaine de disponibilité comporte trois domaines de pannes avec du matériel et une alimentation indépendants. Lorsque vous répartissez les ressources entre plusieurs domaines de pannes, vos applications peuvent tolérer les pannes physiques du serveur, la maintenance du système et les pannes d'alimentation au sein d'un domaine de pannes.

  • Réseau cloud virtuel (VCN) et sous-réseaux

    Un VCN est un réseau personnalisable défini par logiciel que vous configurez dans une région Oracle Cloud Infrastructure. Comme les réseaux de centre de données traditionnels, les réseaux cloud virtuels vous donnent le contrôle sur l'environnement réseau. Un réseau cloud virtuel peut comporter plusieurs blocs CIDR qui ne se chevauchent pas et que vous pouvez modifier après l'avoir créé. Vous pouvez segmenter un réseau cloud virtuel en plusieurs sous-réseaux ciblant une région ou un domaine de disponibilité. Chaque sous-réseau est composé d'une plage contiguë d'adresses qui ne chevauchent pas celles des autres sous-réseaux du réseau cloud virtuel. Vous pouvez modifier la taille d'un sous-réseau après sa création. Un sous-réseau peut être public ou privé.

  • API Gateway

    Oracle API Gateway vous permet de publier des API avec des adresses privées accessibles à partir de votre réseau. Si nécessaire, vous pouvez les rendre visibles sur le réseau Internet public. Les adresses prennent en charge la validation d'API, la transformation des demandes et des réponses, CORS, l'authentification et l'autorisation, ainsi que la limitation des demandes.

  • Functions

    Oracle Cloud Infrastructure Functions est une plate-forme Functions-as-a-Service (FaaS) entièrement gérée, colocative, hautement évolutive, à la demande. Il est optimisé par le moteur open source du projet Fn. Les fonctions vous permettent de déployer votre code et de l'appeler directement ou de le déclencher en réponse à des événements. Oracle Functions utilise des conteneurs Docker hébergés dans Oracle Cloud Infrastructure Registry.

  • Cache avec Redis

    Oracle Cloud Infrastructure Cache with Redis est une solution complète de mise en cache en mémoire gérée qui s'appuie sur Redis open source. Ce service entièrement géré accélère les lectures et écritures de données, améliorant considérablement les temps de réponse des applications et les performances de la base de données pour offrir une expérience client améliorée.

  • Intégration

    Oracle Integration est un service entièrement géré qui permet d'intégrer vos applications, d'automatiser les processus, de bénéficier d'informations sur vos processus métier et de créer des applications visuelles.

  • Vault

    Oracle Cloud Infrastructure Vault permet de gérer de manière centralisée les clés de cryptage qui protègent vos données et les informations d'identification de clé secrète utilisées pour sécuriser l'accès à vos ressources dans le cloud. Vous pouvez utiliser le service Vault pour créer et gérer des coffres, des clés et des clés secrètes.

  • Logging
    Logging est un service hautement évolutif et entièrement géré qui permet d'accéder aux types de journal suivants à partir des ressources du cloud :
    • Journaux d'audit : journaux liés aux événements émis par le service Audit.
    • Journaux de service : journaux émis par des services individuels tels qu'API Gateway, Events, Functions, Load Balancing, Object Storage et les journaux de flux VCN.
    • Journaux personnalisés : journaux contenant des informations de diagnostic issues d'applications personnalisées, d'autres fournisseurs de cloud ou d'un environnement sur site.
  • Monitoring

    Le service Oracle Cloud Infrastructure Monitoring surveille activement et passivement vos ressources cloud à l'aide de mesures pour surveiller les ressources et les alarmes afin de vous informer lorsque ces mesures répondent aux critères des déclencheurs spécifiés par les alarmes.

  • Identity and Access Management (IAM)

    Oracle Cloud Infrastructure Identity and Access Management (IAM) est le plan de contrôle d'accès pour Oracle Cloud Infrastructure (OCI) et Oracle Cloud Applications. L'API IAM et l'interface utilisateur vous permettent de gérer les domaines d'identité et les ressources au sein du domaine d'identité. Chaque domaine d'identité OCI IAM représente une solution autonome de gestion des identités et des accès ou une population d'utilisateurs différente.

  • Règle

    Une stratégie Oracle Cloud Infrastructure Identity and Access Management indique qui peut accéder à quelles ressources et comment. L'accès est accordé au niveau d'un groupe et d'un compartiment, ce qui signifie que vous pouvez écrire une stratégie qui offre à un groupe un type d'accès spécifique dans un compartiment donné ou dans la location.

  • Cache avec Redis

    Oracle Cloud Infrastructure Cache with Redis est une solution complète de mise en cache en mémoire gérée qui s'appuie sur Redis open source. Ce service entièrement géré accélère les lectures et écritures de données, améliorant considérablement les temps de réponse des applications et les performances de la base de données pour offrir une expérience client améliorée.

  • Vision

    Oracle Cloud Infrastructure Vision est un service d'IA permettant d'effectuer des analyses d'images basées sur le deep learning à grande échelle. Avec des modèles prédéfinis disponibles prêts à l'emploi, les développeurs peuvent facilement intégrer la reconnaissance d'images et la reconnaissance de texte dans leurs applications sans expertise en machine learning (ML).

  • Intelligence artificielle générative

    Oracle Cloud Infrastructure Generative AI est un service OCI entièrement géré qui fournit un ensemble de grands modèles de langage de pointe et personnalisables couvrant un large éventail de cas d'emploi pour la génération de texte, la synthèse, la recherche sémantique, etc. Utilisez le playground de test pour essayer les modèles préentraînés prêts à l'emploi, ou créez et hébergez vos propres modèles personnalisés affinés en fonction de vos propres données sur des clusters d'AI dédiés.

  • Analyse des documents

    Oracle Cloud Infrastructure Document Understanding est un service d'IA permettant d'effectuer des analyses de documents basées sur le deep learning à grande échelle. Avec des modèles prédéfinis disponibles prêts à l'emploi, les développeurs peuvent facilement intégrer le traitement intelligent des documents dans leurs applications sans expertise en machine learning (ML).

  • Digital Assistant

    Oracle Digital Assistant est une plate-forme qui vous permet de créer et de déployer des assistants numériques pour vos utilisateurs. Avec Oracle Digital Assistant, vous pouvez créer des interfaces basées sur l'IA (ou chatbots) pour les applications métier via des interfaces texte, de discussion et vocales. Chaque assistant numérique dispose d'un ensemble de briques spécialisées, afin d'aider les utilisateurs à effectuer diverses tâches dans les conversations en langage naturel. Par exemple, un assistant numérique individuel peut avoir des compétences qui se concentrent sur des types spécifiques de tâches telles que le suivi des stocks, la soumission de feuilles de temps et la création de notes de frais.

  • Oracle Database 23ai

    Oracle Database 23ai apporte la puissance de l'IA aux données et applications d'entreprise. La recherche vectorielle Oracle AI permet de rechercher facilement des documents, des images et des données relationnelles stockés dans des bases de données stratégiques en fonction de leur contenu conceptuel.

  • Oracle Autonomous Database Select AI

    Oracle Autonomous Database Select AI permet à Oracle Autonomous Database d'utiliser l'IA générative avec de grands modèles de langage (LLM) pour convertir les entrées utilisateur en SQL Oracle. Oracle Autonomous Database Select AI traite l'invite en langage naturel, la complète avec des métadonnées, puis génère et exécute une requête SQL.

  • Oracle HeatWave Gen IA

    Oracle HeatWave Gen AI avec banque de vecteurs peut être utilisé pour une implémentation de génération augmentée de récupération (RAG) afin d'améliorer la précision et les performances des modèles d'IA.

Points à prendre en compte

Lors de l'implémentation d'OCI API Gateway pour la gestion de l'API de modèle d'IA, tenez compte des éléments suivants :

  • Sécurité

    Les modèles d'IA utilisent de grandes quantités de données d'entreprise. Les équipes de gouvernance doivent veiller à ce que les mesures de sécurité gèrent les données en appliquant des contrôles de masquage, de cryptage et d'accès.

  • Conditions d'utilisation et licences du modèle AI

    Les modèles d'IA tiers sont fournis avec leurs propres licences et conditions de contrat. Les équipes de gouvernance de l'IA doivent connaître les conditions d'utilisation légales pour garantir la conformité lors de l'exposition de modèles via OCI API Gateway.

Remerciements

  • Auteur : Subburam Mathuraiveeran
  • Contributeur : Wei Han, Robert Wunderlich, Pankhuri Sen