Insights Temps Réel: Kafka vers Bedrock

L’intelligence artificielle évolue rapidement, avec la génération augmentée de récupération (RAG) qui émerge comme une technique essentielle. RAG permet aux systèmes d’IA de fournir des réponses plus éclairées et contextuellement pertinentes en intégrant de manière transparente les capacités des modèles d’IA générative avec des sources de données externes. Cette approche transcende les limitations consistant à s’appuyer uniquement sur la base de connaissances préexistante d’un modèle. Dans cet article, nous explorons le potentiel transformateur des connecteurs de données personnalisés au sein des bases de connaissances Amazon Bedrock, en montrant comment ils rationalisent la création de flux de travail RAG qui exploitent des données d’entrée personnalisées. Cette fonctionnalité permet aux bases de connaissances Amazon Bedrock d’ingérer des données en continu, permettant aux développeurs d’ajouter, de mettre à jour ou de supprimer dynamiquement des informations dans leurs bases de connaissances via des appels d’API directs.

Considérez la myriade d’applications où l’ingestion de données en temps réel est essentielle : l’analyse des modèles de flux de clics, le traitement des transactions par carte de crédit, l’interprétation des données des capteurs de l’Internet des objets (IoT), la réalisation d’analyses de journaux et la surveillance des prix des matières premières. Dans de tels scénarios, les données actuelles et les tendances historiques jouent un rôle essentiel dans la prise de décisions éclairées. Traditionnellement, l’intégration de ces entrées de données critiques nécessitait de stocker les données dans une source de données prise en charge, suivie du lancement ou de la planification d’une tâche de synchronisation des données. La durée de ce processus variait en fonction de la qualité et du volume des données. Cependant, grâce aux connecteurs de données personnalisés, les organisations peuvent ingérer rapidement des documents spécifiques provenant de sources de données personnalisées sans avoir besoin d’une synchronisation complète, et ingérer des données en continu sans dépendre d’un stockage intermédiaire. Cette approche minimise les retards et élimine les frais généraux de stockage, ce qui permet un accès plus rapide aux données, une latence réduite et des performances applicatives améliorées.

Avec l’ingestion en continu via des connecteurs personnalisés, les bases de connaissances Amazon Bedrock peuvent traiter les données en continu sans avoir besoin de sources de données intermédiaires. Cela permet de rendre les données disponibles en quasi temps réel. Cette capacité segmente et convertit automatiquement les données d’entrée en intégrations à l’aide du modèle Amazon Bedrock choisi, en stockant le tout dans la base de données vectorielle backend. Ce processus rationalisé s’applique aux bases de données nouvelles et existantes, vous permettant de vous concentrer sur la création d’applications d’IA sans avoir à orchestrer le chunking des données, la génération d’intégrations ou le provisionnement et l’indexation du magasin de vecteurs. De plus, la possibilité d’ingérer des documents spécifiques provenant de sources de données personnalisées réduit la latence et diminue les coûts opérationnels en éliminant les besoins de stockage intermédiaire.

Amazon Bedrock : une base pour l’IA générative

Amazon Bedrock est un service entièrement géré qui offre une sélection variée de modèles de base (FM) haute performance provenant d’entreprises d’IA de premier plan telles qu’Anthropic, Cohere, Meta, Stability AI et Amazon, accessibles via une API unifiée. Ce service complet offre un large éventail de capacités qui vous permettent de développer des applications d’IA générative avec une sécurité, une confidentialité et des fonctionnalités d’IA responsables robustes. Avec Amazon Bedrock, vous pouvez explorer et évaluer les FM de premier plan pour votre cas d’utilisation spécifique, les personnaliser en privé avec vos propres données à l’aide de techniques telles que le réglage fin et le RAG, et construire des agents intelligents qui peuvent exécuter des tâches à l’aide de vos systèmes d’entreprise et de vos sources de données.

Bases de connaissances Amazon Bedrock : augmenter l’IA avec des connaissances

Les bases de connaissances Amazon Bedrock permettent aux organisations de créer des pipelines RAG entièrement gérés qui enrichissent les réponses de l’IA avec des informations contextuelles provenant de sources de données privées. Cela conduit à des interactions plus pertinentes, précises et personnalisées. En tirant parti des bases de connaissances Amazon Bedrock, vous pouvez créer des applications qui sont améliorées par le contexte obtenu en interrogeant une base de connaissances. Cela accélère la mise sur le marché en masquant les complexités de la construction de pipelines et en fournissant une solution RAG prête à l’emploi. Cela réduit le temps de développement de vos applications.

Connecteurs personnalisés : la clé d’une ingestion en continu transparente

