Kairo is a personalized AI assistant that uses Retrieval-Augmented Generation (RAG) to tailor responses based on your own documents and daily needs. By combining Google Gemini models with ChromaDB, Kairo retrieves your uploaded information to generate more accurate, context-aware answers.
- Personalized responses using your own notes, PDFs, and documents
- Integration with Google Gemini via Google AI Studio
- Document storage and retrieval using ChromaDB
- Simple setup and easy prompting experience
You will need accounts and API keys for:
-
Google AI Studio
Used for accessing Google Gemini models. https://aistudio.google.com/ -
ChromaDB
Used to store and retrieve your embedded documents. https://www.trychroma.com/
Before running the assistant, install all Python requirements.
python -m venv venvActivate it:
Windows
venv\Scripts\activatemacOS/Linux
source venv/bin/activateThe project includes a requirements.txt file with all necessary dependencies. Install them by running:
pip install -r requirements.txtThis will install all required packages including:
- Google Generative AI SDK
- ChromaDB client
- Python-dotenv for environment management
- PyPDF2 or similar for document processing
- And all other project dependencies
Tip: If you need to update or regenerate the requirements file in the future, you can run:
pip freeze > requirements.txtYou are now ready to run the assistant locally.
Get your Google AI Studio and ChromaDB API keys from their respective dashboards.
Use SSH or HTTPS to clone the repo:
git clone <your-repo-url>Navigate to the project directory:
cd kairoIn the project root directory, create a .env file containing:
GOOGLE_API_KEY=...
CHROMADB_API_KEY=...
TENANT_ID=...
DATABASE_ID=...Replace the placeholders with your actual values.
Place any PDFs or text files inside the data/ folder.
These documents help Kairo give personalized responses.
Examples:
- Class notes
- Resume or LinkedIn export
- Project documentation
- Personal goals or journal summaries
Process and upload your documents to ChromaDB:
python setup.pyLaunch Kairo in your terminal:
python main.pyYou can now begin prompting your own personalized AI assistant directly in the console.
To use the web interface for Kairo, follow these steps:
Step 1: Start the Backend Server
In your terminal, run the Flask application. This will start a local server that powers the web interface.
python app.pyYou should see output indicating that the server is running on http://127.0.0.1:5000. Keep this terminal window open.
Step 2: Open the Frontend
Navigate to the frontend directory and open the index.html file in your web browser.
You can usually do this by double-clicking the file or by right-clicking and selecting "Open with" your preferred browser.
Step 3: Ask Kairo!
You can now use the search bar on the webpage to ask Kairo questions. The web page will send your query to the backend server and display the response.
- Do not commit your
.envfile to Git. Add it to your.gitignorefile. - You may add or remove documents anytime—just rerun
setup.pyto refresh the database. - Ensure your virtual environment is activated before running any commands.
Enjoy personalized, context-aware AI responses tailored to your own documents, goals, and knowledge.