import gradio as gr from agent import run_agent from image_gen import generate_image def run_text(mode, prompt): return run_agent(mode, prompt) with gr.Blocks(title="Multimodal AI Agent (HF only)") as demo: gr.Markdown("## Multimodal Agent (Text, Research, Coding, Image) — No API keys") with gr.Tab("Text / Writing"): inp = gr.Textbox(lines=6, label="Task") out = gr.Textbox(lines=12, label="Output") btn = gr.Button("Run") btn.click(lambda x: run_text("text", x), inp, out) with gr.Tab("Research"): inp_r = gr.Textbox(lines=6, label="Research topic") out_r = gr.Textbox(lines=16, label="Notes") btn_r = gr.Button("Analyze") btn_r.click(lambda x: run_text("research", x), inp_r, out_r) with gr.Tab("Coding"): inp_c = gr.Textbox(lines=6, label="Coding task") out_c = gr.Textbox(lines=16, label="Code") btn_c = gr.Button("Generate") btn_c.click(lambda x: run_text("coding", x), inp_c, out_c) with gr.Tab("Image generation"): inp_i = gr.Textbox(lines=2, label="Prompt") out_i = gr.Image(label="Generated image") btn_i = gr.Button("Generate image") btn_i.click(generate_image, inp_i, out_i) if __name__ == "__main__": demo.launch()