Tradução de áudio e vídeo em tempo real - Qwen-Livetranslate-Realtime
Qwen-LiveTranslate Java SDK - API reference
Traduza fala em tempo real usando o DashScope Java SDK e o modelo qwen3.5-livetranslate-flash-realtime . O SDK conecta-se via WebSocket, transmite áudio de entrada e retorna texto traduzido com fala sintetizada.
O Alibaba Cloud Model Studio lançou domínios específicos por workspace para as regiões China (Beijing) e Singapore. Os novos domínios dedicados oferecem desempenho superior e maior estabilidade nas solicitações de inferência. Recomendamos migrar para os novos domínios:
China (Beijing): de wss://dashscope.aliyuncs.com para wss://{WorkspaceId}.cn-beijing.maas.aliyuncs.com
Singapore: de wss://dashscope-intl.aliyuncs.com para wss://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com
{WorkspaceId} é o ID do seu workspace, disponível na página Workspace Details no console do Alibaba Cloud Model Studio. O domínio existente permanece totalmente funcional.
Use OmniRealtimeParam.builder() para definir estes parâmetros e estabelecer a conexão WebSocket.
Clique em visualizar o código de exemplo
Copy
OmniRealtimeParam param = OmniRealtimeParam.builder() .model("qwen3.5-livetranslate-flash-realtime") // The following is the Singapore region URL. Replace {WorkspaceId} with your actual workspace ID. URLs vary by region. .url("wss://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api-ws/v1/realtime") // API keys vary by region. To obtain an API key, see https://www.alibabacloud.com/help/en/model-studio/get-api-key // If an environment variable is not configured, replace the next line with your Model Studio API key: .apikey("sk-xxx") .apikey(System.getenv("DASHSCOPE_API_KEY")) .build();
Parâmetro
Tipo
Obrigatório
Descrição
model
String
Sim
Nome do modelo. Recomendamos qwen3.5-livetranslate-flash-realtime. O modelo qwen3-livetranslate-flash-realtime é a versão legada.
url
String
Sim
Endpoint WebSocket. Use wss://{WorkspaceId}.cn-beijing.maas.aliyuncs.com/api-ws/v1/realtime (China (Beijing)) ou wss://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api-ws/v1/realtime (Singapore).
Substitua {WorkspaceId} pelo seu workspace ID real.
apikey
String
Não
Chave da API para autenticação. Se não estiver definida, configure-a pela variável de ambiente DASHSCOPE_API_KEY.
Modalidades de saída. Padrão: [AUDIO, TEXT]. Use [TEXT] para saída apenas em texto.
voice
String
Não
Voz para fala sintetizada. A voz padrão varia conforme o modelo: Tina para qwen3.5-livetranslate-flash-realtime e Cherry para qwen3-livetranslate-flash-realtime. Consulte as supported voices.
inputAudioFormat
OmniRealtimeAudioFormat
Não
Formato do áudio de entrada. Padrão: PCM_16000HZ_MONO_16BIT.
outputAudioFormat
OmniRealtimeAudioFormat
Não
Formato do áudio de saída. Padrão: PCM_24000HZ_MONO_16BIT.
InputAudioTranscription
String
Não
Modelo ASR para transcrever a fala original. Defina como qwen3-asr-flash-realtime para receber a transcrição no idioma de origem junto à tradução.
translationConfig
OmniRealtimeTranslationParam
Não
Configurações de tradução. Consulte OmniRealtimeTranslationParam abaixo.
enableTurnDetection
boolean
Não
Ativa ou desativa o VAD (Detecção de Atividade de Voz).
Valor padrão: true. Ative o modo VAD, em que o servidor detecta automaticamente o início e o fim da fala e aciona a tradução.
Defina como false para alternar para o modo Manual, no qual o cliente envia o áudio manualmente pelo método commit(). Para descrições detalhadas dos parâmetros, consulte a descrição de turn_detection no documento Client events.
Terminologia personalizada para termos específicos do domínio.
corpus.phrases
Map<String, Object>
Não
Mapeamento de termos: as chaves são termos de origem e os valores são traduções de destino. Exemplo: {"Inteligencia Artificial": "Artificial Intelligence"}
Crie uma instância de conversa com parâmetros de conexão e um callback de eventos.
void connect()
Abre a conexão WebSocket. Aciona os eventos session.created e session.updated. Lança NoApiKeyException e InterruptedException.
void updateSession(OmniRealtimeConfig config)
Atualiza a configuração da sessão após a conexão. Aciona o evento session.updated. Defina apenas os parâmetros necessários; valores padrão aplicam-se aos omitidos.
void appendAudio(String audioBase64)
Envia um trecho de áudio codificado em Base64 ao servidor. O servidor detecta automaticamente os limites da fala e inicia a tradução.
void commit()
No modo Manual, confirma o áudio adicionado previamente ao buffer do servidor pelo método appendAudio. Ao receber a confirmação, o servidor começa a gerar a resposta de tradução. No modo VAD, este método é desnecessário, pois o servidor confirma automaticamente. Aciona o evento input_audio_buffer.committed.
Processa eventos do servidor entregues via WebSocket. Estenda esta classe e implemente cada método para tratar eventos.Importação: com.alibaba.dashscope.audio.omni.OmniRealtimeCallback
Método
Parâmetros
Descrição
void onOpen()
Nenhum
Chamado quando a conexão WebSocket é estabelecida.