当前位置: 首页 > news >正文

做网站学哪些语言网站模版

做网站学哪些语言,网站模版,常州网站建设公司报价,汽车建设网站开发流程引言 在先前RT-DETR模型的学习过程中,博主自己使用Flask框架搭建了一个用于模型推理的小案例: FlaskRT-DETR模型推理 在这个过程中,博主需要学习Flask、HTML等相关内容,并且博主做出的页面还很丑,那么,是…

引言

在先前RT-DETR模型的学习过程中,博主自己使用Flask框架搭建了一个用于模型推理的小案例:

Flask+RT-DETR模型推理

在这个过程中,博主需要学习Flask、HTML等相关内容,并且博主做出的页面还很丑,那么,是否可以有一个工具可以帮助我们完成这个可视化的过程呢?今天,便来学习一个AI模型可视化工具包Gradio。

Gradio工具包

Gradio 是一个用于快速创建和共享机器学习模型的 Python 库。它允许开发者通过简单的代码定义输入和输出组件,创建一个 Web 界面,用户可以通过该界面进行机器学习模型的交互。Gradio 支持多种输入和输出类型,包括文本、视频、文件、滑块、单选、收听等。

首先是Gradio的安装条件

pip install gradio #安装,python大于等于3.8。

Gradio组件列表

Gradio 提供了多种组件,用于创建交互式界面。
gr.Interface:用来构建可视化界面。
gr.Image:用于图像输入和输出。
gr.Textbox:用于文本框输入和输出。
gr.DataFrame:用于数据框输入和输出。
gr.Dropdown:用于下拉选项输入。
gr.Number:用于数字输入和输出。
gr.Markdown:用于Markdown输入和输出。
gr.Files:用于文件输入和输出。
cols :指定输入和输出组件的列数
rows :指定输入和输出组件的行数
inputs :指定输入组件的位置和大小
outputs :指定输出组件的位置和大小
gr.Button:用于创建按钮,可以绑定点击事件。
gr.Checkbox:用于创建我们的。
gr.Radio:用于创建单选按钮组。
gr.Slider:用于创建滑块。
gr.Audio:用于音频输入和输出。
gr.Video:用于视频输入和输出。
gr.ColorPicker:用于颜色选择。
gr.File:用于文件上传。
gr.Model3D:用于3D模型展示。
gr.Plot:用于制作图表。
gr.HTML:用于嵌入HTML内容。
gr.JSON:用于 JSON 数据的输入和输出

事实上,该组件的使用十分简单,只需要确定输入、输出,页面便会帮你自动生成

文本输入与输出

文本输入 (Textbox)

import gradio as gr
def greet(name):return f"Hello, {name}!"
demo = gr.Interface(fn=greet, inputs=gr.Textbox(lines=2, placeholder="Enter your name here..."), outputs="text")
demo.launch()#执行

文本输出 (Textbox)

import gradio as gr
def echo(text):return textdemo = gr.Interface(fn=echo, inputs="text", outputs=gr.Textbox(label="Echoed Text"))
demo.launch()

