Skip to main content

Mejorar la precisión del reconocimiento

Mejore el reconocimiento de nombres de personas, productos y términos especializados con palabras clave (instantáneas o precompiladas) y mejora de contexto.

Elegir un método de optimización

Los nombres de personas, productos y términos especializados pueden sonar como palabras comunes y producir homófonos o grafías incorrectas en las transcripciones. Las palabras clave y la mejora de contexto proporcionan las grafías correctas o información relevante para ayudar al modelo a mejorar el reconocimiento. Elija según la información que ya tenga la aplicación: use palabras clave para una lista de términos definida, o contexto para conversaciones y descripciones de negocio existentes. Para las palabras clave, elija el modo instantáneo o precompilado según la necesidad de reutilizar la lista en varias solicitudes. Consulte los Modelos y regiones compatibles antes de usarlo.
MétodoCuándo usarloCómo usarlo
Palabras clave instantáneasLos nombres y términos cambian en cada solicitud, o hay pocos términos temporales y no es necesario almacenar ni gestionar una lista.Envíe un objeto «término: peso» en cada solicitud de reconocimiento. La aplicación proporciona las grafías correctas y puede ajustar la preferencia del modelo por cada término mediante su peso.
Palabras clave precompiladasYa existe un glosario de negocio, o el mismo conjunto de términos se usa repetidamente y necesita mantenimiento centralizado.Cree una lista con términos, pesos e idiomas opcionales y haga referencia a su ID durante el reconocimiento. Actualice la lista cuando cambie el glosario, sin reenviar todas las entradas en cada solicitud.
Mejora de contextoLa aplicación ya guarda conversaciones recientes, descripciones de negocio o textos especializados que pueden ayudar al reconocimiento.Envíe el texto relevante como mensajes de contexto junto con el audio. No es necesario extraer términos ni asignar pesos individuales. Incluya las grafías correctas. Una lista de términos definida también puede usarse como palabras clave para corregir el mismo tipo de error.

Usar palabras clave

Antes de ejecutar los ejemplos, descargue el audio de ejemplo y prepare una clave de API en la consola de Model Studio. Texto del audio: «Please send the quarterly project report to Kelyra before Friday.»

Palabras clave instantáneas

Las palabras clave instantáneas son adecuadas para términos que cambian en cada solicitud. Defina parameters.vocabulary como un objeto JSON cuyas claves sean los textos de las palabras clave (string) y cuyos valores sean los pesos (integer). No es necesario crear una lista previamente.
  1. Reconocer el audio sin palabras clave Sin palabras clave, el nombre de este ejemplo no se reconoce con precisión. La siguiente solicitud devuelve el resultado sin configuración.
    cURL
    curl --request POST 'https://{WorkspaceId}.cn-beijing.maas.aliyuncs.com/api/v1/services/aigc/multimodal-generation/generation' \
      --header "Authorization: Bearer $DASHSCOPE_API_KEY" \
      --header "Content-Type: application/json" \
      --header "X-DashScope-SSE: disable" \
      --data '
    {
      "model": "qwen-audio-3.1-asr-flash",
      "input": {
        "messages": [
          {
            "role": "user",
            "content": [
              {
                "type": "input_audio",
                "input_audio": {
                  "data": "https://g-adoc.alcasset.com/media/maas_docs/sfm-cn/en/audios/6a4b3c2d1e0f9092.wav"
                }
              }
            ]
          }
        ]
      },
      "parameters": {
        "format": "wav",
        "sample_rate": 16000
      }
    }
    '
    
  2. Añadir palabras clave instantáneas a la solicitud Añada «Kelyra» a la misma solicitud con peso 4. Mantenga sin cambios las demás entradas. Para los valores y ajustes de peso, consulte Ajustar los pesos de las palabras clave.
    cURL
    curl --request POST 'https://{WorkspaceId}.cn-beijing.maas.aliyuncs.com/api/v1/services/aigc/multimodal-generation/generation' \
      --header "Authorization: Bearer $DASHSCOPE_API_KEY" \
      --header "Content-Type: application/json" \
      --header "X-DashScope-SSE: disable" \
      --data '
    {
      "model": "qwen-audio-3.1-asr-flash",
      "input": {
        "messages": [
          {
            "role": "user",
            "content": [
              {
                "type": "input_audio",
                "input_audio": {
                  "data": "https://g-adoc.alcasset.com/media/maas_docs/sfm-cn/en/audios/6a4b3c2d1e0f9092.wav"
                }
              }
            ]
          }
        ]
      },
      "parameters": {
        "format": "wav",
        "sample_rate": 16000,
        "vocabulary": {
          "Kelyra": 4
        }
      }
    }
    '
    
