Gradio(通过 pip install gradio
安装)是一个用于创建交互式界面的Python库。它允许你基于预训练模型、函数或任意代码块创建实时演示和部署模型的图形用户界面(GUI)。
使用Gradio库,你可以轻松创建Web界面,用于输入数据、调用模型、显示结果,并为用户提供与模型交互的功能。它支持多种输入类型(如文本框、图片上传、滑块等)和输出展示方式(如图像展示、文本展示等)。你可以根据需要自定义界面的布局和样式。
以下是一个简单的示例,演示了如何使用Gradio库创建一个基于函数的交互界面:
import gradio as gr
def greet(name):
return f"Hello, {name}!"
inputs = gr.inputs.Textbox(label="Enter your name")
outputs = gr.outputs.Textbox(label="Greeting")
gr.Interface(fn=greet, inputs=inputs, outputs=outputs).launch()
运行这段代码后,你将在浏览器中看到一个文本框,你可以在其中输入姓名,并在下方立即得到问候语的回复。
可以通过 gr.Interface()
函数来创建界面,指定输入和输出的类型,并指定用于处理请求的函数(在此示例中为 greet()
)。最后使用 .launch()
方法来启动界面。
多个输入输出
传递多个输入输出,只需要将组件包装在一个列表中,列表中的每个组件按顺序对应于函数的一个参数。列表中的每个组件对应于函数返回的值之一,同样按顺序。
import gradio as gr
def greet(img, is_boy, temperature):
return img, temperature
demo = gr.Interface(
fn=greet,
inputs=["image", "checkbox", gr.Slider(0, 100)],
outputs=[gr.Image(height=500, width=200), "number"],
)
demo.launch()
PS:checkbox为单选框
gr.Slider为滑块,可设置参数,默认为0-100,上述代码可以直接写成'slider'
gr.Image为图片,可设置参数