Skip to content

Latest commit

 

History

History
244 lines (170 loc) · 9.58 KB

File metadata and controls

244 lines (170 loc) · 9.58 KB

Project Kisan 🌾 - Providing farmers with expert help on demand

Live Demo Python FastAPI Google AI ElevenLabs

Project Kisan is a voice-first, multilingual AI assistant for small-scale farmers. Powered by Google AI technologies and the Gemini model, it delivers crop disease diagnosis, real-time market insights, and government scheme guidance via natural voice in local languages, working even in low-network regions.


🎯 Major Challenges Faced by Indian Farmers

Challenges faced by Indian Farmers

Indian farmers face multiple interconnected challenges that affect their productivity and income:

  • Limited access to expert agricultural advice
  • Language barriers with technology solutions
  • Lack of real-time market and Weather information
  • Difficulty in identifying crop diseases early
  • Complex government scheme navigation
  • Poor internet connectivity in rural areas
  • Need for natural voice interaction in local languages

💡 Our Solution

Project Kisan Solution

Project Kisan addresses these challenges through:

  • AI-powered agricultural expertise available 24/7
  • Voice-first interface in multiple Indian languages
  • Real-time data integration from government sources
  • Offline capabilities for low-connectivity areas
  • Simplified access to government schemes,weather and market data

🚀 Live Application (Server permanently shut down to save credits.)

No installation required - works on any device with a browser

📱 Application Preview

home_screen.mp4

Key Features

Feature Description Technology
🌱 Crop Disease Diagnosis Vision AI–powered photo-based detection with localized remedies Google Gemini Vision
🌤️ Real-Time Weather Information Real-Time and Weather Forecasting for 7 days OpenWeatherMap API
📈 Real-Time Market Intelligence Live mandi prices & crop trends from government sources AgMarkNet API
🏛️ Government Scheme Navigator Eligibility checks & simplified explanations Data.gov.in APIs
🗣️ Voice-First & Multilingual Supports multiple languages as enabled by Google ADK Speech Recognition
🎙️ Premium Voice Synthesis High-quality Hindi voice responses with ElevenLabs AI ElevenLabs TTS
📶 Offline Support Cached responses via Gemini model for low-network zones PWA + Service Workers

🎬 Feature Showcase

🌱 Govt Scheme

image

🗣️ Weather and Irrigation

image

📊 Market Intelligence

image

🏗️ Tech Stack

Layer Technology Purpose
🎨 Frontend Progressive Web App (PWA) Mobile-first, offline-capable interface
⚡ Backend FastAPI, Google Cloud Run, Cloud Storage High-performance API with cloud scaling
🧠 AI & ML Google ADK, Gemini, Vision AI Intelligent conversations and image analysis
🎙️ Voice AI ElevenLabs Text-to-Speech Premium voice synthesis
🔗 Integrations AgMarkNet, eNAM, Weather APIs, Data.gov Real-time agricultural data

🔑 API Configuration

Service Environment Variable Required Get API Key Purpose
🤖 Google AI GOOGLE_API_KEY Required Get Key → AI conversations & vision
🌤️ Weather API WEATHER_API_KEY Required Get Key → Weather forecasting
🎙️ ElevenLabs ELEVENLABS_API_KEY Recommended Get Key → Premium voice synthesis
📊 Data.gov.in MANDI_API_KEY ⚠️ Optional Get Key → Government market data

Environment Setup

# Create .env file
GOOGLE_API_KEY=your_google_ai_api_key_here
WEATHER_API_KEY=your_openweathermap_api_key
ELEVENLABS_API_KEY=your_elevenlabs_api_key_here  # For premium voice
MANDI_API_KEY=your_data_gov_api_key  # Optional

🎙️ ElevenLabs Setup

  1. Sign up at ElevenLabs.io
  2. Get API key from your profile settings
  3. Free tier: 10,000 characters/month
  4. Paid tiers: Higher limits + more voice options

🛠️ Getting Started

⚡ Quick Start

# Clone the repository
git clone https://github.com/codeprofile/Project-Kisan.git
cd Project-Kisan

# Install dependencies
pip install -r requirements.txt

# Set up environment variables (add your API keys)
cp .env.example .env

# Run locally
uvicorn app.main:app --reload

🎙️ Testing Voice Features

  1. Open http://localhost:8000
  2. Look for 🎙️ Voice ON toggle in chat header
  3. Send a message: "मौसम कैसा है?"
  4. Listen to high-quality Hindi voice response!

🔧 Voice Configuration

Customize voice settings in app/google_adk_integration/services/elevenlabs_voice_service.py:

# Adjust voice parameters
self.voice_settings = {
    "stability": 0.5,        # 0-1: Lower = more expressive
    "similarity_boost": 0.75, # 0-1: Higher = more like original
    "style": 0.5,            # 0-1: Style strength
    "use_speaker_boost": True # Better quality
}

📁 Project Structure

Project-Kisan/
├── app/
│   ├── google_adk_integration/
│   │   ├── agents/              # AI agents for different domains
│   │   ├── tools/               # AI tool functions
│   │   ├── services/            
│   │   │   ├── elevenlabs_voice_service.py  # 🆕 Voice synthesis
│   │   │   └── ...              # Other business logic
│   │   └── farmbot_service.py   # Main AI service (updated with voice)
│   ├── templates/
│   │   └── home.html           # Frontend interface (voice-enabled)
│   ├── main.py                 # FastAPI application (voice endpoints)
│   └── websocket_conn.py       # WebSocket connections
├── requirements.txt            # Updated with voice dependencies
└── README.md                   # This file

🌐 Useful Resources

📚 Documentation

🎙️ Voice AI Resources

🌾 Agricultural Data Sources

🛠️ Development Resources


🌾 Built with ❤️ for Indian Farmers

GitHub stars GitHub forks

⭐ Star this repository to support AI-powered agriculture!

Transforming farming through artificial intelligence