diff --git a/src/lang/en.ts b/src/lang/en.ts
index 3f72a604..058171bc 100644
--- a/src/lang/en.ts
+++ b/src/lang/en.ts
@@ -577,4 +577,6 @@ export const languageEnglish = {
autoContinueChat: "Anti-Incomplete Response (Auto Continue)",
removeIncompleteResponse: "Remove Incomplete Sentences",
tokenizer: "Tokenizer",
+ chatFormating: "Chat Formating",
+ useInstructPrompt: "Use Instruction Prompt",
}
\ No newline at end of file
diff --git a/src/lib/Setting/Pages/ChatFormatSettings.svelte b/src/lib/Setting/Pages/ChatFormatSettings.svelte
index 4b83f172..f8e84ac5 100644
--- a/src/lib/Setting/Pages/ChatFormatSettings.svelte
+++ b/src/lib/Setting/Pages/ChatFormatSettings.svelte
@@ -3,9 +3,10 @@
import SelectInput from "src/lib/UI/GUI/SelectInput.svelte";
import OptionInput from "src/lib/UI/GUI/OptionInput.svelte";
import { DataBase } from "src/ts/storage/database";
+ import { language } from "src/lang";
-Chat Formating
+{language.chatFormating}
ChatML
Llama3
diff --git a/src/lib/Setting/Pages/OpenrouterSettings.svelte b/src/lib/Setting/Pages/OpenrouterSettings.svelte
index 5bb3036f..93955ca0 100644
--- a/src/lib/Setting/Pages/OpenrouterSettings.svelte
+++ b/src/lib/Setting/Pages/OpenrouterSettings.svelte
@@ -5,6 +5,7 @@
import { DataBase } from "src/ts/storage/database";
import SelectInput from "src/lib/UI/GUI/SelectInput.svelte";
import OptionInput from "src/lib/UI/GUI/OptionInput.svelte";
+ import ChatFormatSettings from "./ChatFormatSettings.svelte";
const openrouterProviders = [
"OpenAI",
@@ -38,6 +39,9 @@
+
+
+
{language.provider}
Auto (Default)
@@ -45,4 +49,8 @@
{provider}
{/each}
+
+ {#if $DataBase.useInstructPrompt}
+
+ {/if}
\ No newline at end of file
diff --git a/src/ts/process/request.ts b/src/ts/process/request.ts
index 5b712994..bbe9a7aa 100644
--- a/src/ts/process/request.ts
+++ b/src/ts/process/request.ts
@@ -467,6 +467,16 @@ export async function requestChatDataMain(arg:requestDataArgument, model:'model'
order: [db.openrouterProvider]
}
}
+
+ if(db.useInstructPrompt){
+ //@ts-ignore
+ delete body.messages
+
+ const prompt = applyChatTemplate(formated)
+
+ //@ts-ignore
+ body.prompt = prompt
+ }
}
if(aiModel === 'reverse_proxy' && db.reverseProxyOobaMode){
diff --git a/src/ts/storage/database.ts b/src/ts/storage/database.ts
index 24927da0..d34a14cc 100644
--- a/src/ts/storage/database.ts
+++ b/src/ts/storage/database.ts
@@ -393,6 +393,7 @@ export function setDatabase(data:Database){
data.customTokenizer ??= 'tik'
data.instructChatTemplate ??= "chatml"
data.openrouterProvider ??= ''
+ data.useInstructPrompt ??= false
changeLanguage(data.language)
DataBase.set(data)
@@ -640,6 +641,7 @@ export interface Database{
instructChatTemplate:string
JinjaTemplate:string
openrouterProvider:string
+ useInstructPrompt:boolean
}
export interface customscript{
@@ -844,6 +846,7 @@ export interface botPreset{
min_p?:number
top_a?:number
openrouterProvider?:string
+ useInstructPrompt?:boolean
}
@@ -1047,6 +1050,7 @@ export const presetTemplate:botPreset = {
mode: 'instruct'
},
top_p: 1,
+ useInstructPrompt: false,
}
@@ -1108,7 +1112,8 @@ export function saveCurrentPreset(){
repetition_penalty: db.repetition_penalty,
min_p: db.min_p,
top_a: db.top_a,
- openrouterProvider: db.openrouterProvider
+ openrouterProvider: db.openrouterProvider,
+ useInstructPrompt: db.useInstructPrompt
}
db.botPresets = pres
setDatabase(db)
@@ -1189,6 +1194,7 @@ export function setPreset(db:Database, newPres: botPreset){
db.min_p = newPres.min_p
db.top_a = newPres.top_a
db.openrouterProvider = newPres.openrouterProvider
+ db.useInstructPrompt = newPres.useInstructPrompt ?? false
return db
}