This repository contains code for deploying a movie summarization pipeline using AWS services and Python-based Lambda functions. The pipeline utilizes Large Language Models for generating summaries of movies uploaded to an AWS S3 bucket.
The pipeline is designed to process video files uploaded to S3, using AWS services for event handling, task orchestration, and data storage. It offers both a full and a simplified version for different use cases.
- AWS S3 Integration: Upload and store movie files.
- Event-Driven Architecture: Trigger processes with AWS EventBridge and Step Functions.
- Data Storage: Store and retrieve data with Amazon DynamoDB.
- API Access: Interact with the pipeline through AWS API Gateway and Lambda functions.
- LLM Summarization: Leverage Bedrock and Anthropic's Claude v2 for generating summaries.
- AWS account and CLI configured.
- Terraform installed for infrastructure deployment.
- Python 3.8 for Lambda functions.
- Initialize Terraform
terraform init
- Apply Terraform Configuration
terraform apply
- Upload a video file to the designated S3 bucket.
- The pipeline will trigger and process the file.
- Access the summaries through the provided API endpoints.
- List Movies Endpoint:
GET /list
- Summarize Movie Endpoint:
GET /summarize/:id
- Anthropic for the Claude v2 model.
- AWS services used in this project.