


















@@ -56,21 +56,29 @@ function cloneManifestCatalogCost(cost: ModelCatalogCost): ModelDefinitionConfig
5656};
5757}
585859+function buildManifestCatalogModelInput(model: ModelCatalogModel): ModelDefinitionConfig["input"] {
60+if (model.input?.includes("document")) {
61+throw new Error(
62+`Manifest modelCatalog row ${model.id} uses unsupported runtime input document`,
63+);
64+}
65+return model.input ?? ["text"];
66+}
67+5968function buildManifestCatalogModel(model: ModelCatalogModel): ModelDefinitionConfig {
6069if (model.contextWindow === undefined) {
6170throw new Error(`Manifest modelCatalog row ${model.id} is missing contextWindow`);
6271}
6372if (model.maxTokens === undefined) {
6473throw new Error(`Manifest modelCatalog row ${model.id} is missing maxTokens`);
6574}
66-const input = model.input?.filter((item) => item !== "document") ?? ["text"];
6775return {
6876id: model.id,
6977name: model.name ?? model.id,
7078 ...(model.api ? { api: model.api } : {}),
7179 ...(model.baseUrl ? { baseUrl: model.baseUrl } : {}),
7280reasoning: model.reasoning ?? false,
73-input: input.length > 0 ? input : ["text"],
81+input: buildManifestCatalogModelInput(model),
7482cost: cloneManifestCatalogCost(model.cost ?? {}),
7583contextWindow: model.contextWindow,
7684 ...(model.contextTokens !== undefined ? { contextTokens: model.contextTokens } : {}),
@@ -87,8 +95,11 @@ export function buildManifestModelProviderConfig(params: {
8795if (!params.catalog) {
8896throw new Error(`Missing modelCatalog.providers.${params.providerId}`);
8997}
98+if (!params.catalog.baseUrl) {
99+throw new Error(`Missing modelCatalog.providers.${params.providerId}.baseUrl`);
100+}
90101return {
91-baseUrl: params.catalog.baseUrl ?? "",
102+baseUrl: params.catalog.baseUrl,
92103 ...(params.catalog.api ? { api: params.catalog.api } : {}),
93104 ...(params.catalog.headers ? { headers: { ...params.catalog.headers } } : {}),
94105models: params.catalog.models.map(buildManifestCatalogModel),
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。