Todos los productos
Search
Centro de documentos

Alibaba Cloud Model Studio:Referencia del SDK de Python para palabras clave personalizadas

Última actualización: Oct 12, 2026

Utilice el SDK de Python para crear, listar, consultar, actualizar y eliminar vocabularios personalizados para el reconocimiento de voz.

ImportanteAlibaba Cloud Model Studio ha lanzado dominios específicos de espacio de trabajo para las regiones de China (Beijing) y Singapur. Los nuevos dominios dedicados ofrecen un rendimiento superior y una mayor estabilidad para las solicitudes de inferencia. Recomendamos migrar a los nuevos dominios:

  • China (Pekín): de dashscope.aliyuncs.com a {WorkspaceId}.cn-beijing.maas.aliyuncs.com
  • Singapur: de dashscope-intl.aliyuncs.com a {WorkspaceId}.ap-southeast-1.maas.aliyuncs.com

Reemplace {WorkspaceId} con su ID de espacio de trabajo real. Los dominios existentes permanecen totalmente funcionales.

Guía del usuario: Mejorar la precisión del reconocimiento.

ImportanteEl vocabulario personalizado solo es compatible con el espacio de trabajo principal. Los subespacios de trabajo no lo admiten.

Endpoint

El SDK se conecta al endpoint de China (Beijing) de forma predeterminada. Para usar una región diferente, configure dashscope.base_http_api_url antes de realizar cualquier llamada a la API.

Singapore

https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1

Reemplace {WorkspaceId} con su ID de espacio de trabajo real.

China (Beijing)

https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1

Reemplace {WorkspaceId} con su ID de espacio de trabajo real.

Para usar la región Singapore, configure dashscope.base_http_api_url antes de realizar cualquier llamada:

import dashscope

# Set this at the beginning of your code
dashscope.base_http_api_url = 'https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1'
Nota:
  • Las claves de API difieren entre regiones. Utilice la clave de API que coincida con su región.
  • La configuración de región es global y afecta a todas las llamadas a la API de DashScope.

VocabularyService

Paquete: dashscope.audio.asr.VocabularyService

Descripción: Crea, lista, consulta, actualiza y elimina vocabularios personalizados.

Constructor

VocabularyService(api_key: str = None, workspace: str = None, model: str = None)

Si no se pasa api_key, el SDK utiliza la variable global dashscope.api_key.

create_vocabulary() - Crear un vocabulario personalizado

Firma del método:

def create_vocabulary(
    self,
    target_model: str,
    prefix: str,
    vocabulary: List[dict]) -> str

Parámetros:

Parámetro

Tipo

Obligatorio

Descripción

target_model

str

Sí

El modelo de reconocimiento de voz que utiliza este vocabulario. Este valor debe coincidir con el modelo que especifique al llamar a la API de reconocimiento de voz.

prefix

str

Sí

Un prefijo personalizado para el vocabulario. Solo se permiten letras minúsculas y dígitos, con una longitud máxima de 10 caracteres.

vocabulary

List[dict]

Sí

Una lista de palabras clave. Cada entrada es un dict con los campos text, weight y lang.

Para obtener más información, consulte Estructura del diccionario de palabras clave.

Valor de retorno:

Tipo

Descripción

str

El ID del vocabulario creado.

list_vocabularies() - Listar vocabularios personalizados

Se asigna a la API HTTP action: list_vocabulary (HTTP usa la forma singular, mientras que el nombre del método de Python list_vocabularies usa el plural).

Firma del método:

def list_vocabularies(
    self,
    prefix: str = None,
    page_index: int = 0,
    page_size: int = 10) -> List[dict]

Parámetros:

Parámetro

Tipo

Obligatorio

Descripción

prefix

str

No

El prefijo personalizado del vocabulario. Cuando se especifica, solo se devuelven los vocabularios con este prefijo.

page_index

int

No

El número de página, comenzando desde 0.

Valor predeterminado: 0.

page_size

int

No

El número de entradas por página.

Valor predeterminado: 10.

Valor de retorno:

