diff --git a/models/moonshot/kimi-k2.5.yaml b/models/moonshot/kimi-k2.5.yaml
new file mode 100644
index 0000000..9bb3ada
--- /dev/null
+++ b/models/moonshot/kimi-k2.5.yaml
@@ -0,0 +1,31 @@
+# yaml-language-server: $schema=https://modelparams.dev/api/v1/schema.json
+provider: moonshot
+authType: api_key
+model: kimi-k2.5
+params:
+ - path: max_completion_tokens
+ type: integer
+ label: Max tokens
+ description: Maximum number of tokens to generate in the chat completion.
+ range:
+ min: 1
+ group: generation_length
+ - path: thinking.type
+ type: enum
+ label: Thinking mode
+ description: >-
+ Controls whether Kimi reasons step by step before answering, or responds directly when set to
+ disabled.
+ values:
+ - enabled
+ - disabled
+ group: reasoning
+ - path: response_format.type
+ type: enum
+ label: Response format
+ description: Forces the response into plain text or a JSON object.
+ default: text
+ values:
+ - text
+ - json_object
+ group: output_format
diff --git a/models/moonshot/kimi-k2.6.yaml b/models/moonshot/kimi-k2.6.yaml
new file mode 100644
index 0000000..9bb30a1
--- /dev/null
+++ b/models/moonshot/kimi-k2.6.yaml
@@ -0,0 +1,32 @@
+# yaml-language-server: $schema=https://modelparams.dev/api/v1/schema.json
+provider: moonshot
+authType: api_key
+model: kimi-k2.6
+params:
+ - path: max_completion_tokens
+ type: integer
+ label: Max tokens
+ description: Maximum number of tokens to generate in the chat completion.
+ range:
+ min: 1
+ group: generation_length
+ - path: thinking.type
+ type: enum
+ label: Thinking mode
+ description: >-
+ Controls whether Kimi reasons step by step before answering. Thinking is enabled by default;
+ set disabled to respond directly.
+ default: enabled
+ values:
+ - enabled
+ - disabled
+ group: reasoning
+ - path: response_format.type
+ type: enum
+ label: Response format
+ description: Forces the response into plain text or a JSON object.
+ default: text
+ values:
+ - text
+ - json_object
+ group: output_format
diff --git a/models/moonshot/moonshot-v1-128k.yaml b/models/moonshot/moonshot-v1-128k.yaml
new file mode 100644
index 0000000..f9290cf
--- /dev/null
+++ b/models/moonshot/moonshot-v1-128k.yaml
@@ -0,0 +1,75 @@
+# yaml-language-server: $schema=https://modelparams.dev/api/v1/schema.json
+provider: moonshot
+authType: api_key
+model: moonshot-v1-128k
+params:
+ - path: max_completion_tokens
+ type: integer
+ label: Max tokens
+ description: Maximum number of tokens to generate 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: 0.3
+ range:
+ min: 0
+ max: 1
+ 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: n
+ type: integer
+ label: Number of completions
+ description: How many chat completion choices to generate for the request.
+ default: 1
+ range:
+ min: 1
+ max: 5
+ group: generation_length
+ - path: presence_penalty
+ type: number
+ label: Presence penalty
+ description: >-
+ Penalizes tokens that have already appeared, encouraging the model to talk about new topics.
+ default: 0
+ range:
+ min: -2
+ max: 2
+ step: 0.1
+ group: sampling
+ - path: frequency_penalty
+ type: number
+ label: Frequency penalty
+ description: Penalizes tokens by how often they have appeared, reducing verbatim repetition.
+ default: 0
+ range:
+ min: -2
+ max: 2
+ step: 0.1
+ group: sampling
+ - path: response_format.type
+ type: enum
+ label: Response format
+ description: Forces the response into plain text or a JSON object.
+ default: text
+ values:
+ - text
+ - json_object
+ group: output_format
diff --git a/models/moonshot/moonshot-v1-32k.yaml b/models/moonshot/moonshot-v1-32k.yaml
new file mode 100644
index 0000000..a0c3df4
--- /dev/null
+++ b/models/moonshot/moonshot-v1-32k.yaml
@@ -0,0 +1,75 @@
+# yaml-language-server: $schema=https://modelparams.dev/api/v1/schema.json
+provider: moonshot
+authType: api_key
+model: moonshot-v1-32k
+params:
+ - path: max_completion_tokens
+ type: integer
+ label: Max tokens
+ description: Maximum number of tokens to generate 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: 0.3
+ range:
+ min: 0
+ max: 1
+ 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: n
+ type: integer
+ label: Number of completions
+ description: How many chat completion choices to generate for the request.
+ default: 1
+ range:
+ min: 1
+ max: 5
+ group: generation_length
+ - path: presence_penalty
+ type: number
+ label: Presence penalty
+ description: >-
+ Penalizes tokens that have already appeared, encouraging the model to talk about new topics.
+ default: 0
+ range:
+ min: -2
+ max: 2
+ step: 0.1
+ group: sampling
+ - path: frequency_penalty
+ type: number
+ label: Frequency penalty
+ description: Penalizes tokens by how often they have appeared, reducing verbatim repetition.
+ default: 0
+ range:
+ min: -2
+ max: 2
+ step: 0.1
+ group: sampling
+ - path: response_format.type
+ type: enum
+ label: Response format
+ description: Forces the response into plain text or a JSON object.
+ default: text
+ values:
+ - text
+ - json_object
+ group: output_format
diff --git a/models/moonshot/moonshot-v1-8k.yaml b/models/moonshot/moonshot-v1-8k.yaml
new file mode 100644
index 0000000..3d09595
--- /dev/null
+++ b/models/moonshot/moonshot-v1-8k.yaml
@@ -0,0 +1,75 @@
+# yaml-language-server: $schema=https://modelparams.dev/api/v1/schema.json
+provider: moonshot
+authType: api_key
+model: moonshot-v1-8k
+params:
+ - path: max_completion_tokens
+ type: integer
+ label: Max tokens
+ description: Maximum number of tokens to generate 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: 0.3
+ range:
+ min: 0
+ max: 1
+ 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: n
+ type: integer
+ label: Number of completions
+ description: How many chat completion choices to generate for the request.
+ default: 1
+ range:
+ min: 1
+ max: 5
+ group: generation_length
+ - path: presence_penalty
+ type: number
+ label: Presence penalty
+ description: >-
+ Penalizes tokens that have already appeared, encouraging the model to talk about new topics.
+ default: 0
+ range:
+ min: -2
+ max: 2
+ step: 0.1
+ group: sampling
+ - path: frequency_penalty
+ type: number
+ label: Frequency penalty
+ description: Penalizes tokens by how often they have appeared, reducing verbatim repetition.
+ default: 0
+ range:
+ min: -2
+ max: 2
+ step: 0.1
+ group: sampling
+ - path: response_format.type
+ type: enum
+ label: Response format
+ description: Forces the response into plain text or a JSON object.
+ default: text
+ values:
+ - text
+ - json_object
+ group: output_format
diff --git a/src/client/logos/moonshot.svg b/src/client/logos/moonshot.svg
new file mode 100644
index 0000000..3cdf7c8
--- /dev/null
+++ b/src/client/logos/moonshot.svg
@@ -0,0 +1,3 @@
+
diff --git a/src/data/display.ts b/src/data/display.ts
index 1735797..703bfb6 100644
--- a/src/data/display.ts
+++ b/src/data/display.ts
@@ -11,6 +11,7 @@ const PROVIDER_LABELS: Record = {
minimax: "MiniMax",
cohere: "Cohere",
perplexity: "Perplexity",
+ moonshot: "Moonshot AI",
};
const MODEL_LABEL_OVERRIDES: Record = {
@@ -28,6 +29,11 @@ const MODEL_LABEL_OVERRIDES: Record = {
"minimax/minimax-m2.5-highspeed": "MiniMax M2.5 Highspeed",
"minimax/minimax-m2.7": "MiniMax M2.7",
"minimax/minimax-m2.7-highspeed": "MiniMax M2.7 Highspeed",
+ "moonshot/kimi-k2.6": "Kimi K2.6",
+ "moonshot/kimi-k2.5": "Kimi K2.5",
+ "moonshot/moonshot-v1-8k": "Moonshot v1 8K",
+ "moonshot/moonshot-v1-32k": "Moonshot v1 32K",
+ "moonshot/moonshot-v1-128k": "Moonshot v1 128K",
};
const AUTH_LABELS: Record = {