Spaces:
Sleeping
Sleeping
| import gradio as gr | |
| import fastapi | |
| # 1. 定义 FastAPI 应用 | |
| api_app = fastapi.FastAPI( | |
| # 我们需要在文档中看到正确的URL,所以要在这里配置服务器信息 | |
| servers=[{"url": "/api", "description": "API server"}] | |
| ) | |
| def read_api_root(): | |
| return {"message": "FastAPI API root."} | |
| def calculate_sum(a: float, b: float): | |
| return {"result": a + b} | |
| # 2. 定义 Gradio 界面 | |
| with gr.Blocks() as demo: | |
| gr.Markdown( | |
| """ | |
| # API 启动成功! | |
| 这是一个由 Gradio 驱动的界面。你的 FastAPI 应用已被成功挂载。 | |
| - **API 文档 (Swagger UI) 位于**: [./api/docs](./api/docs) | |
| """ | |
| ) | |
| # 3. 将 FastAPI 挂载到 Gradio 的根 FastAPI 实例上 | |
| # demo.app 是 Gradio 底层的 FastAPI 实例 | |
| demo.app.mount("/api", api_app) | |
| # 4. 启动 Gradio 应用 | |
| if __name__ == "__main__": | |
| demo.launch() |