apiv2.chatftw.com
Open in
urlscan Pro
67.207.86.76
Public Scan
URL:
https://apiv2.chatftw.com/
Submission: On March 14 via api from US — Scanned from US
Submission: On March 14 via api from US — Scanned from US
Form analysis
26 forms found in the DOMPOST javascript:void(null);
<form action="javascript:void(null);" method="post" enctype="multipart/form-data">
<div id="kobold_horde_block">
<ul>
<li data-i18n="Avoid sending sensitive information to the Horde."> Avoid sending sensitive information to the Horde.
<a target="_blank" href="https://docs.sillytavern.app/usage/api-connections/horde/" data-i18n="Review the Privacy statement">Review the Privacy statement</a>
</li>
<li>
<a target="_blank" href="https://horde.koboldai.net/register" data-i18n="Register a Horde account for faster queue times">Register a Horde
account for faster queue times</a>
</li>
<li>
<a target="_blank" href="https://github.com/db0/AI-Horde-Worker#readme" data-i18n="Learn how to contribute your idle GPU cycles to the Horde">Learn
how to contribute your idle GPU cycles to the Horde</a>
</li>
</ul>
<label for="horde_auto_adjust_context_length" class="checkbox_label">
<input id="horde_auto_adjust_context_length" type="checkbox">
<span data-i18n="Adjust context size to worker capabilities">Adjust context size to worker capabilities</span>
</label>
<label for="horde_auto_adjust_response_length" class="checkbox_label">
<input id="horde_auto_adjust_response_length" type="checkbox">
<span data-i18n="Adjust response length to worker capabilities">Adjust response length to worker capabilities</span>
</label>
<label for="horde_trusted_workers_only" class="checkbox_label" title="Can help with bad responses by queueing only the approved workers. May slowdown the response time."
data-i18n="[title]Can help with bad responses by queueing only the approved workers. May slowdown the response time.">
<input id="horde_trusted_workers_only" type="checkbox">
<span data-i18n="Trusted workers only">Trusted workers only</span>
</label>
<small id="adjustedHordeParams">Context: --, Response: --</small>
<h4 data-i18n="API key">API key</h4>
<small>
<span data-i18n="Get it here:">Get it here: </span> <a target="_blank" href="https://horde.koboldai.net/register" data-i18n="Register">Register</a> (<a id="horde_kudos" href="javascript:void(0);" data-i18n="View my Kudos">View my Kudos</a>)<br>
<span data-i18n="Enter">Enter </span> <span class="monospace">0000000000</span> <span data-i18n="to use anonymous mode.">to use anonymous mode. </span>
</small>
<!-- <div>
<a id="horde_kudos" href="javascript:void(0);">View my Kudos</a>
</div> -->
<div class="flex-container">
<input id="horde_api_key" name="horde_api_key" class="text_pole flex1" maxlength="500" type="text" placeholder="✔️ Key saved" autocomplete="off">
<div title="Clear your API key" data-i18n="[title]Clear your API key" class="menu_button fa-solid fa-circle-xmark clear-api-key" data-key="api_key_horde"></div>
</div>
<div data-for="horde_api_key" class="neutral_warning" data-i18n="For privacy reasons, your API key will be hidden after you reload the page."> For privacy reasons, your API key will be hidden after you reload the page. </div>
<h4 class="horde_model_title">
<span data-i18n="Models">Models </span>
<div id="horde_refresh" title="Refresh models" data-i18n="[title]Refresh models" class="right_menu_button">
<div class="fa-solid fa-repeat "></div>
</div>
</h4>
<select id="horde_model" multiple="" data-select2-id="select2-data-horde_model" tabindex="-1" class="select2-hidden-accessible" aria-hidden="true">
<option data-i18n="-- Horde models not loaded --">-- Horde models not loaded --</option>
</select><span class="select2 select2-container select2-container--default" dir="ltr" data-select2-id="select2-data-14-npa5" style="width: 100%;"><span class="selection"><span class="select2-selection select2-selection--multiple" role="combobox"
aria-haspopup="true" aria-expanded="false" tabindex="-1" aria-disabled="false">
<ul class="select2-selection__rendered" id="select2-horde_model-container"></ul><span class="select2-search select2-search--inline"><textarea class="select2-search__field" type="search" tabindex="0" autocorrect="off" autocapitalize="none"
spellcheck="false" role="searchbox" aria-autocomplete="list" autocomplete="off" aria-label="Search" aria-describedby="select2-horde_model-container" placeholder="Select Horde models" style="width: 100%;"></textarea></span>
</span></span><span class="dropdown-wrapper" aria-hidden="true"></span></span>
</div>
<div class="online_status">
<div class="online_status_indicator"></div>
<div data-i18n="Not connected..." class="online_status_text">Not connected...</div>
</div>
</form>
POST javascript:void(null);
<form action="javascript:void(null);" method="post" enctype="multipart/form-data">
<div id="kobold_api_block">
<h4 data-i18n="API url">API url</h4>
<small data-i18n="Example: http://127.0.0.1:5000/api ">Example: http://127.0.0.1:5000/api </small>
<input id="api_url_text" name="api_url" class="text_pole ui-autocomplete-input" placeholder="http://127.0.0.1:5000/api" maxlength="500" value="" autocomplete="off" data-server-history="kobold">
<div id="koboldcpp_hint" class="neutral_warning displayNone"> We have a dedicated KoboldCpp support under Text Completion ⇒ KoboldCpp. </div>
<div class="flex-container">
<div id="api_button" class="api_button menu_button" type="submit" data-i18n="Connect" data-server-connect="kobold">Connect</div>
<div class="api_loading menu_button" data-i18n="Cancel">Cancel</div>
</div>
</div>
<div class="online_status">
<div class="online_status_indicator"></div>
<div class="online_status_text" data-i18n="Not connected...">Not connected...</div>
</div>
</form>
POST javascript:void(null);
<form action="javascript:void(null);" method="post" enctype="multipart/form-data">
<h4 data-i18n="Novel API key">Novel API key</h4>
<span>
<ol>
<li>
<a href="https://docs.sillytavern.app/usage/api-connections/novelai/" class="notes-link" target="_blank"> <span data-i18n="Get your NovelAI API Key">Get your NovelAI API key</span></a>
</li>
<li><span data-i18n="Enter it in the box below">Enter it in the box below:</span>
</li>
</ol>
</span>
<div class="flex-container">
<input id="api_key_novel" name="api_key_novel" class="text_pole flex1 wide100p" maxlength="500" size="35" type="text" autocomplete="off" placeholder="❌ Missing key">
<div title="Clear your API key" data-i18n="[title]Clear your API key" class="menu_button fa-solid fa-circle-xmark clear-api-key" data-key="api_key_novel">
</div>
</div>
<div data-for="api_key_novel" class="neutral_warning" data-i18n="For privacy reasons, your API key will be hidden after you reload the page."> For privacy reasons, your API key will be hidden after you reload the page. </div>
<div class="flex-container">
<div id="api_button_novel" class="api_button menu_button" type="submit" data-i18n="Connect">Connect</div>
<div class="api_loading menu_button" data-i18n="Cancel">Cancel</div>
</div>
<h4><span data-i18n="Novel AI Model">Novel AI Model</span>
<a href="https://docs.sillytavern.app/usage/api-connections/novelai/#models" class="notes-link" target="_blank">
<span class="fa-solid fa-circle-question note-link-span"></span>
</a>
</h4>
<select id="model_novel_select">
<option value="clio-v1">Clio</option>
<option value="kayra-v1">Kayra</option>
</select>
</form>
POST javascript:void(null);
<form action="javascript:void(null);" method="post" enctype="multipart/form-data">
<div>
<h4 data-i18n="API Type">API Type</h4>
<select id="textgen_type">
<option value="ooba" data-i18n="Default (oobabooga)">Default (oobabooga)</option>
<option value="mancer">Mancer</option>
<option value="aphrodite">Aphrodite</option>
<option value="tabby">TabbyAPI</option>
<option value="koboldcpp">KoboldCpp</option>
<option value="llamacpp">llama.cpp</option>
<option value="openrouter">OpenRouter</option>
<option value="ollama">Ollama</option>
<option value="togetherai">TogetherAI</option>
<option value="infermaticai">InfermaticAI</option>
</select>
</div>
<div data-tg-type="togetherai" class="flex-container flexFlowColumn" style="display: none;">
<h4 data-i18n="TogetherAI API Key">TogetherAI API Key</h4>
<div class="flex-container">
<input id="api_key_togetherai" name="api_key_togetherai" class="text_pole flex1" maxlength="500" value="" type="text" autocomplete="off" placeholder="❌ Missing key">
<div title="Clear your API key" data-i18n="[title]Clear your API key" class="menu_button fa-solid fa-circle-xmark clear-api-key" data-key="api_key_togetherai"></div>
</div>
<div data-for="api_key_togetherai" class="neutral_warning"> For privacy reasons, your API key will be hidden after you reload the page. </div>
<div>
<h4 data-i18n="TogetherAI Model">TogetherAI Model</h4>
<select id="model_togetherai_select" data-select2-id="select2-data-model_togetherai_select" tabindex="-1" class="select2-hidden-accessible" aria-hidden="true">
<option data-i18n="-- Connect to the API --" data-select2-id="select2-data-4-jiu9"> -- Connect to the API -- </option>
</select><span class="select2 select2-container select2-container--default" dir="ltr" data-select2-id="select2-data-3-kcra" style="width: 100%;"><span class="selection"><span class="select2-selection select2-selection--single" role="combobox"
aria-haspopup="true" aria-expanded="false" tabindex="0" aria-disabled="false" aria-labelledby="select2-model_togetherai_select-container" aria-controls="select2-model_togetherai_select-container"><span class="select2-selection__rendered"
id="select2-model_togetherai_select-container" role="textbox" aria-readonly="true" title="
-- Connect to the API --
"> -- Connect to the API -- </span><span class="select2-selection__arrow" role="presentation"><b role="presentation"></b></span></span></span><span class="dropdown-wrapper" aria-hidden="true"></span></span>
</div>
</div>
<div data-tg-type="openrouter" class="flex-container flexFlowColumn" style="display: none;">
<h4 data-i18n="OpenRouter API Key">OpenRouter API Key</h4>
<div>
<small data-i18n="Click Authorize below or get the key from"> Click "Authorize" below or get the key from </small> <a target="_blank" href="https://openrouter.ai/keys/">OpenRouter</a>. <br>
<a href="https://openrouter.ai/account" target="_blank" data-i18n="View Remaining Credits">View Remaining Credits</a>
</div>
<div class="flex-container">
<input id="api_key_openrouter-tg" name="api_key_openrouter" class="text_pole flex1 api_key_openrouter" maxlength="500" value="" type="text" autocomplete="off" placeholder="✔️ Key saved">
<div title="Clear your API key" data-i18n="[title]Clear your API key" class="menu_button fa-solid fa-circle-xmark clear-api-key" data-key="api_key_openrouter"></div>
</div>
<div data-for="api_key_openrouter" class="neutral_warning"> For privacy reasons, your API key will be hidden after you reload the page. </div>
<div>
<h4 data-i18n="OpenRouter Model">OpenRouter Model</h4>
<select id="openrouter_model" data-select2-id="select2-data-openrouter_model" tabindex="-1" class="select2-hidden-accessible" aria-hidden="true">
<option data-i18n="-- Connect to the API --" data-select2-id="select2-data-10-ogcx"> -- Connect to the API -- </option>
</select><span class="select2 select2-container select2-container--default" dir="ltr" data-select2-id="select2-data-9-8aax" style="width: 100%;"><span class="selection"><span class="select2-selection select2-selection--single" role="combobox"
aria-haspopup="true" aria-expanded="false" tabindex="0" aria-disabled="false" aria-labelledby="select2-openrouter_model-container" aria-controls="select2-openrouter_model-container"><span class="select2-selection__rendered"
id="select2-openrouter_model-container" role="textbox" aria-readonly="true" title="
-- Connect to the API --
"> -- Connect to the API -- </span><span class="select2-selection__arrow" role="presentation"><b role="presentation"></b></span></span></span><span class="dropdown-wrapper" aria-hidden="true"></span></span>
</div>
</div>
<div data-tg-type="infermaticai" class="flex-container flexFlowColumn" style="display: none;">
<h4 data-i18n="InfermaticAI API Key">InfermaticAI API Key</h4>
<div class="flex-container">
<input id="api_key_infermaticai" name="api_key_infermaticai" class="text_pole flex1" maxlength="500" value="" type="text" autocomplete="off" placeholder="❌ Missing key">
<div title="Clear your API key" data-i18n="[title]Clear your API key" class="menu_button fa-solid fa-circle-xmark clear-api-key" data-key="api_key_infermaticai"></div>
</div>
<div data-for="api_key_infermaticai" class="neutral_warning"> For privacy reasons, your API key will be hidden after you reload the page. </div>
<div>
<h4 data-i18n="InfermaticAI Model">InfermaticAI Model</h4>
<select id="model_infermaticai_select" data-select2-id="select2-data-model_infermaticai_select" tabindex="-1" class="select2-hidden-accessible" aria-hidden="true">
<option data-select2-id="select2-data-8-brf7"> -- Connect to the API -- </option>
</select><span class="select2 select2-container select2-container--default" dir="ltr" data-select2-id="select2-data-7-ovqj" style="width: 100%;"><span class="selection"><span class="select2-selection select2-selection--single" role="combobox"
aria-haspopup="true" aria-expanded="false" tabindex="0" aria-disabled="false" aria-labelledby="select2-model_infermaticai_select-container" aria-controls="select2-model_infermaticai_select-container"><span
class="select2-selection__rendered" id="select2-model_infermaticai_select-container" role="textbox" aria-readonly="true" title="
-- Connect to the API --
"> -- Connect to the API -- </span><span class="select2-selection__arrow" role="presentation"><b role="presentation"></b></span></span></span><span class="dropdown-wrapper" aria-hidden="true"></span></span>
</div>
</div>
<div data-tg-type="mancer" class="flex-container flexFlowColumn" style="display: none;">
<div class="flex-container flexFlowColumn">
</div>
<h4 data-i18n="Mancer API key"> Mancer API key <a href="https://mancer.tech/" class="notes-link" target="_blank">
<span class="fa-solid fa-circle-question note-link-span"></span>
</a>
</h4>
<div class="flex-container">
<input id="api_key_mancer" name="api_key_mancer" class="text_pole flex1 wide100p" maxlength="500" size="35" type="text" autocomplete="off" placeholder="❌ Missing key">
<div title="Clear your API key" data-i18n="[title]Clear your API key" class="menu_button fa-solid fa-circle-xmark clear-api-key" data-key="api_key_mancer">
</div>
</div>
<div data-for="api_key_mancer" class="neutral_warning" data-i18n="For privacy reasons, your API key will be hidden after you reload the page."> For privacy reasons, your API key will be hidden after you reload the page. </div>
<div class="flex1">
<h4 data-i18n="Mancer Model">Mancer Model</h4>
<select id="mancer_model" data-select2-id="select2-data-mancer_model" tabindex="-1" class="select2-hidden-accessible" aria-hidden="true">
<option data-i18n="-- Connect to the API --" data-select2-id="select2-data-2-zair"> -- Connect to the API -- </option>
</select><span class="select2 select2-container select2-container--default" dir="ltr" data-select2-id="select2-data-1-1lax" style="width: 100%;"><span class="selection"><span class="select2-selection select2-selection--single" role="combobox"
aria-haspopup="true" aria-expanded="false" tabindex="0" aria-disabled="false" aria-labelledby="select2-mancer_model-container" aria-controls="select2-mancer_model-container"><span class="select2-selection__rendered"
id="select2-mancer_model-container" role="textbox" aria-readonly="true" title="
-- Connect to the API --
"> -- Connect to the API -- </span><span class="select2-selection__arrow" role="presentation"><b role="presentation"></b></span></span></span><span class="dropdown-wrapper" aria-hidden="true"></span></span>
</div>
</div>
<div data-tg-type="ooba" class="flex-container flexFlowColumn">
<div class="flex-container flexFlowColumn">
<a href="https://github.com/oobabooga/text-generation-webui" target="_blank">
oobabooga/text-generation-webui
</a>
<label for="">
<span data-i18n="Make sure you run it with">Make sure you run it with</span>
<code>--api</code>
<span data-i18n="flag">flag</span>
</label>
</div>
<h4 data-i18n="API key (optional)">API key (optional)</h4>
<div class="flex-container">
<input id="api_key_ooba" name="api_key_ooba" class="text_pole flex1 wide100p" maxlength="500" size="35" type="text" autocomplete="off" placeholder="❌ Missing key">
<div title="Clear your API key" data-i18n="[title]Clear your API key" class="menu_button fa-solid fa-circle-xmark clear-api-key" data-key="api_key_ooba">
</div>
</div>
<div data-for="api_key_ooba" class="neutral_warning" data-i18n="For privacy reasons, your API key will be hidden after you reload the page."> For privacy reasons, your API key will be hidden after you reload the page. </div>
<div class="flex1">
<h4 data-i18n="Server url">Server URL</h4>
<small data-i18n="Example: 127.0.0.1:5000">Example: http://127.0.0.1:5000</small>
<input id="textgenerationwebui_api_url_text" name="textgenerationwebui_api_url" class="text_pole wide100p ui-autocomplete-input" maxlength="500" value="" autocomplete="off" data-server-history="ooba_blocking">
</div>
<input id="custom_model_textgenerationwebui" class="text_pole wide100p" maxlength="500" placeholder="Custom model (optional)" data-i18n="[placeholder]Custom model (optional)" type="text" x-setting-id="custom_model">
</div>
<div data-tg-type="aphrodite" style="display: none;">
<div class="flex-container flexFlowColumn">
<a href="https://github.com/PygmalionAI/aphrodite-engine" target="_blank" data-i18n="PygmalionAI/aphrodite-engine">
PygmalionAI/aphrodite-engine (OpenAI API wrapper mode)
</a>
</div>
<h4 data-i18n="Aphrodite API key">Aphrodite API key</h4>
<div class="flex-container">
<input id="api_key_aphrodite" name="api_key_aphrodite" class="text_pole flex1 wide100p" maxlength="500" size="35" type="text" autocomplete="off" placeholder="❌ Missing key">
<div title="Clear your API key" data-i18n="[title]Clear your API key" class="menu_button fa-solid fa-circle-xmark clear-api-key" data-key="api_key_aphrodite">
</div>
</div>
<div data-for="api_key_aphrodite" class="neutral_warning" data-i18n="For privacy reasons, your API key will be hidden after you reload the page."> For privacy reasons, your API key will be hidden after you reload the page. </div>
<div class="flex1">
<h4 data-i18n="API url">API URL</h4>
<small data-i18n="Example: 127.0.0.1:5000">Example: http://127.0.0.1:5000</small>
<input id="aphrodite_api_url_text" class="text_pole wide100p ui-autocomplete-input" maxlength="500" value="" autocomplete="off" data-server-history="aphrodite">
</div>
</div>
<div data-tg-type="llamacpp" style="display: none;">
<div class="flex-container flexFlowColumn">
<a href="https://github.com/ggerganov/llama.cpp" target="_blank" data-i18n="ggerganov/llama.cpp">
ggerganov/llama.cpp (inference server)
</a>
</div>
<div class="flex1">
<h4 data-i18n="API url">API URL</h4>
<small data-i18n="Example: 127.0.0.1:8080">Example: http://127.0.0.1:8080</small>
<input id="llamacpp_api_url_text" class="text_pole wide100p ui-autocomplete-input" maxlength="500" value="" autocomplete="off" data-server-history="llamacpp">
</div>
</div>
<div data-tg-type="ollama" style="display: none;">
<div class="flex-container flexFlowColumn">
<a href="https://github.com/jmorganca/ollama" target="_blank">
jmorganca/ollama
</a>
</div>
<div class="flex1">
<h4 data-i18n="API url">API URL</h4>
<small data-i18n="Example: 127.0.0.1:11434">Example: http://127.0.0.1:11434</small>
<input id="ollama_api_url_text" class="text_pole wide100p ui-autocomplete-input" maxlength="500" value="" autocomplete="off" data-server-history="ollama">
</div>
<div class="flex1">
<h4>
<span data-i18n="Ollama Model">Ollama Model </span>
</h4>
<select id="ollama_model" data-select2-id="select2-data-ollama_model" tabindex="-1" class="select2-hidden-accessible" aria-hidden="true">
<option data-i18n="-- Connect to the API --" data-select2-id="select2-data-6-60w7"> -- Connect to the API -- </option>
</select><span class="select2 select2-container select2-container--default" dir="ltr" data-select2-id="select2-data-5-cuxk" style="width: 100%;"><span class="selection"><span class="select2-selection select2-selection--single" role="combobox"
aria-haspopup="true" aria-expanded="false" tabindex="0" aria-disabled="false" aria-labelledby="select2-ollama_model-container" aria-controls="select2-ollama_model-container"><span class="select2-selection__rendered"
id="select2-ollama_model-container" role="textbox" aria-readonly="true" title="
-- Connect to the API --
"> -- Connect to the API -- </span><span class="select2-selection__arrow" role="presentation"><b role="presentation"></b></span></span></span><span class="dropdown-wrapper" aria-hidden="true"></span></span>
<div id="ollama_download_model" class="menu_button menu_button_icon">
<i class="fa-solid fa-download"></i>
<span data-i18n="Download">Download</span>
</div>
</div>
</div>
<div data-tg-type="tabby" style="display: none;">
<div class="flex-container flexFlowColumn">
<a href="https://github.com/theroyallab/tabbyAPI" target="_blank">
theroyallab/tabbyAPI
</a>
</div>
<h4 data-i18n="Tabby API key">Tabby API key</h4>
<div class="flex-container">
<input id="api_key_tabby" name="api_key_tabby" class="text_pole flex1 wide100p" maxlength="500" size="35" type="text" autocomplete="off" placeholder="❌ Missing key">
<div title="Clear your API key" data-i18n="[title]Clear your API key" class="menu_button fa-solid fa-circle-xmark clear-api-key" data-key="api_key_tabby">
</div>
</div>
<div data-for="api_key_tabby" class="neutral_warning" data-i18n="For privacy reasons, your API key will be hidden after you reload the page."> For privacy reasons, your API key will be hidden after you reload the page. </div>
<div class="flex1">
<h4 data-i18n="API url">API URL</h4>
<small data-i18n="Example: 127.0.0.1:5000">Example: http://127.0.0.1:5000</small>
<input id="tabby_api_url_text" class="text_pole wide100p ui-autocomplete-input" maxlength="500" value="" autocomplete="off" data-server-history="tabby">
</div>
</div>
<div data-tg-type="koboldcpp" style="display: none;">
<div class="flex-container flexFlowColumn">
<a href="https://github.com/LostRuins/koboldcpp" target="_blank">
LostRuins/koboldcpp
</a>
</div>
<div class="flex1">
<h4 data-i18n="API url">API URL</h4>
<small data-i18n="Example: 127.0.0.1:5001">Example: http://127.0.0.1:5001</small>
<input id="koboldcpp_api_url_text" class="text_pole wide100p ui-autocomplete-input" maxlength="500" value="" autocomplete="off" data-server-history="koboldcpp">
</div>
</div>
<div class="flex-container">
<div id="api_button_textgenerationwebui" class="api_button menu_button" type="submit" data-i18n="Connect" data-server-connect="ooba_blocking,aphrodite,tabby,koboldcpp">Connect</div>
<div data-tg-type="openrouter" class="menu_button menu_button_icon openrouter_authorize" title="Get your OpenRouter API token using OAuth flow. You will be redirected to openrouter.ai"
data-i18n="[title]Get your OpenRouter API token using OAuth flow. You will be redirected to openrouter.ai" style="display: none;">Authorize</div>
<div class="api_loading menu_button" data-i18n="Cancel">Cancel</div>
</div>
<label data-tg-type="ooba,aphrodite" class="checkbox_label margin-bot-10px" for="legacy_api_textgenerationwebui">
<input type="checkbox" id="legacy_api_textgenerationwebui" x-setting-id="legacy_api">
<span data-i18n="Legacy API (pre-OAI, no streaming)">Legacy API (pre-OAI, no streaming)</span>
</label>
<label data-tg-type="ooba" class="checkbox_label margin-bot-10px" for="bypass_status_check_textgenerationwebui">
<input type="checkbox" id="bypass_status_check_textgenerationwebui" x-setting-id="bypass_status_check">
<span data-i18n="Bypass status check">Bypass status check</span>
</label>
</form>
POST javascript:void(null);
<form id="openai_form" data-source="openai" action="javascript:void(null);" method="post" enctype="multipart/form-data" style="display: none;">
<h4><span data-i18n="OpenAI API key">OpenAI API key</span></h4>
<div>
<a id="openai_api_usage" href="https://platform.openai.com/account/usage" target="_blank">
<span data-i18n="View API Usage Metrics">View API Usage Metrics</span>
</a>
</div>
<span>
<ol>
<li>
<span data-i18n="Follow">Follow</span>
<a href="https://docs.sillytavern.app/usage/api-connections/openai/" class="notes-link" target="_blank"><span data-i18n="these directions"> these directions </span></a>
<span data-i18n="to get your OpenAI API key.">to get your OpenAI API key.</span>
</li>
<li>
<span data-i18n="Enter it in the box below">Enter it in the box below:</span>
</li>
</ol>
</span>
<div class="flex-container">
<input id="api_key_openai" name="api_key_openai" class="text_pole flex1" maxlength="500" value="" type="text" autocomplete="off" placeholder="❌ Missing key">
<div title="Clear your API key" data-i18n="[title]Clear your API key" class="menu_button fa-solid fa-circle-xmark clear-api-key" data-key="api_key_openai"></div>
</div>
<div id="ReverseProxyWarningMessage2" class="reverse_proxy_warning" style="display: none;">
<b data-i18n="Use Proxy password field instead. This input will be ignored.">
Use "Proxy password" field instead. This input will be ignored.
</b>
</div>
<div data-for="api_key_openai" class="neutral_warning"> For privacy reasons, your API key will be hidden after you reload the page. </div>
<div>
<h4 data-i18n="OpenAI Model">OpenAI Model</h4>
<select id="model_openai_select">
<optgroup label="GPT-3.5 Turbo">
<option value="gpt-3.5-turbo" selected="selected">gpt-3.5-turbo</option>
<option value="gpt-3.5-turbo-0125">gpt-3.5-turbo-0125 (2024)</option>
<option value="gpt-3.5-turbo-1106">gpt-3.5-turbo-1106 (2023)</option>
<option value="gpt-3.5-turbo-0613">gpt-3.5-turbo-0613 (2023)</option>
<option value="gpt-3.5-turbo-0301">gpt-3.5-turbo-0301 (2023)</option>
<option value="gpt-3.5-turbo-16k">gpt-3.5-turbo-16k</option>
<option value="gpt-3.5-turbo-16k-0613">gpt-3.5-turbo-16k-0613 (2023)</option>
</optgroup>
<optgroup label="GPT-3.5 Turbo Instruct">
<option value="gpt-3.5-turbo-instruct">gpt-3.5-turbo-instruct</option>
<option value="gpt-3.5-turbo-instruct-0914">gpt-3.5-turbo-instruct-0914</option>
</optgroup>
<optgroup label="GPT-4">
<option value="gpt-4">gpt-4</option>
<option value="gpt-4-turbo-preview">gpt-4-turbo-preview</option>
<option value="gpt-4-vision-preview">gpt-4-vision-preview</option>
<option value="gpt-4-0125-preview">gpt-4-0125-preview (2024)</option>
<option value="gpt-4-1106-preview">gpt-4-1106-preview (2023)</option>
<option value="gpt-4-0613">gpt-4-0613 (2023)</option>
<option value="gpt-4-0314">gpt-4-0314 (2023)</option>
<option value="gpt-4-32k">gpt-4-32k</option>
<option value="gpt-4-32k-0613">gpt-4-32k-0613 (2023)</option>
<option value="gpt-4-32k-0314">gpt-4-32k-0314 (2023)</option>
</optgroup>
<optgroup label="Other">
<option value="text-davinci-003">text-davinci-003</option>
<option value="text-davinci-002">text-davinci-002</option>
<option value="text-curie-001">text-curie-001</option>
<option value="text-babbage-001">text-babbage-001</option>
<option value="text-ada-001">text-ada-001</option>
<option value="code-davinci-002">code-davinci-002</option>
</optgroup>
<optgroup id="openai_external_category" label="External" style="display: none;">
</optgroup>
</select>
<label for="openai_bypass_status_check" class="checkbox_label">
<input id="openai_bypass_status_check" type="checkbox">
<span data-i18n="Bypass API status check">Bypass API status check</span>
</label>
<label for="openai_show_external_models" class="checkbox_label">
<input id="openai_show_external_models" type="checkbox">
<span data-i18n="Show External models (provided by API)">Show "External" models (provided by API)</span>
</label>
</div>
</form>
POST javascript:void(null);
<form id="claude_form" data-source="claude" action="javascript:void(null);" method="post" enctype="multipart/form-data" style="display: none;">
<h4>Claude API Key</h4>
<div>
<span data-i18n="Get your key from">Get your key from </span> <a target="_blank" href="https://console.anthropic.com/account/keys" data-i18n="Anthropic's developer console">Anthropic's developer console</a>.
</div>
<div>
<b data-i18n="Slack and Poe cookies will not work here, do not bother trying.">
Slack and Poe cookies will not work here, do not bother trying.
</b>
</div>
<div class="flex-container">
<input id="api_key_claude" name="api_key_claude" class="text_pole flex1" maxlength="500" value="" type="text" autocomplete="off" placeholder="❌ Missing key">
<div title="Clear your API key" data-i18n="[title]Clear your API key" class="menu_button fa-solid fa-circle-xmark clear-api-key" data-key="api_key_claude"></div>
</div>
<div data-for="api_key_claude" class="neutral_warning"> For privacy reasons, your API key will be hidden after you reload the page. </div>
<div>
<h4 data-i18n="Claude Model">Claude Model</h4>
<select id="model_claude_select">
<optgroup label="Latest">
<option value="claude-2">claude-2</option>
<option value="claude-v1">claude-v1</option>
<option value="claude-v1-100k">claude-v1-100k</option>
<option value="claude-instant-v1" selected="selected">claude-instant-v1</option>
<option value="claude-instant-v1-100k">claude-instant-v1-100k</option>
</optgroup>
<optgroup label="Sub-versions">
<option value="claude-2.1">claude-2.1</option>
<option value="claude-2.0">claude-2.0</option>
<option value="claude-v1.3">claude-v1.3</option>
<option value="claude-v1.3-100k">claude-v1.3-100k</option>
<option value="claude-v1.2">claude-v1.2</option>
<option value="claude-v1.0">claude-v1.0</option>
<option value="claude-instant-1.2">claude-instant-1.2</option>
<option value="claude-instant-v1.1">claude-instant-v1.1</option>
<option value="claude-instant-v1.1-100k">claude-instant-v1.1-100k</option>
<option value="claude-instant-v1.0">claude-instant-v1.0</option>
</optgroup>
</select>
</div>
</form>
POST javascript:void(null);
<form id="windowai_form" data-source="windowai" action="javascript:void(null);" method="post" enctype="multipart/form-data" style="display: none;">
<div>
<h4 data-i18n="Window AI Model">Window AI Model</h4>
<select id="model_windowai_select">
<option value="" selected="selected">Use extension settings</option>
<option value="openai/gpt-3.5-turbo">openai/gpt-3.5-turbo</option>
<option value="openai/gpt-3.5-turbo-16k">openai/gpt-3.5-turbo-16k</option>
<option value="openai/gpt-4">openai/gpt-4</option>
<option value="openai/gpt-4-32k">openai/gpt-4-32k</option>
<option value="anthropic/claude-instant-v1">anthropic/claude-instant-v1</option>
<option value="anthropic/claude-instant-v1-100k">anthropic/claude-instant-v1-100k</option>
<option value="anthropic/claude-v1">anthropic/claude-v1</option>
<option value="anthropic/claude-v1-100k">anthropic/claude-v1-100k</option>
<option value="google/palm-2-chat-bison">google/palm-2-chat-bison</option>
<option value="google/palm-2-codechat-bison">google/palm-2-codechat-bison</option>
<option value="togethercomputer/GPT-NeoXT-Chat-Base-20B">togethercomputer/GPT-NeoXT-Chat-Base-20B</option>
<option value="cohere/command-nightly">cohere/command-nightly</option>
</select>
</div>
</form>
POST javascript:void(null);
<form id="openrouter_form" data-source="openrouter" action="javascript:void(null);" method="post" enctype="multipart/form-data">
<div>
<h4 data-i18n="OpenRouter Model">OpenRouter Model</h4>
<select id="model_openrouter_select" data-select2-id="select2-data-model_openrouter_select" tabindex="-1" class="select2-hidden-accessible" aria-hidden="true">
<option data-i18n="Connect to the API" data-select2-id="select2-data-12-wxto">-- Connect to the API --</option>
</select><span class="select2 select2-container select2-container--default" dir="ltr" data-select2-id="select2-data-11-rb1n" style="width: 100%;"><span class="selection"><span class="select2-selection select2-selection--single" role="combobox"
aria-haspopup="true" aria-expanded="false" tabindex="0" aria-disabled="false" aria-labelledby="select2-model_openrouter_select-container" aria-controls="select2-model_openrouter_select-container"><span class="select2-selection__rendered"
id="select2-model_openrouter_select-container" role="textbox" aria-readonly="true" title="Select a model"><span class="select2-selection__placeholder">Select a model</span></span><span class="select2-selection__arrow"
role="presentation"><b role="presentation"></b></span></span></span><span class="dropdown-wrapper" aria-hidden="true"></span></span>
</div>
<div class="marginTopBot5">
<div class="inline-drawer wide100p">
<div class="inline-drawer-toggle inline-drawer-header">
<b data-i18n="Model Order">OpenRouter Model Sorting</b>
<div class="fa-solid fa-circle-chevron-down inline-drawer-icon down"></div>
</div>
<div class="inline-drawer-content m-b-1">
<div class="marginTopBot5">
<label for="openrouter_sort_models" class="checkbox_label">
<select id="openrouter_sort_models">
<option data-i18n="Alphabetically" value="alphabetically">Alphabetically</option>
<option data-i18n="Price" value="pricing.prompt">Price (cheapest)</option>
<option data-i18n="Context Size" value="context_length">Context Size</option>
</select>
</label>
</div>
<div class="marginTopBot5">
<label for="openrouter_group_models" class="checkbox_label">
<input id="openrouter_group_models" type="checkbox">
<span data-i18n="Group by vendors">Group by vendors</span>
</label>
<div class="toggle-description justifyLeft wide100p">
<span data-i18n="Group by vendors Description"> Put OpenAI models in one group, Anthropic models in other group, etc. Can be combined with sorting. </span>
</div>
</div>
</div>
</div>
</div>
<div class="marginTopBot5">
<label for="openrouter_use_fallback" class="checkbox_label">
<input id="openrouter_use_fallback" type="checkbox">
<span data-i18n="Allow fallback routes">Allow fallback routes</span>
</label>
<div class="toggle-description justifyLeft wide100p">
<span data-i18n="Allow fallback routes Description"> Automatically chooses an alternative model if the chosen model can't serve your request. </span>
</div>
</div>
<div class="marginTopBot5">
<label for="openrouter_force_instruct" class="checkbox_label">
<input id="openrouter_force_instruct" type="checkbox">
<span data-i18n="Force Instruct Mode formatting">Force Instruct Mode formatting</span>
</label>
<div class="toggle-description justifyLeft wide100p">
<span data-i18n="Force Instruct Mode formatting Description"> If both Instruct Mode and this are enabled, the prompt will be formatted by SillyTavern using the current advanced formatting settings (except instruct System Prompt). If disabled,
the prompt will be formatted by OpenRouter. </span>
</div>
</div>
<h4 data-i18n="OpenRouter API Key">OpenRouter API Key</h4>
<div>
<small data-i18n="Click Authorize below or get the key from"> Click "Authorize" below or get the key from </small> <a target="_blank" href="https://openrouter.ai/keys/">OpenRouter</a>. <br>
<a href="https://openrouter.ai/account" target="_blank" data-i18n="View Remaining Credits">View Remaining Credits</a>
</div>
<div class="flex-container">
<input id="api_key_openrouter" name="api_key_openrouter" class="text_pole flex1 api_key_openrouter" maxlength="500" value="" type="text" autocomplete="off" placeholder="✔️ Key saved">
<div title="Clear your API key" data-i18n="[title]Clear your API key" class="menu_button fa-solid fa-circle-xmark clear-api-key" data-key="api_key_openrouter"></div>
</div>
<div data-for="api_key_openrouter" class="neutral_warning"> For privacy reasons, your API key will be hidden after you reload the page. </div>
</form>
POST javascript:void(null);
<form id="scale_form" data-source="scale" action="javascript:void(null);" method="post" enctype="multipart/form-data" style="display: none;">
<div id="normal_scale_form">
<h4 data-i18n="Scale API Key">Scale API Key</h4>
<div class="flex-container">
<input id="api_key_scale" name="api_key_scale" class="text_pole flex1" maxlength="500" value="" autocomplete="off" placeholder="❌ Missing key">
<div title="Clear your API key" data-i18n="[title]Clear your API key" class="menu_button fa-solid fa-circle-xmark clear-api-key" data-key="api_key_scale"></div>
</div>
<div data-for="api_key_scale" class="neutral_warning"> For privacy reasons, your API key will be hidden after you reload the page. </div>
<h4>Scale API URL</h4>
<input id="api_url_scale" name="api_url_scale" class="text_pole" maxlength="500" value="" autocomplete="off" placeholder="https://dashboard.scale.com/spellbook/api/v2/deploy/xxxxxxx">
</div>
<div id="alt_scale_form" style="display: none;">
<h4>Scale Cookie (_jwt)</h4>
<div class="flex-container">
<input id="scale_cookie" name="scale_cookie" class="text_pole flex1" maxlength="500" value="" autocomplete="off" placeholder="❌ Missing key">
<div title="Clear your cookie" data-i18n="[title]Clear your cookie" class="menu_button fa-solid fa-circle-xmark clear-api-key" data-key="scale_cookie"></div>
</div>
<div data-for="scale_cookie" class="neutral_warning"> For privacy reasons, your cookie will be hidden after you reload the page. </div>
</div>
<!-- Its only purpose is to trigger max context size check -->
<select id="model_scale_select" class="displayNone"></select>
<label for="scale-alt" class="checkbox_label">
<input id="scale-alt" type="checkbox" checked="">
<span data-i18n="Alt Method">Alt Method</span>
</label>
</form>
POST javascript:void(null);
<form id="ai21_form" data-source="ai21" action="javascript:void(null);" method="post" enctype="multipart/form-data" style="display: none;">
<h4 data-i18n="AI21 API Key">AI21 API Key</h4>
<div class="flex-container">
<input id="api_key_ai21" name="api_key_ai21" class="text_pole flex1" maxlength="500" value="" type="text" autocomplete="off" placeholder="❌ Missing key">
<div title="Clear your API key" data-i18n="[title]Clear your API key" class="menu_button fa-solid fa-circle-xmark clear-api-key" data-key="api_key_ai21"></div>
</div>
<div data-for="api_key_ai21" class="neutral_warning"> For privacy reasons, your API key will be hidden after you reload the page. </div>
<div>
<h4 data-i18n="AI21 Model">AI21 Model</h4>
<select id="model_ai21_select">
<optgroup label="Latest">
<option value="j2-ultra" selected="selected">j2-ultra</option>
<option value="j2-mid">j2-mid</option>
<option value="j2-light">j2-light</option>
</optgroup>
</select>
</div>
</form>
POST javascript:void(null);
<form id="makersuite_form" data-source="makersuite" action="javascript:void(null);" method="post" enctype="multipart/form-data" style="display: none;">
<h4 data-i18n="MakerSuite API Key">MakerSuite API Key</h4>
<div class="flex-container">
<input id="api_key_makersuite" name="api_key_makersuite" class="text_pole flex1" maxlength="500" value="" type="text" autocomplete="off" placeholder="❌ Missing key">
<div title="Clear your API key" data-i18n="[title]Clear your API key" class="menu_button fa-solid fa-circle-xmark clear-api-key" data-key="api_key_makersuite"></div>
</div>
<div data-for="api_key_makersuite" class="neutral_warning"> For privacy reasons, your API key will be hidden after you reload the page. </div>
<div>
<h4 data-i18n="Google Model">Google Model</h4>
<select id="model_google_select">
<option value="gemini-pro" selected="selected">Gemini Pro</option>
<option value="gemini-pro-vision">Gemini Pro Vision</option>
<option value="text-bison-001">Bison Text</option>
<option value="chat-bison-001">Bison Chat</option>
</select>
</div>
</form>
POST javascript:void(null);
<form id="mistralai_form" data-source="mistralai" action="javascript:void(null);" method="post" enctype="multipart/form-data" style="display: none;">
<h4 data-i18n="MistralAI API Key">MistralAI API Key</h4>
<div class="flex-container">
<input id="api_key_mistralai" name="api_key_mistralai" class="text_pole flex1" maxlength="500" value="" type="text" autocomplete="off" placeholder="❌ Missing key">
<div title="Clear your API key" data-i18n="[title]Clear your API key" class="menu_button fa-solid fa-circle-xmark clear-api-key" data-key="api_key_mistralai"></div>
</div>
<div data-for="api_key_mistralai" class="neutral_warning"> For privacy reasons, your API key will be hidden after you reload the page. </div>
<div>
<h4 data-i18n="MistralAI Model">MistralAI Model</h4>
<select id="model_mistralai_select">
<optgroup label="Latest">
<option value="open-mistral-7b">open-mistral-7b</option>
<option value="open-mixtral-8x7b">open-mixtral-8x7b</option>
<option value="mistral-small-latest">mistral-small-latest</option>
<option value="mistral-medium-latest" selected="selected">mistral-medium-latest</option>
<option value="mistral-large-latest">mistral-large-latest</option>
</optgroup>
<optgroup label="Sub-versions">
<option value="mistral-tiny-2312">mistral-tiny-2312</option>
<option value="mistral-small-2312">mistral-small-2312</option>
<option value="mistral-small-2402">mistral-small-2402</option>
<option value="mistral-medium-2312">mistral-medium-2312</option>
<option value="mistral-large-2402">mistral-large-2402</option>
</optgroup>
</select>
</div>
</form>
<form id="custom_form" data-source="custom" style="display: none;">
<h4 data-i18n="Custom Endpoint (Base URL)">Custom Endpoint (Base URL)</h4>
<div class="flex-container">
<input id="custom_api_url_text" class="text_pole wide100p" maxlength="500" value="" autocomplete="off" placeholder="Example: http://localhost:1234/v1">
</div>
<div>
<small> Doesn't work? Try adding <code>/v1</code> at the end of the URL! </small>
</div>
<h4>
<span data-i18n="Custom API Key">Custom API Key</span>
<small>(Optional)</small>
</h4>
<div class="flex-container">
<input id="api_key_custom" name="api_key_custom" class="text_pole flex1" maxlength="500" value="" type="text" autocomplete="off" placeholder="❌ Missing key">
<div title="Clear your API key" data-i18n="[title]Clear your API key" class="menu_button fa-solid fa-circle-xmark clear-api-key" data-key="api_key_custom"></div>
</div>
<div data-for="api_key_custom" class="neutral_warning"> For privacy reasons, your API key will be hidden after you reload the page. </div>
<h4>Enter a Model ID</h4>
<div class="flex-container">
<input id="custom_model_id" class="text_pole wide100p" maxlength="500" value="" autocomplete="off" placeholder="Example: gpt-3.5-turbo">
</div>
<h4 data-i18n="Available Models">Available Models</h4>
<div class="flex-container">
<select id="model_custom_select" class="text_pole"></select>
</div>
</form>
POST javascript:void(null);
<form id="form_bg_download" class="bg_example no-border no-shadow" action="javascript:void(null);" method="post" enctype="multipart/form-data">
<label class="input-file">
<input type="file" id="add_bg_button" name="avatar" accept="image/png, image/jpeg, image/jpg, image/gif, image/bmp">
<div class="bg_example no-border no-shadow add_bg_but" style="background-image: url('/img/addbg3.png');"></div>
</label>
</form>
<form target="_blank" rel="noopener">
<input hidden="" accept="application/zip" name="expression_upload_pack" id="expression_upload_pack" type="file">
<input hidden="" accept="image/*" name="expression_upload" id="expression_upload" type="file">
</form>
<form id="tts_provider_settings" class="inline-drawer-content">
<p>Uses the voices provided by your operating system</p>
<label for="system_tts_rate">Rate: <span id="system_tts_rate_output">1</span></label>
<input id="system_tts_rate" type="range" value="1" min="0.5" max="2" step="0.1">
<label for="system_tts_pitch">Pitch: <span id="system_tts_pitch_output">1</span></label>
<input id="system_tts_pitch" type="range" value="1" min="0" max="2" step="0.1">
</form>
POST javascript:void(null);
<form id="form_upload_avatar" action="javascript:void(null);" method="post" enctype="multipart/form-data">
<input type="file" id="avatar_upload_file" accept="image/*" name="avatar">
<input type="hidden" id="avatar_upload_overwrite" name="overwrite_name" value="">
</form>
POST javascript:void(null);
<form id="form_create" action="javascript:void(null);" method="post" enctype="multipart/form-data">
<div id="avatar-and-name-block">
<div id="name_div">
<input id="character_name_pole" name="ch_name" class="text_pole" data-i18n="[placeholder]Name this character" placeholder="Name this character" maxlength="100" value="" autocomplete="off">
<div class="extension_token_counter"> Tokens: <span data-token-counter="character_name_pole" data-token-permanent="true">counting...</span>
</div>
</div>
<div id="avatar_div" class="avatar_div alignitemsflexstart justifySpaceBetween flexnowrap flexGap5">
<label id="avatar_div_div" class="add_avatar avatar" for="add_avatar_button" title="Click to select a new avatar for this character" data-i18n="[title]Click to select a new avatar for this character">
<img id="avatar_load_preview" src="img/ai4.png" alt="avatar">
<input hidden="" type="file" id="add_avatar_button" name="avatar" accept="image/png, image/jpeg, image/jpg, image/gif, image/bmp">
</label>
<div class="flex-container flexFlowColumn">
<div class="flex-container flexFlowColumn">
<div class="flex-container justifyContentFlexEnd flexFlowColumn">
<div class="form_create_bottom_buttons_block">
<div id="rm_button_back" class="menu_button fa-solid fa-left-long "></div>
<!-- <div id="renameCharButton" class="menu_button fa-solid fa-user-pen" title="Rename Character"></div> -->
<div id="favorite_button" class="menu_button fa-solid fa-star" title="Add to Favorites" data-i18n="[title]Add to Favorites"></div>
<input type="hidden" id="fav_checkbox" name="fav">
<div id="advanced_div" class="menu_button fa-solid fa-book " title="Advanced Definitions" data-i18n="[title]Advanced Definition"></div>
<div id="world_button" class="menu_button fa-solid fa-globe" title="Character Lore" data-i18n="[title]Character Lore"></div>
<div class="chat_lorebook_button menu_button fa-solid fa-passport" title="Chat Lore" data-i18n="[title]Chat Lore"></div>
<div id="export_button" class="menu_button fa-solid fa-file-export " title="Export and Download" data-i18n="[title]Export and Download"></div>
<!-- <div id="set_chat_scenario" class="menu_button fa-solid fa-scroll" title="Set a chat scenario override"></div> -->
<!-- <div id="set_character_world" class="menu_button fa-solid fa-globe" title="Set a character World Info / Lorebook"></div> -->
<div id="dupe_button" class="menu_button fa-solid fa-clone " title="Duplicate Character" data-i18n="[title]Duplicate Character"></div>
<label for="create_button" id="create_button_label" class="menu_button fa-solid fa-user-check" title="Create Character" data-i18n="[title]Create Character">
<input type="submit" id="create_button" name="create_button">
</label>
<div id="delete_button" class="menu_button fa-solid fa-skull " title="Delete Character" data-i18n="[title]Delete Character"></div>
</div>
<label class="flex1" for="char-management-dropdown">
<select id="char-management-dropdown">
<option value="default" disabled="" selected="" data-i18n="More...">More...</option>
<option id="set_character_world" data-i18n="Link to World Info"> Link to World Info </option>
<option id="import_character_info" data-i18n="Import Card Lore"> Import Card Lore </option>
<option id="set_chat_scenario" data-i18n="Scenario Override"> Scenario Override </option>
<option id="convert_to_persona" data-i18n="Convert to Persona"> Convert to Persona </option>
<option id="renameCharButton" data-i18n="Rename"> Rename </option>
<!--<option id="dupe_button">
Duplicate
</option>
<option id="export_button">
Export
</option>
<option id="delete_button">
Delete
</option>-->
<option id="show_char_gallery">Show Gallery</option>
</select>
</label>
</div>
<div id="tags_div" class="marginBot5">
<div class="tag_controls">
<input id="tagInput" class="text_pole tag_input wide100p margin0 ui-autocomplete-input" data-i18n="[placeholder]Search / Create Tags" placeholder="Search / Create tags" maxlength="50" autocomplete="off">
<div class="tags_view menu_button fa-solid fa-tags" title="View all tags" data-i18n="[title]View all tags"></div>
</div>
<div id="tagList" class="tags"></div>
</div>
</div>
</div>
</div>
</div>
<hr>
<div id="description_div" class="marginBot5 flex-container alignitemscenter">
<span data-i18n="Character Description">Description</span>
<i class="editor_maximize fa-solid fa-maximize right_menu_button" data-for="description_textarea" title="Expand the editor"></i>
<a href="https://docs.sillytavern.app/usage/core-concepts/characterdesign/#character-description" class="notes-link" target="_blank">
<span class="fa-solid fa-circle-question note-link-span"></span>
</a>
</div>
<textarea id="description_textarea" data-i18n="[placeholder]Describe your character's physical and mental traits here." placeholder="Describe your character's physical and mental traits here." class="marginBot5" name="description"></textarea>
<div class="extension_token_counter"> Tokens: <span data-token-counter="description_textarea" data-token-permanent="true">counting...</span>
</div>
<div id="first_message_div" class="marginBot5 title_restorable">
<div class="flex-container alignitemscenter">
<span data-i18n="First message">First message</span>
<i class="editor_maximize fa-solid fa-maximize right_menu_button" data-for="firstmessage_textarea" title="Expand the editor"></i>
<a href="https://docs.sillytavern.app/usage/core-concepts/characterdesign/#first-message" class="notes-link" target="_blank">
<span class="fa-solid fa-circle-question note-link-span"></span>
</a>
</div>
<div class="menu_button menu_button_icon open_alternate_greetings margin0" title="Click to set additional greeting messages" data-i18n="[title]Click to set additional greeting messages">
<span data-i18n="Alt. Greetings"> Alt. Greetings </span>
</div>
</div>
<textarea id="firstmessage_textarea" data-i18n="[placeholder]This will be the first message from the character that starts every chat." placeholder="This will be the first message from the character that starts every chat." class="marginBot5"
name="first_mes"></textarea>
<div class="extension_token_counter"> Tokens: <span data-token-counter="firstmessage_textarea">counting...</span>
</div>
<div id="spoiler_free_desc" style="display: none;">
<div id="creators_notes_div" class="marginBot5 title_restorable">
<span data-i18n="Creator's Notes">Creator's Notes</span>
<div id="spoiler_free_desc_button" class="menu_button fa-solid fa-eye" title="Show / Hide Description and First Message" data-i18n="[title]Show / Hide Description and First Message"></div>
</div>
<hr>
<div id="creator_notes_spoiler" data-i18n="[placeholder]Creator's Notes" placeholder="Creator's Notes" class="marginBot5" name="creator_notes_spoiler"></div>
<!-- A button to show / hide description_div and description_textarea and first_message_div and firstmessage_textarea-->
</div>
<!-- these divs are invisible and used for server communication purposes -->
<div id="hidden-divs">
<input id="character_json_data" name="json_data" type="hidden">
<input id="avatar_url_pole" name="avatar_url" type="hidden">
<input id="selected_chat_pole" name="chat" type="hidden">
<input id="create_date_pole" name="create_date" type="hidden">
<input id="last_mes_pole" name="last_mes" type="hidden">
<input id="character_world" name="world" type="hidden">
</div>
<!-- now back to normal divs for display purposes-->
</form>
POST javascript:void(null);
<form id="form_import" action="javascript:void(null);" method="post" enctype="multipart/form-data">
<input multiple="" type="file" id="character_import_file" accept=".json, image/png, .yaml, .yml" name="avatar">
<input id="character_import_file_type" name="file_type" class="text_pole" maxlength="999" size="2" value="" autocomplete="off">
</form>
javascript:void(null);
<form id="form_character_search_form" action="javascript:void(null);">
<div id="rm_button_create" title="Create New Character" data-i18n="[title]Create New Character" class="menu_button fa-solid fa-user-plus "></div>
<div id="character_import_button" title="Import Character from File" data-i18n="[title]Import Character from File" class="menu_button fa-solid fa-file-import faSmallFontSquareFix"></div>
<div id="external_import_button" title="Import content from external URL" data-i18n="[title]Import content from external URL" class="menu_button fa-solid fa-cloud-arrow-down faSmallFontSquareFix"></div>
<div id="rm_button_group_chats" title="Create New Chat Group" data-i18n="[title]Create New Chat Group" class="menu_button fa-solid fa-users-gear "></div>
<input id="character_search_bar" class="text_pole width100p" type="search" data-i18n="[placeholder]Search..." placeholder="Search..." maxlength="100">
<select id="character_sort_order" title="Characters sorting order" data-i18n="[title]Characters sorting order">
<option data-field="name" data-order="asc" data-i18n="A-Z">A-Z</option>
<option data-field="name" data-order="desc" data-i18n="Z-A">Z-A</option>
<option data-field="create_date" data-order="desc" data-i18n="Newest">Newest</option>
<option data-field="create_date" data-order="asc" data-i18n="Oldest">Oldest</option>
<option data-field="fav" data-order="desc" data-rule="boolean" data-i18n="Favorites">Favorites</option>
<option data-field="date_last_chat" data-order="desc" data-i18n="Recent">Recent</option>
<option data-field="chat_size" data-order="desc" data-i18n="Most chats">Most chats</option>
<option data-field="chat_size" data-order="asc" data-i18n="Least chats">Least chats</option>
<option data-field="data_size" data-order="desc" data-i18n="Most tokens">Most tokens</option>
<option data-field="data_size" data-order="asc" data-i18n="Least tokens">Least tokens</option>
<option data-field="name" data-order="random" data-i18n="Random">Random</option>
</select>
</form>
POST javascript:void(null);
<form id="form_import_chat" action="javascript:void(null);" method="post" enctype="multipart/form-data" style="display: none;">
<input type="file" id="chat_import_file" accept=".json, .jsonl" name="avatar">
<input id="chat_import_file_type" name="file_type" class="text_pole" maxlength="999" size="2" value="" autocomplete="off" style="display: none;">
<input id="chat_import_avatar_url" name="avatar_url" class="text_pole" maxlength="999" size="2" value="" autocomplete="off" style="display: none;">
<input id="chat_import_character_name" name="character_name" class="text_pole" maxlength="999" size="2" value="" autocomplete="off" style="display: none;">
</form>
<form class="world_entry_form wi-card-entry">
<div class="inline-drawer wide100p">
<div class="inline-drawer-toggle inline-drawer-header gap5px padding0">
<span class="drag-handle">☰</span>
<div class="gap5px world_entry_thin_controls wide100p alignitemscenter">
<div class="fa-fw fa-solid fa-circle-chevron-down inline-drawer-icon down"></div>
<div class="flex-container alignitemscenter wide100p">
<div class="WIEntryTitleAndStatus flex-container flex1 alignitemscenter">
<div class="flex-container flex1">
<textarea class="text_pole autoSetHeight" name="comment" maxlength="5000" data-i18n="[placeholder]Entry Title/Memo" placeholder="Entry Title/Memo"></textarea>
</div>
<!-- <span class="world_entry_form_position_value"></span> -->
<select data-i18n="[title]WI Entry Status:🔵 Constant🟢 Normal❌ Disabled" title="WI Entry Status:
🔵 Constant
🟢 Normal
❌ Disabled" name="entryStateSelector" class="widthNatural margin0">
<option title="WI Entry Status:
🔵 Constant
🟢 Normal
❌ Disabled" value="constant" data-i18n="[title]WI Entry Status:🔵 Constant🟢 Normal❌ Disabled">🔵</option>
<option title="WI Entry Status:
🔵 Constant
🟢 Normal
❌ Disabled" value="normal" data-i18n="[title]WI Entry Status:🔵 Constant🟢 Normal❌ Disabled">🟢</option>
<option title="WI Entry Status:
🔵 Constant
🟢 Normal
❌ Disabled" value="disabled" data-i18n="[title]WI Entry Status:🔵 Constant🟢 Normal❌ Disabled">❌</option>
</select>
</div>
<div class="WIEnteryHeaderControls flex-container">
<div name="PositionBlock" class="world_entry_form_control world_entry_form_radios wi-enter-footer-text">
<label for="position" class="WIEntryHeaderTitleMobile" data-i18n="Position:">Position:</label>
<select name="position" class="widthNatural margin0" data-i18n="[title]T_Position" title="↑Char: Before Character Definitions
↓Char: After Character Definitions
↑AN: Before Author's Note
↓AN: After Author's Note
@D: at Depth
">
<option value="0" data-i18n="[title]T_Position" title="↑Char: Before Character Definitions
↓Char: After Character Definitions
↑AN: Before Author's Note
↓AN: After Author's Note
@D: at Depth
">↑Char</option>
<option value="1" data-i18n="[title]T_Position" title="↑Char: Before Character Definitions
↓Char: After Character Definitions
↑AN: Before Author's Note
↓AN: After Author's Note
@D: at Depth
">↓Char</option>
<option value="2" data-i18n="[title]T_Position" title="↑Char: Before Character Definitions
↓Char: After Character Definitions
↑AN: Before Author's Note
↓AN: After Author's Note
@D: at Depth
">↑AN</option>
<option value="3" data-i18n="[title]T_Position" title="↑Char: Before Character Definitions
↓Char: After Character Definitions
↑AN: Before Author's Note
↓AN: After Author's Note
@D: at Depth
">↓AN</option>
<option value="4" data-i18n="[title]T_Position" title="↑Char: Before Character Definitions
↓Char: After Character Definitions
↑AN: Before Author's Note
↓AN: After Author's Note
@D: at Depth
">@D</option>
</select>
</div>
<div class="world_entry_form_control wi-enter-footer-text flex-container flexNoGap">
<label for="depth" class="WIEntryHeaderTitleMobile" data-i18n="Depth:">Depth:</label>
<input title="Depth" class="text_pole wideMax100px margin0" type="number" name="depth" placeholder="" min="0" max="999">
</div>
<div class="world_entry_form_control wi-enter-footer-text flex-container flexNoGap">
<label for="order" class="WIEntryHeaderTitleMobile" data-i18n="Order:">Order:</label>
<input title="Order" class="text_pole wideMax100px margin0" type="number" name="order" placeholder="" min="0" max="999">
</div>
<div class="world_entry_form_control wi-enter-footer-text flex-container flexNoGap probabilityContainer">
<label for="order" class="WIEntryHeaderTitleMobile" data-i18n="Trigger %:">Trigger %:</label>
<input title="Probability" class="text_pole wideMax100px margin0" type="number" name="probability" placeholder="" min="0" max="100">
</div>
</div>
</div>
</div>
<i class="menu_button delete_entry_button fa-solid fa-trash-can" type="submit" value=""></i>
</div>
<div class="inline-drawer-content flex-container paddingBottom5px wide100p">
<div class="flex-container wide100p alignitemscenter">
<div name="keywordsAndLogicBlock" class="flex-container wide100p alignitemscenter">
<div class="world_entry_form_control flex1">
<small class="displayNone">
<span data-i18n="Comma separated (required)"> Comma separated (required) </span>
</small>
<small class="textAlignCenter" data-i18n="Primary Keywords">Primary Keywords</small>
<textarea class="text_pole keyprimarytextpole" name="key" rows="1" data-i18n="[placeholder]Comma separated (required)" placeholder="Comma separated (required)" maxlength="2000"></textarea>
</div>
<div class="world_entry_form_control">
<small class="textAlignCenter" data-i18n="Logic">Logic</small>
<select name="entryLogicType" class="text_pole widthFitContent margin0">
<option value="0" data-i18n="AND ANY">AND ANY</option>
<option value="3" data-i18n="AND ALL">AND ALL</option>
<option value="1" data-i18n="NOT ALL">NOT ALL</option>
<option value="2" data-i18n="NOT ANY">NOT ANY</option>
</select>
</div>
<div class="world_entry_form_control keysecondary flex1">
<small class="displayNone">
<span data-i18n="(ignored if empty)"> (ignored if empty) </span>
</small>
<small class="textAlignCenter" data-i18n="Optional Filter">Optional Filter</small>
<div class="flex-container flexFlowRow alignitemscenter">
<textarea class="text_pole keysecondarytextpole" name="keysecondary" rows="1" data-i18n="[placeholder]Comma separated (ignored if empty)" placeholder="Comma separated list" maxlength="2000"></textarea>
</div>
</div>
</div>
<div name="perEntryOverridesBlock" class="flex-container wide100p alignitemscenter">
<div class="world_entry_form_control flex1">
<small class="textAlignCenter" data-i18n="Scan Depth">Scan Depth</small>
<input class="text_pole margin0" name="scanDepth" type="number" placeholder="Use global setting" data-i18n="[placeholder]Use global setting" max="1000">
</div>
<div class="world_entry_form_control flex1">
<small class="textAlignCenter" data-i18n="Case-Sensitive">Case-Sensitive</small>
<select name="caseSensitive" class="text_pole widthNatural margin0">
<option value="null" data-i18n="Use global setting">Use global setting</option>
<option value="true" data-i18n="Yes">Yes</option>
<option value="false" data-i18n="No">No</option>
</select>
</div>
<div class="world_entry_form_control flex1">
<small class="textAlignCenter" data-i18n="Match Whole Words">Match Whole Words</small>
<select name="matchWholeWords" class="text_pole widthNatural margin0">
<option value="null" data-i18n="Use global setting">Use global setting</option>
<option value="true" data-i18n="Yes">Yes</option>
<option value="false" data-i18n="No">No</option>
</select>
</div>
<div class="world_entry_form_control flex1" title="Can be used to automatically activate Quick Replies" data-i18n="[title]Can be used to automatically activate Quick Replies">
<small class="textAlignCenter" data-i18n="Automation ID">Automation ID</small>
<input class="text_pole margin0" name="automationId" type="text" placeholder="( None )" data-i18n="[placeholder]( None )">
</div>
</div>
<div name="contentAndCharFilterBlock" class="world_entry_thin_controls flex2">
<div class="world_entry_form_control flex1">
<label for="content ">
<small>
<span data-i18n="Content" class="alignitemscenter flex-container flexnowrap wide100p justifySpaceBetween">
<span class="alignitemscenter flex-container flexNoGap"> Content </span>
<span> (Tokens: <span class="world_entry_form_token_counter" data-first-run="true">counting...</span>) <span class="world_entry_form_uid_value" data-first-run="true"></span>
</span>
<div>
<label class="checkbox flex-container alignitemscenter flexNoGap">
<input type="checkbox" name="exclude_recursion">
<span data-i18n="Exclude from recursion"> Non-recursable (this entry will not be activated by another) </span>
</label>
<label class="checkbox flex-container alignitemscenter flexNoGap">
<input type="checkbox" name="prevent_recursion">
<span data-i18n="Prevent further recursion (this entry will not activate others)"> Prevent further recursion (this entry will not activate others) </span>
</label>
</div>
</span>
</small>
<small class="displayNone">
<span data-i18n="What this keyword should mean to the AI"> What this keyword should mean to the AI, sent verbatim </span>
</small>
</label>
<textarea class="text_pole" name="content" rows="8" data-i18n="[placeholder]What this keyword should mean to the AI, sent verbatim" placeholder="What this keyword should mean to the AI, sent verbatim"></textarea>
</div>
</div>
<div class="world_entry_thin_controls commentContainer">
</div>
</div>
<div class="flex-container wide100p flexGap10">
<div class="flex1 flex-container flexFlowColumn flexNoGap">
<div class="flex-container justifySpaceBetween">
<small for="characterFilter" data-i18n="Filter to Character(s)"> Filter to Character(s) </small>
<label class="checkbox_label flexNoGap">
<input type="checkbox" name="character_exclusion">
<span>
<small data-i18n="Character Exclusion">Character Exclusion</small>
</span>
</label>
</div>
<div class="range-block-range">
<select name="characterFilter" multiple="">
<option value=""> -- Characters not found -- </option>
</select>
</div>
</div>
<div class="flex1 flex-container flexFlowColumn flexNoGap">
<label for="group">
<small data-i18n="Inclusion Group"> Inclusion Group </small>
</label>
<input type="text" class="text_pole" name="group" rows="1" data-i18n="[placeholder]Only one entry with the same label will be activated" placeholder="Only one entry with the same label will be activated">
</div>
</div>
<div name="WIEntryBottomControls" class="flex-container flex1 justifySpaceBetween world_entry_form_horizontal">
<div class="flex-container flexFlowColumn flexNoGap wi-enter-footer-text ">
<label class="checkbox flex-container">
<input type="checkbox" name="selective">
<span data-i18n="Selective">Selective</span>
</label>
<label class="checkbox flex-container">
<input type="checkbox" name="useProbability">
<span data-i18n="Use Probability">Use Probability</span>
</label>
<label class="checkbox flex-container">
<input type="checkbox" name="addMemo">
<span data-i18n="Add Memo">Add Memo</span>
</label>
</div>
</div>
</div>
</div>
</form>
<form class="completion_prompt_manager_popup_entry_form">
<div class="completion_prompt_manager_popup_entry_form_control">
<div class="completion_prompt_manager_popup_header">
<label for="completion_prompt_manager_popup_entry_form_prompt">
<span>Prompt List</span>
</label>
<a id="completion_prompt_manager_popup_close_button" title="close" class="fa-solid fa-close menu_button"></a>
</div>
<div class="text_muted">The list of prompts associated with this marker.</div>
<div id="completion_prompt_manager_popup_entry_form_inspect_list"></div>
</div>
</form>
<form class="completion_prompt_manager_popup_entry_form">
<div class="flex-container gap10px">
<div class="completion_prompt_manager_popup_entry_form_control flex1">
<label for="completion_prompt_manager_popup_entry_form_name">
<span>Name</span>
</label>
<div class="text_muted">A name for this prompt.</div>
<input id="completion_prompt_manager_popup_entry_form_name" class="text_pole" type="text" name="name">
</div>
<div class="completion_prompt_manager_popup_entry_form_control flex1">
<label for="completion_prompt_manager_popup_entry_form_role">
<span>Role</span>
</label>
<div class="text_muted">To whom this message will be attributed.</div>
<select id="completion_prompt_manager_popup_entry_form_role" class="text_pole" name="role">
<option value="system">System</option>
<option value="user">User</option>
<option value="assistant">AI Assistant</option>
</select>
</div>
</div>
<div class="flex-container gap10px">
<div class="completion_prompt_manager_popup_entry_form_control flex1">
<label for="completion_prompt_manager_popup_entry_form_injection_position">
<span>Position</span>
</label>
<div class="text_muted">Injection position. Next to other prompts (relative) or in-chat (absolute).</div>
<select id="completion_prompt_manager_popup_entry_form_injection_position" class="text_pole" name="injection_position">
<option value="0">Relative</option>
<option value="1">Absolute</option>
</select>
</div>
<div id="completion_prompt_manager_depth_block" class="completion_prompt_manager_popup_entry_form_control flex1">
<label for="completion_prompt_manager_popup_entry_form_injection_depth">
<span>Depth</span>
</label>
<div class="text_muted">Injection depth. 0 = after the last message, 1 = before the last message, etc.</div>
<input id="completion_prompt_manager_popup_entry_form_injection_depth" class="text_pole" type="number" name="injection_depth" min="0" max="999" value="4">
</div>
</div>
<div class="completion_prompt_manager_popup_entry_form_control">
<label for="completion_prompt_manager_popup_entry_form_prompt">
<span>Prompt</span>
</label>
<div class="text_muted">The prompt to be sent.</div>
<textarea id="completion_prompt_manager_popup_entry_form_prompt" class="text_pole" name="prompt"> </textarea>
</div>
<div class="completion_prompt_manager_popup_entry_form_footer">
<a id="completion_prompt_manager_popup_entry_form_close" title="close" class="fa-solid fa-close menu_button"></a>
<a id="completion_prompt_manager_popup_entry_form_reset" title="reset" class="fa-solid fa-undo menu_button"></a>
<a id="completion_prompt_manager_popup_entry_form_save" title="save" class="fa-solid fa-save menu_button" data-pm-prompt=""></a>
</div>
</form>
<form id="file_form" class="wide100p displayNone">
<div class="file_attached">
<input id="file_form_input" type="file" hidden="">
<input id="embed_file_input" type="file" hidden="">
<i class="fa-solid fa-file-alt"></i>
<span class="file_name">File Name</span>
<span class="file_size">File Size</span>
<button id="file_form_reset" type="reset" class="menu_button" title="Remove the file" data-i18n="[title]Remove the file">
<i class="fa fa-times"></i>
</button>
</div>
</form>
<form id="img_form" style="display: none;"><input id="img_file" type="file" hidden="" accept="image/*"></form>
Text Content
* Favorite * Tag * Duplicate * Persona * Delete Click slider numbers to input manually. MAD LAB MODE ON KOBOLD PRESETS GUI KoboldAI SettingsAce of SpadesBasic CoherenceBest GuessCoherent CreativityDeterministicGenesisGodlikeGood WindsLiminal DriftLow RiderLuna MothMaydayMiro BronzeMiro GoldMiro SilverOuroborosPleasing ResultsPro WriterRecoveredRuinssimple-proxy-for-tavernSpace AlienStorywriterTFS-with-Top-ATitanicUniversal-CreativeUniversal-LightUniversal-Super-Creative NOVELAI PRESETS Asper-KayraBlended-Coffee-KayraBlook-KayraCarefree-KayraCosmicCube-KayraEdgewise-ClioFresh-Coffee-ClioFresh-Coffee-KayraGreen-Active-Writer-KayraKeelback-ClioLong-Press-ClioPilotfish-KayraPro_Writer-KayraStelenes-KayraTalker-Chat-ClioTea_Time-KayraTesseract-KayraVingt-Un-ClioWriters-Daemon-Kayra CHAT COMPLETION PRESETS Default TEXT COMPLETION PRESETS AsterismBeam SearchBig OContrastive SearchDefaultDeterministicDivine IntellectKobold (Godlike)Kobold (Liminal Drift)LLaMa-PreciseMidnight EnigmaMiro BronzeMiro GoldMiro SilverMirostatNaiveNovelAI (Best Guess)NovelAI (Decadence)NovelAI (Genesis)NovelAI (Lycaenidae)NovelAI (Ouroboros)NovelAI (Pleasing Results)NovelAI (Sphinx Moth)NovelAI (Storywriter)ShortwaveSimple-1simple-proxy-for-tavernSpace AlienStarChatTFS-with-Top-ATitanicUniversal-CreativeUniversal-LightUniversal-Super-CreativeYara AI Module Changes the style of the generated text. No Module Instruct Prose Augmenter Text Adventure Response (tokens) Streaming Streaming Context (tokens) Unlocked -------------------------------------------------------------------------------- Streaming Display the response bit by bit as it is generated. When this is off, responses will be displayed all at once when they are complete. Temperature Repetition Penalty Repetition Penalty Range Repetition Penalty Slope Repetition Penalty Frequency Repetition Penalty Presence Tail Free Sampling Phrase Repetition Penalty Off Very light Light Medium Aggressive Very aggressive Unlocked Context Size Unrestricted maximum value for the context size slider. Enable only if you know what you're doing. Context Size (tokens) Max Response Length (tokens) Multiple swipes per generation Max prompt cost: Unknown -------------------------------------------------------------------------------- Streaming Display the response bit by bit as it is generated. When this is off, responses will be displayed all at once when they are complete. Temperature Frequency Penalty Presence Penalty Count Penalty Top K Top P Repetition Penalty Min P Top A Quick Prompts Edit Main NSFW Jailbreak Utility Prompts Impersonation prompt Prompt that is used for Impersonation function World Info format template Wraps activated World Info entries before inserting into the prompt. Use {0} to mark a place where the content is inserted. Scenario format template Use {{scenario}} to mark a place where the content is inserted. Personality format template Use {{personality}} to mark a place where the content is inserted. Group Nudge prompt template Sent at the end of the group chat history to force reply from a specific character. New Chat Set at the beginning of the chat history to indicate that a new chat is about to start. New Group Chat Set at the beginning of the chat history to indicate that a new group chat is about to start. New Example Chat Set at the beginning of Dialogue examples to indicate that a new example chat is about to start. Continue nudge Set at the end of the chat history when the continue button is pressed. Replace empty message Send this text instead of nothing when the text box is empty. Seed Set to get deterministic results. Use -1 for random seed. Temperature Top K Top P Typical P Min P Top A Tail Free Sampling Repetition Penalty Repetition Penalty Range Repetition Penalty Slope MIROSTAT Mode Tau Eta -------------------------------------------------------------------------------- Ban EOS Token Seed -------------------------------------------------------------------------------- GBNF GRAMMAR -------------------------------------------------------------------------------- Samplers Order Samplers will be applied in a top-down order. Use with caution. Repetition Penalty 6 Top K 0 Top A 1 Top P & Min P 2 Tail Free Sampling 3 Typical P 4 Temperature 5 Load koboldcpp order Preamble Use style tags to modify the writing style of the output. Banned Tokens Sequences you don't want to appear in the output. One per line. Text or [token ids]. Logit Bias Add Helps to ban or reinforce the usage of certain tokens. -------------------------------------------------------------------------------- CFG Scale Negative Prompt Used if CFG Scale is unset globally, per chat or character -------------------------------------------------------------------------------- Top P Top A Top K Mirostat Tau Mirostat LR Typical P Min Length Samplers Order Samplers will be applied in a top-down order. Use with caution. Top K Sampling 1 Typical P 5 Temperature 0 Nucleus Sampling 2 Tail Free Sampling 3 Top A Sampling 4 CFG 6 Mirostat 8 Neutralize Samplers Multiple swipes per generation Temperature Top K Top P Typical P Min P Top A Tail Free Sampling Epsilon Cutoff Eta Cutoff Repetition Penalty Repetition Penalty Range Encoder Penalty Frequency Penalty Presence Penalty No Repeat Ngram Size Min Length Smoothing Factor DYNAMIC TEMPERATURE Minimum Temp Maximum Temp Exponent MIROSTAT Mode Tau Eta BEAM SEARCH # of Beams Length Penalty Early Stopping CONTRASTIVE SEARCH Penalty Alpha Do Sample Add BOS Token Ban EOS Token Ignore EOS Token Skip Special Tokens Temperature Last Spaces Between Special Tokens Seed -------------------------------------------------------------------------------- BANNED TOKENS Logit Bias Add Helps to ban or reinforce the usage of certain tokens. -------------------------------------------------------------------------------- CFG Scale Negative Prompt -------------------------------------------------------------------------------- GBNF GRAMMAR -------------------------------------------------------------------------------- Samplers Order Samplers will be applied in a top-down order. Use with caution. Repetition Penalty 6 Top K 0 Top A 1 Tail Free Sampling 3 Typical P 4 Top P & Min P 2 Temperature 5 Load default order -------------------------------------------------------------------------------- SAMPLERS ORDER llama.cpp only. Determines the order of samplers. If Mirostat mode is not 0, sampler order is ignored. Top K Tail Free Sampling Typical P Top P Min P Temperature Load default order -------------------------------------------------------------------------------- SAMPLER PRIORITY Ooba only. Determines the order of samplers. Temperature Dynamic Temperature Quadratic / Smooth Sampling Top K Top P Typical P Epsilon Cutoff Eta Cutoff Tail Free Sampling Top A Min P Mirostat Load default order Wrap in Quotes Wrap entire user message in quotes before sending. Leave off if you use quotes manually for speech. Add character names Send names in the message objects. Helps the model to associate messages with characters. Continue prefill Continue sends the last message as assistant role instead of system message with instruction. Squash system messages Combines consecutive system messages into one (excluding example dialogues). May improve coherence for some models. Send inline images Sends images in prompts if the model supports it (e.g. GPT-4V or Llava 13B). Use the action on any message or the menu to attach an image file to the chat. Use AI21 Tokenizer Use the appropriate tokenizer for Jurassic models, which is more efficient than GPT's. Use Google Tokenizer Use the appropriate tokenizer for Google models via their API. Slower prompt processing, but offers much more accurate token counting. Exclude Human/Assistant prefixes Exclude Human/Assistant prefixes from being added to the prompt, except very first/last message, system prompt Human message and Assistant suffix. Requires 'Add character names' checked. Exclude Assistant suffix Exclude the assistant suffix from being added to the end of prompt. Requires jailbreak with 'Assistant:' in it. Assistant Prefill Use system prompt (Claude 2.1+ only) Exclude the 'Human: ' prefix from being added to the beginning of the prompt. Instead, place it between the system prompt and the first message with the role 'assistant' (right before 'Chat History' by default). Human: first message Logit Bias Helps to ban or reinforce the usage of certain tokens. Confirm token parsing with Tokenizer. Default (none)Anti-bond View / Edit bias preset Add bias entry Most tokens have a leading space. Prompts Total Tokens: 0 * Name Tokens * -------------------------------------------------------------------------------- * Main Prompt - * World Info (before) - * Persona Description - * Char Description - * Char Personality - * Scenario - * Enhance Definitions - * NSFW Prompt - * World Info (after) - * Chat Examples - * Chat History - * Jailbreak Prompt - Export all API Text Completion Chat Completion NovelAI KoboldAI Horde KoboldAI Classic * Avoid sending sensitive information to the Horde. Review the Privacy statement * Register a Horde account for faster queue times * Learn how to contribute your idle GPU cycles to the Horde Adjust context size to worker capabilities Adjust response length to worker capabilities Trusted workers only Context: --, Response: -- API KEY Get it here: Register (View my Kudos) Enter 0000000000 to use anonymous mode. For privacy reasons, your API key will be hidden after you reload the page. MODELS -- Horde models not loaded -- Not connected... API URL Example: http://127.0.0.1:5000/api We have a dedicated KoboldCpp support under Text Completion ⇒ KoboldCpp. Connect Cancel Not connected... NOVEL API KEY 1. Get your NovelAI API key 2. Enter it in the box below: For privacy reasons, your API key will be hidden after you reload the page. Connect Cancel NOVEL AI MODEL Clio Kayra No connection... API TYPE Default (oobabooga) Mancer Aphrodite TabbyAPI KoboldCpp llama.cpp OpenRouter Ollama TogetherAI InfermaticAI TOGETHERAI API KEY For privacy reasons, your API key will be hidden after you reload the page. TOGETHERAI MODEL -- Connect to the API -- -- Connect to the API -- OPENROUTER API KEY Click "Authorize" below or get the key from OpenRouter. View Remaining Credits For privacy reasons, your API key will be hidden after you reload the page. OPENROUTER MODEL -- Connect to the API -- -- Connect to the API -- INFERMATICAI API KEY For privacy reasons, your API key will be hidden after you reload the page. INFERMATICAI MODEL -- Connect to the API -- -- Connect to the API -- MANCER API KEY For privacy reasons, your API key will be hidden after you reload the page. MANCER MODEL -- Connect to the API -- -- Connect to the API -- oobabooga/text-generation-webui Make sure you run it with --api flag API KEY (OPTIONAL) For privacy reasons, your API key will be hidden after you reload the page. SERVER URL Example: http://127.0.0.1:5000 PygmalionAI/aphrodite-engine (OpenAI API wrapper mode) APHRODITE API KEY For privacy reasons, your API key will be hidden after you reload the page. API URL Example: http://127.0.0.1:5000 ggerganov/llama.cpp (inference server) API URL Example: http://127.0.0.1:8080 jmorganca/ollama API URL Example: http://127.0.0.1:11434 OLLAMA MODEL -- Connect to the API -- -- Connect to the API -- Download theroyallab/tabbyAPI TABBY API KEY For privacy reasons, your API key will be hidden after you reload the page. API URL Example: http://127.0.0.1:5000 LostRuins/koboldcpp API URL Example: http://127.0.0.1:5001 Connect Authorize Cancel Legacy API (pre-OAI, no streaming) Bypass status check Not connected... CHAT COMPLETION SOURCE OpenAI Window AI OpenRouter Claude Scale AI21 Google MakerSuite MistralAI Custom (OpenAI-compatible) Reverse Proxy Proxy Presets Saved addresses and passwords. None Proxy Name This will show up as your saved preset. Proxy Server URL Alternative server URL (leave empty to use the default value). Remove your real OAI API Key from the API panel BEFORE typing anything into this box. -------------------------------------------------------------------------------- We cannot provide support for problems encountered while using an unofficial OpenAI proxy. Doesn't work? Try adding /v1 at the end! Proxy Password Will be used as a password for the proxy instead of API key. OPENAI API KEY View API Usage Metrics 1. Follow these directions to get your OpenAI API key. 2. Enter it in the box below: Use "Proxy password" field instead. This input will be ignored. For privacy reasons, your API key will be hidden after you reload the page. OPENAI MODEL gpt-3.5-turbo gpt-3.5-turbo-0125 (2024) gpt-3.5-turbo-1106 (2023) gpt-3.5-turbo-0613 (2023) gpt-3.5-turbo-0301 (2023) gpt-3.5-turbo-16k gpt-3.5-turbo-16k-0613 (2023) gpt-3.5-turbo-instruct gpt-3.5-turbo-instruct-0914 gpt-4 gpt-4-turbo-preview gpt-4-vision-preview gpt-4-0125-preview (2024) gpt-4-1106-preview (2023) gpt-4-0613 (2023) gpt-4-0314 (2023) gpt-4-32k gpt-4-32k-0613 (2023) gpt-4-32k-0314 (2023) text-davinci-003 text-davinci-002 text-curie-001 text-babbage-001 text-ada-001 code-davinci-002 Bypass API status check Show "External" models (provided by API) CLAUDE API KEY Get your key from Anthropic's developer console. Slack and Poe cookies will not work here, do not bother trying. For privacy reasons, your API key will be hidden after you reload the page. CLAUDE MODEL claude-2 claude-v1 claude-v1-100k claude-instant-v1 claude-instant-v1-100k claude-2.1 claude-2.0 claude-v1.3 claude-v1.3-100k claude-v1.2 claude-v1.0 claude-instant-1.2 claude-instant-v1.1 claude-instant-v1.1-100k claude-instant-v1.0 WINDOW AI MODEL Use extension settings openai/gpt-3.5-turbo openai/gpt-3.5-turbo-16k openai/gpt-4 openai/gpt-4-32k anthropic/claude-instant-v1 anthropic/claude-instant-v1-100k anthropic/claude-v1 anthropic/claude-v1-100k google/palm-2-chat-bison google/palm-2-codechat-bison togethercomputer/GPT-NeoXT-Chat-Base-20B cohere/command-nightly OPENROUTER MODEL -- Connect to the API -- Select a model OpenRouter Model Sorting Alphabetically Price (cheapest) Context Size Group by vendors Put OpenAI models in one group, Anthropic models in other group, etc. Can be combined with sorting. Allow fallback routes Automatically chooses an alternative model if the chosen model can't serve your request. Force Instruct Mode formatting If both Instruct Mode and this are enabled, the prompt will be formatted by SillyTavern using the current advanced formatting settings (except instruct System Prompt). If disabled, the prompt will be formatted by OpenRouter. OPENROUTER API KEY Click "Authorize" below or get the key from OpenRouter. View Remaining Credits For privacy reasons, your API key will be hidden after you reload the page. SCALE API KEY For privacy reasons, your API key will be hidden after you reload the page. SCALE API URL SCALE COOKIE (_JWT) For privacy reasons, your cookie will be hidden after you reload the page. Alt Method AI21 API KEY For privacy reasons, your API key will be hidden after you reload the page. AI21 MODEL j2-ultra j2-mid j2-light MAKERSUITE API KEY For privacy reasons, your API key will be hidden after you reload the page. GOOGLE MODEL Gemini Pro Gemini Pro Vision Bison Text Bison Chat MISTRALAI API KEY For privacy reasons, your API key will be hidden after you reload the page. MISTRALAI MODEL open-mistral-7b open-mixtral-8x7b mistral-small-latest mistral-medium-latest mistral-large-latest mistral-tiny-2312 mistral-small-2312 mistral-small-2402 mistral-medium-2312 mistral-large-2402 CUSTOM ENDPOINT (BASE URL) Doesn't work? Try adding /v1 at the end of the URL! CUSTOM API KEY (OPTIONAL) For privacy reasons, your API key will be hidden after you reload the page. ENTER A MODEL ID AVAILABLE MODELS Connect Cancel Additional Parameters Authorize Test Message No connection... Auto-connect to Last Server View hidden API keys ADVANCED FORMATTING CONTEXT TEMPLATE AdventureAlpaca-RoleplayAlpaca-Single-TurnChatMLDefaultLibra-32BLightning 1.1MinimalistMistralNovelAIOldDefaultPygmalionStorysimple-proxy-for-tavern Story String Example Separator Chat Start Use as Stop Strings Context Order Story String 0 Summary 1 Author's Note 2 Example Dialogues 3 Chat History 4 Hint: Summary and Author's Note orders are only affected when they don't have an In-Chat position set. INSTRUCT MODE Enabled Bind to Context Presets AdventureAlpaca-RoleplayAlpaca-Single-TurnAlpacaChatMLKoalaLibra-32BLightning 1.1Llama 2 ChatMetharmeMistralOpenOrca-OpenChatPygmalionStorySynthiaVicuna 1.0Vicuna 1.1WizardLM-13BWizardLMsimple-proxy-for-tavern Activation Regex Wrap Sequences with Newline Replace Macro in Sequences Include Names Force for Groups and Personas System Prompt Instruct Mode Sequences Input Sequence Output Sequence First Output Sequence Last Output Sequence System Sequence Prefix System Sequence Suffix Stop Sequence Separator CONTEXT FORMATTING (Saved to Context Template) Always add character's name to prompt Generate only one line per request Trim Incomplete Sentences Include Newline MISC. SETTINGS Collapse Consecutive Newlines Trim spaces TOKENIZER Best match (recommended) None / Estimated GPT-2 LLaMA NerdStash (NovelAI Clio) NerdStash v2 (NovelAI Kayra) Mistral Yi API (WebUI / koboldcpp) Token Padding START REPLY WITH Show reply prefix in chat NON-MARKDOWN STRINGS CUSTOM STOPPING STRINGS JSON serialized array of strings Replace Macro in Custom Stopping Strings AUTO-CONTINUE Enabled Allow for Chat Completion APIs Target length (tokens) WORLDS/LOREBOOKS Active World(s) for all chats Eldoria Activation Settings Character Lore Insertion Strategy Sorted Evenly Character Lore First Global Lore First Scan Depth Context % Budget Cap (0 = disabled) Min Activations Max Depth (0 = unlimited, use budget) Recursive Scan Case-sensitive Match whole words Alert On Overflow -------------------------------------------------------------------------------- New or --- Pick to Edit --- Eldoria Priority Custom Title A-Z Title Z-A Tokens ↗ Tokens ↘ Depth ↗ Depth ↘ Order ↗ Order ↘ UID ↗ UID ↘ Trigger% ↗ Trigger% ↘ USER SETTINGS Simple Advanced Language: Default en zh-cnja-jpko-krru-ruit-itnl-nles-spa SillyTavern 1.11.5 'release' (68c1ab9f) UI THEME Default (Dark) 1.7.1Ross v2 THEME SETTINGS Avatars: Circle Square Rectangle Chat Style: Flat Bubbles Document Main Text Italics Text Quote Text Text Shadow Chat Background UI Background UI Border User Message AI Message Chat Width Font Scale Blur Strength Text Shadow Width Chat Truncation (0 = unlimited) Streaming FPS THEME TOGGLES Reduced Motion No Blur Effect No Text Shadows Visual Novel Mode Expand Message Actions Zen Sliders Mad Lab Mode Message Timer Chat Timestamps Model Icons Message IDs Message Token Count Compact Input Area Characters Hotswap Tags as Folders MISCELLANEOUS Aux List Field Character Version Created by Message Sound Background Sound Only Relaxed API URLs Lorebook Import Dialog Restore User Input MovingUI MUI Preset: Black Magic TimeDefault Reset MovingUI CUSTOM CSS CHARACTER HANDLING Example Messages Behavior: Gradual push-out Always include examples Never include examples Advanced Character Search Prefer Char. Prompt Prefer Char. Jailbreak Never resize avatars Show avatar filenames Import Card Tags Spoiler Free Mode CHAT/MESSAGE HANDLING Enter to Send: Disabled Automatic (PC) Enabled "Send" to Continue Quick "Continue" button Swipes Gestures Auto-load Last Chat Auto-scroll Chat Auto-save Message Edits Confirm message deletion Auto-fix Markdown Render Formulas Forbid External Media Show {{char}}: in responses Show {{user}}: in responses Show <tags> in responses Relax message trim in Groups Log prompts to console Request token probabilities Auto-swipe Enabled Minimum generated message length Blacklisted words Blacklisted word count to swipe Reload Chat Debug Menu Auto-select SYSTEM BACKGROUNDS __transparent _black _white bedroom clean bedroom cyberpunk bedroom red bedroom tatami cityscape medieval market cityscape medieval night cityscape postapoc forest treehouse fireworks air baloons (by kallmeflocc) japan classroom side japan classroom japan path cherry blossom japan university landscape autumn great tree landscape beach day landscape beach night landscape mountain lake landscape postapoc landscape winter lake house royal tavern day CHAT BACKGROUNDS Chat backgrounds generated with the Image Generation extension will appear here. EXTENSIONS Notify on extension updates Manage extensions Install extension Character Expressions Local server classification Show default images (emojis) if sprite missing Image Type - talkinghead (extras) Custom Expressions Can be set manually or with an /emote slash command. [ No custom expressions ] Open a chat to see the character expressions. You are in offline mode. Click on the image below to set the expression. Sprite Folder Override Use a forward slash to specify a subfolder. Example: Bob/formal SPRITE SET: Upload sprite pack (ZIP) Remove all image overrides Hint: Create new folder in the public/characters/ folder and name it as the name of the character. Put images with expressions there. File names should follow the pattern: [expression_label].[image_format] Download Extensions & Assets Assets URL Image Generation ? Edit prompts before generation Interactive mode Use multimodal captioning for portraits Auto-enhance prompts Snap auto-adjusted resolutions Source Extras API (local / remote) Stable Horde Stable Diffusion Web UI (AUTOMATIC1111) SD.Next (vladmandic) NovelAI Diffusion OpenAI (DALL-E) ComfyUI TogetherAI SD Web UI URL Connect Authentication (optional) Important: run SD Web UI with the --api flag! The server must be accessible from the SillyTavern host machine. SD.Next API URL Connect Authentication (optional) The server must be accessible from the SillyTavern host machine. Hint: Save an API key in Horde KoboldAI API settings to use it here. Allow NSFW images from Horde Sanitize prompts (recommended) Karras (not all samplers supported) Avoid spending Anlas (Opus tier) View my Anlas Hint: Save an API key in the NovelAI API settings to use it here. These settings only apply to DALL-E 3 Image Style Vivid Natural Image Quality Standard HD ComfyUI URL Connect Important: The server must be accessible from the SillyTavern host machine. ComfyUI Workflow Default_Comfy_Workflow.json CFG Scale (7.0) Sampling steps (20) Width (512) Height (512) Model Sampling method Resolution 512x512 (1:1, icons, profile pictures)600x600 (1:1, icons, profile pictures)512x768 (2:3, vertical character card)768x512 (3:2, horizontal 35-mm movie film)960x540 (16:9, horizontal wallpaper)540x960 (9:16, vertical wallpaper)1920x1088 (16:9, 1080p, horizontal wallpaper)1088x1920 (9:16, 1080p, vertical wallpaper)1280x720 (16:9, 720p, horizontal wallpaper)720x1280 (9:16, 720p, vertical wallpaper)1024x1024 (1:1, SDXL)1152x896 (9:7, SDXL)896x1152 (7:9, SDXL)1216x832 (19:13, SDXL)832x1216 (13:19, SDXL)1344x768 (4:3, SDXL)768x1344 (3:4, SDXL)1536x640 (24:10, SDXL)640x1536 (10:24, SDXL) Scheduler N/A VAE N/A Restore Faces Hires. Fix Upscaler Upscale by (2.0) Denoising strength (0.70) Hires steps (2nd pass) (0) Upscale by (1.0) -------------------------------------------------------------------------------- STYLE Default Common prompt prefix Negative prompt Character-specific prompt prefix Won't be used in groups. Character-specific negative prompt prefix Won't be used in groups. Image Prompt Templates Character ("Yourself") User ("Me") Scenario ("The Whole Story") Raw Last Message Last Message Portrait ("Your Face") Background Character (Multimodal Mode) User (Multimodal Mode) Portrait (Multimodal Mode) TTS Select TTS Provider ElevenLabsSileroXTTSv2SystemCoquiEdgeNovelOpenAIAllTalkSpeechT5 Enabled Narrate user messages Auto Generation Only narrate "quotes" Ignore *text, even "quotes", inside asterisks* Narrate only the translated text Skip codeblocks Pass Asterisks to TTS Engine -------------------------------------------------------------------------------- Uses the voices provided by your operating system Rate: 1 Pitch: 1 Chat Translation Auto-mode None Translate responses Translate inputs Translate both Provider Libre Google Lingva DeepL DeepLX Bing OneRingTranslator Target Language AfrikaansAlbanianAmharicArabicArmenianAzerbaijaniBasqueBelarusianBengaliBosnianBulgarianCatalanCebuanoChinese (Simplified)Chinese (Traditional)CorsicanCroatianCzechDanishDutchEnglishEsperantoEstonianFinnishFrenchFrisianGalicianGeorgianGermanGreekGujaratiHaitian CreoleHausaHawaiianHebrewHindiHmongHungarianIcelandicIgboIndonesianIrishItalianJapaneseJavaneseKannadaKazakhKhmerKoreanKurdishKyrgyzLaoLatinLatvianLithuanianLuxembourgishMacedonianMalagasyMalayMalayalamMalteseMaoriMarathiMongolianMyanmar (Burmese)NepaliNorwegianNyanja (Chichewa)PashtoPersianPolishPortuguese (Portugal, Brazil)PunjabiRomanianRussianSamoanScots GaelicSerbianSesothoShonaSindhiSinhala (Sinhalese)SlovakSlovenianSomaliSpanishSundaneseSwahiliSwedishTagalog (Filipino)TajikTamilTeluguThaiTurkishUkrainianUrduUzbekVietnameseWelshXhosaYiddishYorubaZulu Clear Translations Summarize Summarize with: Main API Extras API Current summary: Restore Previous Summarize now Pause No WI/AN Summary Settings Insertion Template Injection Position Before Main Prompt / Story String After Main Prompt / Story String In-chat @ Depth Summary Prompt Summary length (200 words) Update every 10 messages 0 = disable Update every 0 words 0 = disable If both sliders are non-zero, then both will trigger summary updates a their respective intervals. Vector Storage Vectorization Source Local (Transformers) Extras OpenAI Google MakerSuite (PaLM) MistralAI Query messages Include in World Info Scanning -------------------------------------------------------------------------------- FILE VECTORIZATION SETTINGS Enabled for files Size threshold (KB) Chunk size (chars) Retrieve chunks -------------------------------------------------------------------------------- CHAT VECTORIZATION SETTINGS Enabled for chat messages Insertion Template Injection Position Before Main Prompt / Story String After Main Prompt / Story String In-chat @ Depth Chunk size (chars) Retain# Insert# Old messages are vectorized gradually as you chat. To process all previous messages, click the button below. Vectorize All Purge Vectors View Stats Processed 0% of messages. ETA: ... seconds. Regex Open Editor Import Script -------------------------------------------------------------------------------- Saved Scripts Image Captioning Source Local Multimodal (OpenAI / llama / Google) Extras Horde API llama.cpp Text Generation WebUI (oobabooga) Ollama OpenAI OpenRouter Google MakerSuite Custom (OpenAI-compatible) Model gpt-4-vision-preview gemini-pro-vision openai/gpt-4-vision-preview haotian-liu/llava-13b [Currently selected] bakllava:latest llava:latest [Currently loaded] [Currently loaded] [Currently selected] Allow reverse proxy Hint: Set your API keys and endpoints in the 'API Connections' tab first. Caption Prompt What’s in this image? Ask every time Message Template (use {{caption}} macro) [{{user}} sends {{char}} a picture that contains: {{caption}}] Edit captions before saving Quick Reply Enable Quick Replies Combine buttons from all active sets -------------------------------------------------------------------------------- Global Quick Reply Sets ☰ DefaultButtons -------------------------------------------------------------------------------- Chat Quick Reply Sets No active chat. -------------------------------------------------------------------------------- Edit Quick Replies Default Disable send (insert into input field) Place quick reply before input Inject user input automatically (if disabled, use {{input}} macro for manual injection) ☰ ⁝ ☰ ⁝ ☰ ⁝ -------------------------------------------------------------------------------- EXTRAS API: SILLYTAVERN-EXTRAS Not connected... Auto-connect Connect PERSONA MANAGEMENT Usage Stats Backup Restore Create A-Z Z-A 1-1 of 1 * < * > 5 / page10 / page25 / page50 / page100 / page250 / page500 / page1000 / page User [{{user}} is a handsome stranger in his 30's] NAME PERSONA DESCRIPTION Tokens: 20 Position: In Story String / Prompt Manager Top of Author's Note Bottom of Author's Note Show notifications on switching personas Favorite characters to add them to HotSwaps -------------------------------------------------------------------------------- Calculating... Tokens ( Permanent) Tokens: counting... More... Link to World Info Import Card Lore Scenario Override Convert to Persona Rename Show Gallery -------------------------------------------------------------------------------- Description Tokens: counting... First message Alt. Greetings Tokens: counting... Creator's Notes -------------------------------------------------------------------------------- Group Controls Group reply strategy Natural order List order Group generation handling mode Swap character cards Join character cards (exclude muted) Join character cards (include muted) Allow self responses Auto Mode Hide Muted Member Sprites Current Members Add Members ST Default A-Z Z-A Newest Oldest Favorites Recent Most chats Least chats Most tokens Least tokens Random ST Default -------------------------------------------------------------------------------- 1-3 of 3 * < * > 10 / page25 / page50 / page100 / page250 / page500 / page1000 / page Coding Sensei v1.010101 Coding assistance (use GPT). Can be used for any code language, not just Javascript. Also for any other tech related questions. ST Default Ruby main Port of https://aetherroom.club/895. Art by Toi (Number 8). Seraphina 1.0.0 ST Default Bot contest winner: roleplay bots category ST Default TEXT Delete Cancel - Advanced Definitions -------------------------------------------------------------------------------- PROMPT OVERRIDES (FOR OPENAI/CLAUDE/SCALE APIS, WINDOW/OPENROUTER, AND INSTRUCT MODE) Insert {{original}} into either box to include the respective default prompt from system settings. MAIN PROMPT Tokens: counting... JAILBREAK Tokens: counting... -------------------------------------------------------------------------------- CREATOR'S METADATA (NOT SENT WITH THE AI PROMPT) Everything here is optional CREATED BY CHARACTER VERSION CREATOR'S NOTES TAGS TO EMBED -------------------------------------------------------------------------------- PERSONALITY SUMMARY Tokens: counting... SCENARIO Tokens: counting... CHARACTER'S NOTE @ DEPTH Tokens: counting... TALKATIVENESS HOW OFTEN THE CHARACTER SPEAKS IN GROUP CHATS! Shy Normal Chatty -------------------------------------------------------------------------------- EXAMPLES OF DIALOGUE IMPORTANT TO SET THE CHARACTER'S WRITING STYLE. Tokens: counting... Save Chat History New Chat Import Chat CHAT SCENARIO OVERRIDE Unique to this chat. All group members will use the following scenario text instead of what is specified in their character cards. The following scenario text will be used instead of the value set in the character card. Checkpoints inherit the scenario override from their parent, and can be changed individually after that. CHAT LOREBOOK FOR A selected World Info will be bound to this chat. When generating an AI reply, it will be combined with the entries from global and character lorebooks. --- None --- SELECT A WORLD INFO FILE FOR : PRIMARY LOREBOOK A selected World Info will be bound to this character as its own Lorebook. When generating an AI reply, it will be combined with the entries from a global World Info selector. Exporting a character would also export the selected Lorebook file embedded in the JSON data. --- None --- ADDITIONAL LOREBOOKS Associate one or more auxillary Lorebooks with this character. NOTE: These choices are optional and won't be preserved on character export! -- World Info not found -- entries ☰ 🔵 🟢 ❌ Position: ↑Char ↓Char ↑AN ↓AN @D Depth: Order: Trigger %: Comma separated (required) Primary Keywords Logic AND ANY AND ALL NOT ALL NOT ANY (ignored if empty) Optional Filter Scan Depth Case-Sensitive Use global setting Yes No Match Whole Words Use global setting Yes No Automation ID Content (Tokens: counting...) Non-recursable (this entry will not be activated by another) Prevent further recursion (this entry will not activate others) What this keyword should mean to the AI, sent verbatim Filter to Character(s) Character Exclusion -- Characters not found -- Inclusion Group Selective Use Probability Add Memo INSPECT Prompt List The list of prompts associated with this marker. EDIT Name A name for this prompt. Role To whom this message will be attributed. System User AI Assistant Position Injection position. Next to other prompts (relative) or in-chat (absolute). Relative Absolute Depth Injection depth. 0 = after the last message, 1 = before the last message, etc. Prompt The prompt to be sent. ${characterName} WELCOME TO SILLYTAVERN! * Read the Official Documentation. * Type /help in chat for commands and macros. * Join the Discord server for info and announcements. SillyTavern is aimed at advanced users. If you're new to this, enable the simplified UI mode below. Enable simple UI mode Before you get started, you must select a user name. This can be changed at any time via the icon. USER NAME: character card(s) Go back ALTERNATE GREETINGS These will be displayed as swipes on the first message when starting a new chat. Group members can select one of them to initiate the conversation. -------------------------------------------------------------------------------- Click the button to get started! Alternate Greeting # CHAR is typing Author's Note Unique to this chat. Checkpoints inherit the Note from their parent, and can be changed individually after that. Tokens: 0 Include in World Info Scanning Before Main Prompt / Story String After Main Prompt / Story String In-chat @ Depth Insertion Frequency (0 = Disable, 1 = Always) User inputs until next insertion: (disabled) -------------------------------------------------------------------------------- Character Author's Note (Private) Won't be shared with the character card on export. Will be automatically added as the author's note for this character. Will be used in groups, but can't be modified when a group chat is open. Tokens: 0 Use character author's note Replace Author's Note Top of Author's Note Bottom of Author's Note -------------------------------------------------------------------------------- Default Author's Note Will be automatically added as the Author's Note for all new chats. Tokens: 0 After Main Prompt / Story String In-chat @ Depth Insertion Frequency (0 = Disable, 1 = Always) Chat CFG Unique to this chat. Scale 1 = disabled Negative Prompt Positive Prompt Use character CFG scales -------------------------------------------------------------------------------- Character CFG Will be automatically added as the CFG for this character. Scale 1 = disabled Negative Prompt Positive Prompt -------------------------------------------------------------------------------- Global CFG Will be used as the default CFG options for every chat unless overridden. Scale 1 = disabled Negative Prompt Positive Prompt -------------------------------------------------------------------------------- CFG Prompt Cascading Combine positive/negative prompts from other boxes. For example, ticking the chat, global, and character boxes combine all negative prompts into a comma-separated string. Always Include Chat Negatives Character Negatives Global Negatives Custom Separator: Insertion Depth: Token Probabilities Select a token to see alternatives considered by the AI. -------------------------------------------------------------------------------- #0 SillyTavern System March 13, 2024 10:41 PM SILLYTAVERN 1.11.5 'RELEASE' (68C1AB9F) Want to update? -------------------------------------------------------------------------------- HOW TO START CHATTING? 1. Click and select a Chat API. 2. Click and pick a character -------------------------------------------------------------------------------- CONFUSED OR LOST? * - click these icons! * Enter /? in the chat bar * SillyTavern Documentation Site * Extras Installation Guide -------------------------------------------------------------------------------- STILL HAVE QUESTIONS? * Join the SillyTavern Discord * Post a GitHub issue * Contact the developers Delete Cancel File Name File Size Close chat Toggle Panels Author's Note CFG Scale Token Probabilities Back to parent chat Save checkpoint Convert to group -------------------------------------------------------------------------------- Start new chat Close chat Manage chat files -------------------------------------------------------------------------------- Delete messages Regenerate Impersonate Continue PNG JSON TTS Playback Attach a File Generate Caption Generate Image Token Counter Translate Chat Send me a picture of: * Yourself * Your Face * Me * The Whole Story * The Last Message * Raw Last Message * Background