Tipo

Descripción

List[dict]

Una lista de objetos de vocabulario, cada uno conteniendo vocabulary_id, gmt_create, gmt_modified y status.

Campos devueltos por list_vocabularies():

Campo

Tipo

Descripción

vocabulary_id

str

El ID del vocabulario.

gmt_create

str

La hora de creación.

gmt_modified

str

La hora de la última modificación.

status

str

El estado:

  • OK: Listo.

  • UNDEPLOYED: No disponible.

query_vocabulary() - Consultar un vocabulario personalizado

Firma del método:

def query_vocabulary(
    self,
    vocabulary_id: str) -> dict

Parámetros:

Parámetro

Tipo

Obligatorio

Descripción

vocabulary_id

str

Sí

El ID del vocabulario personalizado que se desea consultar.

Valor de retorno:

Tipo

Descripción

dict

Un objeto de vocabulario que contiene vocabulary, target_model, gmt_create, gmt_modified y status.

Campos devueltos por query_vocabulary():

Campo

Tipo

Descripción

vocabulary

List[dict]

El contenido de la lista de palabras clave.

target_model

str

El modelo de reconocimiento de voz que utiliza este vocabulario. Este valor debe coincidir con el modelo que especifique al llamar a la API de reconocimiento de voz.

gmt_create

str

La hora de creación.

gmt_modified

str

La hora de la última modificación.

status

str

El estado:

  • OK: Listo.

  • UNDEPLOYED: No disponible.

update_vocabulary() - Actualizar un vocabulario personalizado

Firma del método:

def update_vocabulary(
    self,
    vocabulary_id: str,
    vocabulary: List[dict]) -> None

Parámetros:

Parámetro

Tipo

Obligatorio

Descripción

vocabulary_id

str

Sí

El ID del vocabulario que se desea actualizar.

vocabulary

List[dict]

Sí

El nuevo vocabulario. Esto reemplaza por completo las entradas existentes.

Valor de retorno: None

delete_vocabulary() - Eliminar un vocabulario personalizado

Firma del método:

def delete_vocabulary(
    self,
    vocabulary_id: str) -> None

Parámetros:

Parámetro

Tipo

Obligatorio

Descripción

vocabulary_id

str

Sí

El ID del vocabulario que se desea eliminar.

Valor de retorno: None

Estructura del diccionario de palabras clave

Campos en cada diccionario de vocabulario:

Campo

Tipo

Obligatorio

Descripción

text

str

Sí

El texto de la entrada de vocabulario.

El idioma del texto debe ser compatible con el modelo seleccionado. Los idiomas admitidos varían según el modelo.

Utilice palabras reales en lugar de combinaciones arbitrarias de caracteres para mejorar la precisión del reconocimiento.

Longitud máxima: 15 caracteres para texto que incluye caracteres no ASCII, o 7 palabras separadas por espacios para texto solo ASCII.

weight

int

Sí

El peso de la entrada de vocabulario. Valor recomendado: 4.

Valores válidos: de 1 a 5.

Si la precisión del reconocimiento no mejora, aumente el peso. Un peso excesivamente alto puede reducir la precisión del reconocimiento de otras palabras.

lang

str

No

El código de idioma del audio que se va a reconocer. Cuando se establece, el sistema mejora el reconocimiento de las entradas de vocabulario en el idioma especificado. Si no puede determinar el idioma de antemano, deje este parámetro sin configurar. El modelo detecta el idioma automáticamente.

Valores válidos (varían según el modelo):

  • Paraformer:

    • zh: Chino

    • en: Inglés

    • ja: Japonés

    • yue: Cantonés

    • ko: Coreano

    • de: Alemán

    • fr: Francés

    • ru: Ruso

  • Fun-ASR:

    • zh: Chino

    • en: Inglés

    • ja: Japonés

Código de ejemplo

Todos los ejemplos leen la clave API desde una variable de entorno.

Crear un vocabulario personalizado

import dashscope
from dashscope.audio.asr import *
import os

