ivanpetrushev / meeting-notes-extractor

Tool to automatically extract meeting notes from audio/video meeting recordings
MIT License
0 stars 0 forks source link

Meeting Notes Extractor

Meeting Notes Extractor is a tool that extracts meeting notes from meeting recordings. It leverages AWS services such as AWS Transcribe for generating meeting subtitles and AWS Bedrock for summarizing the output, creating segments and identifying action items.

Architecture

Architecture

The architecture includes the following components:

S3 buckets:

Lambda functions:

AWS Transcribe: convert recordings (audio or video) to subtitles

AWS Bedrock: LLMs to summarize the transcript, create segments and identify action items

Prerequisites

Deployment

Copy the .env.dev file to .env and fill in the required values. Deployment and infrastructure are managed using Terraform. Set your pre-prepared S3 bucket and DynamoDB table for Terraform state and lock in the config.tf file: terraform -> backend -> s3.

Run:

make init workspace apply

This will deploy the infrastructure.

Usage

Upload a meeting recording to the input bucket. Transcribe process will start automatically and will take some time (progress can be tracked in AWS console). It will generate a transcript in the transcript bucket, which will automatically start the summarization process. The meeting notes will be generated in the output bucket.

Pricing

Currently (2024-07-12) AWS pricing is:

Plugins

The project is structured in a way that allows for easy addition of new plugins. Plugins fall into two categories:

To instal a plugin, navigate to its directory and run:

make apply

For more information, see the README in the plugin directory.

Input plugins

Output plugins

Improvement points

Current implementation is a MVP - it can be used on its own, but it would benefit greatly from any of the following:

License

This project is licensed under the MIT License - see the LICENSE file for details.