ModelScope模型可以添加热词吗?

damo/speech_paraformer-large-vad-punc_asr_nat-zh-cn-16k-common-vocab8404-pytorch,ModelScope模型可以添加热词吗?

展开
收起
小小爱吃香菜 2024-01-31 17:36:33 60 分享 版权
阿里云 AI 助理回答

damo/speech_paraformer-large-vad-punc_asr_nat-zh-cn-16k-common-vocab8404-pytorch 是 ModelScope 上的一个语音识别模型。根据现有知识库资料,该模型本身并不直接支持热词功能,但可以通过阿里云的 Paraformer 实时语音识别服务 和相关热词管理接口来实现热词定制和应用。

以下是详细的解答和操作步骤:


1. 热词功能的支持范围

热词功能主要用于提升特定词汇在语音识别中的准确率。根据知识库内容,以下模型支持热词功能: - paraformer-realtime-v1 - paraformer-realtime-v2

虽然 damo/speech_paraformer-large-vad-punc_asr_nat-zh-cn-16k-common-vocab8404-pytorch 并未明确列出为支持热词的模型,但您可以通过阿里云的 大模型服务平台百炼 提供的热词管理接口,结合支持热词的 Paraformer 模型(如 paraformer-realtime-v2),间接实现类似功能。


2. 热词的创建与管理

要使用热词功能,您需要先创建热词表,并将其绑定到支持热词的模型上。以下是具体步骤:

(1) 创建热词表

通过 HTTP API 或 SDK 创建热词表。以下是一个示例请求:

curl -X POST https://dashscope.aliyuncs.com/api/v1/services/audio/asr/customization \
-H "Authorization: Bearer $DASHSCOPE_API_KEY" \
-H "Content-Type: application/json" \
-d '{
 "model": "speech-biasing",
 "input": {
 "action": "create_vocabulary",
 "target_model": "paraformer-realtime-v2",
 "prefix": "testpfx",
 "vocabulary": [
 {"text": "通义千问", "weight": 5, "lang": "zh"},
 {"text": "阿里云", "weight": 5, "lang": "zh"}
 ]
 }
}'

返回结果中会包含 vocabulary_id,这是后续绑定热词的关键标识。

(2) 查询热词表

您可以查询已创建的热词表,确认其状态和内容:

curl -X POST https://dashscope.aliyuncs.com/api/v1/services/audio/asr/customization \
-H "Authorization: Bearer $DASHSCOPE_API_KEY" \
-H "Content-Type: application/json" \
-d '{
 "model": "speech-biasing",
 "input": {
 "action": "query_vocabulary",
 "vocabulary_id": "vocab-testpfx-6977ae49f65c4c3db054727cxxxxxxxx"
 }
}'

(3) 更新或删除热词表

如果需要修改热词表内容,可以使用更新接口;如果不再需要某热词表,可以删除它:

  • 更新热词表
curl -X POST https://dashscope.aliyuncs.com/api/v1/services/audio/asr/customization \
-H "Authorization: Bearer $DASHSCOPE_API_KEY" \
-H "Content-Type: application/json" \
-d '{
 "model": "speech-biasing",
 "input": {
 "action": "update_vocabulary",
 "vocabulary_id": "vocab-testpfx-6977ae49f65c4c3db054727cxxxxxxxx",
 "vocabulary": [
 {"text": "通义千问", "weight": 5, "lang": "zh"}
 ]
 }
}'
  • 删除热词表
curl -X POST https://dashscope.aliyuncs.com/api/v1/services/audio/asr/customization \
-H "Authorization: Bearer $DASHSCOPE_API_KEY" \
-H "Content-Type: application/json" \
-d '{
 "model": "speech-biasing",
 "input": {
 "action": "delete_vocabulary",
 "vocabulary_id": "vocab-testpfx-6977ae49f65c4c3db054727cxxxxxxxx"
 }
}'

3. 在语音识别任务中使用热词

创建并绑定热词表后,您可以在实时语音识别任务中指定热词 ID (vocabulary_id) 来启用热词功能。以下是一个 WebSocket API 示例:

{
  "header": {
    "action": "run-task",
    "task_id": "2bf83b9a-baeb-4fda-8d9a-xxxxxxxxxxxx",
    "streaming": "duplex"
  },
  "payload": {
    "task_group": "audio",
    "task": "asr",
    "function": "recognition",
    "model": "paraformer-realtime-v2",
    "parameters": {
      "format": "pcm",
      "sample_rate": 16000,
      "vocabulary_id": "vocab-testpfx-6977ae49f65c4c3db054727cxxxxxxxx",
      "disfluency_removal_enabled": false,
      "language_hints": ["zh"]
    },
    "resources": [],
    "input": {}
  }
}

注意vocabulary_id 必须与之前创建的热词表 ID 一致。


4. 重要提醒

  • 热词功能仅支持特定模型:目前仅 paraformer-realtime-v1paraformer-realtime-v2 支持热词功能。如果您希望在 damo/speech_paraformer-large-vad-punc_asr_nat-zh-cn-16k-common-vocab8404-pytorch 中使用热词,建议切换到支持热词的模型。
  • 热词权重设置:热词的权重值(weight)越高,优先级越高,但过高的权重可能导致误识别,请合理设置。
  • 网络环境要求:在绑定 EIP 或切换模式时,可能会出现短暂的网络闪断,请尽量在业务低峰期执行操作。

总结

虽然 damo/speech_paraformer-large-vad-punc_asr_nat-zh-cn-16k-common-vocab8404-pytorch 本身不直接支持热词功能,但您可以通过阿里云的 Paraformer 实时语音识别服务(如 paraformer-realtime-v2)结合热词管理接口实现类似效果。请按照上述步骤创建、管理和使用热词表,以提升特定词汇的识别准确率。

有帮助
无帮助
AI 助理回答生成答案可能存在不准确,仅供参考
0 条回答
写回答
取消 提交回答

ModelScope旨在打造下一代开源的模型即服务共享平台,为泛AI开发者提供灵活、易用、低成本的一站式模型服务产品,让模型应用更简单!欢迎加入技术交流群:微信公众号:魔搭ModelScope社区,钉钉群号:44837352

还有其他疑问?
咨询AI助理