接口
gradio.Interface(fn, inputs, outputs, ···)
描述
界面是Gradio的主要高级类,允许您在几行代码中围绕机器学习模型(或任何Python函数)创建基于Web的GUI /演示。您必须指定三个参数:(1) 为 (2) 所需的输入组件和 (3) 所需的输出组件创建 GUI 的函数。其他参数可用于控制演示的外观和行为。
示例用法
import gradio as gr
def image_classifier(inp):
return {'cat': 0.3, 'dog': 0.7}
demo = gr.Interface(fn=image_classifier, inputs="image", outputs="label")
demo.launch()
初始化
参数 | 描述 |
---|---|
fn 调用 必填 | 用于包装接口的函数。通常是机器学习模型的预测函数。函数的每个参数对应于一个输入组件,函数应返回单个值或值元组,元组中的每个元素对应于一个输出组件。 |
inputs STR |IOComponent |列表[str |IOComponent] |没有 必填 | 单个 Gradio 组件或 Gradio 组件列表。组件可以作为实例化对象传递,也可以由其字符串快捷方式引用。输入分量的数量应与 fn 中的参数数量相匹配。如果设置为“无”,则仅显示输出组件。 |
outputs STR |IOComponent |列表[str |IOComponent] |没有 必填 | 单个 Gradio 组件或 Gradio 组件列表。组件可以作为实例化对象传递,也可以由其字符串快捷方式引用。输出组件的数量应与 fn 返回的值的数量相匹配。如果设置为“无”,则仅显示输入组件。 |
examples 列表[任何] |列表[列表[任何]] |STR |没有 默认值:无 | 函数的示例输入;如果提供,则显示在 UI 组件下方,可以单击以填充界面。应该是嵌套列表,其中外部列表由样本组成,每个内部列表由对应于每个输入组件的输入组成。也可以提供示例目录的字符串路径,但它应该位于运行 gradio 应用程序的 python 文件的目录中。如果有多个输入组件并且提供了一个目录,则目录中必须存在 log.csv 文件以链接相应的输入。 |
cache_examples 布尔 |没有 默认值:无 | 如果为 True,则在服务器中缓存示例,以便在示例中快速运行时。如果 'fn' 是一个生成器函数,那么最后一个生成的值将用作输出。“拥抱面孔空间”中的默认选项为 True。其他地方的默认选项是 False。 |
examples_per_page 国际 默认值:10 | 如果提供了示例,则每页要显示多少个示例。 |
live 布尔 默认值:假 | 如果任何输入发生更改,接口是否应自动重新运行。 |
interpretation 可赎回 |STR |没有 默认值:无 | 提供解释预测输出的解释的函数。传递“默认”以使用简单的内置解释器,传递“shap”以使用基于shapley的内置解释器,或您自己的自定义解释函数。有关不同解释方法的详细信息,请参阅高级接口功能指南。 |
num_shap 浮 默认值:2.0 | 一个乘数,用于确定为基于 SHAP 的解释计算多少个示例。增加此值将增加 shap 运行时,但会改善结果。仅当解释为“shap”时才适用。 |
title STR |没有 默认值:无 | 界面的标题;如果提供,则以大字体显示在输入和输出组件的上方。在浏览器窗口中打开时也用作选项卡标题。 |
description STR |没有 默认值:无 | 接口的描述;如果提供,则以常规字体显示在输入和输出组件上方以及标题下方。接受降价和 HTML 内容。 |
article STR |没有 默认值:无 | 解释界面的扩展文章;如果提供,则以常规字体显示在输入和输出组件下方。接受降价和 HTML 内容。 |
thumbnail STR |没有 默认值:无 | 在社交媒体上共享 Web 演示时用作显示图像的图像的路径或 URL。 |
theme 主题 |STR |没有 默认值:无 | 要使用的主题,从gradio.themes加载。 |
css STR |没有 默认值:无 | 自定义 CSS 或要与接口一起使用的自定义 CSS 文件的路径。 |
allow_flagging STR |没有 默认值:无 | “从不”、“自动”或“手动”之一。如果“从不”或“自动”,用户将看不到用于标记输入和输出的按钮。如果是“手动”,用户将看到一个要标记的按钮。如果为“auto”,则用户提交的每个输入都将自动标记(输出不标记)。如果为“手动”,则当用户单击标志按钮时,输入和输出都会被标记。此参数可以使用环境变量GRADIO_ALLOW_FLAGGING设置;否则默认为“手动”。 |
flagging_options 列表[str] |列表[元组[str, str]] |没有 默认值:无 | 如果提供,则允许用户在标记时从选项列表中进行选择。仅当allow_flagging是“手动”时才适用。可以是表单(标签、值)的元组列表,其中标签是将显示在按钮上的字符串,值是将存储在标记 CSV 中的字符串;或者它可以是字符串列表 [“X”、“Y”],在这种情况下,值将是字符串列表,标签将是 [“标记为 X”、“标记为 Y”] 等。 |
flagging_dir str 默认值:“已标记” | 如何命名存储标记数据的目录。 |
flagging_callback 标记回调 默认:CSVLogger() | FlaggingCallback 子类的一个实例,将在标记示例时调用该子类。默认情况下,记录到本地 CSV 文件。 |
analytics_enabled 布尔 |没有 默认值:无 | 是否允许基本遥测。如果为 None,则将使用环境变量(如果已定义GRADIO_ANALYTICS_ENABLED或默认为 True。 |
batch 布尔 默认值:假 | 如果为 True,则函数应处理一批输入,这意味着它应接受每个参数的输入值列表。列表的长度应相等(长度应为“max_batch_size”)。然后*需要*该函数返回列表元组(即使只有 1 个输出组件),元组中的每个列表对应于一个输出组件。 |
max_batch_size 国际 默认值:4 | 如果从队列中调用,则要批处理在一起的最大输入数(仅当 batch=True 时才相关) |
api_name STR |文字[错误] |没有 默认值:“预测” | 定义终结点在 API 文档中的显示方式。可以是字符串、无或假。如果为 False 或 None,则终结点不会在 api 文档中公开。如果设置为字符串,则终结点将以给定名称在 api 文档中公开。默认值为“预测”。 |
allow_duplication 布尔 默认值:假 | 如果为 True,则将在拥抱面部空间上显示“重复空间”按钮。 |
演示
import gradio as gr
def greet(name):
return "Hello " + name + "!"
demo = gr.Interface(fn=greet, inputs="text", outputs="text")
if __name__ == "__main__":
demo.launch(