- Google API Key - For Gemini LLM (the brain of the system)
- Google Drive Credentials - Currently using mock responses
- SerpAPI Key - Currently using free DuckDuckGo
Why needed: Powers the AI that generates intelligent responses Cost: Free tier available (generous limits)
- Go to: https://makersuite.google.com/app/apikey
- Click "Create API Key"
- Copy the key
- Edit
backend/.env:GOOGLE_API_KEY=your_actual_key_here
Current Status: ✅ Working with mock responses Why optional: System simulates Google Drive responses for demo
To enable real Google Drive access:
- Google Cloud Console: https://console.cloud.google.com/
- Create/Select Project
- Enable APIs:
- Go to "APIs & Services" → "Library"
- Search "Google Drive API" → Enable
- Create Credentials:
- Go to "APIs & Services" → "Credentials"
- Click "Create Credentials" → "OAuth 2.0 Client IDs"
- Application type: "Desktop application"
- Name: "Agentic RAG Chatbot"
- Download JSON:
- Download the credentials file
- Rename to
credentials.json - Place in
backend/folder
First run: Browser will open for Google OAuth consent
Current Status: ✅ Working with DuckDuckGo (free) Why optional: DuckDuckGo provides good results without API limits
To enable SerpAPI (better results, more reliable):
- Sign up: https://serpapi.com/users/sign_up
- Get API Key: Dashboard → API Key
- Add to
.env:SERPAPI_API_KEY=your_serpapi_key_here - Update code in
backend/agents/web_search_agent.py:# Uncomment these lines: from langchain_community.tools import SerpAPIWrapper search = SerpAPIWrapper(serpapi_api_key=os.getenv("SERPAPI_API_KEY"))
- Google Gemini API: 60 queries/minute, 1500/day (very generous)
- DuckDuckGo: Completely free, unlimited
- Google Drive API: 100 requests/100 seconds/user (sufficient for most use)
- SerpAPI: $50/month for 5000 searches (optional)
- Google Gemini: $0.001 per 1000 tokens after free tier
For immediate testing: Just add Google API key (only required step) For production: Add all credentials for full functionality
The system is designed to work excellently with just the Google API key!
Run this command to see current status:
curl http://localhost:8001/healthResponse shows which services are active:
{
"status": "healthy",
"services": {
"pdf_processing": "✓",
"vector_store": "✓",
"web_search": "✓",
"google_drive_mcp": "✓",
"speech_to_text": "✓"
}
}All services show ✓ even with mock Google Drive!