diff --git a/packages/core/src/aisdk-native.ts b/packages/core/src/aisdk-native.ts index 29c71da34aa..9f2bf44e77b 100644 --- a/packages/core/src/aisdk-native.ts +++ b/packages/core/src/aisdk-native.ts @@ -84,10 +84,7 @@ export function map(input: MapInput): Mapping | undefined { ...mapAPIKey(input.settings), ...(typeof input.settings.location === "string" ? { location: input.settings.location } : {}), ...(typeof input.settings.project === "string" ? { project: input.settings.project } : {}), - ...mapGoogleOptions( - input.settings, - isStringRecord(input.settings.labels) ? { labels: input.settings.labels } : {}, - ), + ...mapGoogleOptions(input.settings), }, ...(isStringRecord(input.settings.headers) ? { headers: input.settings.headers } : {}), } @@ -296,7 +293,7 @@ function mapAPIKey(settings: Readonly>) { return typeof settings.apiKey === "string" ? { apiKey: settings.apiKey } : {} } -function mapGoogleOptions(settings: Readonly>, extra: Readonly> = {}) { +function mapGoogleOptions(settings: Readonly>) { const input = settings.thinkingConfig const thinkingConfig = { ...(isRecord(input) && typeof input.thinkingBudget === "number" ? { thinkingBudget: input.thinkingBudget } : {}), @@ -311,7 +308,6 @@ function mapGoogleOptions(settings: Readonly>, extra: Re ...(Array.isArray(settings.safetySettings) ? { safetySettings: settings.safetySettings } : {}), ...(typeof settings.serviceTier === "string" ? { serviceTier: settings.serviceTier } : {}), ...(Object.keys(thinkingConfig).length > 0 ? { thinkingConfig } : {}), - ...extra, } if (Object.keys(options).length === 0) return {} return { providerOptions: options } @@ -345,28 +341,21 @@ function mapOpenRouter( } function mapOpenRouterOptions(settings: Readonly>) { - const options = Object.fromEntries( - Object.entries(settings).filter( - ([key]) => - ![ - "apiKey", - "api_keys", - "appName", - "appUrl", - "authToken", - "baseURL", - "chunkTimeout", - "compatibility", - "extraBody", - "fetch", - "headers", - "promptCacheKey", - "timeout", - ].includes(key), - ), - ) - if (Object.keys(options).length === 0) return {} - return { providerOptions: options } + return mapProviderOptions(settings, [ + "apiKey", + "api_keys", + "appName", + "appUrl", + "authToken", + "baseURL", + "chunkTimeout", + "compatibility", + "extraBody", + "fetch", + "headers", + "promptCacheKey", + "timeout", + ]) } function isStringRecord(value: unknown): value is Readonly> { diff --git a/packages/core/src/plugin/provider/amazon-bedrock.ts b/packages/core/src/plugin/provider/amazon-bedrock.ts index 4c341c6863d..f7ceedd2f1a 100644 --- a/packages/core/src/plugin/provider/amazon-bedrock.ts +++ b/packages/core/src/plugin/provider/amazon-bedrock.ts @@ -4,7 +4,6 @@ import { define } from "@opencode-ai/plugin/effect/plugin" import { Provider } from "../../provider.js" type MantleSDK = { - languageModel: (modelID: string) => LanguageModelV3 chat: (modelID: string) => LanguageModelV3 responses: (modelID: string) => LanguageModelV3 }