

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

# Déployez Multi-Agent une plateforme Meeting Intelligence à l'aide du SDK Strands Agents et d'AWS Fargate
<a name="deploy-meeting-intelligence-strands-agents-fargate"></a>

*Aishita Batra et Muskan., Amazon Web Services*

## Résumé
<a name="deploy-meeting-intelligence-strands-agents-fargate-summary"></a>

Ce modèle déploie une plateforme d'intelligence des réunions multi-agents AWS Fargate qui génère automatiquement des comptes rendus structurés, des résumés, des narrations audio et des rapports PDF formatés à partir des transcriptions de réunions. La solution utilise le SDK Strands Agents pour orchestrer quatre agents d'IA spécialisés, Amazon Bedrock pour l'inférence des modèles linguistiques et Amazon Polly pour la conversion du texte en parole.

Les utilisateurs téléchargent les transcriptions des réunions via une interface Web Streamlit, et le système les traite de manière asynchrone via un pipeline d'agents coordonné. L'infrastructure se déploie automatiquement via GitHub Actions with AWS AWS Cloud Development Kit (AWS CDK) et inclut des fonctionnalités intégrées de surveillance, d'auto-scaling et de haute disponibilité.

## Conditions préalables et limitations
<a name="deploy-meeting-intelligence-strands-agents-fargate-prereqs"></a>

*Conditions préalables*
+ Un actif Compte AWS avec des autorisations administratives
+ AWS CDK version 2.114.1 ou ultérieure installée
+ AWS CLI installé et configuré avec les autorisations Gestion des identités et des accès AWS (IAM) appropriées
+ Node.js 18 ans ou version ultérieure
+ Python 3.12 ou version ultérieure
+ Git installé
+ Docker installé (facultatif, pour les tests locaux)
+ Un GitHub compte avec des secrets de dépôt configurés : `AWS_ACCESS_KEY_ID` et `AWS_SECRET_ACCESS_KEY`
+ Amazon Bedrock avec accès au modèle Anthropic Claude 3 Sonnet activé dans votre région
+ Accès Amazon Polly activé (activé par défaut dans la plupart des régions)
+ Autorisations IAM pour Amazon Simple Storage Service (Amazon S3), Amazon Elastic Container Service (Amazon ECS), Fargate, Elastic Load Balancing, Amazon Virtual Private Cloud (Amazon VPC)
+ Amazon VPC, IAM, Amazon CloudWatch et Amazon Simple Notification Service (Amazon SNS)