# The API keys for the Singapore and Beijing regions are different. Get an API key: https://www.alibabacloud.com/help/model-studio/get-api-key
# If no environment variable is configured, replace the following line with your Model Studio API key: dashscope.api_key = "sk-xxx"
dashscope.api_key = os.environ.get('DASHSCOPE_API_KEY')

# The following configuration is for the Singapore region. Replace "{WorkspaceId}" with your actual workspace ID. The configuration varies by region.
dashscope.base_http_api_url = 'https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1'

prefix = 'testpfx'
target_model = "fun-asr"

my_vocabulary = [
    {"text": "Seediq Bale", "weight": 4}
]

# Create a custom vocabulary
service = VocabularyService()
vocabulary_id = service.create_vocabulary(
    prefix=prefix,
    target_model=target_model,
    vocabulary=my_vocabulary)

print(f"Vocabulary ID: {vocabulary_id}")

Listar vocabularios personalizados

import dashscope
from dashscope.audio.asr import *
import json
import os

# The API keys for the Singapore and Beijing regions are different. Get an API key: https://www.alibabacloud.com/help/model-studio/get-api-key
# If no environment variable is configured, replace the following line with your Model Studio API key: dashscope.api_key = "sk-xxx"
dashscope.api_key = os.environ.get('DASHSCOPE_API_KEY')

# The following configuration is for the Singapore region. Replace "{WorkspaceId}" with your actual workspace ID. The configuration varies by region.
dashscope.base_http_api_url = 'https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1'

service = VocabularyService()
vocabularies = service.list_vocabularies()
print(f"Vocabularies: {json.dumps(vocabularies)}")

Consultar un vocabulario personalizado

import dashscope
from dashscope.audio.asr import *
import json
import os

# The API keys for the Singapore and Beijing regions are different. Get an API key: https://www.alibabacloud.com/help/model-studio/get-api-key
# If no environment variable is configured, replace the following line with your Model Studio API key: dashscope.api_key = "sk-xxx"
dashscope.api_key = os.environ.get('DASHSCOPE_API_KEY')

# The following configuration is for the Singapore region. Replace "{WorkspaceId}" with your actual workspace ID. The configuration varies by region.
dashscope.base_http_api_url = 'https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1'

service = VocabularyService()
# Replace with the actual vocabulary ID when querying
vocabulary = service.query_vocabulary("vocab-testpfx-xxx")
print(f"Vocabulary: {json.dumps(vocabulary, ensure_ascii=False)}")

Actualizar un vocabulario personalizado

import dashscope
from dashscope.audio.asr import *
import os

# The API keys for the Singapore and Beijing regions are different. Get an API key: https://www.alibabacloud.com/help/model-studio/get-api-key
# If no environment variable is configured, replace the following line with your Model Studio API key: dashscope.api_key = "sk-xxx"
dashscope.api_key = os.environ.get('DASHSCOPE_API_KEY')

# The following configuration is for the Singapore region. Replace "{WorkspaceId}" with your actual workspace ID. The configuration varies by region.
dashscope.base_http_api_url = 'https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1'

service = VocabularyService()
my_vocabulary = [
    {"text": "Seediq Bale", "weight": 4, "lang": "en"}
]
# Replace with the actual vocabulary ID when updating
service.update_vocabulary("vocab-testpfx-xxx", my_vocabulary)

Eliminar un vocabulario personalizado

import dashscope
from dashscope.audio.asr import *
import os

# The API keys for the Singapore and Beijing regions are different. Get an API key: https://www.alibabacloud.com/help/model-studio/get-api-key
# If no environment variable is configured, replace the following line with your Model Studio API key: dashscope.api_key = "sk-xxx"
dashscope.api_key = os.environ.get('DASHSCOPE_API_KEY')

# The following configuration is for the Singapore region. Replace "{WorkspaceId}" with your actual workspace ID. The configuration varies by region.
dashscope.base_http_api_url = 'https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1'

service = VocabularyService()
# Replace with the actual vocabulary ID when deleting
service.delete_vocabulary("vocab-testpfx-xxxx")