import { buildHuggingfaceModelDefinition, HUGGINGFACE_BASE_URL, HUGGINGFACE_MODEL_CATALOG, } from "openclaw/plugin-sdk/provider-models"; import { applyAgentDefaultModelPrimary, applyProviderConfigWithModelCatalog, type OpenClawConfig, } from "openclaw/plugin-sdk/provider-onboard"; export const HUGGINGFACE_DEFAULT_MODEL_REF = "huggingface/deepseek-ai/DeepSeek-R1"; export function applyHuggingfaceProviderConfig(cfg: OpenClawConfig): OpenClawConfig { const models = { ...cfg.agents?.defaults?.models }; models[HUGGINGFACE_DEFAULT_MODEL_REF] = { ...models[HUGGINGFACE_DEFAULT_MODEL_REF], alias: models[HUGGINGFACE_DEFAULT_MODEL_REF]?.alias ?? "Hugging Face", }; return applyProviderConfigWithModelCatalog(cfg, { agentModels: models, providerId: "huggingface", api: "openai-completions", baseUrl: HUGGINGFACE_BASE_URL, catalogModels: HUGGINGFACE_MODEL_CATALOG.map(buildHuggingfaceModelDefinition), }); } export function applyHuggingfaceConfig(cfg: OpenClawConfig): OpenClawConfig { return applyAgentDefaultModelPrimary( applyHuggingfaceProviderConfig(cfg), HUGGINGFACE_DEFAULT_MODEL_REF, ); }