Updated on 2025-09-15 GMT+08:00

Creating a Model

Function

This API is used to create a model. You can call this API to create a model by specifying the name, description, version name, version description, base model type, and OBS path of the model. The API then returns the model ID and version ID. This is an asynchronous API. It is used in conjunction with the ListModels API to query the model list. This API performs duplicate name verification and does not support creating models with identical names.

URI

POST /v1/workspaces/{workspace_id}/models

Table 1 Path Parameters

Parameter

Mandatory

Type

Description

workspace_id

Yes

String

Definition: Workspace ID. For how to obtain a workspace ID, see [Obtaining a Workspace ID] (dataartsfabric_03_0022.xml).

Constraints: N/A.

Range: 1 to 36 characters. Only letters, digits, and hyphens (-) are allowed.

Default Value: N/A.

Request Parameters

Table 2 Request header parameters

Parameter

Mandatory

Type

Description

X-Auth-Token

No

String

Definition: Tenant token. It is used for API calling authentication. For how to obtain a token, see [Authentication] (dataartsfabric_03_0005.xml).

Constraints: N/A.

Range: Up to 65,534 characters.

Default Value: N/A.

Table 3 Request body parameters

Parameter

Mandatory

Type

Description

name

Yes

String

Definition: Model name.

Constraints: N/A.

Range: 1 to 64 characters. Only letters, digits, hyphens (-), underscores (_), periods (.), and spaces are allowed.

Default Value: N/A.

description

No

String

Definition: Description.

Constraints: N/A.

Range: [0, 1024].

Default Value: N/A.

type

Yes

String

Definition: Model type.

Constraints: N/A.

Range: LLM_MODEL (large language model).

Default Value: N/A.

version

Yes

ModelVersionInput object

Definition: Details of each model version.

Constraints: N/A.

Table 4 ModelVersionInput

Parameter

Mandatory

Type

Description

name

Yes

String

Definition: Model version name.

Constraints: N/A.

Range: 1 to 64 characters. Only letters, digits, hyphens (-), underscores (_), periods (.), and spaces are allowed.

Default Value: N/A.

description

No

String

Definition: Description.

Constraints: N/A.

Range: N/A.

Default Value: N/A.

config

No

ModelConfig object

Definition: Model configuration.

Constraints: N/A.

Range: N/A.

Default Value: N/A.

Table 5 ModelConfig

Parameter

Mandatory

Type

Description

llm_model_config

No

LlmModelConfig object

Definition: LLM configuration.

Constraints: N/A.

Table 6 LlmModelConfig

Parameter

Mandatory

Type

Description

base_model_type

Yes

String

Definition: Base model type.

Constraints: N/A.

Range: For how to obtain a base model type, see [Listing Base Models] (ListBaseModels.xml).

Default Value: N/A.

model_path

No

String

Definition: Model file path.

Constraints: Only valid OBS paths are allowed.

Range: N/A.

Default Value: N/A.

local_model_path

No

String

Definition: Local model file path.

Constraints: Only local model file paths are allowed.

Range: N/A.

Default Value: N/A.

Response Parameters

Status code: 200

Table 7 Response body parameters

Parameter

Type

Description

id

String

Definition: Model ID. For how to obtain a model ID, see [Obtaining a Model ID] (dataartsfabric_03_0024.xml).

Constraints: N/A.

Range: 32 to 36 characters. Only letters, digits, and hyphens (-) are allowed.

Default Value: N/A.

version_id

String

Definition: Model version ID.

Constraints: This ID is automatically generated by the system and cannot be changed. If you enter an ID, the input does not take effect.

Range: 32 to 36 characters. Only letters, digits, and hyphens (-) are allowed.

Default Value: N/A.

Status code: 400

Table 8 Response body parameters

Parameter

Type

Description

error_code

String

Definition: Error code.

Constraints: N/A.

Range: 8 to 36 characters.

Default Value: N/A.

error_msg

String

Definition: Error message.

Constraints: N/A.

