diff --git a/src/lib/UI/ModelList.svelte b/src/lib/UI/ModelList.svelte index 4dbf39d0..b4a20af7 100644 --- a/src/lib/UI/ModelList.svelte +++ b/src/lib/UI/ModelList.svelte @@ -79,9 +79,12 @@ return "Mistral Medium" case 'gemini-pro': return "Gemini Pro" + case 'horde:::auto': + return 'Horde Auto Model' default: if(name.startsWith("horde:::")){ - return name.replace(":::", " ") + const split = name.split(":::") + return `Horde ${split[1]}` } return name } @@ -178,20 +181,22 @@ - {#if showUnrec} - {#if isTauri ||isNodeServer} - - {/if} - - {#await getHordeModels()} - - {:then models} - {#each models as model} - - {/each} - {/await} + + {#await getHordeModels()} + + {:then models} + + {#each models as model} + + {/each} + {/await} - {/if} {#if $DataBase.plugins.length > 0} {/if} diff --git a/src/ts/horde/getModels.ts b/src/ts/horde/getModels.ts index 9323558e..e459de17 100644 --- a/src/ts/horde/getModels.ts +++ b/src/ts/horde/getModels.ts @@ -1,20 +1,30 @@ import { sleep } from "../util" -let modelList:string[]|'loading' = null +interface HordeModel { + "performance": number, + "queued": number, + "jobs": number, + "eta": Number, + "type": "text", + "name": "aphrodite\/Undi95\/Toppy-M-7B", + "count": number +} + + +let modelList:HordeModel[]|'loading' = null //until horde is ready // modelList = [] -export async function getHordeModels():Promise { +export async function getHordeModels():Promise { if(modelList === null){ try { modelList = 'loading' const models = await fetch("https://stablehorde.net/api/v2/status/models?type=text") - modelList = ((await models.json()).map((a) => { - return a.name - }) as string[]) - return modelList + const res = await models.json() + modelList = res + return res } catch (error) { modelList = null return [] diff --git a/src/ts/process/request.ts b/src/ts/process/request.ts index 3ae9cb37..85bbe68b 100644 --- a/src/ts/process/request.ts +++ b/src/ts/process/request.ts @@ -1540,25 +1540,12 @@ export async function requestChatDataMain(arg:requestDataArgument, model:'model' "prompt": proompt, "params": { "n": 1, - "frmtadsnsp": false, - "frmtrmblln": false, - "frmtrmspch": false, - "frmttriminc": false, "max_context_length": db.maxContext + 100, "max_length": db.maxResponse, - "rep_pen": 3, - "rep_pen_range": 0, - "rep_pen_slope": 10, "singleline": false, "temperature": db.temperature / 100, - "tfs": 1, - "top_a": 1, - "top_k": 100, - "top_p": 1, - "typical": 1, - "sampler_order": [ - 0 - ] + "top_k": db.top_k, + "top_p": db.top_p, }, "trusted_workers": false, "workerslow_workers": true, @@ -1567,6 +1554,10 @@ export async function requestChatDataMain(arg:requestDataArgument, model:'model' "models": [realModel, realModel.trim(), ' ' + realModel, realModel + ' '] } + if(realModel === 'auto'){ + delete argument.models + } + const da = await fetch("https://stablehorde.net/api/v2/generate/text/async", { body: JSON.stringify(argument), method: "POST",