Gradio 的百万月活用户之旅!

阅读更多
Gradio logo
  1. 路由
  2. mount_gradio_app

Gradio 新手?从这里开始: 入门

查看发布历史

mount_gradio_app

gradio.mount_gradio_app(···)

描述

将 gradio.Blocks 挂载到现有的 FastAPI 应用程序。

用法示例

from fastapi import FastAPI
import gradio as gr
app = FastAPI()
@app.get("/")
def read_main():
    return {"message": "This is your main app"}
io = gr.Interface(lambda x: "Hello, " + x + "!", "textbox", "textbox")
app = gr.mount_gradio_app(app, io, path="/gradio")
然后从终端运行 uvicorn run:app 并导航到 http://localhost:8000/gradio。

初始化

参数
🔗
app: fastapi.FastAPI

父 FastAPI 应用程序。

🔗
blocks: gradio.Blocks

我们要挂载到父应用程序的 blocks 对象。

🔗
path: str

Gradio 应用程序将要挂载的路径,例如 "/gradio"。

🔗
server_name: str
默认 = "0.0.0.0"

Gradio 应用程序将在其上运行的服务器名称。

🔗
server_port: int
默认 = 7860

Gradio 应用程序将在其上运行的端口。

🔗
show_api: bool | None
默认 = None

如果为 False,则隐藏 Gradio 界面上的“通过 API 使用”按钮。

🔗
app_kwargs: dict[str, Any] | None
默认 = None

要传递给底层 FastAPI 应用程序的其他关键字参数,以参数键和参数值的字典形式。例如,`{"docs_url": "/docs"}`

🔗
auth: Callable | tuple[str, str] | list[tuple[str, str]] | None
默认 = None

如果提供,则访问 gradio 应用程序需要用户名和密码(或用户名-密码元组列表)。也可以提供接受用户名和密码并返回 True(如果登录有效)的函数。

🔗
auth_message: str | None
默认 = None

如果提供,则在此 gradio 应用程序的登录页面上提供 HTML 消息。

🔗
auth_dependency: Callable[[fastapi.Request], str | None] | None
默认 = None

一个接受 FastAPI 请求并返回字符串用户 ID 或 None 的函数。 如果函数对特定请求返回 None,则该用户无权访问 gradio 应用程序(他们将看到 401 未经授权的响应)。 用于外部身份验证系统(如 OAuth)。 不能与 `auth` 一起使用。

🔗
root_path: str | None
默认 = None

与此 FastAPI 应用程序的公共部署对应的子路径。 例如,如果应用程序在“https://example.com/myapp”上提供服务,则 `root_path` 应设置为“/myapp”。 可以提供以 http:// 或 https:// 开头的完整 URL,它将完整使用。 通常,即使您使用自定义 `path`,也不需要提供此项。 但是,如果您在代理后面提供 FastAPI 应用程序,则代理可能不会在请求标头中提供 Gradio 应用程序的完整路径。 在这种情况下,您可以在此处提供根路径。

🔗
allowed_paths: list[str] | None
默认 = None

此 gradio 应用程序允许服务的完整文件路径或父目录的列表。 必须是绝对路径。 警告:如果您提供目录,则这些目录或其子目录中的任何文件都可供您的应用程序的所有用户访问。

🔗
blocked_paths: list[str] | None
默认 = None

此 gradio 应用程序不允许服务的完整文件路径或父目录的列表(即,您的应用程序的用户不允许访问)。 必须是绝对路径。 警告:优先于 `allowed_paths` 和 Gradio 默认公开的所有其他目录。

🔗
favicon_path: str | None
默认 = None

如果提供了文件路径(.png、.gif 或 .ico),它将用作此 gradio 应用程序页面的网站图标。

🔗
show_error: bool
默认 = True

如果为 True,则 gradio 应用程序中的任何错误都将显示在警报模态框中,并在浏览器控制台日志中打印。 否则,错误仅在运行 Gradio 应用程序的终端会话中可见。

🔗
max_file_size: str | int | None
默认 = None

可以上传的最大文件大小(以字节为单位)。 可以是“<value><unit>”形式的字符串,其中 value 是任何正整数,unit 是“b”、“kb”、“mb”、“gb”、“tb”之一。 如果为 None,则不设置限制。

🔗
ssr_mode: bool | None
默认 = None

如果为 True,Gradio 应用程序将使用服务器端渲染模式进行渲染,这种模式通常性能更高,并提供更好的 SEO,但这需要在系统上安装 Node 20+。 如果为 False,应用程序将使用客户端渲染模式进行渲染。 如果为 None,将使用 GRADIO_SSR_MODE 环境变量或默认为 False。

🔗
node_server_name: str | None
默认 = None

用于 SSR 的 Node 服务器的名称。 如果为 None,将使用 GRADIO_NODE_SERVER_NAME 环境变量或在系统中搜索 node 二进制文件。

🔗
node_port: int | None
默认 = None

Node 服务器应在其上运行的端口。 如果为 None,将使用 GRADIO_NODE_SERVER_PORT 环境变量或查找空闲端口。

🔗
enable_monitoring: bool | None
默认 = None
🔗
pwa: bool | None
默认 = None