The Secure AI Assistant is a FastAPI application designed to provide a private AI-powered knowledge assistant. It utilizes the Gemini API for natural language processing, Midnight for privacy protection, and Auth0 for secure user authentication.
- User Authentication: Secure login and registration using Auth0.
- AI Interaction: Users can send queries to the AI assistant and receive intelligent responses.
- Document Management: Upload and query personal documents while ensuring privacy through Midnight.
secure-ai-assistant
├── app
│ ├── api
│ │ ├── routes
│ ├── core
│ ├── db
│ ├── services
│ ├── schemas
│ └── utils
├── tests
├── .env
├── .gitignore
├── requirements.txt
└── docker-compose.yml
-
Clone the repository:
git clone <repository-url> cd secure-ai-assistant -
Create a virtual environment and activate it:
python -m venv venv source venv/bin/activate # On Windows use `venv\Scripts\activate` -
Install the required dependencies:
pip install -r requirements.txt -
Set up environment variables in the
.envfile:AUTH0_DOMAIN=<your-auth0-domain> AUTH0_CLIENT_ID=<your-auth0-client-id> AUTH0_CLIENT_SECRET=<your-auth0-client-secret> GEMINI_API_KEY=<your-gemini-api-key> MIDNIGHT_API_KEY=<your-midnight-api-key>
To start the FastAPI application, run:
uvicorn app.main:app --reload
To run the tests, use:
pytest
This project is licensed under the MIT License. See the LICENSE file for details.