AWS propose un large éventail de services d'intelligence artificielle (IA) et d'apprentissage automatique (ML), y compris une suite de des services préformés et prêts à l'emploi pour les développeurs sans expérience préalable en ML. Dans cet article, nous montrons comment utiliser ces services pour créer une application qui favorise l'inclusion des personnes ayant une déficience visuelle ou de communication, ce qui inclut des difficultés à voir, lire, entendre, parler ou avoir une conversation dans une langue étrangère. Avec des services tels que Amazon Transcribe, Amazon Polly, Amazon Traduire, Amazon Reconnaissance et les Extrait d'Amazon, vous pouvez ajouter des fonctionnalités à vos projets telles que la transcription en direct, la synthèse vocale, la traduction, la détection d'objets et l'extraction de texte à partir d'images.
Selon l'Organisation mondiale de la santé, plus d'un milliard de personnes, soit environ 1 % de la population mondiale, vivent avec une forme de handicap, et ce nombre est susceptible d'augmenter en raison du vieillissement de la population et de l'augmentation de la prévalence de certaines maladies chroniques. Pour les personnes ayant une déficience de la parole, de l'ouïe ou de la vue, les tâches quotidiennes telles qu'écouter un discours ou une émission télévisée, exprimer un sentiment ou un besoin, regarder autour de soi ou lire un livre peuvent sembler des défis impossibles. De nombreuses recherches soulignent l'importance des technologies d'assistance pour l'inclusion des personnes handicapées dans la société. Selon recherche par le Service de recherche du Parlement européen, les technologies grand public telles que les smartphones offrent de plus en plus de fonctionnalités adaptées pour répondre aux besoins des personnes handicapées. De plus, lorsque vous concevez pour des personnes handicapées, vous avez tendance à créer des fonctionnalités qui améliorent l'expérience de chacun ; ceci est connu comme le effet bordure de trottoir.
Cet article montre comment vous pouvez utiliser le AWS SDK pour JavaScript pour intégrer les fonctionnalités fournies par les services AWS AI dans vos propres solutions. Pour ce faire, un exemple d'application Web montre comment utiliser Amazon Transcribe, Amazon Polly, Amazon Translate, Amazon Rekognition et Amazon Textract pour implémenter facilement des fonctionnalités d'accessibilité. Le code source de cette application, AWS AugmentAbility, est disponible sur GitHub à utiliser comme point de départ pour vos propres projets.
Vue d'ensemble de la solution
Capacité d'augmentation AWS est alimenté par cinq services AWS AI : Amazon Transcribe, Amazon Translate, Amazon Polly, Amazon Rekognition et Amazon Textract. Il utilise également Amazon Cognito groupes d'utilisateurs et les pools d'identités pour gérer l'authentification et l'autorisation des utilisateurs.
Après avoir déployé l'application Web, vous pourrez accéder aux fonctionnalités suivantes :
- Transcription en direct et synthèse vocale - L'application transcrit les conversations et les discours pour vous en temps réel à l'aide d'Amazon Transcribe, un service de reconnaissance vocale automatique. Tapez ce que vous voulez dire et l'application le dit pour vous en utilisant les fonctionnalités de synthèse vocale d'Amazon Polly. Cette fonctionnalité s'intègre également à Amazon Transcribe identification automatique de la langue pour les transcriptions en continu—avec un minimum de 3 secondes d'audio, le service peut détecter automatiquement la langue dominante et générer une transcription sans que vous ayez à spécifier la langue parlée.
- Transcription en direct et synthèse vocale avec traduction – L'application transcrit et traduit pour vous les conversations et les discours, en temps réel. Tapez ce que vous voulez dire, et l'application le traduit et le dit pour vous. La traduction est disponible dans plus de 75 langues actuellement prises en charge par Amazon Translate.
- Traduction de conversation en temps réel - Sélectionnez une langue cible, parlez dans votre langue et l'application traduit ce que vous avez dit dans votre langue cible en combinant les fonctionnalités Amazon Transcribe, Amazon Translate et Amazon Polly.
- Détection d'objets – Prenez une photo avec votre smartphone et l'application décrit les objets qui vous entourent en utilisant les fonctionnalités de détection d'étiquettes d'Amazon Rekognition.
- Reconnaissance de texte pour étiquettes, panneaux et documents - Prenez une photo avec votre smartphone de n'importe quelle étiquette, panneau ou document, et l'application le lit à haute voix pour vous. Cette fonctionnalité est optimisée par les capacités d'extraction de texte d'Amazon Rekognition et d'Amazon Textract. AugmentAbility peut également traduire le texte dans plus de 75 langues, ou le rendre plus lisible pour les utilisateurs dyslexiques en utilisant la police OpenDyslexic.
Les fonctionnalités de transcription en direct, de synthèse vocale et de traduction de conversation en temps réel sont actuellement disponibles en chinois, anglais, français, allemand, italien, japonais, coréen, portugais brésilien et espagnol. Les fonctionnalités de reconnaissance de texte sont actuellement disponibles en arabe, anglais, français, allemand, italien, portugais, russe et espagnol. Une liste mise à jour des langues prises en charge par chaque fonction est disponible sur le Dépôt AugmentAbility GitHub.
Vous pouvez créer et déployer AugmentAbility localement sur votre ordinateur ou dans votre compte AWS en utilisant Hébergement AWS Amplify, un service d'hébergement Web CI/CD et statique entièrement géré pour des applications de rendu statiques et côté serveur rapides, sécurisées et fiables.
Le schéma suivant illustre l'architecture de l'application, en supposant qu'elle est déployée dans le cloud à l'aide d'AWS Amplify Hosting.
Le workflow de la solution comprend les étapes suivantes :
- Un navigateur mobile est utilisé pour accéder à l'application Web, une application HTML, CSS et JavaScript hébergée par AWS Amplify Hosting. L'application a été implémentée à l'aide du SDK pour JavaScript et du Bibliothèque JavaScript AWS Amplify.
- L'utilisateur se connecte en entrant un nom d'utilisateur et un mot de passe. L'authentification est effectuée par rapport au groupe d'utilisateurs Amazon Cognito. Après une connexion réussie, le groupe d'identités Amazon Cognito est utilisé pour fournir à l'utilisateur les informations d'identification AWS temporaires requises pour accéder aux fonctionnalités de l'application.
- Pendant que l'utilisateur explore les différentes fonctionnalités de l'application, le navigateur mobile interagit avec Amazon Transcribe (StartStreamTranscriptionWebSocket opération), Amazon Translate (Traduire le texte fonctionnement), Amazon Polly (Synthétiser fonctionnement), Amazon Rekognition (Détecter les étiquettes et les DétecterTexte opérations) et Amazon Textract (DétecterTexteDocument opération).
Les services AWS ont été intégrés dans l'application Web mobile à l'aide du SDK pour JavaScript. De manière générale, le SDK pour JavaScript permet d'accéder aux services AWS dans des scripts de navigateur ou Node.js ; pour cet exemple de projet, le SDK est utilisé dans les scripts de navigateur. Pour plus d'informations sur l'accès aux services AWS à partir d'un script de navigateur, consultez Premiers pas avec un script de navigateur. Le SDK pour JavaScript est fourni sous la forme d'un fichier JavaScript prenant en charge un ensemble de services AWS par défaut. Ce fichier est généralement chargé dans des scripts de navigateur à l'aide d'un <script>
balise qui fait référence au package SDK hébergé. Un SDK de navigateur personnalisé a été créé avec un ensemble de services spécifié (pour obtenir des instructions, reportez-vous à Construire le SDK pour le navigateur).
Chaque service a été intégré dans l'application Web mobile en suivant les directives et les exemples de code disponibles dans le Guide du développeur AWS SDK pour JavaScript. La mise en œuvre des fonctionnalités de transcription en direct a nécessité quelques étapes supplémentaires car WebSocket de diffusion en continu d'Amazon Transcribe nécessite que les développeurs encodent l'audio avec un encodage de flux d'événements et utilisent le Processus de signature Signature Version 4 pour ajouter des informations d'authentification aux demandes d'API AWS envoyées par HTTP. Pour plus d'informations sur cette approche, reportez-vous à Transcrivez la parole en texte en temps réel à l'aide d'Amazon Transcribe avec WebSocket.
La page Web de connexion de l'utilisateur a été implémentée à l'aide de authentification fonctionnalités de la bibliothèque JavaScript AWS Amplify. Pour plus de détails sur le flux d'authentification et d'autorisation, reportez-vous à Accéder aux services AWS à l'aide d'un groupe d'identités après la connexion.
La procédure pas à pas suivante montre comment déployer AugmentAbility à l'aide d'AWS Amplify Hosting ; il comprend les étapes suivantes :
- Créez le groupe d'utilisateurs et le groupe d'identités Amazon Cognito, et accordez des autorisations pour accéder aux services AWS AI.
- Clonez le référentiel GitHub et modifiez le fichier de configuration.
- Déployer l'application Web mobile sur le AWS Amplifier console.
- Utilisez l'application Web mobile.
Créez le groupe d'utilisateurs et le groupe d'identités Amazon Cognito, et accordez des autorisations pour accéder aux services AWS AI
La première étape nécessaire au déploiement de l'application consiste à création d'un groupe d'utilisateurs Amazon Cognito des Interface utilisateur hébergée activée, création d'un groupe d'identités Amazon Cognito, intégrant les deux piscines, et enfin accorder des autorisations pour accéder aux services AWS au Gestion des identités et des accès AWS (IAM) associé au groupe d'identités. Vous pouvez soit effectuer cette étape en travaillant manuellement sur chaque tâche, soit en déployant un AWS CloudFormation modèle.
Le modèle CloudFormation provisionne et configure automatiquement les ressources nécessaires, y compris les pools Amazon Cognito, les rôles IAM et les stratégies IAM.
- Connectez-vous à la Console de gestion AWS et lancez le modèle CloudFormation en choisissant Lancer la pile:
Le modèle est lancé par défaut dans la région AWS UE Ouest (Irlande). Pour lancer la solution dans une autre région, utilisez le sélecteur de région dans la barre de navigation de la console. Assurez-vous de sélectionner une région dans laquelle les services AWS concernés (Amazon Cognito, AWS Amplify, Amazon Transcribe, Amazon Polly, Amazon Translate, Amazon Rekognition et Amazon Textract) sont disponibles (us-east-2
,us-east-1
,us-west-1
,us-west-2
,ap-south-1
,ap-northeast-2
,ap-southeast-1
,ap-southeast-2
,ca-central-1
,eu-central-1
,eu-west-1
,eu-west-2
). - Selectionnez Suivant.
- Pour Région, entrez l'identifiant de la Région que vous souhaitez utiliser (parmi celles prises en charge).
- Pour Nom d'utilisateur, entrez le nom d'utilisateur que vous souhaitez utiliser pour accéder à l'application.
- Pour Email, saisissez l'adresse e-mail à laquelle le mot de passe temporaire de votre première connexion doit être envoyé.
- Selectionnez Suivant.
- Sur le Configurer les options de pile page, choisissez Suivant.
- Sur le Avis page, passez en revue et confirmez les paramètres.
- Cochez la case reconnaissant que le modèle créera des ressources IAM et peut nécessiter une fonctionnalité AWS CloudFormation.
- Selectionnez Créer une pile pour déployer la pile.
Vous pouvez afficher l'état de la pile sur la console AWS CloudFormation dans le Statut colonne. Vous devriez recevoir un CREATE_COMPLETE
statut en quelques minutes.
Dans le cadre du déploiement du modèle, les autorisations suivantes sont accordées au rôle IAM assumé par l'utilisateur authentifié :
transcribe:StartStreamTranscriptionWebSocket
translate:TranslateText
comprehend:DetectDominantLanguage
polly:SynthesizeSpeech
rekognition:DetectText
rekognition:DetectLabels
textract:DetectDocumentText
Même si Amazon comprendre n'est pas explicitement utilisé dans cette application Web, des autorisations sont accordées pour l'action comprendre : Détecter la langue dominante. Amazon Translate peut invoquer automatiquement Amazon Comprehend pour déterminer la langue du texte à traduire si aucun code de langue n'est spécifié.
Cloner le référentiel GitHub et modifier le fichier de configuration
Maintenant que l'accès aux services AWS AI a été configuré, vous êtes prêt à cloner le référentiel GitHub et à modifier le fichier de configuration.
- Dans le Dépôt AWS AugmentAbility GitHub, choisissez Code et les Télécharger le code postal.
Soit vous êtes invité à choisir un emplacement sur votre ordinateur où le fichier ZIP doit être téléchargé, soit il sera automatiquement enregistré dans votreDownloads
dossier. - Après avoir téléchargé le fichier, décompressez-le et supprimez le fichier ZIP.
Vous devriez avoir obtenu un dossier nomméaws-augmentability-main
avec quelques fichiers et sous-dossiers dedans. - Créer un fichier nommé
config.js
avec n'importe quel éditeur de texte, et saisissez-y le contenu suivant : - Dans le
config.js
fichier que vous avez créé, remplacez les quatreINSERT_
chaînes avec l'ID du groupe d'identités Amazon Cognito, l'identifiant de la région de votre choix, l'ID du groupe d'utilisateurs Amazon Cognito et l'ID client du groupe d'utilisateurs.
Vous pouvez récupérer ces valeurs en ouvrant la console AWS CloudFormation, en choisissant la pile nomméeaugmentability-stack
, et en choisissant le Sortie languette.
- Enregistrez le fichier config.js dans le
aws-augmentability-main
dossier, et compressez le dossier pour obtenir un nouveauaws-augmentability-main.zip
fichier.
Déployer l'application Web mobile sur la console Amplify
Maintenant que vous avez téléchargé et modifié les fichiers du projet AugmentAbility, vous êtes prêt à créer et à déployer l'application Web mobile à l'aide de la console Amplify.
- Sur le Démarrer avec Amplify Hosting page, choisissez Déployer sans fournisseur Git.
- Selectionnez Continuer.
- Dans le Démarrer un déploiement manuel section, pour Nom de l'application, saisissez le nom de votre application.
- Pour Nom de l'environnement, entrez un nom significatif pour l'environnement, tel que
development
orproduction
. - Pour Method , choisissez Glissez et déposez.
- Faites glisser et déposez le
aws-augmentability-main.zip
fichier de votre ordinateur sur la zone de dépôt ou utilisez Choisir des fichiers pour sélectionner leaws-augmentability-main.zip
fichier de votre ordinateur. - Selectionnez Épargnez et déployer, et attendez le message Déploiement terminé avec succès.
Utiliser l'application Web mobile
L'application Web mobile devrait maintenant être déployée. Avant d'accéder à l'application pour la première fois, vous devez définir un nouveau mot de passe pour l'utilisateur qui a été automatiquement créé lors de l'étape 1. Vous pouvez trouver le lien vers l'écran de connexion temporaire dans le Sortie onglet pour la pile CloudFormation (champ UserPoolLoginUrl
). Pour cette première connexion, vous utilisez le nom d'utilisateur que vous avez configuré et le mot de passe temporaire que vous avez reçu par e-mail.
Après avoir défini votre nouveau mot de passe, vous êtes prêt à tester l'application Web mobile.
Dans le Général section de la console Amplify, vous devriez pouvoir trouver un lien vers l'application sous la URL de la branche de production étiquette. Ouvrez-le ou envoyez-le sur votre smartphone, puis connectez-vous avec vos nouvelles informations d'identification et commencez à jouer avec AugmentAbility.
Prochaines étapes
Si vous souhaitez apporter des modifications à l'application Web mobile, vous pouvez travailler sur les fichiers clonés à partir du référentiel, créer localement l'application Web mobile (comme expliqué dans le Fichier README), puis redéployez l'application en téléchargeant le fichier ZIP mis à jour via la console Amplify. Comme alternative, vous pouvez créer un GitHub, Bitbucket, GitLab ou Code AWSCommit référentiel pour stocker vos fichiers de projet et connectez-le à Amplify pour bénéficier de builds automatiques à chaque validation de code. Pour en savoir plus sur cette approche, consultez Démarrer avec le code existant. Si vous suivez ce tutoriel, assurez-vous de remplacer la commande npm run build
comprenant npm run-script build
à l'étape 2a.
Pour créer des utilisateurs supplémentaires sur la console Amazon Cognito, consultez Création d'un nouvel utilisateur dans AWS Management Console. Si vous devez récupérer le mot de passe d'un utilisateur, vous devez utiliser l'écran de connexion temporaire que vous avez utilisé pour modifier le mot de passe temporaire. Vous trouverez le lien sur le Sortie onglet de la pile CloudFormation (champ UserPoolLoginUrl
).
Nettoyer
Lorsque vous avez terminé vos tests, pour éviter des frais futurs, supprimez les ressources créées au cours de cette procédure pas à pas.
- Sur la console AWS CloudFormation, choisissez Combos dans le volet de navigation.
- Choisissez la pile
augmentability-stack
. - Selectionnez Supprimer et confirmez la suppression lorsque vous y êtes invité.
- Sur la console Amplify, sélectionnez l'application que vous avez créée.
- Sur le Actions menu, choisissez Supprimer l'application et confirmez la suppression lorsque vous y êtes invité.
Conclusion
Dans cet article, je vous ai montré comment déployer un exemple de code qui utilise les services AWS AI et ML pour mettre des fonctionnalités telles que la transcription en direct, la synthèse vocale, la détection d'objets ou la reconnaissance de texte entre les mains de tout le monde. Savoir comment créer des applications pouvant être utilisées par des personnes ayant un large éventail de capacités et de handicaps est essentiel pour créer des produits plus inclusifs et accessibles.
Pour commencer avec AugmentAbility, clonez ou bifurquez le GitHub référentiel et commencez à expérimenter l'application Web mobile. Si vous souhaitez expérimenter AugmentAbility avant de déployer des ressources dans votre compte AWS, vous pouvez consulter le démonstration en direct (identifiants: demo-user
, Demo-password-1
).
À propos de l’auteur
Luca Guida est architecte de solutions chez AWS ; il est basé à Milan et accompagne les ISV italiens dans leur transition vers le cloud. Avec une formation académique en informatique et en ingénierie, il a commencé à développer sa passion pour l'IA/ML à l'université ; en tant que membre de la communauté de traitement du langage naturel (NLP) au sein d'AWS, Luca aide les clients à réussir tout en adoptant les services d'IA/ML.
- Coinsmart. Le meilleur échange Bitcoin et Crypto d'Europe.
- Platoblockchain. Intelligence métaverse Web3. Connaissance amplifiée. ACCÈS LIBRE.
- CryptoHawk. Radar Altcoins. Essai gratuit.
- Source : https://aws.amazon.com/blogs/machine-learning/use-aws-ai-and-ml-services-to-foster-accessibility-and-inclusion-of-people-with-a-visual- ou-trouble-de-la-communication/
- "
- 100
- a
- A Propos
- accès
- accessibilité
- accessible
- accès
- Selon
- Compte
- Action
- ajout
- Supplémentaire
- propos
- adresser
- à opposer à
- AI
- Services d'IA
- alternative
- Amazon
- parmi
- api
- appli
- Application
- applications
- une approche
- applications
- architecture
- autour
- artificiel
- intelligence artificielle
- Intelligence artificielle (AI)
- associé
- acoustique
- authentifié
- Authentification
- autorisation
- Automatique
- automatiquement
- disponibles
- AWS
- fond
- car
- before
- profiter
- Milliards
- corps
- frontière
- Box
- navigateur
- construire
- construit
- capacités
- globaux
- des charges
- chinois
- le choix
- Selectionnez
- le cloud
- code
- Colonne
- commettre
- Communication
- Communautés
- complet
- ordinateur
- Informatique
- configuration
- NOUS CONTACTER
- Console
- contenu
- Conversation
- conversations
- Couples
- engendrent
- créée
- La création
- Lettres de créance
- Lecture
- Customiser
- Clients
- démontrer
- déployer
- déployé
- déployer
- déploiement
- Conception
- détails
- Détection
- Déterminer
- Développeur
- mobiles
- développement
- différent
- maladies
- INSTITUTIONNELS
- domaine
- download
- Goutte
- pendant
- même
- éditeur
- ENGINEERING
- Anglais
- Entrer
- Environment
- EU
- du
- événement
- de tous les jours
- tout le monde
- existant
- d'experience
- expérience
- RAPIDE
- Fonctionnalité
- Fonctionnalités:
- finalement
- Prénom
- première fois
- flux
- suivre
- Abonnement
- étranger
- fourche
- formulaire
- Français
- De
- avenir
- généralement
- générer
- Git
- GitHub
- Global
- accordée
- Croître
- lignes directrices
- ayant
- Santé
- aide
- Faits saillants
- organisé
- hébergement
- Comment
- How To
- HTTPS
- Identification
- Identite
- satellite
- Mettre en oeuvre
- la mise en oeuvre
- mis en œuvre
- importance
- impossible
- améliorer
- inclut
- Y compris
- inclusion
- Améliore
- d'information
- intégrer
- des services
- Intelligence
- Irlande
- IT
- Japonais
- JavaScript
- chemin
- ACTIVITES
- connu
- Coréen
- Libellé
- Etiquettes
- langue
- Langues
- lancer
- lance
- APPRENTISSAGE
- apprentissage
- Bibliothèque
- Probable
- LINK
- Liste
- Écoute
- le travail
- localement
- emplacement
- recherchez-
- click
- machine learning
- Courant dominant
- a prendre une
- gérés
- gestion
- les gérer
- Manuel
- manuellement
- significative
- membre
- minimum
- ML
- Breeze Mobile
- PLUS
- Nature
- Navigation
- nécessaire
- Besoins
- nombre
- obtenu
- Offres Speciales
- ouvert
- ouverture
- opération
- Opérations
- propre
- paquet
- partie
- passion
- Mot de Passe
- Personnes
- image
- jouer
- Point
- politiques
- pool
- Piscines
- population
- Portugais
- alimenté
- traitement
- Produits
- Programme
- Projet
- projets
- fournir
- à condition de
- fournit
- gamme
- en cours
- en temps réel
- recevoir
- reçu
- Récupérer
- région
- fiable
- dépôt
- demandes
- exigent
- conditions
- a besoin
- un article
- Resources
- Avis
- Rôle
- Courir
- Saïd
- Sciences
- pour écran
- Sdk
- secondes
- sécurisé
- service
- Services
- set
- mettre en valeur
- signer
- Signes
- smartphone
- smartphones
- Société
- solide
- sur mesure
- Solutions
- quelques
- code source
- Espagnol
- parler
- parlant
- empiler
- Commencer
- j'ai commencé
- Statut
- Boutique
- courant
- streaming
- réussi
- Avec succès
- Appareils
- Appuyer
- Les soutiens
- Target
- tâches
- Les technologies
- temporaire
- tester
- tests
- Le
- La Source
- le monde
- fiable
- Transcription
- Traduction
- tv
- typiquement
- ui
- sous
- université
- utilisé
- utilisateurs
- version
- Voir
- attendez
- web
- Ouest
- Quoi
- tout en
- WHO
- dans les
- sans
- activités principales
- de travail
- world
- Votre