{ "$schema": "https://json-schema.org/draft/2020-12/schema", "$id": "https://api-evangelist.com/schemas/hyperbolic-ai/hyperbolic-chat-completion-schema.json", "title": "Hyperbolic Chat Completion", "description": "Schema for the Hyperbolic Chat Completions API. Covers the OpenAI-compatible request body and response returned by POST /v1/chat/completions on https://api.hyperbolic.xyz/v1.", "type": "object", "definitions": { "ChatCompletionRequest": { "type": "object", "description": "Request body for creating a chat completion.", "required": ["model", "messages"], "properties": { "model": { "type": "string", "description": "Model identifier — see GET /v1/models. Examples: meta-llama/Meta-Llama-3.1-405B-Instruct, deepseek-ai/DeepSeek-V3, deepseek-ai/DeepSeek-R1, Qwen/Qwen2.5-72B-Instruct." }, "messages": { "type": "array", "minItems": 1, "items": { "$ref": "#/definitions/ChatMessage" } }, "max_tokens": { "type": "integer", "minimum": 1 }, "temperature": { "type": "number", "minimum": 0, "maximum": 2, "default": 1 }, "top_p": { "type": "number", "minimum": 0, "maximum": 1, "default": 1 }, "top_k": { "type": "integer", "minimum": 0 }, "n": { "type": "integer", "minimum": 1, "default": 1 }, "stream": { "type": "boolean", "default": false }, "stop": { "oneOf": [ { "type": "string" }, { "type": "array", "items": { "type": "string" } } ] }, "presence_penalty": { "type": "number", "minimum": -2, "maximum": 2 }, "frequency_penalty": { "type": "number", "minimum": -2, "maximum": 2 }, "seed": { "type": "integer" }, "response_format": { "type": "object", "properties": { "type": { "type": "string", "enum": ["text", "json_object", "json_schema"] } } }, "tools": { "type": "array", "items": { "$ref": "#/definitions/Tool" } }, "tool_choice": { "oneOf": [ { "type": "string", "enum": ["none", "auto", "required"] }, { "type": "object" } ] }, "user": { "type": "string" } } }, "ChatMessage": { "type": "object", "required": ["role", "content"], "properties": { "role": { "type": "string", "enum": ["system", "user", "assistant", "tool"] }, "content": { "oneOf": [ { "type": "string" }, { "type": "array", "items": { "$ref": "#/definitions/ContentPart" } } ] }, "name": { "type": "string" }, "tool_call_id": { "type": "string" }, "tool_calls": { "type": "array", "items": { "$ref": "#/definitions/ToolCall" } } } }, "ContentPart": { "type": "object", "required": ["type"], "properties": { "type": { "type": "string", "enum": ["text", "image_url"] }, "text": { "type": "string" }, "image_url": { "type": "object", "properties": { "url": { "type": "string" }, "detail": { "type": "string", "enum": ["auto", "low", "high"] } } } } }, "Tool": { "type": "object", "required": ["type", "function"], "properties": { "type": { "type": "string", "enum": ["function"] }, "function": { "type": "object", "required": ["name"], "properties": { "name": { "type": "string" }, "description": { "type": "string" }, "parameters": { "type": "object" } } } } }, "ToolCall": { "type": "object", "required": ["id", "type", "function"], "properties": { "id": { "type": "string" }, "type": { "type": "string", "enum": ["function"] }, "function": { "type": "object", "properties": { "name": { "type": "string" }, "arguments": { "type": "string" } } } } }, "ChatCompletionResponse": { "type": "object", "required": ["id", "object", "created", "model", "choices"], "properties": { "id": { "type": "string" }, "object": { "type": "string", "enum": ["chat.completion"] }, "created": { "type": "integer" }, "model": { "type": "string" }, "choices": { "type": "array", "items": { "$ref": "#/definitions/ChatCompletionChoice" } }, "usage": { "$ref": "#/definitions/Usage" }, "system_fingerprint": { "type": "string" } } }, "ChatCompletionChoice": { "type": "object", "properties": { "index": { "type": "integer" }, "message": { "$ref": "#/definitions/ChatMessage" }, "finish_reason": { "type": "string", "enum": ["stop", "length", "tool_calls", "content_filter"] } } }, "Usage": { "type": "object", "properties": { "prompt_tokens": { "type": "integer" }, "completion_tokens": { "type": "integer" }, "total_tokens": { "type": "integer" } } } }, "oneOf": [ { "$ref": "#/definitions/ChatCompletionRequest" }, { "$ref": "#/definitions/ChatCompletionResponse" } ] }