Les bases de connaissances Amazon Bedrock prennent en charge les connecteurs personnalisés et l’ingestion de données en continu. Cela vous permet d’ajouter, de mettre à jour et de supprimer des données dans votre base de connaissances via des appels d’API directs, offrant une flexibilité et un contrôle sans précédent.

Créer un analyseur de cours boursiers d’IA générative avec RAG : aperçu de la solution

Dans cet article, nous démontrons une architecture RAG utilisant les bases de connaissances Amazon Bedrock, les connecteurs personnalisés et les sujets créés avec Amazon Managed Streaming for Apache Kafka (Amazon MSK) pour permettre aux utilisateurs d’analyser les tendances des cours boursiers. Amazon MSK est un service de données en continu qui simplifie la gestion de l’infrastructure et des opérations Apache Kafka, ce qui facilite l’exécution des applications Apache Kafka sur Amazon Web Services (AWS). La solution permet une analyse en temps réel des commentaires des clients via des intégrations vectorielles et de grands modèles linguistiques (LLM).

Composants architecturaux

L’architecture comprend deux composants principaux :

  • Flux de travail de prétraitement des données en continu :

    1. Un fichier .csv contenant les données des cours boursiers est téléchargé vers un sujet MSK, simulant une entrée en continu.
    2. Cela déclenche une fonction AWS Lambda.
    3. La fonction ingère les données consommées dans une base de connaissances.
    4. La base de connaissances utilise un modèle d’intégrations pour transformer les données en un index vectoriel.
    5. L’index vectoriel est stocké dans une base de données vectorielle au sein de la base de connaissances.
  • Exécution au moment de l’exécution pendant les requêtes utilisateur :

    1. Les utilisateurs soumettent des requêtes sur les cours boursiers.
    2. Le modèle de base utilise la base de connaissances pour trouver des réponses pertinentes.
    3. La base de connaissances renvoie les documents pertinents.
    4. L’utilisateur reçoit une réponse basée sur ces documents.

Conception de la mise en œuvre : un guide étape par étape

La mise en œuvre comprend les étapes clés suivantes :

  1. Configuration de la source de données : configurez un sujet MSK pour diffuser en continu les cours boursiers d’entrée.
  2. Configuration des bases de connaissances Amazon Bedrock : créez une base de connaissances dans Amazon Bedrock en utilisant l’option de création rapide d’un nouveau magasin de vecteurs, qui provisionne et configure automatiquement le magasin de vecteurs.
  3. Consommation et ingestion des données : chaque fois que des données arrivent dans le sujet MSK, déclenchez une fonction Lambda pour extraire les indices boursiers, les prix et les informations d’horodatage et alimentez le connecteur personnalisé pour les bases de connaissances Amazon Bedrock.
  4. Test de la base de connaissances : évaluez l’analyse des commentaires des clients à l’aide de la base de connaissances.

Présentation de la solution : création de votre outil d’analyse boursière

Suivez les instructions des sections ci-dessous pour créer un outil d’analyse boursière d’IA générative à l’aide des bases de connaissances Amazon Bedrock et des connecteurs personnalisés.

Configuration de l’architecture : déploiement du modèle CloudFormation

Pour mettre en œuvre cette architecture, déployez le modèle AWS CloudFormation à partir de ce référentiel GitHub dans votre compte AWS. Ce modèle déploie les composants suivants :

  1. Des clouds privés virtuels (VPC), des sous-réseaux, des groupes de sécurité et des rôles AWS Identity and Access Management (IAM).
  2. Un cluster MSK hébergeant un sujet d’entrée Apache Kafka.
  3. Une fonction Lambda pour consommer les données du sujet Apache Kafka.
  4. Un bloc-notes Amazon SageMaker Studio pour la configuration et l’activation.

Création d’un sujet Apache Kafka : configuration du flux de données

Dans le cluster MSK précréé, les brokers sont déjà déployés et prêts à être utilisés. L’étape suivante consiste à se connecter au cluster MSK et à créer le sujet de flux de test à l’aide d’une instance de terminal SageMaker Studio. Suivez les instructions détaillées à l’adresse Créer un sujet dans le cluster Amazon MSK.

Les étapes générales sont les suivantes :

  1. Téléchargez et installez le dernier client Apache Kafka.
  2. Connectez-vous à l’instance de broker de cluster MSK.
  3. Créez le sujet de flux de test sur l’instance de broker.

Création d’une base de connaissances dans Amazon Bedrock : connexion à vos données

