Skip to content

atene201/Kairo

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Kairo — Personal AI Assistant

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.

🚀 Features

  • 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

📦 Requirements

You will need accounts and API keys for:

  1. Google AI Studio
    Used for accessing Google Gemini models. https://aistudio.google.com/

  2. ChromaDB
    Used to store and retrieve your embedded documents. https://www.trychroma.com/

💻 Installing Dependencies on Your Local Machine

Before running the assistant, install all Python requirements.

1. Create/Activate a Virtual Environment (recommended)

python -m venv venv

Activate it:

Windows

venv\Scripts\activate

macOS/Linux

source venv/bin/activate

2. Install Project Requirements

The project includes a requirements.txt file with all necessary dependencies. Install them by running:

pip install -r requirements.txt

This 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.txt

You are now ready to run the assistant locally.

🛠️ Setup Instructions

1. Acquire the Required API Keys

Get your Google AI Studio and ChromaDB API keys from their respective dashboards.

2. Clone the GitHub Repository

Use SSH or HTTPS to clone the repo:

git clone <your-repo-url>

Navigate to the project directory:

cd kairo

3. Create a .env File

In 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.

4. Add Your Personal Documents

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

5. Run the Setup Script

Process and upload your documents to ChromaDB:

python setup.py

6. Start the Assistant (Terminal)

Launch Kairo in your terminal:

python main.py

You can now begin prompting your own personalized AI assistant directly in the console.

7. Running the Web Application (New)

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.py

You 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.

🧩 Additional Notes

  • Do not commit your .env file to Git. Add it to your .gitignore file.
  • You may add or remove documents anytime—just rerun setup.py to refresh the database.
  • Ensure your virtual environment is activated before running any commands.

🎉 You're Ready to Use Kairo!

Enjoy personalized, context-aware AI responses tailored to your own documents, goals, and knowledge.

About

Personal AI Assistant

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •