mirror of
https://github.com/openclaw/openclaw.git
synced 2026-07-17 21:11:36 +00:00
* feat(qwen): add Token Plan provider Co-authored-by: Oliver Mee <102673257+Omee11@users.noreply.github.com> * docs: regenerate documentation map --------- Co-authored-by: Peter Steinberger <steipete@gmail.com> Co-authored-by: Oliver Mee <102673257+Omee11@users.noreply.github.com>
39 lines
1.2 KiB
TypeScript
39 lines
1.2 KiB
TypeScript
// Qwen provider module implements model/runtime integration.
|
|
import type { ModelProviderConfig } from "openclaw/plugin-sdk/provider-model-shared";
|
|
import {
|
|
buildQwenModelCatalogForBaseUrl,
|
|
buildQwenOAuthModelCatalog,
|
|
QWEN_BASE_URL,
|
|
QWEN_OAUTH_BASE_URL,
|
|
QWEN_TOKEN_PLAN_GLOBAL_BASE_URL,
|
|
QWEN_TOKEN_PLAN_MODEL_CATALOG,
|
|
} from "./models.js";
|
|
|
|
export function buildQwenProvider(params?: { baseUrl?: string }): ModelProviderConfig {
|
|
const baseUrl = params?.baseUrl ?? QWEN_BASE_URL;
|
|
return {
|
|
baseUrl,
|
|
api: "openai-completions",
|
|
models: buildQwenModelCatalogForBaseUrl(baseUrl).map((model) => Object.assign({}, model)),
|
|
};
|
|
}
|
|
|
|
export function buildQwenOAuthProvider(): ModelProviderConfig {
|
|
return {
|
|
baseUrl: QWEN_OAUTH_BASE_URL,
|
|
api: "openai-completions",
|
|
models: buildQwenOAuthModelCatalog().map((model) => Object.assign({}, model)),
|
|
};
|
|
}
|
|
|
|
export function buildQwenTokenPlanProvider(params?: { baseUrl?: string }): ModelProviderConfig {
|
|
const baseUrl = params?.baseUrl ?? QWEN_TOKEN_PLAN_GLOBAL_BASE_URL;
|
|
return {
|
|
baseUrl,
|
|
api: "openai-completions",
|
|
models: QWEN_TOKEN_PLAN_MODEL_CATALOG.map((model) => Object.assign({}, model)),
|
|
};
|
|
}
|
|
|
|
export const buildModelStudioProvider = buildQwenProvider;
|