diff --git a/packages/ai/src/providers/openai-compatible-responses.ts b/packages/ai/src/providers/openai-compatible-responses.ts index 38293eb1d8d..fe2fc49bc55 100644 --- a/packages/ai/src/providers/openai-compatible-responses.ts +++ b/packages/ai/src/providers/openai-compatible-responses.ts @@ -36,7 +36,7 @@ export const configure = (input: Config) => { }) return { id: ProviderID.make(provider), - model: (modelID: string | ModelID) => route.model({ id: modelID }), + model: (modelID: string | ModelID) => route.model({ id: modelID }), configure, } } @@ -46,7 +46,10 @@ 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/openai-compatible-responses.types.ts b/packages/ai/test/provider-options/openai-compatible-responses.types.ts new file mode 100644 index 00000000000..cb178b3b971 --- /dev/null +++ b/packages/ai/test/provider-options/openai-compatible-responses.types.ts @@ -0,0 +1,13 @@ +import { LLM } from "../../src" +import { OpenAICompatibleResponses } from "../../src/providers" + +const model = OpenAICompatibleResponses.configure({ baseURL: "https://example.com" }).model("model") + +LLM.request({ model, prompt: "Hello", providerOptions: { openresponses: { reasoningSummary: "detailed" } } }) + +LLM.request({ + model, + prompt: "Hello", + // @ts-expect-error Open Responses reasoning summaries use a fixed union. + providerOptions: { openresponses: { reasoningSummary: "full" } }, +})