From cb80f47112ad8e533fd5fec5e086e83bc00de91f Mon Sep 17 00:00:00 2001 From: Shoubhit Dash Date: Wed, 29 Jul 2026 18:20:04 +0530 Subject: [PATCH] feat(ai): type Vertex Messages request options (#39501) --- packages/ai/src/providers/google-vertex-messages.ts | 7 +++++-- .../google-vertex-messages.types.ts | 13 +++++++++++++ 2 files changed, 18 insertions(+), 2 deletions(-) create mode 100644 packages/ai/test/provider-options/google-vertex-messages.types.ts diff --git a/packages/ai/src/providers/google-vertex-messages.ts b/packages/ai/src/providers/google-vertex-messages.ts index 53c4e16b0d0..9dbbc441a1c 100644 --- a/packages/ai/src/providers/google-vertex-messages.ts +++ b/packages/ai/src/providers/google-vertex-messages.ts @@ -91,7 +91,7 @@ export const configure = (input: Config = {}) => { const route = configuredRoute(input) return { id, - model: (modelID: string | ModelID) => route.model({ id: modelID }), + model: (modelID: string | ModelID) => route.model({ id: modelID }), configure, } } @@ -101,7 +101,10 @@ export const provider = { configure, } -export const model: ProviderPackage.Definition["model"] = (modelID, settings) => { +export const model: ProviderPackage.Definition["model"] = ( + modelID, + settings, +) => { if (settings.apiKey !== undefined) throw new Error("Google Vertex Messages does not support API keys") return configure({ accessToken: settings.accessToken, diff --git a/packages/ai/test/provider-options/google-vertex-messages.types.ts b/packages/ai/test/provider-options/google-vertex-messages.types.ts new file mode 100644 index 00000000000..040a4e03da3 --- /dev/null +++ b/packages/ai/test/provider-options/google-vertex-messages.types.ts @@ -0,0 +1,13 @@ +import { LLM } from "../../src" +import { GoogleVertexMessages } from "../../src/providers" + +const model = GoogleVertexMessages.configure({ accessToken: "test", project: "project" }).model("claude") + +LLM.request({ model, prompt: "Hello", providerOptions: { anthropic: { effort: "medium" } } }) + +LLM.request({ + model, + prompt: "Hello", + // @ts-expect-error Vertex Anthropic effort must be a string. + providerOptions: { anthropic: { effort: false } }, +})