Skip to main content

Importación de modelos

Importe archivos de modelos ajustados desde OSS a Model Studio. La API permite crear, consultar, listar y eliminar tareas de importación.

Visión general

Importe archivos de modelos ajustados desde OSS a Model Studio y luego impleméntelos como servicios invocables mediante la API de creación de implementación. Se admiten dos tipos de modelos: ajuste fino de parámetros completos (full) y ajuste fino LoRA (lora). Flujo de trabajo: crear una tarea de importación → sondear el estado de la tarea → implementar el modelo después de que la importación se realice correctamente. Utilice las API de lista y eliminación para administrar las tareas completadas.
La API de importación de modelos actualmente solo está disponible en la región Singapore. Si utiliza otra región, use la consola de Model Studio en esa región para importar modelos.

Requisitos previos

  • Ha configurado su clave de API de Model Studio. Para obtener más información, consulte Obtener una clave de API.
  • Ha creado un bucket de OSS y ha autorizado a Model Studio para acceder a OSS. Para obtener más información, consulte los requisitos previos en Model import.
  • Los archivos del modelo se han cargado en el bucket de OSS y cumplen con Importación de modelos.

Encabezados de solicitud comunes

Todas las operaciones requieren estos encabezados HTTP:

Encabezado

Descripción

Authorization

Bearer ${DASHSCOPE_API_KEY}. Para obtener más información sobre cómo conseguir una clave de API, consulte Obtain an API key.

Content-Type

application/json

Objeto de modelo personalizado

Un objeto de modelo personalizado representa una tarea de importación. Cree uno con la API Create an import task, recupérelo con Query import task details o List import tasks, e implemente el modelo con la API Create a deployment.

Campos del objeto

Parámetro

Tipo

Descripción

request_id

String

El ID de la solicitud.

output.job_id

String

ID de tarea de importación. Úselo para consultar o eliminar la tarea.

output.model_name

String

Identificador de modelo generado por el sistema: nombre del modelo base + sufijo de marca de tiempo.

output.display_name

String

El nombre para mostrar del modelo importado.

output.source

String

Origen de importación. Devuelve OSS en mayúsculas.

output.weight_type

String

El tipo de ajuste fino.

output.storage_info

Object

Información de almacenamiento del origen de importación, incluyendo bucket_name y object_key.

output.status

String

Estado de la tarea. Valores válidos: Estado de la tarea.

output.gmt_create

String

La hora de creación de la tarea en formato ISO 8601. Ejemplo: 2024-01-01T12:00:00.000+00:00.

Estado de la tarea

Estados de la tarea de importación:

Status

Descripción

PENDING

Enviado, en espera de procesamiento.

RUNNING

Validando e importando archivos de modelo.

SUCCESSED

Importación exitosa. Despliegue el modelo mediante la API Crear un despliegue.

FAILED

Error en la importación. Consulte los detalles de la tarea para ver el error_code.

Crear una tarea de importación

Enviar una tarea de importación de modelo. El sistema valida la estructura y seguridad de los archivos del modelo antes de la importación.

Endpoint

POST https://dashscope-intl.aliyuncs.com/api/v1/custom_models/import

Ejemplo de solicitud

curl -X POST "https://dashscope-intl.aliyuncs.com/api/v1/custom_models/import" \
    --header "Authorization: Bearer $DASHSCOPE_API_KEY" \
    --header "Content-Type: application/json" \
    --data '{
        "model_name": "qwen3-32b",
        "display_name": "My LoRA fine-tuned model",
        "source": "oss",
        "weight_type": "lora",
        "storage_info": {
            "bucket_name": "my-model-bucket",
            "object_key": "models/qwen3-32b-lora/"
        }
    }'

Parámetros de solicitud

Parámetro

Tipo

Posición

Obligatorio

Descripción

model_name

String

body

Sí

Nombre del modelo base. Corresponde a Base Model en la consola. Para ver los modelos admitidos, consulte Model import. Ejemplo: qwen3-32b.

display_name

String

body

No

Nombre para mostrar del modelo importado. Corresponde a Model Name en la consola. Máximo de 50 caracteres. El valor predeterminado es el nombre del modelo base.

source

String

body

Sí

Origen de importación. Corresponde a Import Source en la consola. Solo se admite oss. La respuesta devuelve OSS en mayúsculas.

weight_type

String

body

Sí

