Add seperate models
This commit is contained in:
@@ -1074,4 +1074,7 @@ export const languageEnglish = {
|
||||
loadingChatData: "Loading Chat Data",
|
||||
outputImageModal: "Output Image Modal",
|
||||
playMessageOnTranslateEnd: "Play Audio on Translate Completion",
|
||||
seperateModelsForAxModels: "Seperate Models for Auxiliary Models",
|
||||
axModelsDef: "Ax Models Definition",
|
||||
doNotChangeSeperateModels: "Do Not Change Seperate Models",
|
||||
}
|
||||
|
||||
@@ -211,6 +211,11 @@
|
||||
<Help key="unrecommended" unrecommended/>
|
||||
</Check>
|
||||
</div>
|
||||
<div class="flex items-center mt-4">
|
||||
<Check bind:check={DBState.db.doNotChangeSeperateModels} name={language.doNotChangeSeperateModels}>
|
||||
<Help key="unrecommended" unrecommended/>
|
||||
</Check>
|
||||
</div>
|
||||
{/if}
|
||||
{#if DBState.db?.account?.useSync}
|
||||
<div class="flex items-center mt-4">
|
||||
|
||||
@@ -13,6 +13,8 @@
|
||||
import TextAreaInput from "src/lib/UI/GUI/TextAreaInput.svelte";
|
||||
import SelectInput from "src/lib/UI/GUI/SelectInput.svelte";
|
||||
import OptionInput from "src/lib/UI/GUI/OptionInput.svelte";
|
||||
import Arcodion from "src/lib/UI/Arcodion.svelte";
|
||||
import ModelList from "src/lib/UI/ModelList.svelte";
|
||||
|
||||
let sorted = 0
|
||||
let opened = 0
|
||||
@@ -164,4 +166,39 @@
|
||||
<span class="text-textcolor mt-4">{language.extractJson} <Help key='extractJson' /></span>
|
||||
<TextInput bind:value={DBState.db.extractJson}/>
|
||||
{/if}
|
||||
|
||||
|
||||
<div class="flex items-center mt-4">
|
||||
<Check bind:check={DBState.db.seperateModelsForAxModels} name={language.seperateModelsForAxModels}>
|
||||
<Help key="experimentalChatCompressionDesc"/><Help key="experimental"/>
|
||||
</Check>
|
||||
</div>
|
||||
|
||||
{#if DBState.db.seperateModelsForAxModels}
|
||||
<Arcodion name={language.axModelsDef} styled>
|
||||
<span class="text-textcolor mt-4">
|
||||
Memory
|
||||
</span>
|
||||
<ModelList bind:value={DBState.db.seperateModels.memory} />
|
||||
|
||||
<span class="text-textcolor mt-4">
|
||||
Translations
|
||||
</span>
|
||||
<ModelList bind:value={DBState.db.seperateModels.translate} />
|
||||
|
||||
<span class="text-textcolor mt-4">
|
||||
Emotion
|
||||
</span>
|
||||
|
||||
<ModelList bind:value={DBState.db.seperateModels.emotion} />
|
||||
|
||||
<span class="text-textcolor mt-4">
|
||||
OtherAx
|
||||
</span>
|
||||
|
||||
<ModelList bind:value={DBState.db.seperateModels.otherAx} />
|
||||
|
||||
</Arcodion>
|
||||
{/if}
|
||||
|
||||
{/if}
|
||||
@@ -486,6 +486,13 @@ export async function requestChatDataMain(arg:requestDataArgument, model:ModelMo
|
||||
targ.customURL = db.forceReplaceUrl
|
||||
}
|
||||
|
||||
if(db.seperateModelsForAxModels){
|
||||
if(db.seperateModels[model]){
|
||||
targ.aiModel = db.seperateModels[model]
|
||||
targ.modelInfo = getModelInfo(targ.aiModel)
|
||||
}
|
||||
}
|
||||
|
||||
const format = targ.modelInfo.format
|
||||
|
||||
targ.formated = reformater(targ.formated, targ.modelInfo)
|
||||
|
||||
@@ -494,6 +494,7 @@ export function setDatabase(data:Database){
|
||||
key: data.hypaCustomSettings?.key ?? "",
|
||||
model: data.hypaCustomSettings?.model ?? "",
|
||||
}
|
||||
data.doNotChangeSeperateModels ??= false
|
||||
changeLanguage(data.language)
|
||||
setDatabaseLite(data)
|
||||
}
|
||||
@@ -930,7 +931,14 @@ export interface Database{
|
||||
claudeRetrivalCaching: boolean
|
||||
outputImageModal: boolean
|
||||
playMessageOnTranslateEnd:boolean
|
||||
|
||||
seperateModelsForAxModels:boolean
|
||||
seperateModels:{
|
||||
memory: string
|
||||
emotion: string
|
||||
translate: string
|
||||
otherAx: string
|
||||
}
|
||||
doNotChangeSeperateModels:boolean
|
||||
}
|
||||
|
||||
interface SeparateParameters{
|
||||
@@ -1114,6 +1122,7 @@ export interface character{
|
||||
hideChatIcon?:boolean
|
||||
lastInteraction?:number
|
||||
translatorNote?:string
|
||||
doNotChangeSeperateModels?:boolean
|
||||
}
|
||||
|
||||
|
||||
@@ -1265,6 +1274,13 @@ export interface botPreset{
|
||||
reasonEffort?:number
|
||||
thinkingTokens?:number
|
||||
outputImageModal?:boolean
|
||||
seperateModelsForAxModels?:boolean
|
||||
seperateModels?:{
|
||||
memory: string
|
||||
emotion: string
|
||||
translate: string
|
||||
otherAx: string
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -1581,7 +1597,9 @@ export function saveCurrentPreset(){
|
||||
image: pres?.[db.botPresetsId]?.image ?? '',
|
||||
reasonEffort: db.reasoningEffort ?? 0,
|
||||
thinkingTokens: db.thinkingTokens ?? null,
|
||||
outputImageModal: db.outputImageModal ?? false
|
||||
outputImageModal: db.outputImageModal ?? false,
|
||||
seperateModelsForAxModels: db.seperateModelsForAxModels ?? false,
|
||||
seperateModels: safeStructuredClone(db.seperateModels),
|
||||
}
|
||||
db.botPresets = pres
|
||||
setDatabase(db)
|
||||
@@ -1694,6 +1712,16 @@ export function setPreset(db:Database, newPres: botPreset){
|
||||
db.reasoningEffort = newPres.reasonEffort ?? 0
|
||||
db.thinkingTokens = newPres.thinkingTokens ?? null
|
||||
db.outputImageModal = newPres.outputImageModal ?? false
|
||||
if(!db.doNotChangeSeperateModels){
|
||||
db.seperateModelsForAxModels = newPres.seperateModelsForAxModels ?? false
|
||||
db.seperateModels = safeStructuredClone(newPres.seperateModels) ?? {
|
||||
memory: '',
|
||||
emotion: '',
|
||||
translate: '',
|
||||
otherAx: ''
|
||||
}
|
||||
}
|
||||
|
||||
return db
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user