Générez des notes de réunion de haute qualité à l'aide d'Amazon Transcribe et d'Amazon Comprehend

Nœud source: 1475220

Les organisations continuent d’évaluer les modalités de travail à distance et envisagent de passer à un modèle de main-d’œuvre hybride. Émergent les tendances suggèrent que non seulement le nombre de réunions en ligne auxquelles les employés participent quotidiennement a augmenté, mais également le nombre de participants par réunion. L'un des principaux défis des réunions en ligne est d'assurer une diffusion efficace des informations à tous les participants après la réunion. Il pourrait y avoir une perte d'informations, soit en raison d'une communication ponctuelle et superposée entre les participants, soit en raison de problèmes techniques, comme une interruption du réseau ou des contraintes de bande passante. Vous pouvez surmonter ces défis en utilisant AWS intelligence artificielle (AI) et machine learning (ML) pour générer automatiquement des artefacts de réunion, tels que des résumés, des éléments d'appel à l'action et des transcriptions de réunion.

Dans cet article, nous démontrons une solution qui utilise le Kit de développement logiciel Amazon Chime, Amazon Transcribe, Amazon comprendreet une Fonctions d'étape AWS pour enregistrer, traiter et générer des artefacts de réunion. La solution proposée est basée sur un workflow Step Functions qui démarre lorsque le robot de réunion stocke le fichier enregistré dans un Service de stockage simple Amazon (Amazon S3). Le flux de travail contient des étapes qui transcrivent et tirent des informations de l'enregistrement de la réunion. Enfin, il compile les données dans un modèle d'e-mail et les envoie aux participants à la réunion. Vous pouvez facilement adapter ce flux de travail à différents cas d'utilisation, tels que les solutions de conférence Web.

Vue d'ensemble de la solution

L'application est principalement divisée en deux parties : la solution de conférence construite à l'aide du SDK Amazon Chime et le flux de travail de traitement basé sur l'IA/ML implémenté à l'aide d'Amazon Transcribe et d'Amazon Comprehend. Le diagramme suivant illustre l'architecture.

Application de conférence Amazon Chime

L'application de conférence est une application Web créée à l'aide du SDK Amazon Chime JS et hébergée à l'aide d'une combinaison de Service de conteneur élastique Amazon (Amazon ECS), AWS Lambdaet une Passerelle d'API Amazon. Les informations de session pour les réunions sont stockées dans Amazon DynamoDB les tables. Lors d'une conférence téléphonique, les informations de session sont capturées à l'aide d'un Amazon Event Bridge connecteur pour le SDK Amazon Chime et écrit dans les tables DynamoDB. Les fonctionnalités suivantes sont disponibles sur l'application Web :

  • Démarrer ou rejoindre un appel – Lorsqu'un utilisateur demande à rejoindre ou à démarrer un appel, la demande appelle le SDK Amazon Chime pour démarrer ou rejoindre une réunion. Un unique MeetingId est généré et transmis avec la demande, et les autres participants peuvent l'utiliser MeetingId pour rejoindre le même appel.
  • Enregistrer l'appel - Quand le record call Lorsque l'action est lancée, elle démarre une tâche Amazon ECS, qui fait office de robot enregistreur de réunion. Ce bot exécute un navigateur Firefox sans tête et rejoint l'appel en tant que participant. Le navigateur sans tête est enregistré à l'écran dans la tâche Amazon ECS à l'aide de FFMPEG et de routeurs audio virtuels.
  • Arrête d'enregistrer – Lorsque cette action est lancée, elle arrête la tâche Amazon ECS exécutant le navigateur sans tête. Pendant le processus d'arrêt, la tâche Amazon ECS écrit l'enregistrement vidéo dans un compartiment S3.
  • Métadonnées de session – Pendant toute la durée de la conférence téléphonique, les métadonnées de la réunion sont diffusées par un Connecteur Amazon EventBridge pour Amazon Chime. La règle EventBridge est configurée avec une cible Lambda et écrit les données dans une table DynamoDB.

Les fonctionnalités précédentes permettent aux utilisateurs de démarrer, d'assister et d'enregistrer des conférences téléphoniques. L'enregistrement de l'appel génère un fichier vidéo qui est transmis à un compartiment S3. Le compartiment S3 est configuré avec un Notification d'événement Amazon S3 pour le s3:ObjectCreated:Put événement et lance le flux de travail de traitement AI/ML. Ces solutions sont disponibles sous forme de démos sur le Page du SDK Amazon Chime JS sur GitHub.

Flux de travail de traitement IA/ML

Le flux de travail de traitement AI/ML créé avec Step Functions utilise Amazon Transcribe et Amazon Comprehend. Le résultat de ce workflow de traitement est un e-mail bien conçu qui est envoyé au propriétaire de la conférence téléphonique à l'aide de Service de messagerie simple Amazon (Amazon SES). La séquence d'étapes suivante est impliquée dans le flux de travail AI/ML :

  1. Discours au texte – L'emplacement du fichier enregistré dans Amazon S3 est transmis en tant que paramètre à Amazon Transcribe start_transcription_job API qui crée la tâche de transcription asynchrone. Amazon Transcribe convertit automatiquement la parole enregistrée en texte avec précision. Si Amazon Transcribe doit reconnaître des mots et des expressions spécifiques à un domaine, tels que des noms de produits ou de marques, des termes techniques ou des noms de personnes, il existe deux options : utiliser le vocabulaire personnalisé fonctionnalité ou en utilisant modèles de langue personnalisés. Le vocabulaire personnalisé améliore la reconnaissance vocale pour une liste discrète de termes hors lexique. Les modèles de langage personnalisés vous permettent d'utiliser des transcriptions textuelles ou audio préexistantes spécifiques à un domaine pour créer un moteur vocal personnalisé. Vous pouvez aussi construire un vocabulaire personnalisé spécifiques à votre organisation. Voici un exemple de code utilisant les API Boto3 pour démarrer une tâche de transcription asynchrone avec un vocabulaire personnalisé :
