推理提供商文档
问答
加入 Hugging Face 社区
并访问增强的文档体验
开始使用
问答
问答模型可以从给定的文本中检索问题的答案,这对于在文档中搜索答案非常有用。
有关 question-answering
任务的更多详细信息,请查看其专用页面!您将在其中找到示例和相关材料。
推荐模型
- deepset/roberta-base-squad2:适用于大多数问答领域的强大基线模型。
- distilbert/distilbert-base-cased-distilled-squad:小巧而强大的模型,可以回答问题。
- google/tapas-base-finetuned-wtq:一种特殊的模型,可以回答表格中的问题。
浏览所有可用模型,找到最适合您的模型 此处。
使用 API
from huggingface_hub import InferenceClient
client = InferenceClient(
provider="hf-inference",
api_key="hf_xxxxxxxxxxxxxxxxxxxxxxxx",
)
result = client.question_answering(
inputs={
"question": "What is my name?",
"context": "My name is Clara and I live in Berkeley."
},
model="distilbert/distilbert-base-cased-distilled-squad",
)
API 规范
请求
有效载荷 | ||
---|---|---|
inputs* | object | 一个 (context, question) 对,用于回答问题 |
context* | string | 用于回答问题的上下文 |
question* | string | 要回答的问题 |
parameters | object | |
top_k | integer | 要返回的答案数量(将按可能性顺序选择)。请注意,如果上下文中没有足够的选项可用,我们返回的答案将少于 topk 个。 |
doc_stride | integer | 如果上下文太长,无法与模型的问题相匹配,则会将其拆分为几个块,并有一定的重叠。此参数控制重叠的大小。 |
max_answer_len | integer | 预测答案的最大长度(例如,仅考虑长度较短的答案)。 |
max_seq_len | integer | 传递给模型的每个块中,总句子(上下文 + 问题)的最大 token 长度。如果需要,上下文将被拆分为几个块(使用 docStride 作为重叠)。 |
max_question_len | integer | 分词后问题的最大长度。如果需要,将被截断。 |
handle_impossible_answer | boolean | 是否接受“不可能”作为答案。 |
align_to_words | boolean | 尝试将答案与实际单词对齐。提高空格分隔语言的质量。可能会损害非空格分隔语言(如日语或中文)的质量 |
某些选项可以通过将标头传递给 Inference API 来配置。以下是可用的标头
标头 | ||
---|---|---|
authorization | string | 授权标头,格式为 'Bearer: hf_****' ,其中 hf_**** 是具有 Inference API 权限的个人用户访问令牌。您可以从您的设置页面生成一个。 |
x-use-cache | boolean,默认为 true | Inference API 上有一个缓存层,用于加速我们已经看到的请求。大多数模型可以使用这些结果,因为它们是确定性的(意味着输出无论如何都将相同)。但是,如果您使用非确定性模型,则可以设置此参数以防止使用缓存机制,从而产生真正的全新查询。阅读有关缓存的更多信息此处。 |
x-wait-for-model | boolean,默认为 false | 如果模型尚未准备就绪,请等待它,而不是收到 503 错误。它限制了完成推理所需的请求数量。建议仅在收到 503 错误后才将此标志设置为 true,因为它会将应用程序中的挂起限制在已知位置。阅读有关模型可用性的更多信息此处。 |
有关 Inference API 标头的更多信息,请查看指南中的参数。
响应
正文 | ||
---|---|---|
(数组) | object[] | 输出是对象数组。 |
answer | string | 问题的答案。 |
score | number | 与答案相关的概率。 |
start | integer | 答案在输入中开始的字符位置。 |
end | integer | 答案在输入中结束的字符位置。 |