content / agent.py
yumna7's picture
Update agent.py
3e7dabe verified
import google.generativeai as genai
import gradio as gr
import os
# 🔑 Configure your Gemini API key
api_key = os.getenv("YOUR_GEMINI_API_KEY")
genai.configure(api_key=api_key)
print("Using API key:", api_key)
# Choose Gemini model
model = genai.GenerativeModel("gemini-1.5-flash")
def build_agent(description):
status_msg = "Generating agent plan... ⏳"
output_md = ""
yield gr.update(value=status_msg), gr.update(value=output_md)
prompt = f"""
You are Google Opal Agent Builder.
The user wants to create an AI Agent.
Agent description: "{description}"
✨ Please return in readable text format with headings:
1. Agent Purpose
2. Inputs (what the agent expects from the user)
3. Step-by-step Workflow
4. Example Interaction (dialogue between user and agent)
"""
response = model.generate_content(prompt)
status_msg = "✅ Done!"
output_md = response.text.strip()
# إرجاع النتيجة النهائية
yield gr.update(value=status_msg), gr.update(value=output_md)
# Gradio UI
with gr.Blocks() as demo:
gr.Markdown("## Google Opal Agent Builder (Gemini-powered)")
with gr.Row():
with gr.Column():
gr.Markdown("### Describe Your Agent")
description_input = gr.Textbox(
lines=3,
placeholder="Enter your agent description here"
)
build_btn = gr.Button("Build Agent")
with gr.Column():
status_box = gr.Textbox(label="Status", interactive=False)
output_box = gr.Markdown(label="Agent Plan")
build_btn.click(
build_agent,
inputs=description_input,
outputs=[status_box, output_box]
)
demo.launch()