import gradio as gr import google.generativeai as genai from PIL import Image import io import numpy as np def generate_content(api_key, prompt, image_data): genai.configure(api_key=api_key) # Convert uploaded binary data into a PIL image. # image = Image.open(io.BytesIO(image_data)) image = Image.fromarray(np.uint8(image_data)).convert('RGB') model = genai.GenerativeModel('gemini-pro-vision') response = model.generate_content([prompt, image]) response.resolve() return response.text with gr.Blocks() as app: gr.Markdown("# Morshen micro is demo") gr.Markdown("https://ai.google.dev/") api_key_input = gr.Textbox(label="API Key", type="password", value="AIzaSyBx6NCOCoNTpvock5As8_IYctd_zGqom4U", placeholder="Enter your API Key", lines=1) # image_input = gr.File(label="Upload an image", type="binary") image_input = gr.Image(label="Загрузить изображение ") prompt_input = gr.Textbox(label="Функция", placeholder="Enter your Prompt", value="Идентификация вируса/бактерии и назначение по лечению ",lines=3) generate_button = gr.Button("Пуск") output = gr.Markdown() generate_button.click( generate_content, inputs=[api_key_input, prompt_input, image_input], outputs=output ) app.launch()