mirror of
https://github.com/SillyTavern/SillyTavern.git
synced 2025-06-05 21:59:27 +02:00
Merge branch 'staging' into claude-no-filler
This commit is contained in:
40
.github/readme-ru_ru.md
vendored
40
.github/readme-ru_ru.md
vendored
@@ -229,6 +229,46 @@ SillyTavern сохраняет ключи от ваших API в файле `sec
|
||||
1. Зайдите в файл `config.yaml` и установите `allowKeysExposure` в положение `true`.
|
||||
2. Перезапустите сервер SillyTavern.
|
||||
|
||||
## Аргументы командной строки
|
||||
|
||||
Вы можете передавать аргументы командной строки при запуске сервера SillyTavern, чтобы переопределять настройки из `config.yaml`.
|
||||
|
||||
### Примеры
|
||||
|
||||
```shell
|
||||
node server.js --port 8000 --listen false
|
||||
# или
|
||||
npm run start -- --port 8000 --listen false
|
||||
# или (только на Windows)
|
||||
Start.bat --port 8000 --listen false
|
||||
```
|
||||
|
||||
### Поддерживаемые аргументы
|
||||
|
||||
| Аргумент | Описание | Тип |
|
||||
|-------------------------|----------------------------------------------------------------------------------------------------------------|----------|
|
||||
| `--version` | Показывает номер версии. | boolean |
|
||||
| `--enableIPv6` | Включает IPv6. | boolean |
|
||||
| `--enableIPv4` | Включает IPv4. | boolean |
|
||||
| `--port` | Устанавливает порт, котрый будет использовать SillyTavern. Если не указан, то используется yaml-конфиг 'port'. | number |
|
||||
| `--dnsPreferIPv6` | Отдает предпочтение IPv6 для dns. Если не указан, то используется yaml-конфиг 'preferIPv6'. | boolean |
|
||||
| `--autorun` | Автоматический запуск SillyTavern в браузере. Если не указан, то используется yaml-конфиг 'autorun'. | boolean |
|
||||
| `--autorunHostname` | Имя хоста автозапуска, лучше оставить на 'auto'. | string |
|
||||
| `--autorunPortOverride` | Переопределяет порт для автозапуска. | string |
|
||||
| `--listen` | SillyTavern будет прослушивать все сетевые интерфейсы. Если не указан, то используется yaml-конфиг 'listen'. | boolean |
|
||||
| `--corsProxy` | Включает CORS-прокси. Если не указан, то используется yaml-конфиг 'enableCorsProxy'. | boolean |
|
||||
| `--disableCsrf` | Отключает защиту от CSRF. | boolean |
|
||||
| `--ssl` | Включает SSL. | boolean |
|
||||
| `--certPath` | Путь к файлу c сертификатом. | string |
|
||||
| `--keyPath` | Путь к файлу с закрытым ключом. | string |
|
||||
| `--whitelist` | Включает режим белого списка. | boolean |
|
||||
| `--dataRoot` | Корневой каталог для хранения данных. | string |
|
||||
| `--avoidLocalhost` | Избегает использования 'localhost' для автозапуска в режиме 'auto'. | boolean |
|
||||
| `--basicAuthMode` | Включает простую аутентификацию. | boolean |
|
||||
| `--requestProxyEnabled` | Разрешает использование прокси для исходящих запросов. | boolean |
|
||||
| `--requestProxyUrl` | URL-адрес прокси (протоколы HTTP или SOCKS). | string |
|
||||
| `--requestProxyBypass` | Bypass список прокси (список хостов, разделенных пробелами). | array |
|
||||
|
||||
## Удалённое подключение
|
||||
|
||||
В основном этим пользуются тогда, когда хотят использовать SillyTavern с телефона, запустив сервер SillyTavern на стационарном ПК в той же Wi-Fi-сети.
|
||||
|
@@ -1291,6 +1291,14 @@
|
||||
<input class="neo-range-slider" type="range" id="epsilon_cutoff_textgenerationwebui" name="volume" min="0" max="9" step="0.01">
|
||||
<input class="neo-range-input" type="number" min="0" max="9" step="0.01" data-for="epsilon_cutoff_textgenerationwebui" id="epsilon_cutoff_counter_textgenerationwebui">
|
||||
</div>
|
||||
<div data-tg-type="aphrodite" class="alignitemscenter flex-container flexFlowColumn flexBasis30p flexGrow flexShrink gap0">
|
||||
<small>
|
||||
<span data-i18n="Top nsigma">Top nsigma</span>
|
||||
<div class="fa-solid fa-circle-info opacity50p" title="A sampling method that filters logits based on their statistical properties. It keeps tokens within n standard deviations of the maximum logit value, providing a simpler alternative to top-p/top-k sampling while maintaining sampling stability across different temperatures."></div>
|
||||
</small>
|
||||
<input class="neo-range-slider" type="range" id="nsigma_textgenerationwebui" name="volume" min="0" max="5" step="0.01">
|
||||
<input class="neo-range-input" type="number" min="0" max="5" step="0.01" data-for="nsigma_textgenerationwebui" id="nsigma_counter_textgenerationwebui">
|
||||
</div>
|
||||
<div data-tg-type="ooba,mancer,aphrodite" class="alignitemscenter flex-container flexFlowColumn flexBasis30p flexGrow flexShrink gap0">
|
||||
<small>
|
||||
<span data-i18n="Eta Cutoff">Eta Cutoff</span>
|
||||
@@ -1334,12 +1342,12 @@
|
||||
<input class="neo-range-slider" type="range" id="presence_pen_textgenerationwebui" name="volume" min="-2" max="2" step="0.01" />
|
||||
<input class="neo-range-input" type="number" min="-2" max="2" step="0.01" data-for="presence_pen_textgenerationwebui" id="presence_pen_counter_textgenerationwebui">
|
||||
</div>
|
||||
<div data-tg-type="ooba" class="alignitemscenter flex-container flexFlowColumn flexBasis30p flexGrow flexShrink gap0">
|
||||
<div data-tg-type="aphrodite, ooba" class="alignitemscenter flex-container flexFlowColumn flexBasis30p flexGrow flexShrink gap0">
|
||||
<small data-i18n="No Repeat Ngram Size">No Repeat Ngram Size</small>
|
||||
<input class="neo-range-slider" type="range" id="no_repeat_ngram_size_textgenerationwebui" name="volume" min="0" max="20" step="1">
|
||||
<input class="neo-range-input" type="number" min="0" max="20" step="1" data-for="no_repeat_ngram_size_textgenerationwebui" id="no_repeat_ngram_size_counter_textgenerationwebui">
|
||||
</div>
|
||||
<div data-tg-type="tabby" class="alignitemscenter flex-container flexFlowColumn flexBasis30p flexGrow flexShrink gap0">
|
||||
<div data-tg-type="tabby, aphrodite" class="alignitemscenter flex-container flexFlowColumn flexBasis30p flexGrow flexShrink gap0">
|
||||
<small data-i18n="Skew">Skew</small>
|
||||
<input class="neo-range-slider" type="range" id="skew_textgenerationwebui" name="volume" min="-5" max="5" step="0.01" />
|
||||
<input class="neo-range-input" type="number" min="-5" max="5" step="0.01" data-for="skew_textgenerationwebui" id="skew_counter_textgenerationwebui">
|
||||
@@ -1394,7 +1402,7 @@
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div data-tg-type="ooba, koboldcpp, tabby, llamacpp" id="dryBlock" class="wide100p">
|
||||
<div data-tg-type="aphrodite, ooba, koboldcpp, tabby, llamacpp" id="dryBlock" class="wide100p">
|
||||
<h4 class="wide100p textAlignCenter" title="DRY penalizes tokens that would extend the end of the input into a sequence that has previously occurred in the input. Set multiplier to 0 to disable." data-i18n="[title]DRY_Repetition_Penalty_desc">
|
||||
<label data-i18n="DRY Repetition Penalty">DRY Repetition Penalty</label>
|
||||
<a href="https://github.com/oobabooga/text-generation-webui/pull/5677" target="_blank">
|
||||
|
@@ -65,6 +65,11 @@ const parse_derivation = derivation => (typeof derivation === 'string') ? {
|
||||
} : derivation;
|
||||
|
||||
export async function deriveTemplatesFromChatTemplate(chat_template, hash) {
|
||||
if (chat_template.trim() === '') {
|
||||
console.log('Missing chat template.');
|
||||
return null;
|
||||
}
|
||||
|
||||
if (hash in hash_derivations) {
|
||||
return parse_derivation(hash_derivations[hash]);
|
||||
}
|
||||
|
@@ -642,6 +642,10 @@ async function CreateZenSliders(elmnt) {
|
||||
numSteps = 50;
|
||||
decimals = 1;
|
||||
}
|
||||
if (sliderID == 'nsigma') {
|
||||
numSteps = 50;
|
||||
decimals = 1;
|
||||
}
|
||||
//customize steps
|
||||
if (sliderID == 'mirostat_mode_textgenerationwebui' ||
|
||||
sliderID == 'mirostat_mode_kobold') {
|
||||
@@ -686,6 +690,7 @@ async function CreateZenSliders(elmnt) {
|
||||
sliderID == 'penalty_alpha_textgenerationwebui' ||
|
||||
sliderID == 'length_penalty_textgenerationwebui' ||
|
||||
sliderID == 'epsilon_cutoff_textgenerationwebui' ||
|
||||
sliderID == 'nsigma' ||
|
||||
sliderID == 'rep_pen_range' ||
|
||||
sliderID == 'eta_cutoff_textgenerationwebui' ||
|
||||
sliderID == 'top_a_textgenerationwebui' ||
|
||||
|
@@ -193,6 +193,7 @@ const settings = {
|
||||
openrouter_allow_fallbacks: true,
|
||||
xtc_threshold: 0.1,
|
||||
xtc_probability: 0,
|
||||
nsigma: 0.0,
|
||||
featherless_model: '',
|
||||
};
|
||||
|
||||
@@ -265,6 +266,7 @@ export const setting_names = [
|
||||
'openrouter_allow_fallbacks',
|
||||
'xtc_threshold',
|
||||
'xtc_probability',
|
||||
'nsigma',
|
||||
];
|
||||
|
||||
const DYNATEMP_BLOCK = document.getElementById('dynatemp_block_ooba');
|
||||
@@ -1186,6 +1188,7 @@ export function getTextGenGenerationData(finalPrompt, maxTokens, isImpersonate,
|
||||
'sampler_order': settings.type === textgen_types.KOBOLDCPP ? settings.sampler_order : undefined,
|
||||
'xtc_threshold': settings.xtc_threshold,
|
||||
'xtc_probability': settings.xtc_probability,
|
||||
'nsigma': settings.nsigma,
|
||||
};
|
||||
const nonAphroditeParams = {
|
||||
'rep_pen': settings.rep_pen,
|
||||
@@ -1253,7 +1256,9 @@ export function getTextGenGenerationData(finalPrompt, maxTokens, isImpersonate,
|
||||
'dynatemp_exponent': dynatemp ? settings.dynatemp_exponent : undefined,
|
||||
'xtc_threshold': settings.xtc_threshold,
|
||||
'xtc_probability': settings.xtc_probability,
|
||||
'nsigma': settings.nsigma,
|
||||
'custom_token_bans': toIntArray(banned_tokens),
|
||||
'no_repeat_ngram_size': settings.no_repeat_ngram_size,
|
||||
};
|
||||
|
||||
if (settings.type === OPENROUTER) {
|
||||
|
Reference in New Issue
Block a user