Tipo de ajuste fino. full: modelo ajustado con parámetros completos. lora: modelo ajustado con LoRA.

storage_info

Object

body

Sí

Información de almacenamiento del origen de importación.

storage_info.bucket_name

String

body

Sí

Nombre del bucket de OSS. Corresponde a Bucket en la consola.

storage_info.object_key

String

body

Sí

Prefijo de ruta OSS de los archivos del modelo. Debe terminar con /. Ejemplo: models/qwen3-32b-lora/.

Ejemplo de respuesta

{
    "request_id": "6c6b****-3fea-****-bc26-c9e2********",
    "output": {
        "job_id": "937b****-2a4f-****-8abe-c2fa********",
        "model_name": "qwen3-32b-offline-20240101-abc1",
        "display_name": "My LoRA fine-tuned model",
        "source": "OSS",
        "weight_type": "lora",
        "storage_info": {
            "bucket_name": "my-model-bucket",
            "object_key": "models/qwen3-32b-lora/"
        },
        "status": "PENDING",
        "gmt_create": "2024-01-01T12:00:00.000+00:00"
    }
}

Parámetros de respuesta

Parámetro

Tipo

Descripción

request_id

String

El ID de la solicitud.

output.job_id

String

ID de la tarea de importación. Úselo con las API Query import task details, List import tasks y Delete an import task.

output.model_name

String

Identificador de modelo generado por el sistema: nombre del modelo base + sufijo de marca de tiempo.

output.display_name

String

El nombre para mostrar del modelo importado.

output.source

String

Origen de importación. Devuelve OSS en mayúsculas.

output.weight_type

String

El tipo de ajuste fino.

output.storage_info

Object

Información de almacenamiento del origen de importación, incluyendo bucket_name y object_key.

output.status

String

Estado de la tarea. Valores válidos: Estado de la tarea.

output.gmt_create

String

La hora de creación de la tarea en formato ISO 8601. Ejemplo: 2024-01-01T12:00:00.000+00:00.

Consultar detalles de la tarea de importación

Consultar el estado y los detalles de una tarea de importación.

Endpoint

GET https://dashscope-intl.aliyuncs.com/api/v1/custom_models/import/{job_id}

Ejemplo de solicitud

curl "https://dashscope-intl.aliyuncs.com/api/v1/custom_models/import/937b****-2a4f-****-8abe-c2fa********" \
    --header "Authorization: Bearer $DASHSCOPE_API_KEY" \
    --header "Content-Type: application/json"

Parámetros de solicitud

Parámetro

Tipo

Posición

Obligatorio

Descripción

job_id

String

path

Sí

ID de la tarea de importación. Obténgalo mediante la API Create an import task o List import tasks.

Ejemplo de respuesta

{
    "request_id": "ca21****-b91b-****-bd35-c41c********",
    "output": {
        "job_id": "937b****-2a4f-****-8abe-c2fa********",
        "model_name": "qwen3-32b-offline-20240101-abc1",
        "display_name": "My LoRA fine-tuned model",
        "source": "OSS",
        "storage_info": {
            "bucket_name": "my-model-bucket",
            "object_key": "models/qwen3-32b-lora/"
        },
        "status": "RUNNING",
        "gmt_create": "2024-01-01T12:00:00.000+00:00"
    }
}

Parámetros de respuesta

Los mismos parámetros de respuesta que Create an import task, excepto que se omite weight_type. Las tareas fallidas incluyen un campo adicional error_code.

Listar tareas de importación

Listar tareas de importación en el espacio de trabajo actual con paginación.

Endpoint

GET https://dashscope-intl.aliyuncs.com/api/v1/custom_models/import

Ejemplo de solicitud

curl "https://dashscope-intl.aliyuncs.com/api/v1/custom_models/import?page_no=1&page_size=10" \
    --header "Authorization: Bearer $DASHSCOPE_API_KEY" \
    --header "Content-Type: application/json"
Filtrar por estado:
curl "https://dashscope-intl.aliyuncs.com/api/v1/custom_models/import?page_no=1&page_size=10&status=SUCCESSED" \
    --header "Authorization: Bearer $DASHSCOPE_API_KEY" \
    --header "Content-Type: application/json"

Parámetros de solicitud

Parámetro

Tipo

Posición

Obligatorio

Descripción

page_no

Integer

query

No

Número de página. Valor predeterminado: 1.

page_size

Integer

query

No

