Gradio推出gr.Workflow:可视化拖拽搭建AI流水线,自动生成REST API
Hugging Face在Gradio中内置gr.Workflow,将多步骤AI流水线变为可拖拽画布,支持并行执行、GPU调用,并自动生成REST API。
AI解读:Gradio的新功能gr.Workflow把AI流水线(比如生成图片、抠图、再编辑)从Python脚本变成了可视化画布。它的核心价值是让每一步的中间结果都可见、可单独运行,方便排查问题;同时同一张图自动变为REST API,可以直接用Python或curl调用。对开发者来说,省去了自己搭建前后端和接口的重复工作,尤其是需要尝试多种模型组合时,能快速搭原型。不过需要注意,涉及调用云模型或Spaces的节点需要Hugging Face token,只有纯本地函数才不需要。目前没有提供官方性能对比数据,实际效果还需自己测试。
Hugging Face博客发布指南,介绍Gradio内置的gr.Workflow功能,用于将多步骤AI流水线转换为可视化、可运行的画布,并能一键部署到Hugging Face Spaces。
核心机制:图节点与三类角色
每个workflow是一个图,包含三类节点:references(输入)、operators(执行步骤)、subjects(输出)。operator可以是自定义Python函数、Hugging Face Inference Providers上的模型、另一个Gradio Space,或是Hub数据集中的一行数据。
用户通过拖拽在类型匹配的端口间连线,点击Run,即可看到每个结果在对应位置实时显示。
自动生成REST API与部署能力
每个workflow内置API,无需额外编码:每个输出自动成为以标签命名的REST端点。示例中,AI Media Studio(一个画布集成三个流水线)提供了 /sticker、/voiceover和 /episode_title三个独立端点,可直接从代码调用。
调用模型或Spaces的端点需要Hugging Face token;仅调用纯Python函数的端点无需token。支持通过gradio_client或curl发起调用。
- Python示例:client.predict("hello there friend", api_name="/word_count") 返回 3。
- 带token的图像编辑示例:client.predict(handle_file("dog.jpg"), "turn it into a snowy winter scene", api_name="/edited_image")。
- curl示例:curl -s https://ysharma-gr-workflow-multi-endpoint-API.hf.space/gradio_api/call/word_count -H "Content-Type: application/json" -d '{"data": ["hello there friend"]}'
示例应用与调用方式
博客列出了 5 个可运行的演示Space:Image Editor(Qwen-Image-Edit图像编辑)、AI Media Studio(FLUX图像生成 + 背景移除 + TTS + LLM混合流水线)、Generative Art Lab(并行生成多风格图像)、Data Detective(数据集实时分析,四节点并行)、ZeroGPU Animator(在GPU上运行Lightricks/LTX-Video模型)。
开发者可通过Duplicate复制任意演示并重新连线修改,也可用Python快速起步:gr.Workflow(bind=[your_function]).launch()。完整文档见Gradio官方指南。