Personalised Travel Itinerary Generator using RAG + LLMs
See the codeAuraTrips is an innovative, AI-powered travel itinerary generator designed to create personalized travel experiences based on user preferences. LeveRAGing cutting-edge AI technologies, including RAG (Retrieval-Augmented Generation) and LLM (Large Language Models), AuraTrips curates dream vacations by synthesizing data from thousands of verified travelers' experiences.
This solution is focusing on creating a web application that generates tailored travel itineraries. AuraTrips goes beyond the basic requirements, offering a seamless, user-friendly interface coupled with powerful backend processing to deliver dynamic, detailed itineraries that cater to individual needs and preferences.
AuraTrips follows a modern, scalable architecture:
Clone the repository:
git clone https://github.com/anxkhn/auratrips.git
cd auratrips/server
Set up a virtual environment:
python -m venv venv
source venv/bin/activate # On Windows, use `venv\Scripts\activate`
Install dependencies:
pip install -r requirements.txt
Set up environment variables:
cp .env.example .env
Edit the .env file with your specific configuration.
Run the server:
uvicorn app.main:app --reload
Signup Page
Trips Planner Page
Travel Page
Navigate to the client directory:
cd ../client
Install dependencies:
npm install
Set up environment variables:
cp .env.example .env
Edit the .env file with your specific configuration.
Run the development server:
npm run dev
http://localhost:5173 (or the port specified by Vite).AuraTrips implements a RAG (Retrieval-Augmented Generation) model to leverage data from a local CSV file containing information about the best travel destinations. This approach allows us to provide more accurate and up-to-date recommendations by combining the power of large language models with real-world data.
The open-source LLaMA 3 model is used for curating and generating personalized itineraries. By utilizing this advanced language model, we can create more natural and context-aware travel plans that truly reflect the user's preferences and interests.
The RAG implementation involves the following steps:
Challenge: Integrating RAG with LLaMA 3 for accurate travel recommendations. Solution: Developed a custom pipeline that retrieves relevant information from our CSV dataset based on user preferences, then uses this context to guide the LLaMA 3 model in generating personalized itineraries.
Challenge: Unable to share with friends and family. Solution: Added a feature to share the itinerary by downloading it as a PDF file or printing it. Additionally, the unique link can be shared via email.
Challenge: Expensive to keep using LLaMA 3 model. Solution: Implemented caching of responses from the LLM to reduce the cost of using the model. Subsequent requests for the same itinerary are essentially free as they are hashed to get a unique id and stored in the database.
The backend is deployed on Railway and can be accessed at
https://auratrips-backend-pvt-production.up.railway.app.
The frontend is deployed on Vercel and can be accessed at
Made with ❤️ by Anas Khan
Personalised Travel Itinerary Generator using RAG + LLMs
See the codeAuraTrips is an innovative, AI-powered travel itinerary generator designed to create personalized travel experiences based on user preferences. LeveRAGing cutting-edge AI technologies, including RAG (Retrieval-Augmented Generation) and LLM (Large Language Models), AuraTrips curates dream vacations by synthesizing data from thousands of verified travelers' experiences.
This solution is focusing on creating a web application that generates tailored travel itineraries. AuraTrips goes beyond the basic requirements, offering a seamless, user-friendly interface coupled with powerful backend processing to deliver dynamic, detailed itineraries that cater to individual needs and preferences.
AuraTrips follows a modern, scalable architecture:
Clone the repository:
git clone https://github.com/anxkhn/auratrips.git
cd auratrips/server
Set up a virtual environment:
python -m venv venv
source venv/bin/activate # On Windows, use `venv\Scripts\activate`
Install dependencies:
pip install -r requirements.txt
Set up environment variables:
cp .env.example .env
Edit the .env file with your specific configuration.
Run the server:
uvicorn app.main:app --reload
Signup Page
Trips Planner Page
Travel Page
Navigate to the client directory:
cd ../client
Install dependencies:
npm install
Set up environment variables:
cp .env.example .env
Edit the .env file with your specific configuration.
Run the development server:
npm run dev
http://localhost:5173 (or the port specified by Vite).AuraTrips implements a RAG (Retrieval-Augmented Generation) model to leverage data from a local CSV file containing information about the best travel destinations. This approach allows us to provide more accurate and up-to-date recommendations by combining the power of large language models with real-world data.
The open-source LLaMA 3 model is used for curating and generating personalized itineraries. By utilizing this advanced language model, we can create more natural and context-aware travel plans that truly reflect the user's preferences and interests.
The RAG implementation involves the following steps:
Challenge: Integrating RAG with LLaMA 3 for accurate travel recommendations. Solution: Developed a custom pipeline that retrieves relevant information from our CSV dataset based on user preferences, then uses this context to guide the LLaMA 3 model in generating personalized itineraries.
Challenge: Unable to share with friends and family. Solution: Added a feature to share the itinerary by downloading it as a PDF file or printing it. Additionally, the unique link can be shared via email.
Challenge: Expensive to keep using LLaMA 3 model. Solution: Implemented caching of responses from the LLM to reduce the cost of using the model. Subsequent requests for the same itinerary are essentially free as they are hashed to get a unique id and stored in the database.
The backend is deployed on Railway and can be accessed at
https://auratrips-backend-pvt-production.up.railway.app.
The frontend is deployed on Vercel and can be accessed at
Made with ❤️ by Anas Khan