mirror of
https://github.com/openclaw/openclaw.git
synced 2026-05-06 05:10:44 +00:00
feat: declare volcengine model catalog
This commit is contained in:
@@ -1,13 +1,19 @@
|
||||
import { buildManifestModelProviderConfig } from "openclaw/plugin-sdk/provider-catalog-shared";
|
||||
import type { ModelDefinitionConfig } from "openclaw/plugin-sdk/provider-model-shared";
|
||||
import {
|
||||
buildVolcModelDefinition,
|
||||
VOLC_MODEL_GLM_4_7,
|
||||
VOLC_MODEL_KIMI_K2_5,
|
||||
VOLC_SHARED_CODING_MODEL_CATALOG,
|
||||
} from "openclaw/plugin-sdk/volc-model-catalog-shared";
|
||||
import manifest from "./openclaw.plugin.json" with { type: "json" };
|
||||
|
||||
export const DOUBAO_BASE_URL = "https://ark.cn-beijing.volces.com/api/v3";
|
||||
export const DOUBAO_CODING_BASE_URL = "https://ark.cn-beijing.volces.com/api/coding/v3";
|
||||
const DOUBAO_MANIFEST_PROVIDER = buildManifestModelProviderConfig({
|
||||
providerId: "volcengine",
|
||||
catalog: manifest.modelCatalog.providers.volcengine,
|
||||
});
|
||||
|
||||
const DOUBAO_CODING_MANIFEST_PROVIDER = buildManifestModelProviderConfig({
|
||||
providerId: "volcengine-plan",
|
||||
catalog: manifest.modelCatalog.providers["volcengine-plan"],
|
||||
});
|
||||
|
||||
export const DOUBAO_BASE_URL = DOUBAO_MANIFEST_PROVIDER.baseUrl;
|
||||
export const DOUBAO_CODING_BASE_URL = DOUBAO_CODING_MANIFEST_PROVIDER.baseUrl;
|
||||
export const DOUBAO_DEFAULT_MODEL_ID = "doubao-seed-1-8-251228";
|
||||
export const DOUBAO_CODING_DEFAULT_MODEL_ID = "ark-code-latest";
|
||||
export const DOUBAO_DEFAULT_MODEL_REF = `volcengine/${DOUBAO_DEFAULT_MODEL_ID}`;
|
||||
@@ -19,46 +25,9 @@ export const DOUBAO_DEFAULT_COST = {
|
||||
cacheWrite: 0,
|
||||
};
|
||||
|
||||
export const DOUBAO_MODEL_CATALOG = [
|
||||
{
|
||||
id: "doubao-seed-code-preview-251028",
|
||||
name: "doubao-seed-code-preview-251028",
|
||||
reasoning: false,
|
||||
input: ["text", "image"] as const,
|
||||
contextWindow: 256000,
|
||||
maxTokens: 4096,
|
||||
},
|
||||
{
|
||||
id: "doubao-seed-1-8-251228",
|
||||
name: "Doubao Seed 1.8",
|
||||
reasoning: false,
|
||||
input: ["text", "image"] as const,
|
||||
contextWindow: 256000,
|
||||
maxTokens: 4096,
|
||||
},
|
||||
VOLC_MODEL_KIMI_K2_5,
|
||||
VOLC_MODEL_GLM_4_7,
|
||||
{
|
||||
id: "deepseek-v3-2-251201",
|
||||
name: "DeepSeek V3.2",
|
||||
reasoning: false,
|
||||
input: ["text", "image"] as const,
|
||||
contextWindow: 128000,
|
||||
maxTokens: 4096,
|
||||
},
|
||||
] as const;
|
||||
|
||||
export const DOUBAO_CODING_MODEL_CATALOG = [
|
||||
...VOLC_SHARED_CODING_MODEL_CATALOG,
|
||||
{
|
||||
id: "doubao-seed-code-preview-251028",
|
||||
name: "Doubao Seed Code Preview",
|
||||
reasoning: false,
|
||||
input: ["text"] as const,
|
||||
contextWindow: 256000,
|
||||
maxTokens: 4096,
|
||||
},
|
||||
] as const;
|
||||
export const DOUBAO_MODEL_CATALOG: ModelDefinitionConfig[] = DOUBAO_MANIFEST_PROVIDER.models;
|
||||
export const DOUBAO_CODING_MODEL_CATALOG: ModelDefinitionConfig[] =
|
||||
DOUBAO_CODING_MANIFEST_PROVIDER.models;
|
||||
|
||||
export type DoubaoCatalogEntry = (typeof DOUBAO_MODEL_CATALOG)[number];
|
||||
export type DoubaoCodingCatalogEntry = (typeof DOUBAO_CODING_MODEL_CATALOG)[number];
|
||||
@@ -66,5 +35,9 @@ export type DoubaoCodingCatalogEntry = (typeof DOUBAO_CODING_MODEL_CATALOG)[numb
|
||||
export function buildDoubaoModelDefinition(
|
||||
entry: DoubaoCatalogEntry | DoubaoCodingCatalogEntry,
|
||||
): ModelDefinitionConfig {
|
||||
return buildVolcModelDefinition(entry, DOUBAO_DEFAULT_COST);
|
||||
return {
|
||||
...entry,
|
||||
input: [...entry.input],
|
||||
cost: { ...entry.cost },
|
||||
};
|
||||
}
|
||||
|
||||
@@ -18,6 +18,169 @@
|
||||
"providerAuthAliases": {
|
||||
"volcengine-plan": "volcengine"
|
||||
},
|
||||
"modelCatalog": {
|
||||
"providers": {
|
||||
"volcengine": {
|
||||
"baseUrl": "https://ark.cn-beijing.volces.com/api/v3",
|
||||
"api": "openai-completions",
|
||||
"models": [
|
||||
{
|
||||
"id": "doubao-seed-code-preview-251028",
|
||||
"name": "doubao-seed-code-preview-251028",
|
||||
"input": ["text", "image"],
|
||||
"contextWindow": 256000,
|
||||
"maxTokens": 4096,
|
||||
"cost": {
|
||||
"input": 0.0001,
|
||||
"output": 0.0002,
|
||||
"cacheRead": 0,
|
||||
"cacheWrite": 0
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "doubao-seed-1-8-251228",
|
||||
"name": "Doubao Seed 1.8",
|
||||
"input": ["text", "image"],
|
||||
"contextWindow": 256000,
|
||||
"maxTokens": 4096,
|
||||
"cost": {
|
||||
"input": 0.0001,
|
||||
"output": 0.0002,
|
||||
"cacheRead": 0,
|
||||
"cacheWrite": 0
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "kimi-k2-5-260127",
|
||||
"name": "Kimi K2.5",
|
||||
"input": ["text", "image"],
|
||||
"contextWindow": 256000,
|
||||
"maxTokens": 4096,
|
||||
"cost": {
|
||||
"input": 0.0001,
|
||||
"output": 0.0002,
|
||||
"cacheRead": 0,
|
||||
"cacheWrite": 0
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "glm-4-7-251222",
|
||||
"name": "GLM 4.7",
|
||||
"input": ["text", "image"],
|
||||
"contextWindow": 200000,
|
||||
"maxTokens": 4096,
|
||||
"cost": {
|
||||
"input": 0.0001,
|
||||
"output": 0.0002,
|
||||
"cacheRead": 0,
|
||||
"cacheWrite": 0
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "deepseek-v3-2-251201",
|
||||
"name": "DeepSeek V3.2",
|
||||
"input": ["text", "image"],
|
||||
"contextWindow": 128000,
|
||||
"maxTokens": 4096,
|
||||
"cost": {
|
||||
"input": 0.0001,
|
||||
"output": 0.0002,
|
||||
"cacheRead": 0,
|
||||
"cacheWrite": 0
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
"volcengine-plan": {
|
||||
"baseUrl": "https://ark.cn-beijing.volces.com/api/coding/v3",
|
||||
"api": "openai-completions",
|
||||
"models": [
|
||||
{
|
||||
"id": "ark-code-latest",
|
||||
"name": "Ark Coding Plan",
|
||||
"input": ["text"],
|
||||
"contextWindow": 256000,
|
||||
"maxTokens": 4096,
|
||||
"cost": {
|
||||
"input": 0.0001,
|
||||
"output": 0.0002,
|
||||
"cacheRead": 0,
|
||||
"cacheWrite": 0
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "doubao-seed-code",
|
||||
"name": "Doubao Seed Code",
|
||||
"input": ["text"],
|
||||
"contextWindow": 256000,
|
||||
"maxTokens": 4096,
|
||||
"cost": {
|
||||
"input": 0.0001,
|
||||
"output": 0.0002,
|
||||
"cacheRead": 0,
|
||||
"cacheWrite": 0
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "glm-4.7",
|
||||
"name": "GLM 4.7 Coding",
|
||||
"input": ["text"],
|
||||
"contextWindow": 200000,
|
||||
"maxTokens": 4096,
|
||||
"cost": {
|
||||
"input": 0.0001,
|
||||
"output": 0.0002,
|
||||
"cacheRead": 0,
|
||||
"cacheWrite": 0
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "kimi-k2-thinking",
|
||||
"name": "Kimi K2 Thinking",
|
||||
"input": ["text"],
|
||||
"contextWindow": 256000,
|
||||
"maxTokens": 4096,
|
||||
"cost": {
|
||||
"input": 0.0001,
|
||||
"output": 0.0002,
|
||||
"cacheRead": 0,
|
||||
"cacheWrite": 0
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "kimi-k2.5",
|
||||
"name": "Kimi K2.5 Coding",
|
||||
"input": ["text"],
|
||||
"contextWindow": 256000,
|
||||
"maxTokens": 4096,
|
||||
"cost": {
|
||||
"input": 0.0001,
|
||||
"output": 0.0002,
|
||||
"cacheRead": 0,
|
||||
"cacheWrite": 0
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "doubao-seed-code-preview-251028",
|
||||
"name": "Doubao Seed Code Preview",
|
||||
"input": ["text"],
|
||||
"contextWindow": 256000,
|
||||
"maxTokens": 4096,
|
||||
"cost": {
|
||||
"input": 0.0001,
|
||||
"output": 0.0002,
|
||||
"cacheRead": 0,
|
||||
"cacheWrite": 0
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
"discovery": {
|
||||
"volcengine": "static",
|
||||
"volcengine-plan": "static"
|
||||
}
|
||||
},
|
||||
"providerAuthChoices": [
|
||||
{
|
||||
"provider": "volcengine",
|
||||
|
||||
@@ -1,24 +1,17 @@
|
||||
import { buildManifestModelProviderConfig } from "openclaw/plugin-sdk/provider-catalog-shared";
|
||||
import type { ModelProviderConfig } from "openclaw/plugin-sdk/provider-model-shared";
|
||||
import {
|
||||
buildDoubaoModelDefinition,
|
||||
DOUBAO_BASE_URL,
|
||||
DOUBAO_CODING_BASE_URL,
|
||||
DOUBAO_CODING_MODEL_CATALOG,
|
||||
DOUBAO_MODEL_CATALOG,
|
||||
} from "./models.js";
|
||||
import manifest from "./openclaw.plugin.json" with { type: "json" };
|
||||
|
||||
export function buildDoubaoProvider(): ModelProviderConfig {
|
||||
return {
|
||||
baseUrl: DOUBAO_BASE_URL,
|
||||
api: "openai-completions",
|
||||
models: DOUBAO_MODEL_CATALOG.map(buildDoubaoModelDefinition),
|
||||
};
|
||||
return buildManifestModelProviderConfig({
|
||||
providerId: "volcengine",
|
||||
catalog: manifest.modelCatalog.providers.volcengine,
|
||||
});
|
||||
}
|
||||
|
||||
export function buildDoubaoCodingProvider(): ModelProviderConfig {
|
||||
return {
|
||||
baseUrl: DOUBAO_CODING_BASE_URL,
|
||||
api: "openai-completions",
|
||||
models: DOUBAO_CODING_MODEL_CATALOG.map(buildDoubaoModelDefinition),
|
||||
};
|
||||
return buildManifestModelProviderConfig({
|
||||
providerId: "volcengine-plan",
|
||||
catalog: manifest.modelCatalog.providers["volcengine-plan"],
|
||||
});
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user