diff --git a/src/api/providers/__tests__/openai.spec.ts b/src/api/providers/__tests__/openai.spec.ts index 3e744d6e16e..6ec43a6dfae 100644 --- a/src/api/providers/__tests__/openai.spec.ts +++ b/src/api/providers/__tests__/openai.spec.ts @@ -494,7 +494,7 @@ describe("OpenAiHandler", () => { { model: azureOptions.openAiModelId, messages: [ - { role: "user", content: systemPrompt }, + { role: "system", content: systemPrompt }, { role: "user", content: "Hello!" }, ], }, diff --git a/src/api/providers/openai.ts b/src/api/providers/openai.ts index aebe671712a..9100ff3c659 100644 --- a/src/api/providers/openai.ts +++ b/src/api/providers/openai.ts @@ -99,12 +99,12 @@ export class OpenAiHandler extends BaseProvider implements SingleCompletionHandl return } - if (this.options.openAiStreamingEnabled ?? true) { - let systemMessage: OpenAI.Chat.ChatCompletionSystemMessageParam = { - role: "system", - content: systemPrompt, - } + let systemMessage: OpenAI.Chat.ChatCompletionSystemMessageParam = { + role: "system", + content: systemPrompt, + } + if (this.options.openAiStreamingEnabled ?? true) { let convertedMessages if (deepseekReasoner) { @@ -218,12 +218,6 @@ export class OpenAiHandler extends BaseProvider implements SingleCompletionHandl yield this.processUsageMetrics(lastUsage, modelInfo) } } else { - // o1 for instance doesnt support streaming, non-1 temp, or system prompt - const systemMessage: OpenAI.Chat.ChatCompletionUserMessageParam = { - role: "user", - content: systemPrompt, - } - const requestOptions: OpenAI.Chat.Completions.ChatCompletionCreateParamsNonStreaming = { model: modelId, messages: deepseekReasoner