Entradas por página. Valor predeterminado: 10. Máximo: 100.

status

String

query

No

Filtrar por estado de la tarea. Valores válidos: Estado de la tarea.

model_name

String

query

No

Filtrar por nombre de modelo (coincidencia exacta en el nombre generado por el sistema).

Ejemplo de respuesta

{
    "request_id": "ca21****-b91b-****-bd35-c41c********",
    "output": {
        "total": 2,
        "page_no": 1,
        "page_size": 10,
        "list": [
            {
                "job_id": "937b****-2a4f-****-8abe-c2fa********",
                "model_name": "qwen3-32b-offline-20240101-abc1",
                "display_name": "My LoRA fine-tuned model",
                "status": "SUCCESSED",
                "source": "OSS",
                "storage_info": {
                    "bucket_name": "my-model-bucket",
                    "object_key": "models/qwen3-32b-lora/"
                },
                "gmt_create": "2024-01-01T12:00:00.000+00:00"
            },
            {
                "job_id": "edb0****-39ac-****-9859-8b1e********",
                "model_name": "qwen3-32b-offline-20240102-xyz4",
                "display_name": "My full-parameter fine-tuned model",
                "status": "FAILED",
                "source": "OSS",
                "storage_info": {
                    "bucket_name": "my-model-bucket",
                    "object_key": "models/qwen3-32b-full/"
                },
                "error_code": "Failed to retrieve files from OSS. Please check the files in OSS.",
                "gmt_create": "2024-01-02T09:00:00.000+00:00"
            }
        ]
    }
}

Parámetros de respuesta

Parámetro

Tipo

Descripción

request_id

String

El ID de la solicitud.

output.total

Integer

Número total de tareas coincidentes.

output.page_no

Integer

El número de página actual.

output.page_size

Integer

El número de entradas por página.

output.list

Array

Lista de tareas de importación. Cada elemento tiene los mismos campos que la respuesta de Create an import task, excepto que se omite weight_type. Las tareas fallidas incluyen un campo adicional error_code.

Eliminar una tarea de importación

Elimina una tarea de importación y sus archivos de modelo asociados. Solo se pueden eliminar las tareas SUCCESSED o FAILED. Devuelve los detalles de la tarea eliminada.

Endpoint

DELETE https://dashscope-intl.aliyuncs.com/api/v1/custom_models/import/{job_id}

Ejemplo de solicitud

curl -X DELETE "https://dashscope-intl.aliyuncs.com/api/v1/custom_models/import/937b****-2a4f-****-8abe-c2fa********" \
    --header "Authorization: Bearer $DASHSCOPE_API_KEY" \
    --header "Content-Type: application/json"

Parámetros de solicitud

Parámetro

Tipo

Posición

Obligatorio

Descripción

job_id

String

path

Sí

ID de la tarea de importación. Obténgalo mediante la API Create an import task o List import tasks.

Ejemplo de respuesta

{
    "request_id": "e22b****-b20a-****-bf23-9b53********",
    "output": {
        "job_id": "937b****-2a4f-****-8abe-c2fa********",
        "model_name": "qwen3-32b-offline-20240101-abc1",
        "display_name": "My LoRA fine-tuned model",
        "source": "OSS",
        "storage_info": {
            "bucket_name": "my-model-bucket",
            "object_key": "models/qwen3-32b-lora/"
        },
        "status": "SUCCESSED",
        "gmt_create": "2024-01-01T12:00:00.000+00:00"
    }
}

Parámetros de respuesta

Parámetro

Tipo

Descripción

request_id

String

El ID de la solicitud.

output

Object

Detalles de la tarea eliminada. Los mismos campos que la respuesta de Create an import task, excepto que se omite weight_type.

Respuestas de error

Formato de respuesta de error:
{
    "request_id": "ca21****-b91b-****-bd35-c41c********",
    "code": "OperationDenied",
    "message": "The import job is currently running and cannot be deleted."
}

Códigos de error

Código de error

Descripción

InvalidParameter

Parámetro de solicitud no válido: falta un campo obligatorio, formato incorrecto o valor no válido.

NotFound

Recurso no encontrado: job_id no válido, acceso insuficiente o modelo base no compatible.

OperationDenied

Operación denegada. Ejemplo: eliminar una tarea RUNNING.

InvalidApiKey

Clave de API no válida o faltante.

InternalError

Error interno del sistema. Inténtelo de nuevo más tarde.