Compare las transcripciones de ejemplo antes y después de la configuración:
ConfiguraciónEjemplo de transcripción
Sin configuraciónPlease send the quarterly project report to Kellira before Friday.
Con configuraciónPlease send the quarterly project report to Kelyra before Friday.

Palabras clave precompiladas

Las palabras clave precompiladas son adecuadas para vocabularios de negocio reutilizados en varias solicitudes. Cree una lista previamente y envíe vocabulary_id durante el reconocimiento, sin reenviar todas las entradas. Envíe las entradas como un array JSON al crear la lista. Cada elemento contiene los siguientes campos:
CampoTipoObligatorioDescripción
textstringSíUna palabra real en un idioma compatible con el modelo. Para los límites de longitud, consulte Reglas del texto de las palabras clave.
weightintegerSíUse de 1 a 5 para palabras clave normales, empezando por 4. Algunos modelos también admiten el peso 50 para superpalabras clave. Consulte Ajustar los pesos de las palabras clave.
langstringNoCódigo que determina el idioma al que se aplica la entrada. Puede omitirse si se desconoce. Para su relación con el parámetro de reconocimiento language_hints, consulte Organizar y mantener vocabularios.
El modelo de destino especificado al crear la lista debe coincidir con el modelo de reconocimiento.
La administración de palabras clave y el reconocimiento de voz deben usar la misma cuenta. De lo contrario, el reconocimiento no puede acceder al vocabulario.
  • HTTP / cURL
  • SDK
  1. Crear una lista de palabras clave Este ejemplo usa qwen-audio-3.1-asr-flash y especifica el modelo de destino mediante target_model. Guarde output.vocabulary_id de la respuesta.
    cURL
    curl --request POST 'https://{WorkspaceId}.cn-beijing.maas.aliyuncs.com/api/v1/services/audio/asr/customization' \
      --header "Authorization: Bearer $DASHSCOPE_API_KEY" \
      --header "Content-Type: application/json" \
      --data @- <<EOF
    {
      "model": "speech-biasing",
      "input": {
        "action": "create_vocabulary",
        "target_model": "qwen-audio-3.1-asr-flash",
        "prefix": "testpfx",
        "vocabulary": [
          {
            "text": "Kelyra",
            "weight": 4,
            "lang": "en"
          }
        ]
      }
    }
    EOF
    
  2. Comprobar que la lista está lista Sustituya <vocabulary_id> por el ID devuelto en la creación y consulte la lista. Inicie el reconocimiento cuando output.status sea OK.
    cURL
    export VOCABULARY_ID="<vocabulary_id>"
    
    curl --request POST 'https://{WorkspaceId}.cn-beijing.maas.aliyuncs.com/api/v1/services/audio/asr/customization' \
      --header "Authorization: Bearer $DASHSCOPE_API_KEY" \
      --header "Content-Type: application/json" \
      --data @- <<EOF
    {
      "model": "speech-biasing",
      "input": {
        "action": "query_vocabulary",
        "vocabulary_id": "$VOCABULARY_ID"
      }
    }
    EOF
    
  3. Hacer referencia a la lista durante el reconocimiento Haga referencia a la lista mediante parameters.vocabulary_id en la solicitud de reconocimiento, sin reenviar sus entradas.
    cURL
    curl --request POST 'https://{WorkspaceId}.cn-beijing.maas.aliyuncs.com/api/v1/services/aigc/multimodal-generation/generation' \
      --header "Authorization: Bearer $DASHSCOPE_API_KEY" \
      --header "Content-Type: application/json" \
      --header "X-DashScope-SSE: disable" \
      --data @- <<EOF
    {
      "model": "qwen-audio-3.1-asr-flash",
      "input": {
        "messages": [
          {
            "role": "user",
            "content": [
              {
                "type": "input_audio",
                "input_audio": {
                  "data": "https://g-adoc.alcasset.com/media/maas_docs/sfm-cn/en/audios/6a4b3c2d1e0f9092.wav"
                }
              }
            ]
          }
        ]
      },
      "parameters": {
        "format": "wav",
        "sample_rate": 16000,
        "vocabulary_id": "$VOCABULARY_ID"
      }
    }
    EOF
    
  4. Reutilizar o eliminar la lista Las solicitudes posteriores pueden seguir usando el mismo ID. Ejecute la siguiente solicitud de eliminación solo cuando la lista deje de ser necesaria, para liberar su cuota.
    cURL
    curl --request POST 'https://{WorkspaceId}.cn-beijing.maas.aliyuncs.com/api/v1/services/audio/asr/customization' \
      --header "Authorization: Bearer $DASHSCOPE_API_KEY" \
      --header "Content-Type: application/json" \
      --data @- <<EOF
    {
      "model": "speech-biasing",
      "input": {
        "action": "delete_vocabulary",
        "vocabulary_id": "$VOCABULARY_ID"
      }
    }
    EOF
    

