{ "$schema": "https://json-schema.org/draft/2020-12/schema", "$id": "#/components/schemas/assistantObject", "title": "Assistant", "type": "object", "description": "Represents an `assistant` that can call the model and use tools.", "properties": { "id": { "description": "The identifier, which can be referenced in API endpoints.", "type": "string" }, "object": { "description": "The object type, which is always `assistant`.", "type": "string", "enum": [ "assistant" ], "x-ms-enum": { "name": "AssistantObjectType", "modelAsString": true, "values": [ { "value": "assistant", "description": "The object type, which is always assistant" } ] } }, "created_at": { "description": "The Unix timestamp (in seconds) for when the assistant was created.", "type": "integer" }, "name": { "description": "The name of the assistant. The maximum length is 256 characters.\n", "type": "string", "maxLength": 256, "nullable": true }, "description": { "description": "The description of the assistant. The maximum length is 512 characters.\n", "type": "string", "maxLength": 512, "nullable": true }, "model": { "description": "ID of the model to use. You can use the [List models](/docs/api-reference/models/list) API to see all of your available models, or see our [Model overview](/docs/models/overview) for descriptions of them.\n", "type": "string" }, "instructions": { "description": "The system instructions that the assistant uses. The maximum length is 32768 characters.\n", "type": "string", "maxLength": 32768, "nullable": true }, "tools": { "description": "A list of tool enabled on the assistant. There can be a maximum of 128 tools per assistant. Tools can be of types `code_interpreter`, `retrieval`, or `function`.\n", "default": [], "type": "array", "maxItems": 128, "items": { "oneOf": [ { "$ref": "#/components/schemas/assistantToolsCode" }, { "$ref": "#/components/schemas/assistantToolsRetrieval" }, { "$ref": "#/components/schemas/assistantToolsFunction" } ] } }, "file_ids": { "description": "A list of [file](/docs/api-reference/files) IDs attached to this assistant. There can be a maximum of 20 files attached to the assistant. Files are ordered by their creation date in ascending order.\n", "default": [], "type": "array", "maxItems": 20, "items": { "type": "string" } }, "metadata": { "description": "Set of 16 key-value pairs that can be attached to an object. This can be useful for storing additional information about the object in a structured format. Keys can be a maximum of 64 characters long and values can be a maximum of 512 characters long.\n", "type": "object", "nullable": true } }, "required": [ "id", "object", "created_at", "name", "description", "model", "instructions", "tools", "file_ids", "metadata" ] }