From ce2c9e7e2682d343735a7342a454f84ab09c5bd8 Mon Sep 17 00:00:00 2001 From: Shoubhit Dash Date: Wed, 29 Jul 2026 18:20:30 +0530 Subject: [PATCH] feat(ai): type Google request options (#39504) --- packages/ai/src/providers/google.ts | 4 ++-- .../ai/test/provider-options/google.types.ts | 17 +++++++++++++++++ 2 files changed, 19 insertions(+), 2 deletions(-) create mode 100644 packages/ai/test/provider-options/google.types.ts diff --git a/packages/ai/src/providers/google.ts b/packages/ai/src/providers/google.ts index 2c3476117c..89da1a923a 100644 --- a/packages/ai/src/providers/google.ts +++ b/packages/ai/src/providers/google.ts @@ -50,14 +50,14 @@ export const configure = (input: Config = {}) => { }) return { id, - model: (modelID: string | ModelID) => route.model({ id: modelID }), + model: (modelID: string | ModelID) => route.model({ id: modelID }), image, configure, } } export const provider = configure() -export const model: ProviderPackage.Definition["model"] = (modelID, settings) => +export const model: ProviderPackage.Definition["model"] = (modelID, settings) => configure({ apiKey: settings.apiKey, baseURL: settings.baseURL, diff --git a/packages/ai/test/provider-options/google.types.ts b/packages/ai/test/provider-options/google.types.ts new file mode 100644 index 0000000000..3ccfdfb1a5 --- /dev/null +++ b/packages/ai/test/provider-options/google.types.ts @@ -0,0 +1,17 @@ +import { LLM } from "../../src" +import { Google } from "../../src/providers" + +const model = Google.provider.model("gemini-2.5-pro") + +LLM.request({ + model, + prompt: "Hello", + providerOptions: { gemini: { thinkingConfig: { thinkingBudget: 1024 } } }, +}) + +LLM.request({ + model, + prompt: "Hello", + // @ts-expect-error Gemini thinking budgets must be numeric. + providerOptions: { gemini: { thinkingConfig: { thinkingBudget: "large" } } }, +})