Gradio机器学习模型快速部署工具quickstart前篇

2023-05-14 08:05:37 模型 部署 机器

Gradio 是做什么的?

先决条件:Gradio 需要 python 3.7 或更高版本,仅此而已!

gradio.app/quickstart/…

与他人分享您的机器学习模型、api 或数据科学工作流程的最佳方式_之一是创建一个交互式应用程序,让您的用户或同事可以在他们的浏览器中试用该演示。

Gradio 允许您**构建演示并共享它们,所有这些都在 Python 中。**通常只需几行代码!让我们开始吧。

Hello, World

要使用简单的“Hello, World”示例运行 Gradio,请执行以下三个步骤:

1.使用pip安装Gradio:

pip install gradio

2. 将以下代码作为 Python 脚本或在 Jupyter Notebook中运行:

import gradio as gr
def greet(name):
    return "Hello " + name + "!"
demo = gr.Interface(fn=greet, inputs="text", outputs="text")
demo.launch()   

3. 下面的演示将自动出现在 Jupyter Notebook 中,或者如果从脚本运行则在浏览器中弹出 Http://localhost:7860

渐变/你好世界 使用 Gradio构建。 托管在 空间

在本地开发时,如果您想将代码作为 Python 脚本运行,您可以使用 Gradio CLI 以重新加载模式启动应用程序,这将提供无缝和快速的开发。在自动重新加载指南中了解有关重新加载的更多信息。

gradio app.py

注意:你也可以这样做python app.py,但它不会提供自动重新加载机制。

类Interface

https://gradio.app/quickstart/#the-interface-class

您会注意到,为了制作演示,我们创建了一个gradio.Interface. 此类Interface可以使用用户界面包装任何 Python 函数。在上面的示例中,我们看到了一个简单的基于文本的函数,但该函数可以是任何东西,从音乐生成器到税收计算器再到预训练机器学习模型的预测函数。

核心Interface类使用三个必需参数进行初始化:

  • fn: 环绕 UI 的函数
  • inputs: 哪个组件用于输入(例如"text","image""audio"
  • outputs: 用于输出的组件(例如"text","image""label"

让我们仔细看看这些用于提供输入和输出的组件。

组件属性

gradio.app/quickstart/…

我们Textbox在前面的示例中看到了一些简单的组件,但是如果您想更改 UI 组件的外观或行为方式怎么办?

假设您想要自定义输入文本字段——例如,您希望它更大并且有一个文本占位符。如果我们使用实际的类Textbox而不是使用字符串快捷方式,您可以通过组件属性访问更多的可定制性。

import gradio as gr
def greet(name):
    return "Hello " + name + "!"
demo = gr.Interface(
    fn=greet,
    # 改变外观
    inputs=gr.Textbox(lines=2, placeholder="Name Here..."),
    outputs="text",
)
demo.launch()

多个输入和输出组件

gradio.app/quickstart/…

假设您有一个更复杂的函数,具有多个输入和输出。在下面的示例中,我们定义了一个函数,它接受一个字符串、布尔值和数字,并返回一个字符串和数字。看一下如何传递输入和输出组件列表。

import gradio as gr
def greet(name, is_morning, temperature):
    salutation = "Good morning" if is_morning else "Good evening"
    greeting = f"{salutation} {name}. It is {temperature} degrees today"
    celsius = (temperature - 32) * 5 / 9
    return greeting, round(celsius, 2)
demo = gr.Interface(
    fn=greet,
    inputs=["text", "checkbox", gr.Slider(0, 100)],
    outputs=["text", "number"],
)
demo.launch()

参考网址: gradio.app/quickstart/

以上就是Gradio机器学习模型快速部署工具quickstart前篇的详细内容,更多关于Gradio机部署quickstart的资料请关注其它相关文章!

相关文章