diff --git a/models/google/gemma-4-26b-a4b-it.yaml b/models/google/gemma-4-26b-a4b-it.yaml index 16c46fe..1fb64f1 100644 --- a/models/google/gemma-4-26b-a4b-it.yaml +++ b/models/google/gemma-4-26b-a4b-it.yaml @@ -50,6 +50,14 @@ params: description: Number of thinking tokens Gemini should use; -1 uses dynamic thinking, 0 disables thinking, and fixed budgets start at 512 tokens. default: 0 group: reasoning + - path: generationConfig.thinkingConfig.thinkingLevel + type: enum + label: Thinking level + description: Toggles Gemma 4 reasoning; high enables thinking and minimal disables it. + values: + - minimal + - high + group: reasoning - path: generationConfig.thinkingConfig.includeThoughts type: boolean label: Include thoughts diff --git a/models/google/gemma-4-31b-it.yaml b/models/google/gemma-4-31b-it.yaml index 28bee33..1e323c5 100644 --- a/models/google/gemma-4-31b-it.yaml +++ b/models/google/gemma-4-31b-it.yaml @@ -50,6 +50,14 @@ params: description: Number of thinking tokens Gemini should use; -1 uses dynamic thinking, 0 disables thinking, and fixed budgets start at 512 tokens. default: 0 group: reasoning + - path: generationConfig.thinkingConfig.thinkingLevel + type: enum + label: Thinking level + description: Toggles Gemma 4 reasoning; high enables thinking and minimal disables it. + values: + - minimal + - high + group: reasoning - path: generationConfig.thinkingConfig.includeThoughts type: boolean label: Include thoughts diff --git a/models/openai/gpt-oss-120b.yaml b/models/openai/gpt-oss-120b.yaml new file mode 100644 index 0000000..e680b12 --- /dev/null +++ b/models/openai/gpt-oss-120b.yaml @@ -0,0 +1,56 @@ +# yaml-language-server: $schema=https://modelparams.dev/api/v1/schema.json +provider: openai +authType: api_key +model: gpt-oss-120b +params: + - path: max_completion_tokens + type: integer + label: Max tokens + description: Maximum number of output tokens the model may generate. + range: + min: 1 + max: 131072 + group: generation_length + - path: temperature + type: number + label: Temperature + description: Controls randomness. Lower values make outputs more focused; higher values make them more varied. OpenAI recommends sampling at 1.0. + default: 1 + group: sampling + - path: top_p + type: number + label: Top P + description: Controls nucleus sampling by limiting generation to tokens within the selected cumulative probability. OpenAI recommends sampling at 1.0. + default: 1 + range: + min: 0 + max: 1 + group: sampling + - path: reasoning_effort + type: enum + label: Reasoning effort + description: Controls how much reasoning the model should perform before producing an answer. + default: medium + values: + - low + - medium + - high + group: reasoning + - path: response_format.type + type: enum + label: Response format + description: Controls whether the model returns normal text or a schema-constrained JSON object. + default: text + values: + - text + - json_schema + group: output_format + - path: tool_choice + type: enum + label: Tool choice + description: Controls whether the model may call tools, must call one, or skips tool calls. + values: + - auto + - none + - required + group: tooling diff --git a/models/openai/gpt-oss-20b.yaml b/models/openai/gpt-oss-20b.yaml new file mode 100644 index 0000000..2f9820c --- /dev/null +++ b/models/openai/gpt-oss-20b.yaml @@ -0,0 +1,56 @@ +# yaml-language-server: $schema=https://modelparams.dev/api/v1/schema.json +provider: openai +authType: api_key +model: gpt-oss-20b +params: + - path: max_completion_tokens + type: integer + label: Max tokens + description: Maximum number of output tokens the model may generate. + range: + min: 1 + max: 131072 + group: generation_length + - path: temperature + type: number + label: Temperature + description: Controls randomness. Lower values make outputs more focused; higher values make them more varied. OpenAI recommends sampling at 1.0. + default: 1 + group: sampling + - path: top_p + type: number + label: Top P + description: Controls nucleus sampling by limiting generation to tokens within the selected cumulative probability. OpenAI recommends sampling at 1.0. + default: 1 + range: + min: 0 + max: 1 + group: sampling + - path: reasoning_effort + type: enum + label: Reasoning effort + description: Controls how much reasoning the model should perform before producing an answer. + default: medium + values: + - low + - medium + - high + group: reasoning + - path: response_format.type + type: enum + label: Response format + description: Controls whether the model returns normal text or a schema-constrained JSON object. + default: text + values: + - text + - json_schema + group: output_format + - path: tool_choice + type: enum + label: Tool choice + description: Controls whether the model may call tools, must call one, or skips tool calls. + values: + - auto + - none + - required + group: tooling diff --git a/models/openai/gpt-oss-safeguard-120b.yaml b/models/openai/gpt-oss-safeguard-120b.yaml new file mode 100644 index 0000000..7446b3c --- /dev/null +++ b/models/openai/gpt-oss-safeguard-120b.yaml @@ -0,0 +1,38 @@ +# yaml-language-server: $schema=https://modelparams.dev/api/v1/schema.json +provider: openai +authType: api_key +model: gpt-oss-safeguard-120b +params: + - path: max_completion_tokens + type: integer + label: Max tokens + description: Maximum number of output tokens the model may generate. + range: + min: 1 + max: 131072 + group: generation_length + - path: temperature + type: number + label: Temperature + description: Controls randomness. Lower values make outputs more focused; higher values make them more varied. OpenAI recommends sampling at 1.0. + default: 1 + group: sampling + - path: top_p + type: number + label: Top P + description: Controls nucleus sampling by limiting generation to tokens within the selected cumulative probability. OpenAI recommends sampling at 1.0. + default: 1 + range: + min: 0 + max: 1 + group: sampling + - path: reasoning_effort + type: enum + label: Reasoning effort + description: Controls how much reasoning the model performs when interpreting the provided safety policy before returning a classification. + default: medium + values: + - low + - medium + - high + group: reasoning diff --git a/models/openai/gpt-oss-safeguard-20b.yaml b/models/openai/gpt-oss-safeguard-20b.yaml new file mode 100644 index 0000000..ccf7b5d --- /dev/null +++ b/models/openai/gpt-oss-safeguard-20b.yaml @@ -0,0 +1,38 @@ +# yaml-language-server: $schema=https://modelparams.dev/api/v1/schema.json +provider: openai +authType: api_key +model: gpt-oss-safeguard-20b +params: + - path: max_completion_tokens + type: integer + label: Max tokens + description: Maximum number of output tokens the model may generate. + range: + min: 1 + max: 131072 + group: generation_length + - path: temperature + type: number + label: Temperature + description: Controls randomness. Lower values make outputs more focused; higher values make them more varied. OpenAI recommends sampling at 1.0. + default: 1 + group: sampling + - path: top_p + type: number + label: Top P + description: Controls nucleus sampling by limiting generation to tokens within the selected cumulative probability. OpenAI recommends sampling at 1.0. + default: 1 + range: + min: 0 + max: 1 + group: sampling + - path: reasoning_effort + type: enum + label: Reasoning effort + description: Controls how much reasoning the model performs when interpreting the provided safety policy before returning a classification. + default: medium + values: + - low + - medium + - high + group: reasoning diff --git a/models/thinking-machines/Inkling.yaml b/models/thinking-machines/Inkling.yaml new file mode 100644 index 0000000..787dcaa --- /dev/null +++ b/models/thinking-machines/Inkling.yaml @@ -0,0 +1,46 @@ +# yaml-language-server: $schema=https://modelparams.dev/api/v1/schema.json +provider: thinking-machines +authType: api_key +model: Inkling +params: + - path: max_tokens + type: integer + label: Max tokens + description: Maximum number of output tokens the model may generate. + range: + min: 1 + group: generation_length + - path: temperature + type: number + label: Temperature + description: Controls randomness. Lower values make outputs more focused; higher values make them more varied. + default: 1 + group: sampling + - path: top_p + type: number + label: Top P + description: Controls nucleus sampling by limiting generation to tokens within the selected cumulative probability. + default: 1 + range: + min: 0 + max: 1 + group: sampling + - path: reasoning_effort + type: enum + label: Reasoning effort + description: Controls how much thinking Inkling performs before answering. Accepts a preset name or a number between 0.0 and 0.99; presets map to numeric effort levels (none=0.0, minimal=0.1, low=0.2, medium=0.7, high=0.9, xhigh=0.99). + default: high + values: + - none + - minimal + - low + - medium + - high + - xhigh + group: reasoning + - path: separate_reasoning + type: boolean + label: Separate reasoning + description: Returns the model's reasoning in a dedicated reasoning_content field instead of interleaving it with the final message content. + default: true + group: reasoning diff --git a/packages/modelparams/src/generated/data.ts b/packages/modelparams/src/generated/data.ts index 96c83e5..ad50dfc 100644 --- a/packages/modelparams/src/generated/data.ts +++ b/packages/modelparams/src/generated/data.ts @@ -7437,6 +7437,17 @@ export const CATALOG = [ "type": "integer", "default": 0 }, + { + "path": "generationConfig.thinkingConfig.thinkingLevel", + "label": "Thinking level", + "description": "Toggles Gemma 4 reasoning; high enables thinking and minimal disables it.", + "group": "reasoning", + "type": "enum", + "values": [ + "minimal", + "high" + ] + }, { "path": "generationConfig.thinkingConfig.includeThoughts", "label": "Include thoughts", @@ -7527,6 +7538,17 @@ export const CATALOG = [ "type": "integer", "default": 0 }, + { + "path": "generationConfig.thinkingConfig.thinkingLevel", + "label": "Thinking level", + "description": "Toggles Gemma 4 reasoning; high enables thinking and minimal disables it.", + "group": "reasoning", + "type": "enum", + "values": [ + "minimal", + "high" + ] + }, { "path": "generationConfig.thinkingConfig.includeThoughts", "label": "Include thoughts", @@ -13133,6 +13155,258 @@ export const CATALOG = [ } ] }, + { + "provider": "openai", + "authType": "api_key", + "model": "gpt-oss-120b", + "params": [ + { + "path": "max_completion_tokens", + "label": "Max tokens", + "description": "Maximum number of output tokens the model may generate.", + "group": "generation_length", + "type": "integer", + "range": { + "min": 1, + "max": 131072 + } + }, + { + "path": "temperature", + "label": "Temperature", + "description": "Controls randomness. Lower values make outputs more focused; higher values make them more varied. OpenAI recommends sampling at 1.0.", + "group": "sampling", + "type": "number", + "default": 1 + }, + { + "path": "top_p", + "label": "Top P", + "description": "Controls nucleus sampling by limiting generation to tokens within the selected cumulative probability. OpenAI recommends sampling at 1.0.", + "group": "sampling", + "type": "number", + "default": 1, + "range": { + "min": 0, + "max": 1 + } + }, + { + "path": "reasoning_effort", + "label": "Reasoning effort", + "description": "Controls how much reasoning the model should perform before producing an answer.", + "group": "reasoning", + "type": "enum", + "default": "medium", + "values": [ + "low", + "medium", + "high" + ] + }, + { + "path": "response_format.type", + "label": "Response format", + "description": "Controls whether the model returns normal text or a schema-constrained JSON object.", + "group": "output_format", + "type": "enum", + "default": "text", + "values": [ + "text", + "json_schema" + ] + }, + { + "path": "tool_choice", + "label": "Tool choice", + "description": "Controls whether the model may call tools, must call one, or skips tool calls.", + "group": "tooling", + "type": "enum", + "values": [ + "auto", + "none", + "required" + ] + } + ] + }, + { + "provider": "openai", + "authType": "api_key", + "model": "gpt-oss-20b", + "params": [ + { + "path": "max_completion_tokens", + "label": "Max tokens", + "description": "Maximum number of output tokens the model may generate.", + "group": "generation_length", + "type": "integer", + "range": { + "min": 1, + "max": 131072 + } + }, + { + "path": "temperature", + "label": "Temperature", + "description": "Controls randomness. Lower values make outputs more focused; higher values make them more varied. OpenAI recommends sampling at 1.0.", + "group": "sampling", + "type": "number", + "default": 1 + }, + { + "path": "top_p", + "label": "Top P", + "description": "Controls nucleus sampling by limiting generation to tokens within the selected cumulative probability. OpenAI recommends sampling at 1.0.", + "group": "sampling", + "type": "number", + "default": 1, + "range": { + "min": 0, + "max": 1 + } + }, + { + "path": "reasoning_effort", + "label": "Reasoning effort", + "description": "Controls how much reasoning the model should perform before producing an answer.", + "group": "reasoning", + "type": "enum", + "default": "medium", + "values": [ + "low", + "medium", + "high" + ] + }, + { + "path": "response_format.type", + "label": "Response format", + "description": "Controls whether the model returns normal text or a schema-constrained JSON object.", + "group": "output_format", + "type": "enum", + "default": "text", + "values": [ + "text", + "json_schema" + ] + }, + { + "path": "tool_choice", + "label": "Tool choice", + "description": "Controls whether the model may call tools, must call one, or skips tool calls.", + "group": "tooling", + "type": "enum", + "values": [ + "auto", + "none", + "required" + ] + } + ] + }, + { + "provider": "openai", + "authType": "api_key", + "model": "gpt-oss-safeguard-120b", + "params": [ + { + "path": "max_completion_tokens", + "label": "Max tokens", + "description": "Maximum number of output tokens the model may generate.", + "group": "generation_length", + "type": "integer", + "range": { + "min": 1, + "max": 131072 + } + }, + { + "path": "temperature", + "label": "Temperature", + "description": "Controls randomness. Lower values make outputs more focused; higher values make them more varied. OpenAI recommends sampling at 1.0.", + "group": "sampling", + "type": "number", + "default": 1 + }, + { + "path": "top_p", + "label": "Top P", + "description": "Controls nucleus sampling by limiting generation to tokens within the selected cumulative probability. OpenAI recommends sampling at 1.0.", + "group": "sampling", + "type": "number", + "default": 1, + "range": { + "min": 0, + "max": 1 + } + }, + { + "path": "reasoning_effort", + "label": "Reasoning effort", + "description": "Controls how much reasoning the model performs when interpreting the provided safety policy before returning a classification.", + "group": "reasoning", + "type": "enum", + "default": "medium", + "values": [ + "low", + "medium", + "high" + ] + } + ] + }, + { + "provider": "openai", + "authType": "api_key", + "model": "gpt-oss-safeguard-20b", + "params": [ + { + "path": "max_completion_tokens", + "label": "Max tokens", + "description": "Maximum number of output tokens the model may generate.", + "group": "generation_length", + "type": "integer", + "range": { + "min": 1, + "max": 131072 + } + }, + { + "path": "temperature", + "label": "Temperature", + "description": "Controls randomness. Lower values make outputs more focused; higher values make them more varied. OpenAI recommends sampling at 1.0.", + "group": "sampling", + "type": "number", + "default": 1 + }, + { + "path": "top_p", + "label": "Top P", + "description": "Controls nucleus sampling by limiting generation to tokens within the selected cumulative probability. OpenAI recommends sampling at 1.0.", + "group": "sampling", + "type": "number", + "default": 1, + "range": { + "min": 0, + "max": 1 + } + }, + { + "path": "reasoning_effort", + "label": "Reasoning effort", + "description": "Controls how much reasoning the model performs when interpreting the provided safety policy before returning a classification.", + "group": "reasoning", + "type": "enum", + "default": "medium", + "values": [ + "low", + "medium", + "high" + ] + } + ] + }, { "provider": "openai", "authType": "api_key", @@ -13866,6 +14140,67 @@ export const CATALOG = [ } ] }, + { + "provider": "thinking-machines", + "authType": "api_key", + "model": "Inkling", + "params": [ + { + "path": "max_tokens", + "label": "Max tokens", + "description": "Maximum number of output tokens the model may generate.", + "group": "generation_length", + "type": "integer", + "range": { + "min": 1 + } + }, + { + "path": "temperature", + "label": "Temperature", + "description": "Controls randomness. Lower values make outputs more focused; higher values make them more varied.", + "group": "sampling", + "type": "number", + "default": 1 + }, + { + "path": "top_p", + "label": "Top P", + "description": "Controls nucleus sampling by limiting generation to tokens within the selected cumulative probability.", + "group": "sampling", + "type": "number", + "default": 1, + "range": { + "min": 0, + "max": 1 + } + }, + { + "path": "reasoning_effort", + "label": "Reasoning effort", + "description": "Controls how much thinking Inkling performs before answering. Accepts a preset name or a number between 0.0 and 0.99; presets map to numeric effort levels (none=0.0, minimal=0.1, low=0.2, medium=0.7, high=0.9, xhigh=0.99).", + "group": "reasoning", + "type": "enum", + "default": "high", + "values": [ + "none", + "minimal", + "low", + "medium", + "high", + "xhigh" + ] + }, + { + "path": "separate_reasoning", + "label": "Separate reasoning", + "description": "Returns the model's reasoning in a dedicated reasoning_content field instead of interleaving it with the final message content.", + "group": "reasoning", + "type": "boolean", + "default": true + } + ] + }, { "provider": "xai", "authType": "api_key", diff --git a/packages/modelparams/src/generated/defaults.ts b/packages/modelparams/src/generated/defaults.ts index a3bb2df..deeaa3e 100644 --- a/packages/modelparams/src/generated/defaults.ts +++ b/packages/modelparams/src/generated/defaults.ts @@ -1059,6 +1059,28 @@ export const DEFAULTS = { "reasoning.summary": "auto", "text.verbosity": "medium", }, + "openai/gpt-oss-120b": { + temperature: 1, + top_p: 1, + reasoning_effort: "medium", + "response_format.type": "text", + }, + "openai/gpt-oss-20b": { + temperature: 1, + top_p: 1, + reasoning_effort: "medium", + "response_format.type": "text", + }, + "openai/gpt-oss-safeguard-120b": { + temperature: 1, + top_p: 1, + reasoning_effort: "medium", + }, + "openai/gpt-oss-safeguard-20b": { + temperature: 1, + top_p: 1, + reasoning_effort: "medium", + }, "openai/o1": { max_completion_tokens: 4096, reasoning_effort: "medium", @@ -1110,6 +1132,12 @@ export const DEFAULTS = { return_related_questions: false, disable_search: false, }, + "thinking-machines/Inkling": { + temperature: 1, + top_p: 1, + reasoning_effort: "high", + separate_reasoning: true, + }, "xai/grok-4.20-0309-non-reasoning": { temperature: 1, top_p: 1, diff --git a/packages/modelparams/src/generated/model-ids.ts b/packages/modelparams/src/generated/model-ids.ts index 99530ee..4fa6f24 100644 --- a/packages/modelparams/src/generated/model-ids.ts +++ b/packages/modelparams/src/generated/model-ids.ts @@ -173,6 +173,10 @@ export const MODEL_IDS = [ "openai/gpt-5.6-sol-subscription", "openai/gpt-5.6-terra", "openai/gpt-5.6-terra-subscription", + "openai/gpt-oss-120b", + "openai/gpt-oss-20b", + "openai/gpt-oss-safeguard-120b", + "openai/gpt-oss-safeguard-20b", "openai/o1", "openai/o1-mini", "openai/o1-preview", @@ -184,6 +188,7 @@ export const MODEL_IDS = [ "perplexity/sonar-deep-research", "perplexity/sonar-pro", "perplexity/sonar-reasoning-pro", + "thinking-machines/Inkling", "xai/grok-4.20-0309-non-reasoning", "xai/grok-4.20-0309-non-reasoning-subscription", "xai/grok-4.20-0309-reasoning", @@ -234,6 +239,7 @@ export const PROVIDERS = [ "nvidia", "openai", "perplexity", + "thinking-machines", "xai", "xiaomi", "z-ai" diff --git a/packages/modelparams/src/generated/params-by-id.ts b/packages/modelparams/src/generated/params-by-id.ts index 651d6d4..c7c3456 100644 --- a/packages/modelparams/src/generated/params-by-id.ts +++ b/packages/modelparams/src/generated/params-by-id.ts @@ -633,6 +633,7 @@ export type ParamsById = { "generationConfig.topK": number; "generationConfig.seed": number; "generationConfig.thinkingConfig.thinkingBudget": number; + "generationConfig.thinkingConfig.thinkingLevel": "minimal" | "high"; "generationConfig.thinkingConfig.includeThoughts": boolean; "generationConfig.responseMimeType": "text/plain" | "application/json"; }; @@ -643,6 +644,7 @@ export type ParamsById = { "generationConfig.topK": number; "generationConfig.seed": number; "generationConfig.thinkingConfig.thinkingBudget": number; + "generationConfig.thinkingConfig.thinkingLevel": "minimal" | "high"; "generationConfig.thinkingConfig.includeThoughts": boolean; "generationConfig.responseMimeType": "text/plain" | "application/json"; }; @@ -1269,6 +1271,34 @@ export type ParamsById = { "reasoning.summary": "auto" | "concise" | "detailed"; "text.verbosity": "low" | "medium" | "high"; }; + "openai/gpt-oss-120b": { + max_completion_tokens: number; + temperature: number; + top_p: number; + reasoning_effort: "low" | "medium" | "high"; + "response_format.type": "text" | "json_schema"; + tool_choice: "auto" | "none" | "required"; + }; + "openai/gpt-oss-20b": { + max_completion_tokens: number; + temperature: number; + top_p: number; + reasoning_effort: "low" | "medium" | "high"; + "response_format.type": "text" | "json_schema"; + tool_choice: "auto" | "none" | "required"; + }; + "openai/gpt-oss-safeguard-120b": { + max_completion_tokens: number; + temperature: number; + top_p: number; + reasoning_effort: "low" | "medium" | "high"; + }; + "openai/gpt-oss-safeguard-20b": { + max_completion_tokens: number; + temperature: number; + top_p: number; + reasoning_effort: "low" | "medium" | "high"; + }; "openai/o1": { max_completion_tokens: number; reasoning_effort: "low" | "medium" | "high" | "xhigh"; @@ -1353,6 +1383,13 @@ export type ParamsById = { return_related_questions: boolean; disable_search: boolean; }; + "thinking-machines/Inkling": { + max_tokens: number; + temperature: number; + top_p: number; + reasoning_effort: "none" | "minimal" | "low" | "medium" | "high" | "xhigh"; + separate_reasoning: boolean; + }; "xai/grok-4.20-0309-non-reasoning": { max_completion_tokens: number; temperature: number;