Inference Endpoints (专用) 文档

向端点发送请求

Hugging Face's logo
加入 Hugging Face 社区

并获得增强的文档体验

开始使用

向端点发送请求

您可以使用 UI 通过 Inference Widget 或以编程方式向 Inference Endpoints 发送请求,例如使用 cURL、@huggingface/inferencehuggingface_hub 或任何 REST 客户端。Endpoint 概览不仅提供了一个交互式 widget 供您测试 Endpoint,还为 pythonjavascriptcurl 生成了代码。您可以使用这些代码快速开始在您喜欢的编程语言中使用您的 Endpoint。

以下还提供了一些关于如何使用 @huggingface/inference 库调用推理端点的示例。

使用 UI 发送请求

Endpoint 概览提供了对 Inference Widget 的访问权限,该 widget 可用于发送请求(请参阅创建 Endpoint的步骤 6)。这使您可以快速使用不同的输入测试您的 Endpoint,并与团队成员共享。

使用 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>"

Endpoints API 提供的 API 定义与 Inference APISageMaker Inference Toolkit 相同。所有请求负载都记录在支持的任务部分。

这意味着对于 NLP 任务,有效负载表示为 inputs 键,其他 pipeline 参数包含在 parameters 键中。您可以从 pipelines 中提供任何受支持的 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 Converter 工具快速开始使用您选择的编程语言。

使用 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: ...,
    ...
  }
});
< > 更新 在 GitHub 上