IA générative Les modèles ont le potentiel de révolutionner les opérations des entreprises, mais celles-ci doivent soigneusement réfléchir à la manière d’exploiter leur puissance tout en surmontant des défis tels que la protection des données et la garantie de la qualité du contenu généré par l’IA.
Le framework RAG (Retrieval-Augmented Generation) augmente les invites avec des données externes provenant de plusieurs sources, telles que des référentiels de documents, des bases de données ou des API, pour rendre les modèles de base efficaces pour les tâches spécifiques à un domaine. Cet article présente les capacités du modèle RAG et met en évidence le potentiel de transformation de MongoDB Atlas avec sa fonctionnalité de recherche vectorielle.
Atlas MongoDB est une suite intégrée de services de données qui accélère et simplifie le développement d'applications basées sur les données. Son magasin de données vectorielles s'intègre parfaitement au stockage de données opérationnelles, éliminant ainsi le besoin d'une base de données distincte. Cette intégration permet de puissantes capacités de recherche sémantique grâce à Recherche de vecteur, un moyen rapide de créer des applications de recherche sémantique et basées sur l'IA.
Amazon Sage Maker permet aux entreprises de créer, former et déployer des modèles d'apprentissage automatique (ML). Amazon SageMaker JumpStart fournit des modèles et des données pré-entraînés pour vous aider à démarrer avec le ML. Vous pouvez accéder, personnaliser et déployer des modèles et des données pré-entraînés via la page d'accueil de SageMaker JumpStart dans Amazon SageMakerStudio en quelques clics.
Amazon Lex est une interface conversationnelle qui aide les entreprises à créer des chatbots et des robots vocaux qui s'engagent dans des interactions naturelles et réalistes. En intégrant Amazon Lex à l'IA générative, les entreprises peuvent créer un écosystème holistique dans lequel les entrées des utilisateurs se transforment de manière transparente en réponses cohérentes et contextuellement pertinentes.
Vue d'ensemble de la solution
Le diagramme suivant illustre l'architecture de la solution.
Dans les sections suivantes, nous passons en revue les étapes de mise en œuvre de cette solution et de ses composants.
Configurer un cluster MongoDB
Pour créer un cluster MongoDB Atlas de niveau gratuit, suivez les instructions dans Créer un cluster. Configurer la base de données accès et réseau accès.
Déployer le modèle d'intégration SageMaker
Vous pouvez choisir le modèle d'intégration (TOUS les MiniLM L6 v2) sur le Modèles SageMaker JumpStart, blocs-notes, solutions .
Selectionnez Déployer pour déployer le modèle.
Vérifiez que le modèle est déployé avec succès et que le point de terminaison est créé.
Intégration vectorielle
Intégration vectorielle est un processus de conversion d'un texte ou d'une image en représentation vectorielle. Avec le code suivant, nous pouvons générer des intégrations vectorielles avec SageMaker JumpStart et mettre à jour la collection avec le vecteur créé pour chaque document :
payload = {"text_inputs": [document[field_name_to_be_vectorized]]}
query_response = query_endpoint_with_json_payload(json.dumps(payload).encode('utf-8'))
embeddings = parse_response_multiple_texts(query_response) # update the document
update = {'$set': {vector_field_name : embeddings[0]}}
collection.update_one(query, update)
Le code ci-dessus montre comment mettre à jour un seul objet dans une collection. Pour mettre à jour tous les objets, suivez les Des instructions.
Magasin de données vectorielles MongoDB
Recherche de vecteurs Atlas MongoDB est une nouvelle fonctionnalité qui vous permet de stocker et de rechercher des données vectorielles dans MongoDB. Les données vectorielles sont un type de données qui représentent un point dans un espace de grande dimension. Ce type de données est souvent utilisé dans les applications de ML et d'intelligence artificielle. MongoDB Atlas Vector Search utilise une technique appelée k-voisins les plus proches (k-NN) pour rechercher des vecteurs similaires. k-NN fonctionne en trouvant les k vecteurs les plus similaires à un vecteur donné. Les vecteurs les plus similaires sont ceux qui sont les plus proches du vecteur donné en termes de distance euclidienne.
Le stockage des données vectorielles à côté des données opérationnelles peut améliorer les performances en réduisant le besoin de déplacer les données entre différents systèmes de stockage. Ceci est particulièrement avantageux pour les applications qui nécessitent un accès en temps réel aux données vectorielles.
Créer un index de recherche de vecteurs
La prochaine étape consiste à créer un Index de recherche de vecteurs MongoDB sur le champ vectoriel que vous avez créé à l'étape précédente. MongoDB utilise le knnVector
tapez pour indexer les plongements vectoriels. Le champ vectoriel doit être représenté sous la forme d'un tableau de nombres (types de données BSON int32, int64 ou double uniquement).
Reportez-vous à Examiner les limitations du type knnVector pour plus d'informations sur les limites du knnVector
type.
Le code suivant est un exemple de définition d'index :
{ "mappings": { "dynamic": true, "fields": { "egVector": { "dimensions": 384, "similarity": "euclidean", "type": "knnVector" } } }
}
Notez que la dimension doit correspondre à la dimension de votre modèle d'intégration.
Interroger le magasin de données vectorielles
Vous pouvez interroger le magasin de données vectorielles à l'aide de l'outil Pipeline d’agrégation de recherche vectorielle. Il utilise l'index de recherche vectorielle et effectue une recherche sémantique sur le magasin de données vectorielles.
Le code suivant est un exemple de définition de recherche :
{ $search: { "index": "<index name>", // optional, defaults to "default" "knnBeta": { "vector": [<array-of-numbers>], "path": "<field-to-search>", "filter": {<filter-specification>}, "k": <number>, "score": {<options>} } }
}
Déployer le grand modèle de langage SageMaker
Modèles de fondation SageMaker JumpStart sont des modèles de langage étendus (LLM) pré-entraînés qui sont utilisés pour résoudre diverses tâches de traitement du langage naturel (NLP), telles que le résumé de texte, la réponse à des questions et l'inférence en langage naturel. Ils sont disponibles dans une variété de tailles et de configurations. Dans cette solution, nous utilisons le Étreindre le visage Modèle FLAN-T5-XL.
Recherchez le modèle FLAN-T5-XL dans SageMaker JumpStart.
Selectionnez Déployer pour configurer le modèle FLAN-T5-XL.
Vérifiez que le modèle est déployé avec succès et que le point de terminaison est actif.
Créer un robot Amazon Lex
Pour créer un bot Amazon Lex, procédez comme suit :
- Sur la console Amazon Lex, choisissez Créer un bot.
- Pour Nom du robot, entrez un nom.
- Pour Rôle d'exécution, sélectionnez Créer un rôle avec des autorisations Amazon Lex de base.
- Spécifiez vos paramètres de langue, puis choisissez OK.
- Ajoutez un exemple d'énoncé dans le
NewIntent
Interface utilisateur et choisissez Enregistrer l'intention. - Accédez à la
FallbackIntent
qui a été créé pour vous par défaut et basculez Actif dans le Épanouissement . - Selectionnez Développer et une fois la construction réussie, choisissez Teste.
- Avant de tester, choisissez l'icône d'engrenage.
- Spécifie le AWS Lambda fonction qui interagira avec MongoDB Atlas et le LLM pour fournir des réponses. Pour créer la fonction lambda, suivez ces étapes.
- Vous pouvez désormais interagir avec le LLM.
Nettoyer
Pour nettoyer vos ressources, procédez comme suit:
- Supprimez le robot Amazon Lex.
- Supprimez la fonction Lambda.
- Supprimez le point de terminaison LLM SageMaker.
- Supprimez le point de terminaison SageMaker du modèle d’intégration.
- Supprimez le cluster MongoDB Atlas.
Conclusion
Dans l'article, nous avons montré comment créer un robot simple qui utilise la recherche sémantique MongoDB Atlas et s'intègre à un modèle de SageMaker JumpStart. Ce bot vous permet de prototyper rapidement l'interaction utilisateur avec différents LLM dans SageMaker Jumpstart tout en les associant au contexte provenant de MongoDB Atlas.
Comme toujours, AWS accueille favorablement vos commentaires. Veuillez laisser vos commentaires et questions dans la section commentaires.
À propos des auteurs
Igor Alekseev est Senior Partner Solution Architect chez AWS dans le domaine Data and Analytics. Dans son rôle, Igor travaille avec des partenaires stratégiques pour les aider à créer des architectures complexes optimisées pour AWS. Avant de rejoindre AWS, en tant qu'architecte de données/solutions, il a mis en œuvre de nombreux projets dans le domaine du Big Data, y compris plusieurs lacs de données dans l'écosystème Hadoop. En tant qu'ingénieur de données, il a été impliqué dans l'application de l'IA/ML à la détection des fraudes et à la bureautique.
Babu Srinivasan est un architecte de solutions partenaire principal chez MongoDB. Dans son rôle actuel, il travaille avec AWS pour construire les intégrations techniques et les architectures de référence pour les solutions AWS et MongoDB. Il a plus de deux décennies d'expérience dans les technologies de bases de données et de cloud. Il est passionné par la fourniture de solutions techniques aux clients travaillant avec plusieurs intégrateurs de systèmes mondiaux (GSI) dans plusieurs zones géographiques.
- Contenu propulsé par le référencement et distribution de relations publiques. Soyez amplifié aujourd'hui.
- PlatoData.Network Ai générative verticale. Autonomisez-vous. Accéder ici.
- PlatoAiStream. Intelligence Web3. Connaissance Amplifiée. Accéder ici.
- PlatonESG. Carbone, Technologie propre, Énergie, Environnement, Solaire, La gestion des déchets. Accéder ici.
- PlatoHealth. Veille biotechnologique et essais cliniques. Accéder ici.
- La source: https://aws.amazon.com/blogs/machine-learning/retrieval-augmented-generation-with-langchain-amazon-sagemaker-jumpstart-and-mongodb-atlas-semantic-search/
- :possède
- :est
- :où
- $UP
- 100
- 200
- 321
- 361
- 7
- 9
- a
- A Propos
- au dessus de
- accélérer
- accès
- à travers
- infection
- Après
- agrégation
- AI
- Alimenté par l'IA
- AI / ML
- Tous
- permet
- toujours
- Amazon
- Amazon Lex
- Amazon Sage Maker
- Amazon SageMaker JumpStart
- Amazon Web Services
- an
- analytique
- et les
- Apis
- applications
- Application
- architecture
- SONT
- tableau
- artificiel
- intelligence artificielle
- AS
- At
- augmentations
- Automation
- disponibles
- AWS
- AWS Lambda
- Essentiel
- BE
- avantageux
- jusqu'à XNUMX fois
- Big
- Big Data
- Bot
- les robots
- construire
- entreprises
- mais
- by
- appelé
- CAN
- capacités
- prudemment
- globaux
- Chatbots
- Selectionnez
- espace extérieur plus propre,
- le cloud
- Grappe
- code
- COHÉRENT
- collection
- commentaires
- complet
- complexe
- composants électriques
- Considérer
- Console
- contenu
- contexte
- de la conversation
- conversion
- engendrent
- créée
- Courant
- Clients
- personnaliser
- données
- stockage de données
- data-driven
- Base de données
- bases de données
- décennies
- Réglage par défaut
- par défaut
- définition
- déployer
- déployé
- Détection
- Développement
- différent
- Dimension
- dimensions
- distance
- document
- domaine
- double
- Dynamic
- risque numérique
- Efficace
- l'élimination
- enrobage
- permet
- Endpoint
- s'engager
- ingénieur
- assurer
- Entrer
- Entreprise
- entreprises
- notamment
- Chaque
- d'experience
- externe
- RAPIDE
- Fonctionnalité
- Réactions
- few
- champ
- Des champs
- une fonction filtre
- trouver
- suivre
- Abonnement
- Pour
- Fondation
- Framework
- fraude
- détection de fraude
- gratuitement ici
- De
- fonction
- équipement
- générer
- génération
- génératif
- IA générative
- géographies
- obtenez
- donné
- Global
- harnais
- Vous avez
- he
- vous aider
- aider
- aide
- Faits saillants
- sa
- holistique
- Comment
- How To
- HTML
- http
- HTTPS
- ICON
- illustre
- image
- Mettre en oeuvre
- mis en œuvre
- améliorer
- in
- Y compris
- indice
- d'information
- contribution
- Des instructions
- des services
- Intègre
- Intégration
- l'intégration
- intégrations
- Intelligence
- interagir
- l'interaction
- interactions
- Interfaces
- développement
- impliqué
- IT
- SES
- joindre
- json
- juste
- des lacs
- atterrissage
- langue
- gros
- apprentissage
- Laisser
- réaliste
- limites
- LLM
- click
- machine learning
- a prendre une
- de nombreuses
- Match
- ML
- modèle
- numériques jumeaux (digital twin models)
- MongoDB
- PLUS
- (en fait, presque toutes)
- Bougez
- plusieurs
- must
- prénom
- Nature
- Traitement du langage naturel
- Besoin
- réseau et
- Nouveauté
- next
- nlp
- maintenant
- numéros
- objet
- objets
- of
- Bureaux
- souvent
- on
- et, finalement,
- uniquement
- opérationnel
- Opérations
- or
- originaire
- surmonter
- vue d'ensemble
- page
- appariement
- les partenaires
- partenaires,
- passionné
- chemin
- performant
- effectue
- Platon
- Intelligence des données Platon
- PlatonDonnées
- veuillez cliquer
- Point
- Post
- défaillances
- power
- solide
- cadeaux
- précédent
- Avant
- processus
- traitement
- projets
- prototype
- fournir
- fournit
- aportando
- qualité
- question
- fréquemment posées
- vite.
- en temps réel
- réduire
- référence
- pertinent
- représentation
- représenté
- représente
- exigent
- Resources
- réponses
- révolutionner
- Rôle
- la sauvegarde
- sagemaker
- But
- de façon transparente
- Rechercher
- Section
- les sections
- supérieur
- séparé
- Services
- set
- Paramétres
- plusieurs
- devrait
- montré
- Spectacles
- similaires
- étapes
- simplifier
- unique
- tailles
- sur mesure
- Solutions
- RÉSOUDRE
- Sources
- Space
- j'ai commencé
- étapes
- Étapes
- storage
- Boutique
- Stratégique
- Partenaires stratégiques
- réussi
- Avec succès
- tel
- suite
- combustion propre
- Système
- tâches
- Technique
- technique
- Les technologies
- conditions
- tester
- Essais
- texte
- que
- qui
- Le
- leur
- Les
- puis
- l'ont
- this
- Avec
- étage
- à
- Train
- transformation
- transitions
- oui
- deux
- type
- types
- ui
- Mises à jour
- utilisé
- d'utiliser
- Utilisateur
- Usages
- en utilisant
- variété
- vérifier
- Voix
- marcher
- était
- Façon..
- we
- web
- services Web
- se félicite
- tout en
- sera
- comprenant
- de travail
- vos contrats
- Vous n'avez
- Votre
- zéphyrnet