Fix OpenRouter compatibility for OpenAI models (#4917) * Fix OpenRouter compatibility for OpenAI models * Don't disable o1 streaming on OpenRouter * Fix OpenRouter compatibility for o1 model handling --------- Co-authored-by: Cohee <18619528+Cohee1207@users.noreply.github.com>

d46fd60a57fb109c7888b47d9d8b21ea8d3a7f23

equal-l2 <eng.equall2@gmail.com>

Signed
1 files changed, +4 -3Ignore whitespace
public/scripts/openai.js+4 -3
@@ -2742,7 +2742,8 @@ export async function createGenerationParameters(settings, model, type, messages
2742 generate_data['seed'] = settings.seed;2742 generate_data['seed'] = settings.seed;
2743 }2743 }
27442744
2745 if (gptSources.includes(settings.chat_completion_source) && /^(o1|o3|o4)/.test(model)) {2745 if ([chat_completion_sources.OPENAI, chat_completion_sources.AZURE_OPENAI].includes(settings.chat_completion_source) && /^(o1|o3|o4)/.test(model) ||
2746 (chat_completion_sources.OPENROUTER === settings.chat_completion_source && /^openai\/(o1|o3|o4)/.test(model))) {
2746 generate_data.max_completion_tokens = generate_data.max_tokens;2747 generate_data.max_completion_tokens = generate_data.max_tokens;
2747 delete generate_data.max_tokens;2748 delete generate_data.max_tokens;
2748 delete generate_data.logprobs;2749 delete generate_data.logprobs;
@@ -2753,7 +2754,7 @@ export async function createGenerationParameters(settings, model, type, messages
2753 delete generate_data.top_p;2754 delete generate_data.top_p;
2754 delete generate_data.frequency_penalty;2755 delete generate_data.frequency_penalty;
2755 delete generate_data.presence_penalty;2756 delete generate_data.presence_penalty;
2756 if (model.startsWith('o1')) {2757 if (/^(openai\/)?(o1)/.test(model)) {
2757 generate_data.messages.forEach((msg) => {2758 generate_data.messages.forEach((msg) => {
2758 if (msg.role === 'system') {2759 if (msg.role === 'system') {
2759 msg.role = 'user';2760 msg.role = 'user';
@@ -2765,7 +2766,7 @@ export async function createGenerationParameters(settings, model, type, messages
2765 }2766 }
2766 }2767 }
27672768
2768 if (gptSources.includes(settings.chat_completion_source) && /^gpt-5/.test(model)) {2769 if (gptSources.includes(settings.chat_completion_source) && /gpt-5/.test(model)) {
2769 generate_data.max_completion_tokens = generate_data.max_tokens;2770 generate_data.max_completion_tokens = generate_data.max_tokens;
2770 delete generate_data.max_tokens;2771 delete generate_data.max_tokens;
2771 delete generate_data.logprobs;2772 delete generate_data.logprobs;