Déployer la génération augmentée d'extraction d'IA générative multicloud
Utilisez OCI Generative AI et Oracle Integration dans une solution multicloud telle qu'Oracle Cloud Infrastructure et Microsoft Azure pour interroger les données organisationnelles pertinentes et les utiliser pour fournir des réponses hautement contextualisées.
Dans une architecture RAG, Oracle Integration peut jouer le rôle d'un orchestrateur de données, ce qui garantit que toutes les sources de données pertinentes sont disponibles pour l'extraction. Ensuite, les agents Oracle Cloud Infrastructure Generative AI prennent la relève pour exploiter ces données afin de fournir des réponses riches en contexte.
Les agents OCI GenAI traitent ces données pour fournir une réponse contextuelle en intégrant les documents extraits et en améliorant les réponses générées en interrogeant le modèle de langage volumineux.
Ainsi, bien que les deux soient impliqués dans le cycle de vie des données, leurs rôles sont distincts mais complémentaires dans la création d'une architecture RAG multicloud.
Cette approche RAG multicloud fournit :
- Flexibilité multicloud : l'architecture intègre plusieurs plates-formes cloud (OCI et Azure), ce qui la rend adaptable au paysage des données au sein des entreprises.
- Connectivité hautes performances : Oracle Interconnect for Microsoft Azure assure un transfert de données rapide, sécurisé et fiable entre les environnements cloud.
- Génération de contenu dynamique : l'agent extrait les informations les plus récentes de sources disparates, ce qui garantit que les réponses LLM sont exactes et pertinentes.
- Recherche de document imbriquée : à l'aide des fonctions d'intégration et de la recherche sémantique, les agents OCI GenAI peuvent fournir des informations plus approfondies basées sur le contexte plutôt que sur les correspondances de mots-clés.
Architecture
Cette solution multicloud s'appuie sur des données provenant à la fois de Microsoft Azure et d'Oracle Cloud Infrastructure (OCI), ce qui permet aux agents Oracle Cloud Infrastructure Generative AI d'accéder à un plus large éventail d'informations à jour.
Ensemble, les agents OCI GenAI et Oracle Integration prennent en charge les services de récupération, d'augmentation et de génération (RAG) pour fournir des résultats hautement contextualisés.
Les agents OCI GenAI se concentrent spécifiquement sur l'utilisation de l'IA générative pour répondre aux requêtes des utilisateurs en extrayant des informations pertinentes à partir de bases de connaissances ou de documents pour générer des réponses. L'agent fournit des réponses enrichies tenant compte du contexte en exploitant des techniques d'IA avancées, des incorporations et des découpages de documents pour comprendre et générer du contenu pertinent :
- Extraire : extraire des données pertinentes à partir des sources de connaissances, généralement via une recherche hybride avancée, combinant la recherche lexicale et sémantique.
- Augmenter : utilisez les données extraites pour fournir le contexte d'une requête, en vous assurant que le modèle d'IA générative dispose des informations nécessaires.
- Générer : Utilisez des modèles de langage volumineux (LLM) pour générer des réponses contextuelles aux questions des utilisateurs, souvent améliorées par les données extraites lors des étapes précédentes.
D'autre part, Oracle Integration fournit des services d'intégration qui connectent diverses applications et systèmes, permettant l'orchestration de flux de données dans plusieurs environnements :
- Récupération : facilite l'extraction de données à partir de différentes sources en utilisant des agents de connectivité pour se connecter de manière privée à diverses sources de données ou services (base de données, API REST, stockage cloud, etc.) sur Azure ou d'autres hyperscalers.
- Orchestration/Augmentation : Orchestre les workflows et intègre les données provenant de plusieurs sources, en augmentant les processus en enrichissant les données via des transformations préconfigurées ou dynamiques.
- Gérer le flux de données : contrairement à l'agent RAG, Oracle Integration ne se concentre pas sur la génération de réponses à partir de données, mais plutôt sur la facilitation du mouvement et de la transformation des données entre les systèmes et les applications, en veillant à ce que toutes les données pertinentes soient disponibles pour différents services.
Zone fonctionnelle | Agents OCI GenAI | Oracle Integration |
---|---|---|
Description | Conçu pour fournir des réponses basées sur l'IA en extrayant des données, en les enrichissant et en utilisant un LLM pour générer des réponses. | Conçu pour intégrer et orchestrer les données dans plusieurs applications, offrant une connectivité de données transparente, mais sans les fonctionnalités de génération pilotées par LLM. |
Gestion des données | Utilise les données pour générer des réponses en langage naturel en tenant compte du contexte. | Gère le flux de données entre les applications, agissant comme un pont entre les systèmes sans générer de contenu de la même manière qu'un LLM. |
Fonctionnalités génératives | Possède des fonctionnalités d'IA générative et utilise des LLM pour générer des réponses conversationnelles ou d'autres sorties. | Ne dispose pas de fonctionnalités d'IA générative et est utilisé pour connecter, extraire et transformer des données entre les services. |
Le schéma suivant illustre le flux de données dans l'architecture :
multicloud-genai-rag-process-oracle.zip
- L'utilisateur interagit avec Oracle Digital Assistant ou les agents OCI GenAI, selon l'implémentation, pour fournir des requêtes et des invites utilisateur.
- Oracle Integration orchestre les appels entre différents composants : extraction à partir de sources de données, gestion de l'ingestion de documents et transmission d'invites utilisateur en aval.
- Les sources de données incluent :
- Oracle Interconnect for Microsoft Azure fournit une liaison à bande passante élevée entre OCI et Azure pour les référentiels de documents, Oracle Database@Azure, etc.
- Les référentiels de fichiers locaux fournissent des fichiers sur site ou locaux pour l'assimilation.
- Services OCI, tels qu'Oracle Fusion Cloud Enterprise Resource Planning.
- Oracle Database@Azure dans un sous-réseau délégué pour le partage de données entre les services gérés par Oracle sur Azure.
- Le processus d'ingestion, de découpage et d'intégration de documents peut être implémenté de différentes manières :
- Oracle Integration (à l'aide de bibliothèques JavaScript intégrées ou personnalisées) effectue le découpage et appelle OCI Generative AI pour l'intégrer.
- OCI Functions reçoit des documents, les découpe, puis appelle OCI Generative AI pour les incorporations.
- Oracle Autonomous Database 23ai effectue le découpage et l'intégration à l'aide de la fonctionnalité vectorielle.
Le résultat standard est un ensemble de fragments de texte et d'intégrations vectorielles entièrement gérés dans le contexte multicloud.
- Les vecteurs et les blocs sont stockés dans Oracle Autonomous Database 23ai :
- L'approche standard consiste à stocker les incorporations dans l'index vectoriel d'Oracle Autonomous Database 23ai.
- Le texte de bloc lui-même peut également être stocké directement dans un CLOB de base de données (pour une extraction rapide), ou en tant que références pointant vers le texte de bloc dans OCI Object Storage ou dans Azure Data Lake.
- OCI Object Storage peut stocker les documents d'origine si nécessaire, mais vous n'avez pas nécessairement besoin de conserver les incorporations si vous interrogez la banque de vecteurs dans la base de données.
- Lorsque l'utilisateur invite une question, les agents OCI GenAI (ou l'assistant numérique) appellent Oracle Autonomous Database 23ai pour effectuer une recherche de similarité vectorielle à l'aide de l'intégration de l'invite utilisateur afin d'identifier les meilleurs blocs correspondants en fonction des scores de similarité vectorielle.
- OCI Generative AI génère des incorporations pour les questions et les blocs de documents et génère des réponses à l'aide de modèles de LLM, en fournissant des réponses enrichies en contexte. L'extraction de bloc et la réponse LLM dépendent également de l'implémentation :
- Si un bloc de texte est stocké dans la base de données, il peut être récupéré directement.
- Si seules les références sont stockées, le système extrait rapidement le contenu de bloc réel à partir d'OCI Object Storage, d'Azure Data Lake ou d'un autre référentiel.
- Les blocs pertinents sont ensuite transmis au LLM dans OCI Generative AI avec l'invite d'origine de l'utilisateur pour produire une réponse enrichie en contexte.
- La réponse finale est renvoyée par Oracle Digital Assistant ou par l'interface des agents OCI GenAI, en fonction du front-end auquel l'utilisateur est connecté.
Le diagramme suivant illustre l'architecture :
multicloud-genai-rag-architecture-oracle.zip
- Région Microsoft Azure
Une région Azure est une zone géographique dans laquelle résident un ou plusieurs centres de données Azure physiques, appelés zones de disponibilité. Les régions sont indépendantes les unes des autres et de grandes distances peuvent les séparer (entre les pays ou même les continents).
Les régions Azure et OCI sont des zones géographiques localisées. Pour Oracle Database@Azure, une région Azure est connectée à une région OCI, avec des zones de disponibilité (AZ) dans Azure connectées à des domaines de disponibilité dans OCI. Les paires de régions Azure et OCI sont sélectionnées pour minimiser la distance et la latence.
- Zone de disponibilité de Microsoft Azure
Une zone de disponibilité est un centre de données physiquement séparé au sein d'une région conçu pour être hautement disponible et tolérant aux pannes. Les zones de disponibilité sont suffisamment proches pour avoir des connexions à faible latence avec d'autres zones de disponibilité.
- Réseau virtuel Microsoft Azure
Le réseau virtuel Microsoft Azure (VNet) est le bloc de construction fondamental pour un réseau privé dans Azure. VNet permet à de nombreux types de ressources Azure, telles que les machines virtuelles (VM) Azure, de communiquer en toute sécurité entre elles, avec Internet et avec des réseaux sur site.
- Sous-réseau délégué Microsoft Azure
La délégation de sous-réseau vous permet d'injecter un service géré, en particulier un service de plate-forme en tant que service (PaaS), directement dans votre réseau virtuel. Un sous-réseau délégué peut être un répertoire de base pour un service géré en externe au sein de votre réseau virtuel afin que le service externe agisse en tant que ressource de réseau virtuel, même s'il s'agit d'un service PaaS externe.
- Stockage de lac de données Microsoft Azure
Data Lake Storage est une solution de lac de données d'entreprise basée sur le cloud. Il est conçu pour stocker des quantités massives de données dans n'importe quel format et pour faciliter les charges de travail analytiques du Big Data. Vous l'utilisez pour capturer des données de tout type et de toute vitesse d'assimilation à un seul emplacement afin de faciliter l'accès et l'analyse à l'aide de différentes structures.
- Microsoft Azure Synapse Analytics
Azure Synapse Analytics combine un service centralisé pour le stockage et le traitement des données avec une architecture de service liée extensible qui vous permet d'intégrer des banques de données, des plateformes de traitement et des outils de visualisation couramment utilisés.
Oracle Cloud Infrastructure fournit 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 les pays ou même les continents).
- Domaine 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.
- 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é.
- Table de routage
Les tables de routage virtuelles contiennent des règles pour acheminer le trafic des sous-réseaux vers des destinations en dehors d'un VCN, généralement via des passerelles.
- Liste de sécurité
Pour chaque sous-réseau, vous pouvez créer des règles de sécurité qui indiquent la source, la destination et le type de trafic qui doivent être autorisés à entrer et à sortir du sous-réseau.
- 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, personnalisables et 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.
- Intégration
Oracle Integration est un environnement entièrement géré et préconfiguré qui vous permet d'intégrer des applications cloud et sur site, d'automatiser les processus métier et de développer des applications visuelles. Il utilise un serveur de fichiers compatible SFTP pour stocker et extraire des fichiers et vous permet d'échanger des documents avec des partenaires commerciaux interentreprises en utilisant un portefeuille de centaines d'adaptateurs et de recettes pour vous connecter à Oracle et à des applications tierces.
- Object Storage
OCI Object Storage fournit un accès rapide à de grandes quantités de données, structurées ou non, de tout type de contenu, y compris des sauvegardes de base de données, des données analytiques et du contenu riche tel que des images et des vidéos. Vous pouvez stocker les données directement à partir d'Internet ou de la plate-forme cloud, et ce, en toute sécurité. Vous pouvez redimensionner le stockage sans dégradation des performances ni de la fiabilité des services.
Utilisez le stockage standard pour le stockage "à chaud" auquel vous devez accéder rapidement, immédiatement et fréquemment. Utilisez le stockage d'archive pour le stockage "à froid" que vous conservez pendant de longues périodes et auquel vous accédez rarement.
- Fonctions
Oracle Cloud Infrastructure Functions est une plate-forme Functions-as-a-Service (FaaS) entièrement gérée, colocative, hautement évolutive et à la demande. Il est optimisé par le moteur open source du projet Fn. OCI Functions vous permet de déployer votre code et de l'appeler directement ou de le déclencher en réponse à des événements. OCI Functions utilise des conteneurs Docker hébergés dans Oracle Cloud Infrastructure Registry.
- Analytics
Oracle Analytics Cloud est un service cloud public évolutif et sécurisé qui permet aux analystes d'entreprise d'utiliser des fonctions d'analyse modernes en libre-service basées sur l'IA pour la préparation des données, la visualisation, le reporting d'entreprise, l'analyse augmentée, ainsi que le traitement et la génération du langage naturel. Avec Oracle Analytics Cloud, vous bénéficiez également de fonctionnalités de gestion des services flexibles, notamment une configuration rapide, une mise à l'échelle et des correctifs faciles, ainsi qu'une gestion automatisée du cycle de vie.
- Digital Assistant
Oracle Digital Assistant est une plate-forme qui vous permet de créer et de déployer des assistants numériques destinés à 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 pour 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.
- Autonomous Database
Oracle Autonomous Database est un environnement de base de données entièrement géré et préconfiguré que vous pouvez utiliser pour le traitement des transactions et les charges de travail d'entreposage de données. Vous n'avez pas à configurer ni à gérer le matériel, ni à installer de logiciel. Oracle Cloud Infrastructure gère la création, la sauvegarde, l'application de patches, la mise à niveau et le réglage de la base de données.
En savoir plus
En savoir plus sur les fonctionnalités de cette architecture et sur les architectures associées.
-
RAG vers la réalité : amplifier l'IA et réduire les coûts (blog)
-
Conception d'une pile d'IA générative de niveau entreprise sur Oracle Cloud Infrastructure
-
Implémenter la génération augmentée d'extraction à l'aide d'Oracle Integration
-
Activer les intégrations multicloud d'Oracle Cloud ERP à Microsoft Azure SQL Database
-
En savoir plus sur Oracle Maximum Availability Architecture pour Oracle Database@Azure
-
En savoir plus sur la sélection de topologies réseau pour Oracle Database@Azure