Gradio 月活用户达到 100 万的历程!
阅读更多Gradio 月活用户达到 100 万的历程!
阅读更多在之前的指南中,我们讨论了如何为你的演示提供示例输入,以便用户更容易试用。在这里,我们将深入探讨更多细节。
向 Interface 添加示例非常简单,只需向 examples
关键字参数提供列表的列表。每个子列表是一个数据样本,其中每个元素对应于预测函数的输入。输入必须按照预测函数期望的顺序排列。
如果你的界面只有一个输入组件,那么你可以将你的示例作为常规列表而不是列表的列表提供。
你也可以指定一个目录路径来存放示例。如果你的 Interface 仅接受单个文件类型输入,例如图像分类器,你可以简单地将目录文件路径传递给 examples=
参数,并且 Interface
将加载目录中的图像作为示例。在多个输入的情况下,此目录必须包含带有示例值的 log.csv 文件。在计算器演示的上下文中,我们可以设置 examples='/demo/calculator/examples'
,并在该目录中包含以下 log.csv
文件
num,operation,num2
5,"add",3
4,"divide",2
5,"multiply",3
这在浏览标记数据时很有帮助。只需指向标记目录,Interface
将从标记数据加载示例。
有时你的应用有很多输入组件,但你只想为其中的一部分提供示例。为了从示例中排除某些输入,请为与这些特定组件对应的所有数据样本传递 None
。
你可能希望为你的模型提供一些缓存示例,以便用户快速试用,以防你的模型正常运行需要一段时间。如果 cache_examples=True
,你的 Gradio 应用将在你调用 launch()
方法时运行所有示例并保存输出。此数据将默认保存在你的工作目录中名为 gradio_cached_examples
的目录中。你还可以使用 GRADIO_EXAMPLES_CACHE
环境变量设置此目录,该变量可以是绝对路径,也可以是相对于你的工作目录的相对路径。
每当用户点击一个示例时,输出现在将自动填充到应用中,使用来自此缓存目录的数据而不是实际运行函数。这很有用,因此用户可以快速试用你的模型,而无需增加任何负载!
或者,你可以设置 cache_examples="lazy"
。这意味着每个特定示例仅在首次在 Gradio 应用中使用时(由任何用户)才会被缓存。如果你的预测函数运行时间较长,并且你不希望等待很长时间才能启动 Gradio 应用,这将很有帮助。
请记住,一旦缓存生成,它在以后的启动中不会自动更新。如果示例或函数逻辑发生更改,请删除缓存文件夹以清除缓存,并使用另一个 launch()
重建它。