Perplexity: Add reasoning model, remove deprecated models
| @@ -3227,32 +3227,19 @@ | |||
| 3227 | <h4 data-i18n="Perplexity Model">Perplexity Model</h4> | 3227 | <h4 data-i18n="Perplexity Model">Perplexity Model</h4> |
| 3228 | <select id="model_perplexity_select"> | 3228 | <select id="model_perplexity_select"> |
| 3229 | <optgroup label="Perplexity Sonar Models"> | 3229 | <optgroup label="Perplexity Sonar Models"> |
| 3230 | <option value="sonar">sonar</option> | ||
| 3231 | <option value="sonar-pro">sonar-pro</option> | ||
| 3232 | <option value="sonar-reasoning">sonar-reasoning</option> | ||
| 3233 | </optgroup> | ||
| 3234 | <optgroup label="Deprecated Models"> | ||
| 3235 | <!-- These are scheduled for deprecation after 2/22/2025 --> | ||
| 3230 | <option value="llama-3.1-sonar-small-128k-online">llama-3.1-sonar-small-128k-online</option> | 3236 | <option value="llama-3.1-sonar-small-128k-online">llama-3.1-sonar-small-128k-online</option> |
| 3231 | <option value="llama-3.1-sonar-large-128k-online">llama-3.1-sonar-large-128k-online</option> | 3237 | <option value="llama-3.1-sonar-large-128k-online">llama-3.1-sonar-large-128k-online</option> |
| 3232 | <option value="llama-3.1-sonar-huge-128k-online">llama-3.1-sonar-huge-128k-online</option> | 3238 | <option value="llama-3.1-sonar-huge-128k-online">llama-3.1-sonar-huge-128k-online</option> |
| 3233 | </optgroup> | 3239 | <!-- These are not listed on the site anymore --> |
| 3234 | <optgroup label="Perplexity Chat Models"> | ||
| 3235 | <option value="llama-3.1-sonar-small-128k-chat">llama-3.1-sonar-small-128k-chat</option> | 3240 | <option value="llama-3.1-sonar-small-128k-chat">llama-3.1-sonar-small-128k-chat</option> |
| 3236 | <option value="llama-3.1-sonar-large-128k-chat">llama-3.1-sonar-large-128k-chat</option> | 3241 | <option value="llama-3.1-sonar-large-128k-chat">llama-3.1-sonar-large-128k-chat</option> |
| 3237 | </optgroup> | 3242 | </optgroup> |
| 3238 | <optgroup label="Open-Source Models"> | ||
| 3239 | <option value="llama-3.1-8b-instruct">llama-3.1-8b-instruct</option> | ||
| 3240 | <option value="llama-3.1-70b-instruct">llama-3.1-70b-instruct</option> | ||
| 3241 | </optgroup> | ||
| 3242 | <optgroup label="Deprecated Models"> | ||
| 3243 | <option value="llama-3-sonar-small-32k-chat">llama-3-sonar-small-32k-chat</option> | ||
| 3244 | <option value="llama-3-sonar-small-32k-online">llama-3-sonar-small-32k-online</option> | ||
| 3245 | <option value="llama-3-sonar-large-32k-chat">llama-3-sonar-large-32k-chat</option> | ||
| 3246 | <option value="llama-3-sonar-large-32k-online">llama-3-sonar-large-32k-online</option> | ||
| 3247 | <option value="sonar-small-chat">sonar-small-chat</option> | ||
| 3248 | <option value="sonar-small-online">sonar-small-online</option> | ||
| 3249 | <option value="sonar-medium-chat">sonar-medium-chat</option> | ||
| 3250 | <option value="sonar-medium-online">sonar-medium-online</option> | ||
| 3251 | <option value="llama-3-8b-instruct">llama-3-8b-instruct</option> | ||
| 3252 | <option value="llama-3-70b-instruct">llama-3-70b-instruct</option> | ||
| 3253 | <option value="mistral-7b-instruct">mistral-7b-instruct (v0.2)</option> | ||
| 3254 | <option value="mixtral-8x7b-instruct">mixtral-8x7b-instruct</option> | ||
| 3255 | </optgroup> | ||
| 3256 | </select> | 3243 | </select> |
| 3257 | </div> | 3244 | </div> |
| 3258 | <form id="cohere_form" data-source="cohere" action="javascript:void(null);" method="post" enctype="multipart/form-data"> | 3245 | <form id="cohere_form" data-source="cohere" action="javascript:void(null);" method="post" enctype="multipart/form-data"> |
| @@ -258,7 +258,7 @@ const default_settings = { | |||
| 258 | ai21_model: 'jamba-1.5-large', | 258 | ai21_model: 'jamba-1.5-large', |
| 259 | mistralai_model: 'mistral-large-latest', | 259 | mistralai_model: 'mistral-large-latest', |
| 260 | cohere_model: 'command-r-plus', | 260 | cohere_model: 'command-r-plus', |
| 261 | perplexity_model: 'llama-3.1-70b-instruct', | 261 | perplexity_model: 'sonar-pro', |
| 262 | groq_model: 'llama-3.1-70b-versatile', | 262 | groq_model: 'llama-3.1-70b-versatile', |
| 263 | nanogpt_model: 'gpt-4o-mini', | 263 | nanogpt_model: 'gpt-4o-mini', |
| 264 | zerooneai_model: 'yi-large', | 264 | zerooneai_model: 'yi-large', |
| @@ -337,7 +337,7 @@ const oai_settings = { | |||
| 337 | ai21_model: 'jamba-1.5-large', | 337 | ai21_model: 'jamba-1.5-large', |
| 338 | mistralai_model: 'mistral-large-latest', | 338 | mistralai_model: 'mistral-large-latest', |
| 339 | cohere_model: 'command-r-plus', | 339 | cohere_model: 'command-r-plus', |
| 340 | perplexity_model: 'llama-3.1-70b-instruct', | 340 | perplexity_model: 'sonar-pro', |
| 341 | groq_model: 'llama-3.1-70b-versatile', | 341 | groq_model: 'llama-3.1-70b-versatile', |
| 342 | nanogpt_model: 'gpt-4o-mini', | 342 | nanogpt_model: 'gpt-4o-mini', |
| 343 | zerooneai_model: 'yi-large', | 343 | zerooneai_model: 'yi-large', |
| @@ -4380,28 +4380,19 @@ async function onModelChange() { | |||
| 4380 | if (oai_settings.max_context_unlocked) { | 4380 | if (oai_settings.max_context_unlocked) { |
| 4381 | $('#openai_max_context').attr('max', unlocked_max); | 4381 | $('#openai_max_context').attr('max', unlocked_max); |
| 4382 | } | 4382 | } |
| 4383 | else if (['sonar', 'sonar-reasoning'].includes(oai_settings.perplexity_model)) { | ||
| 4384 | $('#openai_max_context').attr('max', 127000); | ||
| 4385 | } | ||
| 4386 | else if (['sonar-pro'].includes(oai_settings.perplexity_model)) { | ||
| 4387 | $('#openai_max_context').attr('max', 200000); | ||
| 4388 | } | ||
| 4383 | else if (oai_settings.perplexity_model.includes('llama-3.1')) { | 4389 | else if (oai_settings.perplexity_model.includes('llama-3.1')) { |
| 4384 | const isOnline = oai_settings.perplexity_model.includes('online'); | 4390 | const isOnline = oai_settings.perplexity_model.includes('online'); |
| 4385 | const contextSize = isOnline ? 128 * 1024 - 4000 : 128 * 1024; | 4391 | const contextSize = isOnline ? 128 * 1024 - 4000 : 128 * 1024; |
| 4386 | $('#openai_max_context').attr('max', contextSize); | 4392 | $('#openai_max_context').attr('max', contextSize); |
| 4387 | } | 4393 | } |
| 4388 | else if (['llama-3-sonar-small-32k-chat', 'llama-3-sonar-large-32k-chat'].includes(oai_settings.perplexity_model)) { | ||
| 4389 | $('#openai_max_context').attr('max', max_32k); | ||
| 4390 | } | ||
| 4391 | else if (['llama-3-sonar-small-32k-online', 'llama-3-sonar-large-32k-online'].includes(oai_settings.perplexity_model)) { | ||
| 4392 | $('#openai_max_context').attr('max', 28000); | ||
| 4393 | } | ||
| 4394 | else if (['sonar-small-chat', 'sonar-medium-chat', 'codellama-70b-instruct', 'mistral-7b-instruct', 'mixtral-8x7b-instruct', 'mixtral-8x22b-instruct'].includes(oai_settings.perplexity_model)) { | ||
| 4395 | $('#openai_max_context').attr('max', max_16k); | ||
| 4396 | } | ||
| 4397 | else if (['llama-3-8b-instruct', 'llama-3-70b-instruct'].includes(oai_settings.perplexity_model)) { | ||
| 4398 | $('#openai_max_context').attr('max', max_8k); | ||
| 4399 | } | ||
| 4400 | else if (['sonar-small-online', 'sonar-medium-online'].includes(oai_settings.perplexity_model)) { | ||
| 4401 | $('#openai_max_context').attr('max', 12000); | ||
| 4402 | } | ||
| 4403 | else { | 4394 | else { |
| 4404 | $('#openai_max_context').attr('max', max_4k); | 4395 | $('#openai_max_context').attr('max', max_128k); |
| 4405 | } | 4396 | } |
| 4406 | oai_settings.openai_max_context = Math.min(Number($('#openai_max_context').attr('max')), oai_settings.openai_max_context); | 4397 | oai_settings.openai_max_context = Math.min(Number($('#openai_max_context').attr('max')), oai_settings.openai_max_context); |
| 4407 | $('#openai_max_context').val(oai_settings.openai_max_context).trigger('input'); | 4398 | $('#openai_max_context').val(oai_settings.openai_max_context).trigger('input'); |
| @@ -679,6 +679,9 @@ export function getTokenizerModel() { | |||
| 679 | } | 679 | } |
| 680 | 680 | ||
| 681 | if (oai_settings.chat_completion_source === chat_completion_sources.PERPLEXITY) { | 681 | if (oai_settings.chat_completion_source === chat_completion_sources.PERPLEXITY) { |
| 682 | if (oai_settings.perplexity_model.includes('sonar-reasoning')) { | ||
| 683 | return deepseekTokenizer; | ||
| 684 | } | ||
| 682 | if (oai_settings.perplexity_model.includes('llama-3') || oai_settings.perplexity_model.includes('llama3')) { | 685 | if (oai_settings.perplexity_model.includes('llama-3') || oai_settings.perplexity_model.includes('llama3')) { |
| 683 | return llama3Tokenizer; | 686 | return llama3Tokenizer; |
| 684 | } | 687 | } |