Pour créer une base de connaissances dans Amazon Bedrock, procédez comme suit :

  1. Dans la console Amazon Bedrock, dans la page de navigation de gauche sous Outils de création, choisissez Bases de connaissances.
  2. Pour lancer la création de la base de connaissances, dans le menu déroulant Créer, choisissez Base de connaissances avec magasin de vecteurs, comme illustré dans la capture d’écran suivante.
  3. Dans le volet Fournir les détails de la base de connaissances, entrez BedrockStreamIngestKnowledgeBase comme Nom de la base de connaissances.
  4. Sous Autorisations IAM, choisissez l’option par défaut, Créer et utiliser un nouveau rôle de service, et (facultatif) fournissez un Nom de rôle de service, comme illustré dans la capture d’écran suivante.
  5. Dans le volet Choisir une source de données, sélectionnez Personnalisé comme source de données où votre ensemble de données est stocké
  6. Choisissez Suivant, comme illustré dans la capture d’écran suivante
  7. Dans le volet Configurer la source de données, entrez BedrockStreamIngestKBCustomDS comme Nom de la source de données.
  8. Sous Stratégie d’analyse, sélectionnez Analyseur par défaut Amazon Bedrock et pour Stratégie de chunking, choisissez Chunking par défaut. Choisissez Suivant, comme illustré dans la capture d’écran suivante.
  9. Dans le volet Sélectionner un modèle d’intégrations et configurer un magasin de vecteurs, pour Modèle d’intégrations, choisissez Titan Text Embeddings v2. Pour Type d’intégrations, choisissez Intégrations vectorielles à virgule flottante. Pour Dimensions vectorielles, sélectionnez 1024, comme illustré dans la capture d’écran suivante. Assurez-vous d’avoir demandé et reçu l’accès au FM choisi dans Amazon Bedrock. Pour en savoir plus, consultez Ajouter ou supprimer l’accès aux modèles de base Amazon Bedrock.
  10. Dans le volet Base de données vectorielle, sélectionnez Créer rapidement un nouveau magasin de vecteurs et choisissez la nouvelle option Amazon OpenSearch Serverless comme magasin de vecteurs.
  11. Sur l’écran suivant, vérifiez vos sélections. Pour finaliser la configuration, choisissez Créer.
  12. En quelques minutes, la console affichera votre base de connaissances nouvellement créée.

Configuration du consommateur Apache Kafka AWS Lambda : déclenchement de l’ingestion des données

Maintenant, configurez la fonction Lambda du consommateur pour qu’elle se déclenche dès que le sujet Apache Kafka d’entrée reçoit des données à l’aide d’appels d’API.

  1. Configurez manuellement l’ID de base de connaissances Amazon Bedrock et son ID de source de données personnalisé en tant que variables d’environnement dans la fonction Lambda. Lorsque vous utilisez le bloc-notes d’exemple, les noms de fonction et les ID référencés seront renseignés automatiquement.

Exploration approfondie : dévoilement de la puissance des bases de connaissances Amazon Bedrock avec des connecteurs personnalisés pour l’ingestion de données en temps réel

La convergence de l’IA générative et des flux de données en temps réel ouvre des opportunités sans précédent pour les entreprises d’obtenir des informations plus approfondies, d’automatiser les processus critiques et de fournir des expériences personnalisées. Les bases de connaissances Amazon Bedrock, associées à des connecteurs personnalisés, sont à l’avant-garde de cette révolution, permettant aux organisations d’intégrer de manière transparente les données en continu provenant de diverses sources comme Apache Kafka dans leurs applications basées sur l’IA.

Cette capacité transcende les limitations des méthodes d’ingestion de données traditionnelles, qui impliquent souvent des processus complexes de stockage, de transformation et de synchronisation. Grâce aux connecteurs personnalisés, les données peuvent être ingérées directement dans la base de connaissances en quasi temps réel, éliminant ainsi la latence et permettant aux modèles d’IA de réagir de manière dynamique aux conditions changeantes.

Cas d’utilisation dans tous les secteurs

Les avantages de cette approche sont considérables et applicables à un large éventail de secteurs.

  • Services financiers : les banques et les sociétés d’investissement peuvent tirer parti des données de marché en temps réel et des flux de transactions des clients pour détecter la fraude, personnaliser les recommandations d’investissement et automatiser les stratégies de négociation. Imaginez un système basé sur l’IA qui analyse les transactions par carte de crédit en temps réel, signalant les activités suspectes et empêchant les achats frauduleux avant qu’ils ne se produisent.
  • Vente au détail : les entreprises de commerce électronique peuvent analyser les données de flux de clics et les flux de médias sociaux pour comprendre le comportement des clients, personnaliser les recommandations de produits et optimiser les stratégies de tarification. Cela permet des ajustements dynamiques aux campagnes de marketing et à la gestion des stocks en fonction de la demande en temps réel.
  • Fabrication : les fabricants peuvent utiliser les données des capteurs IoT provenant des équipements d’usine pour prévoir les besoins de maintenance, optimiser les processus de production et améliorer la qualité des produits. Par exemple, un système d’IA peut analyser les données de vibration d’une machine pour identifier les pannes potentielles avant qu’elles n’entraînent des temps d’arrêt coûteux.
  • Santé : les hôpitaux peuvent analyser les flux de données des patients pour détecter les signes précoces de maladie, personnaliser les plans de traitement et améliorer les résultats pour les patients. La surveillance en temps réel des signes vitaux peut alerter le personnel médical des changements critiques dans l’état d’un patient, permettant une intervention plus rapide et des soins améliorés.