response = client.start_transcription_job( TranscriptionJobName=job_name, #Name of the job LanguageCode=language_code, #Language code for the language in media file MediaFormat=media_format, #Format of input media file Media={ 'MediaFileUri': file_uri #S3 object location of input media file }, Settings={ 'VocabularyName': vocab_name #Name of the custom vocabulary to use }
)

  1. Identifier les entités personnalisées – Une fois le texte transcrit généré, utilisez le reconnaissance d'entité personnalisée fonctionnalité dans Amazon Comprehend pour extraire les points forts de la réunion, les actions de suivi et les questions posées. Vous pouvez entraîner un modèle pour identifier une nouvelle entité. Utilisez ACTIONS pour identifier les actions de suivi de la réunion. Utilisez QUESTIONS pour identifier les questions posées par les participants à la réunion. Vous pouvez aussi créer un outil de reconnaissance d'entité personnalisé à l'aide d'Amazon Comprehend. Vous pouvez utiliser le texte de vos notes de réunions précédentes, de vos e-mails et de vos documents techniques pour former le modèle. Il peut s'agir de documents PDF, Word et en texte brut. Ils devront être stockés dans un bucket S3. Annotations vous permettent de fournir l'emplacement des entités personnalisées dans ces documents. Vous pouvez également lister les entités dans des documents en texte brut en utilisant Listes d'entités. Amazon Comprehend découvrira le type de documents et le contexte dans lequel les entités apparaissent pour créer le module de reconnaissance. Vous trouverez ci-dessous un exemple de fichier CSV pour les listes d'entités comportant les entités personnalisées QUESTIONS et ACTIONS.
    Text, Type
    how to, QUESTIONS
    when can, QUESTIONS
    what is the, QUESTIONS
    schedule meeting, ACTIONS
    architecture, ACTIONS
    pricing, ACTIONS
    

    Voici un exemple de code utilisant les SDK Boto3 pour démarrer une détection d'entité asynchrone à partir de la sortie transcrite :

    response = client.start_entities_detection_job( InputDataConfig={ 'S3Uri': input_path, #Location of the transcribed output 'InputFormat': 'ONE_DOC_PER_FILE' #or ‘ONE_DOC_PER_LINE’ }, OutputDataConfig={ 'S3Uri': output_path #Location of the comprehend output }, EntityRecognizerArn=cer_arn, #The Amazon Resource Name (ARN) that identifies the specific entity recognizer LanguageCode=language_code, #Language code for the transcribed output DataAccessRoleArn=role, JobName=job_name, #Name of the job
    )
    

  2. Envoyer un mail – Le traitement de l'étape précédente génère des données qui sont enregistrées dans un compartiment S3 et une table DynamoDB. Enfin, ces résultats sont rassemblés par une fonction Lambda, formatés dans un e-mail et envoyés aux participants à la réunion via Amazon SES.

L'ensemble du flux de travail de traitement AI/ML est illustré dans la figure suivante.

Sortie

La figure suivante montre un exemple d'e-mail envoyé aux participants à la réunion par le workflow de traitement AI/ML. L'e-mail fournit des détails tels que le titre de la réunion, les participants, les points de discussion clés et les actions à entreprendre.

Résumé

Dans cet article, nous avons montré comment utiliser les services AWS AI tels qu'Amazon Transcribe et Amazon Comprehend avec le SDK Amazon Chime pour générer des artefacts de réunion de haute qualité. Nous avons démontré la fonctionnalité de vocabulaire personnalisé d'Amazon Transcribe et le fonctionnalité d'entités personnalisées d'Amazon Comprehend qui vous permettent de personnaliser les artefacts en fonction des besoins de votre entreprise.

En savoir plus sur Services AWS AI et commencez à créer votre propre flux de travail de traitement personnalisé à l'aide de Fonctions d'étape AWS ainsi que le Kit de développement logiciel Amazon Chime.


À propos des auteurs

Rajdeep Tarat est architecte de solutions senior chez AWS. Il vit à Bangalore, en Inde, et aide les clients à concevoir et optimiser des applications sur AWS. Dans ses temps libres, il aime la musique, la programmation et la lecture.

Venugopal Paï est architecte de solutions chez AWS. Il vit à Bengaluru, en Inde, et aide les clients natifs du numérique à faire évoluer et à optimiser leurs applications sur AWS.

Source : https://aws.amazon.com/blogs/machine-learning/generate-high-quality-meeting-notes-using-amazon-transcribe-and-amazon-comprehend/

Horodatage:

Plus de Blog sur l'apprentissage automatique AWS