feat: Implement HypaV3 ratio-based memory
This commit is contained in:
@@ -470,6 +470,15 @@ export function setDatabase(data:Database){
|
||||
data.banCharacterset ??= []
|
||||
data.showPromptComparison ??= false
|
||||
data.checkCorruption ??= true
|
||||
data.hypaV3Settings = {
|
||||
memoryTokensRatio: data.hypaV3Settings?.memoryTokensRatio ?? 0.2,
|
||||
extraSummarizationRatio: data.hypaV3Settings?.extraSummarizationRatio ?? 0.2,
|
||||
maxChatsPerSummary: data.hypaV3Settings?.maxChatsPerSummary ?? 4,
|
||||
similarMemoryRatio: data.hypaV3Settings?.similarMemoryRatio ?? 0.4,
|
||||
randomMemoryRatio: data.hypaV3Settings?.randomMemoryRatio ?? 0.2,
|
||||
enableSimilarityCorrection: data.hypaV3Settings?.enableSimilarityCorrection ?? false,
|
||||
preserveOrphanedMemory: data.hypaV3Settings?.preserveOrphanedMemory ?? false
|
||||
}
|
||||
changeLanguage(data.language)
|
||||
setDatabaseLite(data)
|
||||
}
|
||||
@@ -872,6 +881,16 @@ export interface Database{
|
||||
banCharacterset:string[]
|
||||
showPromptComparison:boolean
|
||||
checkCorruption:boolean
|
||||
hypaV3:boolean
|
||||
hypaV3Settings: {
|
||||
memoryTokensRatio: number
|
||||
extraSummarizationRatio: number
|
||||
maxChatsPerSummary: number
|
||||
similarMemoryRatio: number
|
||||
randomMemoryRatio: number
|
||||
enableSimilarityCorrection: boolean
|
||||
preserveOrphanedMemory: boolean
|
||||
}
|
||||
}
|
||||
|
||||
interface SeparateParameters{
|
||||
@@ -1268,6 +1287,7 @@ export interface Chat{
|
||||
id?:string
|
||||
bindedPersona?:string
|
||||
fmIndex?:number
|
||||
hypaV3Data?:SerializableHypaV3Data
|
||||
}
|
||||
|
||||
export interface Message{
|
||||
@@ -1621,6 +1641,7 @@ import { DBState, selectedCharID } from '../stores.svelte';
|
||||
import { LLMFlags, LLMFormat } from '../model/modellist';
|
||||
import type { Parameter } from '../process/request';
|
||||
import type { HypaModel } from '../process/memory/hypamemory';
|
||||
import type { SerializableHypaV3Data } from '../process/memory/hypav3';
|
||||
|
||||
export async function downloadPreset(id:number, type:'json'|'risupreset'|'return' = 'json'){
|
||||
saveCurrentPreset()
|
||||
|
||||
Reference in New Issue
Block a user