diff --git a/src-tauri/tauri.conf.json b/src-tauri/tauri.conf.json
index a3eebe43..ce1976ab 100644
--- a/src-tauri/tauri.conf.json
+++ b/src-tauri/tauri.conf.json
@@ -8,7 +8,7 @@
},
"package": {
"productName": "RisuAI",
- "version": "1.79.3"
+ "version": "1.80.0"
},
"tauri": {
"allowlist": {
diff --git a/src/lang/en.ts b/src/lang/en.ts
index 17a47901..e1017542 100644
--- a/src/lang/en.ts
+++ b/src/lang/en.ts
@@ -12,7 +12,8 @@ export const languageEnglish = {
"description": "Character Description",
'personaPrompt':'Persona Prompt',
'plain': "Plain Prompt",
- 'memory': "Supa/HypaMemory"
+ 'memory': "Supa/HypaMemory",
+ 'postEverything': "End-Injected Prompts",
},
errors:{
toomuchtoken: 'Error: The minimum required token is greater than the Max Context Size.',
diff --git a/src/lib/UI/ProomptItem.svelte b/src/lib/UI/ProomptItem.svelte
index 3316d515..d862fcca 100644
--- a/src/lib/UI/ProomptItem.svelte
+++ b/src/lib/UI/ProomptItem.svelte
@@ -42,6 +42,7 @@
{language.formating.authorNote}
{language.formating.lorebook}
{language.formating.memory}
+ {language.formating.postEverything}
{#if $DataBase.proomptSettings.customChainOfThought}
{language.cot}
{/if}
diff --git a/src/ts/process/files/multisend.ts b/src/ts/process/files/multisend.ts
index 66a30010..ffa38936 100644
--- a/src/ts/process/files/multisend.ts
+++ b/src/ts/process/files/multisend.ts
@@ -156,6 +156,28 @@ async function sendTxtFile(arg:sendFileArg) {
return Buffer.from(`\n${message}\n\n`).toString('base64')
}
+async function sendXMLFile(arg:sendFileArg) {
+ const hypa = new HypaProcesser('MiniLM')
+ let nodeTexts:string[] = []
+ const parser = new DOMParser();
+ const xmlDoc = parser.parseFromString(arg.file, "text/xml");
+ const nodes = xmlDoc.getElementsByTagName('*')
+ for(const node of nodes){
+ nodeTexts.push(node.textContent)
+ }
+ hypa.addText(nodeTexts)
+ const result = await hypa.similaritySearch(arg.query)
+ let message = ''
+ for(let i = 0; i5){
+ break
+ }
+ }
+ console.log(message)
+ return Buffer.from(`\n${message}\n\n`).toString('base64')
+}
+
type postFileResult = postFileResultImage | postFileResultVoid | postFileResultText
type postFileResultImage = {
@@ -211,6 +233,16 @@ export async function postChatFile(query:string):Promise{
name: file.name
}
}
+ case 'xml':{
+ return {
+ type: 'text',
+ data: await sendXMLFile({
+ file: BufferToText(file.data),
+ query: query
+ }),
+ name: file.name
+ }
+ }
case 'jpg':
case 'jpeg':
case 'png':
diff --git a/src/ts/process/index.ts b/src/ts/process/index.ts
index 70c94cd8..da82f0a6 100644
--- a/src/ts/process/index.ts
+++ b/src/ts/process/index.ts
@@ -182,9 +182,19 @@ export async function sendChat(chatProcessIndex = -1,arg:{chatAdditonalTokens?:n
let promptTemplate = cloneDeep(db.promptTemplate)
const usingPromptTemplate = !!promptTemplate
if(promptTemplate){
- promptTemplate.push({
- type: 'postEverything'
- })
+ let hasPostEverything = false
+ for(const card of promptTemplate){
+ if(card.type === 'postEverything'){
+ hasPostEverything = true
+ break
+ }
+ }
+
+ if(!hasPostEverything){
+ promptTemplate.push({
+ type: 'postEverything'
+ })
+ }
}
if(currentChar.utilityBot && (!(usingPromptTemplate && db.proomptSettings.utilOverride))){
promptTemplate = [
diff --git a/src/ts/storage/database.ts b/src/ts/storage/database.ts
index 2031171e..0c65741a 100644
--- a/src/ts/storage/database.ts
+++ b/src/ts/storage/database.ts
@@ -15,7 +15,7 @@ import type { OobaChatCompletionRequestParams } from '../model/ooba';
export const DataBase = writable({} as any as Database)
export const loadedStore = writable(false)
-export let appVer = "1.79.3"
+export let appVer = "1.80.0"
export let webAppSubVer = ''
export function setDatabase(data:Database){
diff --git a/version.json b/version.json
index c5664685..be03c5e8 100644
--- a/version.json
+++ b/version.json
@@ -1 +1 @@
-{"version":"1.79.3"}
\ No newline at end of file
+{"version":"1.80.0"}
\ No newline at end of file