import gradio as gr import requests import os GEMINI_API_KEY = os.getenv("GEMINI_API_KEY") FIRECRAWL_KEY = os.getenv("FIRECRAWL_KEY") def lovable_agent(query): if not GEMINI_API_KEY: return "❌ Gemini API key missing" if not FIRECRAWL_KEY: return "❌ Firecrawl API key missing" # 🔥 Step 1 — Firecrawl से वेबसर्च / scrape crawl = requests.post( "https://api.firecrawl.dev/v1/search", headers={"Authorization": f"Bearer {FIRECRAWL_KEY}"}, json={"query": query}, ).json() context = str(crawl) # 🤖 Step 2 — Gemini reasoning + planning payload = { "model": "gemini-2.5-flash-lite", "messages": [ {"role": "system", "content": "You are an agentic AI assistant."}, {"role": "user", "content": f"Research:\n{context}\n\nQuestion: {query}"} ], "max_tokens": 1000, } reply = requests.post( "https://generativelanguage.googleapis.com/v1beta/openai/chat/completions?key=" + GEMINI_API_KEY, json=payload ).json() try: return reply["choices"][0]["message"]["content"] except: return "⚠️ API Response Error:\n" + str(reply) # UI ui = gr.Interface( fn=lovable_agent, inputs=gr.Textbox(label="Ask anything", placeholder="Ex: Generate YouTube strategy..."), outputs=gr.Textbox(label="Lovable Agent Output"), title="❤️ Open Lovable — Agentic Intelligence", description="Gemini + Firecrawl powered research agent" ) ui.launch()