Qubrid AI · Schema

Qubrid AI Inference Entities

Schema definitions for Qubrid AI Inference API request and response payloads, including chat completions, model listings, and embeddings.

Artificial IntelligenceCloud ComputingGPUInferenceLarge Language ModelsMachine-LearningNVIDIAServerless
View JSON Schema on GitHub

JSON Schema

qubrid-ai-inference-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://platform.qubrid.com/schemas/qubrid-ai/inference.json",
  "title": "Qubrid AI Inference Entities",
  "description": "Schema definitions for Qubrid AI Inference API request and response payloads, including chat completions, model listings, and embeddings.",
  "type": "object",
  "$defs": {
    "ChatCompletionRequest": {
      "type": "object",
      "title": "Chat Completion Request",
      "description": "A request to generate a chat completion using an open-source model on the Qubrid AI platform.",
      "required": ["model", "messages"],
      "properties": {
        "model": {
          "type": "string",
          "description": "The identifier of the model to use for generating the chat completion, such as deepseek-ai/DeepSeek-R1-Distill-Llama-70B or Qwen/Qwen3.5-27B."
        },
        "messages": {
          "type": "array",
          "description": "A list of messages comprising the conversation so far.",
          "minItems": 1,
          "items": {
            "$ref": "#/$defs/ChatMessage"
          }
        },
        "temperature": {
          "type": "number",
          "description": "Sampling temperature between 0 and 2 controlling output randomness.",
          "minimum": 0,
          "maximum": 2,
          "default": 1.0
        },
        "top_p": {
          "type": "number",
          "description": "Nucleus sampling parameter controlling token probability mass considered.",
          "minimum": 0,
          "maximum": 1,
          "default": 1.0
        },
        "n": {
          "type": "integer",
          "description": "Number of chat completion choices to generate.",
          "minimum": 1,
          "default": 1
        },
        "max_tokens": {
          "type": "integer",
          "description": "Maximum number of tokens to generate in the completion.",
          "minimum": 1
        },
        "stream": {
          "type": "boolean",
          "description": "Whether to stream partial message deltas as server-sent events.",
          "default": false
        },
        "stop": {
          "oneOf": [
            { "type": "string" },
            {
              "type": "array",
              "items": { "type": "string" },
              "maxItems": 4
            }
          ],
          "description": "Up to 4 sequences where the API will stop generating further tokens."
        },
        "presence_penalty": {
          "type": "number",
          "description": "Penalty for new tokens based on presence in text so far.",
          "minimum": -2,
          "maximum": 2,
          "default": 0
        },
        "frequency_penalty": {
          "type": "number",
          "description": "Penalty for new tokens based on frequency in text so far.",
          "minimum": -2,
          "maximum": 2,
          "default": 0
        }
      }
    },
    "ChatMessage": {
      "type": "object",
      "title": "Chat Message",
      "description": "A single message in a chat conversation with a role and content.",
      "required": ["role", "content"],
      "properties": {
        "role": {
          "type": "string",
          "enum": ["system", "user", "assistant"],
          "description": "The role of the message author."
        },
        "content": {
          "oneOf": [
            { "type": "string" },
            {
              "type": "array",
              "items": { "$ref": "#/$defs/ContentPart" }
            }
          ],
          "description": "The content of the message, either a text string or an array of multimodal content parts."
        }
      }
    },
    "ContentPart": {
      "type": "object",
      "title": "Content Part",
      "description": "A content part for multimodal messages supporting text and image inputs.",
      "required": ["type"],
      "properties": {
        "type": {
          "type": "string",
          "enum": ["text", "image_url"],
          "description": "The type of content part."
        },
        "text": {
          "type": "string",
          "description": "The text content when type is text."
        },
        "image_url": {
          "type": "object",
          "description": "The image URL object when type is image_url.",
          "properties": {
            "url": {
              "type": "string",
              "format": "uri",
              "description": "The URL of the image."
            }
          }
        }
      }
    },
    "ChatCompletionResponse": {
      "type": "object",
      "title": "Chat Completion Response",
      "description": "The response from a chat completion request containing generated message choices and usage statistics.",
      "properties": {
        "id": {
          "type": "string",
          "description": "A unique identifier for the chat completion."
        },
        "object": {
          "type": "string",
          "const": "chat.completion",
          "description": "The object type, always chat.completion."
        },
        "created": {
          "type": "integer",
          "description": "Unix timestamp in seconds of when the completion was created."
        },
        "model": {
          "type": "string",
          "description": "The model used for the chat completion."
        },
        "choices": {
          "type": "array",
          "description": "A list of chat completion choices.",
          "items": { "$ref": "#/$defs/ChatCompletionChoice" }
        },
        "usage": {
          "$ref": "#/$defs/Usage"
        }
      }
    },
    "ChatCompletionChoice": {
      "type": "object",
      "title": "Chat Completion Choice",
      "description": "A single generated completion choice with message content and finish reason.",
      "properties": {
        "index": {
          "type": "integer",
          "description": "The index of the choice in the list."
        },
        "message": {
          "$ref": "#/$defs/ChatMessage"
        },
        "finish_reason": {
          "type": "string",
          "enum": ["stop", "length", "content_filter"],
          "description": "The reason the model stopped generating tokens."
        }
      }
    },
    "Usage": {
      "type": "object",
      "title": "Token Usage",
      "description": "Token usage statistics for an API request.",
      "properties": {
        "prompt_tokens": {
          "type": "integer",
          "description": "Number of tokens in the prompt."
        },
        "completion_tokens": {
          "type": "integer",
          "description": "Number of tokens in the generated completion."
        },
        "total_tokens": {
          "type": "integer",
          "description": "Total tokens used in the request."
        }
      }
    },
    "Model": {
      "type": "object",
      "title": "Model",
      "description": "An AI model available for inference on the Qubrid AI platform.",
      "properties": {
        "id": {
          "type": "string",
          "description": "The unique identifier of the model."
        },
        "object": {
          "type": "string",
          "const": "model",
          "description": "The object type, always model."
        },
        "created": {
          "type": "integer",
          "description": "Unix timestamp of when the model was registered."
        },
        "owned_by": {
          "type": "string",
          "description": "The organization that owns or published the model."
        }
      }
    }
  }
}