Gradio Python 客户端使得使用任何 Gradio 应用作为 API 变得非常容易。例如,考虑这个 Hugging Face Space https://huggingface.co/spaces/abidlabs/whisper,它可以转录从麦克风录制的音频文件。
使用 gradio_client
库,我们可以轻松地使用 Gradio 作为 API 来编程转录音频文件。
这是完成它的全部代码:
# 从gradio_client包中导入Client和file类
from gradio_client import Client, file
# 创建一个Client对象,指定要使用的模型是“abidlabs/whisper”
client = Client("abidlabs/whisper")
# 使用客户端的predict方法进行预测,输入参数是一个通过file函数封装的音频文件“audio_sample.wav”
output = client.predict(
audio=file("audio_sample.wav")
)
# 输出预测结果
print(output)
Gradio 客户端适用于任何托管的 Gradio 应用!尽管客户端主要用于托管在 Hugging Face Spaces 上的应用,但您的应用可以托管在任何地方,例如您自己的服务器。
先决条件:要使用 Gradio 客户端,您不需要非常详细地了解 gradio
库。然而,对 Gradio 的输入和输出组件概念有一般的熟悉是有帮助的。
安装
如果您已经有了最新版本的 gradio
,那么 gradio_client
将作为依赖项包含在内。但请注意,此文档反映了 gradio_client
的最新版本,所以如果您不确定,请升级!
轻量级 gradio_client
包可以通过 pip(或 pip3)安装,并且已测试可与 Python 3.9 或更高版本一起使用:
$ pip install --upgrade gradio_client
连接到 Hugging Face Spaces 上的 Gradio 应用程序
首先连接实例化一个 Client
对象,并将其连接到运行在 Hugging Face Spaces 上的 Gradio 应用程序。
from gradio_client import Client
client = Client("abidlabs/en2fr") # a Space that translates from English to French
from gradio_client import Client
client = Client("abidlabs/my-private-space", hf_token="...")
# 导入os库,用于从环境变量中获取Hugging Face Token
import os
# 从gradio_client包中导入Client和file类
from gradio_client import Client, file
# 从环境变量中读取Hugging Face