[feat] add new ooba

This commit is contained in:
kwaroran
2023-12-03 19:15:09 +09:00
parent a91977ec82
commit 390e3bcb62
5 changed files with 140 additions and 62 deletions

View File

@@ -254,7 +254,11 @@
{#if !isTauri}
<span class="text-draculared text-xs mb-2">You are using web version. you must use ngrok or other tunnels to use your local webui.</span>
{/if}
<span class="text-draculared text-xs mb-2">Warning: For Ooba version over 1.7, use "Reverse Proxy" as model, and use url like http://127.0.0.1:5000/v1/chat/completions</span>
<span class="text-draculared text-xs mb-2">Warning: For Ooba version over 1.7, use "Ooba" as model, and use url like http://127.0.0.1:5000/v1/chat/completions</span>
{/if}
{#if $DataBase.aiModel === 'ooba' || $DataBase.subModel === 'ooba'}
<span class="text-textcolor mt-2">Ooba {language.providerURL}</span>
<TextInput marginBottom={true} bind:value={$DataBase.textgenWebUIBlockingURL} placeholder="https://..."/>
{/if}
{#if advancedBotSettings}
{#if !$DataBase.promptTemplate}
@@ -465,8 +469,8 @@
{/if}
{/if}
{#if ($DataBase.reverseProxyOobaMode && $DataBase.aiModel === 'reverse_proxy')}
<OobaSettings />
{#if ($DataBase.reverseProxyOobaMode && $DataBase.aiModel === 'reverse_proxy') || ($DataBase.aiModel === 'ooba')}
<OobaSettings instructionMode={$DataBase.aiModel === 'ooba'} />
{/if}

View File

@@ -1,6 +1,5 @@
<script lang="ts">
import TextInput from "src/lib/UI/GUI/TextInput.svelte";
import NumberInput from "src/lib/UI/GUI/NumberInput.svelte";
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 OptionalInput from "src/lib/UI/GUI/OptionalInput.svelte";
@@ -9,6 +8,7 @@
const toggleOobaSettings = () => {
openOobaSettings = !openOobaSettings
}
export let instructionMode = false
</script>
<div class="border-darkborderc border px-2 flex flex-col py-4 rounded-md">
@@ -25,37 +25,49 @@
<div class="border-b border-b-darkborderc mt-4 mb-4">
</div>
<span class="text-textcolor">Ooba Mode</span>
<SelectInput className="mt-2 mb-4" bind:value={$DataBase.reverseProxyOobaArgs.mode}>
<OptionInput value="instruct">Instruct</OptionInput>
<OptionInput value="chat">Chat</OptionInput>
<OptionInput value="chat-instruct">Chat-Instruct</OptionInput>
</SelectInput>
<!-- name1 = user | name2 = bot --->
{#if instructionMode}
<span class="text-textcolor">System Prefix</span>
<TextAreaInput fullwidth autocomplete="off" height={"24"} bind:value={$DataBase.ooba.formating.systemPrefix} />
<span class="text-textcolor">User Prefix</span>
<TextAreaInput fullwidth autocomplete="off" height={"24"} bind:value={$DataBase.ooba.formating.userPrefix} />
<span class="text-textcolor">Assistant Prefix</span>
<TextAreaInput fullwidth autocomplete="off" height={"24"} bind:value={$DataBase.ooba.formating.assistantPrefix} />
<span class="text-textcolor">Seperator</span>
<TextAreaInput fullwidth autocomplete="off" height={"24"} bind:value={$DataBase.ooba.formating.seperator} />
{#if $DataBase.reverseProxyOobaArgs.mode === 'instruct'}
<span class="text-textcolor">user prefix</span>
<OptionalInput marginBottom={true} bind:value={$DataBase.reverseProxyOobaArgs.name1_instruct} />
<span class="text-textcolor">bot prefix</span>
<OptionalInput marginBottom={true} bind:value={$DataBase.reverseProxyOobaArgs.name2_instruct} />
<span class="text-textcolor">system prefix</span>
<OptionalInput marginBottom={true} bind:value={$DataBase.reverseProxyOobaArgs.context_instruct} />
<span class="text-textcolor">system message</span>
<OptionalInput marginBottom={true} bind:value={$DataBase.reverseProxyOobaArgs.system_message} />
{/if}
{#if $DataBase.reverseProxyOobaArgs.mode === 'chat' || $DataBase.reverseProxyOobaArgs.mode === 'chat-instruct'}
<span class="text-textcolor">user prefix</span>
<OptionalInput marginBottom={true} bind:value={$DataBase.reverseProxyOobaArgs.name1} />
<span class="text-textcolor">bot prefix</span>
<OptionalInput marginBottom={true} bind:value={$DataBase.reverseProxyOobaArgs.name2} />
<span class="text-textcolor">system prefix</span>
<OptionalInput marginBottom={true} bind:value={$DataBase.reverseProxyOobaArgs.context} />
<span class="text-textcolor">start message</span>
<OptionalInput marginBottom={true} bind:value={$DataBase.reverseProxyOobaArgs.greeting} />
{/if}
{#if $DataBase.reverseProxyOobaArgs.mode === 'chat-instruct'}
<span class="text-textcolor">chat_instruct_command</span>
<OptionalInput marginBottom={true} bind:value={$DataBase.reverseProxyOobaArgs.chat_instruct_command} />
{:else}
<span class="text-textcolor">Ooba Mode</span>
<SelectInput className="mt-2 mb-4" bind:value={$DataBase.reverseProxyOobaArgs.mode}>
<OptionInput value="instruct">Instruct</OptionInput>
<OptionInput value="chat">Chat</OptionInput>
<OptionInput value="chat-instruct">Chat-Instruct</OptionInput>
</SelectInput>
<!-- name1 = user | name2 = bot --->
{#if $DataBase.reverseProxyOobaArgs.mode === 'instruct'}
<span class="text-textcolor">user prefix</span>
<OptionalInput marginBottom={true} bind:value={$DataBase.reverseProxyOobaArgs.name1_instruct} />
<span class="text-textcolor">bot prefix</span>
<OptionalInput marginBottom={true} bind:value={$DataBase.reverseProxyOobaArgs.name2_instruct} />
<span class="text-textcolor">system prefix</span>
<OptionalInput marginBottom={true} bind:value={$DataBase.reverseProxyOobaArgs.context_instruct} />
<span class="text-textcolor">system message</span>
<OptionalInput marginBottom={true} bind:value={$DataBase.reverseProxyOobaArgs.system_message} />
{/if}
{#if $DataBase.reverseProxyOobaArgs.mode === 'chat' || $DataBase.reverseProxyOobaArgs.mode === 'chat-instruct'}
<span class="text-textcolor">user prefix</span>
<OptionalInput marginBottom={true} bind:value={$DataBase.reverseProxyOobaArgs.name1} />
<span class="text-textcolor">bot prefix</span>
<OptionalInput marginBottom={true} bind:value={$DataBase.reverseProxyOobaArgs.name2} />
<span class="text-textcolor">system prefix</span>
<OptionalInput marginBottom={true} bind:value={$DataBase.reverseProxyOobaArgs.context} />
<span class="text-textcolor">start message</span>
<OptionalInput marginBottom={true} bind:value={$DataBase.reverseProxyOobaArgs.greeting} />
{/if}
{#if $DataBase.reverseProxyOobaArgs.mode === 'chat-instruct'}
<span class="text-textcolor">chat_instruct_command</span>
<OptionalInput marginBottom={true} bind:value={$DataBase.reverseProxyOobaArgs.chat_instruct_command} />
{/if}
{/if}
<span class="text-textcolor">min_p</span>
<OptionalInput marginBottom={true} bind:value={$DataBase.reverseProxyOobaArgs.min_p} numberMode />