openclaw/extensions/huggingface/provider-catalog.ts
2026-03-16 18:33:07 -07:00

23 lines
686 B
TypeScript

import {
buildHuggingfaceModelDefinition,
discoverHuggingfaceModels,
HUGGINGFACE_BASE_URL,
HUGGINGFACE_MODEL_CATALOG,
} from "../../src/agents/huggingface-models.js";
import type { ModelProviderConfig } from "../../src/config/types.models.js";
export async function buildHuggingfaceProvider(
discoveryApiKey?: string,
): Promise<ModelProviderConfig> {
const resolvedSecret = discoveryApiKey?.trim() ?? "";
const models =
resolvedSecret !== ""
? await discoverHuggingfaceModels(resolvedSecret)
: HUGGINGFACE_MODEL_CATALOG.map(buildHuggingfaceModelDefinition);
return {
baseUrl: HUGGINGFACE_BASE_URL,
api: "openai-completions",
models,
};
}