import gradio as gr from openai import OpenAI def run_agent(openai_key, user_prompt): if not openai_key: return "Please enter your OpenAI API Key first!" try: # Initialize the OpenAI client right inside the function client = OpenAI(api_key=openai_key) # Simple agent/LLM call (adjust the prompt/system message to match your specific agent logic) response = client.chat.completions.create( model="gpt-4o-mini", # Highly capable and fast default messages=[ {"role": "system", "content": "You are a helpful AI Descriptor agent."}, {"role": "user", "content": user_prompt} ] ) return response.choices[0].message.content except Exception as e: return f"Error: {str(e)}" # Define a clean Gradio Interface with gr.Blocks() as demo: gr.Markdown("# AI Descriptor Agent") with gr.Row(): key_input = gr.Textbox( label="1. Enter your OpenAI API Key", placeholder="sk-proj-...", type="password" ) with gr.Row(): prompt_input = gr.Textbox( label="2. Ask the Agent anything", placeholder="Describe what you need..." ) submit_btn = gr.Button("Run Agent") output_text = gr.Textbox(label="Agent Response") submit_btn.click( fn=run_agent, inputs=[key_input, prompt_input], outputs=output_text ) demo.launch()