- Notifications
You must be signed in to change notification settings - Fork1
This demo provides an automated loan application that streamlines document submission, verification, underwriting and approval processes.
License
awslabs/genai-labs-auto-loan-application
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
This repository provides an automated loan application processing system that streamlines document submission, verification, underwriting and approval processes. The solution helps financial institutions reduce manual processing time, minimize errors, and provide better customer experience through AI-powered document processing and validation.
- Intelligent document upload and processing (PDF/Images)
- Automated data extraction from key documents
- Real-time document validation and verification
- Automated loan application form completion
- DTI calculation and pre-approval letter generation
- Interactive chatbot for loan process assistance
The system creates and manages:
- Bedrock data automation blueprints for data extraction
- Bedrock multi-agents for document verification, DTI calculation
- Secure document storage system
- Application form auto-completion
- Pre-approval letter generation
- Chatbot integration for applicant
The demo script, use case, and persona is provided here:Demo Script
- AWS account
- Create IAM role/user withIAM policy for deployment
- AWS CLI (v2.x or later)
- For Linux/EC2 users, this application requires ARM architecture
- Install node and npm, node.js 22 is recommended
- Get started with CDK, andbootstrap your environment for use
- Install Docker, because we are bundling Lambda functions when running CDK so we need to install Docker. Please see the blog post aboutBuilding, bundling and deploying applications with the AWS CDK
- Run aws configure to set up region
aws configureset region YOUR_REGION
- Enable models in Amazon Bedrock, for this use case, you need to enable Anthropic Claude Sonnet 3.5 v2
- Clone this repository
- Install npm modules
cd auto-loan-applicationnpm run install-packages
- Deploy the backend and frontend
npm run deploy-all
To deploy the backend only
npm run deploy-backend
To deploy the frontend only
npm run deploy-frontend
- Access to the application fromCloudfront distribution URL, you can get this URL from the Cloudformation output with script:
aws cloudformation describe-stacks --stack-name$(aws cloudformation list-stacks --stack-status-filter CREATE_COMPLETE UPDATE_COMPLETE| jq -r'.StackSummaries[] | select(.StackName | startswith("AutoLoanAPPwebsitewafstack")) | .StackName') --query'Stacks[0].Outputs[?OutputKey==`configwebsitedistributiondomain`].OutputValue' --output text
- Create cognito user in the user pool to access the application
- Delete the stack. We recommend using the AWS CloudFormation service page to delete/manage your CDK stacks as it offers many options to monitor stack drifts, identify errors, and provides better stability.
Note:
- The deletion will fail if your S3 bucket is not empty
- The WAF stack deletion takes 15-20 minutes
- If CloudFormation deletion fails, review and manually delete these resources in the AWS Console:
- Bedrock Agents
- Bedrock Data Automation project
- Lambda functions and their associated CloudWatch log groups
- IAM roles
- Any remaining S3 buckets and their contents
Q: Why isn't the review page showing the application list?
A: If you're not seeing the application list on the review page, try clicking theClear
Button to refresh the view.
Q: How can I clear my conversation history and terminate the current session?
A: We useuserId
to track conversation history. To clear the history and terminate the current session, simply click theClear Chat
button in the chat interface.
Q: Why are S3 buckets and CloudWatch logs still in my account?
A: The S3 buckets and CloudWatch log groups are intentionally retained in your account as a safety measure to prevent accidental data loss during stack removal. To completely remove these resources, you'll need to manually delete them through the AWS Console or AWS CLI - first empty the S3 bucket contents before deletion, and CloudWatch log groups can be deleted directly.