Caution
This repo is no longer maintained. Checkout pipecat-examples for recent demos and example code.
Pipecat Travel Companion is a smart travel assistant powered by the GeminiMultimodalLiveLLMService.
It offers personalized recommendations and services like checking the weather, suggesting nearby restaurants,
and providing recent news based on your current location.
- Location Sharing:
- Retrieves your current location using the
get_my_current_locationRTVI function calling. - Shares selected restaurant locations using the
set_restaurant_locationRTVI function calling, which opens Google Maps on iOS.
- Retrieves your current location using the
- Weather Updates: Uses
google_searchto check and share the current weather. - Restaurant Recommendations: Suggests restaurants near your current location using
google_search. - Local News: Provides relevant and recent news from your location using
google_search.
Follow these steps to set up and run the Pipecat Travel Companion server.
Navigate to the server directory and set up a virtual environment:
cd server
python3 -m venv venv
source venv/bin/activateInstall the required dependencies in development mode:
pip install -r requirements.txt- Copy the example environment configuration file:
cp env.example .env- Open
.envand add your API keys and configuration details.
Start the server with the following command:
cd server
python src/server.py --host YOUR_IPReplace YOUR_IP with your desired host IP address.
This project is designed to work with a companion iOS app. The app:
- Uses RTVI function calls to share the user's current location with the LLM.
- Receives restaurant location suggestions from the LLM and opens Google Maps to display the location.
For detailed instructions on setting up and running the iOS app, refer to this link.
- Ensure all required API keys are defined.
Happy travels with Pipecat! 🌍