34 lines
1.1 KiB
TypeScript
34 lines
1.1 KiB
TypeScript
import {
|
|
buildMistralModelDefinition,
|
|
MISTRAL_BASE_URL,
|
|
MISTRAL_DEFAULT_MODEL_ID,
|
|
} from "openclaw/plugin-sdk/provider-models";
|
|
import {
|
|
applyAgentDefaultModelPrimary,
|
|
applyProviderConfigWithDefaultModel,
|
|
type OpenClawConfig,
|
|
} from "openclaw/plugin-sdk/provider-onboard";
|
|
|
|
export const MISTRAL_DEFAULT_MODEL_REF = `mistral/${MISTRAL_DEFAULT_MODEL_ID}`;
|
|
|
|
export function applyMistralProviderConfig(cfg: OpenClawConfig): OpenClawConfig {
|
|
const models = { ...cfg.agents?.defaults?.models };
|
|
models[MISTRAL_DEFAULT_MODEL_REF] = {
|
|
...models[MISTRAL_DEFAULT_MODEL_REF],
|
|
alias: models[MISTRAL_DEFAULT_MODEL_REF]?.alias ?? "Mistral",
|
|
};
|
|
|
|
return applyProviderConfigWithDefaultModel(cfg, {
|
|
agentModels: models,
|
|
providerId: "mistral",
|
|
api: "openai-completions",
|
|
baseUrl: MISTRAL_BASE_URL,
|
|
defaultModel: buildMistralModelDefinition(),
|
|
defaultModelId: MISTRAL_DEFAULT_MODEL_ID,
|
|
});
|
|
}
|
|
|
|
export function applyMistralConfig(cfg: OpenClawConfig): OpenClawConfig {
|
|
return applyAgentDefaultModelPrimary(applyMistralProviderConfig(cfg), MISTRAL_DEFAULT_MODEL_REF);
|
|
}
|