Usar la mejora de contexto

La mejora de contexto puede usar directamente el historial de conversaciones o textos especializados existentes. Las palabras clave requieren términos y pesos, mientras que el contexto se envía como mensajes de texto, sin dividir los materiales de negocio en entradas individuales. Ambos métodos pueden mejorar el reconocimiento de nombres propios. Elija según la información disponible en la aplicación.

Preparar el contexto

Para el audio de ejemplo, los mensajes existentes que contengan el nombre del destinatario «Kelyra» pueden proporcionar su grafía correcta. A continuación se presentan dos fuentes habituales de contexto.
  • Contexto de negocio o texto especializado
  • Historial de conversaciones
Use el texto relevante de una descripción de proyecto o material especializado existente en un mensaje con role=user y type=input_text. No es necesario inventar una conversación ni añadir una respuesta. Envíe el siguiente array como contexto:
[
  {
    "role": "user",
    "content": [
      {
        "type": "input_text",
        "text": "My colleague is Kelyra. We are preparing the quarterly project report."
      }
    ]
  }
]
El mensaje assistant es opcional. Ordene el historial por turnos, con cada mensaje user antes de su mensaje assistant correspondiente. Para los límites de longitud del texto y de turnos retenidos, consulte Límites de uso.

Configurar y llamar al servicio

Reconozca el mismo audio con el contexto preparado. Elija un ejemplo de llamada según la familia de modelos.
  • Qwen-Audio-ASR
  • Qwen-Audio-ASR-Message / Qwen-Audio-ASR-Streaming
  • Qwen-Audio-ASR-Filetrans
Este ejemplo usa qwen-audio-3.1-asr-flash. Coloque los mensajes de contexto en orden en input.messages, seguidos del mensaje de audio actual que contiene input_audio.
cURL
curl --request POST 'https://{WorkspaceId}.cn-beijing.maas.aliyuncs.com/api/v1/services/aigc/multimodal-generation/generation' \
  --header "Authorization: Bearer $DASHSCOPE_API_KEY" \
  --header "Content-Type: application/json" \
  --header "X-DashScope-SSE: disable" \
  --data '
{
  "model": "qwen-audio-3.1-asr-flash",
  "input": {
    "messages": [
      {
        "role": "user",
        "content": [
          {
            "type": "input_text",
            "text": "My colleague is Kelyra. We are preparing the quarterly project report."
          }
        ]
      },
      {
        "role": "assistant",
        "content": [
          {
            "type": "text",
            "text": "Understood. We will send the quarterly project report to Kelyra."
          }
        ]
      },
      {
        "role": "user",
        "content": [
          {
            "type": "input_audio",
            "input_audio": {
              "data": "https://g-adoc.alcasset.com/media/maas_docs/sfm-cn/en/audios/6a4b3c2d1e0f9092.wav"
            }
          }
        ]
      }
    ]
  },
  "parameters": {
    "format": "wav",
    "sample_rate": 16000
  }
}
'
Elimine la configuración de contexto del ejemplo y reconozca el mismo audio para comparar los resultados antes y después de la configuración. A continuación se muestran transcripciones de ejemplo:
ConfiguraciónEjemplo de transcripción
Sin configuraciónPlease send the quarterly project report to Kellira before Friday.
Con configuraciónPlease send the quarterly project report to Kelyra before Friday.

Ajustar y solucionar problemas de reconocimiento

Compare el mismo audio antes y después de configurar y ajuste las entradas, los pesos o el contexto. El ajuste de palabras clave se aplica a ambos métodos.

Ajustar los pesos de las palabras clave

Los pesos de palabras clave normales van de 1 a 5. Comience con weight=4. Un peso mayor favorece la palabra, pero un valor excesivo puede sustituir por error otras palabras de sonido similar.
PesoPreferenciaCuándo usarlo
1–2LeveTérmino de sonido similar a una palabra común, para evitar correcciones excesivas
3–4ModeradaConfiguración inicial recomendada para la mayoría de los escenarios
5FuerteTérminos frecuentes en el audio que rara vez se confunden con otras palabras
Superpalabras clave: las series Qwen-Audio-ASR-Message, Qwen-Audio-ASR-Streaming, Qwen-Audio-ASR-Filetrans y Qwen-Audio-ASR también admiten weight=50 en ambos métodos para mejorar la recuperación de términos objetivo. Cada vocabulario o solicitud puede contener un máximo de 50 superpalabras clave.

