{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "#/components/schemas/ChatCompletion",
  "title": "ChatCompletion",
  "description": "Represents a chat completion response returned by model, based on the provided\ninput.",
  "properties": {
    "id": {
      "type": "string",
      "description": "A unique identifier for the chat completion."
    },
    "choices": {
      "items": {
        "$ref": "#/components/schemas/ChatCompletion.Choice"
      },
      "type": "array",
      "description": "A list of chat completion choices. Can be more than one if `n` is greater\nthan 1."
    },
    "created": {
      "type": "number",
      "format": "double",
      "description": "The Unix timestamp (in seconds) of when the chat completion was created."
    },
    "model": {
      "type": "string",
      "description": "The model used for the chat completion."
    },
    "object": {
      "type": "string",
      "enum": [
        "chat.completion"
      ],
      "nullable": false,
      "description": "The object type, which is always `chat.completion`."
    },
    "service_tier": {
      "type": "string",
      "enum": [
        "auto",
        "default",
        "flex",
        "scale",
        "priority",
        null
      ],
      "nullable": true,
      "description": "Specifies the processing type used for serving the request.\n\n- If set to 'auto', then the request will be processed with the service tier\n  configured in the Project settings. Unless otherwise configured, the Project\n  will use 'default'.\n- If set to 'default', then the request will be processed with the standard\n  pricing and performance for the selected model.\n- If set to '[flex](https://platform.openai.com/docs/guides/flex-processing)' or\n  'priority', then the request will be processed with the corresponding service\n  tier. [Contact sales](https://openai.com/contact-sales) to learn more about\n  Priority processing.\n- When not set, the default behavior is 'auto'.\n\nWhen the `service_tier` parameter is set, the response body will include the\n`service_tier` value based on the processing mode actually used to serve the\nrequest. This response value may be different from the value set in the\nparameter."
    },
    "system_fingerprint": {
      "type": "string",
      "description": "This fingerprint represents the backend configuration that the model runs with.\n\nCan be used in conjunction with the `seed` request parameter to understand when\nbackend changes have been made that might impact determinism."
    },
    "usage": {
      "$ref": "#/components/schemas/CompletionUsage",
      "description": "Usage statistics for the completion request."
    }
  },
  "required": [
    "id",
    "choices",
    "created",
    "model",
    "object"
  ],
  "type": "object",
  "additionalProperties": false
}