Expose "Allow fallback providers" for OpenRouter

This commit is contained in:
Cohee
2024-07-19 23:34:16 +03:00
parent d8809238a7
commit 5f2a73ac9f
6 changed files with 33 additions and 16 deletions

View File

@@ -278,6 +278,7 @@ const default_settings = {
openrouter_group_models: false,
openrouter_sort_models: 'alphabetically',
openrouter_providers: [],
openrouter_allow_fallbacks: true,
jailbreak_system: false,
reverse_proxy: '',
chat_completion_source: chat_completion_sources.OPENAI,
@@ -357,6 +358,7 @@ const oai_settings = {
openrouter_group_models: false,
openrouter_sort_models: 'alphabetically',
openrouter_providers: [],
openrouter_allow_fallbacks: true,
jailbreak_system: false,
reverse_proxy: '',
chat_completion_source: chat_completion_sources.OPENAI,
@@ -1881,6 +1883,7 @@ async function sendOpenAIRequest(type, messages, signal) {
generate_data['top_a'] = Number(oai_settings.top_a_openai);
generate_data['use_fallback'] = oai_settings.openrouter_use_fallback;
generate_data['provider'] = oai_settings.openrouter_providers;
generate_data['allow_fallbacks'] = oai_settings.openrouter_allow_fallbacks;
if (isTextCompletion) {
generate_data['stop'] = getStoppingStrings(isImpersonate, isContinue);
@@ -3001,6 +3004,7 @@ function loadOpenAISettings(data, settings) {
oai_settings.openrouter_sort_models = settings.openrouter_sort_models ?? default_settings.openrouter_sort_models;
oai_settings.openrouter_use_fallback = settings.openrouter_use_fallback ?? default_settings.openrouter_use_fallback;
oai_settings.openrouter_force_instruct = settings.openrouter_force_instruct ?? default_settings.openrouter_force_instruct;
oai_settings.openrouter_allow_fallbacks = settings.openrouter_allow_fallbacks ?? default_settings.openrouter_allow_fallbacks;
oai_settings.ai21_model = settings.ai21_model ?? default_settings.ai21_model;
oai_settings.mistralai_model = settings.mistralai_model ?? default_settings.mistralai_model;
oai_settings.cohere_model = settings.cohere_model ?? default_settings.cohere_model;
@@ -3105,6 +3109,7 @@ function loadOpenAISettings(data, settings) {
$('#openrouter_use_fallback').prop('checked', oai_settings.openrouter_use_fallback);
$('#openrouter_force_instruct').prop('checked', oai_settings.openrouter_force_instruct);
$('#openrouter_group_models').prop('checked', oai_settings.openrouter_group_models);
$('#openrouter_allow_fallbacks').prop('checked', oai_settings.openrouter_allow_fallbacks);
$('#openrouter_providers_chat').val(oai_settings.openrouter_providers).trigger('change');
$('#squash_system_messages').prop('checked', oai_settings.squash_system_messages);
$('#continue_prefill').prop('checked', oai_settings.continue_prefill);
@@ -3334,6 +3339,7 @@ async function saveOpenAIPreset(name, settings, triggerUi = true) {
openrouter_group_models: settings.openrouter_group_models,
openrouter_sort_models: settings.openrouter_sort_models,
openrouter_providers: settings.openrouter_providers,
openrouter_allow_fallbacks: settings.openrouter_allow_fallbacks,
ai21_model: settings.ai21_model,
mistralai_model: settings.mistralai_model,
cohere_model: settings.cohere_model,
@@ -3770,6 +3776,7 @@ function onSettingsPresetChange() {
openrouter_group_models: ['#openrouter_group_models', 'openrouter_group_models', false],
openrouter_sort_models: ['#openrouter_sort_models', 'openrouter_sort_models', false],
openrouter_providers: ['#openrouter_providers_chat', 'openrouter_providers', false],
openrouter_allow_fallbacks: ['#openrouter_allow_fallbacks', 'openrouter_allow_fallbacks', true],
ai21_model: ['#model_ai21_select', 'ai21_model', false],
mistralai_model: ['#model_mistralai_select', 'mistralai_model', false],
cohere_model: ['#model_cohere_select', 'cohere_model', false],
@@ -5102,6 +5109,11 @@ $(document).ready(async function () {
saveSettingsDebounced();
});
$('#openrouter_allow_fallbacks').on('input', function () {
oai_settings.openrouter_allow_fallbacks = !!$(this).prop('checked');
saveSettingsDebounced();
});
$('#squash_system_messages').on('input', function () {
oai_settings.squash_system_messages = !!$(this).prop('checked');
saveSettingsDebounced();