Refactor reasoning effort handling for OpenAI models in chat completions

dd2154c19be08f5c220ebe295940cb859bea09e3

Cohee <18619528+Cohee1207@users.noreply.github.com>

1 files changed, +7 -10Ignore whitespace
src/endpoints/backends/chat-completions.js+7 -10
@@ -967,11 +967,6 @@ router.post('/generate', jsonParser, function (request, response) {
967967 if (getConfigValue('openai.randomizeUserId', false)) {
968968 bodyParams['user'] = uuidv4();
969969 }
970-
971- // A few of OpenAIs reasoning models support reasoning effort
972- if (['o1', 'o3-mini', 'o3-mini-2025-01-31'].includes(request.body.model)) {
973- bodyParams['reasoning_effort'] = request.body.reasoning_effort;
974- }
975970 } else if (request.body.chat_completion_source === CHAT_COMPLETION_SOURCES.OPENROUTER) {
976971 apiUrl = 'https://openrouter.ai/api/v1';
977972 apiKey = readSecret(request.user.directories, SECRET_KEYS.OPENROUTER);
@@ -1027,11 +1022,6 @@ router.post('/generate', jsonParser, function (request, response) {
10271022 bodyParams.logprobs = true;
10281023 }
10291024
1030- // A few of OpenAIs reasoning models support reasoning effort
1031- if (['o1', 'o3-mini', 'o3-mini-2025-01-31'].includes(request.body.model)) {
1032- bodyParams['reasoning_effort'] = request.body.reasoning_effort;
1033- }
1034-
10351025 mergeObjectWithYaml(bodyParams, request.body.custom_include_body);
10361026 mergeObjectWithYaml(headers, request.body.custom_include_headers);
10371027
@@ -1073,6 +1063,13 @@ router.post('/generate', jsonParser, function (request, response) {
10731063 return response.status(400).send({ error: true });
10741064 }
10751065
1066+ // A few of OpenAIs reasoning models support reasoning effort
1067+ if ([CHAT_COMPLETION_SOURCES.CUSTOM, CHAT_COMPLETION_SOURCES.OPENAI].includes(request.body.chat_completion_source)) {
1068+ if (['o1', 'o3-mini', 'o3-mini-2025-01-31'].includes(request.body.model)) {
1069+ bodyParams['reasoning_effort'] = request.body.reasoning_effort;
1070+ }
1071+ }
1072+
10761073 if (!apiKey && !request.body.reverse_proxy && request.body.chat_completion_source !== CHAT_COMPLETION_SOURCES.CUSTOM) {
10771074 console.warn('OpenAI API key is missing.');
10781075 return response.status(400).send({ error: true });