Gradio从入门到精通(1)---快速入门


前言

Gradio 是一个开源 Python 包,允许您为机器学习模型、API 或任何任意 Python 函数快速构建演示或 Web 应用程序。然后,您可以使用 Gradio 的内置共享功能在几秒钟内共享指向演示或 Web 应用程序的链接。无需 JavaScript、CSS 或 Web 托管经验!

Gradio最大的特点就是简单,便捷,短短几行代码就可以快速构建大模型web应用程序;当前很多人工智能模型的演示都是使用Gradio打造的;


一、快速入门

**先决条件:**Gradio 需要 Python 3.8 或更高版本,Gradio是Python的一个库,所以无论你是windows/linux/macos,安装了Python后,接下来的操作都是相似的;

安装Gradio非常简单,只需使用以下命令:

pip install gradio
 
#为了更快安装,可以使用清华镜像源
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple gradio

您当然也可以在您喜欢的代码编辑器、Jupyter 笔记本、Google Colab 或您编写 Python 的任何其他位置运行 Gradio。让我们编写您的第一个 Gradio 应用程序。
第一个程序就是用官方的示例吧,我给加一些注释

import gradio as gr   #导入gradio库,简写成gr
#我们将导入的名称从 缩短为 为了提高代码的可读性。这是一个被广泛采用的约定,你应该遵循它,以便任何使用你的代码的人都能轻松理解它

#这是定一个的第一个处理函数
def greet(name, intensity):
    return "Hello, " + name + "!" * int(intensity)

#这里是最常用的Interface类
demo = gr.Interface(
    fn=greet,                        #处理函数
    inputs=["text", "slider"],       #输入
    outputs=["text"],                #输出
)

demo.launch()

上面的代码就构建了一个简单的web应用,我们来看下效果吧;运行代码,如果您在名为app.py的文件中编写了 Python 代码,那么您将从终端运行python app.py;

演示页面将在 http://localhost:7860 上的浏览器中打开,如果从文件运行。如果您在Jupyter 中运行,则演示将嵌入在Jupyter 笔记本中。
在这里插入图片描述
到这里你的第一个应用就完成了,接下来介绍下热加载这个概念;

二、热加载

当您构建 Gradio 演示时,尤其是在 Blocks 之外,您可能会发现不断重新运行代码以测试更改很麻烦。
为了更快、更方便地编写代码,当您在 Python IDE(如 VS Code、Sublime Text、PyCharm 等)中进行开发或通常从终端运行 Python 代码时,我们可以更轻松地立即“重新加载”您的 Gradio 应用程序。我们还开发了一个类似的“魔术命令”,如果您使用 Jupyter Notebooks(或任何类似的环境,如 Colab),它可以更快地重新运行单元格。

所谓热加载就是web页面实时显示你的修改,而不是一遍一遍的去运行python xxx.py;怎么做呢
只需要改成

gradio xxx.py   #例如刚才我们的app.py   则运行gradio app.py

你会看到终端显示如下内容

Watching: '/Users/freddy/sources/gradio/gradio', '/Users/freddy/sources/gradio/demo/'

Running on local URL:  http://127.0.0.1:7860

这种情况下,如果文件发生更改后,并保存,它将自动为您重新运行文件。因此,您可以专注于编写代码,并且您的 Gradio 演示将自动刷新Watching…app.py

热加载简单的了解下就可以了

三、接口类介绍

您会注意到,为了制作第一个演示,您创建了该类的实例。该类旨在为机器学习模型创建演示,这些模型接受一个或多个输入,并返回一个或多个输出。gr.Interface,这个类会一直被你是用,所以要对他很熟悉;

该类有三个核心参数:Interface

fn:将用户界面 (UI) 包裹起来的函数
inputs:用于输入的 Gradio 组件。组件数应与函数中的参数数匹配。
outputs:用于输出的 Gradio 组件。组件数应与函数的返回值数匹配。

该参数非常灵活 – 您可以传递任何要用 UI 包装的 Python 函数。在上面的例子中,我们看到了一个相对简单的函数,但该函数可以是任何东西,从音乐生成器到税收计算器,再到预训练机器学习模型的预测函数。

下图,显示了我们的预处理将发送到函数的内容以及我们的后处理过程
在这里插入图片描述

总结

本章简单介绍了Gradio的使用,旨在帮助小伙伴们快速入门,体验下Gradio搭建web应用的快捷与简单;下面我们继续学习Gradio的应用吧!

  • 13
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

LinfineEdu

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值