Este tema describe los parámetros y detalles de la interfaz de la API HTTP de reconocimiento de voz no en tiempo real de Qwen-Audio-ASR.
Para los requisitos de entrada, como formatos de audio compatibles, límites de tamaño de archivo y límites de duración, consulte Especificaciones de audio.
En el modo de transmisión, el cliente necesita manejar lo siguiente:
Endpoints de servicio
- Singapore
- China (Beijing)
POST https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1/services/aigc/multimodal-generation/generationReemplace {WorkspaceId} con su ID de espacio de trabajo real.Encabezados de solicitud
| Parámetro | Tipo | Obligatorio | Descripción |
|---|---|---|---|
Authorization | string | Sí | El token de autenticación, en el formato Bearer <your_api_key>. Reemplace "<your_api_key>" con su clave API real. |
Content-Type | string | Sí | El tipo de medio del cuerpo de la solicitud. Fijado en application/json. |
X-DashScope-SSE | string | No | Controla si se solicitan resultados en streaming. Establezca enable para solicitar streaming SSE. Establezca disable u omita este parámetro para devolver solo el resultado final.Se aplica únicamente a qwen-audio-3.0-asr-flash: el streaming SSE solo está disponible para audio de al menos 1 minuto de duración. |
Cuerpo de la solicitudmodelstring(Obligatorio)El nombre del modelo.inputobject(Obligatorio)La información de entrada.
Propiedades messages array(object)(Obligatorio)La lista de mensajes. Contiene el audio a reconocer y, opcionalmente, el contexto de conversación que mejora la precisión del reconocimiento.
Propiedades role string(Obligatorio)El rol del mensaje. Valores válidos:
array(object)(Obligatorio)La lista de contenido del mensaje.
Propiedades type string(Obligatorio)El tipo de contenido. Cada solicitud necesita al menos un mensaje de tipo input_audio. Valores válidos:
object(Condicionalmente obligatorio)Requerido cuando type es input_audio.
Propiedades data string(Obligatorio)Los datos de audio a reconocer. Para los requisitos de entrada, como formatos de audio compatibles, límites de tamaño de archivo y límites de duración, consulte Especificaciones de audio. Se admiten dos métodos:
https://example.com/audio/sample.wavEjemplo (Base64): data:audio/wav;base64,{BASE64_ENCODED_DATA}string(Condicionalmente obligatorio)Cuando type es input_text, ingrese los resultados de reconocimiento del habla del usuario de turnos anteriores o una lista de palabras específicas del dominio. Cuando type es text, ingrese las respuestas del modelo de lenguaje grande de turnos anteriores. La longitud del texto se mide en caracteres, donde cada carácter cuenta como 1. La longitud combinada de los campos text en todos los mensajes de un solo turno de contexto no puede exceder 400 caracteres. Cualquier exceso se trunca desde el final.object(Obligatorio)Los parámetros del modelo.El pulido de texto está deshabilitado de forma predeterminada y aún no está disponible para qwen-audio-3.0-asr-flash. qwen-audio-3.1-asr-flash admite el pulido de texto nativo.Pulido de texto: Mientras transcribe, el modelo elimina muletillas sin significado y repeticiones por tartamudeo, procesa las autocorrecciones, mejora las expresiones coloquiales y normaliza la puntuación y el formato. El resultado es más conciso, fluido y legible, y conserva en la medida de lo posible la intención final y la información clave del hablante.
Propiedades speaker_diarization_enabled boolean (Opcional)Se aplica únicamente a qwen-audio-3.1-asr-flash.false. Si es true, la respuesta usa speaker_id para distinguir a los hablantes e incluye output.sentences. Cuando está habilitada, se ignoran keep_dialect y language_hints.keep_dialect boolean (Opcional)Se aplica únicamente a qwen-audio-3.1-asr-flash.false. Establezca false para transcribir el dialecto en texto en mandarín estándar o true para conservar las expresiones dialectales.formatstring(Obligatorio)El formato de audio. Configure esto para que coincida con su formato de audio real. Los valores admitidos incluyen wav, mp3 y opus. Para más detalles, consulte Especificaciones de audio.sample_ratestring(Opcional)La tasa de muestreo del audio, en Hz. Por ejemplo, 16000 significa una tasa de muestreo de 16 kHz. Para más detalles, consulte Especificaciones de audio.vocabulary_idstring(Opcional)El ID de una lista de palabras clave precompilada.Genere este ID con antelación llamando a la API de creación de lista de palabras clave. Pase el ID durante el reconocimiento para usar las palabras clave de la lista.Adecuado para escenarios donde el vocabulario es conocido y relativamente estable, y donde necesita reutilizar la misma lista de palabras en distintas solicitudes.Para obtener detalles sobre el uso, consulte Palabras clave precompiladas.vocabularyobject(Opcional)Palabras clave instantáneas.Se pasan como pares clave-valor, donde la clave es el texto de la palabra clave (string) y el valor es el peso de la palabra clave (integer). No es necesario crear una lista de palabras clave con antelación. El peso oscila entre [1, 5] o se establece en 50: un valor en [1, 5] hace que el modelo tenga más probabilidades de generar la palabra a medida que aumenta el valor; un valor de 50 designa una súper palabra clave, lo que mejora enormemente la recuperación, pero el número de súper palabras clave no puede exceder 50.Adecuado para la optimización temporal de palabras clave a nivel de sesión.Cuando las palabras clave instantáneas y precompiladas se configuran juntas, el sistema fusiona ambos conjuntos. Si el conjunto fusionado contiene más de 2000 palabras clave, el sistema selecciona aleatoriamente 2000 para usar. Para detalles de uso, consulte Palabras clave instantáneas.language_hints array[string](Opcional)Los códigos de idioma que se reconocerán. Si desconoce el idioma, omita este parámetro para que el modelo lo detecte automáticamente. Puede especificar hasta 4 valores. Si especifica más, solo los primeros 4 tendrán efecto.Especificar los códigos de idioma puede mejorar la precisión del reconocimiento.
Códigos de idioma admitidos
qwen-audio-3.1-asr-flash también admite los siguientes códigos de idioma:
| Los siguientes ejemplos utilizan la configuración para la región de Singapore. Reemplace "{WorkspaceId}" con su ID de espacio de trabajo real. La configuración difiere entre regiones, y la clave API para la región de Singapore es diferente a la de la región de Pekín.
|
Cuerpo de respuestarequest_idstringEl identificador único de esta solicitud.outputobjectEl resultado de salida.
Propiedades text stringEl texto reconocido completo acumulado hasta ahora.sentences array[object]Se aplica únicamente a qwen-audio-3.1-asr-flash.sentence.sentenceobjectLos detalles de la oración actual.
Propiedades speaker_id integer | nullSe aplica únicamente a qwen-audio-3.1-asr-flash.null en caso contrario.sentence_idintegerEl número de oración, comenzando desde 1.sentence_endbooleanIndica si este es el resultado final para la oración. true indica que el reconocimiento de la oración está completo.begin_timeintegerEl tiempo de inicio de la oración, en milisegundos.end_timeintegerEl tiempo de finalización de la oración, en milisegundos. Se devuelve solo cuando sentence_end es true.textstringEl texto reconocido de la oración actual.channel_idintegerEl número de canal, comenzando desde 0.wordsarrayLa lista de marcas de tiempo a nivel de palabra.
Propiedades speaker_id integer | nullSe aplica únicamente a qwen-audio-3.1-asr-flash.null en caso contrario.textstringEl texto de la palabra.begin_timeintegerEl tiempo de inicio de la palabra, en milisegundos.end_timeintegerEl tiempo de finalización de la palabra, en milisegundos.punctuationstringEl signo de puntuación después de la palabra. Una cadena vacía cuando no hay puntuación.fixedbooleanIndica si la palabra está estabilizada. false indica que la marca de tiempo de la palabra puede ajustarse en eventos posteriores.objectLa información de uso. Se devuelve solo cuando sentence_end es true.
Propiedades duration integerLa duración del audio procesado, en segundos.input_tokens integerSe aplica únicamente a qwen-audio-3.1-asr-flash.integerSe aplica únicamente a qwen-audio-3.1-asr-flash.integerSe aplica únicamente a qwen-audio-3.1-asr-flash.input_tokens y output_tokens. |
|
Lógica de procesamiento de resultados de transmisión SSE
En el modo de transmisión, el cliente necesita manejar lo siguiente:
- Para cada evento SSE recibido, analice el JSON en el campo
data. - Para
qwen-audio-3.0-asr-flash, useoutput.sentence.sentence_endpara determinar si la oración actual terminó. Si estrue, el reconocimiento ha finalizado y las marcas de tiempo de las palabras son estables, por lo que el resultado puede usarse como definitivo. Si esfalse, el reconocimiento continúa y el texto y las marcas de tiempo pueden actualizarse en eventos posteriores. - La información de
usagese devuelve solo en los eventos de fin de oración e incluye la duración del audio procesado. Paraqwen-audio-3.1-asr-flash, también incluye las cantidades de tokens de entrada, de salida y totales de la solicitud. Este modelo se factura por uso de tokens.
qwen-audio-3.1-asr-flash sin diarización, la marca de tiempo de una palabra solo es definitiva cuando output.sentence.words[i].fixed es true. Hasta entonces puede cambiar. Si la diarización está habilitada, lea los resultados de la oración actual y las anteriores en output.sentences.