Skip to main content
POST
/
api
/
llm
/
train
Start a new LLM/VLM training job
curl --request POST \
  --url https://training-suite.uat-infer.shakticloud.ai/api/llm/train/ \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: multipart/form-data' \
  --form 'training_config_json={
  "model_type": "vlm",
  "base_model": "AIDC-AI/Ovis1.6-Llama3.2-3B",
  "adapter": {
    "lora_r": 16
  },
  "quantization": {
    "bits": 4,
    "llm_int8_threshold": 6,
    "llm_int8_has_fp16_weight": false,
    "bnb_4bit_compute_dtype": "float16",
    "bnb_4bit_use_double_quant": true,
    "bnb_4bit_quant_type": "nf4"
  },
  "trainer": {
    "type": "finetune",
    "learning_rate": 0.0001,
    "batch_size": 1,
    "epochs": 1,
    "gradient_accumulation_steps": 16,
    "logging_steps": 1
  },
  "image_column": "url",
  "output_column": "caption",
  "prompt": {
    "template": "Could you please interpret the image and write a detailed caption?"
  }
}
' \
  --form experiment_name=my_first_vlm_job \
  --form csv_file='@example-file' \
  --form org=0bf00b43-430a-4ca3-a8b3-b13cc8dc6d4d
{
  "request_id": "<string>",
  "status": "<string>",
  "message": "<string>"
}

Documentation Index

Fetch the complete documentation index at: https://docs.shaktistudio.ai/llms.txt

Use this file to discover all available pages before exploring further.

Authorizations

Authorization
string
header
required

JWT token for authentication

Headers

Authorization
string
required

Bearer token for authentication and authorization.

Body

multipart/form-data
training_config_json
string
required

JSON-formatted string containing the model training configuration.

Example:

"{\n \"model_type\": \"vlm\",\n \"base_model\": \"AIDC-AI/Ovis1.6-Llama3.2-3B\",\n \"adapter\": {\n \"lora_r\": 16\n },\n \"quantization\": {\n \"bits\": 4,\n \"llm_int8_threshold\": 6,\n \"llm_int8_has_fp16_weight\": false,\n \"bnb_4bit_compute_dtype\": \"float16\",\n \"bnb_4bit_use_double_quant\": true,\n \"bnb_4bit_quant_type\": \"nf4\"\n },\n \"trainer\": {\n \"type\": \"finetune\",\n \"learning_rate\": 0.0001,\n \"batch_size\": 1,\n \"epochs\": 1,\n \"gradient_accumulation_steps\": 16,\n \"logging_steps\": 1\n },\n \"image_column\": \"url\",\n \"output_column\": \"caption\",\n \"prompt\": {\n \"template\": \"Could you please interpret the image and write a detailed caption?\"\n }\n}\n"

experiment_name
string
required

Name assigned to the training experiment.

Example:

"my_first_vlm_job"

csv_file
file
required

CSV or JSONL file containing the training dataset.

org
string
required

Organization ID associated with the training job.

Example:

"0bf00b43-430a-4ca3-a8b3-b13cc8dc6d4d"

Response

200 - application/json

Training job submitted successfully.

request_id
string

Unique identifier for the training job request

status
string

Initial status of the training job

message
string

Additional information about the job submission