AI Model

Lifecycle of AI Models.

Read more

create-model

[BETA] Create Model

POST /ai/model

Model files will be downloaded from Huggingface.

Name must be the exact name of the model on huggingface (ex: openai/gpt-oss-120b or ggml-org/gpt-oss-120b-GGUF).

If the model is under a license then you must provide a Huggingface access token for an account that signed the license agreement

Request body

Content-Type: application/json

PropertyTypeRequiredDescription
huggingface-tokenstringnoHuggingface Token
namestringnoModel name
Example
{
  "huggingface-token": "string",
  "name": "string"
}

Responses

Status: 200 - 200

Content-Type: application/json

PropertyTypeDescription
idstringOperation ID
messagestringOperation message
reasonstringOperation failure reason

Allowed values: incorrect, unknown, unavailable, forbidden, busy, fault, partial, not-found, interrupted, unsupported, conflict.
referenceobjectRelated resource reference schema details
statestringOperation status

Allowed values: failure, pending, success, timeout.
Example output
{
  "id": "string",
  "message": "string",
  "reason": "incorrect",
  "reference": {
    "command": "string",
    "id": "string",
    "link": "string"
  },
  "state": "failure"
}

SDK reference for create-model: golang | Python | Java

CLI: exo api create-model

get-model

[BETA] Get Model

GET /ai/model/{id}

Path parameters

NameInDescription
idpath

Responses

200: 200

Content-Type: application/json

PropertyTypeDescription
created-atstringCreation time
idstringModel ID
model-sizeintegerModel size (nullable)
namestringModel name
statusstringModel status

Allowed values: ready, creating, downloading, error.
updated-atstringUpdate time
Example output
{
  "created-at": "2024-01-01T12:00:00Z",
  "id": "string",
  "model-size": 0,
  "name": "string",
  "status": "ready",
  "updated-at": "2024-01-01T12:00:00Z"
}

404: 404

Content-Type: application/json

PropertyTypeDescription
errorstringError description
Example output
{
  "error": "string"
}

SDK reference for get-model: golang | Python | Java

CLI: exo api get-model

delete-model

[BETA] Delete Model

DELETE /ai/model/{id}

Path parameters

NameInDescription
idpath

Responses

200: 200

Content-Type: application/json

PropertyTypeDescription
idstringOperation ID
messagestringOperation message
reasonstringOperation failure reason

Allowed values: incorrect, unknown, unavailable, forbidden, busy, fault, partial, not-found, interrupted, unsupported, conflict.
referenceobjectRelated resource reference schema details
statestringOperation status

Allowed values: failure, pending, success, timeout.
Example output
{
  "id": "string",
  "message": "string",
  "reason": "incorrect",
  "reference": {
    "command": "string",
    "id": "string",
    "link": "string"
  },
  "state": "failure"
}

412: 412

Content-Type: application/json

PropertyTypeDescription
deploymentsarray[string]Deployments using models
Example output
{
  "deployments": [
    "string"
  ]
}

SDK reference for delete-model: golang | Python | Java

CLI: exo api delete-model


Other Operations

list-models

[BETA] List Models

GET /ai/model

Responses

Status: 200 - 200

Content-Type: application/json

PropertyTypeDescription
modelsarray[object]schema details
Example output
{
  "models": [
    {
      "created-at": "2024-01-01T12:00:00Z",
      "id": "string",
      "model-size": 0,
      "name": "string",
      "status": "ready",
      "updated-at": "2024-01-01T12:00:00Z"
    }
  ]
}

SDK reference for list-models: golang | Python | Java

CLI: exo api list-models

Last updated on