diff --git a/src/lib/ChatScreens/Chat.svelte b/src/lib/ChatScreens/Chat.svelte
index 5084df25..9d973bce 100644
--- a/src/lib/ChatScreens/Chat.svelte
+++ b/src/lib/ChatScreens/Chat.svelte
@@ -60,7 +60,7 @@
}
function displaya(message:string){
- msgDisplay = risuChatParser(message, {chara: name, chatID: idx, rmVar: true})
+ msgDisplay = risuChatParser(message, {chara: name, chatID: idx, rmVar: true, visualize: true})
}
const setStatusMessage = (message:string, timeout:number = 0)=>{
diff --git a/src/lib/Setting/Pages/AdvancedSettings.svelte b/src/lib/Setting/Pages/AdvancedSettings.svelte
index d6f6bdec..5d26f02f 100644
--- a/src/lib/Setting/Pages/AdvancedSettings.svelte
+++ b/src/lib/Setting/Pages/AdvancedSettings.svelte
@@ -89,6 +89,11 @@
+
+
+
+
+
{
// access code is "tendo"
diff --git a/src/ts/parser.ts b/src/ts/parser.ts
index 79f47ecd..43a2f716 100644
--- a/src/ts/parser.ts
+++ b/src/ts/parser.ts
@@ -766,10 +766,12 @@ export function risuChatParser(da:string, arg:{
var?:{[key:string]:string}
tokenizeAccurate?:boolean
consistantChar?:boolean
+ visualize?:boolean
} = {}):string{
const chatID = arg.chatID ?? -1
const db = arg.db ?? get(DataBase)
const aChara = arg.chara
+ const visualize = arg.visualize ?? false
let chara:character|string = null
if(aChara){
@@ -880,6 +882,33 @@ export function risuChatParser(da:string, arg:{
}
break
}
+ case 'Thoughts':{
+ if(!visualize){
+ nested[0] += `<${dat}>`
+ break
+ }
+ if(!commentMode){
+ commentMode = true
+ commentLatest = nested.map((f) => f)
+ if(commentLatest[0].endsWith('\n')){
+ commentLatest[0] = commentLatest[0].substring(0, commentLatest[0].length - 1)
+ }
+ commentV = new Uint8Array(v)
+ }
+ break
+ }
+ case '/Thoughts':{
+ if(!visualize){
+ nested[0] += `<${dat}>`
+ break
+ }
+ if(commentMode){
+ nested = commentLatest
+ v = commentV
+ commentMode = false
+ }
+ break
+ }
default:{
const mc = (pureMode) ? null : smMatcher(dat, matcherObj)
nested[0] += mc ?? `<${dat}>`
diff --git a/src/ts/process/index.ts b/src/ts/process/index.ts
index 7d8946f5..56683414 100644
--- a/src/ts/process/index.ts
+++ b/src/ts/process/index.ts
@@ -259,6 +259,13 @@ export async function sendChat(chatProcessIndex = -1,arg:{chatAdditonalTokens?:n
})
}
+ if(db.chainOfThought){
+ unformated.postEverything.push({
+ role: 'system',
+ content: `before responding everything, Think step by step how would you respond inside xml tag.`
+ })
+ }
+
{
let description = risuChatParser((db.promptPreprocess ? db.descriptionPrefix: '') + currentChar.desc, {chara: currentChar})
diff --git a/src/ts/storage/database.ts b/src/ts/storage/database.ts
index 17d436e4..3613d15f 100644
--- a/src/ts/storage/database.ts
+++ b/src/ts/storage/database.ts
@@ -560,6 +560,7 @@ export interface Database{
projectId: string
}
mistralKey?:string
+ chainOfThought?:boolean
}
export interface customscript{