*Limites*
+ Le temps de traitement est de 2 à 7 minutes par réunion, selon la complexité de la transcription.
+ La longueur maximale de la transcription est de 50 000 caractères par demande.
+ Les résumés audio sont automatiquement condensés à 3 000 caractères (limite de caractères Amazon Polly).
+ La disponibilité du sonnet Amazon Bedrock Claude 3 varie selon. Région AWS
+ L'état du job est stocké en mémoire et n'est pas persistant au redémarrage du conteneur, sauf si vous configurez S3-based la persistance.
+ Le téléchargement direct ne prend en charge que `.txt` les fichiers.
+ L'Application Load Balancer impose un délai d'attente de 15 minutes pour le traitement des demandes.
+ Certains AWS services ne sont pas disponibles dans tous les cas Régions AWS. Pour connaître la disponibilité par région, consultez la section [AWS Services par région](https://aws.amazon.com/about-aws/global-infrastructure/regional-product-services/). Pour des points de terminaison spécifiques, consultez la page [Points de terminaison et quotas du service](https://docs.aws.amazon.com/general/latest/gr/aws-service-information.html), puis choisissez le lien vers le service.

## Architecture
<a name="deploy-meeting-intelligence-strands-agents-fargate-architecture"></a>

**Architecture cible**

La solution déploie un système d'IA multi-agents à l'aide du SDK Strands Agents sur l' AWS Fargate architecture suivante :

![](http://docs.aws.amazon.com/fr_fr/prescriptive-guidance/latest/patterns/images/pattern-img/dfd870ca-7a7d-48cc-a62a-b14c8c3c7bb6/images/8f9c0497-153f-4361-80cd-791dc0fec8c5.png)


1. Les utilisateurs téléchargent les transcriptions des réunions via une application Web Streamlit hébergée localement ou sur un serveur distant. 

1. Un Application Load Balancer installé dans des sous-réseaux publics répartit le trafic vers le service Fargate sur deux zones de disponibilité. 

1. Les tâches Fargate s'exécutent dans des sous-réseaux privés avec accès à la passerelle NAT et hébergent le backend FastAPI et la logique d'orchestration de l'agent Strands. 

1. Le système multi-agents Strands traite les transcriptions via quatre agents séquentiels : génération de minutes structurées, génération de résumés concis, narration audio et création de rapports PDF. 

1. Amazon Bedrock fournit une inférence de modèles linguistiques (Claude 3 Sonnet) pour les agents de génération de comptes rendus et de résumés. 

1. Amazon Polly convertit le résumé concis en narration audio MP3. 

1. Amazon S3 stocke les transcriptions téléchargées, les fichiers de sortie générés et l'état des tâches conformément aux politiques de gestion du cycle de vie. 

1. Amazon CloudWatch fournit une journalisation centralisée, des alarmes relatives au processeur et à la mémoire, ainsi qu'une surveillance de l'état des services grâce aux notifications Amazon SNS. 

1. GitHub Actions permet un CI/CD déploiement automatisé AWS CDK grâce à des tests de validation de l'intégrité.

*Automatisation et mise à l'échelle*
+ Mise à l'échelle automatique d'**ECS** **Fargate** : dimensionnement automatique des conteneurs de 1 à 3 instances sur la base de seuils d'utilisation du processeur et de la mémoire de 70 %.
+ CloudWatch**surveillance** : alarmes du processeur (65 %), de la mémoire (80 %) et de l'état du service intégrées aux notifications Amazon SNS.
+ **Application Load Balancer** : distribution du trafic avec des contrôles de santé toutes les 60 secondes et un délai d'inactivité de 15 minutes pour les tâches de traitement par IA de longue durée.
+ **Traitement des tâches en arrière-plan** — Analyse des réunions asynchrones à l'aide de FastAPI BackgroundTasks pour l'exécution simultanée de tâches.
+ **S3-based persistance des tâches** : stockage permanent de l'état des tâches dans Amazon S3 qui garantit la continuité des tâches lors des redémarrages de conteneurs et des événements de dimensionnement.
+ **GitHub Actions CI/CD** — Pipeline de déploiement automatisé avec provisionnement de l'infrastructure CDK et tests de validation de l'intégrité.

## Outils
<a name="deploy-meeting-intelligence-strands-agents-fargate-tools"></a>

*Services AWS*
+ Amazon Bedrock — Fournit une inférence de modèles linguistiques (Claude 3 Sonnet) pour les agents d'analyse et de synthèse des réunions. Consultez la [documentation Amazon Bedrock](https://docs.aws.amazon.com/bedrock/).
+ Amazon CloudWatch — Surveille les performances des conteneurs, capture les journaux des applications et déclenche des alarmes concernant les seuils de santé du processeur, de la mémoire et des services. Consultez la [ CloudWatch CloudWatch documentation Amazon](https://docs.aws.amazon.com/cloudwatch/).
+ Amazon Elastic Container Service (Amazon ECS) — Orchestre les tâches liées aux conteneurs Fargate à l'aide de contrôles de santé et de découverte de services. Consultez la [documentation Amazon ECS](https://docs.aws.amazon.com/ecs/).
+ Amazon Polly — Convertit les résumés concis des réunions en narrations audio MP3. Consultez la [documentation Amazon Polly.](https://docs.aws.amazon.com/polly/)
+ Amazon Simple Notification Service (Amazon SNS) : envoie des notifications d'alarme issues de la surveillance. CloudWatch Consultez la [documentation Amazon SNS.](https://docs.aws.amazon.com/sns/)
+ Amazon Simple Storage Service (Amazon S3) — Stocke les transcriptions téléchargées, les fichiers de sortie générés et le statut des tâches grâce à la gestion du cycle de vie. Consultez la [documentation Amazon S3](https://docs.aws.amazon.com/s3/).
+ AWS CDK — Définit et déploie toute l'infrastructure sous forme de code. Consultez [AWS CDK la documentation](https://docs.aws.amazon.com/cdk/).
+ AWS Fargate — Exécute des charges de travail d'applications conteneurisées sans gérer de serveurs, grâce à l'auto-scaling de 1 à 3 instances. Consultez [AWS Fargate la documentation](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/AWS_Fargate.html).
+ Elastic Load Balancing : répartit le trafic entrant vers les tâches Fargate entre les zones de disponibilité. Consultez la [documentation d'Elastic Load Balancing](https://docs.aws.amazon.com/elasticloadbalancing/).

*Autres outils*
+ **Docker** — Construit des images de conteneurs pour les tests locaux. Consultez la [documentation Docker](https://docs.docker.com/).
+ **FastAPI** — Fournit le backend de l'API REST pour la soumission des tâches, la vérification du statut et les opérations sur les fichiers. Consultez la documentation de [FastAPI](https://fastapi.tiangolo.com/).
+ **GitHub Actions** — Automatise le pipeline de CI/CD déploiement. Consultez la [documentation sur GitHub les actions](https://docs.github.com/en/actions).
+ **ReportLab**— Génère des rapports PDF formatés à partir de comptes rendus de réunion structurés. Consultez [ReportLab la documentation](https://docs.reportlab.com/).
+ **SDK Strands Agents** — Orchestre les flux de travail multi-agents avec un minimum de code en utilisant le `@tool` modèle de décorateur. Consultez la [documentation du SDK Strands](https://strandsagents.com/).
+ **Streamlit** — Fournit l'interface utilisateur Web pour le téléchargement des transcriptions et des sorties. Consultez la [documentation Streamlit](https://docs.streamlit.io/).

*Référentiel de code*

Le code de ce modèle est disponible dans le référentiel GitHub [sample-ai-meeting-minutes-generator](https://github.com/aws-samples/sample-ai-meeting-minutes-generator).

## Bonnes pratiques
<a name="deploy-meeting-intelligence-strands-agents-fargate-best-practices"></a>
+ Utilisez des instructions système claires et ciblées pour chaque agent afin de garantir un formatage de sortie cohérent et une documentation de réunion professionnelle.
+ Mettez en œuvre la gestion du cycle de vie Amazon S3 avec une rétention de 90 jours pour optimiser les coûts et automatiser le nettoyage des fichiers.
+ Utilisez le suivi des S3-based tâches Amazon pour maintenir l'état des conteneurs lors des redémarrages et des événements de dimensionnement afin de garantir un traitement fiable.
+ Configurez les CloudWatch alarmes relatives à l'état du processeur, de la mémoire et des services avec les notifications Amazon SNS pour une surveillance proactive.
+ Validez et nettoyez les téléchargements de fichiers et le format du contenu avant le traitement afin d'éviter les erreurs système et les problèmes de sécurité.
+ Respectez le principe du moindre privilège et accordez les autorisations minimales requises pour effectuer une tâche. Pour plus d'informations, consultez les sections [Accorder le moindre privilège](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html#grant-least-privilege) et [Bonnes pratiques en matière de sécurité](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html) dans la documentation IAM.
+ Envisagez AWS AgentCore les déploiements de production qui nécessitent une orchestration gérée et des frais opérationnels simplifiés. Le SDK Strands est préférable lorsque vous avez besoin d'une plus grande personnalisation des interactions avec les agents et d'un contrôle spécialisé du flux de travail.
+ Mettez en œuvre une évaluation systématique des résultats des agents par rapport aux comptes rendus de réunion générés par l'homme afin d'améliorer en permanence les instructions du système et les performances des agents.

## Épopées
<a name="deploy-meeting-intelligence-strands-agents-fargate-epics"></a>

### Déployer l'infrastructure
<a name="deploy-the-infrastructure"></a>


| Sous-tâche | Description | Compétences requises | 
| --- | --- | --- | 
| Cloner le référentiel | [See the AWS documentation website for more details](http://docs.aws.amazon.com/fr_fr/prescriptive-guidance/latest/patterns/deploy-meeting-intelligence-strands-agents-fargate.html)<pre>git clone https://github.com/aws-samples/sample-ai-meeting-minutes-generator.git<br /></pre>[See the AWS documentation website for more details](http://docs.aws.amazon.com/fr_fr/prescriptive-guidance/latest/patterns/deploy-meeting-intelligence-strands-agents-fargate.html)<pre>cd meeting-minutes-app<br /></pre> | AWS DevOps | 
| Créez votre propre dépôt Git | [See the AWS documentation website for more details](http://docs.aws.amazon.com/fr_fr/prescriptive-guidance/latest/patterns/deploy-meeting-intelligence-strands-agents-fargate.html)<pre>git remote set-url origin https://<your-git-platform>.com/<your-username>/<your-repo-name>.git<br /></pre>[See the AWS documentation website for more details](http://docs.aws.amazon.com/fr_fr/prescriptive-guidance/latest/patterns/deploy-meeting-intelligence-strands-agents-fargate.html)<pre>git push -u origin main<br /></pre> | Développeur d’applications | 
| Configurez les secrets du référentiel pour CI/CD. | [See the AWS documentation website for more details](http://docs.aws.amazon.com/fr_fr/prescriptive-guidance/latest/patterns/deploy-meeting-intelligence-strands-agents-fargate.html) | DevOps ingénieur | 
| Déployez l'infrastructure à l'aide du CI/CD flux de travail. | [See the AWS documentation website for more details](http://docs.aws.amazon.com/fr_fr/prescriptive-guidance/latest/patterns/deploy-meeting-intelligence-strands-agents-fargate.html)<pre>git add .<br />git commit -m "Deploy multi-agent meeting intelligence platform"<br />git push origin main<br /></pre>[See the AWS documentation website for more details](http://docs.aws.amazon.com/fr_fr/prescriptive-guidance/latest/patterns/deploy-meeting-intelligence-strands-agents-fargate.html) | DevOps ingénieur | 
| Vérifiez le déploiement de l'infrastructure. | [See the AWS documentation website for more details](http://docs.aws.amazon.com/fr_fr/prescriptive-guidance/latest/patterns/deploy-meeting-intelligence-strands-agents-fargate.html) | DevOps ingénieur, administrateur cloud | 

### Configuration et lancement de l'application
<a name="configure-and-launch-the-application"></a>


| Sous-tâche | Description | Compétences requises | 
| --- | --- | --- | 
| Mettre en place l'environnement de développement local | [See the AWS documentation website for more details](http://docs.aws.amazon.com/fr_fr/prescriptive-guidance/latest/patterns/deploy-meeting-intelligence-strands-agents-fargate.html)<pre>cd meeting_minutes_agent/app<br /></pre>[See the AWS documentation website for more details](http://docs.aws.amazon.com/fr_fr/prescriptive-guidance/latest/patterns/deploy-meeting-intelligence-strands-agents-fargate.html)<pre>python -m venv venv<br />source venv/bin/activate  # Linux/Mac<br /># Or on Windows: venv\Scripts\activate<br /></pre>[See the AWS documentation website for more details](http://docs.aws.amazon.com/fr_fr/prescriptive-guidance/latest/patterns/deploy-meeting-intelligence-strands-agents-fargate.html)<pre>pip install -r requirements.txt<br />pip install streamlit<br /></pre> | Développeur d’applications | 
| Récupérez l'URL du service principal. | [See the AWS documentation website for more details](http://docs.aws.amazon.com/fr_fr/prescriptive-guidance/latest/patterns/deploy-meeting-intelligence-strands-agents-fargate.html) | Administrateur du cloud | 
| Lancez l'application et vérifiez la connectivité. | [See the AWS documentation website for more details](http://docs.aws.amazon.com/fr_fr/prescriptive-guidance/latest/patterns/deploy-meeting-intelligence-strands-agents-fargate.html)<pre>BACKEND_URL="http://<your-service-url>.us-east-1.elb.amazonaws.com" streamlit run meeting_minutes_agent/app/streamlit_app.py<br /></pre>[See the AWS documentation website for more details](http://docs.aws.amazon.com/fr_fr/prescriptive-guidance/latest/patterns/deploy-meeting-intelligence-strands-agents-fargate.html) | Développeur d’applications | 

### Vérifiez la solution
<a name="verify-the-solution"></a>


| Sous-tâche | Description | Compétences requises | 
| --- | --- | --- | 
| Traitez la transcription d'une réunion et vérifiez les résultats. | [See the AWS documentation website for more details](http://docs.aws.amazon.com/fr_fr/prescriptive-guidance/latest/patterns/deploy-meeting-intelligence-strands-agents-fargate.html) | Développeur d’applications | 

## Résolution des problèmes
<a name="deploy-meeting-intelligence-strands-agents-fargate-troubleshooting"></a>


| Problème | Solution | 
| --- | --- | 
| Erreur d'accès au modèle Amazon Bedrock | Vérifiez que le modèle Anthropic Claude 3 Sonnet est activé dans votre région. Ouvrez la console Amazon Bedrock, choisissez **Model access** et vérifiez que Claude 3 Sonnet indique que l'**accès** est accordé. | 
| Le bootstrap du CDK échoue |  Exécutez `cdk bootstrap aws://<account-id>/<region>` manuellement avant le déploiement. Vérifiez que vos AWS CLI informations d'identification sont autorisées pour CloudFormation Amazon S3 et IAM. | 
| [See the AWS documentation website for more details](http://docs.aws.amazon.com/fr_fr/prescriptive-guidance/latest/patterns/deploy-meeting-intelligence-strands-agents-fargate.html) |  Consultez la console Amazon ECS pour obtenir des informations sur les tâches arrêtées. Les causes courantes incluent des autorisations de rôle IAM incorrectes, un accès manquant à Amazon Bedrock ou des problèmes de configuration VPC. Passez en revue les CloudWatch journaux de la tâche. | 
| Délais de traitement (délai ALB de 15 minutes) | L'Application Load Balancer a un délai d'inactivité de 15 minutes. Pour les transcriptions très longues, réduisez la taille d'entrée à moins de 50 000 caractères ou augmentez le délai d'expiration de l'ALB dans la configuration du CDK. | 
| La génération audio échoue | Amazon Polly est limité à 3 000 caractères. L'agent de synthèse concis condense automatiquement le contenu en dessous de cette limite. Si la génération audio échoue toujours, vérifiez que l'accès à Amazon Polly est activé dans votre région. | 
| GitHub Le déploiement des actions échoue | Vérifiez que `AWS_ACCESS_KEY_ID` les secrets `AWS_SECRET_ACCESS_KEY` du référentiel sont correctement configurés. Vérifiez que l'utilisateur IAM dispose des autorisations nécessaires au déploiement du CDK (CloudFormation Amazon ECS, Amazon S3, IAM). | 
| Backend non connecté (Streamlit indique qu'il est déconnecté) | Vérifiez que la variable d'`BACKEND_URL`environnement correspond à l'URL du service dans l'onglet Outputs. CloudFormation Vérifiez que le service Fargate fonctionne et fonctionne correctement dans la console Amazon ECS. | 
| État du job perdu après le redémarrage du conteneur | Activez la persistance des S3-based tâches Amazon en configurant la variable d'`S3_JOB_TRACKING`environnement. Sans cela, l'état de la tâche est stocké en mémoire uniquement et perdu au redémarrage du conteneur. | 

## Ressources connexes
<a name="deploy-meeting-intelligence-strands-agents-fargate-resources"></a>

*Références*
+ [Guide de l’utilisateur Amazon Bedrock](https://docs.aws.amazon.com/bedrock/latest/userguide/)
+ [Guide du développeur Amazon Polly](https://docs.aws.amazon.com/polly/latest/dg/)
+ [Guide du développeur Amazon ECS](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/)
+ [AWS Fargate Guide de l'utilisateur](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/AWS_Fargate.html)
+ [AWS CDK Guide du développeur CDK](https://docs.aws.amazon.com/cdk/v2/guide/)
+ [Guide de l'utilisateur Elastic Load Balancing](https://docs.aws.amazon.com/elasticloadbalancing/latest/application/)

*Outils*
+ [Documentation du SDK Strands Agents](https://strandsagents.com/)
+ [Documentation FastAPI](https://fastapi.tiangolo.com/)
+ [Documentation simplifiée](https://docs.streamlit.io/)
+ [GitHub Documentation des actions](https://docs.github.com/en/actions)

## Informations supplémentaires
<a name="deploy-meeting-intelligence-strands-agents-fargate-additional-information"></a>

*Multi-agent flux de travail de traitement*

La solution orchestre le traitement des réunions par le biais de quatre agents spécialisés qui s'exécutent de manière séquentielle dans le cadre des tâches Fargate. Chaque tâche se voit attribuer un identifiant de tâche unique et est exécutée de manière asynchrone pour des raisons d'évolutivité et d'isolation des pannes.

1. **Générateur de comptes rendus structurés** (`generate_structured_minutes`) — Prend en entrée la transcription et le titre bruts de la réunion. Utilise Amazon Bedrock Claude 3 Sonnet pour produire des comptes rendus de réunion complets, y compris les informations sur les réunions, les points de l'ordre du jour, le résumé des discussions, les mesures à prendre avec les destinataires et les délais, ainsi que les prochaines étapes. Enregistre le résultat sous forme de fichier texte brut.

1. **Générateur de résumé concis** (`concise_minutes_agent`) — Prend en entrée les minutes structurées complètes de l'agent 1. Utilise le sonnet Claude 3 d'Amazon Bedrock pour créer un résumé de moins de 3 000 caractères à des fins de génération audio et de lecture rapide.

1. **Générateur audio** (`audio_generator_agent`) — Prend en entrée les minutes concises de l'Agent 2. Utilise l'`speak`outil Strands avec Amazon Polly pour générer un fichier audio MP3 présentant un résumé concis.

1. **Générateur de rapports PDF** (`create_comprehensive_pdf`) — Prend en entrée les minutes structurées complètes de l'Agent 1. Utilise la ReportLab bibliothèque pour produire un rapport PDF professionnel avec un style de titre personnalisé, des en-têtes de section, une mise en page de texte lisible et des métadonnées.

*Flux de données*

1. **Téléchargement par l'utilisateur** : transcription de la réunion téléchargée via l'interface utilisateur Streamlit ou via un appel API direct.

1. **Initialisation de la tâche** : FastAPI crée un identifiant de tâche unique et le renvoie immédiatement pour un traitement asynchrone.

1. **Traitement en arrière-plan** — Le flux de travail de l'agent Strands en quatre étapes s'exécute de manière séquentielle.

1. **Gestion des fichiers** — Les fichiers générés sont chargés sur Amazon S3 avec des URL de téléchargement présignées.

1. **Fin du travail** : le statut est mis à jour avec des liens de téléchargement pour toutes les sorties générées.

*Considérations relatives aux améliorations futures*
+ Suivi permanent des tâches avec Amazon DynamoDB pour une fiabilité entre conteneurs
+ Multi-format support d'entrée (`.docx``.pdf`, fichiers de transcription audio)
+ Real-time WebSocket mises à jour des progrès

**End-to-End Flux de traitement**
+ La solution orchestre le traitement des réunions par le biais d'une séquence coordonnée d'agents spécialisés exécutant les tâches de Fargate. 
+ Chaque tâche se voit attribuer un **identifiant de tâche unique** et est exécutée de manière asynchrone pour garantir l'évolutivité et l'isolation des pannes. 
+ Le flux de travail inclut **l'ingestion des transcriptions → la génération de minutes structurées → le résumé exécutif → la narration audio → la création de rapports PDF**, chaque étape étant **validée et enregistrée en temps réel**.

**Four-Step Traitement des agents**

1. **Générateur de comptes rendus structurés** — produit des comptes rendus de réunion détaillés.

1. **Générateur de résumés concis** : crée un résumé pour une révision rapide et une narration audio.

1. **Générateur audio** — génère une narration MP3 du résumé.

1. **Générateur de rapports PDF** : produit des rapports PDF raffinés et formatés.

**Gestion automatisée des fichiers et intégration dans le cloud**
+ **Téléchargement automatique des résultats :** les rapports texte, audio et PDF structurés sont automatiquement chargés sur **Amazon S3** avec un **partitionnement approprié par ID de tâche**.
+ **Contrôles d'intégrité et gestion du cycle de vie :** les confirmations de téléchargement, la validation des fichiers et le nettoyage sont enregistrés pour garantir la transparence et la fiabilité opérationnelles.
+ Les tâches d'arrière-plan de **FastAPI** gèrent l'exécution asynchrone des tâches.

**Intégration et sorties de l'interface utilisateur**
+ L'interface utilisateur Streamlit affiche la connexion principale, la zone de saisie des transcriptions et Generate Minutes après le téléchargement de la transcription de la réunion via l'URL **S3 Pre-signed ** pour lancer les tâches.  
![](http://docs.aws.amazon.com/fr_fr/prescriptive-guidance/latest/patterns/images/pattern-img/dfd870ca-7a7d-48cc-a62a-b14c8c3c7bb6/images/f608a187-91bf-4524-a849-907eb5efb182.png)
+ Une fois le traitement terminé, le texte structuré, les sorties audio et PDF peuvent être téléchargées via des **URL Pre-signed S3**, accessibles via des boutons cliquables dans l'interface utilisateur.  
![](http://docs.aws.amazon.com/fr_fr/prescriptive-guidance/latest/patterns/images/pattern-img/dfd870ca-7a7d-48cc-a62a-b14c8c3c7bb6/images/b4fa32f4-32c3-43ae-b140-0f6a58ebe245.png)  
![](http://docs.aws.amazon.com/fr_fr/prescriptive-guidance/latest/patterns/images/pattern-img/dfd870ca-7a7d-48cc-a62a-b14c8c3c7bb6/images/eb878259-f90e-4d9f-8a4d-42627d04bdd1.png)