zen: minimax m2.5 & glm5
This commit is contained in:
@@ -110,6 +110,7 @@ export async function handler(
|
|||||||
providerInfo.modifyBody({
|
providerInfo.modifyBody({
|
||||||
...createBodyConverter(opts.format, providerInfo.format)(body),
|
...createBodyConverter(opts.format, providerInfo.format)(body),
|
||||||
model: providerInfo.model,
|
model: providerInfo.model,
|
||||||
|
...(providerInfo.payloadModifier ?? {}),
|
||||||
}),
|
}),
|
||||||
)
|
)
|
||||||
logger.debug("REQUEST URL: " + reqUrl)
|
logger.debug("REQUEST URL: " + reqUrl)
|
||||||
@@ -274,8 +275,8 @@ export async function handler(
|
|||||||
part = part.trim()
|
part = part.trim()
|
||||||
usageParser.parse(part)
|
usageParser.parse(part)
|
||||||
|
|
||||||
if (providerInfo.bodyModifier) {
|
if (providerInfo.responseModifier) {
|
||||||
for (const [k, v] of Object.entries(providerInfo.bodyModifier)) {
|
for (const [k, v] of Object.entries(providerInfo.responseModifier)) {
|
||||||
part = part.replace(k, v)
|
part = part.replace(k, v)
|
||||||
}
|
}
|
||||||
c.enqueue(encoder.encode(part + "\n\n"))
|
c.enqueue(encoder.encode(part + "\n\n"))
|
||||||
@@ -285,7 +286,7 @@ export async function handler(
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!providerInfo.bodyModifier && providerInfo.format === opts.format) {
|
if (!providerInfo.responseModifier && providerInfo.format === opts.format) {
|
||||||
c.enqueue(value)
|
c.enqueue(value)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -62,12 +62,13 @@ export namespace ZenData {
|
|||||||
apiKey: z.string(),
|
apiKey: z.string(),
|
||||||
format: FormatSchema.optional(),
|
format: FormatSchema.optional(),
|
||||||
headerMappings: z.record(z.string(), z.string()).optional(),
|
headerMappings: z.record(z.string(), z.string()).optional(),
|
||||||
|
payloadModifier: z.record(z.string(), z.any()).optional(),
|
||||||
family: z.string().optional(),
|
family: z.string().optional(),
|
||||||
})
|
})
|
||||||
|
|
||||||
const ProviderFamilySchema = z.object({
|
const ProviderFamilySchema = z.object({
|
||||||
headers: z.record(z.string(), z.string()).optional(),
|
headers: z.record(z.string(), z.string()).optional(),
|
||||||
bodyModifier: z.record(z.string(), z.string()).optional(),
|
responseModifier: z.record(z.string(), z.string()).optional(),
|
||||||
})
|
})
|
||||||
|
|
||||||
const ModelsSchema = z.object({
|
const ModelsSchema = z.object({
|
||||||
|
|||||||
@@ -82,8 +82,10 @@ You can also access our models through the following API endpoints.
|
|||||||
| Claude Opus 4.1 | claude-opus-4-1 | `https://opencode.ai/zen/v1/messages` | `@ai-sdk/anthropic` |
|
| Claude Opus 4.1 | claude-opus-4-1 | `https://opencode.ai/zen/v1/messages` | `@ai-sdk/anthropic` |
|
||||||
| Gemini 3 Pro | gemini-3-pro | `https://opencode.ai/zen/v1/models/gemini-3-pro` | `@ai-sdk/google` |
|
| Gemini 3 Pro | gemini-3-pro | `https://opencode.ai/zen/v1/models/gemini-3-pro` | `@ai-sdk/google` |
|
||||||
| Gemini 3 Flash | gemini-3-flash | `https://opencode.ai/zen/v1/models/gemini-3-flash` | `@ai-sdk/google` |
|
| Gemini 3 Flash | gemini-3-flash | `https://opencode.ai/zen/v1/models/gemini-3-flash` | `@ai-sdk/google` |
|
||||||
| MiniMax M2.1 | minimax-m2.1 | `https://opencode.ai/zen/v1/chat/completions` | `@ai-sdk/openai-compatible` |
|
| MiniMax M2.5 | minimax-m2.5 | `https://opencode.ai/zen/v1/chat/completions` | `@ai-sdk/openai-compatible` |
|
||||||
| MiniMax M2.5 Free | minimax-m2.5-free | `https://opencode.ai/zen/v1/chat/completions` | `@ai-sdk/openai-compatible` |
|
| MiniMax M2.5 Free | minimax-m2.5-free | `https://opencode.ai/zen/v1/chat/completions` | `@ai-sdk/openai-compatible` |
|
||||||
|
| MiniMax M2.1 | minimax-m2.1 | `https://opencode.ai/zen/v1/chat/completions` | `@ai-sdk/openai-compatible` |
|
||||||
|
| GLM 5 | glm-5 | `https://opencode.ai/zen/v1/chat/completions` | `@ai-sdk/openai-compatible` |
|
||||||
| GLM 4.7 | glm-4.7 | `https://opencode.ai/zen/v1/chat/completions` | `@ai-sdk/openai-compatible` |
|
| GLM 4.7 | glm-4.7 | `https://opencode.ai/zen/v1/chat/completions` | `@ai-sdk/openai-compatible` |
|
||||||
| GLM 4.6 | glm-4.6 | `https://opencode.ai/zen/v1/chat/completions` | `@ai-sdk/openai-compatible` |
|
| GLM 4.6 | glm-4.6 | `https://opencode.ai/zen/v1/chat/completions` | `@ai-sdk/openai-compatible` |
|
||||||
| Kimi K2.5 | kimi-k2.5 | `https://opencode.ai/zen/v1/chat/completions` | `@ai-sdk/openai-compatible` |
|
| Kimi K2.5 | kimi-k2.5 | `https://opencode.ai/zen/v1/chat/completions` | `@ai-sdk/openai-compatible` |
|
||||||
@@ -117,7 +119,9 @@ We support a pay-as-you-go model. Below are the prices **per 1M tokens**.
|
|||||||
| --------------------------------- | ------ | ------ | ----------- | ------------ |
|
| --------------------------------- | ------ | ------ | ----------- | ------------ |
|
||||||
| Big Pickle | Free | Free | Free | - |
|
| Big Pickle | Free | Free | Free | - |
|
||||||
| MiniMax M2.5 Free | Free | Free | Free | - |
|
| MiniMax M2.5 Free | Free | Free | Free | - |
|
||||||
|
| MiniMax M2.5 | $0.30 | $1.20 | $0.06 | - |
|
||||||
| MiniMax M2.1 | $0.30 | $1.20 | $0.10 | - |
|
| MiniMax M2.1 | $0.30 | $1.20 | $0.10 | - |
|
||||||
|
| GLM 5 | $1.00 | $3.20 | $0.20 | - |
|
||||||
| GLM 4.7 | $0.60 | $2.20 | $0.10 | - |
|
| GLM 4.7 | $0.60 | $2.20 | $0.10 | - |
|
||||||
| GLM 4.6 | $0.60 | $2.20 | $0.10 | - |
|
| GLM 4.6 | $0.60 | $2.20 | $0.10 | - |
|
||||||
| Kimi K2.5 Free | Free | Free | Free | - |
|
| Kimi K2.5 Free | Free | Free | Free | - |
|
||||||
|
|||||||
Reference in New Issue
Block a user