Avantages clés : au-delà des données en temps réel

Les avantages de l’utilisation des bases de connaissances Amazon Bedrock avec des connecteurs personnalisés vont au-delà de la simple ingestion de données en temps réel.

  • Latence réduite : en éliminant le besoin de stockage intermédiaire et de processus de synchronisation, les organisations peuvent réduire considérablement le temps nécessaire pour rendre les données disponibles aux modèles d’IA. Cela se traduit par des temps de réponse plus rapides et des applications plus dynamiques.
  • Coûts opérationnels réduits : les connecteurs personnalisés réduisent les coûts opérationnels en éliminant le besoin de gérer et de maintenir des pipelines de données complexes. Cela libère des ressources précieuses qui peuvent être investies dans d’autres domaines de l’entreprise.
  • Amélioration de la qualité des données : en ingérant les données directement à partir de la source, les organisations peuvent s’assurer que leurs modèles d’IA fonctionnent avec les informations les plus précises et les plus récentes. Cela conduit à de meilleures informations et à des résultats plus fiables.
  • Flexibilité accrue : les connecteurs personnalisés permettent aux organisations de se connecter à un large éventail de sources de données, quel que soit leur format ou leur emplacement. Cela offre la flexibilité d’exploiter tous leurs actifs de données, quel que soit l’endroit où ils sont stockés.
  • Développement simplifié : les bases de connaissances Amazon Bedrock offrent une expérience de développement simplifiée en masquant les complexités de l’ingestion et de la gestion des données. Cela permet aux développeurs de se concentrer sur la création d’applications d’IA qui offrent une réelle valeur commerciale.

Exploration plus approfondie : connecteurs personnalisés en coulisses

Pour apprécier pleinement la puissance des connecteurs personnalisés, il est important de comprendre comment ils fonctionnent. Un connecteur personnalisé est essentiellement un élément de code qui permet aux bases de connaissances Amazon Bedrock de se connecter à une source de données spécifique. Ce code est responsable de l’extraction des données de la source, de leur transformation dans un format compatible avec la base de connaissances et de leur ingestion dans le système.

  • Intégration d’API : les connecteurs personnalisés interagissent généralement avec les sources de données via des API. Ces API fournissent un moyen normalisé d’accéder aux données et d’effectuer des opérations.
  • Transformation des données : la transformation des données est une étape essentielle du processus. Les connecteurs personnalisés doivent souvent transformer les données de leur format natif en un format compatible avec la base de connaissances. Cela peut impliquer la conversion de types de données, le nettoyage des données et l’enrichissement des données avec des informations supplémentaires.
  • Ingestion en continu : la clé de l’ingestion de données en temps réel est la capacité de diffuser des données en continu. Les connecteurs personnalisés utilisent souvent des API de diffusion en continu pour recevoir les données au fur et à mesure qu’elles sont générées, ce qui permet des mises à jour en quasi temps réel de la base de connaissances.
  • Sécurité : la sécurité est une préoccupation primordiale lors de la connexion aux sources de données. Les connecteurs personnalisés doivent être conçus en tenant compte de la sécurité, en veillant à ce que les données soient protégées à la fois en transit et au repos.

Conclusion : embrasser l’avenir de l’IA avec des données en temps réel

Les bases de connaissances Amazon Bedrock avec des connecteurs personnalisés représentent une avancée significative dans le domaine de l’IA. En permettant aux organisations d’intégrer de manière transparente les flux de données en temps réel dans leurs applications d’IA, cette technologie ouvre une multitude de nouvelles opportunités d’innovation et de croissance commerciale. Alors que l’IA continue d’évoluer, la capacité d’exploiter les données en temps réel deviendra de plus en plus critique. Les bases de connaissances Amazon Bedrock sont positionnées pour être un catalyseur clé de cette tendance, permettant aux organisations de créer des solutions d’IA plus dynamiques, réactives et intelligentes que jamais auparavant.