feat: [Electron Hub] Added Text-to-Speech, Prompt cost, Sort/Group/Se… (#4528)

* feat: [Electron Hub] Added Text-to-Speech, Prompt cost, Sort/Group/Search for model list

* feat: [Electron Hub] Added Text-to-Speech, Prompt cost, Sort/Group/Search for model list

* Update public/scripts/extensions/tts/electronhub.js

Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>

* Update public/scripts/openai.js

Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>

* Update public/scripts/openai.js

Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>

* feat: [Electron Hub] Added Text-to-Speech, Prompt cost, Sort/Group/Search for model list

* feat: [Electron Hub] Show model capabilities

* Support logit_bias

* Small tweaks

* Added tokenizer selection logic

* Added tokenizer selection logic

* Fixed ESLint

* Small tweaks

* Split localization tags

* Fix formatting

* Refactor icons, add tool icon

* Support newer oai model tokenizers

---------

Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
Co-authored-by: Cohee <18619528+Cohee1207@users.noreply.github.com>
This commit is contained in:
Ngo Dinh Gia Bao
2025-09-16 15:22:27 -04:00
committed by GitHub
parent eec837cee6
commit 07a4007363
23 changed files with 827 additions and 32 deletions
+51
View File
@@ -648,6 +648,57 @@ export function getTokenizerModel() {
}
}
if (oai_settings.chat_completion_source == chat_completion_sources.ELECTRONHUB && oai_settings.electronhub_model) {
if (oai_settings.electronhub_model.includes('gpt-4o') || oai_settings.electronhub_model.includes('gpt-5')) {
return gpt4oTokenizer;
}
else if (oai_settings.electronhub_model.includes('gpt-4.1') || oai_settings.electronhub_model.includes('gpt-4.5')) {
return gpt4oTokenizer;
}
else if (oai_settings.electronhub_model.includes('gpt-4')) {
return gpt4Tokenizer;
}
else if (oai_settings.electronhub_model.includes('gpt-3.5-turbo')) {
return turboTokenizer;
}
else if (oai_settings.electronhub_model.includes('claude')) {
return claudeTokenizer;
}
else if (oai_settings.electronhub_model.includes('jamba')) {
return jambaTokenizer;
}
else if (oai_settings.electronhub_model.includes('deepseek') || oai_settings.electronhub_model.includes('sonar-reasoning') || oai_settings.electronhub_model.includes('r1')) {
return deepseekTokenizer;
}
else if (oai_settings.electronhub_model.includes('qwen')) {
return qwen2Tokenizer;
}
else if (oai_settings.electronhub_model.includes('gemma')) {
return gemmaTokenizer;
}
else if (oai_settings.electronhub_model.includes('mistral')) {
return mistralTokenizer;
}
else if (oai_settings.electronhub_model.includes('yi')) {
return yiTokenizer;
}
else if (oai_settings.electronhub_model.includes('llama3') || oai_settings.electronhub_model.includes('llama-3') || oai_settings.electronhub_model.startsWith('l3')) {
return llama3Tokenizer;
}
else if (oai_settings.electronhub_model.includes('llama')) {
return llamaTokenizer;
}
else if (oai_settings.electronhub_model.includes('command-a')) {
return commandATokenizer;
}
else if (oai_settings.electronhub_model.includes('command-r')) {
return commandRTokenizer;
}
else if (oai_settings.electronhub_model.includes('nemo')) {
return nemoTokenizer;
}
}
if (oai_settings.chat_completion_source == chat_completion_sources.COHERE) {
if (oai_settings.cohere_model.includes('command-a')) {
return commandATokenizer;