Merge branch 'staging' into welcome-screen
| @@ -28,6 +28,7 @@ import { ARGUMENT_TYPE, SlashCommandArgument, SlashCommandNamedArgument } from ' | |||
| 28 | import { MacrosParser } from '../../macros.js'; | 28 | import { MacrosParser } from '../../macros.js'; |
| 29 | import { countWebLlmTokens, generateWebLlmChatPrompt, getWebLlmContextSize, isWebLlmSupported } from '../shared.js'; | 29 | import { countWebLlmTokens, generateWebLlmChatPrompt, getWebLlmContextSize, isWebLlmSupported } from '../shared.js'; |
| 30 | import { commonEnumProviders } from '../../slash-commands/SlashCommandCommonEnumsProvider.js'; | 30 | import { commonEnumProviders } from '../../slash-commands/SlashCommandCommonEnumsProvider.js'; |
| 31 | import { removeReasoningFromString } from '../../reasoning.js'; | ||
| 31 | export { MODULE_NAME }; | 32 | export { MODULE_NAME }; |
| 32 | 33 | ||
| 33 | const MODULE_NAME = '1_memory'; | 34 | const MODULE_NAME = '1_memory'; |
| @@ -504,7 +505,7 @@ async function summarizeCallback(args, text) { | |||
| 504 | case summary_sources.extras: | 505 | case summary_sources.extras: |
| 505 | return await callExtrasSummarizeAPI(text); | 506 | return await callExtrasSummarizeAPI(text); |
| 506 | case summary_sources.main: | 507 | case summary_sources.main: |
| 507 | return await generateRaw(text, '', false, false, prompt, extension_settings.memory.overrideResponseLength); | 508 | return removeReasoningFromString(await generateRaw(text, '', false, false, prompt, extension_settings.memory.overrideResponseLength)); |
| 508 | case summary_sources.webllm: { | 509 | case summary_sources.webllm: { |
| 509 | const messages = [{ role: 'system', content: prompt }, { role: 'user', content: text }].filter(m => m.content); | 510 | const messages = [{ role: 'system', content: prompt }, { role: 'user', content: text }].filter(m => m.content); |
| 510 | const params = extension_settings.memory.overrideResponseLength > 0 ? { max_tokens: extension_settings.memory.overrideResponseLength } : {}; | 511 | const params = extension_settings.memory.overrideResponseLength > 0 ? { max_tokens: extension_settings.memory.overrideResponseLength } : {}; |
| @@ -699,7 +700,8 @@ async function summarizeChatMain(context, force, skipWIAN) { | |||
| 699 | return null; | 700 | return null; |
| 700 | } | 701 | } |
| 701 | 702 | ||
| 702 | summary = await generateRaw(rawPrompt, '', false, false, prompt, extension_settings.memory.overrideResponseLength); | 703 | const rawSummary = await generateRaw(rawPrompt, '', false, false, prompt, extension_settings.memory.overrideResponseLength); |
| 704 | summary = removeReasoningFromString(rawSummary); | ||
| 703 | index = lastUsedIndex; | 705 | index = lastUsedIndex; |
| 704 | } finally { | 706 | } finally { |
| 705 | inApiCall = false; | 707 | inApiCall = false; |
| @@ -36,6 +36,7 @@ import { slashCommandReturnHelper } from '../../slash-commands/SlashCommandRetur | |||
| 36 | import { callGenericPopup, POPUP_RESULT, POPUP_TYPE } from '../../popup.js'; | 36 | import { callGenericPopup, POPUP_RESULT, POPUP_TYPE } from '../../popup.js'; |
| 37 | import { generateWebLlmChatPrompt, isWebLlmSupported } from '../shared.js'; | 37 | import { generateWebLlmChatPrompt, isWebLlmSupported } from '../shared.js'; |
| 38 | import { WebLlmVectorProvider } from './webllm.js'; | 38 | import { WebLlmVectorProvider } from './webllm.js'; |
| 39 | import { removeReasoningFromString } from '../../reasoning.js'; | ||
| 39 | 40 | ||
| 40 | /** | 41 | /** |
| 41 | * @typedef {object} HashedMessage | 42 | * @typedef {object} HashedMessage |
| @@ -260,7 +261,7 @@ async function summarizeExtra(element) { | |||
| 260 | * @returns {Promise<boolean>} Sucess | 261 | * @returns {Promise<boolean>} Sucess |
| 261 | */ | 262 | */ |
| 262 | async function summarizeMain(element) { | 263 | async function summarizeMain(element) { |
| 263 | element.text = await generateRaw(element.text, '', false, false, settings.summary_prompt); | 264 | element.text = removeReasoningFromString(await generateRaw(element.text, '', false, false, settings.summary_prompt)); |
| 264 | return true; | 265 | return true; |
| 265 | } | 266 | } |
| 266 | 267 | ||
| @@ -765,7 +765,10 @@ async function populationInjectionPrompts(prompts, messages) { | |||
| 765 | const wrap = false; | 765 | const wrap = false; |
| 766 | 766 | ||
| 767 | // Group prompts by priority | 767 | // Group prompts by priority |
| 768 | const orderGroups = {}; | 768 | const extensionPromptsOrder = '0'; |
| 769 | const orderGroups = { | ||
| 770 | [extensionPromptsOrder]: [], | ||
| 771 | }; | ||
| 769 | for (const prompt of depthPrompts) { | 772 | for (const prompt of depthPrompts) { |
| 770 | const order = prompt.injection_order || 0; | 773 | const order = prompt.injection_order || 0; |
| 771 | if (!orderGroups[order]) { | 774 | if (!orderGroups[order]) { |
| @@ -788,7 +791,9 @@ async function populationInjectionPrompts(prompts, messages) { | |||
| 788 | .join(separator); | 791 | .join(separator); |
| 789 | 792 | ||
| 790 | // Get extension prompt | 793 | // Get extension prompt |
| 791 | const extensionPrompt = await getExtensionPrompt(extension_prompt_types.IN_CHAT, i, separator, roleTypes[role], wrap); | 794 | const extensionPrompt = order === extensionPromptsOrder |
| 795 | ? await getExtensionPrompt(extension_prompt_types.IN_CHAT, i, separator, roleTypes[role], wrap) | ||
| 796 | : ''; | ||
| 792 | const jointPrompt = [rolePrompts, extensionPrompt].filter(x => x).map(x => x.trim()).join(separator); | 797 | const jointPrompt = [rolePrompts, extensionPrompt].filter(x => x).map(x => x.trim()).join(separator); |
| 793 | 798 | ||
| 794 | if (jointPrompt && jointPrompt.length) { | 799 | if (jointPrompt && jointPrompt.length) { |
| @@ -824,7 +824,8 @@ pollinations.post('/generate', async (request, response) => { | |||
| 824 | height: String(request.body.height ?? 1024), | 824 | height: String(request.body.height ?? 1024), |
| 825 | nologo: String(true), | 825 | nologo: String(true), |
| 826 | nofeed: String(true), | 826 | nofeed: String(true), |
| 827 | referer: 'sillytavern', | 827 | private: String(true), |
| 828 | referrer: 'sillytavern', | ||
| 828 | }); | 829 | }); |
| 829 | promptUrl.search = params.toString(); | 830 | promptUrl.search = params.toString(); |
| 830 | 831 | ||