Change Reverse proxy name to Custom and add additionalParams

This commit is contained in:
kwaroran
2024-03-20 21:02:34 +09:00
parent ef811b5b57
commit 5bede2b90a
14 changed files with 136 additions and 12 deletions

View File

@@ -52,7 +52,7 @@ export function getModelName(name:string){
case "novellist damsel":
return "NovelList Damsel"
case 'reverse_proxy':
return "Reverse Proxy"
return "Custom (OpenAI-compatible)"
case 'openrouter':
return "OpenRouter"
case 'gptvi4_1106':
@@ -144,6 +144,12 @@ export function getModelShortName(model:string){
return split[split.length-1]
}
}
if(model.startsWith('reverse_proxy')){
return 'Custom'
}
if(model.startsWith('oaicomp')){
return 'Custom'
}
return getModelName(model)
}

View File

@@ -0,0 +1,28 @@
import type { OpenAIChat } from "..";
import { HypaProcesser } from "./hypamemory";
export async function termMemory(chats:OpenAIChat[]){
const processer = new HypaProcesser('MiniLM')
processer.addText(chats.map(chat=>chat.content))
let scoredResults:{[key:string]:number}
for(let i=1;i<5;i++){
const chat = chats[chats.length-i]
if(!chat?.content){
continue
}
const scoredArray = (await processer.similaritySearchScored(chat.content)).map((result) => {
return [result[0],result[1]/i] as [string,number]
})
for(const scored of scoredArray){
if(scoredResults[scored[0]]){
scoredResults[scored[0]] += scored[1]
}else{
scoredResults[scored[0]] = scored[1]
}
}
}
const result = Object.entries(scoredResults).sort((a,b)=>a[1]-b[1])
return result.map(([content,score])=>(content)).join('\n\n')
}

View File

@@ -606,6 +606,43 @@ export async function requestChatDataMain(arg:requestDataArgument, model:'model'
}
}
if(raiModel === 'reverse_proxy'){
const additionalParams = db.additionalParams
for(let i=0;i<additionalParams.length;i++){
let key = additionalParams[i][0]
let value = additionalParams[i][1]
if(!key || !value){
continue
}
if(value === '{{none}}'){
if(key.startsWith('header::')){
key = key.replace('header::', '')
delete headers[key]
}
else{
delete body[key]
}
continue
}
if(key.startsWith('header::')){
key = key.replace('header::', '')
headers[key] = value
}
else if(isNaN(parseFloat(value))){
if(value.startsWith('"') && value.endsWith('"')){
value = value.slice(1, -1)
}
body[key] = value
}
else{
body[key] = parseFloat(value)
}
}
}
const res = await globalFetch(replacerURL, {
body: body,
headers: headers,

View File

@@ -375,6 +375,7 @@ export function setDatabase(data:Database){
data.memoryLimitThickness ??= 1
data.modules ??= []
data.enabledModules ??= []
data.additionalParams ??= []
changeLanguage(data.language)
DataBase.set(data)
@@ -600,6 +601,7 @@ export interface Database{
enabledModules: string[]
sideMenuRerollButton?:boolean
requestInfoInsideChat?:boolean
additionalParams:[string, string][]
}
export interface customscript{