向端点发送请求
你可以使用 UI 利用推理小部件或以编程方式(例如使用 cURL、@huggingface/inference
、huggingface_hub
或任何 REST 客户端)向推理端点发送请求。端点概述不仅提供了一个交互式小部件供你测试端点,而且还生成 python
、javascript
和 curl
的代码。你可以使用此代码快速在你的首选编程语言中开始使用你的端点。
以下还提供了一些关于如何使用 @huggingface/inference
库来调用推理端点的示例。
使用 UI 发送请求
端点概述提供了对推理小部件的访问,该小部件可用于发送请求(参见 创建端点 的步骤 6)。这使你能够快速使用不同的输入测试你的端点,并与团队成员共享。
使用 cURL 发送请求
上面请求的 cURL 命令应如下所示。你需要提供你的用户令牌,该令牌可以在你的 Hugging Face 帐户设置 中找到
示例请求
curl https://uu149rez6gw9ehej.eu-west-1.aws.endpoints.huggingface.cloud/distilbert-sentiment \
-X POST \
-d '{"inputs": "Deploying my first endpoint was an amazing experience."}' \
-H "Authorization: Bearer <Token>"
端点 API 提供与 推理 API 和 SageMaker 推理工具包 相同的 API 定义。所有请求有效负载都在 支持的任务 部分中进行了说明。
这意味着对于 NLP 任务,有效负载表示为 inputs
键,其他管道参数包含在 parameters
键中。你可以将来自 管道 的任何支持的 kwargs
作为参数提供。对于图像或音频任务,你应使用相应的 MIME 类型将数据作为二进制请求发送。以下是一个音频有效负载的示例 cURL
curl --request POST \
--url https://uu149rez6gw9ehej.eu-west-1.aws.endpoints.huggingface.cloud/wav2vec-asr \
--header 'Authorization: Bearer <Token>' \
--header 'Content-Type: audio/x-flac' \
--data-binary '@sample1.flac'
要将你的 cURL 命令用作代码,请使用 cURL 转换器 工具快速开始使用你选择的编程语言。
使用 javascript 库 @huggingface/inference
你可以使用 javascript 库来调用推理端点
const inference = new HfInference('hf_...') // your user token
const gpt2 = inference.endpoint('https://xyz.eu-west-1.aws.endpoints.huggingface.cloud/gpt2-endpoint')
const { generated_text } = await gpt2.textGeneration({ inputs: 'The answer to the universe is' })
自定义处理程序
@huggingface/inference
支持来自 https://huggingface.co/tasks 的任务,并进行相应类型化。
如果你的模型具有其他输入,甚至自定义输入/输出,你可以使用更通用的 .request
/ streamingRequest
const output = await inference.request({
inputs: "blablabla",
parameters: {
custom_parameter_1: ...,
...
}
});