本文档介绍如何使用 DashScope Python SDK 调用实时音视频翻译(Qwen-LiveTranslate)模型。
前提条件
- 安装SDK,确保DashScope SDK版本不低于1.25.6。
- 获取与配置 API Key。
请求参数
-
以下参数通过
OmniRealtimeConversation的构造方法设置。点击查看示例代码
参数 类型 是否必须 说明 modelstr是 指定要使用的模型名称,推荐使用 qwen3.5-livetranslate-flash-realtime。callback回调接口(OmniRealtimeCallback)是 用于处理服务端事件的回调对象实例。 urlstr是 实时翻译服务地址: - 华北2(北京):
wss://{WorkspaceId}.cn-beijing.maas.aliyuncs.com/api-ws/v1/realtime - 新加坡:
wss://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api-ws/v1/realtime
{WorkspaceId}替换为真实的业务空间ID。 - 华北2(北京):
-
以下参数通过
OmniRealtimeConversation的update_session方法设置。点击查看示例代码
参数
类型
是否必须
说明
output_modalitiesList[MultiModality]否
模型输出模态。
默认值:
[MultiModality.TEXT, MultiModality.AUDIO]。取值范围:
[MultiModality.TEXT]:仅输出文本[MultiModality.TEXT, MultiModality.AUDIO]:输出文本和音频
voicestr是
生成音频的音色。
默认值:
Qwen3.5-LiveTranslate-Flash-Realtime默认音色为:
Tina
可选值:参见支持的音色。
input_audio_transcription_modelstr否
将
input_audio_transcription_model设为qwen3-asr-flash-realtime,服务端将返回源语言语音识别结果。translation_paramsTranslationParams否
翻译相关配置。
enable_turn_detectionbool否
是否启用 VAD(语音活动检测)。
默认值:
True,即启用 VAD 模式,服务端自动检测语音起止并自动触发翻译。 -
以下参数通过
TranslationParams的构造方法设置。点击查看示例代码
参数
类型
是否必须
说明
languagestr否
翻译目标语言代码。
默认值:
en。可选值:参见支持的语种。
corpusTranslationParams.Corpus否
热词配置,用于提升特定词汇的翻译准确性。
corpus.phrasesdict否
热词映射表。key 为源语言词汇,value 为目标语言对应翻译。
示例:
{'人工智能': 'Artificial Intelligence'}
关键接口
OmniRealtimeConversation类
OmniRealtimeConversation通过from dashscope.audio.qwen_omni import OmniRealtimeConversation方法引入。
| 方法签名 | 服务端响应事件(通过回调下发) | 说明 |
|---|---|---|
服务端事件会话已创建服务端事件 会话配置已更新 | 和服务端创建连接。 | |
服务端事件会话已更新 | 用于更新会话配置,建议在连接建立后首先调用该方法进行设置。若未调用该方法,系统将使用默认配置。只需关注OmniRealtimeConversation的update_session方法涉及的参数。 | |
session.finished服务端完成语音翻译,结束会话 | 通知服务端结束会话,服务端收到会话结束通知后将完成最后的语音翻译。 | |
| 无 | 将Base64编码后的音频数据片段追加到云端输入音频缓冲区。服务端会自动检测语音起止并触发翻译。 | |
input_audio_buffer.committed输入音频缓冲区已提交 | Manual 模式下,提交之前通过append_audio方法追加到云端缓冲区的音频,服务端收到后自动开始生成翻译响应。VAD 模式下无需调用此方法,服务端会自动提交。 | |
input_audio_buffer.cleared输入音频缓冲区已清空 | 清空当前云端缓冲区中尚未提交的音频数据。 | |
| 无 | 终止任务,并关闭连接。 | |
| 无 | 获取当前任务的session_id。 | |
| 无 | 获取最近一次response的response_id。 |
回调接口(OmniRealtimeCallback)
服务端会通过回调的方式,将服务端响应事件和数据返回给客户端。
继承此类并实现相应方法以处理服务端事件。
通过from dashscope.audio.qwen_omni import OmniRealtimeCallback引入。
| 方法签名 | 参数 | 说明 |
|---|---|---|
| 无 | WebSocket连接成功建立时触发。 | |
| message:服务端事件 | 收到服务端事件时触发。 | |
| close_status_code:状态码close_msg:WebSocket连接关闭时的日志信息 | WebSocket连接关闭时触发。 |
完整示例
以下示例展示如何从麦克风实时录音并进行翻译。
麦克风实时翻译示例代码
麦克风实时翻译示例代码