230902-部署Gradio到已有FastAPI及服务器中

在这里插入图片描述

1. 官方例子

  • run.py
from fastapi import FastAPI
import gradio as gr

CUSTOM_PATH = "/gradio"

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=CUSTOM_PATH)


# Run this from the terminal as you would normally start a FastAPI app: `uvicorn run:app`
# and navigate to http://localhost:8000/gradio in your browser.

运行方式:uvicorn run:app

2. 油管例子

  • gradio_ui.py
import gradio as gr


def greet(text: str) -> str:
    return text


demo = gr.Interface(
    fn=greet,
    inputs=gr.components.Textbox(label='Input'),
    outputs=gr.components.Textbox(label='Output'),
    allow_flagging='never'
)
  • run.py
from fastapi import FastAPI
import gradio as gr

from gradio_ui import demo

app = FastAPI()

@app.get('/')
async def root():
    return 'Gradio app is running at /gradio', 200

app = gr.mount_gradio_app(app, demo, path='/gradio')
  • 运行方式
uvicorn run:app --host 0.0.0.0 --port 5000
  • 注意事项
1. 在命令行中的格式是<文件对象:挂载对象>
2. 文件对象,不要带py
3. 需要在同一个根目录下

3. 视频演示

230920-部署Gradio到已有FastAPI及服务器中

4. 参考文献

### 如何将 Agent 部署到 Hugging Face 平台 为了成功地将 Agent 部署至 Hugging Face 平台,需遵循一系列特定的操作指南。Hugging Face 提供了一个名为 Spaces 的功能,允许用户轻松部署应用程序并共享给他人[^2]。 #### 创建 Hugging Face 账户和仓库 首先,在[Hugging Face 官方网站](https://huggingface.co/)注册账号,并创建一个新的 Repository 来存储即将上传的应用程序代码及相关资源文件。 #### 准备环境与依赖项配置 确保本地环境中已安装 Git 及 Python 解释器。接着克隆刚刚建立好的远程仓库到本地计算机上: ```bash git clone https://huggingface.co/spaces/<your_username>/<repo_name> cd spaces/<your_username>/<repo_name> ``` 编辑 `requirements.txt` 文件来指定项目所需的Python包版本号,这有助于保持不同运行环境下的一致性和稳定性。 #### 编写应用逻辑代码 编写或调整现有的Agent脚本使其能够独立工作于云服务器之上。对于基于Web的服务端口监听部分,建议采用 Flask 或 FastAPI 这样的轻量级框架构建RESTful API接口服务;而对于前端展示页面,则可通过集成Gradio组件快速搭建交互式的图形化操作面板[^4]。 #### 测试本地实例 在推送任何更改之前务必先验证整个系统的正常运作情况。启动虚拟环境后执行以下命令开启调试模式下的HTTP服务器进程: ```bash pip install -r requirements.txt python app.py # 假设主入口函数位于此文件内 ``` 打开浏览器访问 http://localhost:7860 地址确认一切按预期响应无误后再继续下一步骤。 #### 推送更新至远端分支 当所有准备工作都完成后就可以准备同步最新的改动记录回线上空间里去了。记得每次修改完都要及时提交变更日志以便追踪历史版本间的差异变化趋势。 ```bash git add . git commit -m "Initial deployment setup" git push origin main ``` 此时应该可以在个人主页看到新发布的Space条目链接指向刚才所设置的内容了。 #### 发布后的维护事项 发布之后还需要定期关注评论区反馈意见积极改进产品体验质量。另外也要留意官方公告通知有关政策变动可能会影响到现有架构设计的地方提前做好应对措施安排。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

GuokLiu

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值