Python Gradio构建简单的交互界面

Python
146
0
0
2024-03-19

Gradio 是一个用于构建机器学习和数据科学的交互式应用程序的 Python 库,但是我们可以用它来构建一些简单的交互界面,其代码之简单令人震惊

 文本输入输出

import gradio as gr


def szu(text):
    return text


interface = gr.Interface(fn=szu, inputs="text", outputs="text")
interface.launch()

 数字输入输出

import gradio as gr


def szu(text):
    return text


interface = gr.Interface(fn=szu, inputs="number", outputs="number")
interface.launch()

滑动数字

import gradio as gr


def szu(text):
    return text


interface = gr.Interface(fn=szu, inputs="slider", outputs="slider")
interface.launch()

 图片输入输出 

import gradio as gr


def szu(text):
    return text


interface = gr.Interface(fn=szu, inputs="image", outputs="image")
interface.launch()

其他输入组件

  • "checkbox":单个复选框,用于表示一个布尔值。
  • "checkboxgroup":一组复选框,用于选择多个选项。
  • "radio":一组单选按钮,用于从多个选项中选择一个。
  • "dropdown":下拉菜单,用于从多个选项中选择一个。
  • "file":文件上传,用于上传文件,可以设置允许的文件类型。
  • "dataframe":用于上传或输入表格数据,如CSV文件。
  • "audio":用于上传音频文件。
  • "video":用于上传视频文件。
  • "color":颜色选择器,用于选择颜色。
  • "date":用于选择日期。
  • "state":用于保存界面状态,对于复杂的交互逻辑非常有用。

这些组件可以组合使用,以创建复杂的输入界面,满足特定模型的需求

例如,一个图像风格转换模型可能会有一个图像上传组件用于输入原始图片,和一个下拉菜单用于选择不同的风格。

import gradio as gr


def face_detect(image, model):
    return image


models = ["Harr", "肤色特征", "深度学习"]
interface = gr.Interface(fn=face_detect, inputs=["image", gr.Dropdown(models)], outputs="image")
interface.launch()