mirror of
https://github.com/openclaw/openclaw.git
synced 2026-05-06 06:10:44 +00:00
refactor: share model resolve fallback lookup
This commit is contained in:
@@ -22,6 +22,10 @@ export {
|
||||
} from "./model-selection-shared.js";
|
||||
export type { ModelAliasIndex, ModelRefStatus } from "./model-selection-shared.js";
|
||||
|
||||
function resolveDefaultFallbackModels(cfg: OpenClawConfig): string[] {
|
||||
return resolveAgentModelFallbackValues(cfg.agents?.defaults?.model);
|
||||
}
|
||||
|
||||
export function buildAllowedModelSet(params: {
|
||||
cfg: OpenClawConfig;
|
||||
catalog: ModelCatalogEntry[];
|
||||
@@ -32,12 +36,13 @@ export function buildAllowedModelSet(params: {
|
||||
allowedCatalog: ModelCatalogEntry[];
|
||||
allowedKeys: Set<string>;
|
||||
} {
|
||||
const { cfg, catalog, defaultProvider, defaultModel } = params;
|
||||
return buildAllowedModelSetWithFallbacks({
|
||||
cfg: params.cfg,
|
||||
catalog: params.catalog,
|
||||
defaultProvider: params.defaultProvider,
|
||||
defaultModel: params.defaultModel,
|
||||
fallbackModels: resolveAgentModelFallbackValues(params.cfg.agents?.defaults?.model),
|
||||
cfg,
|
||||
catalog,
|
||||
defaultProvider,
|
||||
defaultModel,
|
||||
fallbackModels: resolveDefaultFallbackModels(cfg),
|
||||
});
|
||||
}
|
||||
|
||||
@@ -48,13 +53,14 @@ export function getModelRefStatus(params: {
|
||||
defaultProvider: string;
|
||||
defaultModel?: string;
|
||||
}): ModelRefStatus {
|
||||
const { cfg, catalog, ref, defaultProvider, defaultModel } = params;
|
||||
return getModelRefStatusWithFallbackModels({
|
||||
cfg: params.cfg,
|
||||
catalog: params.catalog,
|
||||
ref: params.ref,
|
||||
defaultProvider: params.defaultProvider,
|
||||
defaultModel: params.defaultModel,
|
||||
fallbackModels: resolveAgentModelFallbackValues(params.cfg.agents?.defaults?.model),
|
||||
cfg,
|
||||
catalog,
|
||||
ref,
|
||||
defaultProvider,
|
||||
defaultModel,
|
||||
fallbackModels: resolveDefaultFallbackModels(cfg),
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user