Organizar y mantener vocabularios

  • Agrupar por escenario: Cree listas precompiladas independientes para cada escenario de negocio, como terminología médica y nombres de productos, para reducir las entradas no relacionadas.
  • Distinguir el idioma de la entrada del idioma del audio: un vocabulario precompilado puede mezclar idiomas identificados por lang. El parámetro de reconocimiento language_hints declara el idioma del audio. Al configurarlo, solo surten efecto las palabras clave del idioma coincidente; los demás se ignoran.
  • Mantener periódicamente: Actualice las entradas según las necesidades del negocio y elimine las listas sin uso para liberar la cuota.
Deje al menos 5 minutos entre actualizaciones de una lista de palabras clave; de lo contrario, las palabras clave actualizadas podrían no surtir efecto.

Revisar la calidad del reconocimiento

Primero, determine si el problema es una configuración sin efecto, una preferencia excesiva por las palabras clave o un audio difícil de reconocer. Después, compruebe los puntos correspondientes.
SíntomaComprobaciones y acciones
Las palabras clave no se reconocen como se esperabaCompruebe primero los Modelos y regiones compatibles. Las palabras clave instantáneas se especifican en parameters.vocabulary. Para las precompiladas, compruebe la cuenta, vocabulary_id, status=OK y que el target_model de la lista coincida con el modelo de reconocimiento.Aumente el peso de la palabra clave dentro del intervalo admitido y compare los resultados del mismo audio para determinar si el peso era demasiado bajo.
Otras palabras se sustituyen incorrectamente por palabras claveReduzca el peso dentro del intervalo admitido y elimine los términos ajenos al escenario. Compruebe que lang coincide con language_hints de la API de reconocimiento y que las entradas pertenecen al idioma deseado.
El contexto no mejora los términos deseadosCompruebe las grafías correctas, los roles, los tipos y el orden de los mensajes, así como el campo de entrada requerido por la API. El texto que supere los límites de longitud o turnos puede truncarse o descartarse. Consulte Límites de uso.
Muchas palabras comunes también son incorrectasCompruebe que el formato y la frecuencia de muestreo del audio cumplan los requisitos del modelo y reduzca el ruido de fondo. Para audio en un solo idioma, declare el idioma mediante language_hints de la API de reconocimiento. Para la selección del modelo y los requisitos de audio, consulte Descripción general del reconocimiento de voz.

Modelos y regiones compatibles

  • Palabras clave precompiladas
  • Palabras clave instantáneas
  • Mejora de contexto
  • Singapur
  • China (Pekín)
Las palabras clave solo se admiten en el espacio de trabajo principal, no en los subespacios.
  • Qwen-Audio-ASR: qwen-audio-3.1-asr-flash, qwen-audio-3.0-asr-flash
  • Qwen-Audio-ASR-Streaming: qwen-audio-3.1-asr-flash-streaming, qwen-audio-3.0-asr-flash-streaming
  • Qwen-Audio-ASR-Filetrans: qwen-audio-3.1-asr-flash-filetrans, qwen-audio-3.0-asr-flash-filetrans
  • Qwen-Audio-ASR-Message: qwen-audio-3.1-asr-flash-message
  • Fun-ASR-Realtime: fun-asr-realtime
  • Fun-ASR-Flash: fun-asr-flash-2026-06-15
  • Fun-ASR: fun-asr

Límites de uso

  • Límites de palabras clave
  • Reglas del texto de las palabras clave
  • Límites de contexto
LímiteDescripción
Número de listas de palabras claveHasta 50 vocabularios precompilados por cuenta, compartidos entre todos los modelos. Cada uno tiene un vocabulary_id.
Palabras claveSeries Qwen-Audio-ASR-Message, Qwen-Audio-ASR-Streaming, Qwen-Audio-ASR-Filetrans y Qwen-Audio-ASR: hasta 2000.Modelos de versión principal de las series Fun-ASR-Realtime, Fun-ASR-Flash y Fun-ASR: hasta 2000. Otros modelos de estas series y la serie Paraformer: hasta 500.Se cuentan por vocabulario para palabras clave precompiladas y por solicitud para las instantáneas.
Superpalabras claveUn máximo de 50 entradas puede tener peso 50.
En las series Qwen-Audio-ASR-Message, Qwen-Audio-ASR-Streaming, Qwen-Audio-ASR-Filetrans y Qwen-Audio-ASR, el servicio combina las palabras clave precompiladas e instantáneas cuando se configuran ambas. Si el conjunto combinado supera las 2000 palabras clave, selecciona 2000 al azar.

Facturación de las funciones

Las funciones de palabras clave instantáneas y precompiladas son gratuitas. Para los cargos por llamadas a modelos con palabras clave o mejora de contexto, consulte las reglas de facturación.

API relacionadas