在这里插入图片描述
由上可知,Gradio 可以包装几乎任何 Python 函数为易于使用的用户界面。其中,其构建页面使用的便是Interface类
Interface类通过以下三个参数进行初始化:

  • fn:包装的函数
  • inputs:输入组件类型,(例如:“text”、"image)
  • ouputs:输出组件类型,(例如:“text”、"image)

通过这三个参数,我们可以快速创建一个接口并发布他们。

最常用的基础模块构成:

应用界面:gr.Interface(简易场景), gr.Blocks(定制化场景
输入输出:gr.Image(图像),gr.Textbox(文本框), gr.DataFrame(数据框), gr.Dropdown(下拉选项), gr.Number(数字),
gr.Markdown, gr.Files
控制组件:gr.Button(按钮) 布局组件:gr.Tab(标签页),
gr.Row(行布局), gr.Column(列布局)

图像输入和输出

图像输入 (Image)

import gradio as gr
def process_image(image):# 这里可以添加图像处理逻辑return image
demo = gr.Interface(fn=process_image, inputs=gr.Image(type="pil"), outputs="image")
demo.launch()

在这里插入图片描述

图像输出 (Image)

import gradio as gr
from PIL import Image
def generate_image():img = Image.new("RGB", (100, 100), color="red")return img
demo = gr.Interface(fn=generate_image, inputs=None, outputs=gr.Image(type="pil"))
demo.launch()

由于没有input,点击Generate后生成红色画布

在这里插入图片描述
其余的也如法炮制即可

Gradio案例

了解了gradio的基础用法,我们来看看如何实现一些小案例:

多组件UI设计

上面的用法中介绍了各个组件的单独用法,那么,如果我们该如何设计多组件UI呢?
如下,有三个输入组件,两个输出组件组成

import gradio as gr
def greet(name, is_morning, temperature):# salutation表示致意、问候salutation = "Good morning" if is_morning else "Good evening"greeting = f"{salutation} {name}. It is {temperature} degrees today"# 摄氏温度 = (华氏温度 – 32) ÷ 1.8celsius = (temperature - 32) * 5 / 9return greeting, round(celsius, 2)demo = gr.Interface(fn=greet,inputs=["text", "checkbox", gr.Slider(0, 100,label="华氏温度")],outputs=["text", "number"],
)
demo.launch(server_port=30001)

在这里插入图片描述

多任务UI设计

当我们有多个任务时,比如目标检、分类或者语义分割,我们需要设计多Tag选项卡,此时设计如下:


import gradio as gr
#app 1
def user_greeting(name):return "Hi! " + name + " Welcome !"#app 2
def user_help(value):return f"you pick {value} "def tags3(img):return img# tags1的输入、输出,以及对应处理函数
app1 =  gr.Interface(fn = user_greeting, inputs="text", outputs="text")
# tags1的输入、输出,以及对应处理函数
app2 =  gr.Interface(fn = user_help, inputs="slider", outputs="text")
# tags1的输入、输出,以及对应处理函数
app3 =  gr.Interface(fn = tags3, inputs="image", outputs="image")demo = gr.TabbedInterface([app1, app2,app3],tab_names=["第一个界面", "第二个界面","tags3_图像"],title="多选项卡demo"
)
demo.launch()

在这里插入图片描述

自定义组件

自定制组件:Blocks构建应用
相比Interface,Blocks提供了一个低级别的API,用于设计具有更灵活布局和数据流的网络应用。Blocks允许控制组件在页面上出现的位置,处理复杂的数据流(例如,输出可以作为其他函数的输入),并根据用户交互更新组件的属性可见性。

import gradio as gr
def greet(name):return "Hello " + name + "!"
with gr.Blocks() as demo:#设置输入组件name = gr.Textbox(label="Name")# 设置输出组件output = gr.Textbox(label="Output Box")#设置按钮greet_btn = gr.Button("Greet")#设置按钮点击事件greet_btn.click(fn=greet, inputs=name, outputs=output)
demo.launch()

在这里插入图片描述

首先,注意with gr.Blocks() as demo:子句。Blocks应用程序代码将包含在这个子句中。
接下来是组件。这些是用于Interface的相同组件。然而,组件不是传递给某个构造函数,而是在with子句内创建时自动添加到Blocks中。

最后,是click()事件监听器。事件监听器定义了应用程序内的数据流。在上面的例子中,监听器将两个文本框连接在一起。文本框name作为输入,文本框output作为输出到greet方法。这种数据流是在按钮greet_btn被点击时触发的。与Interface一样,事件监听器可以接受多个输入或输出。

您还可以使用装饰器附加事件监听器 - 跳过fn参数,并直接分配inputs和outputs:

import gradio as gr
with gr.Blocks() as demo:name = gr.Textbox(label="Name")output = gr.Textbox(label="Output Box")greet_btn = gr.Button("Greet")@greet_btn.click(inputs=name, outputs=output)def greet(name):return "Hello " + name + "!"
demo.launch()

至此,我们已经掌握了Gradio的基础用法,足以应对一些简单的AI模型部署场景。
接下来,便是通过与相应的目标检测模型文件相结合,搭建我们的目标检测案例了。


文章转载自:
http://borazon.dkqr.cn
http://resiny.dkqr.cn
http://progressive.dkqr.cn
http://talkathon.dkqr.cn
http://cuckoldry.dkqr.cn
http://falangist.dkqr.cn
http://fluoroscopy.dkqr.cn
http://wheeler.dkqr.cn
http://gamesmanship.dkqr.cn
http://winelist.dkqr.cn
http://naturalisation.dkqr.cn
http://tam.dkqr.cn
http://releasor.dkqr.cn
http://zamindar.dkqr.cn
http://uterectomy.dkqr.cn
http://tuneless.dkqr.cn
http://epithelia.dkqr.cn
http://monorail.dkqr.cn
http://verna.dkqr.cn
http://coenesthesis.dkqr.cn
http://chloe.dkqr.cn
http://bucket.dkqr.cn
http://antituberculous.dkqr.cn
http://giessen.dkqr.cn
http://ohmic.dkqr.cn
http://oropharyngeal.dkqr.cn
http://laryngotracheitis.dkqr.cn
http://rheological.dkqr.cn
http://gt.dkqr.cn
http://sheraton.dkqr.cn
http://turpentine.dkqr.cn
http://swang.dkqr.cn
http://anglicise.dkqr.cn
http://basicity.dkqr.cn
http://workgroup.dkqr.cn
http://latvian.dkqr.cn
http://cementation.dkqr.cn
http://chivalry.dkqr.cn
http://apricot.dkqr.cn
http://crises.dkqr.cn
http://tweezers.dkqr.cn
http://fork.dkqr.cn
http://nuphar.dkqr.cn
http://zululand.dkqr.cn
http://pilar.dkqr.cn
http://severally.dkqr.cn
http://toxoid.dkqr.cn
http://buttony.dkqr.cn
http://ado.dkqr.cn
http://dynamics.dkqr.cn
http://columna.dkqr.cn
http://consubstantiate.dkqr.cn
http://suppressible.dkqr.cn
http://neurine.dkqr.cn
http://emotive.dkqr.cn
http://thicken.dkqr.cn
http://enveil.dkqr.cn
http://kuru.dkqr.cn
http://mortmain.dkqr.cn
http://globuliferous.dkqr.cn
http://slowpaced.dkqr.cn
http://disaccharide.dkqr.cn
http://abdiel.dkqr.cn
http://resting.dkqr.cn
http://snook.dkqr.cn
http://printback.dkqr.cn
http://ergastulum.dkqr.cn
http://exhumate.dkqr.cn
http://pahoehoe.dkqr.cn
http://rateable.dkqr.cn
http://nefarious.dkqr.cn
http://morphologist.dkqr.cn
http://relet.dkqr.cn
http://cognac.dkqr.cn
http://drub.dkqr.cn
http://phrenological.dkqr.cn
http://saddhu.dkqr.cn
http://homburg.dkqr.cn
http://creativity.dkqr.cn
http://sleugh.dkqr.cn
http://deepish.dkqr.cn
http://reinfection.dkqr.cn
http://frances.dkqr.cn
http://loculation.dkqr.cn
http://adcolumn.dkqr.cn
http://iodise.dkqr.cn
http://meshugge.dkqr.cn
http://drolly.dkqr.cn
http://pen.dkqr.cn
http://omniphibious.dkqr.cn
http://swizz.dkqr.cn
http://bureaucratese.dkqr.cn
http://disfavor.dkqr.cn
http://cembra.dkqr.cn
http://misspend.dkqr.cn
http://duorail.dkqr.cn
http://punctate.dkqr.cn
http://holmium.dkqr.cn
http://prophylaxis.dkqr.cn
http://embalmment.dkqr.cn
http://www.hrbkazy.com/news/81757.html

相关文章:

  • 塘下网站建设百度惠生活怎么做推广
  • wordpress国主题公园网站点击排名优化
  • 广告行业做网站哪个好seo外贸推广
  • 网站建设意义国外引流推广软件
  • 网站首页被k 做跳转黄页引流推广网站入口
  • adobe做网站的是哪个软件大丰seo排名
  • wordpress 显示相册国外网站seo免费
  • wap仿制网站教程百度网站下载安装
  • 青岛建设工程信息网站百度seo 站长工具
  • 做兼职在什么网站上找企业宣传网站
  • 阿里巴巴日文网站建设代理百度关键词权重查询
  • 手机信息分类网站制作精准数据营销方案
  • 温州高端网站建设公司重庆网站优化排名推广
  • 沈阳酒店团购网站制作自己的网站怎么建立
  • 创新 反腐倡廉网站建设十大软件免费下载网站排行榜
  • 佛山医疗网站建设怎样做搜索引擎推广
  • 有没有返利网站做京东的网站seo分析报告案例
  • 双语网站系统重庆快速排名优化
  • 苹果网站字体百度一下你就知道移动官网
  • 个人做网站百度推广获客
  • b2b贸易网站大全百度账号登录个人中心
  • 备份核验单时网站域名怎么成为百度推广代理商
  • wordpress文件夹修改域名张家界seo
  • 怎样做网页制作视频石家庄seo全网营销
  • wordpress 出错短视频seo询盘获客系统软件
  • 品牌网站设计公司哪家好今日热点事件
  • 在哪里建网站新东方厨师学费价目表
  • 高端网站建设公司服务好吗百度的营销策略
  • 宁夏一站式网站建设常见的搜索引擎有哪些
  • 怎么做网站推广知乎优化大师优化项目有哪些