OpenAIModelInfo

data class OpenAIModelInfo(val id: String, val modelType: ModelType, val contextWindow: Int?, val maxOutputTokens: Int?, val supportsTools: Boolean, val supportsStreaming: Boolean, val supportsVision: Boolean, val supportedTemperatures: List<Double>?, val supportsChatApi: Boolean, val supportsCompletionsApi: Boolean, val supportsResponsesApi: Boolean)

Static metadata about an OpenAI model.

Mirrors the ModelCapabilities interface in the other Mojentic ports — a lookup record describing the context window, feature flags, temperature restrictions, and per-API support a broker / chat session might consult before issuing a call. Update conservatively: stale entries are far better than wrong ones.

Constructors

Link copied to clipboard
constructor(id: String, modelType: ModelType, contextWindow: Int?, maxOutputTokens: Int?, supportsTools: Boolean, supportsStreaming: Boolean, supportsVision: Boolean, supportedTemperatures: List<Double>?, supportsChatApi: Boolean, supportsCompletionsApi: Boolean, supportsResponsesApi: Boolean)

Properties

Link copied to clipboard

maximum context window in tokens, or null if unknown

Link copied to clipboard
val id: String

the model identifier as used by the OpenAI API

Link copied to clipboard

maximum output tokens per response, or null if unknown

Link copied to clipboard

classification used to pick token-limit parameters

Link copied to clipboard

null means all temperatures are supported; an empty list means the temperature parameter is not allowed; a non-empty list enumerates the only permitted values

Link copied to clipboard

whether the model is reachable via the Chat Completions API

Link copied to clipboard

whether the model is reachable via the legacy Completions API

Link copied to clipboard

Whether this model is a reasoning model — equivalent to checking modelType against ModelType.REASONING. Reasoning models use max_completion_tokens instead of max_tokens and accept a reasoning_effort parameter.

Link copied to clipboard

whether the model is reachable via the Responses API

Link copied to clipboard

whether the model supports streaming responses

Link copied to clipboard

whether the model accepts tool / function definitions

Link copied to clipboard

whether the model accepts image input

Link copied to clipboard

The correct request parameter name for token limits, based on modelType.

Functions

Link copied to clipboard

Whether the given temperature value is permitted for this model.