import streamlit as st import sys import subprocess import os # --- FORCE INSTALLER (The "Fixer") --- def install_package(package): try: subprocess.check_call([sys.executable, "-m", "pip", "install", package]) except Exception as e: st.error(f"Installation failed for {package}: {e}") # Check if Gemini is missing, then install it try: import google.generativeai as genai except ImportError: # Build ke waqt hi install karne ki koshish karega install_package("google-generativeai") import google.generativeai as genai # --- PAGE CONFIG --- st.set_page_config(page_title="Nexus Flow AI Pro", page_icon="⚡", layout="wide") # --- API KEY --- if "GOOGLE_API_KEY" in st.secrets: genai.configure(api_key=st.secrets["GOOGLE_API_KEY"]) else: st.error("⚠️ Sanjeev, please add GOOGLE_API_KEY in Settings > Secrets!") st.stop() # --- THE BRAIN --- instruction = "You are Nexus Flow AI Pro, Sanjeev's digital avatar. Expert in Video Editing (Punch Edit) and Coding." model = genai.GenerativeModel("gemini-1.5-flash", system_instruction=instruction) # --- SIMPLE CHAT --- if "messages" not in st.session_state: st.session_state.messages = [] for m in st.session_state.messages: with st.chat_message(m["role"]): st.markdown(m["content"]) if prompt := st.chat_input("Kaise help karu Sanjeev?"): st.session_state.messages.append({"role": "user", "content": prompt}) with st.chat_message("user"): st.markdown(prompt) with st.chat_message("assistant"): try: response = model.generate_content(prompt) st.markdown(response.text) st.session_state.messages.append({"role": "assistant", "content": response.text}) except Exception as e: st.error(f"Model Error: {e}")