Gradio从入门到精通(1)---快速入门
LinfineEdu 2024-09-01 16:33:01 阅读 82
文章目录
前言一、快速入门二、热加载三、接口类介绍总结
前言
Gradio 是一个开源 Python 包,允许您为机器学习模型、API 或任何任意 Python 函数快速构建演示或 Web 应用程序。然后,您可以使用 Gradio 的内置共享功能在几秒钟内共享指向演示或 Web 应用程序的链接。无需 JavaScript、CSS 或 Web 托管经验!
Gradio最大的特点就是简单,便捷,短短几行代码就可以快速构建大模型web应用程序;当前很多人工智能模型的演示都是使用Gradio打造的;
一、快速入门
**先决条件:**Gradio 需要 Python 3.8 或更高版本,Gradio是Python的一个库,所以无论你是windows/linux/macos,安装了Python后,接下来的操作都是相似的;
安装Gradio非常简单,只需使用以下命令:
<code>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;怎么做呢
只需要改成
<code>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的应用吧!
声明
本文内容仅代表作者观点,或转载于其他网站,本站不以此文作为商业用途
如有涉及侵权,请联系本站进行删除
转载本站原创文章,请注明来源及作者。