> ## 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.

# Start a new LLM/VLM training job

> Submit a new training job with the specified configuration, training data, and metadata.



## OpenAPI

````yaml /openapi-specs/playground/llm-training.yaml POST /api/llm/train/
openapi: 3.1.0
info:
  title: LLM/VLM Training API
  description: API endpoints for training, monitoring, and managing LLM/VLM models
  version: 1.0.0
servers:
  - url: https://training-suite.uat-infer.shakticloud.ai
    description: Training Suite Production Server
security:
  - BearerAuth: []
tags:
  - name: Training
    description: LLM/VLM model training endpoints
paths:
  /api/llm/train/:
    post:
      tags:
        - Training
      summary: Start a new LLM/VLM training job
      description: >-
        Submit a new training job with the specified configuration, training
        data, and metadata.
      operationId: startTrainingJob
      parameters:
        - in: header
          name: Authorization
          schema:
            type: string
          required: true
          description: Bearer token for authentication and authorization.
          example: Bearer <ACCESS_TOKEN>
      requestBody:
        required: true
        content:
          multipart/form-data:
            schema:
              type: object
              properties:
                training_config_json:
                  type: string
                  description: >-
                    JSON-formatted string containing the model training
                    configuration.
                  example: |
                    {
                      "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?"
                      }
                    }
                experiment_name:
                  type: string
                  description: Name assigned to the training experiment.
                  example: my_first_vlm_job
                csv_file:
                  type: string
                  format: binary
                  description: CSV or JSONL file containing the training dataset.
                org:
                  type: string
                  description: Organization ID associated with the training job.
                  example: 0bf00b43-430a-4ca3-a8b3-b13cc8dc6d4d
              required:
                - training_config_json
                - experiment_name
                - csv_file
                - org
      responses:
        '200':
          description: Training job submitted successfully.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TrainingJobResponse'
components:
  schemas:
    TrainingJobResponse:
      type: object
      properties:
        request_id:
          type: string
          description: Unique identifier for the training job request
        status:
          type: string
          description: Initial status of the training job
        message:
          type: string
          description: Additional information about the job submission
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: JWT token for authentication

````