diff --git a/models/xai/grok-4.20-0309-non-reasoning.yaml b/models/xai/grok-4.20-0309-non-reasoning.yaml new file mode 100644 index 0000000..ea8fc59 --- /dev/null +++ b/models/xai/grok-4.20-0309-non-reasoning.yaml @@ -0,0 +1,52 @@ +# yaml-language-server: $schema=https://modelparams.dev/api/v1/schema.json +provider: xai +authType: api_key +model: grok-4.20-0309-non-reasoning +params: + - path: max_completion_tokens + type: integer + label: Max completion tokens + description: Upper bound for visible output tokens generated in the chat completion. + 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 + range: + min: 0 + max: 2 + step: 0.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 + step: 0.01 + group: sampling + - path: seed + type: integer + label: Seed + description: Optional seed used for decoding when reproducible sampling is desired. + group: sampling + - path: stop + type: string + label: Stop sequence + description: Stops generation when this sequence is produced. xAI accepts up to four stop sequences. + group: generation_length + - path: response_format.type + type: enum + label: Response format + description: Controls whether the model returns text, JSON mode output, or structured JSON schema output. + default: text + values: + - text + - json_object + - json_schema + group: output_format diff --git a/models/xai/grok-4.20-0309-reasoning.yaml b/models/xai/grok-4.20-0309-reasoning.yaml new file mode 100644 index 0000000..d086c8a --- /dev/null +++ b/models/xai/grok-4.20-0309-reasoning.yaml @@ -0,0 +1,47 @@ +# yaml-language-server: $schema=https://modelparams.dev/api/v1/schema.json +provider: xai +authType: api_key +model: grok-4.20-0309-reasoning +params: + - path: max_completion_tokens + type: integer + label: Max completion tokens + description: Upper bound for visible output tokens generated in the chat completion. + 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 + range: + min: 0 + max: 2 + step: 0.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 + step: 0.01 + group: sampling + - path: seed + type: integer + label: Seed + description: Optional seed used for decoding when reproducible sampling is desired. + group: sampling + - path: response_format.type + type: enum + label: Response format + description: Controls whether the model returns text, JSON mode output, or structured JSON schema output. + default: text + values: + - text + - json_object + - json_schema + group: output_format diff --git a/models/xai/grok-4.20-multi-agent-0309.yaml b/models/xai/grok-4.20-multi-agent-0309.yaml new file mode 100644 index 0000000..d7b1322 --- /dev/null +++ b/models/xai/grok-4.20-multi-agent-0309.yaml @@ -0,0 +1,52 @@ +# yaml-language-server: $schema=https://modelparams.dev/api/v1/schema.json +provider: xai +authType: api_key +model: grok-4.20-multi-agent-0309 +params: + - path: max_output_tokens + type: integer + label: Max output tokens + description: Upper bound for output tokens generated in the Responses API response. + 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: 0.7 + range: + min: 0 + max: 2 + step: 0.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: 0.95 + range: + min: 0 + max: 1 + step: 0.01 + group: sampling + - path: reasoning.effort + type: enum + label: Reasoning effort + description: Controls whether the Responses API request uses the 4-agent or 16-agent multi-agent setup. + values: + - low + - medium + - high + - xhigh + group: reasoning + - path: text.format.type + type: enum + label: Text format + description: Controls whether the Responses API returns free-form text, JSON mode output, or structured JSON schema output. + default: text + values: + - text + - json_object + - json_schema + group: output_format diff --git a/models/xai/grok-4.3.yaml b/models/xai/grok-4.3.yaml new file mode 100644 index 0000000..b2296f2 --- /dev/null +++ b/models/xai/grok-4.3.yaml @@ -0,0 +1,58 @@ +# yaml-language-server: $schema=https://modelparams.dev/api/v1/schema.json +provider: xai +authType: api_key +model: grok-4.3 +params: + - path: max_completion_tokens + type: integer + label: Max completion tokens + description: Upper bound for visible output tokens generated in the chat completion. + 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 + range: + min: 0 + max: 2 + step: 0.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 + step: 0.01 + group: sampling + - path: seed + type: integer + label: Seed + description: Optional seed used for decoding when reproducible sampling is desired. + group: sampling + - path: reasoning_effort + type: enum + label: Reasoning effort + description: Controls how much reasoning Grok performs before responding. Set to none for non-reasoning requests. + default: low + values: + - none + - low + - medium + - high + group: reasoning + - path: response_format.type + type: enum + label: Response format + description: Controls whether the model returns text, JSON mode output, or structured JSON schema output. + default: text + values: + - text + - json_object + - json_schema + group: output_format diff --git a/models/xai/grok-build-0.1.yaml b/models/xai/grok-build-0.1.yaml new file mode 100644 index 0000000..13a85e8 --- /dev/null +++ b/models/xai/grok-build-0.1.yaml @@ -0,0 +1,47 @@ +# yaml-language-server: $schema=https://modelparams.dev/api/v1/schema.json +provider: xai +authType: api_key +model: grok-build-0.1 +params: + - path: max_completion_tokens + type: integer + label: Max completion tokens + description: Upper bound for visible output tokens generated in the chat completion. + 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 + range: + min: 0 + max: 2 + step: 0.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 + step: 0.01 + group: sampling + - path: seed + type: integer + label: Seed + description: Optional seed used for decoding when reproducible sampling is desired. + group: sampling + - path: response_format.type + type: enum + label: Response format + description: Controls whether the model returns text, JSON mode output, or structured JSON schema output. + default: text + values: + - text + - json_object + - json_schema + group: output_format diff --git a/src/data/display.ts b/src/data/display.ts index 703bfb6..bbf2e55 100644 --- a/src/data/display.ts +++ b/src/data/display.ts @@ -5,6 +5,7 @@ const PROVIDER_LABELS: Record = { openai: "OpenAI", google: "Google", "x-ai": "xAI", + xai: "xAI", meta: "Meta", mistral: "Mistral", deepseek: "DeepSeek", diff --git a/tests/catalog.test.ts b/tests/catalog.test.ts index 2a31be7..29b9474 100644 --- a/tests/catalog.test.ts +++ b/tests/catalog.test.ts @@ -74,6 +74,7 @@ describe("display helpers", () => { it("knows the canonical provider names", () => { expect(providerLabel("anthropic")).toBe("Anthropic"); expect(providerLabel("openai")).toBe("OpenAI"); + expect(providerLabel("xai")).toBe("xAI"); }); it("uses overrides for known model display names", () => {