Gradio 月活用户达到 100 万!

阅读更多
Gradio logo
  1. 模态框
  2. 错误

初次使用 Gradio?从这里开始: 快速入门

查看发布历史

错误

raise gradio.Error("An error occurred 💥!", duration=5)

描述

此类允许您向用户传递自定义错误消息。您可以通过在代码中的任何位置引发 `gr.Error("自定义消息")` 来实现,当执行该行代码时,自定义消息将出现在演示的模态框中。

您可以使用 duration 参数控制错误消息的显示时长。如果为 None,消息将永久显示,直到用户关闭它。如果是一个数字,则将显示相应的秒数。

您还可以通过设置 visible=False 来隐藏错误模态框,使其不在 UI 中显示。

下面是一个演示,展示了 duration 的不同值如何控制错误、信息和警告消息。您可以在这里查看代码。

modal_control

用法示例

import gradio as gr
def divide(numerator, denominator):
    if denominator == 0:
        raise gr.Error("Cannot divide by zero!")
gr.Interface(divide, ["number", "number"], "number").launch()

初始化

参数
🔗
message: str
default = "Error raised."

要向用户显示的错误消息。可以是 HTML,它将在模态框中呈现。

🔗
duration: float | None
default = 10

显示错误消息的持续时间,以秒为单位。如果为 None 或 0,错误消息将一直显示,直到用户关闭它。

🔗
visible: bool
default = True

是否应在 UI 中显示错误消息。

🔗
title: str
default = "Error"

要在错误模态框顶部向用户显示的标题。

🔗
print_exception: bool
default = True

发生错误时是否将错误回溯打印到控制台。

演示

import gradio as gr

def calculator(num1, operation, num2):
    if operation == "add":
        return num1 + num2
    elif operation == "subtract":
        return num1 - num2
    elif operation == "multiply":
        return num1 * num2
    elif operation == "divide":
        if num2 == 0:
            raise gr.Error("Cannot divide by zero!")
        return num1 / num2

demo = gr.Interface(
    calculator,
    [
        "number",
        gr.Radio(["add", "subtract", "multiply", "divide"]),
        "number"
    ],
    "number",
    examples=[
        [45, "add", 3],
        [3.14, "divide", 2],
        [144, "multiply", 2.5],
        [0, "subtract", 1.2],
    ],
    title="Toy Calculator",
    description="Here's a sample toy calculator.",
)

if __name__ == "__main__":
    demo.launch()