Aujourd'hui, nous sommes ravis d'annoncer que vous pouvez désormais effectuer des transformations par lots avec Amazon SageMaker JumpStart grands modèles de langage (LLM) pour la génération Text2Text. Les transformations par lots sont utiles dans les situations où les réponses n'ont pas besoin d'être en temps réel et, par conséquent, vous pouvez effectuer une inférence par lots pour de grands ensembles de données en masse. Pour la transformation par lots, un travail par lots est exécuté qui prend l'entrée par lots comme un ensemble de données et un modèle pré-formé, et génère des prédictions pour chaque point de données dans l'ensemble de données. La transformation par lots est rentable car, contrairement aux points de terminaison hébergés en temps réel qui disposent d'un matériel persistant, les clusters de transformation par lots sont supprimés lorsque la tâche est terminée et, par conséquent, le matériel n'est utilisé que pendant la durée de la tâche par lots.
Dans certains cas d'utilisation, les demandes d'inférence en temps réel peuvent être regroupées en petits lots pour un traitement par lots afin de créer des réponses en temps réel ou en temps quasi réel. Par exemple, si vous avez besoin de traiter un flux continu de données avec une faible latence et un débit élevé, l'appel d'un point de terminaison en temps réel pour chaque demande séparément nécessiterait plus de ressources et peut prendre plus de temps pour traiter toutes les demandes car le traitement est effectué en série. . Une meilleure approche consisterait à regrouper certaines des demandes et à appeler le point de terminaison en temps réel en mode d'inférence par lots, qui traite vos demandes en une seule passe du modèle et renvoie la réponse en bloc pour la demande en temps réel ou en temps quasi réel. . La latence de la réponse dépendra du nombre de requêtes que vous regroupez et de la taille de la mémoire de l'instance. Vous pouvez donc régler la taille du lot en fonction des besoins de votre entreprise en matière de latence et de débit. Nous appelons cela inférence par lots en temps réel car il combine le concept de traitement par lots tout en fournissant des réponses en temps réel. Avec l'inférence par lots en temps réel, vous pouvez trouver un équilibre entre une faible latence et un débit élevé, ce qui vous permet de traiter de gros volumes de données de manière rapide et efficace.
La transformation par lots Jumpstart pour les modèles Text2Text Generation vous permet de transmettre les hyperparamètres par lots via des variables d'environnement qui augmentent encore le débit et minimisent la latence.
JumpStart fournit des modèles open source pré-entraînés pour un large éventail de types de problèmes afin de vous aider à démarrer avec l'apprentissage automatique (ML). Vous pouvez former et régler ces modèles de manière incrémentielle avant le déploiement. JumpStart fournit également des modèles de solution qui configurent l'infrastructure pour les cas d'utilisation courants, et des exemples de blocs-notes exécutables pour ML avec Amazon Sage Maker. Vous pouvez accéder aux modèles préformés, aux modèles de solution et aux exemples via la page d'accueil JumpStart dans Amazon SageMakerStudio. Vous pouvez également accéder aux modèles JumpStart à l'aide du SDK SageMaker Python.
Dans cet article, nous montrons comment utiliser l'état de l'art pré-formé text2text FLAN T5 modèles de Hugging Face pour la transformation par lots et l'inférence par lots en temps réel.
Vue d'ensemble de la solution
Le bloc-notes montrant la transformation par lots de modèles Text2Text FLAN T5 pré-formés à partir de Étreindre le visage dans disponible dans ce qui suit GitHub référentiel. Ce bloc-notes utilise les données de Hugging Face cnn_dailymail jeu de données pour une tâche de synthèse de texte à l'aide du SDK SageMaker.
Voici les étapes clés de la mise en œuvre de la transformation par lots et de l'inférence par lots en temps réel :
- Configurez les prérequis.
- Sélectionnez un modèle pré-formé.
- Récupérer des artefacts pour le modèle.
- Spécifiez les hyperparamètres de la tâche de transformation par lots.
- Préparez les données pour la transformation par lots.
- Exécutez la tâche de transformation par lots.
- Évaluez le résumé à l'aide d'un ROUGE (Recall-Oriented Understudy for Gisting Evaluation).
- Effectuez une inférence par lots en temps réel.
Configurer les prérequis
Avant d'exécuter le notebook, vous devez effectuer quelques étapes de configuration initiales. Configurons le rôle d'exécution SageMaker afin qu'il dispose des autorisations nécessaires pour exécuter les services AWS en votre nom :
Sélectionnez un modèle pré-entraîné
Nous utilisons le modèle huggingface-text2text-flan-t5-large comme modèle par défaut. En option, vous pouvez récupérer la liste des modèles Text2Text disponibles sur JumpStart et choisir votre modèle préféré. Cette méthode offre un moyen simple de sélectionner différents ID de modèle à l'aide du même bloc-notes. À des fins de démonstration, nous utilisons le modèle huggingface-text2text-flan-t5-large :
Récupérer des artefacts pour le modèle
Avec SageMaker, nous pouvons effectuer une inférence sur le modèle pré-formé, même sans l'ajuster d'abord sur un nouvel ensemble de données. On commence par récupérer le deploy_image_uri
, deploy_source_uri
et une model_uri
pour le modèle pré-entraîné :
Spécifier les hyperparamètres de la tâche de transformation par lots
Vous pouvez transmettre n'importe quel sous-ensemble d'hyperparamètres en tant que variables d'environnement à la tâche de transformation par lots. Vous pouvez également transmettre ces hyperparamètres dans une charge utile JSON. Toutefois, si vous définissez des variables d'environnement pour des hyperparamètres comme le montre le code suivant, les hyperparamètres avancés des exemples individuels dans la charge utile des lignes JSON ne seront pas utilisés. Si vous souhaitez utiliser des hyperparamètres de la charge utile, vous pouvez définir le hyper_params_dict
paramètre comme null à la place.
Préparer les données pour la transformation par lots
Nous sommes maintenant prêts à charger le cnn_dailymail ensemble de données de Hugging Face :
Nous passons en revue chaque saisie de données et créons les données d'entrée dans le format requis. Nous créons un articles.jsonl
fichier en tant que fichier de données de test contenant des articles qui doivent être résumés en tant que charge utile d'entrée. Lorsque nous créons ce fichier, nous ajoutons l'invite "Briefly summarize this text:"
à chaque ligne d'entrée de test. Si vous souhaitez disposer d'hyperparamètres différents pour chaque entrée de test, vous pouvez ajouter ces hyperparamètres dans le cadre de la création de l'ensemble de données.
Nous créons highlights.jsonl
en tant que fichier de vérité terrain contenant les faits saillants de chaque article stocké dans le fichier de test articles.jsonl
. Nous stockons les deux fichiers de test dans un Service de stockage simple Amazon (Amazon S3). Voir le code suivant :
Exécuter la tâche de transformation par lots
Lorsque vous démarrez une tâche de transformation par lots, SageMaker lance les ressources de calcul nécessaires pour traiter les données, y compris les instances CPU ou GPU selon le type d'instance sélectionné. Au cours de la tâche de transformation par lots, SageMaker provisionne et gère automatiquement les ressources de calcul nécessaires pour traiter les données, y compris les instances, le stockage et les ressources réseau. Lorsque la tâche de transformation par lots est terminée, les ressources de calcul sont automatiquement nettoyées par SageMaker. Cela signifie que les instances et le stockage utilisés pendant la tâche sont arrêtés et supprimés, libérant des ressources et minimisant les coûts. Voir le code suivant :
Voici un exemple d'enregistrement du articles.jsonl
fichier d'essai. Notez que l'enregistrement dans ce fichier a un ID qui correspond à predict.jsonl
enregistrements de fichier qui affiche un enregistrement résumé en tant que sortie du modèle Hugging Face Text2Text. De même, le fichier de vérité terrain a également un ID correspondant pour l'enregistrement de données. L'ID correspondant dans le fichier de test, le fichier de vérité terrain et le fichier de sortie permet de lier les enregistrements d'entrée aux enregistrements de sortie pour une interprétation facile des résultats.
Voici l'exemple d'enregistrement d'entrée fourni pour la synthèse :
Voici la sortie prévue avec récapitulatif :
Voici le résumé de la vérité terrain à des fins d'évaluation du modèle :
Ensuite, nous utilisons la vérité terrain et les résultats prédits pour l'évaluation du modèle.
Évaluer le modèle à l'aide d'un score ROUGE¶
ROUGE, ou Recall-Oriented Understudy for Gisting Evaluation, est un ensemble de métriques et un progiciel utilisé pour évaluer la synthèse automatique et la traduction automatique dans le traitement du langage naturel. Les métriques comparent un résumé ou une traduction produit automatiquement à un résumé ou une traduction de référence (produite par l'homme) ou à un ensemble de références.
Dans le code suivant, nous combinons les résumés prédits et originaux en les joignant sur la clé commune id
et utilisez ceci pour calculer le score ROUGE :
Effectuez une inférence par lots en temps réel
Ensuite, nous vous montrons comment exécuter une inférence par lots en temps réel sur le point de terminaison en fournissant les entrées sous forme de liste. Nous utilisons le même ID de modèle et le même ensemble de données que précédemment, sauf que nous prenons quelques enregistrements de l'ensemble de données de test et les utilisons pour appeler un point de terminaison en temps réel.
Le code suivant montre comment créer et déployer un point de terminaison en temps réel pour l'inférence par lots en temps réel :
Ensuite, nous préparons notre charge utile d'entrée. Pour cela, nous utilisons les données que nous avons préparées précédemment et extrayons les 10 premières entrées de test et ajoutons aux entrées de texte les hyperparamètres que nous souhaitons utiliser. Nous fournissons cette charge utile au temps réel invoke_endpoint
. La charge utile de réponse est ensuite renvoyée sous la forme d'une liste de réponses. Voir le code suivant :
Nettoyer
Après avoir testé le point de terminaison, assurez-vous de supprimer le point de terminaison d'inférence SageMaker et de supprimer le modèle pour éviter des frais.
Conclusion
Dans ce bloc-notes, nous avons effectué une transformation par lots pour présenter le modèle Hugging Face Text2Text Generator pour les tâches de synthèse. La transformation par lots est avantageuse pour obtenir des inférences à partir de grands ensembles de données sans nécessiter de point de terminaison persistant. Nous avons lié les enregistrements d'entrée avec des inférences pour faciliter l'interprétation des résultats. Nous avons utilisé le score ROUGE pour comparer le résumé des données de test avec le résumé généré par le modèle.
De plus, nous avons démontré l'inférence par lots en temps réel, où vous pouvez envoyer un petit lot de données à un point de terminaison en temps réel pour atteindre un équilibre entre la latence et le débit pour des scénarios tels que le streaming de données d'entrée. L'inférence par lots en temps réel permet d'augmenter le débit des requêtes en temps réel.
Essayez la transformation par lots avec les modèles Text2Text Generation dans SageMaker dès aujourd'hui et faites-nous part de vos commentaires !
À propos des auteurs
Hémant Singh est un ingénieur en apprentissage automatique avec une expérience dans Amazon SageMaker JumpStart et les algorithmes intégrés Amazon SageMaker. Il a obtenu sa maîtrise du Courant Institute of Mathematical Sciences et B.Tech de l'IIT Delhi. Il a de l'expérience dans le travail sur une gamme variée de problèmes d'apprentissage automatique dans le domaine du traitement du langage naturel, de la vision par ordinateur et de l'analyse de séries chronologiques.
Rachna Chadha est architecte principal de solutions AI/ML dans les comptes stratégiques chez AWS. Rachna est une optimiste qui croit que l'utilisation éthique et responsable de l'IA peut améliorer la société à l'avenir et apporter la prospérité économique et sociale. Dans ses temps libres, Rachna aime passer du temps avec sa famille, faire de la randonnée et écouter de la musique.
Dr Ashish Khetan est un scientifique appliqué senior avec les algorithmes intégrés d'Amazon SageMaker et aide à développer des algorithmes d'apprentissage automatique. Il a obtenu son doctorat à l'Université de l'Illinois à Urbana-Champaign. Il est un chercheur actif en apprentissage automatique et en inférence statistique, et a publié de nombreux articles dans les conférences NeurIPS, ICML, ICLR, JMLR, ACL et EMNLP.
- Contenu propulsé par le référencement et distribution de relations publiques. Soyez amplifié aujourd'hui.
- PlatoAiStream. Intelligence des données Web3. Connaissance Amplifiée. Accéder ici.
- Frapper l'avenir avec Adryenn Ashley. Accéder ici.
- Achetez et vendez des actions de sociétés PRE-IPO avec PREIPO®. Accéder ici.
- La source: https://aws.amazon.com/blogs/machine-learning/perform-batch-transforms-with-amazon-sagemaker-jumpstart-text2text-generation-large-language-models/
- :possède
- :est
- :ne pas
- :où
- $UP
- 000
- 1
- 10
- 100
- 11
- 13
- 14
- 20
- 2014
- 50
- 7
- 8
- 9
- a
- Capable
- A Propos
- au dessus de
- acceptation
- accepté
- accès
- Selon
- hybrides
- atteindre
- L'acquisition de
- à travers
- actes
- infection
- Avancée
- avantageux
- à opposer à
- AI
- AI / ML
- Aide
- algorithmes
- Tous
- allégué
- permet
- aussi
- Amazon
- Amazon Sage Maker
- Amazon SageMaker JumpStart
- Amazon Web Services
- an
- selon une analyse de l’Université de Princeton
- ainsi que
- Annoncer
- tous
- api
- appliqué
- une approche
- SONT
- autour
- article
- sur notre blog
- AS
- At
- Tentatives
- autorité
- Automatique
- automatiquement
- disponibles
- éviter
- AWS
- Balance
- base
- basé
- BE
- est devenu
- car
- devient
- before
- va
- CROYONS
- croit
- Benjamin
- Améliorée
- jusqu'à XNUMX fois
- corps
- tous les deux
- Des deux côtés
- frontières
- brièvement
- apporter
- Apportez le
- intégré
- la performance des entreprises
- mais
- by
- Appelez-nous
- CAN
- ne peut pas
- cas
- Causes
- des charges
- Selectionnez
- classe
- client
- plus
- CNN
- code
- combiner
- moissonneuses-batteuses
- combinant
- comment
- engagements
- engagé
- Commun
- comparer
- complet
- calcul
- ordinateur
- Vision par ordinateur
- concept
- Conduire
- conférences
- Contenant
- continuer
- continu
- contribué
- Prix
- rentable
- pourriez
- conseil
- contreproductif
- d'exportation
- Court Intérieur
- engendrent
- La création
- Crimes
- Criminel
- données
- la saisie de données
- ensembles de données
- parfaite
- décision
- Réglage par défaut
- Delhi
- démontrer
- démontré
- Département
- Selon
- déployer
- déploiement
- décrit
- Déterminer
- développer
- Développement
- différer
- différences
- différent
- plusieurs
- do
- Docker
- domaine
- fait
- Ne pas
- Porte
- down
- durée
- pendant
- chacun
- Plus tôt
- Est
- Easy
- Économique
- efficace
- efforts
- admissibles
- permettant
- fin
- Endpoint
- ingénieur
- assurer
- Entre dans
- entrée
- Environment
- Ère
- éthique
- évaluer
- évaluer
- évaluation
- Pourtant, la
- preuve
- exemple
- exemples
- Sauf
- excité
- exécution
- d'experience
- extrait
- Visage
- toutes traditions religieuses et spirituelles.
- famille
- few
- Déposez votre dernière attestation
- Fichiers
- Prénom
- Abonnement
- Pour
- Force
- étranger
- formel
- Officiellement
- le format
- Avant
- fonder
- De
- plein
- plus
- avenir
- génération
- générateur
- obtenez
- donne
- Go
- Objectifs
- Gouvernements
- GPU
- plus grand
- Sol
- Réservation de groupe
- Matériel
- Vous avez
- he
- vous aider
- aide
- ici
- ici
- Haute
- Faits saillants
- sa
- organisé
- Comment
- How To
- Cependant
- HTML
- http
- HTTPS
- Étreindre
- humain
- droits de l'homme
- Humanité
- ID
- ids
- if
- Illinois
- image
- immédiatement
- la mise en œuvre
- importer
- améliorer
- in
- comprendre
- Y compris
- Améliore
- ACTIVITÉS DE PLEIN AIR
- individuel
- Individuellement
- d'information
- Infrastructure
- initiale
- injustice
- contribution
- entrées
- enquête
- instance
- plutôt ;
- Institut
- International
- l'interprétation
- développement
- enquêter
- enquête
- Enquêtes
- Israël
- IT
- SES
- Janvier
- Emploi
- rejoindre
- joindre
- jpg
- json
- juge
- juin
- juridiction
- juste
- Justice
- ACTIVITES
- Savoir
- atterrissage
- langue
- gros
- Nom de famille
- Latence
- plus tard
- lance
- apprentissage
- à gauche
- laisser
- légèrement
- comme
- aime
- Gamme
- lignes
- lié
- lien
- Liste
- Écoute
- charge
- Location
- plus long
- Faible
- click
- machine learning
- a prendre une
- Fabrication
- gère
- manière
- de nombreuses
- marqué
- appariés
- assorti
- mathématique
- Mai..
- veux dire
- membre
- Membres
- Adhésion
- Mémoire
- méthode
- Métrique
- réduisant au minimum
- ML
- Mode
- modèle
- numériques jumeaux (digital twin models)
- Mois
- PLUS
- Bougez
- Musique
- must
- prénom
- Nature
- Traitement du langage naturel
- nécessaire
- Besoin
- négociations
- Ni
- Netherlands
- de mise en réseau
- Nouveauté
- nouvelles
- communiqué de presse
- cahier
- maintenant
- objet
- obtention
- of
- Bureaux
- Officiellement
- on
- ONE
- uniquement
- ouvert
- open source
- ouvert
- s'opposer
- opposé
- or
- original
- OS
- nos
- ande
- sortie
- plus de
- paquet
- page
- La Palestine
- papiers
- paramètre
- paramètres
- partie
- fête
- pass
- chemin
- Pavage
- paix
- Personnes
- Effectuer
- autorisations
- Platon
- Intelligence des données Platon
- PlatonDonnées
- veuillez cliquer
- Point
- possible
- Post
- prévoir
- prédit
- prédiction
- Prédictions
- Predictor
- préféré
- Préparer
- préparé
- conditions préalables
- président
- la parfaite pression
- Prime
- premier ministre
- Directeur
- Problème
- d'ouvrabilité
- processus
- les process
- traitement
- Produit
- prospérité
- fournir
- à condition de
- fournit
- aportando
- publié
- des fins
- Python
- gamme
- solutions
- réal
- en temps réel
- record
- Articles
- se réfère
- libérer
- Supprimé
- À PLUSIEURS REPRISES
- rapport
- nécessaire
- demandes
- exigent
- conditions
- Exigences
- chercheur
- Resources
- réponse
- réponses
- responsabilités
- responsables
- résultat
- Résultats
- retourner
- Retours
- Avis
- droits
- Rôle
- Rome
- RANGÉE
- Courir
- s
- sagemaker
- Inférence SageMaker
- Saïd
- même
- dire
- scénarios
- STARFLEET SCIENCES
- Scientifique
- But
- Sdk
- sur le lien
- recherche
- choisi
- envoyer
- supérieur
- Série
- Services
- set
- mise
- installation
- commun
- elle
- devrait
- montrer
- vitrine
- Spectacles
- Accompagnements
- signé
- De même
- étapes
- depuis
- situation
- situations
- Taille
- petit
- So
- Réseaux sociaux
- Société
- Logiciels
- sur mesure
- Solutions
- quelques
- parler
- parlant
- Dépenses
- Commencer
- j'ai commencé
- Région
- Département d'Etat
- state-of-the-art
- Déclaration
- États
- statistique
- étapes
- Étapes
- Encore
- arrêté
- storage
- Boutique
- stockée
- simple
- Stratégique
- courant
- streaming
- fortement
- sujet
- résumé
- RÉSUMÉ
- été
- Support
- Prenez
- tâches
- prend
- Tâche
- tâches
- technologie
- modèles
- territoires
- territoire
- tester
- que
- qui
- La
- les informations
- Pays-Bas
- L'État
- le monde
- leur
- Les
- puis
- donc
- Ces
- l'ont
- this
- ceux
- Avec
- débit
- fiable
- Des séries chronologiques
- à
- aujourd'hui
- ensemble
- déchiré
- vers
- Train
- Transformer
- transformateur
- se transforme
- Traduction
- oui
- Vérité
- type
- types
- Saper
- Uni
- États-Unis
- Universel
- université
- contrairement à
- Téléchargement
- sur
- us
- utilisé
- d'utiliser
- en utilisant
- Vice-président
- vision
- volumes
- W
- souhaitez
- guerre
- était
- Montres
- Façon..
- we
- web
- services Web
- Mercredi
- bienvenu
- a accueilli
- WELL
- Quoi
- quand
- que
- qui
- tout en
- WHO
- large
- Large gamme
- sera
- comprenant
- dans les
- sans
- de travail
- world
- pourra
- Vous n'avez
- Votre
- zéphyrnet