Range: 2 to 512 characters.

Default Value: N/A.

solution_msg

String

Definition: Solution description.

Constraints: N/A.

Range: 0 to 4,096 characters.

Default Value: N/A.

Status code: 401

Table 9 Response body parameters

Parameter

Type

Description

error_code

String

Definition: Error code.

Constraints: N/A.

Range: 8 to 36 characters.

Default Value: N/A.

error_msg

String

Definition: Error message.

Constraints: N/A.

Range: 2 to 512 characters.

Default Value: N/A.

solution_msg

String

Definition: Solution description.

Constraints: N/A.

Range: 0 to 4,096 characters.

Default Value: N/A.

Status code: 404

Table 10 Response body parameters

Parameter

Type

Description

error_code

String

Definition: Error code.

Constraints: N/A.

Range: 8 to 36 characters.

Default Value: N/A.

error_msg

String

Definition: Error message.

Constraints: N/A.

Range: 2 to 512 characters.

Default Value: N/A.

solution_msg

String

Definition: Solution description.

Constraints: N/A.

Range: 0 to 4,096 characters.

Default Value: N/A.

Status code: 408

Table 11 Response body parameters

Parameter

Type

Description

error_code

String

Definition: Error code.

Constraints: N/A.

Range: 8 to 36 characters.

Default Value: N/A.

error_msg

String

Definition: Error message.

Constraints: N/A.

Range: 2 to 512 characters.

Default Value: N/A.

solution_msg

String

Definition: Solution description.

Constraints: N/A.

Range: 0 to 4,096 characters.

Default Value: N/A.

Status code: 500

Table 12 Response body parameters

Parameter

Type

Description

error_code

String

Definition: Error code.

Constraints: N/A.

Range: 8 to 36 characters.

Default Value: N/A.

error_msg

String

Definition: Error message.

Constraints: N/A.

Range: 2 to 512 characters.

Default Value: N/A.

solution_msg

String

Definition: Solution description.

Constraints: N/A.

Range: 0 to 4,096 characters.

Default Value: N/A.

Example Requests

Create a model. The name is LLama3-8b, the description is description, and the type is LLM_MODEL. The following is an example request of version information.

POST https://{endpoint}/v1/workspaces/{workspace_id}/models

{
  "name" : "LLama3-8b",
  "description" : "description",
  "type" : "LLM_MODEL",
  "version" : {
    "name" : "name",
    "description" : "description",
    "config" : {
      "llm_model_config" : {
        "base_model_type" : "string",
        "model_path" : "obs://bucketname/objectdir/modelpath/"
      }
    }
  }
}

Example Responses

Status code: 200

A model is created.

{
  "id" : "ac8111bf-3601-4905-8ddd-b41d3e636a4e"
}

Status code: 400

BadRequest

{
  "error_code" : "common.01000001",
  "error_msg" : "failed to read http request, please check your input, code: 400, reason: Type mismatch., cause: TypeMismatchException"
}

Status code: 401

Unauthorized

{
  "error_code" : "APIG.1002",
  "error_msg" : "Incorrect token or token resolution failed"
}

Status code: 403

Forbidden

{
  "error" : {
    "code" : "403",
    "message" : "X-Auth-Token is invalid in the request",
    "title" : "Forbidden"
  },
  "error_code" : 403,
  "error_msg" : "X-Auth-Token is invalid in the request",
  "title" : "Forbidden"
}

Status code: 404

NotFound

{
  "error_code" : "common.01000001",
  "error_msg" : "response status exception, code: 404"
}

Status code: 408

Request Time-out

{
  "error_code" : "common.00000408",
  "error_msg" : "timeout exception occurred"
}

Status code: 500

InternalServerError

{
  "error_code" : "common.00000500",
  "error_msg" : "internal error"
}

Status Codes

Status Code

Description

200

A model is created.

400

BadRequest

401

Unauthorized

403

Forbidden

404

NotFound

408

Request Time-out

500

InternalServerError

Error Codes

See Error Codes.