Déployer une génération augmentée d'extraction d'IA générative multinuage (RAG)
Utilisez l'IA générative OCI et Oracle Integration dans une solution multinuage 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, garantissant 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 tirer parti de 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 LLLM (Large Language Model).
Ainsi, alors que les deux sont impliqués dans le cycle de vie des données, leurs rôles sont distincts mais complémentaires dans la construction d'une architecture RAG multinuage.
Cette approche RAG multinuage offre ce qui suit :
- Flexibilité multinuage : 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é haute performance : Oracle Interconnect pour Microsoft Azure assure un transfert de données rapide, sécurisé et fiable entre les environnements en nuage.
- 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 documents intégrée : À l'aide des intégrations et de la recherche sémantique, les agents OCI GenAI peuvent fournir des données clés plus précises en fonction du contexte plutôt que de simples correspondances de mots clés.
Architecture
Cette solution multinuage utilise 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.
Les agents OCI GenAI et Oracle Integration prennent ensemble en charge les services d'extraction, 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 interrogations d'utilisateur en extrayant des informations pertinentes des bases de connaissances ou des documents pour générer des réponses. L'agent fournit des réponses enrichies et adaptées au contexte en tirant parti de techniques d'IA avancées, d'intégrations et de fragmentation de documents pour comprendre et générer du contenu pertinent :
- Extraire : Extraire les données pertinentes à partir des sources de connaissances, généralement au moyen d'une recherche hybride avancée, combinant la recherche lexicale et sémantique.
- Augmentation : Utilisez les données extraites pour fournir le contexte d'une interrogation, en vous assurant que le modèle d'IA générative contient les informations nécessaires.
- Générer : Utilisez des modèles de langue volumineux (LLM) pour générer des réponses contextuelles aux questions de l'utilisateur, souvent améliorées par les données extraites dans les étapes précédentes.
Oracle Integration, en revanche, fournit des services d'intégration qui connectent diverses applications et systèmes, permettant l'orchestration de flux de données dans plusieurs environnements :
- Extraction : Facilite l'extraction de données à partir de différentes sources en utilisant des agents de connectivité pour se connecter en privé à diverses sources de données ou services (base de données, API REST, stockage en nuage, etc.) sur Azure ou d'autres hyperscalers.
- Orchestration/augmentation : Orchestration des flux de travail et intégration des données provenant de plusieurs sources, augmentation des processus en enrichissant les données au moyen de transformations préconfigurées ou dynamiques.
- Gérer le flux de données : Contrairement à l'agent RAG, Oracle Integration ne vise pas à générer des réponses à partir des données, mais plutôt à permettre le déplacement et 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.
Environnement fonctionnel | Agents OCI GenAI | Oracle Integration |
---|---|---|
Objet | Conçu pour fournir des réponses basées sur l'IA en récupérant des données, en les augmentant 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 capacités de génération axées sur le LLM. |
Traitement 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. |
Capacités génératives | Possède des capacités d'IA générative et utilise des LLM pour générer des réponses conversationnelles ou d'autres sorties. | N'a pas de capacités d'IA générative et est utilisée pour connecter, extraire et transformer des données dans l'ensemble des services. |
Le diagramme 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 la mise en oeuvre, pour transmettre des interrogations et des invites d'utilisateur.
- Oracle Integration orchestre les appels entre différents composants : extraction à partir de sources de données, traitement de l'ingestion de documents et transmission d'invites d'utilisateur en aval.
- Les sources de données comprennent :
- Oracle Interconnect pour Microsoft Azure fournit un lien à large bande passante 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 place ou locaux pour l'ingestion.
- 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 fragmentation et d'intégration de documents peut être implémenté de différentes manières :
- Oracle Integration (à l'aide de bibliothèques intégrées JavaScript ou personnalisées) effectue la fragmentation et appelle l'IA générative OCI à intégrer.
- Le service des fonctions pour OCI reçoit des documents, les fragmente, puis appelle l'intelligence artificielle générative OCI pour les intégrations.
- Oracle Autonomous Database 23ai effectue la fragmentation et l'intégration à l'aide de la fonctionnalité de vecteur.
Le résultat standard est un ensemble d'incorporations de fragments de texte et de vecteurs entièrement gérés dans le contexte multinuage.
- Les secteurs et les fragments sont stockés dans Oracle Autonomous Database 23ai :
- L'approche standard consiste à stocker des intégrations dans l'index vectoriel d'Oracle Autonomous Database 23ai.
- Le texte de tranche de mémoire lui-même peut également être stocké directement dans un objet CLOB de base de données (pour une extraction rapide), ou en tant que références qui pointent vers le texte de tranche de mémoire dans le stockage d'objets OCI ou dans le lac de données Azure.
- Le service Stockage d'objets OCI peut stocker les documents initiaux si nécessaire, mais vous n'avez pas nécessairement besoin d'y conserver des intégrations si vous interrogez le magasin 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 d'utilisateur afin d'identifier les fragments qui correspondent le mieux en fonction des notes de similarité vectorielle.
- L'IA générative OCI génère des intégrations pour les questions et les fragments de document et génère des réponses à l'aide de modèles LLM, fournissant des réponses enrichies en contexte. L'extraction de fragments et la réponse LLM dépendent également de la mise en oeuvre :
- Si le texte de fragmentation est stocké dans la base de données, il peut être extrait directement.
- Si seules les références sont stockées, le système extrait rapidement le contenu de tranche de mémoire réel à partir du stockage d'objets OCI, du lac de données Azure ou d'un autre référentiel.
- Les fragments pertinents sont ensuite transmis au LLM dans l'intelligence artificielle générative OCI, ainsi que l'invite initiale de l'utilisateur pour produire une réponse enrichie en contexte.
- La réponse finale est retournée par Oracle Digital Assistant ou par l'interface d'agents OCI GenAI, selon l'extrémité frontale à laquelle l'utilisateur est connecté.
Le diagramme suivant présente l'architecture :
architecture multicloud-genai-rag-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 des pays ou même des 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é dans Azure connectées à des domaines de disponibilité dans OCI. Les paires de régions Azure et OCI sont sélectionnées pour réduire la distance et la latence.
- Zone de disponibilité de Microsoft Azure
Une zone de disponibilité est un centre de données physiquement distinct dans 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 vers d'autres zones de disponibilité.
- Réseau virtuel Microsoft Azure
Le réseau virtuel Microsoft Azure (VNet) est l'élément fondamental d'un réseau privé dans Azure. VNet permet à de nombreux types de ressources Azure, telles que les machines virtuelles Azure, de communiquer en toute sécurité les unes avec les autres, avec Internet et avec les réseaux sur place.
- 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-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é à l'externe dans 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 nuage. 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 d'analyse de mégadonnées. Vous l'utilisez pour saisir des données de tout type et de toute vitesse d'ingestion dans un seul emplacement afin de faciliter l'accès et l'analyse à l'aide de divers cadres.
- 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é extensible qui vous permet d'intégrer des magasins de données, des plates-formes de traitement et des outils de visualisation couramment utilisés.
Oracle Cloud Infrastructure comprend les composants suivants :
- Région
Une région Oracle Cloud Infrastructure est une zone géographique localisée qui contient 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 des pays ou même des continents).
- Domaine de disponibilité
Les domaines de disponibilité sont des centres de données indépendants et autonomes dans une région. Les ressources physiques de chaque domaine de disponibilité sont isolées des ressources des autres domaines de disponibilité, ce qui garantit la tolérance aux pannes. Les domaines de disponibilité ne partagent pas les éléments d'infrastructure (alimentation ou refroidissement, par exemple) ni le réseau de domaines de disponibilité interne. Ainsi, une défaillance d'un domaine de disponibilité ne devrait pas affecter les autres domaines de disponibilité de la région.
- Réseau en nuage virtuel (VCN) et sous-réseau
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 en nuage virtuels traditionnels, ils vous offrent un contrôle sur votre environnement de réseau. Un VCN peut disposer de plusieurs blocs CIDR sans chevauchement que vous pouvez modifier après avoir créé le VCN. Vous pouvez segmenter un VCN en sous-réseaux, dont la portée peut concerner une région ou un domaine de disponibilité. Un sous-réseau est constitué d'un intervalle contigu d'adresses qui ne chevauchent pas les autres sous-réseaux dans le réseau en nuage 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 au moyen de passerelles.
- Liste de sécurité
Pour chaque sous-réseau, vous pouvez créer des règles de sécurité qui spécifient 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 jeu de modèles de langage (LLM) de pointe, personnalisables et volumineux, qui couvrent un large éventail de cas d'utilisation pour la génération de texte, la récapitulation, la recherche sémantique, etc. Utilisez le terrain de jeu pour tester les modèles préentraînés prêts à l'emploi, ou créez et hébergez vos propres modèles personnalisés réglés avec précision à l'aide de vos données dans des grappes dédiées à l'IA.
- Intégration
Oracle Integration est un environnement préconfiguré entièrement géré qui vous permet d'intégrer des applications en nuage et sur place, d'automatiser les processus d'affaires et de développer des applications visuelles. Il utilise un serveur de fichiers conforme à 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 à des applications Oracle et tierces.
- Stockage d'objets
Le service de stockage d'objets pour OCI offre un accès rapide à de grandes quantités de données structurées et non structurées de tous types, notamment des sauvegardes de base de données, des données analytiques et du contenu riche, comme des images et des vidéos. Vous pouvez stocker des données en toute sécurité directement à partir d'Internet ou de la plate-forme en nuage. Vous pouvez adapter le stockage sans que la performance ou la fiabilité des services soit affectée.
Utilisez le stockage standard pour le stockage "à chaud" auquel vous devez accéder rapidement, immédiatement et fréquemment. Utilisez le stockage d'archives pour le stockage "à froid" que vous retenez pendant de longues périodes et auquel vous accédez rarement.
- Fonctions
Oracle Cloud Infrastructure Functions est une plate-forme de fonctions-service (FaaS), entièrement gérée, multilocataire, hautement évolutive et sur demande. Il est alimenté par le moteur open source Fn Project. Le service Fonctions OCI vous permet de déployer votre code et de l'appeler directement ou de le déclencher en réponse à des événements. Le service des fonctions pour OCI utilise des conteneurs Docker hébergés dans Oracle Cloud Infrastructure Registry.
- Analyse
Oracle Analytics Cloud est un service en nuage public évolutif et sécurisé qui habilite les analystes d'affaires grâce à des capacités d'analyse libre-service modernes et alimentées par l'intelligence artificielle pour la préparation et la visualisation de données, la production de rapports d'entreprise, l'analyse augmentée et la génération et le traitement du langage naturel. Grâce à Oracle Analytics Cloud, vous bénéficiez également de fonctionnalités flexibles de gestion du service, 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 pour vos utilisateurs. Avec Oracle Digital Assistant, vous pouvez créer des interfaces (ou des agents conversationnels) basées sur l'intelligence artificielle pour des applications d'affaires au moyen d'interfaces de texte, de clavardage et vocales. Chaque assistant numérique possède un ensemble d'une ou de plusieurs compétences spécialisées pour aider les utilisateurs à effectuer diverses tâches dans des conversations en langage naturel. Par exemple, un assistant numérique peut avoir des compétences axées sur des types particuliers de tâches, comme le suivi des stocks, la soumission des feuilles de temps et la création des rapports de frais.
- Autonomous Database
Oracle Autonomous Database est un environnement de base de données préconfiguré entièrement géré que vous pouvez utiliser pour le traitement des transactions et les charges de travail d'entreposage de données. Il n'est pas nécessaire de configurer ou de gérer du matériel ni d'installer des logiciels. Oracle Cloud Infrastructure gère la création, la sauvegarde, l'application de correctifs, la mise à niveau et le réglage de la base de données.
Informations complémentaires
En savoir plus sur les caractéristiques de cette architecture et sur les architectures connexes.
-
RAG vers la réalité : Amplifier l'IA et réduire les coûts (blogue)
-
Mettre en oeuvre la génération augmentée avec extraction à l'aide d'Oracle Integration
-
Intégrations à plusieurs nuages 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 de réseau pour Oracle Database@Azure