ML 18056 com arch
Generative AI is transforming how businesses deliver personalized experiences across industries, including travel and hospitality. Travel agents are enhancing their services by offering personalized holiday packages, carefully curated for customer’s unique preferences, including accessibility needs, dietary restrictions, and activity interests. Meeting these expectations requires a solution that combines comprehensive travel knowledge with real-time pricing and availability information.
In this post, we show how to build a generative AI solution using Amazon Bedrock that creates bespoke holiday packages by combining customer profiles and preferences with real-time pricing data. We demonstrate how to use Amazon Bedrock Knowledge Bases for travel information, Amazon Bedrock Agents for real-time flight details, and Amazon OpenSearch Serverless for efficient package search and retrieval.
Travel agencies face increasing demands for personalized recommendations while struggling with real-time data accuracy and scalability. Consider a travel agency that needs to offer accessible holiday packages: they need to match specific accessibility requirements with real-time flight and accommodation availability but are constrained by manual processing times and outdated information in traditional systems. This AI-powered solution combines personalization with real-time data integration, enabling the agency to automatically match accessibility requirements with current travel options, delivering accurate recommendations in minutes rather than hours.The solution uses a three-layer architecture to help travel agents create personalized holiday recommendations:
The following diagram illustrates this architecture.
With this layered approach, travel agents can capture customer requirements, enrich them with stored preferences, integrate real-time data, and deliver personalized recommendations that match customer needs. The following diagram illustrates how these components are implemented using AWS services.
The AWS implementation includes:
This solution uses a AWS CloudFormation template that automatically provisions and configures the required resources. The template handles the complete setup process, including service configurations and necessary permissions.
For the latest information about service quotas that might affect your deployment, refer to AWS service quotas.
To deploy and use this solution, you must have the following:
You can deploy this solution in your AWS account using AWS CloudFormation. Complete the following steps:
You will be redirected to the Create stack wizard on the AWS CloudFormation console with the stack name and the template URL already filled in.
The stack takes around 10 minutes to create the resources. Wait until the stack status is CREATE_COMPLETE before continuing to the next steps.
The CloudFormation template automatically creates and configures components for data storage and management, Amazon Bedrock, and the API and interface.
The template sets up the following data storage and management resources:
travel_data.json
and promotions.csv
), prompt template, and the API schemaFor Amazon Bedrock, the CloudFormation template creates the following resources:
FlightPricingLambda
Lambda function and the API schema retrieved from the S3 bucketTo enable API access and the UI, the template configures the following resources:
After stack creation is complete, you can verify the setup on the Outputs tab of the AWS CloudFormation console, which provides the following information:
The web interface provides an intuitive form where travel agents can input customer requirements, including:
Joe
or Will
)You can call the API directly using the following code:
For demonstration purposes, we create sample user profiles in the UserPreferences
and TravelHistory
tables in DynamoDB.
The UserPreferences
table stores user-specific travel preferences. For instance, Joe
represents a luxury traveler with wheelchair accessibility requirements.
Will
represents a budget traveler with elderly-friendly needs. These profiles help showcase how the system handles different customer requirements and preferences.
The TravelHistory
table stores past trips taken by users. The following tables show the past trips taken by the user Joe
, showing destinations, trip durations, ratings, and travel dates.
Let’s walk through a typical use case to demonstrate how a travel agent can use this solution to create personalized holiday recommendations.Consider a scenario where a travel agent is helping Joe, a customer who requires wheelchair accessibility, plan a luxury vacation. The travel agent enters the following information:
Joe
When a travel agent submits a request, the system orchestrates a series of actions through the PersonalisedHolidayFunction
Lambda function, which will query the knowledge base, check real-time flight information using the mock API, and return personalized recommendations that match the customer’s specific needs and preferences. The recommendation layer uses the following prompt template:
The system retrieves Joe’s preferences from the user profile, including:
The system then generates personalized recommendations that consider the following:
Each recommendation includes the following details:
To avoid incurring future charges, delete the CloudFormation stack. For more information, see Delete a stack from the CloudFormation console.
The template includes proper deletion policies, making sure the resources you created, including S3 buckets, DynamoDB tables, and OpenSearch collections, are properly removed.
To further enhance this solution, consider the following:
In this post, you learned how to build an AI-powered holiday recommendation system using Amazon Bedrock that helps travel agents deliver personalized experiences. Our implementation demonstrated how combining Amazon Bedrock Knowledge Bases with Amazon Bedrock Agents effectively bridges historical travel information with real-time data needs, while using serverless architecture and vector search for efficient matching of customer preferences with travel packages.The solution shows how travel recommendation systems can balance comprehensive travel knowledge, real-time data accuracy, and personalization at scale. This approach is particularly valuable for travel organizations needing to integrate real-time pricing data, handle specific accessibility requirements, or scale their personalized recommendations. This solution provides a practical starting point with clear paths for enhancement based on specific business needs, from modernizing your travel planning systems or handling complex customer requirements.
To learn more, refer to the following resources:
Vishnu Vardhini is a Solutions Architect at AWS based in Scotland, focusing on SMB customers across industries. With expertise in Security, Cloud Engineering and DevOps, she architects scalable and secure AWS solutions. She is passionate about helping customers leverage Machine Learning and Generative AI to drive business value.
Details on how the big diffusion model finetunes are trained is scarce, so just like…
Our advanced model officially achieved a gold-medal level performance on problems from the International Mathematical…
The ever-increasing parameter counts of deep learning models necessitate effective compression techniques for deployment on…
Extracting meaningful insights from unstructured data presents significant challenges for many organizations. Meeting recordings, customer…
The incident's legacy extends far beyond CrowdStrike. Organizations now implement staged rollouts and maintain manual…
“Unfortunately, I think ‘No bad person should ever benefit from our success’ is a pretty…