Inference Providers 文档
自动语音识别
加入 Hugging Face 社区
并获取增强的文档体验
开始使用
自动语音识别
自动语音识别 (ASR),也称为语音转文本 (STT),是将给定的音频转录为文本的任务。
示例应用
- 转录播客
- 构建语音助手
- 为视频生成字幕
有关 automatic-speech-recognition
任务的更多详细信息,请查看其专用页面!您将在其中找到示例和相关材料。
推荐模型
- openai/whisper-large-v3: OpenAI 的强大 ASR 模型。
- facebook/seamless-m4t-v2-large: MetaAI 的执行 ASR 和语音翻译的端到端模型。
浏览所有可用模型,并在此处找到最适合您的模型。
使用 API
from huggingface_hub import InferenceClient
client = InferenceClient(
provider="fal-ai",
api_key="hf_xxxxxxxxxxxxxxxxxxxxxxxx",
)
output = client.automatic_speech_recognition("sample1.flac", model="openai/whisper-large-v3")
API 规范
请求
有效载荷 | ||
---|---|---|
inputs* | string | 输入音频数据,采用 base64 编码字符串格式。如果未提供 parameters ,您也可以将音频数据作为原始字节有效负载提供。 |
parameters | object | |
return_timestamps | boolean | 是否输出与生成的文本相对应的时间戳 |
generation_parameters | object | |
temperature | number | 用于调节下一个令牌概率的值。 |
top_k | integer | 为 top-k 过滤保留的最高概率词汇令牌的数量。 |
top_p | number | 如果设置为小于 1 的浮点数,则仅保留概率总和达到 top_p 或更高的最小概率令牌集以进行生成。 |
typical_p | number | 局部典型性衡量指标,衡量预测目标令牌的条件概率与预测下一个随机令牌的预期条件概率(给定已生成的局部文本)的相似程度。 如果设置为小于 1 的浮点数,则仅保留概率总和达到 typical_p 或更高的最小局部典型令牌集以进行生成。 有关更多详细信息,请参阅本文。 |
epsilon_cutoff | number | 如果设置为严格介于 0 和 1 之间的浮点数,则仅对条件概率大于 epsilon_cutoff 的令牌进行采样。在论文中,建议值范围为 3e-4 到 9e-4,具体取决于模型的大小。有关更多详细信息,请参阅截断采样作为语言模型平滑。 |
eta_cutoff | number | Eta 采样是局部典型采样和 epsilon 采样的混合体。如果设置为严格介于 0 和 1 之间的浮点数,则仅当令牌大于 eta_cutoff 或 sqrt(eta_cutoff) * exp(-entropy(softmax(next_token_logits))) 时才会被考虑。 后一个术语在直观上是预期的下一个令牌概率,按 sqrt(eta_cutoff) 缩放。在论文中,建议值范围为 3e-4 到 2e-3,具体取决于模型的大小。有关更多详细信息,请参阅截断采样作为语言模型平滑。 |
max_length | integer | 生成的文本的最大长度(以令牌为单位),包括输入。 |
max_new_tokens | integer | 要生成的最大令牌数。优先于 max_length。 |
min_length | integer | 生成的文本的最小长度(以令牌为单位),包括输入。 |
min_new_tokens | integer | 要生成的最小令牌数。优先于 min_length。 |
do_sample | boolean | 在生成新令牌时,是否使用采样而不是贪婪解码。 |
early_stopping | enum | 可能的值:never, true, false。 |
num_beams | integer | 用于束搜索的束数量。 |
num_beam_groups | integer | 将 num_beams 分成组的数量,以确保不同束组之间的多样性。有关更多详细信息,请参阅本文。 |
penalty_alpha | number | 该值平衡了对比搜索解码中的模型置信度和退化惩罚。 |
use_cache | 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 标头的更多信息,请查看指南中的参数。
响应
正文 | ||
---|---|---|
text | string | 识别的文本。 |
chunks | object[] | 启用 returnTimestamps 后,chunks 包含模型识别的音频块列表。 |
text | string | 模型识别的文本块 |
timestamp | number[] | 与文本对应的开始和结束时间戳 |