openclaw/extensions/huggingface/onboard.ts

31 lines
1.0 KiB
TypeScript

import {
buildHuggingfaceModelDefinition,
HUGGINGFACE_BASE_URL,
HUGGINGFACE_MODEL_CATALOG,
} from "openclaw/plugin-sdk/provider-models";
import {
createModelCatalogPresetAppliers,
type OpenClawConfig,
} from "openclaw/plugin-sdk/provider-onboard";
export const HUGGINGFACE_DEFAULT_MODEL_REF = "huggingface/deepseek-ai/DeepSeek-R1";
const huggingfacePresetAppliers = createModelCatalogPresetAppliers({
primaryModelRef: HUGGINGFACE_DEFAULT_MODEL_REF,
resolveParams: (_cfg: OpenClawConfig) => ({
providerId: "huggingface",
api: "openai-completions",
baseUrl: HUGGINGFACE_BASE_URL,
catalogModels: HUGGINGFACE_MODEL_CATALOG.map(buildHuggingfaceModelDefinition),
aliases: [{ modelRef: HUGGINGFACE_DEFAULT_MODEL_REF, alias: "Hugging Face" }],
}),
});
export function applyHuggingfaceProviderConfig(cfg: OpenClawConfig): OpenClawConfig {
return huggingfacePresetAppliers.applyProviderConfig(cfg);
}
export function applyHuggingfaceConfig(cfg: OpenClawConfig): OpenClawConfig {
return huggingfacePresetAppliers.applyConfig(cfg);
}