A sophisticated AI travel planning assistant showcasing AutoGen's advanced memory capabilities with dual-layer memory architecture: Redis-backed chat history and Mem0 based long term memory that remembers user preferences.
- 🎯 Dual-Layer Memory: Short-term chat history (Redis) + Long-term learning (Mem0+Redis)
- 👥 User Isolation: Pre-seeded users get completely separate memory contexts
- 🔄 Session Persistence: Your conversations and preferences survive app restarts
- 📚 Intelligent Learning: The agent learns your travel preferences automatically
- 🌐 Real-time Search: Live travel information via Tavily search API
- 💬 Clean Chat UI: Gradio interface with user management
- 📅 Calendar Export (ICS): Generate a calendar file for your itinerary and open it directly in your default calendar app
You'll need three API keys:
- OpenAI API Key: Get from platform.openai.com
- Tavily API Key: Get from tavily.com (free tier available)
- Redis URL: See step two
You have 3 options for Redis:
docker run --name redis -p 6379:6379 -d redis:8.0.3
Get a free db here.
Here's a quickstart guide to create Azure Managed Redis for as low as $12 monthly: https://learn.microsoft.com/en-us/azure/redis/quickstart-create-managed-redis
# Install uv (Python package manager)
curl -LsSf https://astral.sh/uv/install.sh | sh
# Clone and install
git clone <repository-url>
cd amr-autogen-travel-agent
# Get uv env setup
uv sync
Create a .env
file with your API keys:
cp env.example .env
Edit the .env
file as needed.
uv run python gradio_app.py
🎉 Open http://localhost:7860 to start chatting!
The application will:
- ✅ Validate your configuration and API connections
- ✅ Initialize the dual-layer memory system
- ✅ Load the user management interface
- ✅ Enable calendar export/open from finalized itineraries
The demo comes with pre-configured user profiles (Tyler, Purna, and Jan) that have distinct travel preferences. You can easily customize these or add new profiles by editing context/seed.json
.
🚀 Ready to see AI memory in action? Start chatting and watch your travel preferences get smarter!