Gradio: 快速原型设计工具,无需前端知识即可创建直观的机器学习模型Web界面

Gradio是一个开源Python库,用于无需JavaScript、CSS或Web托管经验,通过简单的Python代码快速构建机器学习模型、API或任何Python功能的动态演示或Web应用。它通过提供直观的框架简化了开发流程,使得机器学习开发者、研究人员和爱好者可以创建美观互动的演示,增强模型的理解和可接近性,让技术更接近广泛用户。

安装和使用Gradio

安装Gradio简单,推荐在独立的Python环境中进行。使用如下命令创建并激活环境后,安装Gradio和Jupyter Notebook:

conda create -n gradio_test python=3.11 -y
conda activate gradio_test
pip install gradio
conda install jupyter -y

示例

示例1:Hello World程序

创建一个简单的Web应用界面,允许用户输入名称和选择重复次数,返回包含输入名称的问候消息。

import gradio as gr

def greet(name, copies):
    return "Hello " + name + " " * copies + "!"

demo = gr.Interface(
    fn=greet,
    inputs=[gr.Textbox(label="Input"), gr.Slider(1, 100, value=4, step=1, label="Count")],
    outputs=gr.Textbox(label="Output")
)

demo.launch(share=True)

示例2:图像描述

通过Gradio和Google的Gemini Pro-Vision模型,创建一个界面,用户上传图片后返回图片描述。

import google.generativeai as genai
import gradio as gr
import os

GOOGLE_API_KEY=os.getenv('GOOGLE_API_KEY')

def describe_image(input_img):
    model = genai.GenerativeModel('gemini-pro-vision')
    response = model.generate_content(['''What is this an image of and where is it''', input_img], stream=True)
    response.resolve()
    return(response.text)

demo = gr.Interface(describe_image, gr.Image(type="pil"), gr.Text())
demo.launch()

Gradio使得机器学习模型的演示和分享变得简单直接,加强了模型与广泛用户的连接。了解更多可访问Gradio官网。

Logo

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。

更多推荐