mirror of
https://github.com/openclaw/openclaw.git
synced 2026-07-13 15:16:09 +00:00
59 lines
2.0 KiB
TypeScript
59 lines
2.0 KiB
TypeScript
import type { OpenClawConfig } from "../config/types.openclaw.js";
|
|
import {
|
|
getRuntimeEmbeddingProviderAdapter,
|
|
listRuntimeEmbeddingProviderAdapters,
|
|
readConfiguredProviderApiId,
|
|
resolveRuntimeEmbeddingProviderLookupIds,
|
|
} from "./embedding-provider-runtime-shared.js";
|
|
import {
|
|
getRegisteredMemoryEmbeddingProvider,
|
|
listRegisteredMemoryEmbeddingProviders,
|
|
type MemoryEmbeddingProviderAdapter,
|
|
} from "./memory-embedding-providers.js";
|
|
|
|
export { listRegisteredMemoryEmbeddingProviders };
|
|
|
|
/** Lists registered memory embedding provider adapters without registry metadata. */
|
|
export function listRegisteredMemoryEmbeddingProviderAdapters(): MemoryEmbeddingProviderAdapter[] {
|
|
return listRegisteredMemoryEmbeddingProviders().map((entry) => entry.adapter);
|
|
}
|
|
|
|
/** Lists memory embedding providers from runtime config and registered adapters. */
|
|
export function listMemoryEmbeddingProviders(
|
|
cfg?: OpenClawConfig,
|
|
): MemoryEmbeddingProviderAdapter[] {
|
|
return listRuntimeEmbeddingProviderAdapters({
|
|
key: "memoryEmbeddingProviders",
|
|
cfg,
|
|
registered: listRegisteredMemoryEmbeddingProviderAdapters(),
|
|
});
|
|
}
|
|
|
|
function resolveConfiguredMemoryEmbeddingProviderId(
|
|
providerId: string,
|
|
cfg?: OpenClawConfig,
|
|
): string | undefined {
|
|
return readConfiguredProviderApiId({ providerId, cfg });
|
|
}
|
|
|
|
function resolveMemoryEmbeddingProviderLookupIds(id: string, cfg?: OpenClawConfig): string[] {
|
|
return resolveRuntimeEmbeddingProviderLookupIds({
|
|
id,
|
|
cfg,
|
|
resolveConfiguredProviderId: resolveConfiguredMemoryEmbeddingProviderId,
|
|
});
|
|
}
|
|
|
|
/** Resolves one memory embedding provider by id, alias, or configured API owner. */
|
|
export function getMemoryEmbeddingProvider(
|
|
id: string,
|
|
cfg?: OpenClawConfig,
|
|
): MemoryEmbeddingProviderAdapter | undefined {
|
|
return getRuntimeEmbeddingProviderAdapter({
|
|
key: "memoryEmbeddingProviders",
|
|
cfg,
|
|
lookupIds: resolveMemoryEmbeddingProviderLookupIds(id, cfg),
|
|
getRegisteredProvider: getRegisteredMemoryEmbeddingProvider,
|
|
});
|
|
}
|