import { normalizeProviderId } from "../agents/model-selection.js"; import type { OpenClawConfig } from "../config/types.openclaw.js"; import { isBlockedObjectKey } from "../infra/prototype-keys.js"; import { resolvePluginCapabilityProviders } from "../plugins/capability-provider-runtime.js"; import type { ImageGenerationProviderPlugin } from "../plugins/types.js";
function buildProviderMaps(cfg?: OpenClawConfig): {
canonical: Map<string, ImageGenerationProviderPlugin>;
aliases: Map<string, ImageGenerationProviderPlugin>;
} { const canonical = new Map<string, ImageGenerationProviderPlugin>(); const aliases = new Map<string, ImageGenerationProviderPlugin>(); const register = (provider: ImageGenerationProviderPlugin) => { const id = normalizeImageGenerationProviderId(provider.id); if (!isSafeImageGenerationProviderId(id)) { return;
}
canonical.set(id, provider);
aliases.set(id, provider); for (const alias of provider.aliases ?? []) { const normalizedAlias = normalizeImageGenerationProviderId(alias); if (isSafeImageGenerationProviderId(normalizedAlias)) {
aliases.set(normalizedAlias, provider);
}
}
};
for (const provider of BUILTIN_IMAGE_GENERATION_PROVIDERS) {
register(provider);
} for (const provider of resolvePluginImageGenerationProviders(cfg)) {
register(provider);
}
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.