import os import time import random from flask import Flask, render_template, request, jsonify import json from groq import Groq from dotenv import load_dotenv # Load Environment Variables load_dotenv() app = Flask(__name__) # --- GROQ LLM CONFIGURATION --- GROQ_API_KEY = os.getenv("GROQ_API_KEY") client = Groq(api_key=GROQ_API_KEY) if GROQ_API_KEY else None GROQ_MODEL = "llama-3.3-70b-versatile" # Import Weather Fetcher try: from weather_fetcher import get_weather_data except ImportError: def get_market_prices(force_refresh=False): return [] # Placeholder for now def get_weather_data(city="Chennai"): return None def get_llm_response(user_query, language='en', market_context=None, weather_context=None): if not client: return "Groq API Key not configured. Please add GROQ_API_KEY to your .env file." try: if language == 'ta': system_rules = ( "நீங்கள் 'AgroVeda' என்ற மிகவும் அனுபவம் வாய்ந்த விவசாய நிபுணர் மற்றும் தாவர மருத்துவர். " "பயிர்கள், மண், நோய்கள் மற்றும் பூச்சிகள் பற்றி விவசாயிகளுக்கு விரிவான மற்றும் தொழில்முறை ஆலோசனைகளை வழங்கவும். " "உங்கள் பதில்கள் மிகவும் விரிவாகவும், கல்வி சார்ந்ததாகவும் இருக்க வேண்டும். சுருக்கமான பதில்களைத் தவிர்க்கவும். " "விவசாயிகள் தீர்வுகளை நிஜ வாழ்க்கையில் செயல்படுத்த உதவும் வகையில் எப்போதும் குறிப்பிட்ட உதாரணங்களை வழங்கவும். " "நோய்களைக் பற்றி கேட்கும் போது, முழுமையான மருத்துவ பகுப்பாய்வு செய்யவும்: அறிகுறிகள், உயிரியல் காரணங்கள் மற்றும் படிப்படியான சிகிச்சை முறைகளை விளக்கவும். " "முக்கியமானது: உங்கள் பதில்கள் அனைத்தும் தமிழில் இருக்க வேண்டும். " "HTML டேக்குகளை மட்டும் பயன்படுத்தவும்: ,
,