开发者社区 问答 正文

阿里云语音AI识别新加的热词(希捷公司)不生效,麻烦帮忙看一下什么原因

阿里云语音识别新加的热词(希捷公司)不生效,麻烦帮忙看一下什么原因,taskID:a746c07477f84636bc49e5cf5f35a455(介绍一下西捷公司。)期望(介绍一下希捷公司。)

展开
收起
乐天香橙派 2023-10-16 14:51:47 101 分享 版权
阿里云 AI 助理回答

根据您提供的信息和阿里云语音识别热词管理的相关文档,以下是可能导致“希捷公司”热词不生效的原因及排查步骤:


1. 确认热词是否正确创建并绑定到任务

  • 热词需要通过CreateAsrVocab接口上传,并获取对应的热词ID(vocabulary_id)。
  • 在调用语音识别任务时,需将热词ID通过参数vocabulary_idresource_id传递给服务端。
  • 检查点
    • 确认热词“希捷公司”已成功上传,并获取了正确的热词ID。
    • 确认在调用语音识别任务时,已将热词ID正确传递。

2. 热词权重设置是否合理

  • 热词的权重范围为[-6, 5],其中正数表示增加识别概率,负数表示减少识别概率。
  • 如果权重设置过低(如接近0),可能无法显著提升识别效果。建议将权重设置为较高的值(如4或5)。
  • 检查点
    • 确认“希捷公司”的权重值是否设置为较高值(如4或5)。

3. 热词文本格式是否符合规则

  • 热词文本需满足以下规则:
    • 纯中文热词不超过10个汉字。
    • 纯英文或中英文混合热词不超过5个词。
  • 检查点
    • 确认“希捷公司”符合热词文本规则(纯中文,且字符数未超限)。

4. 模型是否支持热词功能

  • 不同模型对热词的支持情况不同。例如:
    • paraformer-realtime-v1paraformer-v1 支持热词功能。
    • paraformer-realtime-v2 及后续版本需使用vocabulary_id方式绑定热词。
  • 检查点
    • 确认使用的模型是否支持热词功能。
    • 如果使用的是paraformer-realtime-v2或更高版本,需确保通过vocabulary_id方式绑定热词。

5. 音频质量与发音清晰度

  • 热词功能依赖于音频输入的质量。如果音频中“希捷公司”的发音不清晰,可能导致识别失败。
  • 检查点
    • 确认音频中“希捷公司”的发音清晰,且无明显背景噪音。

6. 热词生效延迟

  • 热词创建后可能存在一定的生效延迟,通常为几分钟至十几分钟。
  • 检查点
    • 确认热词创建时间是否已超过生效延迟时间。

7. 其他可能原因

  • 敏感词过滤:如果启用了敏感词过滤功能,且“希捷公司”被误配置为敏感词,则可能导致识别结果被替换或过滤。
  • ITN功能干扰:如果启用了逆文本归一化(ITN)功能,可能导致某些词汇的识别结果发生变化。

排查步骤总结

  1. 确认热词“希捷公司”已成功创建,并获取正确的热词ID。
  2. 检查热词权重是否设置为较高值(如4或5)。
  3. 确认热词文本格式符合规则。
  4. 确认使用的模型支持热词功能,并正确绑定热词ID。
  5. 检查音频质量,确保“希捷公司”的发音清晰。
  6. 确认热词创建时间已超过生效延迟。
  7. 检查是否启用了敏感词过滤或ITN功能,避免干扰热词识别。

示例代码参考

以下是一个完整的热词创建与绑定示例(Python):

创建热词

from dashscope.audio.asr import AsrPhraseManager

dashscope.api_key = 'your-dashscope-api-key'
phrases = {'希捷公司': 5}  # 设置热词及权重
result = AsrPhraseManager.create_phrases(model='paraformer-realtime-v1', phrases=phrases)
if result.output is not None and result.output['finetuned_output'] is not None:
    print('热词创建成功,热词ID:', result.output['finetuned_output'])
else:
    print('热词创建失败:', str(result))

绑定热词并调用语音识别

from dashscope.audio.asr import Recognition, RecognitionParam

param = RecognitionParam.builder() \
    .model('paraformer-realtime-v1') \
    .format('wav') \
    .sample_rate(16000) \
    .vocabulary_id('your-vocabulary-id') \  # 替换为实际热词ID
    .build()

recognizer = Recognition()
result = recognizer.call(param, audio_file='your-audio-file.wav')
print('识别结果:', result)

如果您已完成上述检查仍无法解决问题,请提供以下信息以便进一步排查: 1. 热词创建的具体参数(包括热词文本、权重等)。 2. 调用语音识别任务时的完整请求参数。 3. 音频文件样本(如有)。

希望以上信息能帮助您解决问题!您可以复制页面截图提供更多信息,我可以进一步帮您分析问题原因。

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