diff --git a/ui/app/workspace/providers/fragments/openaiConfigFormFragment.tsx b/ui/app/workspace/providers/fragments/openaiConfigFormFragment.tsx index 0cc5ecaa7b..08894d4c35 100644 --- a/ui/app/workspace/providers/fragments/openaiConfigFormFragment.tsx +++ b/ui/app/workspace/providers/fragments/openaiConfigFormFragment.tsx @@ -1,12 +1,12 @@ "use client"; +import { buildProviderUpdatePayload } from "@/app/workspace/providers/views/utils"; import { Button } from "@/components/ui/button"; import { Form, FormControl, FormField, FormItem, FormLabel, FormMessage } from "@/components/ui/form"; import { Switch } from "@/components/ui/switch"; import { getErrorMessage, setProviderFormDirtyState, useAppDispatch } from "@/lib/store"; import { useUpdateProviderMutation } from "@/lib/store/apis/providersApi"; import { ModelProvider } from "@/lib/types/config"; -import { buildProviderUpdatePayload } from "@/app/workspace/providers/views/utils"; import { openaiConfigFormSchema, type OpenAIConfigFormSchema } from "@/lib/types/schemas"; import { RbacOperation, RbacResource, useRbac } from "@enterprise/lib"; import { zodResolver } from "@hookform/resolvers/zod"; @@ -72,9 +72,9 @@ export function OpenAIConfigFormFragment({ provider }: OpenAIConfigFormFragmentP
Disable Store

- With the Responses API, store defaults to true, and when it is on, the generated response is stored for later retrieval via API. OpenAI - exposes endpoints to retrieve and delete stored responses, so your response IDs become durable server-side objects instead of one-shot - IDs. + With the Responses API, store defaults to true, and when it is on, the generated response is stored for later + retrieval via API. OpenAI exposes endpoints to retrieve and delete stored responses, so your response IDs become + durable server-side objects instead of one-shot IDs.

diff --git a/ui/app/workspace/providers/views/utils.ts b/ui/app/workspace/providers/views/utils.ts index e754f8e62c..a047c3f737 100644 --- a/ui/app/workspace/providers/views/utils.ts +++ b/ui/app/workspace/providers/views/utils.ts @@ -13,5 +13,6 @@ export const buildProviderUpdatePayload = (provider: ModelProvider, updates: Par send_back_raw_response: updates.send_back_raw_response ?? provider.send_back_raw_response, store_raw_request_response: updates.store_raw_request_response ?? provider.store_raw_request_response, custom_provider_config: updates.custom_provider_config ?? provider.custom_provider_config, + openai_config: updates.openai_config ?? provider.openai_config, }; }; diff --git a/ui/lib/types/schemas.ts b/ui/lib/types/schemas.ts index 85a12ccbff..9419805393 100644 --- a/ui/lib/types/schemas.ts +++ b/ui/lib/types/schemas.ts @@ -405,6 +405,13 @@ export const proxyFormConfigSchema = z }, ); +// OpenAI Config tab +export const openaiConfigFormSchema = z.object({ + disable_store: z.boolean(), +}); + +export type OpenAIConfigFormSchema = z.infer; + // Allowed requests schema export const allowedRequestsSchema = z.object({ text_completion: z.boolean(), @@ -523,6 +530,7 @@ export const addProviderRequestSchema = z.object({ send_back_raw_response: z.boolean().optional(), store_raw_request_response: z.boolean().optional(), custom_provider_config: customProviderConfigSchema.optional(), + openai_config: openaiConfigFormSchema.optional(), }); // Update provider request schema @@ -535,6 +543,7 @@ export const updateProviderRequestSchema = z.object({ send_back_raw_response: z.boolean().optional(), store_raw_request_response: z.boolean().optional(), custom_provider_config: customProviderConfigSchema.optional(), + openai_config: openaiConfigFormSchema.optional(), }); // Cache config schema @@ -640,13 +649,6 @@ export const betaHeadersFormSchema = z.object({ export type BetaHeadersFormSchema = z.infer; -// OpenAI Config tab -export const openaiConfigFormSchema = z.object({ - disable_store: z.boolean(), -}); - -export type OpenAIConfigFormSchema = z.infer; - // OTEL Configuration Schema export const otelConfigSchema = z .object({