Compare commits

..

1818 Commits

Author SHA1 Message Date
Cohee
081c548223 [wip] Secrets manager extension 2025-01-06 00:10:35 +02:00
Cohee
989f5a8692 Image Gen: don't generate a new swipe seed if already using a random seed 2025-01-05 00:49:23 +02:00
Cohee
8623d1198d Add thumbnail dimensions to config (#3262)
* Add thumbnail dimensions to config

* Fix default value for thumbnails.enabled

* Update comment for thumbnail recreation instructions in config.yaml

* Lint config values

* Verify config size > 0

* More config lint
2025-01-05 00:38:50 +02:00
Cohee
7f5dc72161 Fix user settings doc link 2025-01-04 16:02:09 +02:00
Cohee
5a617f60f5 Merge pull request #3261 from underscorex86/patch-2
Update inclusion-group tooltip doc site link
2025-01-04 15:49:50 +02:00
Sneha C
18243fe879 Update inclusion-group tooltip doc site link 2025-01-04 17:18:16 +04:00
Cohee
7fdeeb0fae Merge pull request #3258 from RivelleDays/i18n
Fix i18n Issues & Update zh-TW Translation
2025-01-04 14:17:44 +02:00
Cohee
6552038712 Update no validate warning 2025-01-04 14:16:25 +02:00
Rivelle
8514ac29fc Merge branch 'i18n' of https://github.com/RivelleDays/SillyTavern into i18n 2025-01-04 16:03:20 +08:00
Rivelle
c2caad3904 Update zh-tw.json 2025-01-04 16:03:14 +08:00
Rivelle
fae11fc04a Update personas.js: fix i18n 2025-01-04 15:14:14 +08:00
Rivelle
81cb3430bb Update openai.js: fix i18n 2025-01-04 15:12:55 +08:00
Cohee
0a8fae06c2 Don't set an undefined theme field to an empty string 2025-01-04 00:07:26 +02:00
Cohee
77bee453ab Vectors: Add only custom boundary chunking 2025-01-03 20:44:25 +02:00
Cohee
590e52442c Fix /api/secrets/find return on 404 2025-01-03 12:48:24 +00:00
Cohee
dd273a7727 Docker build: Pre-compile public libraries 2025-01-03 12:30:55 +00:00
Cohee
02900520c9 chore: Add index property to HashedMessage 2025-01-03 03:09:16 +02:00
Cohee
eff4da42c5 Vector storage: skip for quiet prompts 2025-01-03 03:04:45 +02:00
Cohee
dea4a63022 Move rss extension container to other column 2025-01-03 01:42:03 +02:00
Cohee
2f5f9a437d Allow running generate interceptors on quiet prompts 2025-01-03 01:10:14 +02:00
Cohee
68437ed81c Enable strictBindCallApply in jsconfig 2025-01-03 00:28:09 +02:00
Cohee
8ed2721ddd Set server jsconfig target to ES2023 2025-01-03 00:27:13 +02:00
Cohee
97f6dcace0 Fix types for extractFileFromZipBuffer 2025-01-03 00:16:14 +02:00
Cohee
fc4fecf0fd Add model hash to TC API tokenizer cache key 2025-01-02 23:49:22 +02:00
Cohee
40b05bb6b1 Add best match tokenizer logic for DeepSeek and Nemo 2025-01-02 23:22:53 +02:00
Cohee
2d4bae17cc Merge branch 'release' into staging 2025-01-02 22:58:15 +02:00
Cohee
d0e1c3287a NovelAI: Fix scheduler auto-assign 2025-01-02 22:58:06 +02:00
Cohee
b7a96b3143 Add fixed containers for downloadable extensions 2025-01-02 22:25:44 +02:00
Cohee
612fda4cfc Merge branch 'release' into staging 2025-01-02 00:41:05 +02:00
Cohee
beb4328714 Revert using url-join for SD WebUI paths 2025-01-02 00:40:56 +02:00
Cohee
5db7a9cf1e Fix fetch buffer deprecation warnings 2025-01-01 22:18:23 +02:00
Cohee
e99f918454 Fix fetch buffer deprecation warnings 2025-01-01 22:12:04 +02:00
Cohee
102d170752 Merge branch 'staging' into release 2025-01-01 20:15:55 +02:00
Cohee
6768264514 Docker: add git safe.directory exclusion
Closes #3250
2025-01-01 19:45:34 +02:00
Cohee
a867b2f85a Add global extensions Docker volume
Closes #3251
2025-01-01 19:13:47 +02:00
Cohee
f246bc5ac6 Merge pull request #3248 from SillyTavern/staging
Staging
2025-01-01 17:21:09 +02:00
Cohee
2c5cffe6be Typo fix in data-i18n attr 2025-01-01 17:12:36 +02:00
Cohee
f9e3666d23 Add debug function to toggle regeneration warning with Ctrl+Enter 2025-01-01 16:56:44 +02:00
Cohee
72e0f8ccc5 Fix available CC models log header 2025-01-01 16:28:47 +02:00
Cohee
e45d2252aa Allow admin actions when accounts are disabled 2025-01-01 15:00:59 +02:00
Cohee
1d22cd7592 Bump package version 2025-01-01 14:58:43 +02:00
Cohee
ac4a0e8af5 Merge pull request #3246 from waht41/bugfix/extension-translate
bug fix, use data-i18n="[title]Extensions"
2025-01-01 14:52:56 +02:00
waht
cf8bb8817b bug fix, use data-i18n="[title]Extensions" 2025-01-01 10:52:01 +08:00
Cohee
9e6db659d9 Fix icon lookup logic for system prompts in PromptManager 2025-01-01 00:22:08 +02:00
Cohee
7c879a3abc Farewell system icon 2024-12-31 23:42:06 +02:00
Cohee
e9c9dda3fb Remove unspecified role, hide icons for non-custom prompts of non-system roles 2024-12-31 23:28:52 +02:00
Cohee
569f9a2091 Popup: do not require body text on input/confirm 2024-12-31 22:59:08 +02:00
Cohee
8508c4bf9b eslint: allow irregular whitespace in template literals 2024-12-31 22:58:51 +02:00
Cohee
4698b41d26 Fix chat manager not displaying empty chats 2024-12-31 22:40:33 +02:00
Cohee
f47c98f85d Merge pull request #3242 from SillyTavern/role-icons-for-PM
add prompt role icons to prompt manager
2024-12-31 21:35:55 +02:00
Cohee
48e5c11f9b Change icon for preset prompt 2024-12-31 21:17:15 +02:00
Cohee
8a55cd776f Unset => Unspecified 2024-12-31 21:08:42 +02:00
Cohee
f43f057b07 Merge branch 'staging' into role-icons-for-PM 2024-12-31 20:53:12 +02:00
Cohee
6d0f58c862 Merge pull request #3244 from waht41/bugfix/extension-translate
bug fix, translate extension button
2024-12-31 20:50:08 +02:00
Cohee
b4c275f9e4 Move translation to HTML template 2024-12-31 20:49:29 +02:00
Cohee
170378e615 Merge pull request #3245 from Succubyss/revert-manual_selection
Reverts MANUAL_SELECTION from tokenizers.js
2024-12-31 20:46:11 +02:00
Succubyss
97dc041777 Revert MANUAL_SELECTION
This partially reverts commit c89804677a (keeps the turbo-0301 removal).
2024-12-31 11:18:43 -06:00
waht
ca62db2fbd Merge remote-tracking branch 'origin/staging' into bugfix/extension-translate
# Conflicts:
#	public/scripts/extensions.js
2025-01-01 00:37:08 +08:00
waht
5b4adbacba bug fix, translate extension button 2025-01-01 00:08:36 +08:00
Cohee
56da6eb39d Merge pull request #3241 from RivelleDays/staging
Fix Missing i18n Tags & Update zh-tw.json
2024-12-31 16:18:17 +02:00
Cohee
75485f2d7d Add missing space and line break 2024-12-31 16:09:25 +02:00
Cohee
b4e5cfe797 Reset prompt role to unset 2024-12-31 15:21:36 +02:00
Cohee
9ad9877d3e Shirinkflate the pencil 2024-12-31 15:18:44 +02:00
Cohee
227201a5fc Add "unset" value for PM prompt role, refactor icons display 2024-12-31 15:14:29 +02:00
Cohee
d58f471cc3 Merge branch 'staging' into role-icons-for-PM 2024-12-31 14:37:08 +02:00
Cohee
d46a551d78 Update public/scripts/PromptManager.js
Co-authored-by: valadaptive <79560998+valadaptive@users.noreply.github.com>
2024-12-31 14:36:56 +02:00
Cohee
6432adaf3c Merge pull request #3243 from valadaptive/no-unneeded-ternary
Enable no-unneeded-ternary ESLint rule
2024-12-31 11:55:23 +02:00
valadaptive
8bf78ce9cb Enable no-unneeded-ternary ESLint rule 2024-12-31 03:43:49 -05:00
RossAscends
2109a7bda1 add prompt role icons to prompt manager 2024-12-31 17:27:07 +09:00
Rivelle
fba02d69fa Update zh-tw.json 2024-12-31 15:24:51 +08:00
Rivelle
7896e81986 Update zh-tw.json 2024-12-31 14:29:21 +08:00
Rivelle
6b587c1160 Update zh-tw.json 2024-12-31 14:27:46 +08:00
Rivelle
e5989e0118 Update themeDelete.html 2024-12-31 14:18:57 +08:00
Rivelle
e34d777e11 Update itemizationChat.html 2024-12-31 14:17:04 +08:00
Rivelle
71fc73ce37 Update itemizationChat.html 2024-12-31 14:04:30 +08:00
Rivelle
245b9384bc Update debug.html 2024-12-31 14:03:05 +08:00
Rivelle
4ee0375120 Update installExtension.html 2024-12-31 14:02:09 +08:00
Cohee
d463677328 Check of optionsResult.ok 2024-12-31 00:29:56 +02:00
Cohee
de6c8c1501 Remove forge override from non-forge SD requests 2024-12-31 00:27:12 +02:00
Cohee
e0af5ff353 Default to undefined for no VAE selected 2024-12-31 00:13:26 +02:00
Cohee
8447c7e637 Fix VAE for SD forge 2024-12-31 00:12:25 +02:00
Cohee
f416b6cd54 Revert "Pass VAE name to SD forge"
This reverts commit 3a29756109.
2024-12-30 23:47:57 +02:00
Rivelle
e9260e8809 Update zh-tw.json 2024-12-30 19:41:20 +08:00
Rivelle
e92d49377f Update userReset.html: fix data-i18n 2024-12-30 19:08:06 +08:00
Rivelle
ca9d5c2fd8 Update themeDelete.html: fix data-i18n 2024-12-30 18:57:53 +08:00
Rivelle
a2355ab2ef Update scenarioOverride.html: fix data-i18n 2024-12-30 18:48:25 +08:00
Rivelle
7c40834eb7 Update resetSettings.html: fix data-i18n 2024-12-30 18:15:18 +08:00
Rivelle
b834b71c69 Update masterImport.html: fix data-i18n 2024-12-30 17:51:56 +08:00
Rivelle
b4aadff649 Update masterExport.html: fix data-i18n 2024-12-30 17:44:28 +08:00
Rivelle
7baf7da90d Update itemizationChat.html: fix data-i18n 2024-12-30 17:28:05 +08:00
Rivelle
8a80b43c52 Update itemizationChat.html: fix data-i18n 2024-12-30 17:06:42 +08:00
Rivelle
8454583131 Update installExtension.html: fix data-i18n 2024-12-30 15:48:06 +08:00
Rivelle
5da312356a Update createCheckpoint.html: fix data-i18n 2024-12-30 15:36:06 +08:00
Rivelle
cfa4bcc1b8 Update debug.html: fix data-i18n 2024-12-30 15:35:05 +08:00
Rivelle
421402615a Update changeName.html: fix data-i18n 2024-12-30 15:19:58 +08:00
Rivelle
7db2042b7b Update debug.html: fix data-i18n 2024-12-30 15:08:59 +08:00
Cohee
3a29756109 Pass VAE name to SD forge 2024-12-30 01:12:37 +02:00
Cohee
ec0f57a8eb Fix bad copypaste 2024-12-30 00:41:43 +02:00
Cohee
ad19a800ce Fix getting VAEs for SD forge 2024-12-30 00:25:35 +02:00
Cohee
e1b6eab9eb Fix SD forge generation with hires 2024-12-30 00:09:37 +02:00
Cohee
2ca70090aa Mistral: Fix endpoint validation on status check 2024-12-29 22:39:26 +02:00
Cohee
69f8d02c53 Fix continue prefill using Claude prefill for non-Claude sources 2024-12-29 22:34:56 +02:00
Cohee
44833b665e Merge pull request #3237 from SillyTavern/deepseek
Deepseek
2024-12-29 22:29:15 +02:00
Cohee
e37a4b982a Add deepseek logo 2024-12-29 21:28:12 +02:00
Cohee
cdb31699d4 Expose new post-processing as "Semi-strict" 2024-12-29 21:20:15 +02:00
Cohee
c9db7a1574 Don't add user placeholders 2024-12-29 21:14:27 +02:00
Cohee
0ded442bd3 Fix status check 2024-12-29 20:39:47 +02:00
Cohee
4c7d160d41 DeepSeek
Closes #3233
2024-12-29 20:38:13 +02:00
Cohee
662f0e9c73 Gemini: Thought toggle
Closes #3220
2024-12-29 18:23:07 +02:00
Cohee
c3ad87cea1 ComfyUI: negate clip_skip placeholder value 2024-12-28 16:05:58 +02:00
Cohee
d8b738d73e Merge pull request #3232 from RivelleDays/staging
Update zh-tw.json
2024-12-28 15:00:53 +02:00
Cohee
7edc6b4123 Merge pull request #3231 from Sevenyine/staging
Optimized zh-cn translation
2024-12-28 14:59:46 +02:00
Sevenyine
af21c92bd6 Optimized and supplemented zh-CN translation 2024-12-28 20:31:43 +08:00
79
3596ba6d38 Sort Keys 2024-12-28 14:53:33 +08:00
Rivelle
e7d3351c1d Update zh-tw.json
- Added a few missing translations
- Corrected phrasing
- Removed duplicate entries
2024-12-28 11:20:48 +08:00
Rivelle
7a7d6a500d Update zh-tw.json
- Added a few missing translations  
- Corrected phrasing  
- Removed duplicate entries
2024-12-28 11:18:45 +08:00
79
35913e2dfb Optimized zh-cn translation 2024-12-28 11:06:25 +08:00
Cohee
57a7d549c0 Merge pull request #3230 from RivelleDays/staging
Update zh-tw.json: Translation Fixes and Terminology Refinement
2024-12-28 02:56:20 +02:00
Cohee
149de7d257 Image Gen: make CFG step 0.1 2024-12-28 02:28:58 +02:00
Rivelle
6a76ebe747 Update zh-tw.json
- Added translation for the third-party "Dialogue Colorizer" extension (an attempt to integrate SillyTavern-i18n translation)
2024-12-28 08:07:15 +08:00
Rivelle
aaf0f24d60 Update zh-tw.json: Translation Fixes and Terminology Refinement
- Updated untranslated text using SillyTavern-i18n (thanks to ceruleandeep for the documentation)
- Fixed known translation issues (mismatched translations and functionality)
- Refined phrasing and standardized terminology (did my best while reviewing the documentation...)
2024-12-28 06:34:00 +08:00
Cohee
c4f119ebf9 cfg: Adjust max context size based on injected prompt
Close #2424
2024-12-27 23:43:16 +02:00
Cohee
39cfb35c1a Gemini: Fix cross-chunk parsing of multipart replies 2024-12-27 23:15:09 +02:00
Cohee
77f5f00151 Remove no-connection class from send form on connection 2024-12-27 22:43:40 +02:00
Cohee
08baa1f9ae Gemini: lean sysprompt hint 2024-12-27 22:40:59 +02:00
Cohee
59772bfd27 Merge pull request #3229 from Sevenyine/staging
Add new Google AI Studio model
2024-12-27 22:40:04 +02:00
Cohee
a82c05a8ac Gemini thinking: Specify context size, system prompt and vision support 2024-12-27 22:39:26 +02:00
Cohee
6286eb5827 Move color-scheme preference to body element 2024-12-27 21:05:47 +02:00
Cohee
7885739a55 Remove auto dark theme hindrance 2024-12-27 20:53:05 +02:00
Cohee
bba36e2145 Remove transparency from toast container 2024-12-27 19:53:57 +02:00
Cohee
90ff4c7308 Merge pull request #3228 from isaac-mcfadyen/llamacpp-logprobs
Fix recent llama.cpp server logprobs
2024-12-27 19:49:21 +02:00
Cohee
29acc2e2db Add Deepl endpoint selection
Fixes #3224
2024-12-27 13:02:06 +00:00
79
0d8977d688 Update index.html - New Google AI Studio Model 2024-12-27 15:08:16 +08:00
Isaac McFadyen
d14f2f3c77 llama.cpp: fixed wording in comment for logprobs 2024-12-27 01:15:35 -05:00
Isaac McFadyen
77414045d9 llama.cpp: fixed logprobs for newest server version 2024-12-27 01:00:55 -05:00
Cohee
4fa8e0a89c Accounts: fix dangling session cookies on logout 2024-12-27 01:36:23 +02:00
Cohee
c42a7739d6 NovelAI: Fix backward compatibility with scheduler setting 2024-12-27 00:24:53 +02:00
Cohee
b5eb2b5150 NovelAI: Limit maximum steps to 50 2024-12-26 22:51:58 +02:00
Cohee
27f8768141 NovelAI: Make Euler Ancestral a default sampler 2024-12-26 22:44:15 +02:00
Cohee
844d8bdee7 NovelAI: Disable SMEA/DYN for V4 2024-12-26 22:42:01 +02:00
Cohee
f92f8f4a84 NovelAI: Remove deprecated SD models 2024-12-26 22:24:37 +02:00
Cohee
4a4e02450c locales: update API key hint from Horde KoboldAI to AI Horde 2024-12-26 21:54:24 +02:00
Cohee
0d79bb6f6d Firefox: restore chat scroll top on edit textarea autofit 2024-12-26 13:24:48 +00:00
Cohee
e33e0b1e64 trimToEndSentence: fix emoji trim after whitespace 2024-12-26 10:45:10 +02:00
Cohee
7f2cf6f7e6 Add provider arg to /translate command 2024-12-25 23:31:37 +02:00
Cohee
0cb82b3288 Merge pull request #3221 from Succubyss/manual_selection
tokenizers.js: Add MANUAL_SELECTION (& removes turbo-0301 lines)
2024-12-25 22:14:28 +02:00
Cohee
28c7dbbe1b Merge pull request #3222 from SillyTavern/bg-fitting
Add background image fitting options
2024-12-25 22:09:01 +02:00
Succubyss
c89804677a tokenizers.js: add MANUAL_SELECTION (& removes turbo-0301 lines) 2024-12-24 16:45:35 -06:00
Cohee
0b43717931 Add background image fitting options
Closes #3133
2024-12-24 23:32:31 +02:00
Cohee
540d93592b Add fallback mechanism for background selection in autoBackgroundCommand 2024-12-24 22:15:33 +02:00
Cohee
7adc6d38e2 OpenRouter: Add control for middle-out transform
Closes #3033
2024-12-24 21:51:47 +02:00
Cohee
09dd9762f7 Clean-up try/catch blocks in translate.js 2024-12-23 23:42:20 +02:00
Cohee
7490357d9e Merge pull request #3219 from SillyTavern/pt-br
Translate: Split Portuguese languages
2024-12-23 23:31:04 +02:00
Cohee
1a16957519 Construct Lingva URL using url-join 2024-12-23 21:51:33 +02:00
Cohee
83e677d6cb Fix default URL check for Lingva translator 2024-12-23 21:38:19 +02:00
Cohee
8394b97600 Add default URL for Lingva translator 2024-12-23 21:34:16 +02:00
Cohee
c4a92c95e6 Update bing translate API package, fix language codes 2024-12-23 21:12:18 +02:00
Cohee
650853eabb Translation: Split Portuguese langs 2024-12-23 20:28:21 +02:00
Cohee
71050ef1d2 Fix AI Horde deadnaming 2024-12-23 19:37:51 +02:00
Cohee
d166ccf455 Merge pull request #3218 from soyangel/patch-1
Fix "save" translation in es-es
2024-12-23 15:39:21 +02:00
Angel Luis Jimenez Martinez
5eff49f442 Fix "save" translation in es-es 2024-12-23 10:56:08 +01:00
Cohee
616fc34826 Add type definitions for jQuery plugins 2024-12-23 01:08:56 +02:00
Cohee
404a217622 Backfill imported bias entry ids 2024-12-23 00:49:35 +02:00
Cohee
7f94cb4bee CC: Simplify default wrappers for personality and scenario 2024-12-22 23:36:58 +02:00
Cohee
f0b124221c Merge pull request #3216 from HiroseKoichi/release
Remove brackets around `{{name}}` in `ChatML-Names` and `Llama-3-Instruct-Names`
2024-12-22 23:32:08 +02:00
Cohee
3f7b91a4eb Add uuid to CC logit bias entries 2024-12-22 23:27:20 +02:00
Hirose
17df259afd Update ChatML-Names.json
Remove brackets from `ChatML-Names`
2024-12-22 15:00:00 -06:00
Hirose
964437ed13 Update Llama-3-Instruct-Names.json
Remove brackets from `Llama-3-Instruct-Names`
2024-12-22 14:59:35 -06:00
Cohee
6044aebe1f Merge branch 'staging' of https://github.com/SillyTavern/SillyTavern into staging 2024-12-22 19:26:51 +02:00
Cohee
1ebaf18210 feat: add drag-and-drop functionality for logit bias lists 2024-12-22 19:26:47 +02:00
Cohee
352a8e9a61 Merge pull request #3215 from ceruleandeep/feature/uploadSprite
/uploadsprite slashcommand
2024-12-22 18:13:39 +02:00
Cohee
0f93caa427 Fix type errors in command registration 2024-12-22 18:12:07 +02:00
Cohee
e6107ad447 Add NAI Diffusion V4 2024-12-22 15:39:41 +02:00
ceruleandeep
c3a12cc1a2 feat: /uploadsprite slash command 2024-12-22 12:55:20 +11:00
ceruleandeep
7bb37f129d fix: move cache-busting to server side 2024-12-22 12:33:01 +11:00
ceruleandeep
78a1397a3c fix: log arguments when eventTracing is set 2024-12-22 12:32:18 +11:00
Cohee
713443d234 Fix ComfyUI generation for non-relative paths 2024-12-22 00:52:09 +02:00
Cohee
d9101ce679 Add is-mobile command and macro 2024-12-21 22:25:14 +02:00
Cohee
5739efc59b Support ComfyUI hosted on relative URLs
Closes #3208
2024-12-21 21:25:02 +02:00
Cohee
71d2530329 Merge pull request #3191 from SillyTavern/group-join-examples
Fixes to group join examples parsing
2024-12-21 20:15:59 +02:00
Cohee
2c0895bd7d Merge branch 'release' into staging 2024-12-21 19:43:10 +02:00
Cohee
6033c38b19 Safari: Fix chat history popup sizing 2024-12-21 19:41:38 +02:00
Cohee
107e2e0ed0 PromptNames: Rename startsWithGroupName function 2024-12-21 19:00:14 +02:00
Cohee
2796d5dcde getGroupNames: Short circuit if no group selected 2024-12-21 18:52:42 +02:00
Cohee
ba7e34c195 Image Generation: Use wrench symbol for function tool 2024-12-21 18:47:46 +02:00
Cohee
c51e27fb69 Merge branch 'staging' into group-join-examples 2024-12-21 18:39:14 +02:00
Cohee
f056e6a89c Merge pull request #3213 from SillyTavern/expressions-webllm
Expressions: Add WebLLM extension classification
2024-12-21 18:38:55 +02:00
Cohee
f794b7621f Merge pull request #3210 from SillyTavern/sendtextarea-fieldsizing
Use CSS resizing for send textarea
2024-12-21 17:56:13 +02:00
Cohee
21ee072677 Revert "Add overscroll contain for edit textarea"
This reverts commit d07ee76784.
2024-12-21 17:50:37 +02:00
Cohee
d07ee76784 Add overscroll contain for edit textarea 2024-12-21 17:48:12 +02:00
Cohee
252043ae11 Move code for cleaner diff 2024-12-21 17:33:18 +02:00
Cohee
85ce522270 Remove invalid style 2024-12-21 17:24:54 +02:00
Cohee
2fbe689605 Implement autofit for edit textarea 2024-12-21 16:47:25 +02:00
Cohee
1f22b9c6bc Merge pull request #3211 from cloak1505/staging
OpenRouter: Update providers list
2024-12-21 14:30:44 +02:00
cloak1505
222edd5c36 OpenRouter: Update providers list 2024-12-21 01:30:35 -06:00
Cohee
f649e4698b Invert if cssAutofit 2024-12-21 02:52:05 +02:00
Cohee
d27d750cb2 Use CSS resizing for send textarea 2024-12-21 02:50:42 +02:00
Cohee
f1bc217e79 Expressions: Add WebLLM extension classification 2024-12-21 01:14:50 +02:00
Cohee
73614f2f8d Refactor prompt converters with group names awareness 2024-12-20 23:30:57 +02:00
Cohee
d7328af4c8 Merge branch 'staging' into group-join-examples 2024-12-20 22:32:19 +02:00
Cohee
94de9411b6 UI performance fixes (#3207)
* Optimize visibility checks for burger and wand menus

* Optimize message actions visibility toggle

* Run drawer toggle in animation frame

* Replace jQuery slideToggle with a 3rd-party lib

* Refactor export button functionality to manage popup state with a boolean flag

* Do not close the pinned drawer on unpin

* Revert "Do not close the pinned drawer on unpin"

This reverts commit e3b34e9a58.

* Refactor slideToggle options

* ease-in-out

* Don't skip frame on drawer toggle
2024-12-20 22:20:46 +02:00
Cohee
4232f6c5f4 More null checks for llamacpp logprobs parser 2024-12-20 22:00:36 +02:00
Cohee
1dd97c139e Text Completion: Improve generic source model display 2024-12-20 20:59:36 +02:00
Cohee
7e7b3e30c4 Tool Calling: Implement stealth tool defintions (#3192)
* Tool Calling: Implement stealth tool defintions

* Move isStealth check up

* Always stop generation on stealth tool calls

* Image Generation: use stealth flag for tool registration

* Update stealth property description to clarify no follow-up generation will be performed

* Revert "Image Generation: use stealth flag for tool registration"

This reverts commit 8d13445c0b.
2024-12-19 21:17:47 +02:00
Cohee
e83182c03b Image Generation: Add tool message visibility toggle 2024-12-19 19:33:29 +02:00
Cohee
f3c12fb926 Merge pull request #3205 from SillyTavern/forbid-empty-varnames
Do not allow empty or undefined variable names.
2024-12-19 19:16:20 +02:00
Cohee
d5ed0f6cdf Also check global variable names 2024-12-19 19:15:04 +02:00
Cohee
503c3ad22b Merge pull request #3206 from DocShotgun/staging
Add DRY to llama.cpp sampler order
2024-12-19 10:40:23 +02:00
DocShotgun
6193eb14da Add DRY to llama.cpp sampler order 2024-12-18 19:04:49 -08:00
Cohee
372ac26080 Do not allow empty or undefined variable names.
Closes #3204
2024-12-18 20:22:27 +02:00
Cohee
00363cc206 Merge branch 'release' into staging 2024-12-17 21:44:28 +02:00
Cohee
dbc78c1c42 Fix OpenRouter caching at depth with null model selection 2024-12-17 21:40:33 +02:00
Cohee
8753ae34be Merge pull request #3193 from cloak1505/r7b
Add Cohere command-r7b-12-2024
2024-12-17 12:18:54 +02:00
Cohee
a6f37880e2 Merge pull request #3198 from ceruleandeep/i18n/generateImage
Fix i18n tags for Generate Image/Stop Image Generation, add translations
2024-12-17 07:55:08 +02:00
Cohee
7eacdac665 Add bypass status check for Generic TC API type 2024-12-16 21:29:41 +02:00
Cohee
0819588e7a Merge pull request #3190 from M0ch0/staging
Update for Latest Google AI Studio
2024-12-16 21:04:44 +02:00
Cohee
0180e01c25 Merge pull request #3195 from RivelleDays/patch-2
Update zh-tw.json
2024-12-16 20:32:20 +02:00
ceruleandeep
b094a355c0 Remove spurious attrib tags inserted by getMissingTranslations 2024-12-16 22:43:14 +11:00
ceruleandeep
2ef9f5d748 Fix i18n for Prompt Inspector in wand menu 2024-12-16 21:31:47 +11:00
ceruleandeep
247a23bda9 Fix i18n for "Generate Caption" in wand menu 2024-12-16 20:51:29 +11:00
ceruleandeep
0ea4494dea Fix i18n tags for Generate Image/Stop Image Generation, add translations 2024-12-16 20:03:40 +11:00
Rivelle
d8b1fd3b0b Update zh-tw.json
Adjust translation terms to align with actual functionality.
2024-12-16 15:41:01 +08:00
M0cho
3f253f42f2 Update: [constants.js] Remove BISON_SAFETY 2024-12-16 12:45:30 +09:00
M0cho
0e3b4335eb Update: [prompt-converters.js] Remove entire dummy img codes 2024-12-16 12:44:02 +09:00
cloak1505
ce536201e6 Fix Cohere context sizes 2024-12-15 17:12:58 -06:00
cloak1505
12cc607754 Replace invalid aya-23 model name 2024-12-15 17:12:45 -06:00
cloak1505
266b181d49 Add Cohere command-r7b-12-2024
Also slightly reorder model list
2024-12-15 14:47:22 -06:00
Cohee
2d66b7204a Fixes to group join examples parsing 2024-12-15 18:09:17 +02:00
Cohee
e49301308c Merge pull request #3189 from Succubyss/substr
Add /substr command
2024-12-15 17:27:00 +02:00
Cohee
4c3b987ee4 Merge pull request #3188 from InspectorCaracal/fix-double-prefix-2
Fix double prefix mk 2
2024-12-15 17:05:26 +02:00
M0cho
d16f5a24f4 Update: [prompt-converters.js] Remove gemini-pro-vision from constants
Removed gemini-pro-vision from visionSupportedModels. Also removed dummyRequiredModels as Gemini Pro, its cause, has been deleted.
2024-12-15 13:07:02 +09:00
M0cho
43feffdfae Update: [chat-completions.js] Update sendMakerSuiteRequest function
Removed branching logic for differences in JSON request body between PaLM and Gemini, following the removal of PaLM from Google AI Studio.
2024-12-15 13:06:48 +09:00
M0cho
9ea8fc92e4 Update: [openai.js] Remove deleted GAI models from context length checks
Removed gemini-pro-vision and text-bison-001 (PaLM) from context length checks.
2024-12-15 13:06:30 +09:00
M0cho
9cab0618b6 Update: [caption/settings.html] Remove GAI version of gemini-pro-vision
Retained the OpenRouter version, as it is still available via Vertex.
2024-12-15 12:43:16 +09:00
M0cho
58213d0ab0 Update: [index.html] Fixed inconsistent notation of GAI models
Corrected the text from "Experiment" to "Experimental" to align with the terminology used on https://aistudio.google.com/.
2024-12-15 12:29:44 +09:00
M0cho
954ed6c2b2 Update: [index.html] Remove PaLM from GAI models
The PaLM family (PaLM 2, PaLM 2 Chat) is no longer available on AI Studio.
```
Google AI Studio API returned error: 404 Not Found {
  "error": {
    "code": 404,
    "message": "Requested entity was not found.",
    "status": "NOT_FOUND"
  }
```
2024-12-15 12:28:37 +09:00
M0cho
df5f69dc66 Update: [index.html] Added notes for deprecated GAI models
Based on https://ai.google.dev/gemini-api/docs/models/gemini, the 1.0 Pro model has been marked as deprecated.
2024-12-15 12:18:34 +09:00
M0cho
e762405cba Update: [index.html] Remove GAI models deleted from the API
The 1.0 Pro Vision model has already been removed.
```
Google AI Studio API returned error: 404 Not Found {
  "error": {
    "code": 404,
    "message": "Gemini 1.0 Pro Vision has been deprecated on July 12, 2024. Consider switching to a different model, for example gemini-1.5-flash.",
    "status": "NOT_FOUND"
  }
}
```
2024-12-15 12:11:56 +09:00
Succubyss
6fce056b8c Add /substr command 2024-12-14 19:25:09 -06:00
InspectorCaracal
b8fc9f2194 Fix name-inclusion logic check 2024-12-14 15:10:31 -07:00
Cohee
713c05f808 Add /getcharlore and /getpersonalore commands
Closes #3183
2024-12-14 18:48:14 +02:00
Cohee
e960ae64c5 Add a name argument for /getchatbook
Closes #2599
2024-12-14 18:20:13 +02:00
Cohee
8811010c73 Merge pull request #3181 from SillyTavern/tc-split-generic
Add generic text completion API type (100% OAI compatible)
2024-12-14 16:05:44 +02:00
Cohee
e15e6dc3bd One more example of generic endpoint 2024-12-14 16:04:01 +02:00
Cohee
756f88b5aa Merge branch 'staging' into tc-split-generic 2024-12-14 15:24:10 +02:00
Cohee
5c1a9a3003 Merge pull request #3187 from InspectorCaracal/fix-double-prefix
Fix example messages being double-prefixed for group chats
2024-12-14 15:17:56 +02:00
Cohee
a7e8d00145 Use Array.includes 2024-12-14 15:16:43 +02:00
Cohee
103251070f Merge pull request #3186 from Succubyss/getcontext_gettexttokens
Expose `tokenizers` & `getTextTokens` in `getContext`
2024-12-14 14:14:00 +02:00
InspectorCaracal
1ef25d6176 fix double-prefixing on example messages 2024-12-13 17:56:06 -07:00
Succubyss
0e5100180b expose tokenizers & getTextTokens in getContext 2024-12-13 16:29:34 -06:00
Cohee
cd0b834291 Implement "except" mode for type-specific controls in settings 2024-12-13 20:58:16 +02:00
Cohee
f9eb720f2a Merge pull request #3185 from SillyTavern/inject-filter
Inject filter
2024-12-13 19:49:49 +02:00
Cohee
6f4350b3a7 Add error handler to filter closure executor 2024-12-13 01:23:13 +02:00
Cohee
294b15976c Add validation for filter inject argument 2024-12-13 01:20:43 +02:00
Cohee
3167019faf Add generic text completion API type (100% OAI compatible) 2024-12-13 01:12:10 +02:00
Cohee
d1932f4cb5 Merge branch 'staging' into inject-filter 2024-12-13 00:03:03 +02:00
Cohee
e7b53dcb46 Merge branch 'release' into staging 2024-12-13 00:02:38 +02:00
Cohee
205f1d7adb Add filter arg for inject command 2024-12-13 00:02:24 +02:00
Cohee
47dea8159e Merge branch 'staging' into inject-filter 2024-12-12 23:35:23 +02:00
Cohee
79e3dda1df Merge pull request #3178 from ptm0000/release
Add korean readme
2024-12-12 16:52:31 +02:00
ptm0000
fa62326eeb Update readme-ko_kr.md 2024-12-12 21:25:52 +09:00
ptm0000
10835de6e2 Update readme-ko_kr.md 2024-12-12 21:20:51 +09:00
Cohee
5c82ccf435 Refactor endpoints/chats.js
1. Move formatBytes utility to util.js
2. Fix type error related to dates sorting
3. Add type to backupFunctions map
2024-12-12 14:07:37 +02:00
ptm0000
b94ed54283 Update readme-ko_kr.md 2024-12-12 20:12:36 +09:00
ptm0000
f05ad26969 add korean readme 2024-12-12 19:57:53 +09:00
Cohee
cf1b98e25d Add 'gemini-2.0-flash-exp' to supported vision models 2024-12-11 23:40:45 +02:00
Cohee
c4c9f43a60 Merge pull request #3176 from M0ch0/staging
Support Gemini-2.0-flash-exp
2024-12-11 23:39:55 +02:00
M0cho
67cb89f634 Sort Gemini-Subversion: gemini-exp-series by date 2024-12-12 06:33:21 +09:00
M0cho
a64c8ade9d Support Gemini 2.0 Flash-exp 2024-12-12 06:31:27 +09:00
Cohee
0090d68559 Fix title of checkbox 2024-12-11 23:25:52 +02:00
Cohee
d9e0df0884 Extensions: stable manifests sorting if conflicts in loading order 2024-12-11 23:00:57 +02:00
Cohee
7b0d854fe6 Add header to extensions list console log 2024-12-11 22:46:12 +02:00
Cohee
9e8277882c Docker: combine entrypoints 2024-12-11 21:38:39 +02:00
Cohee
5f8989437e Merge pull request #3169 from yarathenomad/docker-add-ssl
Add SSL support to the Docker image
2024-12-11 21:30:23 +02:00
Cohee
f677b914f7 Merge branch 'staging' into docker-add-ssl 2024-12-11 18:39:35 +02:00
Cohee
c05265d1a1 Merge pull request #3158 from SillyTavern/max-total-chat-backups
Add maxTotalChatBackups config.yaml value
2024-12-11 18:38:58 +02:00
Cohee
363c36da9c Merge branch 'staging' into max-total-chat-backups 2024-12-11 18:36:03 +02:00
Cohee
3698f40709 Merge pull request #3146 from SillyTavern/persona-lorebook
Persona lorebook
2024-12-11 18:35:05 +02:00
Cohee
16c2183fd0 Add filter for active persona LB button 2024-12-11 18:30:36 +02:00
Cohee
3be17e2ed8 Merge branch 'staging' into persona-lorebook 2024-12-11 18:25:58 +02:00
Cohee
00006aa072 Merge pull request #3145 from SillyTavern/redesign-extension-manager
Redesign extension manager
2024-12-11 18:24:17 +02:00
Cohee
62be0939d0 Refactor manifests sorting 2024-12-11 18:20:29 +02:00
Cohee
bc94ff7800 Preserve scrollTop on popup reopen 2024-12-11 18:09:30 +02:00
Cohee
84bc14dfe5 Merge branch 'staging' into redesign-extension-manager 2024-12-11 17:50:28 +02:00
Cohee
0e81fb6a4a Async logic fixes 2024-12-11 17:49:03 +02:00
Cohee
4bf58ca2d5 Merge branch 'release' into staging 2024-12-11 17:44:33 +02:00
Cohee
003d17b2c5 Merge pull request #3173 from ceruleandeep/redesign-extension-manager
Redesign extension manager
2024-12-11 17:43:57 +02:00
ceruleandeep
58ac746442 Show error popup if extension update fails 2024-12-11 19:37:21 +11:00
ceruleandeep
19c18d54f5 If cannot get current commit hash for a repo, mark it as up to date 2024-12-11 19:17:11 +11:00
ceruleandeep
9c08f20e06 Add aider logs and env to gitignore 2024-12-11 12:34:58 +11:00
Cohee
e773678f2d Prompt Manager: forbid overrides if a prompt is disabled 2024-12-11 02:19:13 +02:00
YaraTheNomad
01dec6466c Docker image now allows passing CLI args to node 2024-12-10 16:05:13 +00:00
Cohee
bcfb07de5e New llama-3.3 Groq model
Closes #3168
2024-12-10 17:59:59 +02:00
Cohee
df8e0ba923 Don't insert non-HTTP links to extension origin 2024-12-10 00:01:54 +02:00
Cohee
5a01eb8eb1 Ok, the manifest version can stay 2024-12-09 23:55:08 +02:00
Cohee
f5088b398f Improve styles of extension blocks 2024-12-09 22:37:43 +02:00
Cohee
3c82d961bd Batch extension version checks 2024-12-09 22:24:02 +02:00
Cohee
c5b3ce0d5c Merge branch 'staging' into redesign-extension-manager 2024-12-09 22:12:50 +02:00
Cohee
050f485a5b Merge pull request #3162 from alexdenton123/patch-1
Update index.js
2024-12-09 18:51:17 +02:00
Cohee
2922f19a2a Merge pull request #3165 from AlpinDale/default_order
aphrodite: send an empty list if using the default sampler priority
2024-12-09 17:34:11 +02:00
Cohee
cc73a45d1f Make lint happy 2024-12-09 17:32:23 +02:00
AlpinDale
bcbfcb87b5 aphrodite: send an empty sampler priority list if using the default order 2024-12-09 14:05:33 +00:00
Cohee
66f02f59c0 Merge pull request #3132 from AlpinDale/sampler_order
aphrodite: sampler order block
2024-12-09 15:27:30 +02:00
Cohee
323b9407df Small cosmetic fixes 2024-12-09 15:26:57 +02:00
Cohee
3ed5d892f7 Fix bugs with the settings 2024-12-09 15:13:19 +02:00
Cohee
d2a39f7de8 Update readme-zh_tw.md 2024-12-09 13:03:47 +02:00
Cohee
b500406c2f Merge pull request #3163 from RivelleDays/release
Create readme-zh_tw.md
2024-12-09 13:02:26 +02:00
Rivelle
099744b298 Update readme-de_de.md 2024-12-09 19:00:53 +08:00
Rivelle
024213a8e4 Update readme-ja_jp.md 2024-12-09 19:00:39 +08:00
Rivelle
c268713d84 Update readme-ru_ru.md 2024-12-09 19:00:26 +08:00
Rivelle
1d0664a197 Update readme-zh_cn.md 2024-12-09 19:00:12 +08:00
Rivelle
ece0cc9080 Update readme.md 2024-12-09 18:59:51 +08:00
Cohee
5166720f07 Merge pull request #3164 from RivelleDays/patch-1
Update zh-tw.json: Improved Translation Quality and Terminology Consistency
2024-12-09 12:17:30 +02:00
Rivelle
60caa67667 Update zh-tw.json 2024-12-09 14:29:10 +08:00
Rivelle
d9ee8aa3dc Update zh-tw.json 2024-12-09 14:26:46 +08:00
Rivelle
7a463708bd Create readme-zh_tw.md
The readme.md file has been translated into Traditional Chinese. The translation uses concise, professional, and neutral language, tailored to the preferences of Traditional Chinese users, particularly those in Taiwan.
2024-12-09 13:10:29 +08:00
Alex Denton
f98f83471a Update index.js
Changes for LLM API
- Avoid sending partial API requests when streaming.
- Avoid checking character length when using API as it can afford more characters.
2024-12-08 23:31:03 +01:00
Cohee
c842c6f238 Merge branch 'staging' into redesign-extension-manager 2024-12-08 16:30:16 +02:00
Cohee
9a13128398 Merge pull request #3159 from RivelleDays/patch-1
Enhance zh-tw.json: Completing and Refining Previous Translations
2024-12-08 14:34:55 +02:00
Cohee
210fac321b Move config reading to top-level 2024-12-08 14:05:14 +02:00
Cohee
7098e17d22 Change default value of maxTotalChatBackups 2024-12-08 14:04:13 +02:00
Rivelle
e21931b6eb Update zh-tw.json
Translated previously incomplete sections.
Refined certain terms for improved professionalism and neutrality. Key adjustments include:
1. The previous translator rendered "Persona" as "玩家角色" (player character). This has been revised to "使用者" (user) to avoid giving SillyTavern the impression of being a game.
2. Simplified "角色人物卡" (character profile card) to "角色卡" (character card), as current character cards may represent non-human entities, non-living objects, or even settings. Removing "人物" (character) does not impact clarity.
3. Unified the translation of "Tokenizer" as "分詞器" (tokenizer), which is more common in professional discussions in Traditional Chinese.
4. Translated "Global" as "全域" (global), aligning better with technical terminology.
5. Revised certain translations to better match their intended functionalities, such as:
   - "Reduced Motion" is more accurately described as "減少介面的動畫效果" (reduce interface animations).
   - "Auto-Expand Message Actions" is now "展開訊息快速編輯選單工具" (expand quick edit menu for messages).
2024-12-08 18:27:44 +08:00
Cohee
12db782a30 Merge branch 'release' into staging 2024-12-08 01:00:39 +02:00
Cohee
1d3abf54a5 Move AllTalk event handlers setup up 2024-12-08 00:48:44 +02:00
Cohee
1ecc65f5fe Log failed image decoding 2024-12-07 22:49:21 +02:00
Cohee
87535c6ec8 Merge branch 'staging' into redesign-extension-manager 2024-12-07 20:34:10 +02:00
Cohee
0638953a20 Clean-up debug logs 2024-12-07 20:34:01 +02:00
Cohee
126616d539 Refactor and JSDoc extensions.js 2024-12-07 20:31:16 +02:00
Cohee
83965fb611 Implement move extensions 2024-12-07 18:42:37 +02:00
Cohee
c33649753b Improve extension type indication 2024-12-07 18:12:27 +02:00
Cohee
abe51682c8 [wip] Add global extensions 2024-12-07 17:10:26 +02:00
Cohee
84d2530c52 Merge branch 'staging' into persona-lorebook 2024-12-07 15:52:23 +02:00
Cohee
bea991b665 Merge branch 'staging' into redesign-extension-manager 2024-12-07 15:49:44 +02:00
Cohee
3849908fe1 Add maxTotalChatBackups config.yaml value 2024-12-07 15:37:57 +02:00
Cohee
bf4357774d Merge pull request #3156 from SillyTavern/staging
Staging
2024-12-07 15:12:23 +02:00
Cohee
54ca9477dd Bump package version 2024-12-07 14:53:13 +02:00
Cohee
8574a5dd27 Improve KAI lite import 2024-12-07 14:50:24 +02:00
Cohee
f6b9cd970d Add gemini-exp-1206 to supported image prompt models 2024-12-07 14:36:53 +02:00
AlpinDale
add108b821 fix the JS issue where both ooba and aphro were using the same container ID 2024-12-07 12:36:10 +00:00
AlpinDale
a1115ab4ff Merge remote-tracking branch 'alpin/staging' into sampler_order 2024-12-07 12:27:55 +00:00
Cohee
b8a9a55246 Fix group candidates fuzzy filter 2024-12-06 23:04:18 +02:00
Cohee
51f89aaf7b Merge pull request #3152 from SillyTavern/getcontext-typed
Add types for SillyTavern.getContext
2024-12-06 22:20:57 +02:00
Cohee
0849cfca98 Remove unused imports 2024-12-06 22:13:34 +02:00
Cohee
485e9e2eaa Fix redundancy in getContext. Add power user settings 2024-12-06 21:54:07 +02:00
Cohee
3ae858113b Set strict function binds in jsconfig 2024-12-06 21:50:08 +02:00
Cohee
192a1f4014 getContext: Simplify chatId access 2024-12-06 21:41:04 +02:00
Cohee
0da4590597 Merge branch 'staging' into getcontext-typed 2024-12-06 21:31:53 +02:00
Cohee
3ed095bb0e Merge pull request #3154 from SillyTavern/optimize-past-swipes
Optimize past swipes
2024-12-06 21:31:19 +02:00
Cohee
22ea5f3c3c Lint fix 2024-12-06 21:30:05 +02:00
Cohee
c78cb3b463 Merge pull request #3153 from M0ch0/staging
Support Gemini-exp-1206
2024-12-06 21:29:19 +02:00
Cohee
1a8e37d3a5 Remove counter hide on right swipe 2024-12-06 20:54:45 +02:00
Cohee
d5221760a3 Hide swipe counter with visibility 2024-12-06 20:24:22 +02:00
Cohee
dce63f52c0 Remove SD module worker 2024-12-06 20:21:01 +02:00
Cohee
d6f34f7b2c Add prompt injection filters 2024-12-06 19:53:02 +02:00
M0cho
073b76a693 Support Gemini-exp-1206 2024-12-07 02:19:15 +09:00
Cohee
9c43999e4b Fix /tools-unregister 2024-12-06 17:15:40 +02:00
Cohee
8663c88ae8 Merge branch 'release' into staging 2024-12-06 16:59:46 +02:00
Cohee
7b732edf61 Fix npm audit 2024-12-06 16:59:39 +02:00
Cohee
77841dbc21 Add types for SillyTavern.getContext 2024-12-06 16:41:26 +02:00
Cohee
3502bfcaa0 Add {{groupNotMuted}} 2024-12-05 22:57:02 +02:00
Cohee
f5f60e269e Merge pull request #3150 from Succubyss/getpromptentry
add /getpromptentry command
2024-12-05 22:06:38 +02:00
Cohee
7dfba69fc1 Import promptManager from openai.js 2024-12-05 22:06:16 +02:00
Succubyss
4cf5d1535e add /getpromptentry command 2024-12-05 12:38:21 -06:00
Cohee
7f9766c918 Merge pull request #3144 from Meus-Artis/patch-1
Better console output
2024-12-05 18:56:39 +02:00
Cohee
e55748fe92 Fix Date constructor call 2024-12-05 18:55:17 +02:00
Cohee
a137c23116 Merge pull request #3148 from IceFog72/release
Small css fix.
2024-12-05 18:51:04 +02:00
Cohee
63f9f33e20 calc() is not needed 2024-12-05 18:50:20 +02:00
Cohee
3dd1e25a3b Hide past swipes with opacity 2024-12-05 15:56:17 +00:00
Cohee
23a10fdc22 Optimize past swipe counters performance 2024-12-05 15:32:30 +00:00
Cohee
373a0ad321 Add config.yaml value for cards cache capacity. 2024-12-05 12:59:03 +00:00
IceFog72
960db2d59b Update tts/style.css
.at-settings-separator padding fix
2024-12-05 03:25:13 +02:00
IceFog72
3d8f8d90c3 Update stable-diffusion/style.css
#sd_dropdown backdrop-filter fix
2024-12-05 03:23:11 +02:00
Cohee
41a3035a2a Use filter order in group candidates list 2024-12-04 15:22:53 +00:00
Cohee
a702dab68b Alt+Click to open lorebook 2024-12-04 13:53:10 +00:00
Cohee
efe25ddc04 Merge branch 'staging' into persona-lorebook 2024-12-04 13:35:54 +00:00
Cohee
a7c8b93652 Merge pull request #3147 from SillyTavern/off-by-one
Fix -0 comparison
2024-12-04 15:35:16 +02:00
Cohee
23e59a1189 Document that -0 is supported 2024-12-04 12:57:02 +00:00
Cohee
e9fc488661 Properly check for -0 2024-12-04 12:53:34 +00:00
Cohee
2ef095c273 Merge branch 'release' into staging 2024-12-04 01:35:50 +02:00
Cohee
e6be28acea llama.cpp: Don't send empty DRY sequence breakers
Fixes #3048
2024-12-04 01:32:27 +02:00
Cohee
fb1f890974 Merge branch 'release' into staging 2024-12-04 01:05:56 +02:00
Cohee
8ef49b40b2 Add error handling to group parsing in chat search 2024-12-04 01:05:14 +02:00
Cohee
79700fd983 Add Kobold Lite chats import 2024-12-04 00:44:50 +02:00
Cohee
8de1d26eaa NanoGPT: Unhide sampling parameters 2024-12-04 00:00:08 +02:00
Cohee
69da293fb9 Show used preset in itemization dialog 2024-12-03 23:27:39 +02:00
Cohee
cb21162558 No dangling promise 2024-12-03 22:56:19 +02:00
Cohee
bab9d3c74b Merge branch 'staging' into persona-lorebook 2024-12-03 22:54:42 +02:00
Cohee
9960db0ae2 Redesign extension manager 2024-12-03 22:48:10 +02:00
Meus Artis
4466da63bc Update users-public.js
Replace session touch timestamp with Date()
2024-12-03 14:56:40 -05:00
Cohee
7ce2841588 Add trim_stop to koboldcpp requests
Fixes #3143
2024-12-03 14:49:20 +00:00
Meus Artis
c3f988f246 Update users-public.js
Better/more detailed console output for multi-user installs
2024-12-03 01:09:41 -05:00
AlpinDale
80c8e83f09 use strings instead of IDs 2024-12-03 01:46:51 +00:00
AlpinDale
86b4247767 Merge remote-tracking branch 'alpin/staging' into sampler_order 2024-12-03 01:27:08 +00:00
Cohee
36051fa5db Merge pull request #3141 from Ivruix/docker-instructions-russian 2024-12-03 02:03:11 +02:00
Cohee
980ebb2fbc Merge pull request #3142 from AlpinDale/aphrodite_dry_range 2024-12-03 02:01:42 +02:00
AlpinDale
1c803972cd aphrodite: add range parameter for DRY 2024-12-02 22:11:04 +00:00
Ivruix
82dff4f204 Add docker tutorial to Russian readme 2024-12-02 20:37:17 +00:00
Cohee
af582f43a6 [wip] Persona lorebook 2024-12-02 02:52:00 +02:00
Cohee
b08cdffc64 Add {{lastGenerationType}} macro 2024-12-02 01:39:57 +02:00
Cohee
ce34f14f19 Merge pull request #3137 from SillyTavern/dependabot/npm_and_yarn/tests/cross-spawn-7.0.6
Bump cross-spawn from 7.0.3 to 7.0.6 in /tests
2024-12-01 17:41:37 +02:00
dependabot[bot]
ade6980037 Bump cross-spawn from 7.0.3 to 7.0.6 in /tests
Bumps [cross-spawn](https://github.com/moxystudio/node-cross-spawn) from 7.0.3 to 7.0.6.
- [Changelog](https://github.com/moxystudio/node-cross-spawn/blob/master/CHANGELOG.md)
- [Commits](https://github.com/moxystudio/node-cross-spawn/compare/v7.0.3...v7.0.6)

---
updated-dependencies:
- dependency-name: cross-spawn
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-12-01 15:40:45 +00:00
Cohee
de3f340a55 Merge pull request #3135 from SillyTavern/staging
Staging
2024-12-01 17:31:30 +02:00
Cohee
39c3924b3f Merge pull request #3112 from kallewoof/202411-backend-maxctx
feature: allow auto-use of max context size given by backend
2024-12-01 15:15:15 +02:00
Cohee
8e94589f83 Revert keepContextLock flag in setGenerationParamsFromPreset 2024-12-01 15:13:17 +02:00
Cohee
66a862f797 Lint the use of data-i18n attributes 2024-12-01 15:10:22 +02:00
Cohee
c930a66d81 Merge branch 'staging' into 202411-backend-maxctx 2024-12-01 14:39:01 +02:00
Cohee
89ec8fd23a Bump package version 2024-12-01 14:38:17 +02:00
AlpinDale
d1a654f41f add to index.html 2024-12-01 02:37:11 +00:00
Cohee
a86735d743 Fix sendless statuses 2024-11-30 19:30:14 +02:00
Cohee
56c99000c4 Split auto-switch toast 2024-11-30 18:21:15 +02:00
Cohee
4a7a11dfd5 Add JSdoc for function 2024-11-30 18:19:31 +02:00
Cohee
8e20ebb534 Run eslint 2024-11-30 18:14:46 +02:00
Cohee
04b68d2cce Move derive context size to TC settings 2024-11-30 18:08:12 +02:00
Cohee
c3c16ea0d6 Merge pull request #3106 from joenunezb/optimize/improve-search
perf(search): improve fuzzy character search performance by ~13x (4.5s → 350ms)
2024-11-30 17:50:40 +02:00
Cohee
8b7a14f895 Merge pull request #3124 from ceruleandeep/feature/actuallyCompactContextMenus
Filter out hidden items in context menus
2024-11-30 17:39:50 +02:00
ceruleandeep
2f7bc7ca8d Filter out hidden items in context menus
Add CSS to apply label show/hide settings to QRs in context menus

Add provision for QR set applied to one of its own buttons as "burger" menu
2024-11-30 00:46:04 +11:00
Cohee
a444a782e2 Fix input outline on discreet login page 2024-11-29 13:32:53 +00:00
Cohee
0bebf02c97 Merge pull request #3119 from SillyTavern/webpack-memory
Replace webpack-dev-middleware with a statically compiled file
2024-11-29 15:24:53 +02:00
Cohee
7fbff41329 Unasync route handler 2024-11-29 13:14:40 +00:00
Cohee
53514b5e1a Prettify compilation console logs 2024-11-29 13:12:46 +00:00
Cohee
c0b37631bc Merge branch 'staging' into webpack-memory 2024-11-29 13:07:17 +00:00
Cohee
e124a22ffd Merge pull request #3120 from SillyTavern/char-cache-limit
(perf) Add 100MB limit to parsed characters cache
2024-11-29 15:04:03 +02:00
Cohee
095d19cda7 Rename LimitedMap => MemoryLimitedMap 2024-11-29 12:33:48 +00:00
Cohee
176ef77624 Merge branch 'staging' into char-cache-limit 2024-11-29 12:30:26 +00:00
Cohee
2384031d09 Merge pull request #3121 from ceruleandeep/fix/handleIdForQRMenuAdd
Wire up id= parameter for /qr-context*
2024-11-29 14:27:57 +02:00
Cohee
710a4ee867 Merge pull request #3122 from ceruleandeep/feature/compactererQRContextMenus
Make QR context menu display options more consistent with QR bar
2024-11-29 14:17:24 +02:00
ceruleandeep
3a1a955164 Make QR context menu display options more consistent with QR bar
Use QR title as tooltip if set on the QR

Add qr--hidden class to "invisible" context items to allow hiding with CSS

Add title and isHidden props to MenuItem

Remove domIcon and domLabel props: not needed for ctx menu rendering; isForceExpanded: unimplemented
2024-11-29 17:44:51 +11:00
ceruleandeep
e8004b5b56 Wire up id= parameter for /qr-context*
Parameter is in the named arguments but was not handled in the handler. Added `args.id !== undefined ? Number(args.id) : args.label` etc, as used elsewhere.
2024-11-29 11:52:57 +11:00
Cohee
c873362d01 Safer estimation of possibly undefined values 2024-11-29 01:28:10 +02:00
Cohee
52606616c4 Add 100MB limit to parsed characters cache 2024-11-29 01:06:10 +02:00
Cohee
768b3e48f7 Remove webpack watch unhook 2024-11-29 00:25:31 +02:00
Cohee
afccb8517a Ditch webpack-dev-middleware 2024-11-29 00:13:43 +02:00
Cohee
b5c2ecdfcc Webpack: cache lib.js to disk to prevent occasional OOM 2024-11-28 22:47:27 +02:00
Cohee
afb4acc19b Revert "Webpack: cache lib.js to disk to prevent occasional OOM"
This reverts commit f630c8892a.
2024-11-28 22:45:45 +02:00
Cohee
f630c8892a Webpack: cache lib.js to disk to prevent occasional OOM 2024-11-28 22:39:20 +02:00
Cohee
4f24f8078d Merge pull request #3118 from kallewoof/202411-tulu-nl
tulu template: added \n to input/system_suffix to match model card
2024-11-28 14:38:45 +02:00
Cohee
8bfb695536 Adjust documentation links 2024-11-28 11:38:10 +00:00
Karl-Johan Alm
ef35adb9e4 tulu template: added \n to input_suffix and system_suffix to match model card 2024-11-28 13:04:40 +09:00
Cohee
76c2789587 Merge pull request #3117 from kallewoof/202411-tulu
Add Tulu templates
2024-11-27 12:31:44 +02:00
Joe
f4ef9697e9 Account for optional cache and remove timing code 2024-11-26 20:07:30 -08:00
Joe
309157dd89 Remove unnecesary key only clearing for cache clearing 2024-11-26 19:52:21 -08:00
Joe
1395c0b8c6 Encapsulate logic into filters instead of spreading around 2024-11-26 19:47:09 -08:00
Karl-Johan Alm
8d67bdee84 Add Tulu templates 2024-11-27 11:58:12 +09:00
Joe
78c55558af Merge branch 'staging' of https://github.com/joenunezb/SillyTavern into optimize/improve-search 2024-11-26 18:00:28 -08:00
Joe
dd4a1bf072 Attempt to allow preview for github 2024-11-26 13:32:40 -08:00
Joe
16ba8331b5 Document Fuzzy Search process 2024-11-26 13:27:27 -08:00
Cohee
8dbd78f560 Merge pull request #3108 from SillyTavern/claude-no-filler
Claude: remove user filler from prompt converter
2024-11-26 21:41:33 +02:00
Cohee
f730e2179b Merge branch 'staging' into claude-no-filler 2024-11-26 21:25:47 +02:00
Cohee
a5b53b0e75 Merge pull request #3113 from AlpinDale/aphrodite-new-samplers
misc: add DRY, skew, and no repeat ngram penalty for aphrodite
2024-11-26 12:29:16 +02:00
Karl-Johan Alm
faf80d1b62 UI: move the derived context size flag into connection pane 2024-11-26 10:36:40 +09:00
Karl-Johan Alm
e02f57b7b0 respect context unlocked flag when auto-setting context size 2024-11-26 10:00:52 +09:00
AlpinDale
e664806990 add DRY, skew, and no repeat ngram penalty 2024-11-25 22:28:58 +00:00
Karl-Johan Alm
4988f22e94 feature: allow auto-use of max context size given by backend 2024-11-25 23:08:11 +09:00
Cohee
0143ce199a Merge pull request #3111 from kallewoof/202411-avoid-missing-ct
Template derivation: explicitly skip empty templates
2024-11-25 12:49:32 +02:00
Karl-Johan Alm
eec20dab95 template derivation: explicitly skip derivation attempt if chat_template is empty 2024-11-25 17:03:21 +09:00
Joe
e56faaaed5 Remove hash function 2024-11-24 14:55:22 -08:00
Joe
e1d6a47048 Remove key hashing and explicitly clear the cache after printing characters 2024-11-24 14:54:12 -08:00
Cohee
0791f5bbae Merge pull request #3094 from AlpinDale/top-nsigma
feat: add top nsigma sampler support
2024-11-25 00:33:44 +02:00
Cohee
4b306c5ef8 Fix title 2024-11-25 00:13:36 +02:00
Cohee
91437ad52f Fix counter link 2024-11-25 00:11:07 +02:00
Cohee
cec4519dcb Fix nsigma control id 2024-11-25 00:09:41 +02:00
Cohee
fdd798e2da Merge branch 'staging' into top-nsigma 2024-11-25 00:08:38 +02:00
Cohee
95db691c6c Merge branch 'release' into staging 2024-11-25 00:05:51 +02:00
Cohee
9382845dee Claude: remove user filler from prompt converter 2024-11-24 19:05:41 +02:00
Cohee
626db7f8f2 Claude: remove dead models 2024-11-24 18:55:53 +02:00
Cohee
b4be50d26a Android: Disable in-memory cache of parsed cards 2024-11-24 18:52:47 +02:00
Cohee
f3e4d82284 Clean-up zen sliders 2024-11-24 17:40:46 +02:00
Joe
d1cac298c6 Coment out log statements 2024-11-23 22:51:48 -08:00
Joe
e2c083ba31 Remove duplicated code 2024-11-23 22:34:56 -08:00
Joe
2661881bc4 Handle stale cache 2024-11-23 22:13:20 -08:00
Joe
eb29f03ab0 Sped up character search by 93% 2024-11-23 20:48:36 -08:00
Cohee
b1300d403c Always stop webpack watch on android 2024-11-24 05:03:35 +02:00
Cohee
0afbd95d09 Merge pull request #3099 from ceruleandeep/fix/connRefusedErrMsg
Fix/conn refused err msg
2024-11-24 02:32:57 +02:00
Cohee
01fdd4206c Revert regex 2024-11-24 02:30:04 +02:00
Cohee
df50fece6c Fix quota error async-ness 2024-11-24 01:48:08 +02:00
Cohee
70c45fb001 Merge branch 'staging' into fix/connRefusedErrMsg 2024-11-24 01:41:15 +02:00
Cohee
f6d0f7587c Merge pull request #3102 from ceruleandeep/fix/sdInteractiveYour
Fix "send a photo of yourself" etc in SD interactive mode
2024-11-24 01:36:34 +02:00
Cohee
fc84e61d94 Simplify regex 2024-11-24 01:34:06 +02:00
Cohee
f648137ae2 Merge pull request #3105 from SillyTavern/regex-substitute-raw
Add 3-state find substitution select
2024-11-24 01:30:54 +02:00
Cohee
41fdc1366d Unhide logit bias for custom OAI-compatible 2024-11-23 20:55:50 +02:00
Cohee
2b481dae2d Fix continue prefill newline prefix 2024-11-23 20:41:57 +02:00
Cohee
da42d0a47a Add 3-state find substitution select
Fixes #3104
2024-11-23 19:39:02 +02:00
Cohee
d281749d63 SD: Change onChatChanged to async 2024-11-23 18:16:04 +02:00
Cohee
5515f28105 Add /lower and /upper commands 2024-11-23 18:10:03 +02:00
Cohee
bc6c598796 Await event emission 2024-11-23 17:58:02 +02:00
Cohee
ba91845ced Merge pull request #3090 from kallewoof/202411-auto-templates
Derived templates
2024-11-23 17:56:18 +02:00
Cohee
803b7fca89 Remove custom header 2024-11-23 17:50:32 +02:00
Cohee
3c2e802547 Validate instruct/context existance 2024-11-23 17:44:23 +02:00
Cohee
c8e6ba4d7f Add template hash for gemma-2-2b 2024-11-23 17:38:12 +02:00
Cohee
362bdf0c46 Don't log when no endpoint available. Remove pointless header 2024-11-23 17:32:12 +02:00
Cohee
b9cc763d51 Fix typo in file name 2024-11-23 17:30:50 +02:00
Cohee
eccd1ab381 Exclude 'derived' from instruct templates 2024-11-23 16:06:10 +02:00
Cohee
049ae541aa Add 'node:' prefix to import 2024-11-23 16:03:13 +02:00
Cohee
2e661c36e5 Check for response ok 2024-11-23 16:01:14 +02:00
Cohee
50922c11fa Change icon for derivation 2024-11-23 16:01:05 +02:00
Cohee
8ed6439da2 Update documentation links 2024-11-23 15:57:22 +02:00
Cohee
876da6899d Merge branch 'staging' into 202411-auto-templates 2024-11-23 15:47:11 +02:00
Cohee
7cd68d827b Merge pull request #3098 from tincansimagine/for18n
feat: Improve Korean data-i18n
2024-11-23 15:45:55 +02:00
Cohee
c5bd43405c Alias /note-pos command to match /inject 2024-11-23 15:34:08 +02:00
Cohee
3af5302714 Merge pull request #3103 from Finadil/staging
Add author's note STscript returns, role changing, and aliases
2024-11-23 15:29:01 +02:00
Finadil
446146674c Add STscript returns, role changing, and aliases
Adds the following STscript changes:
-Returns to all commands and makes arguments optional
-before_scenario option for chat insertion position (to match UI)
-/note-role to change the chat insertion role
-/note- Aliases to all commands so they're centralized
2024-11-23 06:49:30 -05:00
tincansimagine
dedc10b412 feat: imporve Korean data-i18n 2024-11-23 20:43:16 +09:00
ceruleandeep
c39db9f3f0 Linting 2024-11-23 16:05:07 +11:00
ceruleandeep
ce3fb2e941 Only remove whole word arts/dets in SD interactive prompts
When matching FACE assume that the determiner has been removed

Test cases:
- send a photo of yourself
- send a pic of your car
- send a photo of your selfie
- draw a picture of antelopes
- render an image of Thebes
- send a drawing of Skeletor's face
2024-11-23 16:01:12 +11:00
Cohee
90ee0398f2 Merge pull request #3100 from tincansimagine/new-model-pr
feat: Add multiple delayed model updates
2024-11-22 19:56:32 +02:00
Cohee
ecbf9df79a Update context sizes for new Cohere models 2024-11-22 17:54:03 +00:00
Cohee
85ca08a2ea Settings for new gemini 2024-11-22 17:50:33 +00:00
Cohee
1938e8ac14 Remove to-int conversion from Novel logprobs 2024-11-22 17:46:20 +00:00
Cohee
6ae120900d Support images in custom prompt post-processing 2024-11-22 17:39:49 +00:00
tincansimagine
8688079882 feat: Add multiple delayed model updates 2024-11-22 14:44:54 +09:00
ceruleandeep
8de551fc94 Return 502 with error description when connection to remote CC API fails
If chat-completions/generate returns an error, throw the error message

Reformat display of exceptions during SD prompt text generation
2024-11-22 11:55:27 +11:00
ceruleandeep
0383ea52e9 Linting and commenting
Linting and commenting

Linting and commenting

Linting and commenting

Linting and commenting
2024-11-22 11:55:27 +11:00
tincansimagine
9a15f45a2c feat: Improve Korean data-18n 2024-11-22 08:08:05 +09:00
ceruleandeep
669ba2fd36 Unrelated linting 2024-11-21 21:24:16 +11:00
Karl-Johan Alm
3789381c6c added substr derivations with one example 2024-11-21 13:14:33 +09:00
Karl-Johan Alm
c30dde8471 rename /chat_template to /props, and switch to non-trimmed hashes 2024-11-21 11:38:57 +09:00
Karl-Johan Alm
4214c9d894 trim chat template before hashing 2024-11-20 15:12:42 +09:00
Karl-Johan Alm
50ffaeb06a UI: add UI to enable/disable auto-derived templates 2024-11-20 13:28:17 +09:00
Karl-Johan Alm
bb062f5ec9 update endpoint to reflect koboldcpp update 2024-11-20 13:11:51 +09:00
AlpinDale
ec4cff72fe feat: add top nsigma sampler support 2024-11-19 23:05:23 +00:00
Cohee
56137d2b57 Merge pull request #3093 from WolframRavenwolf/Mistral-2411
Mistral-2411 context+instruct presets
2024-11-19 22:32:56 +02:00
Wolfram Ravenwolf
5d2858268e Mistral-2411 -> Mistral V7 2024-11-19 21:12:01 +01:00
Wolfram Ravenwolf
30269e8ec6 Mistral-2411 context+instruct presets 2024-11-19 20:10:10 +01:00
Cohee
99220d6a88 Groups: add 'manual' reply strategy 2024-11-19 20:48:43 +02:00
Cohee
c3b416b4cf Claude: fix prefill tool calling hack with at-depth caching 2024-11-19 20:48:02 +02:00
Cohee
19d4d65374 Merge pull request #3092 from Ivruix/release
Add command-line arguments description to Russian readme
2024-11-19 20:37:47 +02:00
Kaverin Maxim
2846c1d6a8 Add command-line arguments description to Russian readme 2024-11-19 21:04:18 +03:00
Karl-Johan Alm
feb1b91619 template derivation: add support for llama.cpp server backend 2024-11-19 23:38:38 +09:00
Karl-Johan Alm
cdc0147490 fix error console.log message 2024-11-19 21:41:57 +09:00
Karl-Johan Alm
c2eaae3d42 switch to crypto lib 2024-11-19 21:39:35 +09:00
Karl-Johan Alm
f25ea9f6d6 template derivation: move hash part to backend 2024-11-19 20:09:29 +09:00
Karl-Johan Alm
0e2fdf37a8 feature: derived templates
This PR adds a simple hash based method for picking context and instruct templates based on the chat template, when provided by the back end.
2024-11-19 17:27:25 +09:00
Cohee
67869364a5 ImageGen: add BFL API for image generation 2024-11-19 00:30:28 +02:00
Cohee
54db4983f4 Merge pull request #3085 from honey-tree/claude-caching-at-depth
Claude caching at depth
2024-11-18 21:31:12 +02:00
Cohee
3b03f07ebf [chore] eslint fixes 2024-11-18 21:29:56 +02:00
Cohee
c3483bc432 Merge branch 'staging' into claude-caching-at-depth 2024-11-18 21:03:33 +02:00
Cohee
dde9f93d77 Merge pull request #3088 from ceruleandeep/feature/comfyGgufModels
Feature/comfy gguf models
2024-11-18 20:52:52 +02:00
Cohee
5478b37b22 Don't use deprecated fetch method. 2024-11-18 20:39:44 +02:00
Cohee
b2b5c1f10c ComfyUI: Log error details on prompt submission 2024-11-18 20:35:48 +02:00
Cohee
87f2a9e630 Merge branch 'staging' into feature/comfyGgufModels 2024-11-18 20:10:51 +02:00
Cohee
4c0da00f5b Update OpenRouter providers listing
Closes #3089
2024-11-18 20:09:56 +02:00
Cohee
b651d31780 MistralAI: new pixtral large model 2024-11-18 16:10:20 +00:00
Cohee
378dfd3626 Vectors: escape file names 2024-11-18 15:24:26 +00:00
Cohee
aaed09f606 Data Bank: display file ingestion progress 2024-11-18 15:18:45 +00:00
ceruleandeep
bcf127e387 Add diffusion unets to ComfyUI models list
rm string interpolation
2024-11-18 22:17:19 +11:00
Honey Tree
c3caa1699e Moved most of code to prompt converters 2024-11-18 08:06:27 -03:00
Cohee
7aad053e70 Merge pull request #3006 from joenunezb/fix-textarea-width-bug
Fix: Inconsistent Textarea resizing in small width windows
2024-11-18 12:30:39 +02:00
Cohee
5f44fb8535 Merge pull request #3004 from joenunezb/enhancement-make-buttons-scrollable
Enhancement: Make buttons scrollable
2024-11-18 12:15:58 +02:00
Cohee
26aad5fa80 Fix reroll button at home 2024-11-18 09:55:25 +00:00
Cohee
7580efc40d Fix npm audit 2024-11-18 09:43:23 +00:00
Cohee
44a8283e7e Fix npm audit 2024-11-18 09:42:37 +00:00
ceruleandeep
b46dae0d6e Add sample workflow for ComfyUI img2img 2024-11-18 18:49:38 +11:00
ceruleandeep
8927de45dd Convert data URL to plain base64-encoded image data 2024-11-18 18:30:31 +11:00
ceruleandeep
5992117904 Add GGUF models and denoise parameter for ComfyUI 2024-11-18 17:55:30 +11:00
Joe
17cce528f8 Undo docstring changes 2024-11-17 18:44:23 -08:00
Joe
328e3622f2 review: Fix chrome inconsistent scroll and firefox scroll to bottom 2024-11-17 18:38:38 -08:00
Joe
4c48e3cd15 Merge branch 'fix-textarea-width-bug' of https://github.com/joenunezb/SillyTavern into fix-textarea-width-bug 2024-11-17 16:17:07 -08:00
Joe
6e29ad4b50 Fix: Inconsistent Textarea resizing in small windows 2024-11-17 16:16:45 -08:00
Joe
9533b7e59a review: Move css out of js code 2024-11-17 15:54:09 -08:00
Joe
6e85b20c8a Merge branch 'enhancement-make-buttons-scrollable' of https://github.com/joenunezb/SillyTavern into enhancement-make-buttons-scrollable 2024-11-17 15:09:32 -08:00
Joe
8722c6a62b Add scroll bar to make it obvious 2024-11-17 15:08:40 -08:00
Joe
b1b6f0473a Enhancement: Make buttons scrollable 2024-11-17 15:08:39 -08:00
joenunezb
dd0caa6806 Merge branch 'SillyTavern:release' into enhancement-make-buttons-scrollable 2024-11-17 15:07:51 -08:00
Honey Tree
befe5a7171 Adding Claude caching support to OpenRouter as well 2024-11-17 15:53:02 -03:00
Cohee
61469ec999 Merge pull request #3078 from ceruleandeep/chore/lintAndDocumentLogprobs
Make dynamic reroll available without use of modifier key
2024-11-17 20:34:37 +02:00
Cohee
b143b3c820 Fix type errors 2024-11-17 20:10:51 +02:00
Cohee
57c00b0a3c Merge branch 'staging' into chore/lintAndDocumentLogprobs 2024-11-17 20:10:28 +02:00
Cohee
14d5c669b1 Fix trimming incomplete sentences in logprobs reroll 2024-11-17 19:44:08 +02:00
Honey Tree
5397614347 Defaulting to -1 rather than boolean false 2024-11-17 14:01:22 -03:00
Cohee
de4246f7b7 Move reroll button 2024-11-17 18:45:53 +02:00
Cohee
b41846e013 Merge pull request #3083 from poipoi300/staging
Fixed typo in HTML title
2024-11-17 17:36:57 +02:00
Honey Tree
ac33e4d668 cache_control positioning fix 2024-11-17 09:21:20 -03:00
Honey Tree
73dabd8905 Simple implementation of caching at depth that should be useful for most use cases 2024-11-17 08:32:36 -03:00
poipoi300
65469a4774 Fixed typo in HTML title 2024-11-16 15:56:11 -05:00
Cohee
85d25a8e13 Merge pull request #3060 from erew123/release
Support for AllTalk V1 and V2
2024-11-16 17:09:07 +02:00
Cohee
538d0874a3 Reduce persona buttons size 2024-11-16 16:02:21 +02:00
ceruleandeep
5e883e446a Make dynamic reroll available without use of modifier key
Linting
2024-11-17 00:56:21 +11:00
Cohee
7c7aaf33fc Merge pull request #3076 from Beinsezii/vllm_n_fix
Remove `best_of` for VLLM
2024-11-16 15:51:25 +02:00
Cohee
d5b48f89fc Reformat styles 2024-11-16 15:44:52 +02:00
Cohee
06d94b8b17 Merge pull request #3077 from KaraKaraWitch/patch-1
Make featherless.ai Search bar take up 1 entire row on mobile devices.
2024-11-16 15:43:36 +02:00
Cohee
c9d2b609f1 match => includes 2024-11-16 15:41:41 +02:00
Cohee
37f4fd4def Merge pull request #3073 from M0ch0/staging
Supports GEMINI EXP 1114
2024-11-16 15:40:56 +02:00
Cohee
33d8a91bf2 Linter fixes 2024-11-16 14:22:46 +02:00
Cohee
2dcdb4d14a Fix tags import 2024-11-16 14:22:23 +02:00
KaraKaraWitch
d8eb43082d Make Search bar takeup 1 entire row for small px sizes. 2024-11-16 18:45:46 +08:00
Beinsezii
c599f46269 Remove best_of for VLLM
It defaults to `n` anyways, and for some reason it was being incorrectly
received on 0.6.4.post1
2024-11-16 02:05:35 -08:00
erew123
e857db40fb Updated AllTalk Extension to support AllTalk V2
1. Core Feature Addition:
   - Added AllTalk V1/V2 server version selection
   - Added RVC (Realistic Voice Conversion) support for V2
   - RVC features are automatically disabled when V1 is selected

2. Code Improvements:
   - Replaced custom debounce implementation with shared utils.js debounce utility
   - Fixed linting issues:
     - Converted HTML attribute quotes in template literals to single quotes
     - Added trailing commas where required
     - Fixed console.error message formatting

3. New Settings/Properties Added:
   ```javascript
   server_version: 'v2' (default)
   rvc_character_voice: 'Disabled'
   rvc_character_pitch: '0'
   rvc_narrator_voice: 'Disabled'
   rvc_narrator_pitch: '0'
   ```

4. Bug Fixes/Improvements:
   - Better error handling for RVC voice fetching
   - Improved URL handling for V1/V2 differences in API responses
   - Enhanced settings initialization and validation

5. Structural Changes:
   - Added RVC-specific UI elements and controls
   - Added version-specific logic for API endpoints
   - Improved settings synchronization between UI and backend

**NOTE** On line 70 there is an eslint bypass:

```javascript
        // HTML template literals can trigger ESLint quotes warnings when quotes are used in HTML attributes.
        // Disabling quotes rule for this one line as it's a false positive with HTML template literals.
        // eslint-disable-next-line quotes
        let html = `<div class="at-settings-separator">AllTalk V2 Settings</div>`;
```

The reason is:
1. ESLint's quotes rule wants all strings to use single quotes
2. However, this is a template literal containing HTML, where double quotes are standard for attributes
3. I tried various solutions:
   - Using single quotes: `<div class='at-settings-separator'>`
   - Using double quotes: `<div class="at-settings-separator">`
   - Even tried escaping quotes
   But ESLint just kept flagging it as an error
2024-11-15 13:14:38 +00:00
Cohee
9b38e3f449 Remove dated formula formatting references 2024-11-14 22:28:46 +02:00
M0cho
30bca8e39b Supports GEMINI EXP 2024-11-15 05:26:10 +09:00
Cohee
8c1e490727 Merge pull request #3068 from LuminousPath/release
feat: Add preferences parameter to /searxng endpoint
2024-11-13 11:10:42 +02:00
Cohee
61ddb720d7 Improve backward compatibility if preferences are not passed 2024-11-13 11:09:21 +02:00
Jonathan Nogueira
f880c68968 feat: Add preferences parameter to /searxng endpoint
Added paramater and handles it in the query parameters.
2024-11-13 14:27:31 +09:00
Cohee
f1bda3fb22 Merge pull request #3053 from Yokayo/staging
Update ru-ru translation
2024-11-11 23:04:05 +02:00
Cohee
a9aff676ba [chore] Apply lint and formatter 2024-11-11 22:36:06 +02:00
Cohee
664a531c22 Merge pull request #3059 from yar3333/staging
Exclude links to embedded images from translation
2024-11-11 22:34:33 +02:00
Cohee
dea2a62be3 Merge branch 'release' into staging 2024-11-11 16:33:29 +00:00
erew123
3138252928 Support for AllTalk V1 and V2
Select the version in the interface. 
RVC is not supported on AllTalk V1
2024-11-10 20:25:08 +00:00
Yaroslav Sivakov
ba2b251d6e Exclude links to embedded images from translation 2024-11-10 17:30:55 +03:00
Cohee
8da98faa99 MistralAI: Include frequency/presence penalties in requests 2024-11-08 11:09:57 +02:00
Cohee
b29bc4000c Fix character note for the first character in the list 2024-11-08 10:55:10 +02:00
Cohee
6ae296d5b5 Add check for existing chats directory before reading files 2024-11-08 10:44:04 +02:00
Yokayo
6acf09a084 Small fix 2024-11-07 18:13:54 +07:00
Cohee
a3ca407b27 Backport llama.cpp-related DRY fixes from staging (#3051)
* llama.cpp Enable dry w/ array convert

The new PR that was merged needs an array instead of a str

https://github.com/ggerganov/llama.cpp/pull/9702

* Safe sequence breakers parse

* Support comma-separated list of llama.cpp sequence breakers #3026

---------

Co-authored-by: Beinsezii <beinsezii@gmail.com>
2024-11-06 19:47:30 +02:00
Yokayo
88ad22196c Merge branch 'staging' of https://github.com/Yokayo/SillyTavern into staging 2024-11-06 01:33:27 +07:00
Yokayo
9d664bc679 Update tl 2024-11-06 01:33:24 +07:00
Cohee
abef12d403 Fix "OpenAI-compatible" endpoints choking on empty logit bias 2024-11-05 16:42:51 +00:00
Cohee
2daff0e736 Console log full CC error response 2024-11-05 16:40:05 +00:00
Cohee
75c0d9b2a4 Merge pull request #3045 from WolframRavenwolf/claude-3-5-haiku
Added Claude 3.5 Haiku
2024-11-05 10:15:02 +02:00
Wolfram Ravenwolf
dcd11e4c54 Added Claude 3.5 Haiku 2024-11-04 20:19:39 +01:00
Cohee
c8a28137e0 Fix numeric series parsing
Closes #3043
2024-11-04 12:28:38 +00:00
Cohee
fb48d25041 Fix new character highlight 2024-11-04 00:42:17 +02:00
Cohee
266752bf93 Fix new character highlight 2024-11-04 00:41:59 +02:00
Cohee
77be125a99 NanoGPT: Add to image generation extension 2024-11-03 20:37:30 +02:00
Cohee
649c3911eb Add shouldRegister arg to /tools-register 2024-11-03 19:11:07 +02:00
Cohee
fe469745b3 Merge pull request #3037 from yar3333/release
Remove embedded images before send text to TTS
2024-11-03 19:02:44 +02:00
Yaroslav Sivakov
52a4c9202d Update public/scripts/extensions/tts/index.js
Co-authored-by: Cohee <18619528+Cohee1207@users.noreply.github.com>
2024-11-03 19:57:33 +03:00
Yaroslav Sivakov
8b32ee9e80 Remove embedded images before send text to TTS 2024-11-02 20:25:25 +03:00
Cohee
8c3ac0ac5a Fix instruct macros not using a proper enabled field 2024-11-02 16:34:21 +02:00
Cohee
cfd1545b8a Merge pull request #3036 from procule/update-token-probabilities
Enhancement: Token Probabilities viewer with dynamic prefix adjustment via Ctrl-click
2024-11-02 16:25:20 +02:00
Cohee
237381ac3d Merge pull request #3035 from SillyTavern/macro-1.5
Totally not a new macro engine
2024-11-02 15:43:06 +02:00
Cohee
48c3e81f42 DRY 2024-11-02 13:22:41 +02:00
Cohee
293d6ff60d Run mutating variable macros first 2024-11-02 12:53:44 +02:00
Olivier Gagnon
abf7b90135 Enhance Token Probabilities viewer with selective reroll functionality and text extraction helper
- Updated onPrefixClicked() to add Ctrl-click functionality:
  - Default click rerolls the entire prefix text to continue the generation.
  - Ctrl-click rerolls only the text before the clicked word, allowing users to more precisely control generation output.
- Introduced getTextBeforeClickedWord() helper function:
  - Extracts the text before a clicked word based on click coordinates, enhancing control over prefix selection.
  - Provides a fallback to return the entire span text if word extraction is not possible.
- Updated function documentation to clarify new behaviors and helper purpose.

This change allows users to reset the prefix at a certain point if needed, adding flexibility to the generation process and enabling more intentional selection of alternatives.
2024-11-02 01:49:37 -04:00
Cohee
48d8e6e2c3 Port #3031 onto new engine 2024-11-02 00:55:34 +02:00
Cohee
5c90c8b1f6 Add post-process fn to evaluation 2024-11-02 00:44:12 +02:00
Cohee
8f373cf1dc Macros: refactor with a single replace point 2024-11-01 21:47:25 +02:00
Cohee
b837c482fc Merge pull request #3029 from P3il4/staging
Optimize chat manager logic
2024-11-01 20:17:29 +02:00
Cohee
4f6c5522bc Independent chat management content scroll 2024-11-01 20:16:51 +02:00
Cohee
07feccbe35 koboldcpp: parse logprobs 2024-11-01 11:38:31 +02:00
Cohee
8c568bfa13 Merge branch 'staging' into optimize-chat-manager 2024-10-31 21:05:36 +02:00
Cohee
5fe1bc46e6 Fix jquery plugins typedef 2024-10-31 21:05:22 +02:00
Cohee
a52129392e Align chat block items 2024-10-31 20:56:07 +02:00
Cohee
c303e27f62 Set search type to the input 2024-10-31 20:51:57 +02:00
Cohee
c7f94c6c14 Adjust doc link 2024-10-31 20:51:10 +02:00
Cohee
a8ff518b65 Add a space to message counter 2024-10-31 20:50:22 +02:00
Cohee
47b7745ceb Extend message preview length 2024-10-31 20:47:31 +02:00
Cohee
e0e60a1d00 Fix incorrect message counter 2024-10-31 20:07:23 +02:00
Cohee
6e36b77f1a Remove TAI artifact 2024-10-31 19:57:29 +02:00
Cohee
547c4f6757 Fix sorting and selected highlight 2024-10-31 19:54:24 +02:00
Cohee
f4ef324203 Merge pull request #3024 from dylan1951/add-nano-gpt-provider
Add NanoGPT chat completions provider
2024-10-31 19:30:24 +02:00
Cohee
2a451cf6a1 Add logo img 2024-10-31 19:29:43 +02:00
p3il4
30e9e90b38 optimize chat manager logic 2024-10-31 17:48:58 +03:00
Cohee
4babf322c1 Fix model restoration on load 2024-10-30 02:09:28 +02:00
Cohee
f5f11eebb2 Support auto-connect 2024-10-30 02:02:56 +02:00
Cohee
085d852b57 Trigger inputs 2024-10-30 01:52:53 +02:00
Cohee
5ee0a6ec30 Support unlocked context size 2024-10-30 01:50:31 +02:00
dylan
e7522bba76 Populate model list from models endpoint 2024-10-29 19:38:46 +13:00
Cohee
b6c4b3cdd2 Merge branch 'release' into staging 2024-10-28 14:22:39 +00:00
Cohee
17b7f17676 Fix auto-continue with stream aborting
Closes #3021
2024-10-28 14:22:19 +00:00
Cohee
00f0f755fc Support comma-separated list of llama.cpp sequence breakers #3026 2024-10-28 11:44:26 +00:00
Cohee
542f77aeb8 Safe sequence breakers parse 2024-10-28 11:39:59 +00:00
Cohee
08d177e7ba Don't auto-swipe on aborted stream 2024-10-28 11:31:37 +00:00
Cohee
ef3cb73477 Don't auto-swipe on aborted stream 2024-10-28 11:31:15 +00:00
Cohee
2030c2c711 Fix auto-continue with stream aborting
Closes #3021
2024-10-28 11:14:35 +02:00
Cohee
517b140911 Localize only the moment instance 2024-10-28 11:07:39 +02:00
Cohee
9493d05f2c Localize only the moment instance 2024-10-28 11:01:48 +02:00
Cohee
ebd6377d5d Merge pull request #3023 from bal-spec/patch-2
Update azure.js
2024-10-28 10:18:19 +02:00
Cohee
9cc67ae43f Merge pull request #3017 from Beinsezii/lcpp-dry-fix
llama.cpp Enable dry w/ array convert
2024-10-28 10:16:34 +02:00
bal-spec
135639642b Update azure.js
Change Azure TTS audio format from ogg-48khz-16bit-mono-opus to webm-24khz-16bit-mono-opus because this works with WebKit-based browsers so brings Azure TTS to iOS, iPadOS and Safari on macOS.
2024-10-27 19:56:07 -07:00
Beinsezii
ace2902cb8 llama.cpp Enable dry w/ array convert
The new PR that was merged needs an array instead of a str

https://github.com/ggerganov/llama.cpp/pull/9702
2024-10-26 16:07:07 -07:00
Cohee
5848806e6a Merge branch 'release' into staging 2024-10-26 21:40:30 +03:00
Cohee
d716bc0a07 Revert Google Translate client library 2024-10-26 21:39:37 +03:00
Cohee
45a0d63e6a Merge pull request #2996 from SillyTavern/webpack
Add Webpack to eliminate frontend vendoring
2024-10-26 19:38:57 +03:00
Cohee
f5bdb52c25 Merge branch 'staging' into webpack 2024-10-26 19:11:29 +03:00
Cohee
2c7e9729bc Fix example prefixes in Gemini with no system instruction #2997 2024-10-26 17:25:42 +03:00
Cohee
5b1a4fc723 Update char PHI macro lingo 2024-10-26 17:03:01 +03:00
Cohee
da18b5e85d Merge pull request #3016 from SillyTavern/staging
Staging
2024-10-26 16:44:52 +03:00
Cohee
2a60b6be0b Bump package version 2024-10-26 15:45:40 +03:00
dylan
4b5f485bd5 Add NanoGPT as chat completions provider 2024-10-26 16:57:49 +13:00
dylan
0882fb2d15 Add NanoGPT as chat completions provider 2024-10-26 16:51:39 +13:00
Cohee
21c4ac7abf Merge pull request #3013 from WolframRavenwolf/claude-3-5-sonnet-latest
Add Claude 3.5 Sonnet (latest) options
2024-10-25 11:04:34 +03:00
Wolfram Ravenwolf
139c6b9c71 Add Claude 3.5 Sonnet (latest) options 2024-10-24 12:51:34 +02:00
Cohee
e5183d7283 Extended getContext with SlashCommand classes 2024-10-23 23:46:33 +03:00
Cohee
0f320dd362 WebSearch: Add endpoint for Tavily 2024-10-23 23:38:17 +03:00
Cohee
b5cdb29bf3 /popup: add scroll argument, allow scroll by default 2024-10-23 23:03:07 +03:00
Cohee
e03f1b14e6 Enable vertical scrolling in /buttons
Closes #3012
2024-10-23 23:00:08 +03:00
Cohee
d7c575994d Replace macros in user filler message
Fixes #3011
2024-10-23 22:57:48 +03:00
Cohee
24e5585990 Merge pull request #3007 from dvejmz/feat/add-claude-sonnet-3-5-20241022
Add support for Claude Sonnet 3.5 20241022 API model
2024-10-23 00:00:57 +03:00
David Jimenez
030808d308 feat: add Claude 3.5 Sonnet 20241022 API model 2024-10-22 19:05:51 +01:00
Joe
9d77140ea5 Fix: Inconsistent Textarea resizing in small windows 2024-10-21 03:51:36 -07:00
Cohee
7e9f5b8ee2 Indicate connected textarea for expanded editor 2024-10-21 11:01:55 +03:00
Joe
8f09aced83 Add scroll bar to make it obvious 2024-10-21 00:57:15 -07:00
Joe
b164084c0c Enhancement: Make buttons scrollable 2024-10-21 00:19:50 -07:00
Cohee
2e80c7ceb2 Remove old formula renderer CSS 2024-10-20 15:06:20 +03:00
Cohee
1c50180daa Merge branch 'staging' into webpack 2024-10-19 13:15:54 +03:00
Cohee
0a79d55983 Merge pull request #3002 from 50h100a/streamprobs
Correctly view token probabilities when 'Continue'-ing a response.
2024-10-19 13:14:44 +03:00
Cohee
afde6e3f45 Add word-break in logprobs display 2024-10-19 13:13:42 +03:00
Cohee
78bbf0ed02 Fix format 2024-10-19 13:13:24 +03:00
Cohee
9cc8830dd3 Merge pull request #3001 from 50h100a/alt-spaces
Correctly interpret some alternate whitespaces in token names
2024-10-19 13:08:15 +03:00
50h100a
9f97a144e8 slightly change stream "abort" flow so token probabilities get successfully updated 2024-10-19 00:31:12 -04:00
50h100a
5d5e552cbd correctly interpret some alternate whitespaces in token names 2024-10-19 00:24:35 -04:00
Cohee
1ac6780e9c MistralAI: Explicitly set context size for ministral 2024-10-18 20:52:17 +03:00
Cohee
ff2c71c4ef MistralAI: Add new models to the list 2024-10-18 20:48:28 +03:00
Cohee
2cdf53a3dd [chore] Lint login.html 2024-10-18 20:30:30 +03:00
Cohee
a1d3b7f3ef Merge branch 'staging' into webpack 2024-10-18 20:12:51 +03:00
Cohee
f61c2403d6 Featherless: Fix model pagination init 2024-10-18 20:05:50 +03:00
Cohee
9c379125be [chore] Add JSDoc 2024-10-18 19:46:37 +03:00
Cohee
80f91d129e Firefox: fix copy from edit textarea 2024-10-18 12:54:26 +00:00
Cohee
e2a09ad5a7 Switch to module init function pattern 2024-10-18 12:17:30 +00:00
Cohee
a80741a20e Webpack: Don't watch filesystem in production 2024-10-18 11:47:51 +00:00
Cohee
74844d5989 eslint: Allow Deno global 2024-10-18 11:33:37 +00:00
Cohee
8d3efcf83d Add startup scripts for Deno and Bun 2024-10-18 11:19:11 +00:00
Cohee
a32dd436d7 Node: Replace global with globalThis 2024-10-18 09:13:25 +00:00
Cohee
6a5828f2c7 Fix legacy picks 2024-10-18 08:44:54 +00:00
Cohee
027d710716 NovelAI: Increase tier token limits 2024-10-17 23:47:47 +03:00
Cohee
f918b146e7 Merge branch 'staging' into webpack 2024-10-17 23:08:36 +03:00
Cohee
cb987706eb Merge pull request #3000 from error-usernotavailable/staging
ADetailer functionality for stable-diffusion extension
2024-10-17 22:47:58 +03:00
Cohee
ae784ddb1a Add detailer checkbox for SDNext 2024-10-17 22:47:09 +03:00
Cohee
a3693ccf6d Use deepMerge to combine payloads 2024-10-17 22:45:33 +03:00
Cohee
ada44497de Merge pull request #2994 from artisticMink/fix-double-quotes
Fix double double quotes when copying chat message text in Firefox
2024-10-17 22:19:48 +03:00
maver
82570ef31d Remove textnode checks before applying firefox double double qutoes fix 2024-10-17 18:55:17 +00:00
Cohee
f897a4ab1a Merge with browser fixes from RossMods 2024-10-17 21:25:50 +03:00
Cohee
33f8cd4241 Add typehints for libs 2024-10-17 21:18:34 +03:00
Cohee
2620522333 Revert epubjs vendoring 2024-10-17 20:59:42 +03:00
Cohee
e48cf68a13 Revert pdfjsLib vendoring 2024-10-17 20:53:18 +03:00
maver
34ff8e239f Fix double double quotes when copying chat message text in Firefox 2024-10-17 14:14:24 +02:00
Cohee
b78c948d26 [chore] Fix spacing in package.json 2024-10-17 11:20:49 +00:00
Cohee
cbcb0bb0ad Merge pull request #2999 from QuantumEntangledAndy/bug/editSwipe
Disable swipe gestures while in edit mode
2024-10-17 14:16:56 +03:00
Cohee
e03e32d66a unvendor: Replace morphdom 2024-10-17 11:12:22 +00:00
Cohee
e919034132 webpack: Wait for bundle before serving 2024-10-17 11:04:34 +00:00
Cohee
b6f9c6480b unvendor: Move formula rendering from core to extensions 2024-10-17 10:08:00 +00:00
Cohee
08324ba801 Remove unused libs 2024-10-17 08:51:02 +00:00
Cohee
e9a002bc2b unvendor: Replace droll 2024-10-17 08:12:28 +00:00
Cohee
ec4763b0c5 unvendor: Replace popperjs/core 2024-10-17 08:03:58 +00:00
error-usernotavailable
301a31b8b2 Update settings.html
add checkbox in stable diffusion extension tab for ADetailer
2024-10-16 22:28:09 -04:00
error-usernotavailable
2689025ec3 Update index.js to use ADetailer in Auto1111/Forge/Vlad
added events, listener, and function for ADetailer/aiFaceDetailer. Rewrote function generateAutoImage to allow for tacking on of alwayson_scripts (maybe redo for a textbox/json later for other Auto1111 extensions?)

paired with settings.html edits
2024-10-16 22:23:31 -04:00
QuantumEntangledAndy
c837c2ed15 js empty 2024-10-17 09:10:27 +07:00
QuantumEntangledAndy
83182245d6 Disable swipe gestures while in edit mode 2024-10-17 08:29:33 +07:00
Cohee
e1694ede9d unvendor: Replace seedrandom 2024-10-17 02:19:47 +03:00
Cohee
81bdeb6da8 unvendor: Replace moment 2024-10-17 02:02:45 +03:00
Cohee
7b0f7306c0 unvendor: Replace showdown 2024-10-17 01:51:35 +03:00
Cohee
8b8f2f1144 unvendor: Replace SVGInject 2024-10-17 01:39:15 +03:00
Cohee
2725bae275 webpack: Expose lodash in lib.js 2024-10-17 01:32:13 +03:00
Cohee
ca844c8b0a unvendor: Replace Readability 2024-10-17 01:30:04 +03:00
Cohee
b195983510 unvendor: Replace diff_match_patch 2024-10-17 01:23:22 +03:00
Cohee
c741278749 unvendor: Delete replaced libraries 2024-10-17 01:19:19 +03:00
Cohee
1838bf481c webpack: Cache bundles to filesystem 2024-10-17 01:16:56 +03:00
Cohee
a32fe00e34 unvendor: Replace pdfjs-dist 2024-10-17 01:16:39 +03:00
Cohee
553920ee8e unvendor: Replace epubjs 2024-10-17 01:03:33 +03:00
Cohee
14037b6e30 unvendor: Replace Bowser 2024-10-17 00:56:09 +03:00
Cohee
f7796274ff webpack: Remove source-map generation, customize logging 2024-10-17 00:52:49 +03:00
Cohee
e4959c6ccb webpack: Reduce logging 2024-10-17 00:49:06 +03:00
Cohee
c3f62b8699 unvendor: Replace css-tools 2024-10-17 00:40:11 +03:00
Cohee
d5fdf307c8 unvendor: Replace handlebars 2024-10-17 00:34:07 +03:00
Cohee
1c4e87b25b unvendor: Replace localforage 2024-10-16 23:37:54 +03:00
Cohee
416282ae1f unvendor: Replace hljs 2024-10-16 23:18:23 +03:00
Cohee
3c28b754dc Delete vendored dompurify 2024-10-16 23:12:30 +03:00
Cohee
3387fe4bd6 unvendor: Replace DOMPurify 2024-10-16 23:11:13 +03:00
Cohee
e6d8f0a33e unvendor: Replace Fuse 2024-10-16 22:15:38 +03:00
Cohee
4725b869eb Add webpack for external frontend libraries. 2024-10-16 22:00:14 +03:00
Cohee
725cfdebca Merge pull request #2993 from theo77186/llamacpp_xtc
Enable XTC support for llama.cpp
2024-10-16 20:52:06 +03:00
Cohee
276316ae62 Auto-add missing samplers for llama.cpp 2024-10-16 20:51:32 +03:00
theo77186
37f3a24ac6 Enable XTC support for llama.cpp 2024-10-16 18:30:46 +02:00
Cohee
ba0d6bfa26 Vectors: fix force_chunk_delimiter value init 2024-10-16 07:53:53 +00:00
Cohee
e01a243ce5 Merge pull request #2988 from QuantumEntangledAndy/feat/cachedVectorSummaries
Add client side cacheing of vector summaries
2024-10-15 23:32:20 +03:00
Cohee
69283f511f Optimize summarization on query 2024-10-15 23:27:18 +03:00
Cohee
e3de69a235 Add hash for getQueryText 2024-10-15 23:17:27 +03:00
Cohee
65d3c2729a Fix typo in variable name 2024-10-15 23:14:59 +03:00
Cohee
b6af986e58 Merge pull request #2987 from SillyTavern/remove-legacy-api
TextGenWebUI: remove legacy API mode
2024-10-15 23:04:24 +03:00
Cohee
3471d0be93 Claude: Don't send empty text with images 2024-10-15 10:53:07 +03:00
QuantumEntangledAndy
bb7e7b645d Add client side cacheing of vector summaries 2024-10-15 10:34:03 +07:00
Cohee
bb9700b478 [deps] Update jimp 2024-10-15 00:43:54 +03:00
Cohee
24884b3206 TextGenWebUI: remove legacy API mode 2024-10-15 00:32:56 +03:00
Cohee
8986cb0039 Update preset button styles 2024-10-14 20:56:31 +03:00
Cohee
17ff324e9c Remove outdated warning 2024-10-14 13:36:03 +00:00
Cohee
6ef63e2415 Fix smooth streaming 2024-10-14 10:02:39 +00:00
Cohee
12fbf3df95 Add editor expanders to adv.defs
Closes #2984
2024-10-14 00:40:21 +03:00
Cohee
ef980a67fb add export to the getworldentry function 2024-10-14 00:16:30 +03:00
Cohee
8f965aeec6 Merge pull request #2983 from SillyTavern/rename-presets
Add ability to rename TC presets
2024-10-13 23:26:29 +03:00
Cohee
a025331118 Merge branch 'staging' into rename-presets 2024-10-13 23:17:59 +03:00
Cohee
e3e22ea095 Adjust left swipe position in no avatars mode 2024-10-13 23:11:13 +03:00
Cohee
11751d3893 Unify the display of novel streaming checkbox 2024-10-13 22:38:14 +03:00
Cohee
b077b157dc Uniform icon widths 2024-10-13 21:35:10 +03:00
Cohee
8ddde32e94 Reduce left block padding 2024-10-13 21:30:11 +03:00
Cohee
7ca7a9c839 Move delete to the top 2024-10-13 21:28:27 +03:00
Cohee
652a59bfb7 Merge branch 'staging' into rename-presets 2024-10-13 21:22:30 +03:00
Cohee
b20849ea70 Fix quantum link position 2024-10-13 21:21:20 +03:00
Cohee
b40eb49201 Add recommended mobile meta-tag 2024-10-13 21:16:24 +03:00
Cohee
80d0087bf0 Merge branch 'staging' into rename-presets 2024-10-13 21:12:43 +03:00
Cohee
204a3545ea CSS: Add on-hover style for links 2024-10-13 21:10:50 +03:00
RossAscends
d4c8b5c9da remove sendForm disconnected coloring, tweak CSS to accomodate light themes 2024-10-14 01:01:07 +09:00
Cohee
6c9ff8bb3d Merge pull request #2979 from SillyTavern/google-tts
TTS: Add Google Translate TTS
2024-10-13 17:18:09 +03:00
Cohee
83ef5a67f6 Merge branch 'staging' into google-tts 2024-10-13 17:16:08 +03:00
Cohee
93137e3e2a [chore] Fix lint errors 2024-10-13 14:02:53 +03:00
Cohee
1c3d33c282 [eslint] Fix commonjs module config 2024-10-13 14:01:41 +03:00
Cohee
346e77ecfc Merge pull request #2976 from SillyTavern/cc-async-count
Chat Completion: switch to async token handling
2024-10-12 20:31:53 +03:00
Cohee
1ef31b63ac No awaitless async. Add JSDocs. 2024-10-12 20:29:44 +03:00
Cohee
663f4ed798 CC: Actually check if can afford both the block and the header 2024-10-12 20:17:20 +03:00
Cohee
838dfaab80 Merge pull request #2978 from honey-tree/lb-extensions-retention
LB entry extensions field retention through card exports/imports
2024-10-12 20:13:01 +03:00
Honey Tree
3e9bad6845 Preserving the entry extensions field through v2 char exports and imports 2024-10-12 12:30:15 -03:00
Cohee
8cb0fda321 TTS: Add Google Translate TTS 2024-10-12 13:35:11 +03:00
Cohee
a12051ee24 CC: Only fit entire example dialogue blocks at once 2024-10-12 12:56:52 +03:00
Cohee
e4dc489609 Merge branch 'staging' into cc-async-count 2024-10-12 12:49:49 +03:00
Cohee
731bbec9ab Merge pull request #2974 from SillyTavern/es-modules
Migrate Node server to ES Modules
2024-10-12 12:47:24 +03:00
Cohee
131e60ffe6 Update node types 2024-10-12 11:36:26 +03:00
Cohee
89c0b0e1cd Replace Google Translate API package 2024-10-12 10:47:05 +03:00
Cohee
e93a2fbed0 Fix continue prefill not getting added. 2024-10-12 01:10:22 +03:00
Cohee
8e082e622b Chat Completion: switch to async token handling 2024-10-12 01:07:36 +03:00
Cohee
b0d0f2111b Tool Calling: Reserve prompt budget for tool definitions. 2024-10-12 00:22:37 +03:00
RossAscends
5d6d7568c3 clarify QR popout only possible on desktop 2024-10-12 06:01:44 +09:00
RossAscends
d772d24052 Merge branch 'staging' of https://github.com/Cohee1207/SillyTavern into staging 2024-10-12 05:58:42 +09:00
RossAscends
cdb271e6ec fix QR popout controlBar display, hide QR popout button for mobile 2024-10-12 05:58:39 +09:00
Cohee
ffa8716d07 Plugins: support .cjs module extension 2024-10-11 23:00:37 +03:00
Cohee
fa84b3ede4 Fix legacy config conversion 2024-10-11 22:32:30 +03:00
Cohee
9dcf3c27e9 Merge branch 'staging' into es-modules 2024-10-11 22:20:45 +03:00
Cohee
ac50cec02f Merge pull request #2971 from honey-tree/world_info_force_activate_expansion
Expand WORLDINFO_FORCE_ACTIVATE API to allow for dynamically modified entries
2024-10-11 22:20:19 +03:00
Cohee
6f4e98024a [chore] Add a log on force activation 2024-10-11 22:10:25 +03:00
Cohee
b65da795ef [chore] Fix comments/logs 2024-10-11 21:59:55 +03:00
Cohee
a82dce7c87 Merge branch 'staging' into world_info_force_activate_expansion 2024-10-11 21:52:55 +03:00
Cohee
4fcad0752f [chore] Fix type errors 2024-10-11 21:33:36 +03:00
Cohee
161fc7f0f0 STscript: don't parse boolean operands as 0 for strings containing just spaces 2024-10-11 21:01:32 +03:00
Cohee
72138c632d [chore] Remove unused import 2024-10-11 20:58:06 +03:00
Cohee
bee19908e7 [chore] Fix type error in post-install 2024-10-11 20:38:19 +03:00
Cohee
ab2427142c [chore] Fix type errors in server.js 2024-10-11 20:34:13 +03:00
Cohee
afc3bfb740 Install correct version of express types 2024-10-11 20:33:55 +03:00
Cohee
90eef29982 Merge branch 'staging' into es-modules 2024-10-11 20:30:23 +03:00
Cohee
44e73fbf27 Merge pull request #2975 from akvadrako/together-ai-new-image-api
Support the non-deprecated Together.ai Create Image API
2024-10-11 20:29:31 +03:00
Cohee
34b1fa2cff [chore] Run code format 2024-10-11 20:28:54 +03:00
Devin Bayer
ed8e379e54 support new together.ai image generation api 2024-10-11 17:48:33 +02:00
Cohee
fe33519422 Image Generation: Don't replace dots with commas 2024-10-11 15:32:45 +00:00
Cohee
5ff58e20c1 Plugins: Fix classic commonjs single file modules 2024-10-11 08:43:01 +00:00
Cohee
a0889a15fd Explicitly import node process 2024-10-11 10:43:29 +03:00
Cohee
7ca1b2e532 Remove node polyfill 2024-10-11 10:33:09 +03:00
Cohee
0c8ccf1765 Update module imports 2024-10-11 00:41:08 +03:00
Cohee
a0e6030836 Simplify node imports 2024-10-11 00:28:17 +03:00
Cohee
4bafacaec4 Add usage for plugins.js 2024-10-11 00:08:53 +03:00
Cohee
8afa887d07 Fix relative import in recover.js 2024-10-11 00:07:00 +03:00
Cohee
c67c0cbf7e Fix dirname for Node 18 2024-10-11 00:06:02 +03:00
Cohee
478976f647 Fix open autorun import 2024-10-10 23:50:51 +03:00
Cohee
0355bc7a85 Fix globalAgent assignment 2024-10-10 23:49:33 +03:00
Cohee
1616e7e067 Explicitly import Buffer. Specify jsdoc local extensions 2024-10-10 23:36:22 +03:00
Cohee
d52b4fbbde Node: Migrate to ES Modules 2024-10-10 22:37:22 +03:00
Cohee
dcd3f13e62 Merge pull request #2973 from honey-tree/gemini-fix-electric-boogaloo
Remove a trailing slash from the Gemini API URL in case it gets added in by URL.toString
2024-10-10 21:16:28 +03:00
Honey Tree
ac05840b81 Remove a trailing slash from the API URL in case it gets added in by URL.toString 2024-10-10 14:58:03 -03:00
Cohee
5a52196331 Merge pull request #2967 from KhreedAI/staging
Fix World Info Entry Priority Sort
2024-10-10 19:33:26 +03:00
Honey Tree
61ba579fe2 Moving check down for spec adherence 2024-10-10 12:03:26 -03:00
Honey Tree
0d1e96cc17 Map.get returns undefined and not null on empty 2024-10-10 11:44:13 -03:00
Khreed
efb63c7f24 Re-evaluate world info entry - simplified priority sort order
Changed priority primarySort ternary to check disabled first, then constant, then normal.
2024-10-10 10:19:16 -04:00
Honey Tree
7fd798b854 Typing fixes to avoid breaking any APIs 2024-10-10 10:12:19 -03:00
Honey Tree
6efa36bdbf Expand WORLD_INFO_FORCE_ACTIVATE API to allow for dynamically modified Lorebook entries 2024-10-10 09:52:54 -03:00
Cohee
357c2e0756 Merge pull request #2970 from QuantumEntangledAndy/bug/modalPolyfilCenter
Center the crop popup on change, when polyfilled
2024-10-10 11:35:03 +03:00
QuantumEntangledAndy
b05d5e12fe Use a resize observer to center the popup after an image is loaded when polyfilled 2024-10-10 10:41:40 +07:00
RossAscends
6cca977d07 Merge branch 'staging' of https://github.com/Cohee1207/SillyTavern into staging 2024-10-10 11:08:53 +09:00
RossAscends
f7c0c37b8d make zoomed avatar grab/close buttons only visible on hover 2024-10-10 11:08:51 +09:00
Khreed
28861660ef Fix Priority Sort
Corrected and expanded priority sort logic to sort by:

First constant, then normal, then disabled, then by comment.
2024-10-09 19:17:42 -04:00
Cohee
33a126491e Merge pull request #2965 from InspectorCaracal/slash-sort
Add `/sort` slash command
2024-10-10 00:43:29 +03:00
Cohee
8333f44e2b [chore] Reformat callback 2024-10-10 00:41:43 +03:00
Cohee
60c6549b9b Set standout header styles 2024-10-10 00:31:57 +03:00
Cohee
6e0bec2184 Restyle import/export buttons 2024-10-10 00:19:05 +03:00
Cal
7a598a439a switch to custom sort comparitor 2024-10-09 15:10:37 -06:00
Cohee
c21e1ac3f7 [wip] Add buttons for renaming presets 2024-10-09 23:22:00 +03:00
Cohee
9f23a7852f NovelAI: Increase repetition penalty precision 2024-10-09 22:55:33 +03:00
InspectorCaracal
84140f4e4f add /sort slash command 2024-10-09 13:54:39 -06:00
Cohee
42f8b86b11 Tool Calling: stringify errors instead of silently failing 2024-10-09 22:39:55 +03:00
Cohee
ac7135c386 Merge pull request #2964 from DarokCx/release
Featherless model search improvements.
2024-10-09 22:32:14 +03:00
Cohee
4bdaca5f8e Featherless: More specifity for selectors 2024-10-09 22:14:49 +03:00
Cohee
f436000a9d Featherless: Fix /model command 2024-10-09 22:04:08 +03:00
Cohee
80f9d90918 Merge branch 'staging' into featherless-models 2024-10-09 21:51:59 +03:00
Cohee
0a84c094e7 Hide old models selector 2024-10-09 21:51:55 +03:00
Cohee
ee945b8d41 Remove package.json reference 2024-10-09 21:51:44 +03:00
Cohee
151a77cd36 Initialize page on load 2024-10-09 21:51:31 +03:00
DarokCx
64ff555425 BugFix and UI improvements 2024-10-09 13:56:31 -04:00
Cohee
b6a7929c4e Fix npm audit 2024-10-09 11:42:51 +00:00
Cohee
3fd7ca90ed Tool Calling: Don't try to parse if tool calling is not supported 2024-10-09 10:49:02 +00:00
Cohee
e7fe218810 Merge pull request #2953 from QuantumEntangledAndy/feat/AdditionalLogins
Add additional login methods
2024-10-09 13:43:39 +03:00
QuantumEntangledAndy
ad316c6d78 [chore] Use same basic code logic in user as in basicAuth 2024-10-09 15:09:10 +07:00
QuantumEntangledAndy
06a7bdd3ce Only allow login via basic per-user if user password is set 2024-10-09 15:04:28 +07:00
Cohee
fe1f9fafbd [bug] Don't allow per user auth with accounts disabled 2024-10-09 10:43:52 +03:00
Cohee
15efdb6609 Merge pull request #2962 from SillyTavern/cohere-v2
Migrate Cohere to /v2/chat
2024-10-09 10:29:04 +03:00
Cohee
7162f9d562 Cohere: Swap message and tool plan in extractMessageFromData 2024-10-09 10:27:54 +03:00
Cohee
face9462aa Remove userPlaceholder #2962 2024-10-09 10:23:49 +03:00
Cohee
c49138dfea Tool Calling: Make formatMessage async 2024-10-09 03:56:24 +03:00
Cohee
bc0f5bf4ce Tool Calling: add shouldRegister function to tool defintion 2024-10-09 03:53:32 +03:00
Cohee
10f51f5d90 ImageGen: Add a placeholder for {{prefixedPrompt}} in the message template
Closes #2946
2024-10-09 03:44:22 +03:00
Cohee
de57123e62 Change GenerateImage tool description 2024-10-09 02:57:08 +03:00
Cohee
15436d0f2a [chore] Strict equality check 2024-10-09 02:13:23 +03:00
Cohee
fe8ffe5be8 [bug] Fix basic auto-logins to disabled users 2024-10-09 02:12:20 +03:00
Cohee
a1352d817a [bug] Don't try per user auto-login if basic auth disabled 2024-10-09 02:04:47 +03:00
Cohee
0ada5407ee [bug] Fix login attempts to disabled users 2024-10-09 01:54:56 +03:00
Cohee
07d6808e4e [chore] Rename local variable, use strict comparison. 2024-10-09 01:46:07 +03:00
Cohee
3e9d0cc1ad [chore] Remove debug console log 2024-10-09 01:42:51 +03:00
Cohee
3422303882 [chore] Rename local variable 2024-10-09 01:40:49 +03:00
Cohee
8a95e0a290 [chore] Reformat 2024-10-09 01:38:32 +03:00
Cohee
b9375ed7ea Rename PERUSER => PER_USER 2024-10-09 01:37:34 +03:00
Cohee
5765ea8500 Merge branch 'staging' into feat/AdditionalLogins 2024-10-09 01:34:29 +03:00
Cohee
bdaf7b9258 Merge pull request #2955 from Yokayo/staging
Add rename buttons for advanced formatting presets
2024-10-09 01:33:52 +03:00
Cohee
26716686ba Add parentheses for clarity 2024-10-09 01:31:45 +03:00
Cohee
7061753d84 Fix old name prepopulate, run formatter 2024-10-09 01:29:23 +03:00
Cohee
9db761cea4 Cohere: Update embeddings to v2
#2962
2024-10-09 00:52:07 +03:00
Cohee
c2935ba4a7 Migrate Cohere to /v2/chat
Closes #2916
2024-10-08 23:50:09 +03:00
DarokCx
9b3552631a Text sizing correction. 2024-10-07 15:26:13 -04:00
Cohee
9e50ff34c9 Make Run on edit actually work
Fixes #2958
2024-10-07 20:21:07 +03:00
DarokCx
09035a71dc Added sort by date Added 2024-10-07 10:02:11 -04:00
QuantumEntangledAndy
1cda7003d1 Add a noauto query param to login 2024-10-07 09:17:43 +07:00
Cohee
591f61d354 Don't split tool calls and tool results 2024-10-07 01:32:46 +03:00
Cohee
7db85e7ed8 Limit tool calls recursion 2024-10-07 00:22:27 +03:00
Cohee
67ebf0fc06 Use classic hash method for Node 18 2024-10-06 23:58:10 +03:00
Cohee
87d73af0ac Mistral: Use hex toolid encoding 2024-10-06 23:43:13 +03:00
Cohee
f82a479a90 Fix select2 buttons alignment 2024-10-06 23:18:41 +03:00
Cohee
991e10c75f Claude: remove tools from prompt if tools not supported or not provided 2024-10-06 23:02:38 +03:00
Cohee
89bad21881 Allow tool registration on swipes 2024-10-06 22:25:23 +03:00
Cohee
6b022e783d Fix tool call reuse between Claude and OAI 2024-10-06 22:22:19 +03:00
Cohee
f7ec2e47d6 Indicates extensions that add tools in the list 2024-10-06 21:58:59 +03:00
Cohee
a4256ccf57 ImageGen: rename Enable function tool => Use function tool 2024-10-06 21:19:06 +03:00
Cohee
4cc8b8d0d9 Merge pull request #2932 from SillyTavern/tool-calling
Tool calling
2024-10-06 21:07:48 +03:00
Cohee
4f46a8ff10 Mistral: Change tool call id algorithm 2024-10-06 20:24:07 +03:00
Cohee
927c2418e0 Group tool calls in the result 2024-10-06 20:19:58 +03:00
Cohee
2a25f75fa5 Mistral: sanitize tool call id 2024-10-06 20:07:43 +03:00
Yokayo
4b0d342e8b Update translation-related stuff a little 2024-10-07 00:04:49 +07:00
Yokayo
88d52ea587 Merge branch 'staging' of https://github.com/Yokayo/SillyTavern into staging 2024-10-06 23:52:46 +07:00
Yokayo
90ef3e51c0 Add advanced formatting presets renaming buttons 2024-10-06 23:52:41 +07:00
Cohee
2e36f45e24 Fix types for dompurify and toastr 2024-10-06 19:51:59 +03:00
Cohee
680dc80649 Extend exclude list for frontend jsconfig 2024-10-06 19:26:37 +03:00
Cohee
fcadd62e8c Merge branch 'staging' into tool-calling 2024-10-06 19:13:32 +03:00
Cohee
912525fdd9 Add missing import 2024-10-06 19:13:01 +03:00
Cohee
c8ef4b02bc Add .git to jsconfig ignore 2024-10-06 19:12:28 +03:00
Cohee
f66261a52c Mistral: Squash user messages that follow tools 2024-10-06 14:28:52 +03:00
QuantumEntangledAndy
329469021e Address comments 2024-10-06 18:20:30 +07:00
Cohee
303df1087a ImageGen: Configurable tool prompt description, encode response URI 2024-10-06 13:27:06 +03:00
Cohee
96862be6b0 Fix tools-list 2024-10-06 13:01:14 +03:00
Cohee
077ba8b03d Add slash commands for tools management 2024-10-06 12:49:08 +03:00
QuantumEntangledAndy
71236e5e8c eslint 2024-10-06 15:06:05 +07:00
QuantumEntangledAndy
69a604044d Add additional login methods 2024-10-06 14:35:03 +07:00
Cohee
7dea59f026 Format tool result if JSON 2024-10-05 20:54:37 +03:00
Cohee
54837680f7 Fix looping on regen tool call 2024-10-05 20:54:25 +03:00
Cohee
6369882be3 Merge branch 'staging' into tool-calling 2024-10-05 20:31:28 +03:00
Cohee
030313c584 Merge pull request #2951 from SillyTavern/intl-quotes
Support more pairs of international quotes
2024-10-05 20:31:14 +03:00
Cohee
704bb9dc0f Merge pull request #2950 from SillyTavern/moment-locales
Localize chat timestamps
2024-10-05 20:27:39 +03:00
Cohee
a5be889852 Extend quote list for TTS 2024-10-05 20:14:07 +03:00
Cohee
1055f2e1b7 Support more pairs of international quotes 2024-10-05 20:09:54 +03:00
Cohee
a09a60ef31 Merge pull request #2930 from Yokayo/staging
Work on translation
2024-10-05 20:03:53 +03:00
Cohee
6ecfdea8ef Merge pull request #2949 from ceruleandeep/feature/clickableWelcome
Add clickable buttons in Welcome chat message.
2024-10-05 19:52:37 +03:00
Cohee
24300642dd Cleaner HTML Diff 2024-10-05 19:48:20 +03:00
Cohee
60fef3ee99 Restyle welcome 2024-10-05 19:45:41 +03:00
Cohee
47e3cf82e0 Don't call tools on stopped streams. Emit events 2024-10-05 19:08:57 +03:00
Cohee
6185974e17 Claude: Use multi-part system prompt, cache tools 2024-10-05 18:04:08 +03:00
Cohee
ebe2929dfd Localize chat timestamps 2024-10-05 17:07:17 +03:00
Yokayo
aaa5a84d58 Get rid of numbered keys 2024-10-05 20:19:42 +07:00
Cohee
3b4a455ef8 Split Custom OAI prompt post-processing modes 2024-10-05 16:09:39 +03:00
ceruleandeep
02b0000117 Add clickable buttons in Welcome chat message.
Add bool `uses_system_ui` on system messages to override sanitizer for buttons when set

Modify uponSanitizeAttribute DOMPurify hook to allow unmangled class names on attributes in some cases

Add event listener for .drawer-opener to open a navbar drawer
2024-10-05 17:27:58 +10:00
Cohee
0637223bc2 Add class to tool call messages 2024-10-05 02:05:18 +03:00
Cohee
68376f7dd0 Indicate no content on function result 2024-10-05 00:20:28 +03:00
Cohee
6a304e8884 Fix generation looping 2024-10-05 00:20:06 +03:00
Cohee
c3078a67e1 Claude: Add prefill/tool interaction warning 2024-10-04 23:33:31 +03:00
Cohee
01fc5113d7 Fix ghost messages 2024-10-04 23:13:56 +03:00
Cohee
8ff9ef3610 Image Generation: Fix race condition in adding images to chat 2024-10-04 21:58:55 +03:00
Cohee
bc5e7b1ee8 Fix description in tool definition 2024-10-04 21:49:24 +03:00
Cohee
8b13c40e0d Claude: fix prefills 2024-10-04 21:48:35 +03:00
Yokayo
17fb9815b3 Merge branch 'SillyTavern:staging' into staging 2024-10-04 23:13:12 +07:00
Yokayo
c98e3fd57d Change translation keys 2024-10-04 23:12:48 +07:00
Cohee
689dbad2d1 Merge branch 'staging' into tool-calling 2024-10-04 14:28:47 +00:00
Cohee
23639ce1fe Merge pull request #2942 from QuantumEntangledAndy/DialogPoly
Polyfill for dialogues in old safari on iOS
2024-10-04 16:41:46 +03:00
Cohee
441465f08b [chore] Run eslint 2024-10-04 16:37:56 +03:00
Goshe-nite
c016319477 Fix out-of-sync pinned drawer icons (#2944)
* Fix out-of-sync pinned drawer icons

* Ugly but consistent

---------

Co-authored-by: Cohee <18619528+Cohee1207@users.noreply.github.com>
2024-10-04 16:36:48 +03:00
X00LA
9820478296 Add german readme (#2914)
* Create readme-de-de.md

* Update readme-ja_jp.md

Add link to german readme

* Rename readme-de-de.md to readme-de_de.md

Fixed wrong file name

* Update readme-ru_ru.md

Add link to german readme

* Update readme-zh_cn.md

Add link to german readme

* Update readme.md

Add link to german readme

* Update readme-de_de.md

Add message about outdated information

* Update .github/readme-de_de.md

Add suggested change for merge

Co-authored-by: Wolfsblvt <wolfsblvt@gmail.com>

* Update .github/readme-de_de.md

Add suggested change for merge

Co-authored-by: Wolfsblvt <wolfsblvt@gmail.com>

* Update .github/readme-de_de.md

Add suggested change for merge

Co-authored-by: Wolfsblvt <wolfsblvt@gmail.com>

* Update .github/readme-de_de.md

Add suggested change for merge

Co-authored-by: Wolfsblvt <wolfsblvt@gmail.com>

* Update .github/readme-de_de.md

Add suggested change for merge

Co-authored-by: Wolfsblvt <wolfsblvt@gmail.com>

* Update .github/readme-de_de.md

Add suggested change for merge

Co-authored-by: Wolfsblvt <wolfsblvt@gmail.com>

* Update .github/readme-de_de.md

Add suggested change for merge

Co-authored-by: Wolfsblvt <wolfsblvt@gmail.com>

* Update .github/readme-de_de.md

Add suggested change for merge

Co-authored-by: Wolfsblvt <wolfsblvt@gmail.com>

* Update .github/readme-de_de.md

Add suggested change for merge

Co-authored-by: Wolfsblvt <wolfsblvt@gmail.com>

* Update readme-de_de.md

Fixing issues for merging with original branch;

* Update readme-de_de.md

Fix using wront template for translation; (used release readme) :(

* Update readme-de_de.md

Changed overlooked remaining “Zweig” to “Branch”.

* Update .github/readme-de_de.md

Co-authored-by: Wolfsblvt <wolfsblvt@gmail.com>

* Update .github/readme-de_de.md

Co-authored-by: Wolfsblvt <wolfsblvt@gmail.com>

* Update .github/readme-de_de.md

Co-authored-by: Wolfsblvt <wolfsblvt@gmail.com>

* Update .github/readme-de_de.md

Co-authored-by: Wolfsblvt <wolfsblvt@gmail.com>

* Update .github/readme-de_de.md

Co-authored-by: Wolfsblvt <wolfsblvt@gmail.com>

* Update .github/readme-de_de.md

Co-authored-by: Wolfsblvt <wolfsblvt@gmail.com>

* Update .github/readme-de_de.md

Co-authored-by: Wolfsblvt <wolfsblvt@gmail.com>

* Update .github/readme-de_de.md

Co-authored-by: Wolfsblvt <wolfsblvt@gmail.com>

* Update .github/readme-de_de.md

Co-authored-by: Wolfsblvt <wolfsblvt@gmail.com>

* Update .github/readme-de_de.md

Co-authored-by: Wolfsblvt <wolfsblvt@gmail.com>

* Update .github/readme-de_de.md

Co-authored-by: Wolfsblvt <wolfsblvt@gmail.com>

* Update .github/readme-de_de.md

Co-authored-by: Wolfsblvt <wolfsblvt@gmail.com>

* Update .github/readme-de_de.md

Co-authored-by: Wolfsblvt <wolfsblvt@gmail.com>

* Update .github/readme-de_de.md

Co-authored-by: Wolfsblvt <wolfsblvt@gmail.com>

---------

Co-authored-by: Wolfsblvt <wolfsblvt@gmail.com>
2024-10-04 16:07:50 +03:00
Cohee
d5d8d6c876 Remove warning log for unregister 2024-10-04 13:05:03 +00:00
Cohee
c853547b11 Add a function tool for image generation 2024-10-04 13:04:19 +00:00
Cohee
cc3cc58a06 Claude: fix token counting when tool_calls are used 2024-10-04 12:24:10 +00:00
Cohee
8c095f204a Fix error on streaming if the processor was already destroyed 2024-10-04 12:00:20 +00:00
Cohee
130eb4bc33 Merge pull request #2945 from M0ch0/staging
Support new gemini-1.5-flash-8B model, and flash-002's context reduction.
2024-10-04 14:32:46 +03:00
Cohee
db04fff3df Claude: Streamed tool calls parser 2024-10-04 11:31:15 +00:00
M0cho
38875fb940 Supports Gemini context length reduction. 2024-10-04 20:16:24 +09:00
M0cho
d53baed5cf Supports Gemini 1.5-Flash-8b
for Product Ready version.
2024-10-04 20:16:12 +09:00
Cohee
ca1f6a56c3 Merge branch 'tool-calling' of https://github.com/SillyTavern/SillyTavern into tool-calling 2024-10-04 13:39:13 +03:00
Cohee
0cab91e0f8 Add Claude streamed tool parser 2024-10-04 13:39:08 +03:00
Cohee
4a2989718c ESLint and JSDoc fixes 2024-10-04 10:34:17 +00:00
QuantumEntangledAndy
bd48c2445a Make dialog css edits dependant on polyfil 2024-10-04 16:57:59 +07:00
QuantumEntangledAndy
3e465d155c Include polyfill css 2024-10-04 15:26:48 +07:00
Cohee
c3c10a629e Claude: new prompt converter + non-streaming tools 2024-10-04 03:41:25 +03:00
Cohee
559f1b81f7 Remove tool calling for Cohere v1 2024-10-04 02:11:46 +03:00
Cohee
01f03dbf50 Support MistralAI streaming tool calls 2024-10-04 01:51:41 +03:00
Cohee
447a7fba68 Only delete message if had successful tool calls 2024-10-04 01:45:37 +03:00
Cohee
ac8a381501 Merge pull request #2940 from FriedCaper/dont-send-while-editing
Keyboard shortcut related fixes
2024-10-04 01:27:17 +03:00
Cohee
777b2518bd Allow returning page if transcript extraction failed 2024-10-04 01:12:12 +03:00
FriedCaper
1b3db27389 Abort Send and Continue while editing a message 2024-10-03 18:49:13 -03:00
FriedCaper
6fc8588a8f On ctrl-enter when editing, focus text input 2024-10-03 18:49:13 -03:00
Cohee
6cb82fc21e Add json param to /transcript 2024-10-04 00:39:45 +03:00
Cohee
5cf64a2613 Update tool registration 2024-10-04 00:39:28 +03:00
Cohee
6558b10675 Show an error when all tools fail 2024-10-04 00:11:36 +03:00
Cohee
576352817e Merge branch 'staging' into tool-calling 2024-10-03 22:36:02 +03:00
Cohee
1278b5c309 Fix character attachment content saving into settings.json 2024-10-03 22:13:37 +03:00
Cohee
90809852c2 Hide message on streaming tool calls 2024-10-03 13:23:53 +00:00
Cohee
da9200c82e Skip adding tool messages as regular chats 2024-10-03 12:59:59 +00:00
Cohee
c59afd1b56 Claude: console.log system before messages 2024-10-03 09:51:38 +03:00
Cohee
6706cce10d Groq: Add new models and multimodal captions 2024-10-03 08:41:45 +03:00
Cohee
1e076a3e43 Prettify displayed message 2024-10-02 23:32:29 +03:00
Cohee
2b7c03f3b0 Nicely format message for tool calls 2024-10-02 23:13:11 +03:00
Cohee
2dad86e076 Delete empty message before tool invocations 2024-10-02 23:12:49 +03:00
DarokCx
fa52fb4ae6 Ui bug Fixes 2024-10-02 15:40:20 -04:00
Cohee
c3e9d25307 Merge branch 'staging' into tool-calling 2024-10-02 22:35:33 +03:00
Cohee
85b0d135f1 Add utility function for formatting swipe counters 2024-10-02 22:22:33 +03:00
Cohee
0f8c1fa95d Save tool calls to visible chats. 2024-10-02 22:17:27 +03:00
Cohee
3335dbf1a7 Add empty tool calls to streaming processors 2024-10-02 01:59:53 +03:00
Cohee
e8b9720425 Budgeting fix 2024-10-02 01:56:27 +03:00
Cohee
63724a2b38 eslint update 2024-10-02 01:54:47 +03:00
Cohee
68c87f7e7a Fix code scanning alert no. 231: Prototype-polluting function
Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
2024-10-02 01:53:03 +03:00
Cohee
c94c06ed4d Implement function tool calling for OpenAI 2024-10-02 01:45:57 +03:00
Cohee
a304179332 Merge pull request #2931 from ceruleandeep/feature/profileFeatherlessModel
Add Featherless to modelSelectMap for /model
2024-10-02 01:01:57 +03:00
Cohee
8006795897 New tool calling framework 2024-10-02 01:00:48 +03:00
ceruleandeep
3dad029091 Add Featherless to modelSelectMap for /model 2024-10-02 06:55:32 +10:00
Cohee
b3e88c82b8 Merge pull request #2929 from SillyTavern/model-write-in
/model: Better support for write-in controls
2024-10-01 21:40:40 +03:00
Cohee
bb1139bda9 Merge branch 'staging' into model-write-in 2024-10-01 21:26:34 +03:00
Cohee
14fb42be44 Merge pull request #2919 from SillyTavern/swipe-nums-for-all-mes
add swipe counter to all messages (needs debug)
2024-10-01 21:19:39 +03:00
Cohee
7d0cc9e372 Remove commented debug code 2024-10-01 20:48:45 +03:00
Cohee
d3120afc60 Merge branch 'staging' into swipe-nums-for-all-mes 2024-10-01 20:46:10 +03:00
Cohee
6ba60e8f60 Merge pull request #2830 from nyxkrage/patch-2
Append continuation message after prefill when using "Continue Prefill" with Claude
2024-10-01 20:44:24 +03:00
Cohee
a23c31dd09 Update visuals and labels of CC postfix/prefix drawers 2024-10-01 20:42:03 +03:00
DarokCx
e7e3a09ce4 bugfixes 2024-10-01 13:01:12 -04:00
Cohee
80de28d251 Remove debug log 2024-10-01 19:50:56 +03:00
Cohee
d5b845345e Better opacity handling. Remove debug logs 2024-10-01 19:48:46 +03:00
Cohee
cd297f926e Smaller swipe arrows 2024-10-01 19:38:25 +03:00
Cohee
7747050233 Merge branch 'staging' into swipe-nums-for-all-mes 2024-10-01 19:27:20 +03:00
Cohee
be103534e4 Merge pull request #2922 from SillyTavern/send-commands-return-value
Update various sending commands to return a value
2024-10-01 19:25:19 +03:00
Cohee
33222191be Remove confusing toast from listvar 2024-10-01 19:15:53 +03:00
Cohee
89642f217d Merge branch 'staging' into send-commands-return-value 2024-10-01 19:08:34 +03:00
DarokCx
aea985d78c added new filter and css fix 2024-10-01 12:02:18 -04:00
Yokayo
5b9504e7bb Merge branch 'SillyTavern:staging' into staging 2024-10-01 21:26:07 +07:00
Yokayo
7f9023d3c2 Work on tl 2024-10-01 21:25:20 +07:00
Cohee
4eee1cb2d0 Merge pull request #2924 from SillyTavern/sd-args
Image Generation command improvements
2024-10-01 15:12:48 +03:00
Cohee
c76fc7d23c /model: Better support for write-in controls 2024-10-01 15:02:14 +03:00
Cohee
ab966db1e5 Refactor ensureSelectionExists for more readability 2024-10-01 14:28:34 +03:00
Cohee
42d24dbc47 Fix free mode extension on empty chats when {{charPrefix}} is used 2024-10-01 14:24:27 +03:00
Cohee
5363529068 Merge branch 'staging' into sd-args 2024-10-01 14:16:01 +03:00
Cohee
5489dd61a7 Pass /continue error to slash command executor 2024-10-01 14:14:19 +03:00
Cohee
b4529e75c6 Don't wrap empty sysprompts in instruct mode 2024-10-01 13:16:55 +03:00
Cohee
697f02e7f3 Merge pull request #2927 from SillyTavern/no-zip-updates
Exit scripts when try to update non-git installs
2024-10-01 12:50:09 +03:00
Cohee
9e3307576e Crash when update failed 2024-10-01 12:43:20 +03:00
Cohee
6c110e91f7 Exit scripts when try to update non-git installs 2024-10-01 12:32:32 +03:00
Cohee
6b61abc8ed Extract logic for enum providers 2024-10-01 02:30:24 +03:00
Wolfsblvt
f6726db9fb Fix empty script injections on /listinjects 2024-10-01 01:30:20 +02:00
Wolfsblvt
56265540db sanitize HTML on html returns
- I had it in there for some time, I even tested it... likely gone during some commits
2024-10-01 01:23:34 +02:00
Cohee
e2dd7bfb4b Remove leftovers from prompt expansion 2024-10-01 02:15:27 +03:00
Cohee
a63f99b8ce Add /imagine-style command 2024-10-01 02:11:24 +03:00
Cohee
909ac0c622 Merge branch 'staging' into sd-args 2024-10-01 02:08:14 +03:00
Cohee
d96bb3dcea Merge branch 'send-commands-return-value' of https://github.com/SillyTavern/SillyTavern into send-commands-return-value 2024-10-01 01:55:24 +03:00
Wolfsblvt
398ae6ba2e Update doReturn() API with objectToHtmlFunc
- Allow future commands to provide a different "object to HTML" converter func than "object to text", if need be
2024-10-01 00:53:19 +02:00
Cohee
d82dc4952b Merge branch 'staging' into send-commands-return-value 2024-10-01 01:52:33 +03:00
Wolfsblvt
f317b1b764 Oversight, missed /send in refactoring... 2024-10-01 00:41:14 +02:00
Wolfsblvt
7a1b43eb89 Refactor /classify-expressions, deprecating...
- Update /classify-expressions, deprecating the old "format"
- Fix some oversights
2024-10-01 00:37:21 +02:00
Cohee
63c74468fc Merge pull request #2926 from notfiz/gemini-fix
fix google-ai reverse proxy ignoring user provided path
2024-10-01 01:28:23 +03:00
Wolfsblvt
697b3b2034 Refactor /listvar, deprecate its "format" arg
- Update /listvar
- Fix toasts not doing correct HMTL here
2024-10-01 00:23:00 +02:00
Wolfsblvt
62fd450c59 Refactor /listinjects, deprecate its "format" arg 2024-10-01 00:06:18 +02:00
Cohee
392c98455e Merge branch 'staging' into patch-2 2024-10-01 00:39:23 +03:00
Cohee
7ac7398568 Remove debug log. Fix comment 2024-10-01 00:37:33 +03:00
Wolfsblvt
e3c0c5442c Update /ask with return types, defaulting 'pipe' 2024-09-30 23:37:21 +02:00
Wolfsblvt
d8379edee7 Update return types as optional via named arg
- Update the modified slash commands for chat sending to use the named arg
- Add `slashCommandReturnHelper` for shared funcitonality on return type usage
2024-09-30 23:32:24 +02:00
notfiz
0df5a86ae8 fix google-ai reverse proxy ignoring user provided path 2024-10-01 00:53:14 +03:30
Cohee
c42df886c5 Merge pull request #2925 from SillyTavern/fix-math-commands
Fix and improve math slash commands
2024-09-30 23:56:15 +03:00
Cohee
3fd846fb5b Allow returning literal Infinity string from math operations 2024-09-30 23:52:01 +03:00
Cohee
bed7df0038 Merge branch 'staging' into fix-math-commands 2024-09-30 23:26:04 +03:00
Cohee
bc05c8de15 Merge pull request #2923 from SillyTavern/fix-piping-split-unnamed-args
Fix piping not actually using/inputting an array for empty unnamed args
2024-09-30 23:25:20 +03:00
Wolfsblvt
2dc7b5ded1 Allow using JSON arrays for math commands
- applies to all that receive a list. /add, /sub, /min, /max etc
- Parsing is the same as the other commands where we already allow "LIST" as an argument.
2024-09-30 21:24:22 +02:00
Cohee
e32b701045 Merge branch 'staging' into swipe-nums-for-all-mes 2024-09-30 22:23:40 +03:00
Cohee
56e9b51f4e Merge pull request #2918 from SillyTavern/char-find-and-sendas-extended
Char find and sendas extended
2024-09-30 22:22:13 +03:00
Cohee
0d83480e90 Merge branch 'staging' into char-find-and-sendas-extended 2024-09-30 22:15:38 +03:00
Cohee
a4d02bd967 Add /imagine-source command 2024-09-30 22:00:03 +03:00
Wolfsblvt
8ff2ef086b Update defs and enums for other math commands
- Now even the commands like `/div count charnumber` work well with auto complete
2024-09-30 20:59:42 +02:00
Cohee
9af4d62cdf Extend /sd command 2024-09-30 21:51:24 +03:00
Wolfsblvt
224249a0d2 Fix /sub actually allowing more than two vals now
- Fix by subtracting all from the first value
- Update the definition too
2024-09-30 20:50:18 +02:00
Wolfsblvt
4855f25419 Update /mul, /max and /min definition
- Update command definition for /mul, /max and /min to fit the actual code behind, split them too
- Add numbersAndVariables enum provider, to centralize
2024-09-30 20:45:39 +02:00
DarokCx
409d83e6ea BugFixes and added top model categorie selection 2024-09-30 14:34:40 -04:00
Wolfsblvt
0d38e63471 Why join and then split again, eh?
- Refactor /add actually using the array provided as the array for the internal `parseNumericSeries` inside `performOperation`
2024-09-30 20:28:52 +02:00
Wolfsblvt
140aeb2bb7 Fix piping not using array for empty unnamed args
- Lenny said if `splitUnnamedArgument` is enabled, the callback should always receive an array.
- It is intended that if no value was provided, it'll get an array with an empty string. Because.. if no argument was provided for a non-split arg, it'll receive an empty string too.
2024-09-30 20:22:44 +02:00
Wolfsblvt
1c65a5badd Update /ask toasts to warnings for consistency 2024-09-30 18:38:17 +02:00
Wolfsblvt
1128de91f4 /send with return value too
- /send
- return message on `sendMessageAsUser` now
2024-09-30 18:32:21 +02:00
Wolfsblvt
0ab74f0819 Update return values of send commands
- /sendas
- /sys
- /comment
2024-09-30 18:30:09 +02:00
Wolfsblvt
5952c35402 Refactor if checks on /sendas 2024-09-30 18:13:13 +02:00
Cohee
dedb96ec8d Don't trim on whitespace user prefix sequence 2024-09-30 15:05:15 +00:00
DarokCx
5f5f9e34ea added gridview 2024-09-30 09:08:00 -04:00
RossAscends
8cb4aa6a49 whoopsie daisey 2024-09-30 22:00:38 +09:00
RossAscends
da161b9628 Merge branch 'staging' of https://github.com/Cohee1207/SillyTavern into staging 2024-09-30 21:49:41 +09:00
RossAscends
020741d78b make AF panel toggles red and opaque when disabled 2024-09-30 21:49:39 +09:00
RossAscends
e9e459be14 make sure old swipe counters are shown after new message added 2024-09-30 21:29:24 +09:00
RossAscends
1a0b49d5dc fix weird counter text in group chats 2024-09-30 21:19:39 +09:00
RossAscends
885a278973 split counter from chevron, smarter toggling 2024-09-30 19:51:13 +09:00
Cohee
8061f45368 RossMods: Debounce online status display 2024-09-29 19:13:19 +03:00
Cohee
2f43c8e227 Fix /ask in neutral chats 2024-09-29 19:12:26 +03:00
Wolfsblvt
314771fd9a Fix /sendas wrong name being used 2024-09-29 17:32:18 +02:00
Wolfsblvt
7c2fcbc522 Fix non-provided name not correctly preferring cur 2024-09-29 17:00:28 +02:00
Cohee
9f0c2300d2 Add connection map aliases 2024-09-29 16:24:40 +03:00
RossAscends
3614740f4e remove gaudy console log 2024-09-29 21:53:06 +09:00
RossAscends
034a5a48c2 initial commit, functional, needs proofing 2024-09-29 21:47:18 +09:00
Wolfsblvt
8e445c75ae Fix bug with undefined char on empty chats 2024-09-29 13:38:15 +02:00
Cohee
57bbd349a0 Merge branch 'staging' into char-find-and-sendas-extended 2024-09-29 13:37:09 +03:00
Cohee
53424d4c8e Merge pull request #2917 from SillyTavern/st-parser-accept-multiple-named
STscript allow named arguments to be an array
2024-09-29 13:36:33 +03:00
Cohee
c3d5fba598 Support multiple in /setpromptentry 2024-09-29 12:48:40 +03:00
Wolfsblvt
cc527a3a33 Correct async calls to init scrapers 2024-09-29 11:27:07 +02:00
Wolfsblvt
ab83138b1e missing closing tag 2024-09-29 11:02:54 +02:00
Wolfsblvt
44c8d45957 missing import 2024-09-29 04:02:00 +02:00
Wolfsblvt
d7bad6335c Refactor findChar to utils
- Refactor and move finChar to utils, instead of slashcommands function
- Refactor scrapers to use actual init functionality
2024-09-29 03:20:01 +02:00
Wolfsblvt
edcf52e3a8 Update more commands for new char find
- Update /member-add to utilize new char find functionality
- Update /tag-add, /tag-remove, /tag-exists and /tag-list to utilize new char find functionality
. Update /lastsprite to utilize new char find functionality
2024-09-29 02:54:12 +02:00
Wolfsblvt
145023ba8d Update existing slash commands to findChar
- Update /gen to utilize new char find functionality
- Update /go to utilize new char find functionality
- Update /delname to utilize new char find functionality
- Change /send persona search to equalsIgnoreCaseAndAccents
2024-09-29 02:36:33 +02:00
Wolfsblvt
d6e52dbb97 Update /ask with new char find functionality 2024-09-29 02:14:06 +02:00
Carsten Kragelund
1711ef4e04 fix: remove continue prefill logic from prompt-converters 2024-09-28 23:34:38 +00:00
Wolfsblvt
ca009dee59 Respect tags for current char(s) selection
- Respect tags for prefer current char(s)
- Fix preferCurrentChar not being true by default
2024-09-29 01:17:13 +02:00
Wolfsblvt
5a0e70e8fa Add "quiet" to /char-find 2024-09-29 00:55:41 +02:00
Wolfsblvt
231ea98b25 Update /sendas to work with findChar 2024-09-29 00:53:43 +02:00
Carsten Kragelund
4966fb65f7 fix: add assistant_prefill to request if people are using non prefill based continues 2024-09-28 22:46:23 +00:00
Wolfsblvt
5295c4c023 Merge branch 'staging' into char-find-and-sendas-extended 2024-09-29 00:41:34 +02:00
Carsten Kragelund
aae934a849 fix: move prefill continuation handling to populateChatHistory 2024-09-28 22:37:16 +00:00
Carsten Kragelund Jørgensen
d5f94577dc fix: dont trim prefill message, but do trim message 2024-09-28 22:37:16 +00:00
Carsten Kragelund Jørgensen
8401cc6032 fix: append continuation message after prefill 2024-09-28 22:37:16 +00:00
Wolfsblvt
0be48c567a /char-find command to get a specific unique char
- findChar utility function that does the heavy lifting of finding a specific char based on conditions
- Log/warn if multiple characters match
- Validation function for named args that should be arrays
2024-09-29 00:36:13 +02:00
Cohee
14b48c5b34 Add warning for trim spaces disabled 2024-09-29 01:28:02 +03:00
Cohee
42cfeae8ab Adjust WI headers 2024-09-29 01:17:22 +03:00
Cohee
c37a83836a Arrows on selects always visible 2024-09-29 01:17:15 +03:00
Wolfsblvt
898c6471c4 Fix WI Entry Status tooltip, no disabled anymore 2024-09-29 00:03:34 +02:00
Cohee
5d60897cfa Fix drawer icon not changing on WI 2024-09-29 01:00:56 +03:00
Cohee
81f2bbadba Merge pull request #2915 from Yokayo/staging
Update ru-ru translation
2024-09-29 00:27:30 +03:00
Wolfsblvt
20a82fb242 Merge branch 'st-parser-accept-multiple-named' into char-find-and-sendas-extended 2024-09-28 22:40:22 +02:00
Wolfsblvt
22d8a654d9 Allow searching on /sendas via tag= 2024-09-28 22:22:44 +02:00
Wolfsblvt
4594353c72 Add avatar= to /sendas to allow avatar override 2024-09-28 22:22:44 +02:00
Wolfsblvt
d8e57c507f Allow case-insensitive name search 2024-09-28 22:22:44 +02:00
Wolfsblvt
6714bb8c15 Prefer current char if multiple have the same name
- Match against current chat character first
- Also removed avatar-key matching, it was broken
2024-09-28 22:22:44 +02:00
Wolfsblvt
d231b7f5f4 "acceptsMultiple" should always return array 2024-09-28 22:14:33 +02:00
Wolfsblvt
2444e9be43 STscript allow named arguments to be an array
- Use named args definition and "acceptsMultiple" to build arrays of values, if provided
- Add a debug warning if non-multiple named args are provided multiple times
2024-09-28 21:59:29 +02:00
Yokayo
9041eb8081 Remove debug stuff 2024-09-28 21:54:44 +07:00
Yokayo
78a287e7f5 Resolve conflict 2024-09-28 21:31:13 +07:00
Yokayo
bb76649478 Update tl 2024-09-28 20:47:37 +07:00
Cohee
c47e198664 Merge pull request #2742 from SillyTavern/xtc-ooba
Enable XTC for TextGen WebUI
2024-09-28 14:00:16 +03:00
Cohee
ac1bc95551 Xtra Type Cafety 2024-09-28 13:59:03 +03:00
Cohee
b1bb41313f Insert missing ooba samplers 2024-09-28 13:56:57 +03:00
Cohee
8bd1c88d15 Enable XTC 2024-09-28 13:52:55 +03:00
Cohee
e59dacc27f Merge branch 'staging' into xtc-ooba 2024-09-28 13:49:49 +03:00
Cohee
5fa574b851 Alt.greetings br0ke 2024-09-28 02:03:11 +03:00
Cohee
3e13155659 Update Seraphina WI embed 2024-09-28 01:25:04 +03:00
Cohee
3e0beb836d Fix default lorebook 2024-09-28 01:21:17 +03:00
Cohee
ba6f7b7a98 Fix QR editor sizing 2024-09-28 01:02:36 +03:00
Cohee
eaefcaa6bc Fix QR editor sizing 2024-09-28 01:00:07 +03:00
Cohee
3b27c90a19 Don't allow empty stop strings 2024-09-27 21:08:28 +03:00
Cohee
1abbd54f69 Merge pull request #2807 from v3ucn/GPT-SoVITS-V2
TTS API for the GPT-SoVITS-V2 model zero-shot
2024-09-27 20:36:48 +03:00
Cohee
00e48097e5 Mark provider unofficial in the list 2024-09-27 20:34:21 +03:00
Cohee
43c3943287 Merge branch 'staging' into GPT-SoVITS-V2 2024-09-27 20:29:22 +03:00
Cohee
010b3fa492 Merge pull request #2804 from v3ucn/CosyVoice
TTS API for the CosyVoice
2024-09-27 20:28:28 +03:00
Cohee
84c04f0354 Mark provider unofficial in the list 2024-09-27 20:27:51 +03:00
Cohee
d7d204f2ab Merge branch 'staging' into CosyVoice 2024-09-27 20:26:32 +03:00
Cohee
57fdaeba81 Merge pull request #2908 from SillyTavern/gallery-improvements
Improve gallery layout
2024-09-27 20:25:45 +03:00
Cohee
53dc8702c3 Add early return for movingDivs click handler 2024-09-27 20:25:09 +03:00
DarokCx
bebd0e438b new search bar for featherless 2024-09-27 13:16:27 -04:00
Cohee
061ed1db65 Improve gallery layout
Closes #2907
2024-09-27 08:02:08 +00:00
Cohee
735fe49a84 Fix magic wand 2024-09-27 09:41:59 +03:00
Cohee
ff56cb9c2e Merge pull request #2903 from SillyTavern/extensions-slash-commands
Slash commands to manage Extensions
2024-09-27 01:23:07 +03:00
Cohee
0fd57a4c1c Returns doesn't support HTML, ditto 2024-09-27 01:19:45 +03:00
Cohee
cf2c9a8296 Returns doesn't support HTML 2024-09-27 01:13:44 +03:00
Cohee
eccf253afd Show Included settings in view order 2024-09-27 01:01:49 +03:00
Cohee
9612af6e9a Merge pull request #2901 from SillyTavern/connection-profile-omit
Add ability to omit settings from Connection Profile
2024-09-27 00:46:39 +03:00
Cohee
50fd3a2028 Remove new class 2024-09-27 00:46:03 +03:00
Cohee
4167fe3d2b Add Save and Update 2024-09-27 00:44:58 +03:00
Cohee
3b1435ba77 Merge branch 'staging' into connection-profile-omit 2024-09-27 00:20:47 +03:00
Cohee
b025765a1e Merge pull request #2891 from SillyTavern/if-command-default-arguments
`/if` and `/while` now allow "right" and "rule" to be optional
2024-09-27 00:04:41 +03:00
Cohee
75308bfe7f Alt greetings restyle (#2902)
* Slight QoL restyle of alternate greetings
* Update to new popup
* Add visible labels to buttons
2024-09-26 23:56:38 +03:00
Cohee
38660df93f /model: fix not working on Novel/Horde 2024-09-26 23:46:03 +03:00
Cohee
dbca950aad Add margin from all sides 2024-09-26 23:40:44 +03:00
Cohee
7c4d8b8d7a Fix a bug with splice 2024-09-26 23:36:38 +03:00
Cohee
bb82198496 Place omitted on a separate line 2024-09-26 23:34:42 +03:00
Cohee
d8806060a7 Use compact template syntax 2024-09-26 23:34:03 +03:00
Cohee
8083431202 Merge branch 'staging' into connection-profile-omit 2024-09-26 23:27:54 +03:00
Cohee
3a03e1a6b2 NovelAI: More newline stop string permutations 2024-09-26 23:26:42 +03:00
Cohee
917c6f25bd Merge branch 'release' into staging 2024-09-26 12:56:34 +00:00
Cohee
4c159dfb50 Hotfix: Chrome 129 wide popup sizing 2024-09-26 12:56:19 +00:00
Cohee
e6d5b5a8a1 Limit NAI stop sequences count 2024-09-26 07:58:26 +00:00
Cohee
c4462cc8bb Add Erato preamble token 2024-09-26 07:56:32 +00:00
刘悦
9c6352fcae Update gpt-sovits-v2.js
add (Unofficial) label
2024-09-26 15:20:29 +08:00
刘悦
d8935be5e5 Update cosyvoice.js
add Unofficial label
2024-09-26 15:17:28 +08:00
Wolfsblvt
15bc0e4dba Squish the last bugs 2024-09-25 23:53:26 +02:00
Wolfsblvt
9fbcb12210 Fix third party extension findings + enum provider
- Allow extension names without the "third-party/" prefix
- Expand enum provider to show what third-party extensions are
2024-09-25 23:33:00 +02:00
Wolfsblvt
169504aa68 Refactor extension slash commands into own file
- Weird circle imports again with the slash command classes
2024-09-25 23:18:37 +02:00
Wolfsblvt
1a6f0c0922 Add /extension-exists and /extension-state 2024-09-25 23:10:00 +02:00
Wolfsblvt
a6445aee1b Add /extension-toggle 2024-09-25 23:05:34 +02:00
Wolfsblvt
eda7493a33 Add extension enable/disable commands
- /extension-enable
- /extension-disable
- Optional "reload" parameter
- /reload-page
2024-09-25 22:46:19 +02:00
Cohee
8344232fe5 Add common punctuation to Erato stop strings that start with a newline #2894 2024-09-25 23:14:28 +03:00
Wolfsblvt
ff989b3352 Move extensions init to function 2024-09-25 21:58:46 +02:00
Wolfsblvt
8c87a24e5d Throw when left operand not provided 2024-09-25 20:51:56 +02:00
Wolfsblvt
7abb1751b1 Merge branch 'staging' into if-command-default-arguments 2024-09-25 20:46:40 +02:00
Wolfsblvt
23286d186b Fix lint issues 2024-09-25 20:44:28 +02:00
Wolfsblvt
dadfc4db98 Let in/nin fall through to string + docs update 2024-09-25 20:10:14 +02:00
Wolfsblvt
a11a8fe956 Update eval logic to be more streamlined 2024-09-25 19:40:13 +02:00
Cohee
fbc590b641 Tabby: Unhide UI controls for XTC 2024-09-25 16:02:45 +00:00
Cohee
b01ae4e0ea Fix sysprompts set with commands 2024-09-25 14:58:24 +00:00
Cohee
17e279addf Fix sysprompts set with commands 2024-09-25 14:58:07 +00:00
Cohee
cd6e0747a5 Fix margin on Hint 2024-09-25 14:35:28 +00:00
Cohee
0646a47b81 Add ability to omit settings from Connection Profiles 2024-09-25 14:23:43 +00:00
Cohee
d9a8638109 Don't silence migration errors + add backups
Closes #2900
2024-09-25 13:09:34 +00:00
Cohee
6cab3c7d20 Don't silence migration errors + add backups
Closes #2900
2024-09-25 13:09:13 +00:00
Cohee
b61344185c Add format and scope arguments to /listvar 2024-09-25 10:45:44 +00:00
Cohee
5a4e23f62f Fix Novel bias not displaying 2024-09-25 10:03:07 +00:00
Cohee
9047f311b7 Fix Novel bias not displaying 2024-09-25 10:01:34 +00:00
Wolfsblvt
1ad0154f0f Fix classify not using extension-defined prompt 2024-09-25 10:17:58 +03:00
Wolfsblvt
578fc8e6f1 Fix classify not using extension-defined prompt 2024-09-25 04:55:48 +02:00
Cohee
f0ce6eb430 Merge pull request #2899 from sasha0552/certs-in-gitignore
Add `certs` to `.gitignore`
2024-09-24 23:02:14 +03:00
sasha0552
c3d81e02be Add certs to .gitignore 2024-09-24 19:56:48 +00:00
Cohee
a9d266d279 Change tabby inline warning. 2024-09-24 22:28:12 +03:00
Cohee
6608f5dd95 Fix the use of stop strings for Gemini 2024-09-24 22:18:28 +03:00
Cohee
50e48ffdc2 Add Google models to captioning 2024-09-24 22:01:57 +03:00
Cohee
8ee452993b Try to fix Gemini requiring stop strings. 2024-09-24 21:55:49 +03:00
Cohee
df3d7a048e Deprecate unscoped vectors 2024-09-24 21:51:10 +03:00
Cohee
981697fda5 Merge pull request #2852 from SillyTavern/deprecate-cc-or-instruct
Deprecate forced instruct on OpenRouter for Chat Completion
2024-09-24 21:28:30 +03:00
Cohee
8c39e20ed9 Merge branch 'staging' into deprecate-cc-or-instruct 2024-09-24 21:19:03 +03:00
Cohee
b697f1f7c7 Merge pull request #2898 from M0ch0/staging
Support gemini-1.5-series-002 and new 8B exp model
2024-09-24 21:06:36 +03:00
M0cho
2ee3eb7004 Support gemini-1.5-series-002 and new 8B exp model 2024-09-25 02:58:56 +09:00
Cohee
648e70b8c6 Merge pull request #2897 from SillyTavern/staging
Staging
2024-09-24 20:31:07 +03:00
Cohee
c2e5a0e64f Bump package version 2024-09-24 20:22:18 +03:00
Cohee
bc6520c392 Tabs? Why does it have to be tabs? 2024-09-24 12:56:59 +03:00
Cohee
e730acbbe1 Port Erato presets 2024-09-24 12:55:25 +03:00
Cohee
d8f268a807 Add Novel preset converter 2024-09-24 12:50:47 +03:00
Cohee
9d2a700b04 Add bad words and rep pen whitelist for Erato 2024-09-24 12:14:46 +03:00
Cohee
26f4d1a4ad Remove CFG for Novel, fix logitbias and text adventure bans for Erato 2024-09-24 08:12:50 +00:00
Cohee
8775247942 Fix banned tokens not working for Erato 2024-09-24 07:55:23 +00:00
Cohee
182756fcb2 Erato (#2896)
* Erato
erato
2024-09-24 03:10:31 +03:00
Cohee
1878602647 Add note about importing legacy files 2024-09-23 23:22:24 +03:00
Cohee
780f2f712e Adjust PM editor styles 2024-09-23 23:11:28 +03:00
Cohee
a408328fc6 Confirm custom PM prompt deletion 2024-09-23 22:44:49 +03:00
Cohee
beeec51f93 Adjust style of in-chat marker prompts 2024-09-23 21:04:00 +03:00
Cohee
583cc4b097 Add renaming of profiles + use alphabetical sorting 2024-09-23 20:19:18 +03:00
Cohee
5b4d524bc0 Fix TC sysprompt leaking into CC prompts 2024-09-23 16:42:40 +00:00
Cohee
7dd8229df6 Return GENERATION_STARTED to original location. Add GENERATION_AFTER_COMMANDS 2024-09-23 10:07:50 +03:00
Cohee
733fff4e22 Merge pull request #2868 from SillyTavern/sysprompt-divorce
Decouple system prompts from instruct mode
2024-09-22 23:56:02 +03:00
Cohee
1ea99758a8 Reuse select padding from inputs 2024-09-22 23:17:48 +03:00
Cohee
d1d1586008 Clear master import file input 2024-09-22 22:47:28 +03:00
Cohee
9d38878007 Display existing prompts in instruct migration dialog 2024-09-22 22:46:31 +03:00
Cohee
ece2684001 Add migrated prefix to imported legacy instructs 2024-09-22 22:33:36 +03:00
Cohee
45e92fdf20 Swap bind and enabled for instruct 2024-09-22 21:55:16 +03:00
Cohee
c340766bb6 Use prefix in the migrated sysprompts 2024-09-22 21:06:03 +03:00
Cohee
4ee771b7af Expand assistant message sequences by default 2024-09-22 20:51:06 +03:00
Cohee
8bf253d293 Display names in master import 2024-09-22 20:50:36 +03:00
Cohee
63bd7611b3 Uncheck textgen preset from master export by default 2024-09-22 20:47:05 +03:00
Cohee
9101fb6573 Fix default sysprompt restoration 2024-09-22 20:06:26 +03:00
Cohee
5b65448a70 Fix local variable name 2024-09-22 20:00:09 +03:00
Cohee
3812e3bdcb Merge branch 'staging' into sysprompt-divorce 2024-09-22 19:56:29 +03:00
Cohee
a18dae8f69 Remove "include newlines" checkbox from context formatting settings 2024-09-22 19:55:43 +03:00
Cohee
bcc4914467 Auto-hide instruct sequences in <details> 2024-09-22 19:15:24 +03:00
Cohee
9d0ffc2d0d Merge branch 'staging' into sysprompt-divorce 2024-09-22 18:42:19 +03:00
Cohee
93bf87b035 Shut tokenization errors if not using ooba
Closes #2849
2024-09-22 17:44:19 +03:00
Cohee
8c5b02d2ea Silently redirect tokenization to the next matching tokenizer 2024-09-22 17:25:56 +03:00
Cohee
ba52ceb979 Add GENERATION_ENTERED event 2024-09-22 15:19:17 +03:00
Cohee
e814d8c019 Adjust default extension prompts 2024-09-22 13:47:29 +03:00
Cohee
b2eab37a89 Adjust default extension prompts, remove square brackets 2024-09-22 12:58:46 +03:00
Cohee
1864b7d868 Merge branch 'staging' into sysprompt-divorce 2024-09-22 12:35:28 +03:00
Cohee
1d8e5f841b Fix /imagine command help 2024-09-22 12:33:16 +03:00
Cohee
94977e71ff Merge OpenAI init functions 2024-09-22 12:29:32 +03:00
Cohee
9206e6d948 Await locales initialzation 2024-09-22 12:22:50 +03:00
Cohee
ade6ef8af8 Better customized sysprompt migration 2024-09-22 12:20:07 +03:00
Wolfsblvt
8ae7c2330a Adjust /while to fit new optional args 2024-09-22 08:09:19 +02:00
Wolfsblvt
cfe08d3a53 Refactor evalBoolean code 2024-09-22 07:58:16 +02:00
Wolfsblvt
aea95adf60 /if allow "rule" and "right" to be optional 2024-09-22 07:42:51 +02:00
Wolfsblvt
a1af768b02 Refactor /if to fromProps 2024-09-22 02:32:43 +02:00
Cohee
1bc0630595 Merge pull request #2890 from SillyTavern/fix-hide-on-hidden-messages
Fix /hide not targeting not visible messages
2024-09-22 00:19:07 +03:00
Wolfsblvt
4e907ff3e8 Fix /hide not targeting not visible messages 2024-09-21 23:14:31 +02:00
Cohee
6179c361dc One step closer to perfect 2024-09-21 23:46:57 +03:00
Cohee
a948b014ca Align selects with the buttons 2024-09-21 23:36:28 +03:00
Cohee
9a8b38517c Fix button label consistency 2024-09-21 23:30:31 +03:00
Cohee
74a8499e0e Fix raw textgen preset import via master 2024-09-21 23:28:38 +03:00
Cohee
c2f945ef88 Implement master AF import / export 2024-09-21 23:21:19 +03:00
Cohee
bf5b6090eb Remove the concept of default context and instruct. Swap columns 2024-09-21 22:37:15 +03:00
Cohee
e469c82c97 Hide individual imports/exports 2024-09-21 22:25:21 +03:00
Cohee
d66b36e1c3 Merge branch 'master-sets' into sysprompt-divorce 2024-09-21 22:15:47 +03:00
Cohee
c2114bc83d Merge branch 'staging' into sysprompt-divorce 2024-09-21 22:15:37 +03:00
Cohee
de2dd0e087 Update translated readmes 2024-09-21 21:47:42 +03:00
Cohee
d00c195394 Update readme.md 2024-09-21 21:37:22 +03:00
Cohee
94771c780d Fix npm audits of locked overrides 2024-09-21 19:16:04 +03:00
Cohee
bb170c11fe Update express 2024-09-21 19:09:35 +03:00
Cohee
ae53527c23 #2888 Hide non-functioning checkboxes from Comfy 2024-09-21 16:36:20 +03:00
Cohee
d3408c496f Change a log type for empty prompt messages 2024-09-21 16:23:59 +03:00
Cohee
8030ce9ddd Unify select styles across browsers 2024-09-21 14:28:43 +03:00
Cohee
165cc39a9a Set max-height on popup body
Fixes #2886
2024-09-21 14:06:57 +03:00
Cohee
0c4366db44 Merge pull request #2881 from SillyTavern/bug/2879
Fix mobile screen funkiness by smashing it with a big hammer
2024-09-21 13:49:36 +03:00
Cohee
8c7dab8c94 Merge pull request #2887 from AlpinDale/alpin/aphrosampler-update
[APHRODITE] add dynatemp, XTC, and fix token bans
2024-09-21 13:21:05 +03:00
Cohee
aaf8fa13e5 Remove condition 2024-09-21 13:18:52 +03:00
AlpinDale
a5fea35f12 chore: update aphrodite samplers 2024-09-21 08:18:06 +00:00
Cohee
e122dd2d7a Merge branch 'staging' into sysprompt-divorce 2024-09-21 02:11:42 +03:00
pandora
125498cfd5 Fixing Mistral Templates (#2883)
* Update Mistral.json

* Rename Mistral.json to Mistral V1.json

* Create Mistral V2 & V3.json

* Create Mistral V3-Tekken.json

* Update and rename Mistral.json to Mistral V1.json

* Update Mistral V1.json

* Update Mistral V2 & V3.json

* Update Mistral V2 & V3.json

* Update Mistral V3-Tekken.json

* Update Mistral V1.json

* Create Mistral V2 & V3.json

* Create Mistral V3-Tekken.json

* Update Mistral V1.json

* Update Mistral V2 & V3.json

* Update Mistral V3-Tekken.json

* Update Mistral V1.json

* Update Mistral V2 & V3.json

* Update Mistral V3-Tekken.json

* Update Mistral V1.json

* Update Mistral V2 & V3.json

* Update Mistral V1.json

* Update Mistral V3-Tekken.json

* Update Mistral V1.json

* Update Mistral V2 & V3.json

* Update Mistral V3-Tekken.json

* Add to content index

* Remove example separators

* Simplify context fillers

* Add a hack for proper V1 format with names

* Readability

---------

Co-authored-by: Cohee <18619528+Cohee1207@users.noreply.github.com>
2024-09-21 01:56:02 +03:00
Cohee
8c3a895ff4 Merge pull request #2884 from SillyTavern/nai-samplers
Min P and Unified samplers for NovelAI
2024-09-21 00:40:07 +03:00
Cohee
e2f88e6243 Add Unified sampling for Novel 2024-09-21 00:24:52 +03:00
Cohee
8efe0b6437 Add Min P for Novel 2024-09-20 22:42:56 +03:00
Cohee
7ecd0602df Add buttons 2024-09-20 21:49:01 +03:00
Cohee
462b2ea7b2 Fix sysprompt dependency on instruct 2024-09-20 21:27:04 +03:00
Cohee
392edfaca1 Merge branch 'staging' into sysprompt-divorce 2024-09-20 20:57:07 +03:00
Cohee
e60d818a88 Fix placeholder doc link 2024-09-20 20:53:05 +03:00
Cohee
2b10954002 Fix mobile screen funkiness by smashing it with a big hammer
Fixes #2879
2024-09-20 20:34:29 +03:00
Cohee
6d32cd6bf0 Merge pull request #2878 from ceruleandeep/feature/fixHangOnEmptyChatFile
Save uploaded data unchanged if Chub conversion fails for any reason
2024-09-20 11:47:27 +03:00
Cohee
d7a37298ab Ignore errors in getContentOfType 2024-09-20 08:31:25 +00:00
Cohee
5001187b3c Revert default prompt 2024-09-20 08:15:23 +00:00
Cohee
589dc8a858 Revert "Remove square brackets from default prompts"
This reverts commit 48cd881972.
2024-09-20 08:15:23 +00:00
ceruleandeep
457475baf1 Save uploaded data unchanged if Chub conversion fails for any reason
Avoid non-resolving promise in /characters/chats readline if chat file is empty
2024-09-20 08:58:17 +10:00
Cohee
4b235f0b31 Migrate only unique and non-default instruct prompts 2024-09-20 01:02:13 +03:00
Cohee
4e5a997e63 Set default sysprompt to neutral chat 2024-09-20 00:35:47 +03:00
Cohee
1819604f31 Remove brackets from default SD prompts 2024-09-20 00:29:33 +03:00
Cohee
986d33fcdd Commit suggestion
Co-authored-by: Wolfsblvt <wolfsblvt@gmail.com>
2024-09-20 00:26:29 +03:00
Cohee
6fb6400168 Add hints to migration dialog 2024-09-20 00:21:31 +03:00
Cohee
a506cf8c90 Fix command description 2024-09-20 00:10:27 +03:00
Cohee
1d124ba770 Use one callback for setting sysprompt state 2024-09-20 00:05:57 +03:00
Cohee
1f45774cf6 Document fuzzy matches 2024-09-20 00:03:47 +03:00
Cohee
75f44e24e9 Use Fuse only as fallback 2024-09-20 00:02:14 +03:00
Cohee
1dd3be9479 Use init function 2024-09-19 23:59:58 +03:00
Cohee
1e5149f209 Coalesce no name 2024-09-19 23:58:31 +03:00
Cohee
48cd881972 Remove square brackets from default prompts 2024-09-19 23:54:16 +03:00
Cohee
22f1b110e9 One extra check wouldn't hurt 2024-09-19 23:49:23 +03:00
Cohee
88c47fccdf Fix being unable to save instruct templates 2024-09-19 23:42:41 +03:00
Cohee
d0657161a1 Merge branch 'staging' into sysprompt-divorce 2024-09-19 23:14:40 +03:00
Cohee
9197ed7fce Fix connection profile for CC setting incorrect source by preset 2024-09-19 23:12:33 +03:00
Cohee
0d294c5371 Merge branch 'staging' into sysprompt-divorce 2024-09-19 22:59:53 +03:00
Cohee
5269725f1c Merge pull request #2872 from SillyTavern/super-saiyan-prompt-manager
Allow setting role, position and depth for marker prompts
2024-09-19 22:58:52 +03:00
Cohee
bfc0837936 Merge branch 'release' into staging 2024-09-19 22:44:55 +03:00
Cohee
ed47d51c93 Merge pull request #2875 from ceruleandeep/feature/handleChubChatData
Fix crasher in script.js:displayChats, add minimal support for importing chat histories in Chub format
2024-09-19 22:40:41 +03:00
Cohee
15363a8d69 Silence deprecation warnings in default startup scripts
Closes #2876
2024-09-19 15:42:07 +00:00
Cohee
9016985827 Undo second substitution #2874 2024-09-19 15:17:11 +00:00
Cohee
e2a3a060dd Merge pull request #2874 from steve02081504/patch-1
Second macro evaluation of WI for all positions
2024-09-19 14:20:10 +03:00
ceruleandeep
a2d9526cdf Minimal support for importing chat histories in Chub format
Fix crasher in script.js:displayChats if user has directly put a Chub chat file into their user data

Let eslint tidy a few things
2024-09-19 14:20:05 +10:00
steve green
8edc999854 Second macro evaluation of WI for all positions
- The first macro evaluation occurs when the entry is activated.
- The second macro evaluation occurs after the regex replacement 
  * and only when the entry is before or after the char definition
this may cause confusion for users.
I'm not sure if this is the right thing to do, but it's one way I can think of to make all this make more sense.
2024-09-19 10:16:42 +08:00
Cohee
83c3f6d1bf Merge pull request #2873 from SillyTavern/nemo-tokenizer
Add Mistral Nemo downloadable tokenizer
2024-09-19 02:07:52 +03:00
Cohee
a782dcec33 Add Mistral Nemo downloadable tokenizer 2024-09-19 00:10:22 +03:00
Cohee
0f2daede51 Merge branch 'staging' into sysprompt-divorce 2024-09-18 23:40:46 +03:00
Cohee
6d731bbefe Merge pull request #2871 from steve02081504/patch-4
fix `\x01` display in modern WI editor
2024-09-18 22:09:27 +03:00
Cohee
a4e673fd0a Exclude examples from allowed to be edited 2024-09-18 21:55:23 +03:00
Cohee
82b0733d88 Allow setting role, position and depth for marker prompts 2024-09-18 21:51:10 +03:00
steve green
157461ef7f fix \x01 display in modern WI editor 2024-09-19 00:20:31 +08:00
Cohee
5a3fc9b8db Fix typo 2024-09-18 01:07:12 +03:00
Cohee
b0c537d014 Migrate system prompts from imported instruct template 2024-09-18 00:38:15 +03:00
Cohee
38d24f4b59 Merge pull request #2866 from ceruleandeep/feature/hordeModelInfo
Display model metadata in Horde model picker
2024-09-17 22:11:46 +03:00
Cohee
a73b8077f6 Display more of the description. Remove debug log 2024-09-17 22:06:54 +03:00
Cohee
dcbaa0787d Merge pull request #2863 from SillyTavern/unify-user-avatar
Unify default user avatars
2024-09-17 21:47:37 +03:00
Cohee
60df924bec MistralAI: Add Pixtral to models and captioning 2024-09-17 21:44:25 +03:00
Cohee
1366c2741d Throttle chat backups (#2865)
* Throttle chat backups

* Throttle chat backups and apply backup interval throttling

- Added a new configuration option `chatBackupThrottleInterval` to the `config.yaml` file to specify the interval in milliseconds to throttle chat backups per user.
- Updated the `getBackupFunction` function in `chats.js` to use the `chatBackupThrottleInterval` value from the configuration file when creating a throttled backup function.
2024-09-17 18:18:35 +03:00
Cohee
15f7d9407a Remove console.debug statement in saveMetadataDebounced function 2024-09-17 14:03:28 +00:00
Cohee
8546f498bf Emit GENERATION_STARTED after processing commands 2024-09-17 13:55:10 +00:00
Cohee
0207794a2b Fix Qwen and Command tokenizers not used for logit bias 2024-09-17 13:01:19 +00:00
Cohee
0bc6a572c6 Add slash commands and connection profiles support 2024-09-17 12:14:13 +00:00
Cohee
912bebeb01 Remove deprecated control property 2024-09-17 11:41:23 +00:00
Cohee
2f7d694f54 Migrate sysprompts from instruct 2024-09-17 11:33:24 +00:00
Cohee
73ee869749 Load sysprompts from content manager 2024-09-17 10:38:14 +00:00
Cohee
b377a2b7d3 Decouple system prompts from instruct mode 2024-09-17 10:37:36 +00:00
ceruleandeep
146e82e44a Add model metadata to Horde models endpoint
Display model metadata in Horde model picker
2024-09-17 15:30:06 +10:00
Cohee
0b0bd27321 Merge pull request #2857 from SillyTavern/wi-delay-recursion-levels
WI "Delay until recursion" levels to delay delayed entries until other delayed entries are fully matched
2024-09-17 01:00:03 +03:00
Cohee
8ec509c777 Unify default user avatars
Closes #2862
2024-09-16 22:08:40 +03:00
Cohee
4b2c074399 Apply sanitation to chat names with extension 2024-09-16 16:49:32 +00:00
Cohee
05df2be047 Trim renamed chat name 2024-09-16 16:19:54 +00:00
Cohee
a670ec1879 Merge pull request #2859 from AAbushady/Aphrodite-Seed-Fix
Fixed Aphrodite Seed
2024-09-16 15:32:23 +03:00
Alexander Abushady
eb6097b1e8 Fixed Aphrodite Seed
Aphrodite's seed value needs to be undefined to be random.
2024-09-16 08:21:56 -04:00
Cohee
3e2b892aae Sanitize file names on chat renaming 2024-09-16 11:02:09 +00:00
Cohee
dcaa8d5e9c Initialize talkinghead on extras connection
Closes #2850
2024-09-16 09:17:23 +00:00
Cohee
9ef3385255 Implement collection scopes for vector models (#2846)
* Implement collection scopes for vector models

* Update makersuite-vectors.js to use Gemini API text-embedding-004 model

* Add model scope for Google vectors

* Fix purge log

* Refactor header setting

* Fix typo

* Only display UI warning if scopes disabled

* Remove i18n attribute

---------

Co-authored-by: ceruleandeep <83318388+ceruleandeep@users.noreply.github.com>
2024-09-16 09:29:39 +03:00
Wolfsblvt
c45e42ce7d Fix WI joiner/mather not being at the start 2024-09-16 05:18:37 +02:00
Cohee
7eb7204dc7 Remove link to Extras from welcome 2024-09-16 00:46:43 +03:00
Cohee
ca4d3c5ffe Refactor instruct names behavior controls (#2837)
* Refactor instruct names behavior controls
Closes #2819

* Remove current persona from force names

* Don't add current user name in groups

* Revert to old text

* Add titles to names behavior

* Proper default for names_behavior
2024-09-16 00:46:03 +03:00
Cohee
08f2b73ab8 Preserve neutral chat on reloading with commands (#2848)
* Preserve neutral chat on reloading

* Restore neutral on deleting character with bulk
2024-09-16 00:38:41 +03:00
Cohee
11ff19a161 Cut UI texts 2024-09-16 00:10:00 +03:00
Wolfsblvt
984790f53c Fix eslint + reset level on toggle 2024-09-15 22:31:29 +02:00
Wolfsblvt
eeed072ebb Add UI element for delay recursion level
- Tied and only visible to the "delay until recursion" toggle
- Will set it to a numerical value if used, otherwise keeps true/false state of the toggle
2024-09-15 22:15:24 +02:00
Wolfsblvt
413f6a0379 Expand logging for WI and scan states 2024-09-15 20:28:03 +02:00
Cohee
5bbc3ea758 Mention scripts in the readme 2024-09-15 21:25:15 +03:00
Cohee
7ebe9ae5cb [chore] fix typos 2024-09-15 20:09:51 +03:00
RossAscends
b7453d5c59 Update readme.md 2024-09-16 01:43:02 +09:00
Cohee
92e55c93d4 Add docs about cards (#2856)
* Add docs about cards

* Remove explicit links to "competitors"

* More diverse wording

* Mention common abbreviation
2024-09-15 19:21:07 +03:00
Cohee
cc2e82ce8f Fix execute on new chat not saving 2024-09-15 18:52:56 +03:00
Cohee
6393eda81e Auto-add OpenRouter captioning models 2024-09-15 18:38:44 +03:00
Cohee
44cc81fa73 Save models before emitting status change 2024-09-15 18:14:40 +03:00
Wolfsblvt
f0a3886b42 Reset scan state to recursion on more available 2024-09-15 17:02:48 +02:00
Wolfsblvt
609439def1 WI delay until recursion levels 2024-09-15 16:56:21 +02:00
Cohee
d08f964c2d Clickable contributors wall 2024-09-15 16:50:40 +03:00
Cohee
dca9871dd9 Revamp read me (#2854)
* inital commit

* Rewrite some readme sections

* Fix typo

* more edits

* Remove remote connections from readme

* Vision wording

* Fix headers

* edit api key viewing instructions

* Fix heading nesting

* Swap priorities

* Swap news sections

* Don't deadname horde

* merge STL install instructions into a single section

* NodeJS is family friendly

* Windows users are users too

* Numbers are scary

* Total Waifu Annihilation

* less repetittitiitiveness

* attempted ordered list fix

* emoji for STL

* clarify termux install disclaimer

* Remove outdated credits

* fix broken note format

* Remove news section

* Move screenshots

* not so braggadiciously

* Add contributors workflow

* Add contributors workflow

* add wolf to support spam recipients list

* chore: update contributors [skip ci]

* no double or

* typo

* Add contributors list

* Replace with a remote image

* Remove contributors workflow

* Lean credits list

* Fix typos

* Remove defaults from CMD args

* Contributors => Top Contributors

* Replace link to API connections

* Less repetition

---------

Co-authored-by: RossAscends <124905043+RossAscends@users.noreply.github.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-09-15 16:44:36 +03:00
Cohee
64e38eb8d1 Remove contributors workflow 2024-09-15 15:18:00 +03:00
github-actions[bot]
82da4598ca chore: update contributors [skip ci] 2024-09-15 11:31:26 +00:00
Cohee
7e9fcdaa21 Add contributors workflow 2024-09-15 14:30:50 +03:00
Cohee
30af741c3e Deprecated forced instruct on OpenRouter for Chat Completion 2024-09-15 10:54:12 +03:00
Cohee
2bc87a401e Try detect LM Studio in status check
Fixes #2849
2024-09-15 08:24:28 +03:00
Cohee
2478e17164 Remove legacy API for Aphrodite 2024-09-15 08:05:53 +03:00
Cohee
1fe4a230fe Record tokenizer to itemized prompts. 2024-09-14 22:05:59 +03:00
Cohee
2b08d61c27 Merge pull request #2843 from steve02081504/patch-1
join chatlog with `\x01`
2024-09-14 21:51:36 +03:00
Cohee
f1f74217cc Move joiner into constant 2024-09-14 21:50:58 +03:00
Cohee
5b8c149947 Merge pull request #2841 from AlpinDale/aphrosamplers
chore: slight refactor of aphrodite samplers
2024-09-14 16:55:40 +03:00
Cohee
50de678980 Hide beam search for vllm. It never worked. 2024-09-14 16:53:21 +03:00
Cohee
f0d361bc7a Remove unused beam search 2024-09-14 16:41:22 +03:00
Cohee
28837ff883 Hard code include_stop_str_in_output 2024-09-14 16:32:50 +03:00
Cohee
33e6ffd36e Update translations 2024-09-14 16:31:04 +03:00
AlpinDale
1cc935796f fix early_stopping 2024-09-14 12:45:29 +00:00
AlpinDale
fde76069e0 remove beam search 2024-09-14 12:42:21 +00:00
AlpinDale
9c94348491 clean up 2024-09-14 12:38:19 +00:00
RossAscends
b376ea884b Markdown hotkeys for textareas (#2800)
* initial commit

* dont hijack all ctrl keybinds

* change strikethrough bind, convert to subscribable class, target key textareas

* better early return, hotkey reversiblility

* possible undo solution, key checks to switch

* execCommand alternate, perfect Undo

* format full word when caret is in the middle of a word

* double backticks do nothing, dummy.

* ctrl+K for ....'K'ode snippet...

* remove console logs

* Add new hotkeys to help

* Allow hotkeys in message edit textarea

* add markdown hotkey help text

* help text addition to mention hotkeys work in message edits

* add markdown hotkeys to WI entry content box

* disengage if alt/win pressed, universal prevent default

* disengage if shiftKey pressed

* re-allow shift for one special case

* add MD hotkeys toggle in user settings

* add markdown enabled icon on relevant textareas when appropriate

* Add icon to help

* Uniform formatting

* Add opacity to icon

---------

Co-authored-by: Cohee <18619528+Cohee1207@users.noreply.github.com>
2024-09-14 14:16:26 +03:00
Cohee
bbb0391459 Update usage instructions in plugins.js 2024-09-14 13:06:34 +03:00
Cohee
6392ac7074 Set working directory to plugin path 2024-09-14 13:05:56 +03:00
Cohee
34a1b5586a Merge pull request #2847 from ceruleandeep/staging
Update makersuite-vectors.js to use Gemini API text-embedding-004 model
2024-09-14 12:42:38 +03:00
ceruleandeep
4acd729611 Update makersuite-vectors.js to use Gemini API text-embedding-004 model 2024-09-14 19:01:48 +10:00
Cohee
88709e0541 Merge pull request #2728 from zhongerxll/patch-1
Update constants.js
2024-09-14 09:35:18 +03:00
steve green
96fe4c4ab6 join chatlog with \x01 2024-09-14 10:05:30 +08:00
Wolfsblvt
86b114b5e5 Merge branch 'release' into staging 2024-09-14 02:45:31 +02:00
Wolfsblvt
b89bb6fee7 Update Horde link in readme 2024-09-14 02:44:01 +02:00
Cohee
0a05ef63c6 Merge pull request #2803 from SillyTavern/small-bookmark-updates
Update Checkpoints Feature (Expand tooltip and icons, add slash commands, refactoring)
2024-09-13 21:54:27 +03:00
Cohee
0ed39d19ec Fix TTS falsy checks 2024-09-13 21:51:05 +03:00
Cohee
01b83f893b Fix translation key removal 2024-09-13 21:48:35 +03:00
Cohee
a13d3f643c Fix shift+click in chat manager 2024-09-13 21:35:42 +03:00
Cohee
917a994ca8 Merge branch 'staging' into small-bookmark-updates 2024-09-13 21:10:12 +03:00
Cohee
5dd1d26350 Merge pull request #2842 from SillyTavern/o1
OpenAI O1
2024-09-13 21:05:00 +03:00
Cohee
eeee206887 Fix logit_bias comment 2024-09-13 21:03:04 +03:00
Cohee
d99a5eba2a Remove empty message looping 2024-09-13 20:52:34 +03:00
Cohee
db2b356942 Remove stop for o1 2024-09-13 20:47:41 +03:00
Wolfsblvt
6257f8b7f9 Fix /checkpoints-list with ids 2024-09-13 19:44:06 +02:00
Cohee
fefa6a0f5b Update old code style 2024-09-13 20:31:50 +03:00
Wolfsblvt
dc7bc30f4b Fix /checkpoint-create "mesId" argument 2024-09-13 19:29:54 +02:00
Cohee
084eebf610 Update /caption mesId argument name 2024-09-13 20:28:19 +03:00
Cohee
45cfc532b1 Redirect max_tokens to max_completion_tokens 2024-09-13 19:56:48 +03:00
Cohee
6371b4929f Fix HTML spacing 2024-09-13 19:47:53 +03:00
Cohee
6d79cc015a Add OpenAI o1 2024-09-13 19:44:12 +03:00
Cohee
854541f4ba Merge pull request #2838 from SillyTavern/genraw-error-logging
Improve error handling of /genraw and /gen
2024-09-13 14:23:16 +03:00
Cohee
8dd7a97eb3 Prevent duplicate toasts 2024-09-13 11:22:12 +00:00
Cohee
620847c4d6 Fixed logs 2024-09-13 11:12:41 +00:00
Cohee
0aede54cf1 Fix throw on /gen 2024-09-13 11:10:24 +00:00
Cohee
88fab65a8f Fix /gen log 2024-09-13 11:01:59 +00:00
Cohee
11549ed737 Merge pull request #2840 from SillyTavern/wi-preserve-hash
Calculate entry hash before replacing macros
2024-09-13 13:51:31 +03:00
AlpinDale
efd477da04 chore: slight refactor of aphrodite samplers 2024-09-13 10:34:06 +00:00
Cohee
34b2707895 Try to preserve old hashes 2024-09-13 10:52:35 +03:00
Cohee
7a7673432a Calculate entry hash before replacing macros
Fixes #2762
2024-09-13 10:47:25 +03:00
Wolfsblvt
73c14711e1 Fix checkpoint create auto generate (and more)
- Fix empty checkpoint name on mes click to auto generate
- Change /checkpoint-create to not require name and auto generate
- Fix popup input type returning empty string instead of null on empty input field
2024-09-12 23:34:37 +02:00
Wolfsblvt
f5b68893d0 Improve error handling of /genraw and /gen
- /generate TC backend returns more status/error texts
- Fix /genraw and /gen returning null/undefined
- Logging errors on /genraw if backend throws an error
- Fixes #2836
2024-09-12 22:41:53 +02:00
Cohee
d082c2f14d Merge branch 'staging' into small-bookmark-updates 2024-09-12 23:10:33 +03:00
Cohee
7c383e3218 Merge pull request #2834 from SillyTavern/replace-ajax
Replace ajax with fetch in character create/edit
2024-09-12 22:06:10 +03:00
Cohee
ace3e94299 Merge branch 'staging' into replace-ajax 2024-09-12 20:48:08 +03:00
Cohee
fc438d349a Merge pull request #2828 from SillyTavern/request-proxy
Add support for outgoing request proxying
2024-09-12 20:47:15 +03:00
Cohee
8acacf9e0f Document cmd args in README 2024-09-12 20:35:30 +03:00
Cohee
2efb637863 Better option description 2024-09-12 20:30:52 +03:00
Cohee
edd6dfa819 Fix typo 2024-09-12 20:29:46 +03:00
Cohee
b9d5c61b2e Add CLI for request proxy
Closes #364, #377, #1756
2024-09-12 20:25:58 +03:00
Cohee
051cdf5548 Merge branch 'staging' into request-proxy 2024-09-12 20:17:22 +03:00
Cohee
81cd38d4f7 #2832 /ask text non-required 2024-09-12 20:13:05 +03:00
Cohee
1762e8d83f Replace ajax with fetch in character create/edit 2024-09-12 10:43:40 +00:00
Cohee
6a3b226da2 Still fighting /ask corruptions #2832 2024-09-12 10:02:37 +00:00
Cohee
4e67cc1bc4 One more /ask corruption fix
Closes #2832
2024-09-12 09:50:06 +00:00
Cohee
2379fd5970 Fix /ask corruption + add return value
Fixes #2832 and a skill issue
2024-09-12 10:19:03 +03:00
Cohee
f62e57d737 Merge branch 'staging' into request-proxy 2024-09-11 23:23:46 +03:00
Cohee
a88b4232a0 Merge branch 'release' into staging 2024-09-11 23:23:35 +03:00
Cohee
d201637d67 Fix npm audit 2024-09-11 23:23:21 +03:00
Cohee
ac03cbb0ab Merge pull request #2826 from SillyTavern/fix-ask
Fix restoration of current character after /ask
2024-09-11 22:51:28 +03:00
Cohee
ab06aa4bf5 Add support for outgoing request proxying
Closes #2824
2024-09-11 22:36:50 +03:00
Cohee
80d27273a2 Add polyfill for toSorted
Fixes #2827
2024-09-11 20:35:42 +03:00
Cohee
e0c3ac84a2 Fix alignment of swipe counter 2024-09-11 19:52:31 +03:00
Cohee
86d9a80ff8 Fix restoration of current character after /ask
Fixes #2825
2024-09-11 19:34:26 +03:00
Cohee
9e522b0330 #1358 Add findLastIndex polyfill for old Safari 2024-09-11 19:22:31 +03:00
Wolfsblvt
f6b240b294 Add Assistant to char enum provider 2024-09-10 22:15:56 +02:00
Wolfsblvt
fbcd546db2 Fix lint issues in enum providers 2024-09-10 22:08:36 +02:00
Cohee
c4cc33cad9 Merge pull request #2823 from SillyTavern/fix-sendas-forced-avatar
Fix `/sendas` to not always enforce avatar, if not needed in solo chats
2024-09-10 22:38:44 +03:00
Cohee
aed4a8e36d It was very close. 2024-09-10 22:37:53 +03:00
Cohee
ea6fa265c7 /instruct command: add forceGet argument. Document that it enables instruct mode if disabled. 2024-09-10 22:33:00 +03:00
Cohee
59e9fda312 /instruct command: don't return current template name if instruct mode is disabled 2024-09-10 22:20:54 +03:00
Wolfsblvt
748005b903 Remove unnecessary double popup for replace 2024-09-10 21:19:35 +02:00
Wolfsblvt
27e0905a1b Changes based on code review 2024-09-10 21:06:31 +02:00
Wolfsblvt
d21b24666a fix neutral avatar again 2024-09-10 20:02:26 +02:00
Wolfsblvt
a989ccf318 Don't force avatar on neutral assistant chat 2024-09-10 19:44:27 +02:00
Wolfsblvt
9e73e2598e Small fix group chats not using default avatars 2024-09-10 19:15:49 +02:00
Wolfsblvt
894b95679c Merge branch 'staging' into small-bookmark-updates 2024-09-10 19:05:05 +02:00
Wolfsblvt
10a23012f3 Fix /sendas not needed to enforce avatar
- Fixes #2820
2024-09-10 18:46:38 +02:00
Cohee
e5f42253c6 Merge branch 'release' into staging 2024-09-10 14:47:38 +00:00
Cohee
78a25f361b Bump dependencies 2024-09-10 14:47:11 +00:00
Cohee
87f2dd9ae5 Remove pollinations refine toggle 2024-09-10 10:54:41 +00:00
Cohee
8948354bf0 Load pollinations models from an endpoint 2024-09-10 10:51:48 +00:00
Cohee
4522d3cbae Filter null-values from /model selection 2024-09-10 10:25:23 +00:00
Cohee
b2705d1396 Merge pull request #2806 from SillyTavern/bypass-command-string-parser
Execute profile commands callbacks directly
2024-09-10 12:06:10 +03:00
Cohee
1582974ba9 Fix context checkbox squish 2024-09-10 11:48:33 +03:00
Cohee
ec0e31482d Tabby inline model disclaimer 2024-09-10 01:36:29 +03:00
Cohee
b0214298fd Merge pull request #2810 from SillyTavern/tabby-models-list
Tabby models list
2024-09-10 00:37:31 +03:00
Cohee
7c73792f8a Extend inline loading hint 2024-09-10 00:03:44 +03:00
Cohee
4464d3a47f Merge pull request #2817 from SillyTavern/emit-on-stream-error
Emit message events on stream abortion
2024-09-09 22:17:22 +03:00
Cohee
dc3be8afc1 Merge branch 'staging' into tabby-models-list 2024-09-09 22:09:47 +03:00
Cohee
e9c3374579 Fix the UI Theme menu being literally unusable 2024-09-09 21:16:08 +03:00
Cohee
075391e720 Add continue type to not-emit list 2024-09-09 20:46:29 +03:00
Cohee
70450d7867 Emit message events on stream abortion 2024-09-09 20:39:30 +03:00
Cohee
58238fe42b Merge pull request #2812 from imesha10/staging
Fix to BR #2811 - Renaming character in Group Chat does not select the right character and renames the wrong character
2024-09-09 20:27:00 +03:00
Cohee
e277f24709 Merge pull request #2815 from sm1945/staging
update vi-vn.json localization file
2024-09-09 20:21:24 +03:00
Cohee
79d037e7e8 Add new pollinations flux models 2024-09-09 20:19:12 +03:00
sm1945
49d1a20dfb update vi-vn.json localization file
updates vietnamese locale file to sound more natural, logical and less google translated
2024-09-09 23:14:00 +07:00
RossAscends
0109242f85 OCD-havers rejoice 2024-09-09 17:13:26 +09:00
I
448af33b4d Update script.js - fixes group chat this_chid being set twice in character edit panel 2024-09-09 00:17:19 -04:00
RossAscends
58d17d4bd9 prettily support more than 999 swipes 2024-09-09 12:36:58 +09:00
RossAscends
daeef9407d fix sampler select color highlights 2024-09-09 11:29:04 +09:00
Cohee
725aff3474 Display API and model used in itemization 2024-09-09 00:26:06 +03:00
Cohee
0811ec7fc3 Use Tabby-recognizable YAML 2024-09-08 23:56:10 +03:00
Cohee
0c9f2e91eb Merge branch 'staging' into tabby-models-list 2024-09-08 23:53:53 +03:00
Cohee
75e279091c Fix open drawer sizing issues in Firefox 2024-09-08 23:41:26 +03:00
Cohee
038b9b95ce Remove stray tags 2024-09-08 23:26:13 +03:00
Cohee
7534e137ae Parse Tabby streaming error. 2024-09-08 22:24:03 +03:00
Cohee
42fa3c79d7 Add Tabby model selection 2024-09-08 22:23:25 +03:00
Cohee
1c421cc117 Await GENERATION_STARTED event 2024-09-08 19:19:18 +03:00
Cohee
3bf801aeee Don't trigger "Send" to continue if pending file attachments
Fixes #2763
2024-09-08 19:15:50 +03:00
Cohee
f5873aec25 Add format selector to /listinjects 2024-09-08 18:24:12 +03:00
Cohee
0db9bc6591 Fix attachments being sent on irregular generation types
Fixes #2763
2024-09-08 18:11:38 +03:00
刘悦
b9ed37f985 Update index.js 2024-09-08 23:00:25 +08:00
刘悦
fe34f0d1c4 Add files via upload 2024-09-08 22:57:43 +08:00
Cohee
5e522d6e35 Merge pull request #2805 from SillyTavern/gemini-vision-fix
Fix Gemini multimodal with JPG images
2024-09-08 17:51:20 +03:00
Cohee
be145c0bff Add missing return type 2024-09-08 17:24:42 +03:00
Cohee
5ab781ab30 Unbreak timelines 2024-09-08 14:33:52 +03:00
Cohee
95dd58ad95 Don't use classic Mac line endings 2024-09-08 14:33:02 +03:00
Cohee
4e84120981 Consistent error logging 2024-09-08 13:32:56 +03:00
Cohee
f926d9abd7 Execute profile commands callbacks directly 2024-09-08 13:31:32 +03:00
刘悦
b6c270c642 Update cosyvoice.js
add project url
2024-09-08 16:14:24 +08:00
刘悦
546d05b246 Update cosyvoice.js
fix comments
2024-09-08 15:56:19 +08:00
Cohee
8bb964515a Fix Gemini multimodal with JPG images
Fixes #2763
2024-09-08 10:48:28 +03:00
刘悦
5281bb9b59 Update index.js 2024-09-08 15:23:48 +08:00
刘悦
a2b4f03d9d Add files via upload 2024-09-08 15:21:37 +08:00
Cohee
85ebf3116e Add link to the doc 2024-09-08 09:27:03 +03:00
Wolfsblvt
22d2b7d2a2 Add slash commands for checkpoints and branch 2024-09-08 03:28:54 +02:00
Cohee
d9ea3d48dd Merge pull request #2797 from SillyTavern/connection-manager
Implement Connection Manager
2024-09-08 02:56:15 +03:00
Wolfsblvt
c765057684 Disable buttons on <None> option 2024-09-08 01:18:44 +02:00
Cohee
6f9846a290 #2763 Add error handler to image token cost calculation 2024-09-08 02:16:54 +03:00
Wolfsblvt
4ba99412af Refactor args for context/instruct select 2024-09-08 01:00:50 +02:00
Wolfsblvt
cb9e73deca Refactor bookmarks with correct async and export 2024-09-08 00:41:14 +02:00
Cohee
44ddec88fe Rename extension manifest 2024-09-08 01:35:59 +03:00
Wolfsblvt
6c0ecdef69 Refactor move bookmark functionality 2024-09-08 00:34:03 +02:00
Cohee
6aa9608b8e Forgor the spinner 2024-09-08 01:21:04 +03:00
Wolfsblvt
6c94297724 Expand checkpoint tooltip to contain name 2024-09-08 00:20:56 +02:00
Cohee
38751d4fe2 Replace details view toggle with a button 2024-09-08 01:19:52 +03:00
Wolfsblvt
3217087b0b Refactor checkpoint popups 2024-09-08 00:06:19 +02:00
Wolfsblvt
6a4ba1344f Remove legacy bookmark messages 2024-09-07 23:55:45 +02:00
Wolfsblvt
f5d164302b Remove double flags for bookmarks
- Remove the double flag if a checkpoint exists
- Add the "replace checkpoint" functionality as a Shift+Click option to the checkpoint flag
2024-09-07 23:55:34 +02:00
Wolfsblvt
7952b5f2c9 Handle aborting status check gracefully 2024-09-07 23:27:46 +02:00
Wolfsblvt
d5b9231157 Update toeast message 2024-09-07 23:00:12 +02:00
Cohee
d99dfb9168 Add spinner to indicate profile application 2024-09-07 23:53:22 +03:00
Cohee
669c49ebba Merge branch 'staging' into connection-manager 2024-09-07 23:23:26 +03:00
Cohee
37b3184cda Merge pull request #2794 from SillyTavern/more-tokenizers
Implement downloadable tokenizers
2024-09-07 23:17:52 +03:00
Cohee
a6e5024122 Merge pull request #2787 from SillyTavern/more-autofit
Implement more smart textarea autosizes
2024-09-07 23:04:43 +03:00
Wolfsblvt
5e0a61bab2 Half-fix for scrollbar white corner on Chrome 2024-09-07 21:33:36 +02:00
Cohee
97a2c4b2c7 Add quiet arg to /context 2024-09-07 21:40:21 +03:00
Cohee
10ddf77948 Await for profiles loading before continuing 2024-09-07 21:33:31 +03:00
Cohee
739d0c95c3 Require unique names for profiles 2024-09-07 21:21:46 +03:00
Cohee
827fce4542 Move string utils to shared module 2024-09-07 21:19:33 +03:00
Cohee
70ff35b4c3 Use consistent icons 2024-09-07 21:11:06 +03:00
Cohee
00f6941e93 Fix review comments 2024-09-07 21:08:37 +03:00
Cohee
1af59f303f Merge branch 'staging' into connection-manager 2024-09-07 20:57:06 +03:00
Wolfsblvt
7e64d216c3 Fix type not returning profile name 2024-09-07 19:32:58 +02:00
Cohee
4f5097915e Merge pull request #2801 from bdashore3/staging
Index: Unlock DRY for tabbyAPI
2024-09-07 19:56:19 +03:00
Cohee
afd72f9f12 Unhide ban_eos_token for koboldcpp
Closes #2791
2024-09-07 19:46:47 +03:00
Cohee
c06b239e20 Add missing OpenRouter multimodal caption models 2024-09-07 19:43:25 +03:00
kingbri
d595f94fc7 Index: Unlock DRY for tabbyAPI
Supported in ExllamaV2's dev wheels.

Signed-off-by: kingbri <bdashore3@proton.me>
2024-09-07 12:40:26 -04:00
Cohee
3635d84d72 Add Gemini subversions to multimodal caption 2024-09-07 19:37:37 +03:00
Cohee
4fd7828a9b Add /profile-get command 2024-09-07 17:13:32 +03:00
Cohee
065daa7599 Add commands to list, create, update profiles 2024-09-07 14:56:30 +03:00
Cohee
aa3cb62b4c Fix /echo escapeHtml being false by default 2024-09-07 14:46:21 +03:00
Cohee
24e8077997 Fix /echo escapeHtml being false by default 2024-09-07 14:03:00 +03:00
Cohee
bcac8c065b Add command for switching profiles 2024-09-07 13:58:46 +03:00
Cohee
6d9c64f38e Add dynamic i18n to profile views 2024-09-07 13:36:21 +03:00
Cohee
c77c3d8f37 Extend quiet effect in /model 2024-09-07 13:36:21 +03:00
Cohee
4cd025cd7a Extend quiet effect in /model 2024-09-07 13:30:26 +03:00
Cohee
e77f5a1c93 Set api-url with connection-manager 2024-09-07 13:24:56 +03:00
Cohee
f4da527d95 Merge branch 'staging' into connection-manager 2024-09-07 13:11:03 +03:00
Cohee
ed115d4e11 Add quiet argument to /api-url 2024-09-07 13:09:10 +03:00
Cohee
b4948ec842 Merge pull request #2799 from SillyTavern/bg-menu-title 2024-09-07 12:07:04 +03:00
Wolfsblvt
59fe361fa6 Update AI Horde links 2024-09-07 01:32:58 +02:00
Cohee
01b6ddbf8a Merge pull request #2798 from SillyTavern/popup-command-styles
Expand `/popup` command and refactor a bit
2024-09-07 02:28:06 +03:00
Wolfsblvt
2385c5a59a Change popup cancel result in command to empty str 2024-09-07 01:21:04 +02:00
Cohee
8f6fe384a8 Add title to BG menu 2024-09-07 01:35:36 +03:00
Cohee
916d73da4c Display profile name in delete confirmation 2024-09-07 01:18:35 +03:00
Cohee
0019da260c Use UUIDv4 for profile IDs 2024-09-07 01:12:53 +03:00
Wolfsblvt
43b08cdd64 Refactor /popup to actual booleans
- still supports on/off, no worries.
2024-09-06 23:56:26 +02:00
Cohee
d7011e8a11 Add i18n attributes 2024-09-07 00:41:48 +03:00
Cohee
c4aa79a8e1 Don't display toast on updating empty profile 2024-09-07 00:30:47 +03:00
Wolfsblvt
a3468db94e Allow /popup to optionally return popup result 2024-09-06 23:29:18 +02:00
Cohee
4c4477098d Fix saving null profiles 2024-09-07 00:27:52 +03:00
Cohee
7dc1c9f7ab Add connection manager as a core extension 2024-09-07 00:23:42 +03:00
Wolfsblvt
e4e10c3d6b /popup allow header arg, with sanitization 2024-09-06 23:14:52 +02:00
Wolfsblvt
a9c0dd38c7 Refactor /popup args and docs, add 'cancelButton' 2024-09-06 22:38:02 +02:00
Cohee
42b1a368cb Fix instruct toggle commands not working 2024-09-06 23:27:42 +03:00
Wolfsblvt
a9e4bef01b Add wider and transparent styles to /popup 2024-09-06 22:22:35 +02:00
Cohee
3bea7d4885 Add /instruct-state command 2024-09-06 23:16:11 +03:00
Cohee
c68b344b60 Add quiet args to /instruct and /model 2024-09-06 23:09:06 +03:00
Cohee
b0b9558a6c Merge pull request #2795 from SillyTavern/expand-echo-command
Expand `/echo` command with `cssClass`, `color`, `escapeHtml` and `onClick`
2024-09-06 23:08:04 +03:00
Cohee
50217e37b8 Spell CSS consistently 2024-09-06 22:27:53 +03:00
Wolfsblvt
63c6fbaf58 /echo html allowed sanitize title too 2024-09-06 21:18:16 +02:00
Wolfsblvt
50a716a593 Update /echo docs helpstring 2024-09-06 20:53:39 +02:00
Wolfsblvt
5065892d04 Merge pull request #2796 from underscorex86/patch-1
Update slash-commands.js
2024-09-06 20:44:52 +02:00
Sneha C
fc942842b9 Update slash-commands.js
added some examples to /echo command
2024-09-06 22:39:30 +04:00
Wolfsblvt
25d8286dfc DOM.purify toast if HTML is allowed 2024-09-06 20:31:13 +02:00
Wolfsblvt
0d9843cdd6 clear onProgress before closure for no progress 2024-09-06 20:21:32 +02:00
Wolfsblvt
ad04d0c9a2 Fix async closure call not clearing progress 2024-09-06 20:01:45 +02:00
Wolfsblvt
e48ff8daae Add check for closure type 2024-09-06 19:49:32 +02:00
Wolfsblvt
de8732fad6 Add onClick arg to /echo executing closures
- Adds the 'onclick' slash command arg to /echo
- It utilizes the Closure object without serialization, using the exact same scope it received on creation. Should be mindful about memory leaks and possible parallel execution.
2024-09-06 19:32:35 +02:00
Wolfsblvt
885a014507 Add escapeHtml arg to /echo 2024-09-06 19:03:21 +02:00
Wolfsblvt
a4e72da40f Add color arg to /echo for custom color 2024-09-06 18:55:50 +02:00
Wolfsblvt
c9ed91099f Add cssClass arg to /echo 2024-09-06 18:46:35 +02:00
Cohee
81251b073a Implement downloadable tokenizers
Closes #2574, #2754
2024-09-06 16:28:34 +00:00
Cohee
b83cfa07c9 Merge pull request #2792 from LenAnderson/fa-picker-alt-classnames
Make alternative class names searchable in FontAwesome icon picker | /pick-icon
2024-09-06 17:29:40 +03:00
Cohee
a5bf15ccdc Wider 'No icons found' text 2024-09-06 14:27:08 +00:00
Cohee
bcd8a28367 Case-insensitive icon search 2024-09-06 14:22:36 +00:00
LenAnderson
0388d3eb6c make alternative class names searchable in FontAwesome icon picker 2024-09-06 10:07:50 -04:00
Cohee
4a9401bfe2 Add disclaimers to translated readmes 2024-09-06 12:56:56 +00:00
Cohee
930015f876 Remove Extras link from readme and HTML 2024-09-06 12:48:12 +00:00
Cohee
3a68dbfd58 Adjust padding for no avatars mode 2024-09-06 12:09:31 +00:00
Cohee
d5c26032aa Merge pull request #2788 from SillyTavern/charlistgrid-load
Less horrible charListGrid load
2024-09-06 10:29:29 +03:00
Cohee
c7af3d826e Merge pull request #2790 from khanonnie/fix-input-checkbox-squish 2024-09-06 09:55:54 +03:00
khanon
21cdf49322 fixes single-line inputs and textboxes squished when saving 2024-09-06 01:30:50 +00:00
Wolfsblvt
e3f4b554c7 I wiped, I swear 2024-09-05 23:12:45 +02:00
Cohee
3e3597673b Less horrible charListGrid load 2024-09-05 21:22:54 +03:00
Cohee
75c6bee350 Filter inclusion groups by timed effects (#2765)
* Filter inclusion groups by timed effects
Closes #2762

* Skip group scoring check if sticky entries are present

* Optimize sticky checks
2024-09-05 21:15:45 +03:00
Cohee
2f5e40691c Implement more smart textarea autosizes 2024-09-05 20:55:06 +03:00
Cohee
758c90be00 Merge pull request #2786 from SillyTavern/textarea-revert-nyxFix
initial reversion commit
2024-09-05 20:29:36 +03:00
Cohee
185079595d Disabled cursor behaves weirdly 2024-09-05 20:22:36 +03:00
Cohee
e335b62b0b Remove CSS height set on system sequences 2024-09-05 20:20:42 +03:00
Cohee
733bb84044 Fix "system as user" toggle 2024-09-05 20:16:58 +03:00
Cohee
5c7b95cc15 Move CSS check up 2024-09-05 20:13:59 +03:00
Cohee
1d390195fe Remove obsolete styles 2024-09-05 20:12:29 +03:00
Cohee
dec85c42f7 These should be function calls 2024-09-05 20:07:37 +03:00
Cohee
ac0c33eb76 Use CSS.supports to determine auto-fit validity 2024-09-05 20:00:45 +03:00
RossAscends
8e1dad6800 initial reversion commit 2024-09-06 01:48:21 +09:00
Cohee
b5b01a1a5c Merge pull request #2774 from SillyTavern/classify-slash-commands-with-api
Expanded classify slash commands (add Classifier API to `/classify` and allow prompt override, new `classify-expressions`)
2024-09-05 10:52:18 +03:00
Cohee
85773ace79 Add format arg for classify-expressions 2024-09-05 10:48:46 +03:00
Cohee
b4ecba2a45 Fix macro not replacing in custom prompt 2024-09-05 10:23:51 +03:00
Cohee
5490f9522a Merge pull request #2784 from M0ch0/staging
Fixed an issue where the text inside the buttons in the API connection menu became vertically long and difficult to read in a multi-byte character environment.
2024-09-05 10:22:02 +03:00
Cohee
a82617be5b Merge pull request #2773 from SillyTavern/fix-wi-sticky-on-recursion
Fix WI sticky possibly not sticking with delay until recursion when inclusion group is set too
2024-09-05 10:10:19 +03:00
M0cho
97b4c069d8 Fixed a problem in multi-byte env.
Fixed an issue where the text inside the buttons in the API connection menu became vertically long and difficult to read in a multi-byte character environment.
2024-09-05 16:07:20 +09:00
Cohee
479923fdf8 Merge pull request #2775 from FriedCaper/summarize-restore-tooltip
Add tooltip to Restore Previous button in Summarize plugin
2024-09-05 09:49:56 +03:00
RossAscends
ff268bbce9 Merge branch 'staging' of https://github.com/Cohee1207/SillyTavern into staging 2024-09-05 14:36:42 +09:00
RossAscends
d29129f301 contenteditable related CSS fixes 2024-09-05 14:36:40 +09:00
Wolfsblvt
b44994a11d Merge pull request #2776 from LenAnderson/fix-fix-fancy-click-target
Fix the fix (fix fancy click target)
2024-09-05 04:02:20 +02:00
LenAnderson
c6404a6401 should look for both .regex-highlight and .item for plaintext 2024-09-04 21:44:37 -04:00
FriedCaper
4eefa396d6 Add tooltip to Restore button in Summarize plugin
Including a hint that you can use it repeatedly to roll back all
previously stored summaries.
2024-09-05 00:17:21 +00:00
Wolfsblvt
d62f18b523 Add missing await 2024-09-05 00:34:52 +02:00
Wolfsblvt
3b10ae00c7 Add /classify-expressions to retrieve emote list 2024-09-05 00:24:10 +02:00
Wolfsblvt
2472b26057 /classify allows custom prompt for LLM api 2024-09-05 00:13:54 +02:00
Wolfsblvt
a37b805a5d /classify can specify classier API as argument 2024-09-05 00:06:14 +02:00
Wolfsblvt
0284698428 Fix WI sticky possibly not sticking on recursion
- When a WI entry has sticky, and inclusion group and "delay until recursion" set, another entry from the same group might prevent the sticky from activating. This is fixed here.
2024-09-04 22:39:32 +02:00
Cohee
58e6ae2fc5 Merge pull request #2769 from SillyTavern/fix-swipes-with-floating-prompts
Allow mobile swipes with open panels if focused
2024-09-04 22:42:02 +03:00
Wolfsblvt
88f741b301 Fix swipe gesture, using target 2024-09-04 21:17:07 +02:00
Cohee
0b89c8aee9 Remove async in theme toggles load 2024-09-04 22:15:29 +03:00
Cohee
26635f9f10 Merge branch 'staging' into fix-swipes-with-floating-prompts 2024-09-04 21:53:25 +03:00
Cohee
7e5417c072 Fix no-char mode not using persona description 2024-09-04 21:51:15 +03:00
Cohee
49f411b9fa No need to async when returning promise 2024-09-04 21:18:22 +03:00
Cohee
f262eb256a Change no-char hint text 2024-09-04 21:14:55 +03:00
Cohee
17c60ca916 Add /tempchat command 2024-09-04 21:12:04 +03:00
Cohee
14d6fa1129 Change seed reroll formula for Drawthings
Fixes #2770
2024-09-04 20:57:31 +03:00
Cohee
642b409c0f Merge pull request #2772 from LenAnderson/fix-fancy-click-target
fix WI fancy key click target
2024-09-04 18:13:00 +03:00
LenAnderson
0619552dbb fix WI fancy key click target 2024-09-04 11:04:18 -04:00
Cohee
4cfce43e5d Set min-height for contenteditable 2024-09-04 13:46:54 +03:00
Wolfsblvt
728a233842 Allow mobile swipes with open panels if focused
- Allow mobile swipe gestures when sheld is focused, ignoring open panels or floating prompts present now
- Fixes #2753
2024-09-04 04:45:40 +02:00
Wolfsblvt
2db344538e Fix possible background swipe gestures on popups 2024-09-04 04:37:23 +02:00
Cohee
7cba747c52 Merge pull request #2768 from SillyTavern/expand-contenteditable 2024-09-04 05:09:44 +03:00
Cohee
37bee43075 Allow expanding contenteditables 2024-09-04 03:16:47 +03:00
RossAscends
8952b93560 3-column panels become 1-column below 1000px width 2024-09-04 09:00:56 +09:00
Cohee
a71753b243 Always use 3-column layout on desktop and 1-column on phone 2024-09-04 02:43:35 +03:00
RossAscends
e0c8488c3f fix width adapting for 3-column drop down panels 2024-09-04 08:23:00 +09:00
Cohee
376e1f4ca2 Add fallback for iconv buffer decoding 2024-09-04 00:24:43 +03:00
Cohee
7040f640f4 Merge pull request #2767 from SillyTavern/af-verbiage
Update Advanced Formatting verbiage
2024-09-03 23:23:39 +03:00
Cohee
8550fd5fe6 Add tooltips to dropdowns 2024-09-03 23:21:24 +03:00
Cohee
a2710b70c1 Merge pull request #2766 from SillyTavern/wi-prefer-sticky-on-budget
Prefer stickied WI for budget-limited cases
2024-09-03 23:09:45 +03:00
Cohee
830df41380 Update Advanced Formatting verbiage 2024-09-03 22:59:41 +03:00
Wolfsblvt
a70b5af0c4 Prefer stickied WI for budget-limited cases
- Instead of processing entries by default sorting (based on order and books (char first, etc)), sticky will now be the first to process. This will make sure that stickied entries will reach the prompt, even in budget-limited scenarios.
2024-09-03 21:14:44 +02:00
Cohee
4bc1943439 Set min-height for custom CSS input 2024-09-03 22:06:24 +03:00
Cohee
03f9a89ffe Limit vertical size and add resize handles to AF [contenteditable]s 2024-09-03 21:29:50 +03:00
Cohee
f7de495321 Chat without character selected (#2757)
* WIP: Enable chatting without character selected

* Add burger menu item

* Neutral assistant chat space

* Revert "Neutral assistant chat space"

This reverts commit be2da4a629.

* Revert "Add burger menu item"

This reverts commit d4e8d990c1.

* Use simple ephemeral chats

* Only start a new assistant chat if not already in it

* Don't emit event not to clear pending files

* Allow edits, disable checkpoints and branches

* Exclude from tags, allow copy

* Allow hide/unhide

* Allow zooming avatar

* Suppress warning

* Rename neutral character

* Rename neutral back to Assistant
2024-09-03 20:36:30 +03:00
Cohee
b16915cfb9 Remove truncation_length from textgen settings 2024-09-03 14:06:10 +00:00
Cohee
fa054520b6 Remove localstorage setting migration 2024-09-03 14:05:27 +00:00
Cohee
fd75071b09 More specifity of disabled class 2024-09-03 13:02:04 +00:00
Cohee
e86629a644 Exclude classes from disabled grayout 2024-09-03 11:26:13 +00:00
Cohee
d5b1a50cca Merge pull request #2755 from equal-l2/patch-1
Cohere: added the smaller aya model
2024-09-02 19:35:10 +03:00
Cohee
bbceee0f41 Fix websearch on aya producing error 2024-09-02 19:34:09 +03:00
equal-l2
13f237059d Cohere: added the smaller aya model 2024-09-02 19:20:05 +09:00
Cohee
a0dc16d84c Extend default context size to 8k 2024-09-02 02:26:17 +03:00
Cohee
ab4385eb12 Don't scale message images with viewport 2024-09-02 02:18:29 +03:00
Cohee
527321b9e2 Fix warning toast on negative swipe id 2024-09-02 01:02:46 +03:00
Wolfsblvt
daf8c827f7 Merge pull request #2752 from SillyTavern/del-swipe-fix
Fix deleting of swipe being inconsistent via button, matching the `delswipe` slash command now
2024-09-02 00:01:37 +02:00
Cohee
5bebe6010b Merge branch 'staging' into del-swipe-fix 2024-09-02 00:56:38 +03:00
Cohee
558253e79a Better MUI i18n 2024-09-02 00:50:50 +03:00
Cohee
9b1ca607f4 Fix i18n 2024-09-02 00:40:18 +03:00
Cohee
17a25e36d7 Re-add auto-select class 2024-09-02 00:35:58 +03:00
Cohee
723145f203 Revert changes to WI active status 2024-09-02 00:34:14 +03:00
Cohee
3f4e7e95bd Revert changes to WI filter layout 2024-09-02 00:30:02 +03:00
Wolfsblvt
4e95887803 Merge branch 'staging' into del-swipe-fix 2024-09-01 23:27:25 +02:00
Wolfsblvt
e8d8915183 Fix delete swipe button being inconsistent
- Fixes #2749
2024-09-01 23:21:51 +02:00
Cohee
111c367e7d Fix image swipes 2024-09-02 00:20:43 +03:00
Cohee
a3ac1cb0c7 Merge pull request #2751 from SillyTavern/delete-newbie-mode
Delete newbie mode
2024-09-02 00:16:10 +03:00
Wolfsblvt
d663be53ac Refactor deleteSwipe from callback into func 2024-09-01 23:12:33 +02:00
Cohee
a4176ae00d Allow hiding cancel on input popup 2024-09-02 00:12:20 +03:00
Cohee
48c2646dfa Run Safari patch before loading settings 2024-09-02 00:11:59 +03:00
Cohee
5d21eebe75 Reshuffle onboarding elements 2024-09-01 23:51:21 +03:00
Cohee
61515c249f Add debug func to restart onboarding 2024-09-01 23:49:56 +03:00
Cohee
e3a6f01fdc Fix typo in getContext func 2024-09-01 23:47:55 +03:00
Cohee
2861718b09 Remove from onboarding 2024-09-01 23:46:29 +03:00
Cohee
aa62e7abc9 Remove newbie attribute part 2 2024-09-01 23:40:47 +03:00
Wolfsblvt
7b576c8067 Tooltips for instruct mode toggles 2024-09-01 22:39:22 +02:00
Cohee
4de3b10af2 Merge branch 'staging' into delete-newbie-mode 2024-09-01 23:39:21 +03:00
Cohee
9a8a958165 Remove newbie attribute part 1 2024-09-01 23:38:49 +03:00
Cohee
e3b62523ea Remove &nbsp;s 2024-09-01 23:34:45 +03:00
Cohee
ddd5dc1207 Merge pull request #2731 from SillyTavern/fix-pipe-types
Add type conversion for /setvar commands with index
2024-09-01 23:26:46 +03:00
Cohee
011f785a79 Better switch value 2024-09-01 23:25:29 +03:00
Cohee
20e5e9eeee Add example for /var with type 2024-09-01 23:07:49 +03:00
Cohee
b9cd82180f Better setvar example 2024-09-01 23:05:51 +03:00
Cohee
873f25e330 Specify JSON in /var help 2024-09-01 23:04:51 +03:00
Cohee
a993671873 Fix arg name in help string 2024-09-01 23:04:15 +03:00
Cohee
56ae9d25b0 Fix renamed argument reference 2024-09-01 23:02:01 +03:00
Cohee
6f85327078 Only convert variable if needed 2024-09-01 22:59:50 +03:00
Cohee
b56a457c6c Merge branch 'staging' into fix-pipe-types 2024-09-01 22:55:15 +03:00
Cohee
9483052b10 Merge pull request #2711 from SillyTavern/contentEditablew-AF-Panel
Content editable Advanced Formatting panel
2024-09-01 22:52:13 +03:00
Cohee
d5bc889d0e Add standout header to context formatting 2024-09-01 22:43:45 +03:00
Cohee
675f9076a4 Emit message_updated on edit cancel 2024-09-01 21:19:56 +03:00
Cohee
55e9f0174f Remove example chats concept 2024-09-01 20:14:50 +03:00
Cohee
6457532abf Remove length limits from most fields 2024-09-01 20:10:45 +03:00
Cohee
242590176f Remove length limit from NMdS 2024-09-01 20:02:05 +03:00
Cohee
0951ecc5b3 Fix i18n 2024-09-01 20:00:14 +03:00
Cohee
be03772c52 Fix instruct_system_same_as_user disabled mode heights 2024-09-01 19:45:09 +03:00
Cohee
6ba10fff06 Remove <hr>s before standout headers 2024-09-01 19:42:39 +03:00
Cohee
d5a1aef2ed Fix for disabled editables 2024-09-01 19:42:08 +03:00
Cohee
c21f59ca7a Merge branch 'staging' into contentEditablew-AF-Panel 2024-09-01 19:34:18 +03:00
Cohee
02d97f72f3 Merge pull request #2748 from SillyTavern/fix-summary
Fix automatic summarization
2024-09-01 19:33:07 +03:00
Cohee
825fb3706e Merge pull request #2745 from SillyTavern/stream-tick-event
Emit event on streaming tick
2024-09-01 19:27:38 +03:00
Cohee
1d5bd0c19e Merge pull request #2747 from issues-opener/minor-fix
Fix index.html World pin tooltip
2024-09-01 19:17:33 +03:00
Cohee
9ed436fbb2 Fix automatic summarization
Closes #2746
2024-09-01 19:10:46 +03:00
issues-opener
61ba761c0c Fix index.html World pin tooltip
In "Worlds/Lorebooks", prevent the pin/lock's tooltip to appear when hovering the question mark link to documentation.
2024-09-01 18:04:10 +02:00
Cohee
7c6e10293c Replace i18n label 2024-09-01 18:13:21 +03:00
Cohee
6a81e2affb Add missing tokenizers 2024-09-01 18:10:24 +03:00
Cohee
016e3df564 Code clean-up 2024-09-01 18:08:03 +03:00
Cohee
882e86be11 Code clean-up 2024-09-01 18:05:48 +03:00
Cohee
94ef9e8908 Await settings load 2024-09-01 18:01:21 +03:00
Cohee
2b2a29554d Clean-up HTML 2024-09-01 17:56:18 +03:00
Cohee
ff00b2c00a Fix i18n 2024-09-01 17:46:19 +03:00
Cohee
d52055f707 Centerify icon rows, fix i18n 2024-09-01 17:44:46 +03:00
Cohee
76b4c5f8c1 Add space to hotswap placeholder 2024-09-01 17:44:28 +03:00
Cohee
9ae7325100 Remove newbie mode 2024-09-01 17:39:36 +03:00
RossAscends
9e63682386 Merge branch 'contentEditablew-AF-Panel' of https://github.com/sillytavern/sillytavern into pr/Cohee1207/2711 2024-09-01 23:29:36 +09:00
RossAscends
b10b28c5c8 tooltip for custom stop string format 2024-09-01 23:29:34 +09:00
Cohee
f1f254cadf Remove contenteditable from input 2024-09-01 17:17:18 +03:00
Cohee
2447a11d5c Un-newbie some buttons 2024-09-01 17:15:45 +03:00
RossAscends
361ab2bc23 fix context settings inputs not showing newlines on initial load 2024-09-01 22:34:56 +09:00
RossAscends
24c140736d fix div text overflow from breaking columns 2024-09-01 22:00:32 +09:00
RossAscends
127a46e420 Merge branch 'staging' into pr/Cohee1207/2711 2024-09-01 19:56:42 +09:00
RossAscends
93bfe7f40b buttonify instruct header toggles, style instruct columns when disabled 2024-09-01 19:51:30 +09:00
RossAscends
3ed198deb7 header-ify custom stop strings and tokenizer sections 2024-09-01 18:43:26 +09:00
Cohee
329e395077 cast => as 2024-09-01 11:50:16 +03:00
Cohee
5d798fafdd Rename type => cast 2024-09-01 11:49:32 +03:00
Cohee
5563d49184 Don't throw in array/dict conversion 2024-09-01 11:44:56 +03:00
Cohee
bc65c5b7e7 Merge branch 'staging' into fix-pipe-types 2024-09-01 11:43:29 +03:00
RossAscends
2f36b659cf dumbfix heights of disabled instruct system sequence fields 2024-09-01 17:41:48 +09:00
Cohee
9a6a82b400 Emit event on streaming tick 2024-09-01 11:35:09 +03:00
Wolfsblvt
f1a6303760 Merge pull request #2744 from SillyTavern/fix-char-list-scrollheight
Fix "hidden" block in char list messing up scroll
2024-09-01 10:17:54 +02:00
RossAscends
1d4deee81d Merge branch 'contentEditablew-AF-Panel' of https://github.com/sillytavern/sillytavern into pr/Cohee1207/2711 2024-09-01 13:47:31 +09:00
RossAscends
b835a4c47b activation regex before sys prompt, template save text to sequences header 2024-09-01 13:47:23 +09:00
RossAscends
be178b1cf4 tweak layout 2024-09-01 13:42:41 +09:00
Wolfsblvt
bd52d737bf Fix "hidden" block in char list messing up scroll
- Fixes #2743
2024-09-01 06:21:26 +02:00
RossAscends
174c178485 Merge branch 'staging' of https://github.com/Cohee1207/SillyTavern into staging 2024-09-01 12:01:55 +09:00
RossAscends
627e44ba49 improve tooltip for Tabby Banned tokens sampler (incl. banned strings help text) 2024-09-01 12:01:52 +09:00
Wolfsblvt
b08e55b9f6 WI highlight/log on automatic setting change 2024-08-31 22:20:35 +02:00
Cohee
cd8dd5fc8a XTC for ooba 2024-08-31 20:31:34 +03:00
Cohee
e690a87294 Merge pull request #2741 from SillyTavern/xtc-koboldcpp
XTC for koboldcpp
2024-08-31 20:28:22 +03:00
Cohee
d225c05457 Remove empty line 2024-08-31 20:27:36 +03:00
Cohee
ae2d0f04ed Add XTC for koboldcpp 2024-08-31 20:18:51 +03:00
Cohee
4dbed09505 Merge branch 'staging' into feat/xtc 2024-08-31 20:03:46 +03:00
Cohee
367ae81251 Merge pull request #2735 from toastli/patch-1
Change interactive widget to resizes content.
2024-08-31 03:40:54 +03:00
Cohee
293676feff Cohere: unbreak requires for old models 2024-08-30 23:32:09 +03:00
Cohee
b9543054d8 Chat Completion: Increase unlocked context size 2024-08-30 21:47:26 +03:00
Cohee
f155b83792 Cohere: new cmd-r models 2024-08-30 20:00:42 +03:00
Cohee
1fa9710a5c Fix bulk delete async hell (#2730)
* Fix bulk delete async hell

* Remove refresh flag (always refresh)

* Don't throw on deletion fetch failed

* Clear toast on bulk finish
2024-08-30 19:52:57 +03:00
Cohee
e6021bda1c Merge pull request #2726 from imesha10/staging
Remove Claude user message filler limit
2024-08-30 01:13:28 +03:00
Cohee
9010880b64 Fix last prompt line not counted toward token limit 2024-08-30 00:00:51 +03:00
Cohee
b21ba850c0 Fix not counting chat separator and preamble toward token limit 2024-08-29 23:36:07 +03:00
Cohee
2b904bb170 NovelAI: Adjust Kayra max length on subscription tier 2024-08-29 23:28:23 +03:00
Cohee
bdc335d238 NovelAI: Update API URL for Kayra 2024-08-29 22:32:56 +03:00
Cohee
9558e14081 Revert bad reformat 2024-08-29 13:04:46 +00:00
Cohee
3746f08590 Add type conversion for /setvar commands with index 2024-08-29 12:55:54 +00:00
toastli
7c418888de Change interactive widget to resizes content.
Prevents chrome on android from sliding up the entire viewport and instead resizes
2024-08-29 19:47:19 +10:00
Cohee
7aaabbd2bb Personas: fix duplication in Chat Completions 2024-08-28 22:44:26 +03:00
Cohee
07a6e1aa53 Merge pull request #2708 from Yokayo/staging
Update ru-ru translation
2024-08-28 21:23:45 +03:00
Cohee
c820d5f56a Reformat code 2024-08-28 21:20:21 +03:00
Cohee
e11e7b7d52 Translate message copy 2024-08-28 21:15:20 +03:00
Cohee
c3a253baf3 Persona: add None position, fix double insert on In-chat position 2024-08-28 21:08:32 +03:00
zhongerxll
13a8f23ace Update constants.js 2024-08-28 10:21:37 -05:00
Cohee
6e7c72364f Merge pull request #2727 from M0ch0/staging
Support gemini-1.5-series-exp-0827
2024-08-28 09:51:04 +03:00
M0cho
268aeb0ae5 Support gemini-1.5-exp-0827 2024-08-28 08:24:04 +09:00
Imesha Maldeniya
4525061814 Update index.html - Fixed claude system prompt character limit
Removed the maxlength property for the textarea.
2024-08-27 18:09:52 -04:00
Cohee
da96bf3c29 Fix showdown patch registration 2024-08-27 10:50:24 +00:00
Cohee
3da79ebcff Patch showdown for span nesting limit
Closes #2722 #2714
2024-08-27 10:39:45 +00:00
Cohee
3806dcf9fb Fix uuidv4 on Node 18
Closes #2718
2024-08-27 09:35:00 +00:00
Cohee
a0a1847634 Handle non-streaming errors as 500 2024-08-27 09:27:56 +00:00
Cohee
c45e212b31 Fix negative penalties 2024-08-27 09:19:05 +00:00
Cohee
e8de36a0d0 Cohere: limit penalties 2024-08-27 12:03:40 +03:00
Cohee
ebab976221 Cohere: new stream parser 2024-08-27 12:03:31 +03:00
Cohee
9286daaf3f More reliable Cohere stream parsing 2024-08-26 20:35:23 +03:00
Cohee
00ff2875ab Merge pull request #2715 from Succubyss/patch-6
`STRICT_ESCAPING` & `REPLACE_GETVAR` enabled by default on new accounts
2024-08-26 18:28:49 +03:00
Succubyss
fa806707ef default: parser flags → true 2024-08-26 10:07:59 -05:00
Cohee
3700396b14 Merge pull request #2712 from SillyTavern/ai21-jamba
New AI21 Jamba + tokenizer
2024-08-26 17:35:13 +03:00
Cohee
662e29911c Fix default model when loading preset 2024-08-26 17:34:54 +03:00
Cohee
2b32c8638a Don't use user filler 2024-08-26 17:16:02 +03:00
Cohee
7d4b3e0800 Use J1.5 Large by default 2024-08-26 12:11:29 +03:00
Cohee
5fc16a2474 New AI21 Jamba + tokenizer 2024-08-26 12:07:36 +03:00
Cohee
ff834efde3 Exit server process on config.yaml read errors 2024-08-26 11:06:30 +03:00
Cohee
8be21fc5c4 Swap RVC function/setting checks 2024-08-26 10:30:17 +03:00
RossAscends
64d3ed4680 Merge branch 'staging' into pr/Cohee1207/2711 2024-08-26 06:48:00 +09:00
Cohee
d014b6bbea Merge branch 'release' into staging 2024-08-25 23:05:59 +03:00
Cohee
5b8681ea97 Merge pull request #2710 from SillyTavern/dependabot/npm_and_yarn/tests/micromatch-4.0.8
Bump micromatch from 4.0.7 to 4.0.8 in /tests
2024-08-25 23:03:39 +03:00
dependabot[bot]
066d964705 Bump micromatch from 4.0.7 to 4.0.8 in /tests
Bumps [micromatch](https://github.com/micromatch/micromatch) from 4.0.7 to 4.0.8.
- [Release notes](https://github.com/micromatch/micromatch/releases)
- [Changelog](https://github.com/micromatch/micromatch/blob/4.0.8/CHANGELOG.md)
- [Commits](https://github.com/micromatch/micromatch/compare/4.0.7...4.0.8)

---
updated-dependencies:
- dependency-name: micromatch
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-08-25 20:02:40 +00:00
Cohee
0586bd6db0 Fix hosting on default protocol ports
Closes #2709
2024-08-25 23:00:19 +03:00
Cohee
796b02bb03 Fix hosting on default protocol ports
Closes #2709
2024-08-25 22:59:07 +03:00
Cohee
5d48e081a6 Upscale default avatars 2024-08-25 22:04:08 +03:00
Yokayo
15a6b6100e Fix syntax error 2024-08-26 02:00:52 +07:00
Yokayo
c807e9f36c Merge branch 'staging' of https://github.com/SillyTavern/SillyTavern into staging 2024-08-26 01:42:41 +07:00
Yokayo
383d46fe4d Work on tl 2024-08-26 01:39:56 +07:00
Cohee
de91b395b0 Fix codeblock underscores with language 2024-08-25 21:18:15 +03:00
Cohee
398b64d720 Fix codeblock underscores with language 2024-08-25 21:17:59 +03:00
Cohee
60c22bf803 Add config value for extensions auto-update 2024-08-25 19:48:01 +03:00
Cohee
0fb528ac09 Fix crash on Chrome 128 2024-08-25 19:27:52 +03:00
Cohee
0f5179ed2d Fix crash on Chrome 128 2024-08-25 19:27:18 +03:00
Cohee
088aeaf422 Fix default values for power_user toggles 2024-08-25 16:50:28 +03:00
Cohee
eb015e4a9a Update default themes and settings 2024-08-25 16:43:50 +03:00
Cohee
b5a60d510d Update alpine version in dockerfile 2024-08-25 16:17:24 +03:00
Cohee
61c148a5f0 Save settings after switching style toggle 2024-08-25 15:48:20 +03:00
Cohee
f8c631b4aa Migrate legacy avatars enabled setting from localstorage 2024-08-25 15:45:39 +03:00
Cohee
0fd2b8055f Fix typo in hideChatAvatarsEnabled selector 2024-08-25 15:29:14 +03:00
Cohee
87dd120ec0 Move trimToEnd at the end of message clean-up 2024-08-25 14:37:44 +03:00
Cohee
e1b7660448 Merge pull request #2707 from AlpinDale/aphrodite-tokenizer
fix: pass model parameter for aphrodite tokenizer
2024-08-25 12:04:05 +03:00
Cohee
06ef515b2f Merge pull request #2706 from d-ber/saveMoreSettings
Save more settings
2024-08-25 11:59:35 +03:00
AlpinDale
62fed2ff6a fix: pass model parameter for aphrodite tokenizer 2024-08-24 22:43:20 +00:00
Cohee
94d4fcc651 UX: Increase font scale slider range 2024-08-24 22:59:01 +03:00
Cohee
0d88675c46 Remove the rest of local storage settings 2024-08-24 22:53:50 +03:00
d-ber
cf828bca71 Use saved settings for more properties 2024-08-23 23:36:17 +02:00
d-ber
87ff99709f Use saved settings for more properties 2024-08-23 19:49:30 +02:00
d-ber
d153991a11 Use saved settings instead of local storage
noShadows, fast_ui_mode, avatar_style and hotswap_enabled are now using settings json instead of local storage.
2024-08-23 19:22:00 +02:00
Cohee
696c83f96d [chore] Fix eslint 2024-08-19 21:36:28 +03:00
Cohee
d77363cd7c Merge branch 'staging' into feat/xtc 2024-08-19 21:35:35 +03:00
Vitor Lima
60e735102f XTC Threshold -> Threshold
Co-authored-by: Philipp Emanuel Weidmann <pew@worldwidemann.com>
2024-08-19 03:24:00 -03:00
Vitor Lima
ec13405f64 XTC Probability -> Probability
Co-authored-by: Philipp Emanuel Weidmann <pew@worldwidemann.com>
2024-08-19 03:23:45 -03:00
Vitor Lima
c1c2923bd5 Fix description
Co-authored-by: Philipp Emanuel Weidmann <pew@worldwidemann.com>
2024-08-19 03:21:29 -03:00
Vitor Lima
3070947ddc Update public/index.html
Fix name

Co-authored-by: Philipp Emanuel Weidmann <pew@worldwidemann.com>
2024-08-19 03:20:54 -03:00
Vitor
e28257096a added xtc parameter for ooba 2024-08-19 01:32:45 -03:00
RossAscends
a764e2d6bf AF panel 3column reshuffle, autoComplete to UserSettings, collaspify Auto* settings 2024-08-06 00:39:17 +09:00
RossAscends
b48d905c45 initial commit: AF panel textareas >> contentEditable divs 2024-08-05 14:30:15 +09:00
434 changed files with 32309 additions and 105661 deletions

View File

@@ -12,3 +12,4 @@ access.log
/data
/cache
.DS_Store
/public/scripts/extensions/third-party

View File

@@ -5,7 +5,7 @@ end_of_line = lf
insert_final_newline = true
trim_trailing_whitespace = true
[*.{js, conf, json, css, less, html}]
[*.{js,conf,json,css,less,html}]
charset = utf-8
indent_style = space
indent_size = 4

View File

@@ -16,6 +16,22 @@ module.exports = {
env: {
node: true,
},
parserOptions: {
sourceType: 'module',
},
globals: {
globalThis: 'readonly',
Deno: 'readonly',
},
},
{
files: ['*.cjs'],
parserOptions: {
sourceType: 'commonjs',
},
env: {
node: true,
},
},
{
files: ['src/**/*.mjs'],
@@ -38,36 +54,27 @@ module.exports = {
},
// These scripts are loaded in HTML; tell ESLint not to complain about them being undefined
globals: {
DOMPurify: 'readonly',
droll: 'readonly',
Fuse: 'readonly',
Handlebars: 'readonly',
hljs: 'readonly',
localforage: 'readonly',
moment: 'readonly',
pdfjsLib: 'readonly',
Popper: 'readonly',
showdown: 'readonly',
showdownKatex: 'readonly',
SVGInject: 'readonly',
toastr: 'readonly',
Readability: 'readonly',
isProbablyReaderable: 'readonly',
globalThis: 'readonly',
ePub: 'readonly',
diff_match_patch: 'readonly',
pdfjsLib: 'readonly',
toastr: 'readonly',
SillyTavern: 'readonly',
},
},
],
// There are various vendored libraries that shouldn't be linted
ignorePatterns: [
'public/lib/**/*',
'*.min.js',
'src/ai_horde/**/*',
'plugins/**/*',
'data/**/*',
'backups/**/*',
'node_modules/**/*',
'**/node_modules/**',
'**/dist/**',
'**/.git/**',
'public/lib/**',
'backups/**',
'data/**',
'cache/**',
'src/tokenizers/**',
'docker/**',
'plugins/**',
'**/*.min.js',
'public/scripts/extensions/quick-reply/lib/**',
],
rules: {
'no-unused-vars': ['error', { args: 'none' }],
@@ -84,6 +91,8 @@ module.exports = {
'space-infix-ops': 'error',
'no-unused-expressions': ['error', { allowShortCircuit: true, allowTernary: true }],
'no-cond-assign': 'error',
'no-unneeded-ternary': 'error',
'no-irregular-whitespace': ['error', { skipStrings: true, skipTemplates: true }],
// These rules should eventually be enabled.
'no-async-promise-executor': 'off',

383
.github/readme-de_de.md vendored Normal file
View File

@@ -0,0 +1,383 @@
> [!IMPORTANT]
> Die hier veröffentlichten Informationen sind möglicherweise veraltet oder unvollständig. Für aktuelle Informationen nutzen Sie bitte die englische Version.
> Letztes Update dieser README: 28.9.2024
<a name="readme-top"></a>
![][cover]
<div align="center">
[English](readme.md) | German | [中文](readme-zh_cn.md) | [繁體中文](readme-zh_tw.md) | [日本語](readme-ja_jp.md) | [Русский](readme-ru_ru.md) | [한국어](readme-ko_kr.md)
[![GitHub Stars](https://img.shields.io/github/stars/SillyTavern/SillyTavern.svg)](https://github.com/SillyTavern/SillyTavern/stargazers)
[![GitHub Forks](https://img.shields.io/github/forks/SillyTavern/SillyTavern.svg)](https://github.com/SillyTavern/SillyTavern/network)
[![GitHub Issues](https://img.shields.io/github/issues/SillyTavern/SillyTavern.svg)](https://github.com/SillyTavern/SillyTavern/issues)
[![GitHub Pull Requests](https://img.shields.io/github/issues-pr/SillyTavern/SillyTavern.svg)](https://github.com/SillyTavern/SillyTavern/pulls)
</div>
---
SillyTavern bietet eine einheitliche Benutzeroberfläche für viele LLM-APIs (KoboldAI/CPP, Horde, NovelAI, Ooba, Tabby, OpenAI, OpenRouter, Claude, Mistral und mehr), ein mobilfreundliches Layout, einen Visual-Novel-Modus, die Integration von Automatic1111 & ComfyUI API zur Bilderzeugung, TTS, WorldInfo (Lorebooks), anpassbare UI, automatische Übersetzung, mehr Eingabeaufforderungsoptionen, als du jemals wolltest oder brauchst, und unendliches Wachstumspotenzial durch Drittanbietererweiterungen.
Wir haben eine [Dokumentationswebsite](https://docs.sillytavern.app/), um die meisten deiner Fragen zu beantworten und dir den Einstieg zu erleichtern.
## Was ist SillyTavern?
SillyTavern (oder ST abgekürtz) ist eine lokal installierte Benutzeroberfläche, die es dir ermöglicht, mit Textgenerations-LLMs, Bildgenerierungsmaschinen und TTS-Sprachmodellen zu interagieren.
Angefangen im Februar 2023 als Fork von TavernAI 1.2.8 hat SillyTavern nun über 100 Mitwirkende und 2 Jahre unabhängiger Entwicklung hinter sich und dient weiterhin als führende Software für versierte KI-Hobbyisten.
## Unsere Vision
1. Wir möchten die Nutzer mit so viel Nutzen und Kontrolle über ihre LLM-Prompts wie möglich ausstatten. Die steile Lernkurve ist Teil des Spaßes!
2. Wir bieten weder Online- oder gehosteten Dienste an, noch verfolgen wir programmgesteuert Benutzerdaten.
3. SillyTavern ist ein Herzensprojekt, das von einer engagierten Community von LLM-Enthusiasten unterstützt wird, und wird immer kostenlos und Open Source sein.
## Branches
SillyTavern wird mit einem Branchsystem entwickelt, um ein reibungsloses Erlebnis für alle Nutzer zu gewährleisten.
* `release` -🌟 **Empfohlen für die meisten Nutzer.** Dies ist der stabilste und empfohlene Branch, der nur aktualisiert wird, wenn wichtige Versionen veröffentlicht werden. Er ist für die Mehrheit der Nutzer geeignet. Typischerweise einmal im Monat aktualisiert.
* `staging` - ⚠️ **Nicht für den gelegentlichen Gebrauch empfohlen.** Dieser Branch enthält die neuesten Funktionen, kann jedoch jederzeit instabil sein. Nur für Power-User und Enthusiasten. Mehrmals täglich aktualisiert.
Wenn du nicht vertraut mit der Verwendung der git CLI bist oder nicht verstehst, was ein Branch ist, mach dir keine Sorgen! Der Release-Branch ist immer die bevorzugte Option für dich.
## Was brauche ich zusätzlich zu SillyTavern?
Da SillyTavern nur eine Benutzeroberfläche ist, benötigst du Zugriff auf ein LLM-Backend, um Inferenz bereitzustellen. Du kannst AI Horde für sofortiges Chatten ohne weitere Einrichtung verwenden. Darüber hinaus unterstützen wir viele andere lokale und cloudbasierte LLM-Backends: OpenAI-kompatible API, KoboldAI, Tabby und viele mehr. Du kannst mehr über unsere unterstützten APIs in [der FAQ](https://docs.sillytavern.app/usage/api-connections/) lesen.
### Brauche ich einen leistungsstarken PC, um SillyTavern auszuführen?
Die Hardwareanforderungen sind minimal: Es läuft auf allem, was NodeJS 18 oder höher ausführen kann. Wenn du LLM-Inferenz auf deinem lokalen Rechner durchführen möchtest, empfehlen wir eine NVIDIA-Grafikkarte der 3000er-Serie mit mindestens 6 GB VRAM. Überprüfe die Dokumentation deines Backends für weitere Einzelheiten.
### Vorgeschlagene Backends (keine Partnerschaft oder Werbebeziehung)
* [AI Horde](https://aihorde.net/) - verwende Modelle, die von Freiwilligen gehostet werden. Erfordert keine weitere Einrichtung
* [KoboldCpp](https://github.com/LostRuins/koboldcpp) - ein Favorit der Community, um GGUF-Modelle lokal auszuführen
* [tabbyAPI](https://github.com/theroyallab/tabbyAPI) - eine beliebte, portable, speicherplatzoptimierte und lokal gehostete exl2 Inferenz-API
* [OpenRouter](https://openrouter.ai) - eine einzige API für viele Cloud-Anbieter (OpenAI, Claude, Meta Llama usw.) sowie beliebte Community-Modelle.
## Fragen oder Vorschläge?
### Discord-Server
| [![][discord-shield-badge]][discord-link] | [Tritt unserer Discord-Community bei!](https://discord.gg/sillytavern) Erhalte Unterstützung, teile deine Lieblingscharaktere und Prompts. |
| :---------------------------------------- | :----------------------------------------------------------------------------------------------------------------- |
Oder nimm direkt Kontakt mit den Entwicklern auf:
* Discord: cohee, rossascends, wolfsblvt
* Reddit: [/u/RossAscends](https://www.reddit.com/user/RossAscends/), [/u/sillylossy](https://www.reddit.com/user/sillylossy/), [u/Wolfsblvt](https://www.reddit.com/user/Wolfsblvt/)
* [Erstelle ein GitHub-Issue](https://github.com/SillyTavern/SillyTavern/issues)
### Ich mag dieses Projekt! Wie kann ich beitragen?
1. Sende Pull-Requests. Lerne, wie du beitragen kannst: [CONTRIBUTING.md](../CONTRIBUTING.md)
2. Sende Feature Requests und Issues unter Verwendung der bereitgestellten Vorlagen.
3. Lies diese gesamte README-Datei und überprüfe zuerst die Dokumentationswebsite, um doppelte Issues zu vermeiden.
## Screenshots
<img width="500" alt="image" src="https://github.com/user-attachments/assets/9b5f32f0-c3b3-4102-b3f5-0e9213c0f50f">
<img width="500" alt="image" src="https://github.com/user-attachments/assets/913fdbaa-7d33-42f1-ae2c-89dca41c53d1">
## Charakterkarten
SillyTavern basiert auf dem Konzept der "Charakterkarten". Eine Charakterkarte ist eine Sammlung von Prompts, die das Verhalten des LLM festlegen und erforderlich sind, um persistente Gespräche in SillyTavern zu führen. Sie funktionieren ähnlich wie ChatGPT's GPTs oder Poe's Bots. Der Inhalt einer Charakterkarte kann alles sein: ein abstraktes Szenario, ein Assistent, der für eine bestimmte Aufgabe maßgeschneidert ist, eine berühmte Persönlichkeit oder ein fiktiver Charakter.
Das Namensfeld ist der einzige erforderliche Eingabewert für die Charakterkarte. Um ein neutrales Gespräch mit dem LLM zu beginnen, erstelle eine neue Karte, die einfach "Assistent" genannt wird, und lasse die restlichen Felder leer. Für einen thematischeren Chat kannst du dem LLM verschiedene Hintergrundinformationen, Verhaltensweisen und Schreibmuster sowie ein Szenario geben, um das Gespräch zu beginnen.
Um ein schnelles Gespräch zu führen, ohne eine Charakterkarte auszuwählen, oder um einfach die LLM-Verbindung zu testen, gib einfach dein Prompt in die Eingabezeile auf dem Willkommensbildschirm ein, nachdem du SillyTavern geöffnet hast. Bitte beachte, dass solche Chats vorübergehend sind und nicht gespeichert werden.
Um eine allgemeine Vorstellung davon zu bekommen, wie man Charakterkarten definiert, sieh dir die mitgelieferte Charakterkarte (Seraphina) an oder lade ausgewählte von der Community erstellte Karten im Menü "Erweiterungen & Assets herunterladen" herunter.
## Wichtigste Features
* Erweiterte Text-Generierungs-Einstellungen mit vielen von der Community erstellten mitgelieferten Einstellungen (Presets)
* Unterstützung für World Info: Erstelle reichhaltige Lore oder reduziere die Tokens in deiner Charakterkarte
* Gruppenchats: Multi-Bot-Räume für Charaktere, die mit dir und/oder untereinander sprechen
* Reichhaltige UI-Anpassungsoptionen: Themes zur Farbenwahl, Hintergrundbilder, benutzerdefiniertes CSS und mehr
* Benutzer-Personas: Lass die KI ein wenig über dich wissen, um die Immersion zu erhöhen
* Eingebaute RAG-Unterstützung: Füge Dokumente zu deinen Chats hinzu, auf die die KI verweisen kann
* Umfangreiches "Chat-Befehle"-System und eigene [Scripting-Engine](https://docs.sillytavern.app/usage/st-script/)
## Erweiterungen
SillyTavern unterstützt Erweiterungen.
* Emotionale Ausdrucksformen von Charakteren (Sprites)
* Automatische Zusammenfassung des Chatverlaufs
* Automatische UI- und Chat-Übersetzung
* Bildgenerierung mit Stable Diffusion/FLUX/DALL-E
* Text-to-Speech für KI-Antwortnachrichten (über ElevenLabs, Silero oder die TTS-Funktion des Betriebssystems)
* Websuchfunktionen zum Hinzufügen zusätzlicher realer Kontexte zu deinen Eingabeaufforderungen
* Viele weitere sind im Menü "Erweiterungen & Assets herunterladen" verfügbar.
Tutorials zur Nutzung findest du in der [Dokumentation](https://docs.sillytavern.app/).
# ⌛ Installation
> \[!WARNING]
>
> * INSTALLIERE NICHT IN EINEM VON WINDOWS KONTROLLIERTEN ORDNER (Programme, System32 usw.).
> * FÜHRE START.BAT NICHT MIT ADMIN-BERECHTIGUNGEN AUS.
> * DIE INSTALLATION AUF WINDOWS 7 IST UNMÖGLICH, DA ES NODEJS 18.16 NICHT AUSFÜHREN KANN.
## 🪟 Windows
### Installation über Git
1. Installiere [NodeJS](https://nodejs.org/en) (die neueste LTS-Version wird empfohlen).
2. Installiere [Git für Windows](https://gitforwindows.org/).
3. Öffne den Windows-Explorer (`Win+E`).
4. Gehe zu oder erstelle einen Ordner, der nicht von Windows kontrolliert oder überwacht wird. (z.B.: C:\MySpecialFolder\)
5. Öffne ein Eingabeaufforderungsfenster in diesem Ordner, indem du in die 'Adressleiste' oben klickst, `cmd` eingibst und Enter drückst.
6. Sobald das schwarze Fenster (Eingabeaufforderung) erscheint, gib EINE der folgenden Optionen ein und drücke Enter:
* für den Release-Branch: `git clone https://github.com/SillyTavern/SillyTavern -b release`
* für den Staging-Branch: `git clone https://github.com/SillyTavern/SillyTavern -b staging`
7. Sobald alles geklont ist, doppelklicke auf `Start.bat`, damit NodeJS seine Anforderungen installiert.
8. Der Server wird dann gestartet, und SillyTavern wird in deinem Browser geöffnet.
### Installation über GitHub Desktop
(Dies ermöglicht die Nutzung von git **nur** in GitHub Desktop. Wenn du `git` auch in der Eingabeaufforderung verwenden möchtest, musst du auch [Git für Windows](https://gitforwindows.org/) installieren.)
1. Installiere [NodeJS](https://nodejs.org/en) (die neueste LTS-Version wird empfohlen).
2. Installiere [GitHub Desktop](https://central.github.com/deployments/desktop/desktop/latest/win32).
3. Klicke nach der Installation von GitHub Desktop auf `Ein Repository aus dem Internet klonen....` (Hinweis: Du **musst kein** GitHub-Konto für diesen Schritt erstellen).
4. Klicke im Menü auf den Tab URL, gib diese URL ein `https://github.com/SillyTavern/SillyTavern` und klicke auf Klonen. Du kannst den lokalen Pfad ändern, um festzulegen, wohin SillyTavern heruntergeladen werden soll.
5. Um SillyTavern zu öffnen, durchsuche mit dem Windows-Explorer den Ordner, in den du das Repository geklont hast. Standardmäßig wird das Repository hier hin geklont: `C:\Users\[Dein Windows-Benutzername]\Documents\GitHub\SillyTavern`.
6. Doppelklicke auf die Datei `start.bat`. (Hinweis: Der Teil `.bat` des Dateinamens könnte von deinem Betriebssystem verborgen sein. In diesem Fall sieht es aus wie eine Datei namens "`Start`". Dies ist die Datei, auf die du doppelklickst, um SillyTavern auszuführen.)
7. Nach dem Doppelklicken sollte ein großes schwarzes Konsolenfenster erscheinen, und SillyTavern beginnt, das zu installieren, was es zum Betrieb benötigt.
8. Nach dem Installationsprozess sollte das Konsolenfenster so aussehen, und ein SillyTavern-Tab sollte in deinem Browser geöffnet sein.
9. Verbinde dich mit einer der [unterstützten APIs](https://docs.sillytavern.app/usage/api-connections/) und beginne zu chatten!
## 🐧 Linux & 🍎 MacOS
Für MacOS/Linux werden all diese Schritte in einem Terminal durchgeführt.
1. Installiere git und nodeJS (die Methode zur Durchführung hängt von deinem Betriebssystem ab).
2. Klone das Repository.
* für den Release-Branch: `git clone https://github.com/SillyTavern/SillyTavern -b release`
* für den Staging-Branch: `git clone https://github.com/SillyTavern/SillyTavern -b staging`
3. `cd SillyTavern`, um in den Installationsordner zu navigieren.
4. Führe das Skript `start.sh` mit einem dieser Befehle aus:
* `./start.sh`
* `bash start.sh`
## ⚡ Installation über SillyTavern Launcher
Der SillyTavern Launcher ist ein Installationsassistent, der dir bei der Einrichtung mit vielen Optionen helfen wird, einschließlich der Installation eines Backends für lokale Inferenz.
### Für Windows-Nutzer
1. Drücke auf deiner Tastatur **`WINDOWS + R`**, um das Ausführen-Dialogfeld zu öffnen. Führe dann den folgenden Befehl aus, um git zu installieren:
```shell
cmd /c winget install -e --id Git.Git
```
2. Drücke auf deiner Tastatur **`WINDOWS + E`**, um den Datei-Explorer zu öffnen, und navigiere dann zu dem Ordner, in dem du den Launcher installieren möchtest. Gib im gewünschten Ordner in die Adressleiste `cmd` ein und drücke Enter. Führe dann den folgenden Befehl aus:
```shell
git clone https://github.com/SillyTavern/SillyTavern-Launcher.git && cd SillyTavern-Launcher && start installer.bat
```
### Für Linux-Nutzer
1. Öffne dein bevorzugtes Terminal und installiere git.
2. Klone den SillyTavern-Launcher mit:
```shell
git clone https://github.com/SillyTavern/SillyTavern-Launcher.git && cd SillyTavern-Launcher
```
3. Starte die installer.sh mit:
```shell
chmod +x install.sh && ./install.sh
```
4. Nach der Installation starte die launcher.sh mit:
```shell
chmod +x launcher.sh && ./launcher.sh
```
### Für Mac-Nutzer
1. Öffne ein Terminal und installiere brew mit:
```shell
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
```
2. Installiere git mit:
```shell
brew install git
```
3. Klone den SillyTavern-Launcher mit:
```shell
git clone https://github.com/SillyTavern/SillyTavern-Launcher.git && cd SillyTavern-Launcher
```
4. Starte die installer.sh mit:
```shell
chmod +x install.sh && ./install.sh
```
5. Nach der Installation starte die launcher.sh mit:
```shell
chmod +x launcher.sh && ./launcher.sh
```
## 🐋 Installation über Docker
Diese Anweisungen setzen voraus, dass du Docker installiert hast, auf deine Befehlszeile für die Installation von Containern zugreifen kannst und mit deren allgemeiner Funktionsweise vertraut bist.
### Image selbst bauen
Wir haben einen umfassenden Leitfaden zur Nutzung von SillyTavern in Docker [hier](http://docs.sillytavern.app/installation/docker/) der die Installationen auf Windows, macOS und Linux abdeckt! Lies ihn, wenn du das Image selbst bauen möchtest.
### Verwendung der GitHub Container Registry (am einfachsten)
Du benötigst zwei zwingende Verzeichniszuordnungen und eine Portzuordnung, um SillyTavern funktionsfähig zu machen. Ersetze in dem Befehl deine Auswahl an den folgenden Stellen:
#### Container-Variablen
##### Volumen-Zuordnungen
* [config] - Das Verzeichnis, in dem die SillyTavern-Konfigurationsdateien auf deinem Host-Computer gespeichert werden
* [data] - Das Verzeichnis, in dem die Benutzerdaten von SillyTavern (einschließlich Charaktere) auf deinem Host-Computer gespeichert werden
* [plugins] - (optional) Das Verzeichnis, in dem die SillyTavern-Server-Plugins auf deinem Host-Computer gespeichert werden
##### Port-Zuordnungen
* [PublicPort] - Der Port, über den der Datenverkehr ausgegeben werden soll. Dies ist zwingend erforderlich, da du auf die Instanz von außerhalb des virtuellen Maschinencontainers zugreifst. EXPOSIERE DIES NICHT IM INTERNET, OHNE EINEN GETRENNTEN SERVICE FÜR DIE SICHERHEIT ZU IMPLEMENTIEREN.
##### Zusätzliche Einstellungen
* [DockerNet] - Das Docker-Netzwerk, mit dem der Container erstellt werden soll. Wenn du nicht weißt, was das ist, sieh dir die [offizielle Docker-Dokumentation](https://docs.docker.com/reference/cli/docker/network/) an.
* [version] - Auf der rechten Seite dieser GitHub-Seite siehst du "Packages". Wähle das Paket "sillytavern" und du siehst die Imageversionen. Das Image-Tag "latest" hält dich auf dem Laufenden mit dem aktuellen Release. Du kannst auch "staging" und "release" Tags nutzen, die auf die nightly images der jeweiligen Branche verweisen, aber das könnte unangemessen sein, wenn du Erweiterungen verwendest, die möglicherweise kaputt sind und Zeit benötigen, um aktualisiert zu werden.
#### Installationsbefehl
1. Öffne deine Befehlszeile.
2. Führe den folgenden Befehl aus:
`docker create --name='sillytavern' --net='[DockerNet]' -p '8000:8000/tcp' -v '[plugins]':'/home/node/app/plugins':'rw' -v '[config]':'/home/node/app/config':'rw' -v '[data]':'/home/node/app/data':'rw' 'ghcr.io/sillytavern/sillytavern:[version]'`
> Beachte, dass 8000 ein Standard-Listening-Port ist. Vergiss nicht, einen geeigneten Port zu verwenden, wenn du ihn in der Konfiguration änderst.
## 📱 Installation über Termux auf Android OS
> \[!HINWEIS]
> **SillyTavern kann nativ auf Android-Geräten über Termux ausgeführt werden, aber wir bieten keine offizielle Unterstützung für diesen Anwendungsfall.**
>
> **Bitte beziehe dich auf diesen Leitfaden von ArroganceComplex#2659:**
>
> * <https://rentry.org/STAI-Termux>
**Nicht unterstützte Plattform: android arm LEtime-web.** 32-Bit-Android benötigt eine externe Abhängigkeit, die nicht mit npm installiert werden kann. Verwende den folgenden Befehl, um sie zu installieren: `pkg install esbuild`. Führe dann die üblichen Installationsschritte aus.
## API-Schlüsselverwaltung
SillyTavern speichert deine API-Schlüssel in einer Datei `secrets.json` im Benutzerdatenverzeichnis (`/data/default-user/secrets.json` ist der Standardpfad).
Standardmäßig sind API-Schlüssel nach dem Speichern und Aktualisieren der Seite nicht mehr über die Benutzeroberfläche sichtbar.
Um die Ansicht deiner Schlüssel zu aktivieren:
1. Setze den Wert von `allowKeysExposure` auf `true` in der Datei `config.yaml`.
2. Starte den SillyTavern-Server neu.
3. Klicke auf den Link 'Verborgene API-Schlüssel anzeigen' in der unteren rechten Ecke des API-Verbindungsfeldes.
## Befehlszeilenargumente
Sie können Befehlszeilenargumente an den Start des SillyTavern-Servers übergeben, um einige Einstellungen in `config.yaml` zu überschreiben.
### Beispiele
```shell
node server.js --port 8000 --listen false
# oder
npm run start -- --port 8000 --listen false
# oder (nur Windows)
Start.bat --port 8000 --listen false
```
### Unterstützte Argumente
| Option | Beschreibung | Typ |
|-------------------------|----------------------------------------------------------------------------------------------------|----------|
| `--version` | Versionsnummer anzeigen | boolean |
| `--enableIPv6` | Aktiviert IPv6. | boolean |
| `--enableIPv4` | Aktiviert IPv4. | boolean |
| `--port` | Legt den Port fest, unter dem SillyTavern ausgeführt wird. Wenn nicht angegeben, wird auf YAML-Konfiguration „Port“ zurückgegriffen. | number |
| „--dnsPreferIPv6“ | Bevorzugt IPv6 für DNS. Wenn nicht angegeben, wird auf YAML-Konfiguration „preferIPv6“ zurückgegriffen. | boolean |
| „--autorun“ | Startet SillyTavern automatisch im Browser. Wenn nicht angegeben, wird auf YAML-Konfiguration „autorun“ zurückgegriffen.| boolean |
| „--autorunHostname“ | Der Autorun-Hostname, am besten auf „auto“ belassen. | string |
| „--autorunPortOverride“ | Überschreibt den Port für Autorun. | string |
| „--listen“ | SillyTavern lauscht auf allen Netzwerkschnittstellen. Wenn nicht angegeben, wird auf YAML-Konfiguration „listen“ zurückgegriffen.| boolean |
| „--corsProxy“ | Aktiviert CORS-Proxy. Wenn nicht angegeben, wird auf YAML-Konfiguration „enableCorsProxy“ zurückgegriffen. | boolean |
| `--disableCsrf` | Deaktiviert CSRF-Schutz | boolean |
| `--ssl` | Aktiviert SSL | boolean |
| `--certPath` | Pfad zu Ihrer Zertifikatsdatei. | string |
| `--keyPath` | Pfad zu Ihrer privaten Schlüsseldatei. | string |
| `--whitelist` | Aktiviert den Whitelist-Modus | boolean |
| `--dataRoot` | Stammverzeichnis für Datenspeicherung | string |
| `--avoidLocalhost` | Vermeidet die Verwendung von „localhost“ für Autorun im Auto-Modus. | boolean |
| `--basicAuthMode` | Aktiviert die grundlegende Authentifizierung | boolean |
| `--requestProxyEnabled` | Aktiviert die Verwendung eines Proxys für ausgehende Anfragen | boolean |
| `--requestProxyUrl` | Proxy-URL anfordern (HTTP- oder SOCKS-Protokolle) | string |
| `--requestProxyBypass` | Proxy-Bypass-Liste anfordern (durch Leerzeichen getrennte Liste von Hosts) | Array |
## Remoteverbindungen
Dies ist in den meisten Fällen für Personen gedacht, die SillyTavern auf ihren Mobiltelefonen verwenden möchten, während ihr PC den ST-Server im selben WLAN-Netzwerk betreibt. Es kann jedoch auch verwendet werden, um Remoteverbindungen von überall her zu ermöglichen.
Lies die ausführliche Anleitung zum Einrichten von Remoteverbindungen in den [Docs](https://docs.sillytavern.app/usage/remoteconnections/).
Möglicherweise möchtest du SillyTavern-Benutzerprofile auch mit (optionalem) Kennwortschutz konfigurieren: [Benutzer](https://docs.sillytavern.app/installation/st-1.12.0-migration-guide/#users).
## Leistungsprobleme?
1. Deaktiviere den Unschärfeeffekt und aktiviere "Verringerte Bewegung" im Bedienfeld "Benutzereinstellungen" (UI-Design schaltet Kategorie um).
2. Wenn du Response Streaming verwendest, stelle die Streaming-FPS auf einen niedrigeren Wert ein (10-15 FPS werden empfohlen).
3. Stelle sicher, dass der Browser die GPU-Beschleunigung zum Rendern verwenden kann.
## Lizenz und Danksagungen
**Dieses Programm wird in der Hoffnung verbreitet, dass es nützlich ist,
aber OHNE JEGLICHE GARANTIE; nicht einmal die stillschweigende Garantie der
MARKTFÄHIGKEIT oder EIGNUNG FÜR EINEN BESTIMMTEN ZWECK. Siehe die
GNU Affero General Public License für weitere Details.**
* [TavernAI](https://github.com/TavernAI/TavernAI) 1.2.8 von Humi: MIT-Lizenz
* Teile von CncAnons TavernAITurbo-Mod werden mit Genehmigung verwendet
* Visual Novel-Modus inspiriert von der Arbeit von PepperTaco (<https://github.com/peppertaco/Tavern/>)
* Noto Sans-Schriftart von Google (OFL-Lizenz)
* Symboldesign von Font Awesome <https://fontawesome.com> (Symbole: CC BY 4.0, Schriftarten: SIL OFL 1.1, Code: MIT-Lizenz)
* Standardinhalt von @OtisAlejandro (Seraphina-Charakter und Lorebook) und @kallmeflocc (10.000 Discord-Benutzer-Feierhintergrund)
* Docker-Anleitung von [@mrguymiah](https://github.com/mrguymiah) und [@Bronya-Rand](https://github.com/Bronya-Rand)
## Top Contributors
[![Contributors](https://contrib.rocks/image?repo=SillyTavern/SillyTavern)](https://github.com/SillyTavern/SillyTavern/graphs/contributors)
<!-- LINK GROUP -->
[cover]: https://github.com/user-attachments/assets/01a6ae9a-16aa-45f2-8bff-32b5dc587e44
[discord-link]: https://discord.gg/sillytavern
[discord-shield-badge]: https://img.shields.io/discord/1100685673633153084?color=5865F2&label=discord&labelColor=black&logo=discord&logoColor=white&style=for-the-badge

View File

@@ -1,6 +1,20 @@
[English](readme.md) | [中文](readme-zh_cn.md) | 日本語 | [Русский](readme-ru_ru.md)
> [!IMPORTANT]
> ここに掲載されている情報は、古かったり不完全であったりする可能性があります。最新の情報は英語版をご利用ください。
![SillyTavern-Banner](https://github.com/SillyTavern/SillyTavern/assets/18619528/c2be4c3f-aada-4f64-87a3-ae35a68b61a4)
![][cover]
<div align="center">
[English](readme.md) | [German](readme-de_de.md) | [中文](readme-zh_cn.md) | [繁體中文](readme-zh_tw.md) | 日本語 | [Русский](readme-ru_ru.md) | [한국어](readme-ko_kr.md)
[![GitHub Stars](https://img.shields.io/github/stars/SillyTavern/SillyTavern.svg)](https://github.com/SillyTavern/SillyTavern/stargazers)
[![GitHub Forks](https://img.shields.io/github/forks/SillyTavern/SillyTavern.svg)](https://github.com/SillyTavern/SillyTavern/network)
[![GitHub Issues](https://img.shields.io/github/issues/SillyTavern/SillyTavern.svg)](https://github.com/SillyTavern/SillyTavern/issues)
[![GitHub Pull Requests](https://img.shields.io/github/issues-pr/SillyTavern/SillyTavern.svg)](https://github.com/SillyTavern/SillyTavern/pulls)
</div>
---
モバイルデバイスにも適したレイアウト・マルチAPIKoboldAI/CPP、Horde、NovelAI、Ooba、OpenAI、OpenRouter、Claude、Scale、VN ライクな Waifu モード、Stable Diffusion、TTS、WorldInfo伝承本、カスタマイズ可能なUI、自動翻訳、大量のプロンプトオプションサードパーティの拡張機能をインストールする機能
@@ -71,14 +85,13 @@ Tavern は単なるフロントエンドのUIであり、必要なハードウ
* ワールド情報サポート: 豊富な伝承を作成したり、キャラクターカードにトークンを保存したりできます
* [OpenRouter](https://openrouter.ai) 各種 API(Claude、GPT-4/3.5 など)の接続
* [Oobabooga's TextGen WebUI](https://github.com/oobabooga/text-generation-webui) API 接続
* [AI Horde](https://horde.koboldai.net/) 接続
* [AI Horde](https://aihorde.net/) 接続
* プロンプト生成フォーマットの調整
## 拡張機能
SillyTavern は拡張できるようになっており、[SillyTavern Extras API](https://github.com/SillyTavern/SillyTavern-extras) でいくつかの追加AIモジュールをホストしています
SillyTavern は拡張できるようになっており
* 作者ノート/キャラクターバイアス
* キャラクターの感情表現(スプライト)
* チャット履歴の自動サマリー
* チャットに画像を送り、AI が内容を解釈する
@@ -282,8 +295,8 @@ ST サーバを再起動すると、ユーザ名とパスワードさえ知っ
## スクリーンショット
<img width="400" alt="image" src="https://user-images.githubusercontent.com/18619528/228649245-8061c60f-63dc-488e-9325-f151b7a3ec2d.png">
<img width="400" alt="image" src="https://user-images.githubusercontent.com/18619528/228649856-fbdeef05-d727-4d5a-be80-266cbbc6b811.png">
<img width="500" alt="image" src="https://github.com/user-attachments/assets/9b5f32f0-c3b3-4102-b3f5-0e9213c0f50f">
<img width="500" alt="image" src="https://github.com/user-attachments/assets/913fdbaa-7d33-42f1-ae2c-89dca41c53d1">
## ライセンスとクレジット
@@ -312,3 +325,6 @@ ST サーバを再起動すると、ユーザ名とパスワードさえ知っ
* @doloroushyeonse による韓国語翻訳
* k_euler_a による Horde のサポート <https://github.com/Teashrock>
* [@XXpE3](https://github.com/XXpE3) による中国語翻訳、中国語 ISSUES の連絡先は @XXpE3
<!-- LINK GROUP -->
[cover]: https://github.com/user-attachments/assets/01a6ae9a-16aa-45f2-8bff-32b5dc587e44

394
.github/readme-ko_kr.md vendored Normal file
View File

@@ -0,0 +1,394 @@
> [!IMPORTANT]
> 이곳에 게재된 정보는 오래되거나 불완전할 수 있습니다. 최신 정보는 영어 버전을 이용하십시오.
<a name="readme-top"></a>
![][cover]
<div align="center">
[English](readme.md) | [German](readme-de_de.md) | [中文](readme-zh_cn.md) | [繁體中文](readme-zh_tw.md) | [日本語](readme-ja_jp.md) | [Русский](readme-ru_ru.md) | 한국어
[![GitHub Stars](https://img.shields.io/github/stars/SillyTavern/SillyTavern.svg)](https://github.com/SillyTavern/SillyTavern/stargazers)
[![GitHub Forks](https://img.shields.io/github/forks/SillyTavern/SillyTavern.svg)](https://github.com/SillyTavern/SillyTavern/network)
[![GitHub Issues](https://img.shields.io/github/issues/SillyTavern/SillyTavern.svg)](https://github.com/SillyTavern/SillyTavern/issues)
[![GitHub Pull Requests](https://img.shields.io/github/issues-pr/SillyTavern/SillyTavern.svg)](https://github.com/SillyTavern/SillyTavern/pulls)
</div>
---
SillyTavern은 많은 LLM API(KoboldAI/CPP, Horde, NovelAI, Ooba, Tabby, OpenAI, OpenRouter, Claude, Mistral 등)에 대한 단일 통합 인터페이스, 모바일 친화적 레이아웃, 비주얼 노벨 모드, Automatic1111 & ComfyUI API 이미지 생성 통합, TTS, 월드 인포 (로어북), 커스텀 가능한 UI, 자동 번역, 필요 이상의 프롬프트 옵션, 그리고 서드파티 확장을 통한 무궁무진한 성장 가능성을 제공합니다.
또한, 자주 묻는 질문에 대한 답변과, 시작하는 데 도움을 주기 위한 [문서 웹사이트](https://docs.sillytavern.app/)가 있습니다.
## SillyTavern이 무엇인가요?
SillyTavern(짧게는 ST)은 텍스트 생성 LLM, 이미지 생성 엔진, TTS 음성 모델 등과 상호작할 수 있는 로컬 설치형 UI 입니다.
2023년 2월, TavernAI 1.2.8의 포크로 시작한 SillyTavern은 현재 100명이 넘는 기여자를 보유하고 있으며, 2년간의 독자적인 개발을 거쳐 숙련된 AI 애호가들을 위한 선도적인 소프트웨어로 자리매김하고 있습니다.
## 우리의 비전
1. 저희는 사용자가 LLM 프롬프트에 대한 최대한의 유용성과 제어 능력을 갖도록 하는 것을 목표로 합니다. 빠르게 배우는 것 역시 재미의 일부입니다!
2. 저희는 어떠한 온라인 및 호스팅 서브시도 제공하지 않으며, 프로그래밍으로 사용자의 데이터를 추적하지 않습니다.
3. SillyTavern은 헌신적인 LLM 커뮤니티가 여러분에게 제공하는 열정적인 프로젝트이며, 언제나 무료이며 오픈소스로 제공될 것입니다.
## 브랜치
SillyTavern은 모든 사용자가 원활한 경험을 할 수 있도록 두 개의 브랜치를 활용하여 개발되고 있습니다.
* `release` -🌟 **대부분의 사용자에게 추천됨.** 가장 안정적이고 권장되는 브랜치이며, 주요 릴리스가 배포될 때만 업데이트됩니다. 대부분의 사용자에게 적합합니다. 일반적으로 한달에 한번 업데이트됩니다.
* `staging` - ⚠️ **일반적인 사용에 추천되지 않음.** 최신 기능을 가지고 있지만, 언제든지 문제가 발생할 수 있습니다. 고급 사용자 및 숙련자 전용입니다. 하루에 여러번 업데이트됩니다.
만약 git CLI 사용에 익숙하지 않거나 브랜치가 무엇인지 모르겠다면 release 브랜치가 더 나은 선택입니다.
## SillyTavern 외에 무엇이 필요한가요?
SillyTavern은 인터페이스 역할만 하기 때문에, 실제로 채팅하려면 LLM 백엔드에 대한 액세스 권한이 필요합니다. 즉시 사용 가능한 채팅을 위해 AI Horde를 사용할 수 있습니다. 그 외에도 OpenAI 호환 API, KoboldAI, Tabby 등 많은 로컬 및 클라우드 기반 LLM 백엔드를 지원합니다. 지원되는 API에 대한 자세한 내용은 [FAQ](https://docs.sillytavern.app/usage/api-connections/)에서 확인할 수 있습니다.
### SillyTavern을 위해서 좋은 성능의 PC가 필요한가요?
하드웨어 요구 사항은 거의 없습니다: NodeJS 18 이상을 실행할 수 있는 모든 환경에서 작동합니다. 다만 로컬 LLM 모델을 사용할 경우, 최소 6GB VRAM 이상의 3000번대 NVIDIA 그래픽 카드를 권장합니다. 자세한 내용은 백엔드 문서를 참고하세요.
### 추천되는 백엔드 (제휴 없음)
* [AI Horde](https://aihorde.net/) - 자원 봉사자들이 호스팅하는 모델을 사용합니다. 추가 설정이 필요하지 않습니다.
* [KoboldCpp](https://github.com/LostRuins/koboldcpp) - 로컬에서 GGUF 모델을 실행하기 위한 커뮤니티에서 선호하는 옵션입니다.
* [tabbyAPI](https://github.com/theroyallab/tabbyAPI) - 인기 있는 경량 로컬 exl2 추론 API입니다.
* [OpenRouter](https://openrouter.ai) - OpenAI, Claude, Meta Llama 등 다양한 클라우드 제공업체와 인기 있는 커뮤니티 모델을 위한 단일 API입니다.
## 질문이나 제안이 있으신가요?
### 디스코드 서버
| [![][discord-shield-badge]][discord-link] | [저희의 디스코드에 참여하세요!](https://discord.gg/sillytavern) 지원을 받고, 좋아하는 캐릭터와 프롬프트를 공유하세요. |
| :---------------------------------------- | :----------------------------------------------------------------------------------------------------------------- |
혹은 저희의 개발자들과 직접 연락할 수 있습니다:
* 디스코드: cohee, rossascends, wolfsblvt
* 레딧: [/u/RossAscends](https://www.reddit.com/user/RossAscends/), [/u/sillylossy](https://www.reddit.com/user/sillylossy/), [u/Wolfsblvt](https://www.reddit.com/user/Wolfsblvt/)
* [GitHub issue를 작성하세요](https://github.com/SillyTavern/SillyTavern/issues)
### 이 프로젝트가 마음에 들어요! 어떻게 기여할 수 있을까요?
1. PULL REQUEST를 생성하세요. 기여 방법에 대해서는 [CONTRIBUTING.md](../CONTRIBUTING.md)를 참고하세요.
2. 제공된 탬플릿에 따라 기능 제안이나 이슈 리포트를 생성하세요.
3. 중복된 이슈를 생성하지 않도록 이 README 파일 전체를 읽고 문서 웹사이트를 먼저 확인하세요.
## 스크린샷
<img width="500" alt="image" src="https://github.com/user-attachments/assets/9b5f32f0-c3b3-4102-b3f5-0e9213c0f50f">
<img width="500" alt="image" src="https://github.com/user-attachments/assets/913fdbaa-7d33-42f1-ae2c-89dca41c53d1">
## 캐릭터 카드
SillyTavern은 "캐릭터 카드"라는 개념을 중심으로 구축되었습니다. 캐릭터 카드는 LLM의 동작을 설정하는 프롬프트 모음이며, SillyTavern에서 지속적인 대화를 하려면 필수적입니다. 이는 ChatGPT의 GPT 또는 Poe의 봇과 유사하게 작동합니다. 캐릭터 카드의 내용은 추상적인 시나리오, 특정 작업에 맞춰진 도우미, 유명 인사 또는 가상 인물 등 무엇이든 될 수 있습니다.
이름 필드는 유일한 필수 캐릭터 카드 입력 항목입니다. 언어 모델과 중립적인 대화를 시작하려면 "도우미"라고 간단히 이름 지은 새 카드를 만들고 나머지 상자는 비워 두세요. 더 주제가 있는 채팅을 원한다면 언어 모델에 다양한 배경 정보, 행동 및 작문 패턴, 그리고 채팅을 바로 시작할 시나리오를 제공할 수 있습니다.
캐릭터 카드를 선택하지 않고 빠른 대화를 하거나 LLM 연결을 테스트하려면 SillyTavern을 연 후 시작 화면의 입력 창에 프롬프트 입력을 입력하기만 하면 됩니다. 이러한 채팅은 임시적이며 저장되지 않습니다.
캐릭터 카드를 정의하는 방법에 대한 일반적인 아이디어를 얻으려면 기본 캐릭터(Seraphina)를 보거나 "확장 프로그램 및 에셋 다운로드" 메뉴에서 선택된 커뮤니티 제작 카드를 다운로드하세요.
## 핵심 기능
* 고급 텍스트 생성 설정과 다양한 커뮤니티 제작 프리셋
* 월드 인포 지원: 풍부한 설정을 만들거나 캐릭터 카드에 토큰 저장
* 그룹 채팅: 캐릭터가 사용자 혹은 다른 캐릭터와 대화할 수 있는 방
* 다양한 UI 커스텀 옵션: 테마 색, 뱌경 이미지, 커스텀 CSS 등
* 유저 페르소나: AI에게 사용자에 대한 정보를 주어 더욱 몰입감을 높임
* 내장 RAG 지원: AI가 참조할 수 있도록 채팅에 문서를 추가
* 광범위한 채팅 명령어 시스템 및 자체 [스크립트](https://docs.sillytavern.app/usage/st-script/)
## 확장
SillyTavern은 확장(익스텐션)을 지원합니다.
* 캐릭터 감정 표현 (스프라이트)
* 채팅 기록 자동 요약
* 자동 UI 및 채팅 번역
* Stable Diffusion/FLUX/DALL-E 이미지 생성
* AI 응답 메시지 텍스트 음성 변환 (ElevenLabs, Silero 또는 OS 시스템 TTS 사용)
* 프롬프트에 추가적인 현실 세계 맥락을 추가하기 위한 웹 검색 기능
* "확장 프로그램 및 에셋 다운로드" 메뉴에서 더 많은 기능을 다운로드할 수 있습니다.
사용 방법에 대한 튜토리얼은 [Docs](https://docs.sillytavern.app/)에서 확인할 수 있습니다.
# ⌛ Installation
> \[!WARNING]
>
> * **윈도우 제어 폴더에는 설치하지 마십시오 (Program Files, System32 등).**
> * **권리자 권한으로 START.BAT을 실행하지 마십시오.**
> * **Windows 7에서는 NodeJS 18.16을 실행할 수 없으므로 설치가 불가능합니다.**
## 🪟 Windows
### Git을 통해 설치하기
1. [NodeJS](https://nodejs.org/ko) 설치 (최신 LTS 버전 권장)
2. [Git for Windows](https://gitforwindows.org/) 설치
3. 파일 탐색기 열기 (`Win+E`)
4. Windows에서 제어하거나 모니터하지 않는 폴더를 찾거나 만드세요. (ex: C:\MySpecialFolder\)
5. 상단의 주소 표시줄을 클릭하고 `cmd`를 입력한 후 Enter 키를 눌러 해당 폴더 내에서 명령 프롬프트를 여세요.
6. 검은색 창(명령 프롬프트)이 나타나면 다음 중 하나를 입력하고 Enter 키를 누르세요.
* Release 브랜치: `git clone https://github.com/SillyTavern/SillyTavern -b release`
* Staging 브랜치: `git clone https://github.com/SillyTavern/SillyTavern -b staging`
7. clone이 완료되면, `Start.bat`을 더블 클릭하여 NodeJS가 필요한 구성요소를 설치하도록 하세요.
8. 그러면 서버가 시작하고, SillyTavern이 브라우저에 나타납니다.
### GitHub Desktop을 통해 설치하기
(이 방법은 **오직** GitHub Desktop에서만 git 사용이 가능합니다. 명령 프롬프트에서 git을 사용하려면 [Git for Windows](https://gitforwindows.org/)를 설치해야 합니다.)
1. [NodeJS](https://nodejs.org/ko) 설치 (최신 LTS 버전 권장)
2. [GitHub Desktop](https://central.github.com/deployments/desktop/desktop/latest/win32) 설치
3. GitHub Desktop을 설치했으면, `Clone a repository from the internet....`를 클릭하세요. (참고: 이 과정에서는 Github 계정이 **필요하지 않습니다**.)
4. 메뉴에서 URL 탭을 클릭하고, 다음 URL을 입력한 후 복제를 클릭합니다: `https://github.com/SillyTavern/SillyTavern` 리포지토리가 다운로드될 위치를 변경하려면 로컬 경로를 변경할 수 있습니다.
5. SillyTavern을 열려면 파일 탐색기를 사용하여 리포지토리를 복제한 폴더로 이동합니다. 기본적으로 리포지토리는 다음 위치에 복제됩니다: `C:\Users\[사용자 Windows 사용자 이름]\Documents\GitHub\SillyTavern`
6. `start.bat` 파일을 더블 클릭 하세요. (참고: `.bat` 확장자 명은 OS 설정에 따라 보이지 않을 수 있습니다, 그럴 때는 파일 이름이 "`Start`" 처럼 보일 수 있습니다. 이 파일을 더블 클릭해 SillyTavern을 실행하세요.)
7. 더블 클릭하면, 검고 큰 명령 프롬프트 창이 열리고 SillyTavern이 작동하는데 필요한 항목을 설치하기 시작합니다.
8. 설치 과정이 끝나고 모든 것이 잘 작동한다면, 브라우저에 SillyTavern 탭이 열려 있어야 하고, 명령 프롬프트 창에 다음과 같이 표시되어야 합니다:
9. Connect to any of the [supported APIs](https://docs.sillytavern.app/usage/api-connections/) and start chatting!
## 🐧 Linux & 🍎 MacOS
MacOS / Linux 에서는 이 모든 작업이 터미널에서 수행됩니다.
1. git과 nodeJS 설치 (이 작업은 OS에 따라 달라집니다.)
2. 리포지토리 clone하기
* Release 브랜치: `git clone https://github.com/SillyTavern/SillyTavern -b release`
* Staging 브랜치: `git clone https://github.com/SillyTavern/SillyTavern -b staging`
3. `cd SillyTavern` 를 입력해 설치 폴더로 이동하기
4. `start.sh` 스크립트를 아래의 명령어 중 하나로 실행하기:
* `./start.sh`
* `bash start.sh`
## ⚡ SillyTavern Launcher를 통해 설치하기
SillyTavern 런처는 로컬 LLM 사용을 위한 백엔드 설치를 포함하여 다양한 설정을 도와주는 설치 마법사입니다.
### Windows 사용자
1. 키보드에서 **`WINDOWS + R`** 키를 눌러 실행 창을 여세요. 그리고 아래의 명령어를 입력해 git을 설치하세요.
```shell
cmd /c winget install -e --id Git.Git
```
2. 키보드에서 **`WINDOWS + E`** 키를 눌러 파일 탐색기를 열고 런처를 설치할 폴더로 이동합니다. 원하는 폴더에 도착하면 주소 표시줄에 `cmd`를 입력하고 Enter 키를 누릅니다. 그 후 아래의 명령어를 입력합니다.
```shell
git clone https://github.com/SillyTavern/SillyTavern-Launcher.git && cd SillyTavern-Launcher && start installer.bat
```
### Linux 사용자
1. 선호하는 터미널을 열고 git을 설치하세요.
2. SillyTavern-Launcher를 clone 하세요:
```shell
git clone https://github.com/SillyTavern/SillyTavern-Launcher.git && cd SillyTavern-Launcher
```
3. installer.sh를 실행하세요:
```shell
chmod +x install.sh && ./install.sh
```
4. 설치가 끝나면 launcher.sh를 실행하세요:
```shell
chmod +x launcher.sh && ./launcher.sh
```
### Mac 사용자
1. 터미널을 열고 Brew를 설치하세요:
```shell
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
```
2. git을 설치하세요:
```shell
brew install git
```
3. SillyTavern-Launcher를 clone 하세요:
```shell
git clone https://github.com/SillyTavern/SillyTavern-Launcher.git && cd SillyTavern-Launcher
```
4. installer.sh를 실행하세요:
```shell
chmod +x install.sh && ./install.sh
```
5. 설치가 끝나면 launcher.sh를 실행하세요:
```shell
chmod +x launcher.sh && ./launcher.sh
```
## 🐋 Docker를 통해 설치하기
이 방법은 Docker가 설치되어 있고, Docker 설치를 위해 커맨드 라인에 접근할 수 있으며, Docker의 일반적인 작동 방식에 익숙하다고 가정합니다.
### 이미지 직접 빌드하기
SillyTavern을 Docker에서 사용하는 방법에 대한 포괄적인 가이드는 [여기서](http://docs.sillytavern.app/installation/docker/) 확인할 수 있습니다. 이 가이드는 Windows, macOS 및 Linux에서의 설치를 다룹니다! 직접 이미지를 빌드하려면 이 가이드를 읽어보세요.
### GitHub Container Registry 사용하기 (가장 쉬움)
SillyTavern이 작동하려면 두 개의 필수 디렉터리 매핑과 하나의 포트 매핑이 필요합니다. 명령에서 다음 위치의 선택 항목을 바꿔주세요.
#### Container Variables
##### Volume Mappings
* [config] - SillyTavern 구성 파일이 호스트 컴퓨터에 저장될 디렉터리
* [data] - 캐릭터를 포함한 SillyTavern 사용자 데이터가 호스트 컴퓨터에 저장될 디렉터리
* [plugins] - (선택 사항) SillyTavern 서버 플러그인이 호스트 컴퓨터에 저장될 디렉터리
##### Port Mappings
* [PublicPort] - 트래픽을 노출할 포트입니다. 가상 머신 컨테이너 외부에서 인스턴스에 접근하므로 필수 사항입니다. 보안을 위한 별도의 서비스를 구현하지 않고는 인터넷에 노출하지 마십시오.
##### Additional Settings
* [DockerNet] - 컨테이너가 연결되어 생성되어야 하는 Docker 네트워크입니다. 해당 내용을 모르는 경우 [공식 Docker 문서](https://docs.docker.com/reference/cli/docker/network/)를 참조하세요.
* [version] - 이 GitHub 페이지의 오른쪽에서 "Packages"를 선택하면 "sillytavern" 패키지를 볼 수 있습니다. "latest" 이미지 태그는 현재 릴리스와 함께 최신 상태를 유지합니다. 각 브랜치의 야간 이미지를 가리키는 "staging" 및 "release" 태그를 사용할 수도 있지만, 업데이트에 시간이 걸릴 수 있고 중단될 수 있는 확장 프로그램을 사용하는 경우에는 적합하지 않을 수 있습니다.
#### 설치 명령어
1. 커맨드 라인 열기
2. 아래의 명령어 실행
`docker create --name='sillytavern' --net='[DockerNet]' -p '8000:8000/tcp' -v '[plugins]':'/home/node/app/plugins':'rw' -v '[config]':'/home/node/app/config':'rw' -v '[data]':'/home/node/app/data':'rw' 'ghcr.io/sillytavern/sillytavern:[version]'`
> 8000은 기본 리스닝 포트입니다. 구성에서 포트를 변경한 경우 적절한 포트를 사용하는 것을 잊지 마세요.
## 📱 Termux를 통해 Android OS에 설치하기
> \[!NOTE]
> **SillyTavern은 Termux를 사용하여 Android 기기에서 기본적으로 실행할 수 있지만, 이러한 사용 사례에 대한 공식적인 지원은 제공하지 않습니다.**
>
> **ArroganceComplex#2659의 가이드를 참조하세요:**
>
> * <https://rentry.org/STAI-Termux>
**지원되지 않는 플랫폼: android arm LEtime-web.** 32비트 Android는 npm으로 설치할 수 없는 외부 종속성이 필요합니다. 다음 명령어를 사용하여 설치하세요: pkg install esbuild. 그런 다음 일반적인 설치 단계를 진행하세요.
## API 키 관리
SillyTavern은 API 키를 사용자 데이터 디렉터리의 `secrets.json` 파일에 저장합니다 (`/data/default-user/secrets.json`이 기본 경로입니다).
기본적으로 API 키는 저장하고 페이지를 새로 고침한 후에는 인터페이스에서 보이지 않습니다.
키 보기 기능을 활성화하려면 다음 단계를 따르세요:
1. `config.yaml` 파일에서 `allowKeysExposure` 값을 `true로` 설정합니다.
2. SillyTavern 서버를 다시 시작합니다.
3. API 연결 패널 오른쪽 하단에 있는 '숨겨진 API 키 보기' 링크를 클릭합니다.
## 커맨드 라인 인수
`config.yaml`의 일부 설정을 덮어쓰기 위해 SillyTavern 서버 시작 시 커맨드 라인 인수를 전달할 수 있습니다.
### 예시
```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 config 'port'를 불러옵니다. | number |
| `--dnsPreferIPv6` | DNS에 IPv6를 우선으로 할당합니다. 설정되지 않은 경우 yaml config를 불러옵니다. | boolean |
| `--autorun` | 브라우저에서 SillyTavern을 자동으로 실행합니다. 설정되지 않은 경우 yaml config 'autorun'를 불러옵니다. | boolean |
| `--autorunHostname` | 자동 실행 호스트 이름, 'auto'가 최적의 설정일 것입니다. | string |
| `--autorunPortOverride` | 자동 실행 포트 덮어쓰기 | string |
| `--listen` | SillyTavern이 모든 네트워크 인터페이스에서 수신 대기합니다. 설정되지 않은 경우 yaml 구성 'listen'을 불러옵니다. | boolean |
| `--corsProxy` | CORS 프록시 활성화. 설정되지 않은 경우 yaml 구성 'enableCorsProxy'을 불러옵니다. | boolean |
| `--disableCsrf` | CSRF 보호 비활성화 | boolean |
| `--ssl` | SSL 활성화 | boolean |
| `--certPath` | 인증서 파일 경로 | string |
| `--keyPath` | 프라이빗 키 파일 경로 | string |
| `--whitelist` | 화이트리스트 모드 활성화 | boolean |
| `--dataRoot` | 데이터 스토리지의 루트 디렉토리 | string |
| `--avoidLocalhost` | 자동 모드에서 자동 실행 시 'localhost' 사용 방지 | boolean |
| `--basicAuthMode` | 기본 인증 활성화 | boolean |
| `--requestProxyEnabled` | 외부 리퀘스트 프록시 활성화 | boolean |
| `--requestProxyUrl` | 프록시 URL 리퀘스트 (HTTP 혹은 SOCKS 프로토콜) | string |
| `--requestProxyBypass` | 프록시 바이패스 리스트 리퀘스트 (공백으로 구분된 호스트 목록) | array |
## 원격 연결
대부분의 경우 이는 PC에서 ST 서버를 실행하는 동안 모바일 장치에서 SillyTavern을 사용하려는 사람들을 위한 것입니다. 그러나 원격 연결을 다른 곳에서도 허용하도록 사용할 수 있습니다.
원격 연결 설정 방법에 대한 자세한 가이드는 [Docs](https://docs.sillytavern.app/usage/remoteconnections/)에서 확인할 수 있습니다.
또한 암호 보호 기능이 포함된 SillyTavern 사용자 프로필을 구성할 수 있습니다 (선택 사항): [Users](https://docs.sillytavern.app/installation/st-1.12.0-migration-guide/#users).
## 성능 이슈가 발생하나요?
1. 사용자 설정 패널(UI 테마 전환 카테고리)에서 흐림 효과를 비활성화하고 동작 줄이기를 활성화합니다.
2. 응답 스트리밍을 사용하는 경우 스트리밍 FPS를 더 낮은 값(10-15 FPS 권장)으로 설정합니다.
3. 브라우저에서 렌더링에 GPU 가속을 사용하도록 설정되어 있는지 확인합니다.
## 라이센스 및 크레딧
**이 프로그램은 유용할 것이라는 희망으로 배포되지만, 어떠한 보증도 제공하지 않습니다. 상품성 또는 특정 목적에의 적합성에 대한 묵시적인 보증조차도 제공하지 않습니다. 자세한 내용은 GNU Affero 일반 공중 사용 허가서를 참조하십시오.**
* Humi의 [TavernAI](https://github.com/TavernAI/TavernAI) 1.2.8: MIT 라이선스
* CncAnon의 TavernAITurbo 모드의 일부는 허가를 받아 사용됨
* PepperTaco의 작업(<https://github.com/peppertaco/Tavern/>)에 영감을 받은 비주얼 노벨 모드
* Noto Sans Font by Google (OFL 라이선스)
* Font Awesome의 아이콘 테마 <https://fontawesome.com> (아이콘: CC BY 4.0, 폰트: SIL OFL 1.1, 코드: MIT 라이선스)
* 기본 콘텐츠는 @OtisAlejandro (Seraphina 캐릭터 및 로어북)와 @kallmeflocc (10K 디스코드 사용자 축전 배경화면)가 제공함
* [@mrguymiah](https://github.com/mrguymiah)와 [@Bronya-Rand](https://github.com/Bronya-Rand)의 Docker 가이드
## 상위 기여자
[![Contributors](https://contrib.rocks/image?repo=SillyTavern/SillyTavern)](https://github.com/SillyTavern/SillyTavern/graphs/contributors)
<!-- LINK GROUP -->
[cover]: https://github.com/user-attachments/assets/01a6ae9a-16aa-45f2-8bff-32b5dc587e44
[discord-link]: https://discord.gg/sillytavern
[discord-shield-badge]: https://img.shields.io/discord/1100685673633153084?color=5865F2&label=discord&labelColor=black&logo=discord&logoColor=white&style=for-the-badge

View File

@@ -1,359 +1,450 @@
<a name="readme-top"></a>
[English](readme.md) | [中文](readme-zh_cn.md) | [日本語](readme-ja_jp.md) | Русский
![][cover]
Мобайл-френдли интерфейс, поддержка множества API (KoboldAI/CPP, Horde, NovelAI, Ooba, OpenAI, OpenRouter, Claude, Scale), ВН-образный режим Вайфу, Stable Diffusion, TTS, поддержка миров (лорбуков), кастомизируемый UI, автоперевод, тончайшая настройка промптов + возможность устанавливать расширения.
Основано на форке [TavernAI](https://github.com/TavernAI/TavernAI) версии 1.2.8
## Важные новости!
1. Чтобы помочь вам быстрее разобраться в SillyTavern, мы создали [сайт с документацией](https://docs.sillytavern.app/). Ответы на большинство вопросов можно найти там.
2. Почему пропали расширения после апдейта? Начиная с версии 1.10.6, большинство встроенных расширений были конвертированы в формат загружаемых аддонов. Их можно установить обратно через меню "Download Extensions and Assets" на панели расширений (значок с тремя кубиками сверху).
3. Не поддерживается следующая платформа: android arm LEtime-web. 32-битный Android требует внешнюю зависимость, которую нельзя установить посредством npm. Для её установки потребуется следующая команда: `pkg install esbuild`. После этого продолжайте установку по общей инструкции.
### Разрабатывается Cohee, RossAscends и всем сообществом SillyTavern
### Что такое SillyTavern и TavernAI?
SillyTavern — это интерфейс, который устанавливается на ПК (и на Android), который даёт возможность общаться с генеративным ИИ и чатиться/ролеплеить с вашими собственными персонажами или персонажами других пользователей.
SillyTavern — это форк версии TavernAI 1.2.8, который разрабатывается более активно и имеет множество новых функций. Сейчас уже можно сказать, что это две отдельные и абсолютно самостоятельные программы.
## Скриншоты
<img width="400" alt="image" src="https://github.com/SillyTavern/SillyTavern/assets/61471128/e902c7a2-45a6-4415-97aa-c59c597669c1">
<img width="400" alt="image" src="https://github.com/SillyTavern/SillyTavern/assets/61471128/f8a79c47-4fe9-4564-9e4a-bf247ed1c961">
### Ветки
SillyTavern разрабатывается в двух ветках, чтобы всем категориям пользователей было удобно.
* release -🌟 **Рекомендовано для большинства пользователей.** Самая стабильная ветка, рекомендуем именно её. Обновляется только в момент крупных релизов. Подходит для большей части пользователей.
* staging - ⚠️ **Не рекомендуется для повседневного использования.** В этой ветке весь самый свежий и новый функционал, но будьте аккуратны, поскольку сломаться может в любом месте и в любое время. Только для продвинутых пользователей и энтузиастов.
Если вы не умеете обращаться с git через командную строку, или не знаете, что такое ветка, то не переживайте! Наилучшим вариантом всегда остаётся ветка release.
### Что ещё нужно, кроме SillyTavern?
Сама по себе SillyTavern бесполезна, ведь это просто интерфейс. Вам потребуется доступ к бэкенду с ИИ, который и будет отыгрывать выбранного вами персонажа. Поддерживаются разные виды бэкендов: OpenAPI API (GPT), KoboldAI (локально или на Google Colab), и многое другое. Больше информации в [FAQ](https://docs.sillytavern.app/usage/faq/).
### Требуется ли для SillyTavern мощный ПК?
SillyTavern — это просто интерфейс, поэтому запустить его можно на любой картошке. Мощным должен быть бэкенд с ИИ.
## Есть вопросы или предложения?
### У нас появился сервер в Discord
| [![][discord-shield-badge]][discord-link] | [Вступайте в наше Discord-сообщество!](https://discord.gg/sillytavern) Задавайте вопросы, делитесь любимыми персонажами и промптами. |
| :---------------------------------------- | :----------------------------------------------------------------------------------------------------------------- |
Также можно написать разработчикам напрямую:
* Discord: cohee или rossascends
* Reddit: [/u/RossAscends](https://www.reddit.com/user/RossAscends/) или [/u/sillylossy](https://www.reddit.com/user/sillylossy/)
* [Запостить issue на GitHub](https://github.com/SillyTavern/SillyTavern/issues)
## Эта версия включает
* Глубоко переработанную TavernAI 1.2.8 (переписано и оптимизировано более 50% кода)
* Свайпы
* Групповые чаты: комнаты для нескольких ботов, где персонажи могут говорить друг с другом и с вами
* Чекпоинты и ветки для чатов
* Продвинутые настройки для KoboldAI / TextGen со множеством созданных сообществом пресетов
* Поддержка миров (функция "Информация о мире" / WorldInfo): создавайте свой богатый лор, или экономьте токены для карточек персонажей
* Соединение через [OpenRouter](https://openrouter.ai) для разных API (Claude, GPT-4/3.5 и других)
* Соединение с API [Oobabooga's TextGen WebUI](https://github.com/oobabooga/text-generation-webui)
* Соединение с [AI Horde](https://horde.koboldai.net/)
* Настройку форматирования промптов
## Расширения
SillyTavern поддерживает расширения, при этом некоторые из ИИ-модулей работают через [SillyTavern Extras API](https://github.com/SillyTavern/SillyTavern-extras)
* Заметки автора / Смещение характера
* Эмоции для персонажей (спрайты)
* Автоматический саммарайз (краткий пересказ) истории чата
* Возможность отправить в чат картинку, которую ИИ сможет рассмотреть и понять
* Генерация картинок в Stable Diffusion (5 пресетов для чата, плюс свободный режим)
* Text-to-speech для сообщений ИИ (с помощью ElevenLabs, Silero, или родной TTS вашей ОС)
Полный список расширений и инструкций к ним можно найти в [документации](https://docs.sillytavern.app/).
## Улучшения от RossAscends для UI/CSS/общего удобства
* Мобильный интерфейс адаптирован для iOS, добавлена возможность сохранить ярлык на главный экран и открыть приложение в полноэкранном режиме.
* Горячие клавиши
* Up = Редактировать последнее сообщение в чате
* Ctrl+Up = Редактировать ВАШЕ последнее сообщение в чате
* Left = свайп влево
* Right = свайп вправо (ОБРАТИТЕ ВНИМАНИЕ: когда в окне ввода что-то напечатано, клавиши для свайпа не работают)
* Ctrl+Left = посмотреть локальные переменные (в консоли браузера)
* Enter (при нахождении внутри окна ввода) = отправить ваше сообщение ИИ
* Ctrl+Enter = Повторная генерация последнего ответа ИИ
* Страница больше не перезагружается при смене имени пользователя или удалении персонажа
* Отключаемая возможность автоматически соединяться с API при загрузке страницы.
* Отключаемая возможность автоматически загружать последнего открытого персонажа при загрузке страницы.
* Улучшенный счётчик токенов - работает с несохранёнными персонажами, отображает и перманентные, и временные токены
* Улучшенный менеджер чатов
* Файлы с новыми чатами получают читабельные названия вида "(персонаж) - (когда создано)"
* Увеличен размер превью чата с 40 символов до 300.
* Несколько вариантов сортировки списка персонажей (по имени, дате создания, размеру чата).
* Панели настроек слева и справа автоматически скрываются, если щёлкнуть за их пределы.
* При нажатии на значок замка навигационная панель будет закреплена на экране, и эта настройка сохранится между сессиями
* Сам статус панели (открыта или закрыта) также сохраняется между сессиями
* Кастомизируемый интерфейс чата:
* Настройте звук при получении нового ответа
* Переключайтесь между круглыми и прямоугольными аватарками
* Увеличенное вширь окно чата для стационарных ПК
* Возможность включать полупрозрачные панели, стилизованные под стекло
* Настраиваемые цвета для обычного текста, курсива, цитат
* Настраиваемый цвет фона и интенсивность размытия
# ⌛ Установка
> **Внимание!**
> * НЕ УСТАНАВЛИВАЙТЕ В ПАПКИ, КОТОРЫЕ КОНТРОЛИРУЕТ WINDOWS (Program Files, System32 и т.п.).
> * НЕ ЗАПУСКАЙТЕ START.BAT С ПРАВАМИ АДМИНИСТРАТОРА
> * УСТАНОВКА НА WINDOWS 7 НЕВОЗМОЖНА ИЗ-ЗА ОТСУТСТВИЯ NODEJS 18.16
## 🪟 Windows
## Установка через Git
1. Установите [NodeJS](https://nodejs.org/en) (рекомендуется последняя LTS-версия)
2. Установите [Git for Windows](https://gitforwindows.org/)
3. Откройте Проводник (`Win+E`)
4. Перейдите в папку, которую не контролирует Windows, или создайте её. (пример: C:\MySpecialFolder\)
5. Откройте командную строку. Для этого нажмите на адресную строку (сверху), введите `cmd` и нажмите Enter.
6. Когда появится чёрное окошко (командная строка), введите ОДНУ из перечисленных ниже команд:
- для ветки release: `git clone https://github.com/SillyTavern/SillyTavern -b release`
- для ветки staging: `git clone https://github.com/SillyTavern/SillyTavern -b staging`
7. Когда клонирование закончится, дважды щёлкните по `Start.bat`, чтобы установить зависимости для NodeJS.
8. После этого сервер запустится, и SillyTavern откроется в вашем браузере.
## Установка с помощью SillyTavern Launcher
1. Установите [Git for Windows](https://gitforwindows.org/)
2. Откройте Проводник (`Win+E`) и создайте или выберите папку, в которую будет установлен лаунчер
3. Откройте командную строку. Для этого нажмите на адресную строку (сверху), введите `cmd` и нажмите Enter.
4. Когда появится чёрное окошко, введите следующую команду: `git clone https://github.com/SillyTavern/SillyTavern-Launcher.git`
5. Дважды щёлкните по `installer.bat` и выберите, что именно хотите установить
6. После завершения установки дважды щёлкните по `launcher.bat`
## Установка с помощью GitHub Desktop
(Тут речь про git **только** в рамках GitHub Desktop, если хотите использовать `git` в командной строке, вам также понадобится [Git for Windows](https://gitforwindows.org/))
1. Установите [NodeJS](https://nodejs.org/en) (latest LTS version is recommended)
2. Установите [GitHub Desktop](https://central.github.com/deployments/desktop/desktop/latest/win32)
3. После завершения установки GitHub Desktop, нажмите `Clone a repository from the internet....` (обратите внимание: для этого шага **НЕ требуется** аккаунт на GitHub)
4. В меню перейдите на вкладку URL, введите адрес `https://github.com/SillyTavern/SillyTavern`, и нажмите Clone. В поле Local path можно изменить директорию, в которую будет загружена SillyTavern.
6. Чтобы запустить SillyTavern, откройте Проводник и перейдите в выбранную на предыдущем шаге папку. По умолчанию репозиторий будет склонирован сюда: `C:\Users\[Имя пользователя]\Documents\GitHub\SillyTavern`
7. Дважды щёлкните по файлу `start.bat`. (обратите внимание: окончание `.bat` может быть скрыто настройками вашей ОС. Таким образом, имя файла будет выглядеть как "`Start`". Дважды щёлкните по нему, чтобы запустить SillyTavern)
8. После того, как вы дважды щёлкнули по файлу, должно открыться чёрное окошко, и SillyTavern начнёт устанавливать свои зависимости.
9. Если установка прошла успешно, то в командной строке будет вот такое, а в браузере откроется вкладка с SillyTavern:
10. Подключайтесь к любому из [поддерживаемых API](https://docs.sillytavern.app/usage/api-connections/) и начинайте переписку!
## 🐧 Linux и 🍎 MacOS
В MacOS и Linux всё это делается через Терминал.
1. Установите git и nodeJS (как именно - зависит от вашей ОС)
2. Клонируйте репозиторий
- для ветки release: `git clone https://github.com/SillyTavern/SillyTavern -b release`
- для ветки staging: `git clone https://github.com/SillyTavern/SillyTavern -b staging`
3. Перейдите в папку установки с помощью `cd SillyTavern`.
4. Запустите скрипт `start.sh` с помощью одной из команд:
- `./start.sh`
- `bash start.sh`
## Установка с помощью SillyTavern Launcher
### Для пользователей Linux
1. Откройте любимый терминал и установите git
2. Загрузите Sillytavern Launcher с помощью команды: `git clone https://github.com/SillyTavern/SillyTavern-Launcher.git`
3. Перейдите в SillyTavern-Launcher: `cd SillyTavern-Launcher`
4. Запустите лаунчер установки: `chmod +x install.sh && ./install.sh`, затем выберите, что конкретно хотите установить
5. После завершения установки, запустите лаунчер следующей командой: `chmod +x launcher.sh && ./launcher.sh`
### Для пользователей Mac
1. Откройте терминал и установите brew: `/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"`
2. Затем установите git: `brew install git`
3. Загрузите Sillytavern Launcher: `git clone https://github.com/SillyTavern/SillyTavern-Launcher.git`
4. Перейдите в SillyTavern-Launcher: `cd SillyTavern-Launcher`
5. Запустите лаунчер установки: `chmod +x install.sh && ./install.sh` and choose what you wanna install
6. После завершения установки, запустите лаунчер следующей командой: `chmod +x launcher.sh && ./launcher.sh`
## 📱 Мобильные устройства - Установка при помощи termux
> **ОБРАТИТЕ ВНИМАНИЕ!**
>
> **На Android-телефонах SillyTavern можно запускать нативно посредством Termux. Обратитесь к гайду, написанному ArroganceComplex#2659:**
>
> * <https://rentry.org/STAI-Termux>
## Управление ключами от API
SillyTavern сохраняет ключи от ваших API в файле `secrets.json` в папке на сервере.
По умолчанию, ключи не будут отображаться на фронте после их ввода и перезагрузки страницы.
Чтобы включить возможность отображения ключей путём нажатия кнопки в блоке API:
1. Зайдите в файл `config.yaml` и установите `allowKeysExposure` в положение `true`.
2. Перезапустите сервер SillyTavern.
## Удалённое подключение
В основном этим пользуются тогда, когда хотят использовать SillyTavern с телефона, запустив сервер SillyTavern на стационарном ПК в той же Wi-Fi-сети.
Однако это позволит подключаться откуда угодно, а не только вам.
**ВАЖНО: в SillyTavern не предусмотрена возможность использования программы несколькими людьми. Поэтому любой, кто подключится к вашему серверу, получит доступ ко всем вашим персонажам и чатам, а также сможет менять настройки через UI.**
### 1. Заведение "белого списка" IP-адресов
* Создайте в корневой папке SillyTavern файл с названием `whitelist.txt`.
* Откройте файл в текстовом редакторе и внесите список IP-адресов, с которых хотите разрешить подключение.
*Принимаются как обычные IP-адреса, так и целые диапазоны, размеченные с помощью астериска. Примеры:*
```txt
192.168.0.1
192.168.0.20
```
или
```txt
192.168.0.*
```
(диапазон из примера сверху позволит подключаться всем устройствам в локальной сети)
Также принимаются маски CIDR (вида 10.0.0.0/24).
* Сохраните файл `whitelist.txt`.
* Перезапустите сервер ST.
После этого устройства из белого списка смогут подключаться к вашему серверу.
*Обратите внимание: в файле `config.yaml` также имеется массив `whitelist`, который работает по тому же принципу. Однако если существует файл `whitelist.txt`, то этот массив игнорируется.*
### 2. Получение IP хост-машины с ST
После настройки белого списка адресов, следующим шагом будет получение IP-адреса хост-машины, на которой запущена SillyTavern.
Если хост-машина находится в той же Wi-Fi-сети, то можно воспользоваться её внутренним Wi-Fi-IP-адресом:
* На Windows: нажмите Пуск > введите `cmd.exe` в поиске > в консоли введите команду `ipconfig` и нажмите Enter > найдите пункт `IPv4-адрес`.
Если вы (или кто-то другой) хотите подключаться к хост-машине из другой сети, то вам понадобится ваш публичный IP-адрес.
* Откройте [эту страницу](https://whatismyipaddress.com/) с вашей хост-машины и найдите пункт `IPv4`. На этот адрес и будет подключаться удалённое устройство.
### 3. Соединить удалённое устройство с хост-машиной ST
Какой бы IP-адрес вы ни выбрали, вам нужно будет вводить его в адресной строке браузера вашего удалённого устройства.
Обычный адрес хост-машины, находящейся в той же Wi-Fi-сети, выглядит примерно так:
`http://192.168.0.5:8000`
НЕ используйте https://
Только http://
### Открытие доступа до ST для всех IP-адресов
Мы не рекомендуем так делать, но вы можете открыть файл `config.yaml` и изменить `whitelistMode` на `false`.
Обязательно нужно удалить (или переименовать) файл `whitelist.txt`, если такой файл есть в корневой директории SillyTavern.
Эта практика считается небезопасной, поэтому, если вы решите так сделать, мы попросим вас установить логин и пароль.
Оба этих параметра настраиваются в `config.yaml` (username и password).
Останется только перезапустить сервер ST, и после этого к вам сможет подключиться любой пользователь вне зависимости от IP-адреса его устройства. Главное, чтобы он знал логин и пароль.
### Не получается соединиться?
* Создайте входящее/исходящее правило в вашем фаерволле для порта, указанного в `config.yaml`. НЕ ПУТАЙТЕ этот процесс с пробросом портов на роутере. Если по ошибке перепутаете, то на ваш сервер сможет забраться посторонний человек и украсть ваши логи, этого следует избегать.
* Переключите Сетевой профиль на значение "Частные". Для этого зайдите в Параметры > Сеть и Интернет > Ethernet. КРАЙНЕ важно для Windows 11, без этого не получится подключиться даже с правилом фаервола.
## Проблемы с производительностью?
Попробуйте включить опцию "Отключить эффект размытия" в меню "Пользовательские настройки".
## Нравится ваш проект! Как помочь?
### ЧТО ДЕЛАТЬ
1. Присылайте пулл реквесты
2. Присылайте идеи и баг-репорты, оформленные по установленным шаблонам
3. Прежде чем задавать вопросы, прочтите readme и документацию
### ЧЕГО НЕ ДЕЛАТЬ
1. Предлагать донаты
2. Присылать баг-репорты безо всякого контекста
3. Задавать вопросы, на которые уже отвечали
## Где найти старые фоны?
Мы двигаемся в сторону 100% уникальности всего используемого контента, поэтому старые фоны были убраны из репозитория.
Они отправлены в архив, скачать их можно здесь:
<https://files.catbox.moe/1xevnc.zip>
## Авторы и лицензии
**Мы надеемся, что эта программа принесёт людям пользу,
но мы не даём НИКАКИХ ГАРАНТИЙ; мы ни в коем случае не гарантируем того,
что программа СООТВЕТСТВУЕТ КАКИМ-ЛИБО КРИТЕРИЯМ или ПРИГОДНА ДЛЯ КАКОЙ-ЛИБО ЦЕЛИ.
Подробнее можно узнать в GNU Affero General Public License.**
* Базовая TAI от Humi: Лицензия неизвестна
* Модификации от Cohee и производная кодовая база: AGPL v3
* Дополнения RossAscends: AGPL v3
* Кусочки TavernAITurbo мода от CncAnon: Лицензия неизвестна
* Различные коммиты и предложения от kingbri (<https://github.com/bdashore3>)
* Расширения и внедрение разного рода удобств - city_unit (<https://github.com/city-unit>)
* Различные коммиты и баг-репорты от StefanDanielSchwarz (<https://github.com/StefanDanielSchwarz>)
* Режим Вайфу вдохновлён работой PepperTaco (<https://github.com/peppertaco/Tavern/>)
* Благодарность Pygmalion University за прекрасную работу по тестированию и за все предлагаемые крутые фичи!
* Благодарность oobabooga за компиляцию пресетов для TextGen
* Пресеты для KoboldAI из KAI Lite: <https://lite.koboldai.net/>
* Шрифт Noto Sans от Google (OFL license)
* Тема Font Awesome <https://fontawesome.com> (Иконки: CC BY 4.0, Шрифты: SIL OFL 1.1, Код: MIT License)
* Клиентская библиотека для AI Horde от ZeldaFan0225: <https://github.com/ZeldaFan0225/ai_horde>
* Пусковой скрипт для Linux от AlpinDale
* Благодарность paniphons за оформление документа с FAQ
* Фон в честь 10 тысяч пользователей в Discord от @kallmeflocc
* Стандартный контент (персонажи и лорбуки) предоставлен пользователями @OtisAlejandro, @RossAscends и @kallmeflocc
* Корейский перевод от @doloroushyeonse
* Поддержка k_euler_a для Horde от <https://github.com/Teashrock>
* Китайский перевод от [@XXpE3](https://github.com/XXpE3), 中文 ISSUES 可以联系 @XXpE3
<!-- LINK GROUP -->
[back-to-top]: https://img.shields.io/badge/-BACK_TO_TOP-151515?style=flat-square
[cover]: https://github.com/SillyTavern/SillyTavern/assets/18619528/c2be4c3f-aada-4f64-87a3-ae35a68b61a4
[discord-link]: https://discord.gg/sillytavern
[discord-shield]: https://img.shields.io/discord/1100685673633153084?color=5865F2&label=discord&labelColor=black&logo=discord&logoColor=white&style=flat-square
[discord-shield-badge]: https://img.shields.io/discord/1100685673633153084?color=5865F2&label=discord&labelColor=black&logo=discord&logoColor=white&style=for-the-badge
> [!IMPORTANT]
> Приведенная здесь информация может быть устаревшей или неполной и предоставляется только для вашего удобства. Пожалуйста, используйте английскую версию для получения наиболее актуальной информации.
<a name="readme-top"></a>
![][cover]
<div align="center">
[English](readme.md) | [German](readme-de_de.md) | [中文](readme-zh_cn.md) | [繁體中文](readme-zh_tw.md) | [日本語](readme-ja_jp.md) | Русский | [한국어](readme-ko_kr.md)
[![GitHub Stars](https://img.shields.io/github/stars/SillyTavern/SillyTavern.svg)](https://github.com/SillyTavern/SillyTavern/stargazers)
[![GitHub Forks](https://img.shields.io/github/forks/SillyTavern/SillyTavern.svg)](https://github.com/SillyTavern/SillyTavern/network)
[![GitHub Issues](https://img.shields.io/github/issues/SillyTavern/SillyTavern.svg)](https://github.com/SillyTavern/SillyTavern/issues)
[![GitHub Pull Requests](https://img.shields.io/github/issues-pr/SillyTavern/SillyTavern.svg)](https://github.com/SillyTavern/SillyTavern/pulls)
</div>
---
Мобайл-френдли интерфейс, поддержка множества API (KoboldAI/CPP, Horde, NovelAI, Ooba, OpenAI, OpenRouter, Claude, Scale), ВН-образный режим Вайфу, Stable Diffusion, TTS, поддержка миров (лорбуков), кастомизируемый UI, автоперевод, тончайшая настройка промптов + возможность устанавливать расширения.
Основано на форке [TavernAI](https://github.com/TavernAI/TavernAI) версии 1.2.8
## Важные новости!
1. Чтобы помочь вам быстрее разобраться в SillyTavern, мы создали [сайт с документацией](https://docs.sillytavern.app/). Ответы на большинство вопросов можно найти там.
2. Почему пропали расширения после апдейта? Начиная с версии 1.10.6, большинство встроенных расширений были конвертированы в формат загружаемых аддонов. Их можно установить обратно через меню "Download Extensions and Assets" на панели расширений (значок с тремя кубиками сверху).
3. Не поддерживается следующая платформа: android arm LEtime-web. 32-битный Android требует внешнюю зависимость, которую нельзя установить посредством npm. Для её установки потребуется следующая команда: `pkg install esbuild`. После этого продолжайте установку по общей инструкции.
### Разрабатывается Cohee, RossAscends и всем сообществом SillyTavern
### Что такое SillyTavern и TavernAI?
SillyTavern — это интерфейс, который устанавливается на ПК (и на Android), который даёт возможность общаться с генеративным ИИ и чатиться/ролеплеить с вашими собственными персонажами или персонажами других пользователей.
SillyTavern — это форк версии TavernAI 1.2.8, который разрабатывается более активно и имеет множество новых функций. Сейчас уже можно сказать, что это две отдельные и абсолютно самостоятельные программы.
## Скриншоты
<img width="500" alt="image" src="https://github.com/user-attachments/assets/9b5f32f0-c3b3-4102-b3f5-0e9213c0f50f">
<img width="500" alt="image" src="https://github.com/user-attachments/assets/913fdbaa-7d33-42f1-ae2c-89dca41c53d1">
### Ветки
SillyTavern разрабатывается в двух ветках, чтобы всем категориям пользователей было удобно.
* release -🌟 **Рекомендовано для большинства пользователей.** Самая стабильная ветка, рекомендуем именно её. Обновляется только в момент крупных релизов. Подходит для большей части пользователей.
* staging - ⚠️ **Не рекомендуется для повседневного использования.** В этой ветке весь самый свежий и новый функционал, но будьте аккуратны, поскольку сломаться может в любом месте и в любое время. Только для продвинутых пользователей и энтузиастов.
Если вы не умеете обращаться с git через командную строку, или не знаете, что такое ветка, то не переживайте! Наилучшим вариантом всегда остаётся ветка release.
### Что ещё нужно, кроме SillyTavern?
Сама по себе SillyTavern бесполезна, ведь это просто интерфейс. Вам потребуется доступ к бэкенду с ИИ, который и будет отыгрывать выбранного вами персонажа. Поддерживаются разные виды бэкендов: OpenAPI API (GPT), KoboldAI (локально или на Google Colab), и многое другое. Больше информации в [FAQ](https://docs.sillytavern.app/usage/faq/).
### Требуется ли для SillyTavern мощный ПК?
SillyTavern — это просто интерфейс, поэтому запустить его можно на любой картошке. Мощным должен быть бэкенд с ИИ.
## Есть вопросы или предложения?
### У нас появился сервер в Discord
| [![][discord-shield-badge]][discord-link] | [Вступайте в наше Discord-сообщество!](https://discord.gg/sillytavern) Задавайте вопросы, делитесь любимыми персонажами и промптами. |
| :---------------------------------------- | :----------------------------------------------------------------------------------------------------------------------------------- |
Также можно написать разработчикам напрямую:
* Discord: cohee или rossascends
* Reddit: [/u/RossAscends](https://www.reddit.com/user/RossAscends/) или [/u/sillylossy](https://www.reddit.com/user/sillylossy/)
* [Запостить issue на GitHub](https://github.com/SillyTavern/SillyTavern/issues)
## Эта версия включает
* Глубоко переработанную TavernAI 1.2.8 (переписано и оптимизировано более 50% кода)
* Свайпы
* Групповые чаты: комнаты для нескольких ботов, где персонажи могут говорить друг с другом и с вами
* Чекпоинты и ветки для чатов
* Продвинутые настройки для KoboldAI / TextGen со множеством созданных сообществом пресетов
* Поддержка миров (функция "Информация о мире" / WorldInfo): создавайте свой богатый лор, или экономьте токены для карточек персонажей
* Соединение через [OpenRouter](https://openrouter.ai) для разных API (Claude, GPT-4/3.5 и других)
* Соединение с API [Oobabooga's TextGen WebUI](https://github.com/oobabooga/text-generation-webui)
* Соединение с [AI Horde](https://aihorde.net/)
* Настройку форматирования промптов
## Расширения
SillyTavern поддерживает расширения.
* Эмоции для персонажей (спрайты)
* Автоматический саммарайз (краткий пересказ) истории чата
* Возможность отправить в чат картинку, которую ИИ сможет рассмотреть и понять
* Генерация картинок в Stable Diffusion (5 пресетов для чата, плюс свободный режим)
* Text-to-speech для сообщений ИИ (с помощью ElevenLabs, Silero, или родной TTS вашей ОС)
Полный список расширений и инструкций к ним можно найти в [документации](https://docs.sillytavern.app/).
## Улучшения от RossAscends для UI/CSS/общего удобства
* Мобильный интерфейс адаптирован для iOS, добавлена возможность сохранить ярлык на главный экран и открыть приложение в полноэкранном режиме.
* Горячие клавиши
* Up = Редактировать последнее сообщение в чате
* Ctrl+Up = Редактировать ВАШЕ последнее сообщение в чате
* Left = свайп влево
* Right = свайп вправо (ОБРАТИТЕ ВНИМАНИЕ: когда в окне ввода что-то напечатано, клавиши для свайпа не работают)
* Ctrl+Left = посмотреть локальные переменные (в консоли браузера)
* Enter (при нахождении внутри окна ввода) = отправить ваше сообщение ИИ
* Ctrl+Enter = Повторная генерация последнего ответа ИИ
* Страница больше не перезагружается при смене имени пользователя или удалении персонажа
* Отключаемая возможность автоматически соединяться с API при загрузке страницы.
* Отключаемая возможность автоматически загружать последнего открытого персонажа при загрузке страницы.
* Улучшенный счётчик токенов - работает с несохранёнными персонажами, отображает и перманентные, и временные токены
* Улучшенный менеджер чатов
* Файлы с новыми чатами получают читабельные названия вида "(персонаж) - (когда создано)"
* Увеличен размер превью чата с 40 символов до 300.
* Несколько вариантов сортировки списка персонажей (по имени, дате создания, размеру чата).
* Панели настроек слева и справа автоматически скрываются, если щёлкнуть за их пределы.
* При нажатии на значок замка навигационная панель будет закреплена на экране, и эта настройка сохранится между сессиями
* Сам статус панели (открыта или закрыта) также сохраняется между сессиями
* Кастомизируемый интерфейс чата:
* Настройте звук при получении нового ответа
* Переключайтесь между круглыми и прямоугольными аватарками
* Увеличенное вширь окно чата для стационарных ПК
* Возможность включать полупрозрачные панели, стилизованные под стекло
* Настраиваемые цвета для обычного текста, курсива, цитат
* Настраиваемый цвет фона и интенсивность размытия
# ⌛ Установка
> **Внимание!**
> * НЕ УСТАНАВЛИВАЙТЕ В ПАПКИ, КОТОРЫЕ КОНТРОЛИРУЕТ WINDOWS (Program Files, System32 и т.п.).
> * НЕ ЗАПУСКАЙТЕ START.BAT С ПРАВАМИ АДМИНИСТРАТОРА
> * УСТАНОВКА НА WINDOWS 7 НЕВОЗМОЖНА ИЗ-ЗА ОТСУТСТВИЯ NODEJS 18.16
## 🪟 Windows
## Установка через Git
1. Установите [NodeJS](https://nodejs.org/en) (рекомендуется последняя LTS-версия)
2. Установите [Git for Windows](https://gitforwindows.org/)
3. Откройте Проводник (`Win+E`)
4. Перейдите в папку, которую не контролирует Windows, или создайте её. (пример: C:\MySpecialFolder\)
5. Откройте командную строку. Для этого нажмите на адресную строку (сверху), введите `cmd` и нажмите Enter.
6. Когда появится чёрное окошко (командная строка), введите ОДНУ из перечисленных ниже команд:
- для ветки release: `git clone https://github.com/SillyTavern/SillyTavern -b release`
- для ветки staging: `git clone https://github.com/SillyTavern/SillyTavern -b staging`
7. Когда клонирование закончится, дважды щёлкните по `Start.bat`, чтобы установить зависимости для NodeJS.
8. После этого сервер запустится, и SillyTavern откроется в вашем браузере.
## Установка с помощью SillyTavern Launcher
1. Установите [Git for Windows](https://gitforwindows.org/)
2. Откройте Проводник (`Win+E`) и создайте или выберите папку, в которую будет установлен лаунчер
3. Откройте командную строку. Для этого нажмите на адресную строку (сверху), введите `cmd` и нажмите Enter.
4. Когда появится чёрное окошко, введите следующую команду: `git clone https://github.com/SillyTavern/SillyTavern-Launcher.git`
5. Дважды щёлкните по `installer.bat` и выберите, что именно хотите установить
6. После завершения установки дважды щёлкните по `launcher.bat`
## Установка с помощью GitHub Desktop
(Тут речь про git **только** в рамках GitHub Desktop, если хотите использовать `git` в командной строке, вам также понадобится [Git for Windows](https://gitforwindows.org/))
1. Установите [NodeJS](https://nodejs.org/en) (latest LTS version is recommended)
2. Установите [GitHub Desktop](https://central.github.com/deployments/desktop/desktop/latest/win32)
3. После завершения установки GitHub Desktop, нажмите `Clone a repository from the internet....` (обратите внимание: для этого шага **НЕ требуется** аккаунт на GitHub)
4. В меню перейдите на вкладку URL, введите адрес `https://github.com/SillyTavern/SillyTavern`, и нажмите Clone. В поле Local path можно изменить директорию, в которую будет загружена SillyTavern.
6. Чтобы запустить SillyTavern, откройте Проводник и перейдите в выбранную на предыдущем шаге папку. По умолчанию репозиторий будет склонирован сюда: `C:\Users\[Имя пользователя]\Documents\GitHub\SillyTavern`
7. Дважды щёлкните по файлу `start.bat`. (обратите внимание: окончание `.bat` может быть скрыто настройками вашей ОС. Таким образом, имя файла будет выглядеть как "`Start`". Дважды щёлкните по нему, чтобы запустить SillyTavern)
8. После того, как вы дважды щёлкнули по файлу, должно открыться чёрное окошко, и SillyTavern начнёт устанавливать свои зависимости.
9. Если установка прошла успешно, то в командной строке будет вот такое, а в браузере откроется вкладка с SillyTavern:
10. Подключайтесь к любому из [поддерживаемых API](https://docs.sillytavern.app/usage/api-connections/) и начинайте переписку!
## 🐧 Linux и 🍎 MacOS
В MacOS и Linux всё это делается через Терминал.
1. Установите git и nodeJS (как именно - зависит от вашей ОС)
2. Клонируйте репозиторий
- для ветки release: `git clone https://github.com/SillyTavern/SillyTavern -b release`
- для ветки staging: `git clone https://github.com/SillyTavern/SillyTavern -b staging`
3. Перейдите в папку установки с помощью `cd SillyTavern`.
4. Запустите скрипт `start.sh` с помощью одной из команд:
- `./start.sh`
- `bash start.sh`
## Установка с помощью SillyTavern Launcher
### Для пользователей Linux
1. Откройте любимый терминал и установите git
2. Загрузите Sillytavern Launcher с помощью команды: `git clone https://github.com/SillyTavern/SillyTavern-Launcher.git`
3. Перейдите в SillyTavern-Launcher: `cd SillyTavern-Launcher`
4. Запустите лаунчер установки: `chmod +x install.sh && ./install.sh`, затем выберите, что конкретно хотите установить
5. После завершения установки, запустите лаунчер следующей командой: `chmod +x launcher.sh && ./launcher.sh`
### Для пользователей Mac
1. Откройте терминал и установите brew: `/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"`
2. Затем установите git: `brew install git`
3. Загрузите Sillytavern Launcher: `git clone https://github.com/SillyTavern/SillyTavern-Launcher.git`
4. Перейдите в SillyTavern-Launcher: `cd SillyTavern-Launcher`
5. Запустите лаунчер установки: `chmod +x install.sh && ./install.sh` and choose what you wanna install
6. После завершения установки, запустите лаунчер следующей командой: `chmod +x launcher.sh && ./launcher.sh`
## 🐋 Установка с помощью Docker
Предполагается, что вы уже установили Docker, имеете доступ к командной строке для установки контейнеров и знакомы с их базовым управлением.
### Сборка образа самостоятельно
У нас есть подробное руководство по использованию SillyTavern в Docker [здесь](http://docs.sillytavern.app/installation/docker/), которое охватывает установку на Windows, macOS и Linux! Ознакомьтесь с ним, если хотите создать образ самостоятельно.
### Использование реестра контейнеров GitHub (самый простой способ)
Для работы SillyTavern вам понадобятся две обязательные настройки каталогов и одна настройка порта. В команде замените указанные значения на свои:
#### Переменные контейнера
##### Маппинг томов
* [config] - директория, где на вашем хосте будут храниться файлы конфигурации SillyTavern.
* [data] - директория, где на вашем хосте будут храниться пользовательские данные SillyTavern (включая персонажей).
* [plugins] - (необязательно) директория, где на вашем хосте будут храниться плагины сервера SillyTavern.
##### Маппинг портов
* [PublicPort] - Порт, через который будет передаваться трафик. Это обязательно, так как вы будете обращаться к контейнеру извне его виртуальной машины. НЕ ОТКРЫВАЙТЕ этот порт в интернет без реализации дополнительного уровня безопасности.
##### Дополнительные настройки
* [DockerNet] - Docker сеть, к которой контейнер должен быть подключен. Если вы не знаете, что это, обратитесь к [официальной документации Docker](https://docs.docker.com/reference/cli/docker/network/).
* [version] - на правой части этой страницы GitHub вы найдете раздел "Packages". Выберите пакет "sillytavern", чтобы увидеть версии образов. Тег "latest" позволит вам обновляться до текущего релиза. Также доступны теги "staging" и "release", которые соответствуют ночным сборкам соответствующих веток. Однако это может быть нецелесообразно, если вы используете расширения, которые могут ломаться и требуют времени для обновления.
#### Команда установки
1. Откройте командную строку
2. Выполните следующую команду
`docker create --name='sillytavern' --net='[DockerNet]' -p '8000:8000/tcp' -v '[plugins]':'/home/node/app/plugins':'rw' -v '[config]':'/home/node/app/config':'rw' -v '[data]':'/home/node/app/data':'rw' 'ghcr.io/sillytavern/sillytavern:[version]'`
> Заметьте, что 8000 является портом по умолчанию. Не забудьте использовать соответствующий порт, если вы измените его в конфиге.
## 📱 Мобильные устройства - Установка при помощи termux
> **ОБРАТИТЕ ВНИМАНИЕ!**
>
> **На Android-телефонах SillyTavern можно запускать нативно посредством Termux. Обратитесь к гайду, написанному ArroganceComplex#2659:**
>
> * <https://rentry.org/STAI-Termux>
## Управление ключами от API
SillyTavern сохраняет ключи от ваших API в файле `secrets.json` в папке на сервере.
По умолчанию, ключи не будут отображаться на фронте после их ввода и перезагрузки страницы.
Чтобы включить возможность отображения ключей путём нажатия кнопки в блоке API:
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-сети.
Однако это позволит подключаться откуда угодно, а не только вам.
**ВАЖНО: в SillyTavern не предусмотрена возможность использования программы несколькими людьми. Поэтому любой, кто подключится к вашему серверу, получит доступ ко всем вашим персонажам и чатам, а также сможет менять настройки через UI.**
### 1. Заведение "белого списка" IP-адресов
* Создайте в корневой папке SillyTavern файл с названием `whitelist.txt`.
* Откройте файл в текстовом редакторе и внесите список IP-адресов, с которых хотите разрешить подключение.
*Принимаются как обычные IP-адреса, так и целые диапазоны, размеченные с помощью астериска. Примеры:*
```txt
192.168.0.1
192.168.0.20
```
или
```txt
192.168.0.*
```
(диапазон из примера сверху позволит подключаться всем устройствам в локальной сети)
Также принимаются маски CIDR (вида 10.0.0.0/24).
* Сохраните файл `whitelist.txt`.
* Перезапустите сервер ST.
После этого устройства из белого списка смогут подключаться к вашему серверу.
*Обратите внимание: в файле `config.yaml` также имеется массив `whitelist`, который работает по тому же принципу. Однако если существует файл `whitelist.txt`, то этот массив игнорируется.*
### 2. Получение IP хост-машины с ST
После настройки белого списка адресов, следующим шагом будет получение IP-адреса хост-машины, на которой запущена SillyTavern.
Если хост-машина находится в той же Wi-Fi-сети, то можно воспользоваться её внутренним Wi-Fi-IP-адресом:
* На Windows: нажмите Пуск > введите `cmd.exe` в поиске > в консоли введите команду `ipconfig` и нажмите Enter > найдите пункт `IPv4-адрес`.
Если вы (или кто-то другой) хотите подключаться к хост-машине из другой сети, то вам понадобится ваш публичный IP-адрес.
* Откройте [эту страницу](https://whatismyipaddress.com/) с вашей хост-машины и найдите пункт `IPv4`. На этот адрес и будет подключаться удалённое устройство.
### 3. Соединить удалённое устройство с хост-машиной ST
Какой бы IP-адрес вы ни выбрали, вам нужно будет вводить его в адресной строке браузера вашего удалённого устройства.
Обычный адрес хост-машины, находящейся в той же Wi-Fi-сети, выглядит примерно так:
`http://192.168.0.5:8000`
НЕ используйте https://
Только http://
### Открытие доступа до ST для всех IP-адресов
Мы не рекомендуем так делать, но вы можете открыть файл `config.yaml` и изменить `whitelistMode` на `false`.
Обязательно нужно удалить (или переименовать) файл `whitelist.txt`, если такой файл есть в корневой директории SillyTavern.
Эта практика считается небезопасной, поэтому, если вы решите так сделать, мы попросим вас установить логин и пароль.
Оба этих параметра настраиваются в `config.yaml` (username и password).
Останется только перезапустить сервер ST, и после этого к вам сможет подключиться любой пользователь вне зависимости от IP-адреса его устройства. Главное, чтобы он знал логин и пароль.
### Не получается соединиться?
* Создайте входящее/исходящее правило в вашем фаерволле для порта, указанного в `config.yaml`. НЕ ПУТАЙТЕ этот процесс с пробросом портов на роутере. Если по ошибке перепутаете, то на ваш сервер сможет забраться посторонний человек и украсть ваши логи, этого следует избегать.
* Переключите Сетевой профиль на значение "Частные". Для этого зайдите в Параметры > Сеть и Интернет > Ethernet. КРАЙНЕ важно для Windows 11, без этого не получится подключиться даже с правилом фаервола.
## Проблемы с производительностью?
Попробуйте включить опцию "Отключить эффект размытия" в меню "Пользовательские настройки".
## Нравится ваш проект! Как помочь?
### ЧТО ДЕЛАТЬ
1. Присылайте пулл реквесты
2. Присылайте идеи и баг-репорты, оформленные по установленным шаблонам
3. Прежде чем задавать вопросы, прочтите readme и документацию
### ЧЕГО НЕ ДЕЛАТЬ
1. Предлагать донаты
2. Присылать баг-репорты безо всякого контекста
3. Задавать вопросы, на которые уже отвечали
## Где найти старые фоны?
Мы двигаемся в сторону 100% уникальности всего используемого контента, поэтому старые фоны были убраны из репозитория.
Они отправлены в архив, скачать их можно здесь:
<https://files.catbox.moe/1xevnc.zip>
## Авторы и лицензии
**Мы надеемся, что эта программа принесёт людям пользу,
но мы не даём НИКАКИХ ГАРАНТИЙ; мы ни в коем случае не гарантируем того,
что программа СООТВЕТСТВУЕТ КАКИМ-ЛИБО КРИТЕРИЯМ или ПРИГОДНА ДЛЯ КАКОЙ-ЛИБО ЦЕЛИ.
Подробнее можно узнать в GNU Affero General Public License.**
* Базовая TAI от Humi: Лицензия неизвестна
* Модификации от Cohee и производная кодовая база: AGPL v3
* Дополнения RossAscends: AGPL v3
* Кусочки TavernAITurbo мода от CncAnon: Лицензия неизвестна
* Различные коммиты и предложения от kingbri (<https://github.com/bdashore3>)
* Расширения и внедрение разного рода удобств - city_unit (<https://github.com/city-unit>)
* Различные коммиты и баг-репорты от StefanDanielSchwarz (<https://github.com/StefanDanielSchwarz>)
* Режим Вайфу вдохновлён работой PepperTaco (<https://github.com/peppertaco/Tavern/>)
* Благодарность Pygmalion University за прекрасную работу по тестированию и за все предлагаемые крутые фичи!
* Благодарность oobabooga за компиляцию пресетов для TextGen
* Пресеты для KoboldAI из KAI Lite: <https://lite.koboldai.net/>
* Шрифт Noto Sans от Google (OFL license)
* Тема Font Awesome <https://fontawesome.com> (Иконки: CC BY 4.0, Шрифты: SIL OFL 1.1, Код: MIT License)
* Клиентская библиотека для AI Horde от ZeldaFan0225: <https://github.com/ZeldaFan0225/ai_horde>
* Пусковой скрипт для Linux от AlpinDale
* Благодарность paniphons за оформление документа с FAQ
* Фон в честь 10 тысяч пользователей в Discord от @kallmeflocc
* Стандартный контент (персонажи и лорбуки) предоставлен пользователями @OtisAlejandro, @RossAscends и @kallmeflocc
* Корейский перевод от @doloroushyeonse
* Поддержка k_euler_a для Horde от <https://github.com/Teashrock>
* Китайский перевод от [@XXpE3](https://github.com/XXpE3), 中文 ISSUES 可以联系 @XXpE3
<!-- LINK GROUP -->
[back-to-top]: https://img.shields.io/badge/-BACK_TO_TOP-151515?style=flat-square
[cover]: https://github.com/user-attachments/assets/01a6ae9a-16aa-45f2-8bff-32b5dc587e44
[discord-link]: https://discord.gg/sillytavern
[discord-shield]: https://img.shields.io/discord/1100685673633153084?color=5865F2&label=discord&labelColor=black&logo=discord&logoColor=white&style=flat-square
[discord-shield-badge]: https://img.shields.io/discord/1100685673633153084?color=5865F2&label=discord&labelColor=black&logo=discord&logoColor=white&style=for-the-badge

View File

@@ -1,6 +1,20 @@
[English](readme.md) | 中文 | [日本語](readme-ja_jp.md) | [Русский](readme-ru_ru.md)
> [!IMPORTANT]
> 这里的信息可能已经过时或不完整,仅供您参考。请使用英文版本获取最新信息。
![image](https://github.com/SillyTavern/SillyTavern/assets/18619528/c2be4c3f-aada-4f64-87a3-ae35a68b61a4)
![][cover]
<div align="center">
[English](readme.md) | [German](readme-de_de.md) | 中文 | [繁體中文](readme-zh_tw.md) | [日本語](readme-ja_jp.md) | [Русский](readme-ru_ru.md) | [한국어](readme-ko_kr.md)
[![GitHub Stars](https://img.shields.io/github/stars/SillyTavern/SillyTavern.svg)](https://github.com/SillyTavern/SillyTavern/stargazers)
[![GitHub Forks](https://img.shields.io/github/forks/SillyTavern/SillyTavern.svg)](https://github.com/SillyTavern/SillyTavern/network)
[![GitHub Issues](https://img.shields.io/github/issues/SillyTavern/SillyTavern.svg)](https://github.com/SillyTavern/SillyTavern/issues)
[![GitHub Pull Requests](https://img.shields.io/github/issues-pr/SillyTavern/SillyTavern.svg)](https://github.com/SillyTavern/SillyTavern/pulls)
</div>
---
移动设备界面友好多种人工智能服务或模型支持KoboldAI/CPP, Horde, NovelAI, Ooba, OpenAI, OpenRouter, Claude, Scale类似 Galgame 的 老 婆 模 式Horde SD文本系统语音生成世界信息Lorebooks可定制的界面自动翻译和比你所需要的更多的 Prompt。附带扩展服务支持文本绘画生成与语音生成和基于向量数据库 的聊天信息总结。
@@ -67,15 +81,14 @@ SillyTavern 本身并无用处,因为它只是一个用户聊天界面。你
* 支持世界信息Lorebooks创建丰富的传说
* 支持 Window AI 浏览器扩展(运行 Claude、GPT 4 等模型):<https://windowai.io/>
* [Oobabooga's TextGen WebUI](https://github.com/oobabooga/text-generation-webui) API 连接
* 连接 [AI Horde](https://horde.koboldai.net/)
* 连接 [AI Horde](https://aihorde.net/)
* Prompt 生成格式调整
* Webp 角色卡支持PNG 仍是内部格式)
## 扩展
SillyTavern 支持扩展服务,一些额外的人工智能模块可通过 [SillyTavern Extras API](https://github.com/SillyTavern/SillyTavern-extras) 提供
SillyTavern 支持扩展服务。
* 作者注释/角色偏见
* 角色情绪识别
* 聊天记录自动摘要
* 在聊天窗口发送图片,并由人工智能解释图片内容
@@ -276,8 +289,8 @@ SillyTavern 会将 API 密钥保存在目录中的 `secrets.json` 文件内。
## 屏幕截图
<img width="400" alt="image" src="https://user-images.githubusercontent.com/18619528/228649245-8061c60f-63dc-488e-9325-f151b7a3ec2d.png">
<img width="400" alt="image" src="https://user-images.githubusercontent.com/18619528/228649856-fbdeef05-d727-4d5a-be80-266cbbc6b811.png">
<img width="500" alt="image" src="https://github.com/user-attachments/assets/9b5f32f0-c3b3-4102-b3f5-0e9213c0f50f">
<img width="500" alt="image" src="https://github.com/user-attachments/assets/913fdbaa-7d33-42f1-ae2c-89dca41c53d1">
## 许可证和贡献
@@ -304,3 +317,6 @@ SillyTavern 会将 API 密钥保存在目录中的 `secrets.json` 文件内。
* Default content (characters and lore books) provided by @OtisAlejandro, @RossAscends and @kallmeflocc
* Korean translation by @doloroushyeonse
* 中文翻译由 [@XXpE3](https://github.com/XXpE3) 完成,中文 ISSUES 可以联系 @XXpE3
<!-- LINK GROUP -->
[cover]: https://github.com/user-attachments/assets/01a6ae9a-16aa-45f2-8bff-32b5dc587e44

381
.github/readme-zh_tw.md vendored Normal file
View File

@@ -0,0 +1,381 @@
> [!IMPORTANT]
> 這裡的資訊可能已經過時或不完整,僅供您參考。請使用英文版本以取得最新資訊。
<a name="readme-top"></a>
![][cover]
<div align="center">
[English](readme.md) | [German](readme-de_de.md) | [中文](readme-zh_cn.md) | 繁體中文 | [日本語](readme-ja_jp.md) | [Русский](readme-ru_ru.md) | [한국어](readme-ko_kr.md)
[![GitHub 星標](https://img.shields.io/github/stars/SillyTavern/SillyTavern.svg)](https://github.com/SillyTavern/SillyTavern/stargazers)
[![GitHub 分支](https://img.shields.io/github/forks/SillyTavern/SillyTavern.svg)](https://github.com/SillyTavern/SillyTavern/network)
[![GitHub 問題](https://img.shields.io/github/issues/SillyTavern/SillyTavern.svg)](https://github.com/SillyTavern/SillyTavern/issues)
[![GitHub 拉取請求](https://img.shields.io/github/issues-pr/SillyTavern/SillyTavern.svg)](https://github.com/SillyTavern/SillyTavern/pulls)
</div>
---
SillyTavern 提供一個統一的前端介面,整合多種大型語言模型的 API包括KoboldAI/CPP、Horde、NovelAI、Ooba、Tabby、OpenAI、OpenRouter、Claude、Mistral 等。同時具備行動裝置友善的佈局、視覺小說模式Visual Novel Mode、Automatic1111 與 ComfyUI 的影像生成 API 整合、TTS語音合成、世界資訊Lorebook、可自訂 UI、自動翻譯功能以及強大的提示詞prompt設定選項和無限的第三方擴充潛力。
我們擁有一個 [官方文件網站](https://docs.sillytavern.app/) 可以幫助解答絕大多數的使用問題,並幫助您順利入門。
## SillyTavern 是什麼?
SillyTavern簡稱 ST是一款本地安裝的使用者介面讓您能與大型語言模型LLM、影像生成引擎以及語音合成模型互動的前端。
SillyTavern 起源於 2023 年 2 月,作為 TavernAI 1.2.8 的分支版本發展至今。目前已有超過 100 位貢獻者,並擁有超過兩年的獨立開發歷史。如今,它已成為 AI 愛好者中備受推崇的軟體之一。
## 我們的願景
1. 我們致力於賦予使用者對 LLM 提示詞的最大控制權與實用性,並認為學習過程中的挑戰是樂趣的一部分
2. 我們不提供任何線上或託管服務,也不會程式化追蹤任何使用者數據。
3. SillyTavern 是由一群熱衷於 LLM 的開發者社群所打造的熱情專案,並將永遠保持免費與開源。
## 分支介紹
SillyTavern 採用雙分支開發模式,確保為所有使用者提供流暢的使用體驗。
* `release`(穩定版):🌟 **推薦給大部分的使用者使用。** 此分支最為穩定,僅在主要版本發布時更新。適合大多數人,通常每月更新一次。
* `staging`(開發版):⚠️ **不建議普通使用者使用。** 此分支包含最新功能,但可能隨時出現問題。適合進階使用者與愛好者,每日多次更新。
如果您不熟悉 git CLI 或對分支概念不清楚,請放心對您來說,`release`(穩定版)分支永遠是首選。
## 使用 SillyTavern 需要什麼?
由於 SillyTavern 僅是一個介面,您需要一個 LLM 後端來提供推理能力。您可以使用 AI Horde 以立即開始聊天。此外,我們支持許多其他本地和雲端 LLM 後端,例如 OpenAI 兼容 API、KoboldAI、Tabby 等。更多支持的 API 資訊,請參閱 [常見問題](https://docs.sillytavern.app/usage/api-connections/)。
### 我需要高效能電腦才能運行 SillyTavern 嗎?
SillyTavern 的硬體需求相當低。任何能夠運行 NodeJS 18 或更高版本的設備都可以執行。若您打算在本地機器上進行 LLM 推理,我們建議使用擁有至少 6GB VRAM 的 3000 系列 NVIDIA 顯示卡。更多詳細資訊,請參考您使用的後端文檔。
### 推薦後端(僅為推薦,非官方合作和隸屬關係)
* [AI Horde](https://aihorde.net/):使用志願者託管的模型,無需進一步設定
* [KoboldCpp](https://github.com/LostRuins/koboldcpp):社群推崇的選擇,可在本地運行 GGUF 模型
* [tabbyAPI](https://github.com/theroyallab/tabbyAPI):一個流行且輕量的本地託管 exl2 推理 API
* [OpenRouter](https://openrouter.ai):提供多個雲端 LLM 提供商(如 OpenAI、Claude、Meta Llama 等)及熱門社群模型的單一 API
## 有任何問題或建議?
### 歡迎加入我們的 Discord 伺服器
| [![][discord-shield-badge]][discord-link] | [加入我們的 Disocrd 伺服器](https://discord.gg/sillytavern) 以獲得技術支援、分享您喜愛的角色與提示詞。 |
| :---------------------------------------- | :----------------------------------------------------------------------------------------------------------------- |
或直接聯繫開發者:
* Discord: cohee, rossascends, wolfsblvt
* Reddit: [/u/RossAscends](https://www.reddit.com/user/RossAscends/), [/u/sillylossy](https://www.reddit.com/user/sillylossy/), [u/Wolfsblvt](https://www.reddit.com/user/Wolfsblvt/)
* [提交 GitHub 問題](https://github.com/SillyTavern/SillyTavern/issues)
### 我喜歡這個專案,我該如何貢獻呢?
1. **提交拉取要求Pull Request**:想了解如何貢獻,請參閱 [CONTRIBUTING.md](../CONTRIBUTING.md)。
2. **提供功能建議與問題報告**:使用本專案所提供的模板提交建議或問題報告。
3. **仔細閱讀此 README 文件及相關文檔**:請避免提出重複問題或建議。
## 螢幕截圖
<img width="500" alt="image" src="https://github.com/user-attachments/assets/9b5f32f0-c3b3-4102-b3f5-0e9213c0f50f">
<img width="500" alt="image" src="https://github.com/user-attachments/assets/913fdbaa-7d33-42f1-ae2c-89dca41c53d1">
## 角色卡
SillyTavern 的核心概念是「角色卡」Character Cards。角色卡是一組設定 LLM 行為的提示詞,用於 SillyTavern 中進行持續性對話。其功能類似於 ChatGPT 的 GPT 或 Poe 的聊天機器人。角色卡的內容可以是任何形式:抽象場景、針對特定任務設計的助手、知名人物,或者虛構角色。
角色卡中唯一必填的項目是名稱欄位。若想與語言模型開始一般對話您只需創建一個名稱為「Assistant」的新卡片其餘欄位皆可保持空白。若希望進行更具主題性的對話則可以提供語言模型背景資訊、行為模式、寫作風格以及特定情境來啟動聊天。
如果您僅想進行快速對話而不選擇角色卡片,或想測試 LLM 的連線,則可在打開 SillyTavern 後,於歡迎頁面的輸入欄位中直接輸入您的提示內容。請注意,這類對話是暫時的,不會被永久保存。
若想了解如何設定角色卡,可參考預設角色(如 Seraphina或從「下載擴充功能 & 資源」Download Extensions & Assets選單中下載社群製作的角色卡。
## 核心功能
* 進階文本生成設定:內含許多社群製作的預設設定
* 支援世界資訊World Info創建豐富的背景故事或節省角色卡片中的 Token符記使用
* 群組聊天:多角色聊天室,可讓角色與您或彼此對話
* 豐富的 UI 自定義選項:主題顏色、背景圖片、自定義 CSS 等
* 使用者設定:讓 AI 更了解您並提升沉浸感
* 內建 RAG 支持:可將文檔加入對話,供 AI 參考
* 強大的聊天指令子系統:內含 [腳本引擎Scripting Engine](https://docs.sillytavern.app/usage/st-script/)
## 擴充功能
SillyTavern 支持多種擴充功能。
* 角色情感表達:使用視覺圖片(立繪)呈現情緒表達
* 聊天記錄自動摘要
* 自動化介面與聊天翻譯
* 穩定擴散Stable Diffusion、FLUX 和 DALL-E 的影像生成整合
* 語音合成AI 回應訊息可透過 ElevenLabs、Silero 或系統 TTS 語音合成
* 網頁搜尋功能:為提示詞添加真實世界的上下文資訊
* 更多擴展:可從「下載擴充功能 & 資源」Download Extensions & Assets選單中下載
想了解如何使用這些擴充功能,請參考:[官方說明文件](https://docs.sillytavern.app/)
# ⌛ 安裝指南
> \[!WARNING]
>
> * 請勿將程式安裝到 Windows 的系統控制資料夾(如 Program Files、System32 等)
> * 請勿以管理員權限執行 Start.bat
> * 無法在 Windows 7 系統上安裝,因為它無法執行 NodeJS 18.16
## 🪟 Windows
### 使用 Git 安裝
1. 安裝 [NodeJS](https://nodejs.org/en)(建議使用最新的 LTS 版本)
2. 安裝 [Git for Windows](https://gitforwindows.org/)
3. 打開 Windows 檔案總管(`Win+E`
4. 創建/使用一個不受 Windows 系統控制或監控的資料夾例如C:\MySpecialFolder\
5. 在該資料夾內開啟命令提示字元Command Prompt點擊地址欄輸入 `cmd` 並按下 Enter
6. 當命令提示字元黑框彈出時,輸入以下其中一條指令後,按下 Enter
* 安裝 Release穩定版分支`git clone https://github.com/SillyTavern/SillyTavern -b release`
* 安裝 Staging開發板分支`git clone https://github.com/SillyTavern/SillyTavern -b staging`
7. 當程式碼下載完成後,雙擊 `Start.bat`NodeJS 將自動安裝所需的依賴項
8. 本地伺服器啟動後SillyTavern 將自動在您的瀏覽器中打開
### 使用 GitHub Desktop 安裝
(此方式僅允許通過 GitHub Desktop 使用 git。如果您也希望在命令列中使用 `git`,則需額外安裝 [Git for Windows](https://gitforwindows.org/)
1. 安裝 [NodeJS](https://nodejs.org/en)(建議使用最新的 LTS 版本)
2. 安裝 [GitHub Desktop](https://central.github.com/deployments/desktop/desktop/latest/win32)
3. 安裝完成後,打開 GitHub Desktop點擊 `Clone a repository from the internet....` (注意:此步驟 **無需創建 GitHub 帳號**。)
4. 在彈出選單中點擊「URL」選項輸入此網址`https://github.com/SillyTavern/SillyTavern`然後點擊「Clone」。您可以更改「Local path」來選擇 SillyTavern 的下載位置
6. 若想開啟 SillyTavern需使用 Windows 檔案總管以進入您複製儲存庫的資料夾。預設位置為:`C:\Users\[您的 Windows 使用者名稱]\Documents\GitHub\SillyTavern`
7. 雙擊 `start.bat` 文件。(請注意:若您的作業系統隱藏了 `.bat` 副檔名,該文件可能顯示為「`Start`」。這就是您需要雙擊運行的文件。)
8. 雙擊後將會彈出一個大型黑色的命令提示字元視窗SillyTavern 會開始安裝其運行所需的文件與依賴
9. 安裝完成後,若一切正常,命令提示字元視窗應顯示運行中的訊息,且您的瀏覽器會自動打開 SillyTavern 頁籤
10. 連接到任何 SillyTavern [支援的 APIs](https://docs.sillytavern.app/usage/api-connections/) 並開始聊天吧!
## 🐧 Linux & 🍎 MacOS
對於 MacOS 和 Linux 系統所有操作都將在終端機Terminal中完成。
1. 安裝 git 和 NodeJS具體方法因操作系統而異
2. 複製儲存庫Clone the repo
* 安裝 Release穩定版分支`git clone https://github.com/SillyTavern/SillyTavern -b release`
* 安裝 Staging開發板分支`git clone https://github.com/SillyTavern/SillyTavern -b staging`
3. 使用命令 `cd SillyTavern` 以進入安裝資料夾
4. 使用以下其中一條命令,以執行 `start.sh` 腳本:
* `./start.sh`
* `bash start.sh`
## ⚡ 使用 SillyTavern Launcher 安裝
SillyTavern Launcher 是一個安裝嚮導協助您設定多種選項包括安裝本地推理inference的後端。
### 對於 Windows 使用者
1. 在鍵盤上按下 **`WINDOWS + R`** 打開「執行」對話框,然後輸入以下指令以安裝 git
```shell
cmd /c winget install -e --id Git.Git
```
2. 在鍵盤上按下 **`WINDOWS + E`** 打開檔案總管,導航至您想要安裝 Launcher 的資料夾。在目標資料夾的地址欄輸入 `cmd` 並按下 Enter。接著執行以下命令
```shell
git clone https://github.com/SillyTavern/SillyTavern-Launcher.git && cd SillyTavern-Launcher && start installer.bat
```
### 對於 Linux 使用者
1. 打開您喜歡的終端機Terminal安裝 git
2. 使用以下指令以複製 Sillytavern-Launcher
```shell
git clone https://github.com/SillyTavern/SillyTavern-Launcher.git && cd SillyTavern-Launcher
```
3. 執行安裝腳本installer.sh
```shell
chmod +x install.sh && ./install.sh
```
4. 安裝完成後執行啟動腳本launcher.sh
```shell
chmod +x launcher.sh && ./launcher.sh
```
### 對於 Mac 使用者
1. 打開終端機Terminal並使用以下指令安裝 Homebrew
```shell
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
```
2. 使用 Homebrew 以安裝 git
```shell
brew install git
```
3. 使用以下指令以複製 Sillytavern-Launcher
```shell
git clone https://github.com/SillyTavern/SillyTavern-Launcher.git && cd SillyTavern-Launcher
```
4. 執行安裝腳本installer.sh
```shell
chmod +x install.sh && ./install.sh
```
5. 安裝完成後執行啟動腳本launcher.sh
```shell
chmod +x launcher.sh && ./launcher.sh
```
## 🐋 使用 Docker 安裝
以下指南已假設您安裝 Docker能夠訪問命令列進行容器安裝並熟悉 Docker 的基本使用。
### 自行構建映像
我們提供了一份完整的 [SillyTavern Docker 使用指南](http://docs.sillytavern.app/installation/docker/)。該指南涵蓋了 Windows、macOS 和 Linux 的安裝過程。若您希望自行構建映像,建議先閱讀該文檔。
### 使用 GitHub 容器註冊表(最簡易的方式)
您需要設定兩個必要的目錄映射directory mappings和一個端口映射port mapping來使 SillyTavern 正常運行。在執行指令時,請將以下佔位符替換為您的實際配置:
#### 容器變數
##### 目錄映射Volume Mappings
* [config]:用於存放 SillyTavern 設定文件的本地資料夾
* [data]:用於存放 SillyTavern 使用者數據(包括角色)的本地資料夾
* [plugins](可選):用於存放 SillyTavern 擴充功能的本地資料夾
##### 端口映射Port Mappings
* [PublicPort]:對外流量的訪問端口。這是必需的,因為您將從虛擬機容器外部訪問實例。除非實施了額外的安全服務,否則請勿將此端口暴露於網路
##### 其他設定Additional Settings
* [DockerNet]:容器應連接的 Docker 網路。如果您不熟悉此概念,請參閱 [Docker 官方說明文件](https://docs.docker.com/reference/cli/docker/network/)
* [version]:在 GitHub 頁面的右側您可以找到「Packages」。選擇「sillytavern」包然後查看映像版本。「latest」標籤會使您保持與當前版本同步。您也可以選擇「staging」或「release」標籤但這可能不適用於依賴擴充功能的使用者因為擴充功能可能需要時間進行更新
#### 安裝命令
1. 打開命令列Command Line
2. 執行以下指令:
`docker create --name='sillytavern' --net='[DockerNet]' -p '8000:8000/tcp' -v '[plugins]':'/home/node/app/plugins':'rw' -v '[config]':'/home/node/app/config':'rw' -v '[data]':'/home/node/app/data':'rw' 'ghcr.io/sillytavern/sillytavern:[version]'`
> 請注意:默認的監聽端口為 8000。如果您在設定文件中更改了此端口請務必使用適當的端口號
## 📱 於 Android 系統中使用 Termux 安裝
> \[!NOTE]
> **雖然您可以在 Android 設備上使用 Termux 直接運行 SillyTavern但這不在我們的官方支持範圍內。**
>
> **請參閱 ArroganceComplex#2659 所提供的指南:**
>
> * <https://rentry.org/STAI-Termux>
**不支援Android ARM LEtime-web。** 32 位 Android 系統需要額外的依賴項,這無法通過 npm 安裝。請使用以下命令安裝:`pkg install esbuild`。完成後,請按照普通的安裝步驟進行操作
## API 金鑰管理
SillyTavern 將您的 API 金鑰Keys保存在使用者數據目錄中的 `secrets.json` 文件內(默認路徑為`/data/default-user/secrets.json`
默認情況下API 金鑰在您保存並重新載入頁面後,將不會自介面中顯示
如需啟用查看金鑰功能:
1.`config.yaml` 文件中,將 `allowKeysExposure` 的「值」設為 `true`
2. 重新啟動 SillyTavern 伺服器
3. 點擊 API 連線頁面右下角的「查看隱藏的 API 金鑰View hidden API keys」超連結
## 命令列參數Command-line Arguments
您可以在啟動 SillyTavern 伺服器時傳遞命令列參數,以覆蓋 `config.yaml` 文件中的某些設定。
### 範例
```shell
node server.js --port 8000 --listen false
# or
npm run start -- --port 8000 --listen false
# or僅適用於 Windows
Start.bat --port 8000 --listen false
```
### Supported arguments
| Option | Description | Type |
|-------------------------|------------------------------------------------------------------------------------------------------|----------|
| `--version` | 顯示版本序號 | boolean |
| `--enableIPv6` | 啟用 IPv6 | boolean |
| `--enableIPv4` | 啟用 IPv4 | boolean |
| `--port` | 設定 SillyTavern 運行的端口。若未提供,則預設使用 `config.yaml` 中的 'port' | number
| `--dnsPreferIPv6` | 偏好使用 IPv6 解析 DNS。未提供則默認使用 `config.yaml` 中的 'preferIPv6' | boolean |
| `--autorun` | 自動在瀏覽器中啟動 SillyTavern。未提供則默認使用 `config.yaml` 中的 'autorun' | boolean |
| `--autorunHostname` | 自動啟動時的主機名稱,通常建議保持為 'auto' | string |
| `--autorunPortOverride` | 覆蓋自動啟動的端口設定 | string |
| `--listen` | SillyTavern 是否可監聽所有網路接口。若未提供,則默認使用 `config.yaml` 中的 'listen' | boolean |
| `--corsProxy` | 啟用 CORS 代理。若未提供,則默認使用 `config.yaml` 中的 'enableCorsProxy' | boolean |
| `--disableCsrf` | 停用 CSRF 保護 | boolean |
| `--ssl` | 啟用 SSL | boolean |
| `--certPath` | 設定您證書文件的路徑 | string |
| `--keyPath` | 設定您私人金鑰文件的路徑 | string |
| `--whitelist` | 啟用白名單模式 | boolean |
| `--dataRoot` | 設定數據儲存的根目錄 | string |
| `--avoidLocalhost` | 在自動模式下避免使用 'localhost' | boolean |
| `--basicAuthMode` | 啟用基本身份驗證模式 | boolean |
| `--requestProxyEnabled` | 啟用代理以處理外部請求 | boolean |
| `--requestProxyUrl` | 設定請求代理的 URL支持 HTTP 或 SOCKS 協議) | string |
| `--requestProxyBypass` | 請求代理的例外主機清單(主機列表需以空格分隔) | array |
## 遠端連線
遠端連線功能最常用於希望在手機上使用 SillyTavern 的使用者。此時伺服器將由同一 Wi-Fi 網路上的 PC 運行。不過,您也可以設定來自其他網路的遠端連線。
詳細設定指南請參閱 [官方說明文件](https://docs.sillytavern.app/usage/remoteconnections/)。
您還可以選擇設定 SillyTavern 的使用者檔案,並開啟密碼保護(可選):[使用者設定指南](https://docs.sillytavern.app/installation/st-1.12.0-migration-guide/#users)。
## 遇到任何效能問題?
1. 在「使用者設定」選單設定介面主題禁用模糊效果Blur Effect並開啟「減少動畫效果」Reduced Motion
2. 若使用響應串流傳輸,請將串流的 FPS 設定為較低的值(建議設定為 10-15 FPS
3. 確保瀏覽器已啟用 GPU 加速以進行渲染
## 授權與致謝
**本程式SillyTavern的發布是基於其可能對使用者有所幫助的期許但不提供任何形式的保證包括但不限於對可銷售性marketability或特定用途適用性的隱含保證。如需更多詳情請參閱 GNU Affero 通用公共許可證。**
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more details.
* [TavernAI](https://github.com/TavernAI/TavernAI) 1.2.8 由 Humi 提供MIT 許可
* 經授權使用部分來自 CncAnon 的 TavernAITurbo 模組
* 視覺小說模式Visual Novel Mode的靈感來源於 PepperTaco 的貢獻(<https://github.com/peppertaco/Tavern/>
* Noto Sans 字體由 Google 提供OFL 許可)
* 主題圖示由 Font Awesome <https://fontawesome.com> 提供圖示CC BY 4.0字體SIL OFL 1.1代碼MIT 許可)
* 預設資源來源於 @OtisAlejandro(包含角色 Seraphina 與知識書)與 @kallmefloccSillyTavern 官方 Discord 伺服器成員突破 10K 的慶祝背景)
* Docker 安裝指南由 [@mrguymiah](https://github.com/mrguymiah) 和 [@Bronya-Rand](https://github.com/Bronya-Rand) 編寫
## 主要貢獻者
[![Contributors](https://contrib.rocks/image?repo=SillyTavern/SillyTavern)](https://github.com/SillyTavern/SillyTavern/graphs/contributors)
<!-- LINK GROUP -->
[cover]: https://github.com/user-attachments/assets/01a6ae9a-16aa-45f2-8bff-32b5dc587e44
[discord-link]: https://discord.gg/sillytavern
[discord-shield-badge]: https://img.shields.io/discord/1100685673633153084?color=5865F2&label=discord&labelColor=black&logo=discord&logoColor=white&style=for-the-badge

437
.github/readme.md vendored
View File

@@ -1,160 +1,147 @@
<a name="readme-top"></a>
English | [中文](readme-zh_cn.md) | [日本語](readme-ja_jp.md) | [Русский](readme-ru_ru.md)
![][cover]
Mobile-friendly layout, Multi-API (KoboldAI/CPP, Horde, NovelAI, Ooba, OpenAI, OpenRouter, Claude, Scale), VN-like Waifu Mode, Stable Diffusion, TTS, WorldInfo (lorebooks), customizable UI, auto-translate, and more prompt options than you'd ever want or need + ability to install third-party extensions.
<div align="center">
Based on a fork of [TavernAI](https://github.com/TavernAI/TavernAI) 1.2.8
English | [German](readme-de_de.md) | [中文](readme-zh_cn.md) | [繁體中文](readme-zh_tw.md) | [日本語](readme-ja_jp.md) | [Русский](readme-ru_ru.md) | [한국어](readme-ko_kr.md)
## Important news!
[![GitHub Stars](https://img.shields.io/github/stars/SillyTavern/SillyTavern.svg)](https://github.com/SillyTavern/SillyTavern/stargazers)
[![GitHub Forks](https://img.shields.io/github/forks/SillyTavern/SillyTavern.svg)](https://github.com/SillyTavern/SillyTavern/network)
[![GitHub Issues](https://img.shields.io/github/issues/SillyTavern/SillyTavern.svg)](https://github.com/SillyTavern/SillyTavern/issues)
[![GitHub Pull Requests](https://img.shields.io/github/issues-pr/SillyTavern/SillyTavern.svg)](https://github.com/SillyTavern/SillyTavern/pulls)
1. We have created a [Documentation website](https://docs.sillytavern.app/) to answer most of your questions and help you get started.
</div>
2. Missing extensions after the update? Since the 1.10.6 release version, most of the previously built-in extensions have been converted to downloadable add-ons. You can download them via the built-in "Download Extensions and Assets" menu in the extensions panel (stacked blocks icon in the top bar).
---
3. Unsupported platform: android arm LEtime-web. 32-bit Android requires an external dependency that can't be installed with npm. Use the following command to install it: `pkg install esbuild`. Then run the usual installation steps.
SillyTavern provides a single unified interface for many LLM APIs (KoboldAI/CPP, Horde, NovelAI, Ooba, Tabby, OpenAI, OpenRouter, Claude, Mistral and more), a mobile-friendly layout, Visual Novel Mode, Automatic1111 & ComfyUI API image generation integration, TTS, WorldInfo (lorebooks), customizable UI, auto-translate, more prompt options than you'd ever want or need, and endless growth potential via third-party extensions.
### Brought to you by Cohee, RossAscends, and the SillyTavern community
We have a [Documentation website](https://docs.sillytavern.app/) to answer most of your questions and help you get started.
### What is SillyTavern or TavernAI?
## What is SillyTavern?
SillyTavern is a user interface you can install on your computer (and Android phones) that allows you to interact with text generation AIs and chat/roleplay with characters you or the community create.
SillyTavern (or ST for short) is a locally installed user interface that allows you to interact with text generation LLMs, image generation engines, and TTS voice models.
SillyTavern is a fork of TavernAI 1.2.8 which is under more active development and has added many major features. At this point, they can be thought of as completely independent programs.
Beginning in February 2023 as a fork of TavernAI 1.2.8, SillyTavern now has over 100 contributors and 2 years of independent development under its belt, and continues to serve as a leading software for savvy AI hobbyists.
## Screenshots
## Our Vision
<img width="400" alt="image" src="https://github.com/SillyTavern/SillyTavern/assets/61471128/e902c7a2-45a6-4415-97aa-c59c597669c1">
<img width="400" alt="image" src="https://github.com/SillyTavern/SillyTavern/assets/61471128/f8a79c47-4fe9-4564-9e4a-bf247ed1c961">
1. We aim to empower users with as much utility and control over their LLM prompts as possible. The steep learning curve is part of the fun!
2. We do not provide any online or hosted services, nor programmatically track any user data.
3. SillyTavern is a passion project brought to you by a dedicated community of LLM enthusiasts, and will always be free and open sourced.
### Branches
## Branches
SillyTavern is being developed using a two-branch system to ensure a smooth experience for all users.
* release -🌟 **Recommended for most users.** This is the most stable and recommended branch, updated only when major releases are pushed. It's suitable for the majority of users.
* staging - ⚠️ **Not recommended for casual use.** This branch has the latest features, but be cautious as it may break at any time. Only for power users and enthusiasts.
* `release` -🌟 **Recommended for most users.** This is the most stable and recommended branch, updated only when major releases are pushed. It's suitable for the majority of users. Typically updated once a month.
* `staging` - ⚠️ **Not recommended for casual use.** This branch has the latest features, but be cautious as it may break at any time. Only for power users and enthusiasts. Updates several times daily.
If you're not familiar with using the git CLI or don't understand what a branch is, don't worry! The release branch is always the preferable option for you.
### What do I need other than SillyTavern?
## What do I need other than SillyTavern?
On its own SillyTavern is useless, as it's just a user interface. You have to have access to an AI system backend that can act as the roleplay character. There are various supported backends: OpenAPI API (GPT), KoboldAI (either running locally or on Google Colab), and more. You can read more about this in [the FAQ](https://docs.sillytavern.app/usage/faq/).
Since SillyTavern is only an interface, you will need access to an LLM backend to provide inference. You can use AI Horde for instant out-of-the-box chatting. Aside from that, we support many other local and cloud-based LLM backends: OpenAI-compatible API, KoboldAI, Tabby, and many more. You can read more about our supported APIs in [the FAQ](https://docs.sillytavern.app/usage/api-connections/).
### Do I need a powerful PC to run SillyTavern?
Since SillyTavern is only a user interface, it has tiny hardware requirements, it will run on anything. It's the AI system backend that needs to be powerful.
The hardware requirements are minimal: it will run on anything that can run NodeJS 18 or higher. If you intend to do LLM inference on your local machine, we recommend a 3000-series NVIDIA graphics card with at least 6GB of VRAM. Check your backend's documentation for more details.
### Suggested Backends (not affiliated)
* [AI Horde](https://aihorde.net/) - use models hosted by volunteers. Requires no further setup
* [KoboldCpp](https://github.com/LostRuins/koboldcpp) - a community's favorite for running GGUF models locally
* [tabbyAPI](https://github.com/theroyallab/tabbyAPI) - a popular, lightweight, locally-hosted exl2 inference API
* [OpenRouter](https://openrouter.ai) - a single API for many cloud providers (OpenAI, Claude, Meta Llama, etc.) as well as popular community models.
## Questions or suggestions?
### We now have a community Discord server
### Discord server
| [![][discord-shield-badge]][discord-link] | [Join our Discord community!](https://discord.gg/sillytavern) Get support, share favorite characters and prompts. |
| :---------------------------------------- | :----------------------------------------------------------------------------------------------------------------- |
Or get in touch with the developers directly:
* Discord: cohee or rossascends
* Reddit: [/u/RossAscends](https://www.reddit.com/user/RossAscends/) or [/u/sillylossy](https://www.reddit.com/user/sillylossy/)
* Discord: cohee, rossascends, wolfsblvt
* Reddit: [/u/RossAscends](https://www.reddit.com/user/RossAscends/), [/u/sillylossy](https://www.reddit.com/user/sillylossy/), [u/Wolfsblvt](https://www.reddit.com/user/Wolfsblvt/)
* [Post a GitHub issue](https://github.com/SillyTavern/SillyTavern/issues)
## This version includes
### I like your project! How do I contribute?
* A heavily modified TavernAI 1.2.8 (more than 50% of code rewritten or optimized)
* Swipes
* Group chats: multi-bot rooms for characters to talk to you or each other
* Chat checkpoints / branching
* Advanced KoboldAI / TextGen generation settings with a lot of community-made presets
1. Send pull requests. Learn how to contribute: [CONTRIBUTING.md](../CONTRIBUTING.md)
2. Send feature suggestions and issue reports using the provided templates.
3. Read this entire readme file and check the documentation website first, to avoid sending duplicate issues.
## Screenshots
<img width="500" alt="image" src="https://github.com/user-attachments/assets/9b5f32f0-c3b3-4102-b3f5-0e9213c0f50f">
<img width="500" alt="image" src="https://github.com/user-attachments/assets/913fdbaa-7d33-42f1-ae2c-89dca41c53d1">
## Character Cards
SillyTavern is built around the concept of "character cards". A character card is a collection of prompts that set the behavior of the LLM and is required to have persistent conversations in SillyTavern. They function similarly to ChatGPT's GPTs or Poe's bots. The content of a character card can be anything: an abstract scenario, an assistant tailored for a specific task, a famous personality or a fictional character.
The name field is the only required character card input. To start a neutral conversation with the language model, create a new card simply called "Assistant" and leave the rest of the boxes blank. For a more themed chat, you can provide the language model with various background details, behavior and writing patterns, and a scenario to jump start the chat.
To have a quick conversation without selecting a character card or to just test the LLM connection, simply type your prompt input into the input bar on the Welcome Screen after opening SillyTavern. Please note that such chats are temporary and will not be saved.
To get a general idea on how to define character cards, see the default character (Seraphina) or download selected community-made cards from the "Download Extensions & Assets" menu.
## Key Features
* Advanced text generation settings with many community-made presets
* World Info support: create rich lore or save tokens on your character card
* [OpenRouter](https://openrouter.ai) connection for various APIs (Claude, GPT-4/3.5 and more)
* [Oobabooga's TextGen WebUI](https://github.com/oobabooga/text-generation-webui) API connection
* [AI Horde](https://horde.koboldai.net/) connection
* Prompt generation formatting tweaking
* Group chats: multi-bot rooms for characters to talk to you and/or each other
* Rich UI customization options: theme colors, background images, custom CSS, and more
* User personas: let the AI know a bit about you for greater immersion
* Built-in RAG support: add documents to your chats for the AI to reference
* Extensive chat commands subsystem and own [scripting engine](https://docs.sillytavern.app/usage/st-script/)
## Extensions
SillyTavern has extensibility support, with some additional AI modules hosted via [SillyTavern Extras API](https://github.com/SillyTavern/SillyTavern-extras)
SillyTavern has extensibility support.
* Author's Note / Character Bias
* Character emotional expressions (sprites)
* Auto-Summary of the chat history
* Sending images to chat, and the AI interpreting the content
* Stable Diffusion image generation (5 chat-related presets plus 'free mode')
* Automatic UI and chat translation
* Stable Diffusion/FLUX/DALL-E image generation
* Text-to-speech for AI response messages (via ElevenLabs, Silero, or the OS's System TTS)
* Web Search capabilities for adding additional real world context to your prompts
* Many more are available to download from the "Download Extensions & Assets" menu.
A full list of included extensions and tutorials on how to use them can be found in the [Docs](https://docs.sillytavern.app/).
## UI/CSS/Quality of Life tweaks by RossAscends
* Mobile UI optimized for iOS, and supports saving a shortcut to the home screen and opening in fullscreen mode.
* HotKeys
* Up = Edit last message in chat
* Ctrl+Up = Edit last USER message in chat
* Left = swipe left
* Right = swipe right (NOTE: swipe hotkeys are disabled when the chat bar has something typed into it)
* Ctrl+Left = view locally stored variables (in the browser console window)
* Enter (with chat bar selected) = send your message to AI
* Ctrl+Enter = Regenerate the last AI response
* User Name Changes and Character Deletion no longer force the page to refresh.
* Toggle option to automatically connect to API on page load.
* Toggle option to automatically load the most recently viewed character on page load.
* Better Token Counter - works on unsaved characters, and shows both permanent and temporary tokens.
* Better Past Chats View
* New Chat filenames are saved in a readable format of "(character) - (when it was created)"
* Chat preview increased from 40 characters to 300.
* Multiple options for characters list sorting (by name, creation date, chat sizes).
* By default the left and right settings panel will close when you click away from it.
* Clicking the Lock on the nav panel will hold the panel open, and this setting be remembered across sessions.
* Nav panel status of open or closed will also be saved across sessions.
* Customizable chat UI:
* Play a sound when a new message arrives
* Switch between round or rectangle avatar styles
* Have a wider chat window on the desktop
* Optional semi-transparent glass-like panels
* Customizable page colors for 'main text', 'quoted text', and 'italics text'.
* Customizable UI background color and blur amount
Tutorials on how to use them can be found in the [Docs](https://docs.sillytavern.app/).
# ⌛ Installation
> \[!WARNING]
>
> * DO NOT INSTALL INTO ANY WINDOWS CONTROLLED FOLDER (Program Files, System32, etc).
> * DO NOT RUN START.BAT WITH ADMIN PERMISSIONS
> * INSTALLATION ON WINDOWS 7 IS IMPOSSIBLE AS IT CAN NOT RUN NODEJS 18.16
## 🪟 Windows
## Installing via Git
1. Install [NodeJS](https://nodejs.org/en) (latest LTS version is recommended)
2. Install [Git for Windows](https://gitforwindows.org/)
3. Open Windows Explorer (`Win+E`)
4. Browse to or Create a folder that is not controlled or monitored by Windows. (ex: C:\MySpecialFolder\)
5. Open a Command Prompt inside that folder by clicking in the 'Address Bar' at the top, typing `cmd`, and pressing Enter.
6. Once the black box (Command Prompt) pops up, type ONE of the following into it and press Enter:
### Installing via Git
- for Release Branch: `git clone https://github.com/SillyTavern/SillyTavern -b release`
- for Staging Branch: `git clone https://github.com/SillyTavern/SillyTavern -b staging`
1. Install [NodeJS](https://nodejs.org/en) (latest LTS version is recommended)
2. Install [Git for Windows](https://gitforwindows.org/)
3. Open Windows Explorer (`Win+E`)
4. Browse to or Create a folder that is not controlled or monitored by Windows. (ex: C:\MySpecialFolder\)
5. Open a Command Prompt inside that folder by clicking in the 'Address Bar' at the top, typing `cmd`, and pressing Enter.
6. Once the black box (Command Prompt) pops up, type ONE of the following into it and press Enter:
7. Once everything is cloned, double-click `Start.bat` to make NodeJS install its requirements.
8. The server will then start, and SillyTavern will pop up in your browser.
* for Release Branch: `git clone https://github.com/SillyTavern/SillyTavern -b release`
* for Staging Branch: `git clone https://github.com/SillyTavern/SillyTavern -b staging`
## Installing via SillyTavern Launcher
1. On your keyboard: press **`WINDOWS + R`** to open Run dialog box. Then, run the following command to install git:
```shell
cmd /c winget install -e --id Git.Git
```
2. On your keyboard: press **`WINDOWS + E`** to open File Explorer, then navigate to the folder where you want to install the launcher. Once in the desired folder, type `cmd` into the address bar and press enter. Then, run the following command:
```shell
git clone https://github.com/SillyTavern/SillyTavern-Launcher.git && cd SillyTavern-Launcher && start installer.bat
```
7. Once everything is cloned, double-click `Start.bat` to make NodeJS install its requirements.
8. The server will then start, and SillyTavern will pop up in your browser.
### Installing via GitHub Desktop
## Installing via GitHub Desktop
(This allows git usage **only** in GitHub Desktop, if you want to use `git` on the command line too, you also need to install [Git for Windows](https://gitforwindows.org/))
1. Install [NodeJS](https://nodejs.org/en) (latest LTS version is recommended)
2. Install [GitHub Desktop](https://central.github.com/deployments/desktop/desktop/latest/win32)
3. After installing GitHub Desktop, click on `Clone a repository from the internet....` (Note: You **do NOT need** to create a GitHub account for this step)
@@ -172,50 +159,82 @@ For MacOS / Linux all of these will be done in a Terminal.
1. Install git and nodeJS (the method for doing this will vary depending on your OS)
2. Clone the repo
- for Release Branch: `git clone https://github.com/SillyTavern/SillyTavern -b release`
- for Staging Branch: `git clone https://github.com/SillyTavern/SillyTavern -b staging`
* for Release Branch: `git clone https://github.com/SillyTavern/SillyTavern -b release`
* for Staging Branch: `git clone https://github.com/SillyTavern/SillyTavern -b staging`
3. `cd SillyTavern` to navigate into the install folder.
4. Run the `start.sh` script with one of these commands:
- `./start.sh`
- `bash start.sh`
* `./start.sh`
* `bash start.sh`
## Installing via SillyTavern Launcher
## Installing via SillyTavern Launcher
SillyTavern Launcher is an installation wizard that will help you get setup with many options, including installing a backend for local inference.
### For Windows users
1. On your keyboard: press **`WINDOWS + R`** to open Run dialog box. Then, run the following command to install git:
```shell
cmd /c winget install -e --id Git.Git
```
2. On your keyboard: press **`WINDOWS + E`** to open File Explorer, then navigate to the folder where you want to install the launcher. Once in the desired folder, type `cmd` into the address bar and press enter. Then, run the following command:
```shell
git clone https://github.com/SillyTavern/SillyTavern-Launcher.git && cd SillyTavern-Launcher && start installer.bat
```
### For Linux users
1. Open your favorite terminal and install git
2. Git clone the Sillytavern-Launcher with:
2. Git clone the Sillytavern-Launcher with:
```shell
git clone https://github.com/SillyTavern/SillyTavern-Launcher.git && cd SillyTavern-Launcher
```
3. Start the installer.sh with:
3. Start the installer.sh with:
```shell
chmod +x install.sh && ./install.sh
```
4. After installation start the launcher.sh with:
4. After installation start the launcher.sh with:
```shell
chmod +x launcher.sh && ./launcher.sh
```
### For Mac users
1. Open a terminal and install brew with:
1. Open a terminal and install brew with:
```shell
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
```
2. Install git with:
2. Install git with:
```shell
brew install git
```
3. Git clone the Sillytavern-Launcher with:
3. Git clone the Sillytavern-Launcher with:
```shell
git clone https://github.com/SillyTavern/SillyTavern-Launcher.git && cd SillyTavern-Launcher
```
4. Start the installer.sh with:
4. Start the installer.sh with:
```shell
chmod +x install.sh && ./install.sh
```
5. After installation start the launcher.sh with:
5. After installation start the launcher.sh with:
```shell
chmod +x launcher.sh && ./launcher.sh
```
@@ -236,150 +255,105 @@ You will need two mandatory directory mappings and a port mapping to allow Silly
##### Volume Mappings
- [config] - The directory where SillyTavern configuration files will be stored on your host machine
- [data] - The directory where SillyTavern user data (including characters) will be stored on your host machine
- [plugins] - (optional) The directory where SillyTavern server plugins will be stored on your host machine
* [config] - The directory where SillyTavern configuration files will be stored on your host machine
* [data] - The directory where SillyTavern user data (including characters) will be stored on your host machine
* [plugins] - (optional) The directory where SillyTavern server plugins will be stored on your host machine
* [extensions] - (optional) The directory where global UI extensions will be stored on your host machine
##### Port Mappings
- [PublicPort] - The port to expose the traffic on. This is mandatory, as you will be accessing the instance from outside of its virtual machine container. DO NOT expose this to the internet without implementing a separate service for security.
* [PublicPort] - The port to expose the traffic on. This is mandatory, as you will be accessing the instance from outside of its virtual machine container. DO NOT expose this to the internet without implementing a separate service for security.
##### Additional Settings
- [DockerNet] - The docker network that the container should be created with a connection to. If you don't know what it is, see the [official Docker documentation](https://docs.docker.com/reference/cli/docker/network/).
- [version] - On the right-hand side of this GitHub page, you'll see "Packages". Select the "sillytavern" package and you'll see the image versions. The image tag "latest" will keep you up-to-date with the current release. You can also utilize "staging" and "release" tags that point to the nightly images of the respective branches, but this may not be appropriate, if you are utilizing extensions that could be broken, and may need time to update.
* [DockerNet] - The docker network that the container should be created with a connection to. If you don't know what it is, see the [official Docker documentation](https://docs.docker.com/reference/cli/docker/network/).
* [version] - On the right-hand side of this GitHub page, you'll see "Packages". Select the "sillytavern" package and you'll see the image versions. The image tag "latest" will keep you up-to-date with the current release. You can also utilize "staging" and "release" tags that point to the nightly images of the respective branches, but this may not be appropriate, if you are utilizing extensions that could be broken, and may need time to update.
#### Install command
1. Open your Command Line
2. Run the following command
`docker create --name='sillytavern' --net='[DockerNet]' -p '8000:8000/tcp' -v '[plugins]':'/home/node/app/plugins':'rw' -v '[config]':'/home/node/app/config':'rw' -v '[data]':'/home/node/app/data':'rw' 'ghcr.io/sillytavern/sillytavern:[version]'`
`docker create --name='sillytavern' --net='[DockerNet]' -p '8000:8000/tcp' -v '[plugins]':'/home/node/app/plugins':'rw' -v '[config]':'/home/node/app/config':'rw' -v '[data]':'/home/node/app/data':'rw' -v '[extensions]':'/home/node/app/public/scripts/extensions/third-party':'rw' 'ghcr.io/sillytavern/sillytavern:[version]'`
> Note that 8000 is a default listening port. Don't forget to use an appropriate port if you change it in the config.
## 📱 Mobile - Installing via termux
## 📱 Installing via Termux on Android OS
> \[!NOTE]
> **SillyTavern can be run natively on Android phones using Termux. Please refer to this guide by ArroganceComplex#2659:**
> **SillyTavern can be run natively on Android devices using Termux, but we do not provide official support for this use case.**
>
> **Please refer to this guide by ArroganceComplex#2659:**
>
> * <https://rentry.org/STAI-Termux>
**Unsupported platform: android arm LEtime-web.** 32-bit Android requires an external dependency that can't be installed with npm. Use the following command to install it: `pkg install esbuild`. Then run the usual installation steps.
## API keys management
SillyTavern saves your API keys to a `secrets.json` file in the user data directory (`/data/default-user/secrets.json` is the default path).
By default, they will not be exposed to a frontend after you enter them and reload the page.
By default, API keys will not be visible from the interface after you have saved them and refreshed the page.
In order to enable viewing your keys by clicking a button in the API block:
In order to enable viewing your keys:
1. Set the value of `allowKeysExposure` to `true` in `config.yaml` file.
2. Restart the SillyTavern server.
3. Click the 'View hidden API keys' link at the bottom right of the API Connection Panel.
## Command-line arguments
You can pass command-line arguments to SillyTavern server startup to override some settings in `config.yaml`.
### Examples
```shell
node server.js --port 8000 --listen false
# or
npm run start -- --port 8000 --listen false
# or (Windows only)
Start.bat --port 8000 --listen false
```
### Supported arguments
| Option | Description | Type |
|-------------------------|------------------------------------------------------------------------------------------------------|----------|
| `--version` | Show version number | boolean |
| `--enableIPv6` | Enables IPv6. | boolean |
| `--enableIPv4` | Enables IPv4. | boolean |
| `--port` | Sets the port under which SillyTavern will run. If not provided falls back to yaml config 'port'. | number |
| `--dnsPreferIPv6` | Prefers IPv6 for dns. If not provided falls back to yaml config 'preferIPv6'. | boolean |
| `--autorun` | Automatically launch SillyTavern in the browser. If not provided falls back to yaml config 'autorun'.| boolean |
| `--autorunHostname` | The autorun hostname, probably best left on 'auto'. | string |
| `--autorunPortOverride` | Overrides the port for autorun. | string |
| `--listen` | SillyTavern is listening on all network interfaces. If not provided falls back to yaml config 'listen'.| boolean |
| `--corsProxy` | Enables CORS proxy. If not provided falls back to yaml config 'enableCorsProxy'. | boolean |
| `--disableCsrf` | Disables CSRF protection | boolean |
| `--ssl` | Enables SSL | boolean |
| `--certPath` | Path to your certificate file. | string |
| `--keyPath` | Path to your private key file. | string |
| `--whitelist` | Enables whitelist mode | boolean |
| `--dataRoot` | Root directory for data storage | string |
| `--avoidLocalhost` | Avoids using 'localhost' for autorun in auto mode. | boolean |
| `--basicAuthMode` | Enables basic authentication | boolean |
| `--requestProxyEnabled` | Enables a use of proxy for outgoing requests | boolean |
| `--requestProxyUrl` | Request proxy URL (HTTP or SOCKS protocols) | string |
| `--requestProxyBypass` | Request proxy bypass list (space separated list of hosts) | array |
## Remote connections
Most often this is for people who want to use SillyTavern on their mobile phones while their PC runs the ST server on the same wifi network.
Most often this is for people who want to use SillyTavern on their mobile phones while their PC runs the ST server on the same Wi-Fi network. However, it can be used to allow remote connections from anywhere as well.
However, it can be used to allow remote connections from anywhere as well.
Read the detailed guide on how to set up remote connections in the [Docs](https://docs.sillytavern.app/usage/remoteconnections/).
**IMPORTANT: Refer to the official guide if you want to configure SillyTavern user accounts with (optional) password protection: [Users](https://docs.sillytavern.app/installation/st-1.12.0-migration-guide/#users).**
### 1. Managing whitelisted IPs
* Create a new text file inside your SillyTavern base install folder called `whitelist.txt`.
* Open the file in a text editor, and add a list of IPs you want to be allowed to connect.
*Both individual IPs and wildcard IP ranges are accepted. Examples:*
```txt
192.168.0.1
192.168.0.20
```
or
```txt
192.168.0.*
```
(the above wildcard IP range will allow any device on the local network to connect)
CIDR masks are also accepted (eg. 10.0.0.0/24).
* Save the `whitelist.txt` file.
* Restart your ST server.
Now devices which have the IP specified in the file will be able to connect.
*Note: `config.yaml` also has a `whitelist` array, which you can use in the same way, but this array will be ignored if `whitelist.txt` exists.*
### 2. Getting the IP for the ST host machine
After the whitelist has been setup, you'll need the IP of the ST-hosting device.
If the ST-hosting device is on the same wifi network, you will use the ST-host's internal wifi IP:
* For Windows: windows button > type `cmd.exe` in the search bar > type `ipconfig` in the console, hit Enter > look for `IPv4` listing.
If you (or someone else) want to connect to your hosted ST while not being on the same network, you will need the public IP of your ST-hosting device.
* While using the ST-hosting device, access [this page](https://whatismyipaddress.com/) and look for `IPv4`. This is what you would use to connect from the remote device.
### 3. Connect the remote device to the ST host machine
Whatever IP you ended up with for your situation, you will put that IP address and port number into the remote device's web browser.
A typical address for an ST host on the same wifi network would look like this:
`http://192.168.0.5:8000`
Use http:// NOT https://
### Opening your ST to all IPs
We do not recommend doing this, but you can open `config.yaml` and change `whitelistMode` to `false`.
You must remove (or rename) `whitelist.txt` in the SillyTavern base install folder if it exists.
This is usually an insecure practice, so we require you to set a username and password when you do this.
The username and password are set in `config.yaml`.
After restarting your ST server, any device will be able to connect to it, regardless of their IP as long as they know the username and password.
### Still Unable To Connect?
* Create an inbound/outbound firewall rule for the port found in `config.yaml`. Do NOT mistake this for port-forwarding on your router, otherwise, someone could find your chat logs and that's a big no-no.
* Enable the Private Network profile type in Settings > Network and Internet > Ethernet. This is VERY important for Windows 11, otherwise, you would be unable to connect even with the aforementioned firewall rules.
You may also want to configure SillyTavern user profiles with (optional) password protection: [Users](https://docs.sillytavern.app/installation/st-1.12.0-migration-guide/#users).
## Performance issues?
Try enabling the No Blur Effect (Fast UI) mode on the User settings panel.
## I like your project! How do I contribute?
### DO's
1. Send pull requests
2. Send feature suggestions and issue reports using established templates
3. Read the readme file and built-in documentation before asking anything
### DONT's
1. Offer monetary donations
2. Send bug reports without providing any context
3. Ask the questions that were already answered numerous times
## Where can I find the old backgrounds?
We're moving to a 100% original content only policy, so old background images have been removed from this repository.
You can find them archived here:
<https://files.catbox.moe/1xevnc.zip>
1. Disable the Blur Effect and enable Reduced Motion on the User Settings panel (UI Theme toggles category).
2. If using response streaming, set the streaming FPS to a lower value (10-15 FPS is recommended).
3. Make sure the browser is enabled to use GPU acceleration for rendering.
## License and credits
@@ -388,32 +362,19 @@ but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU Affero General Public License for more details.**
* TAI Base by Humi: MIT
* Cohee's modifications and derived code: AGPL v3
* RossAscends' additions: AGPL v3
* Portions of CncAnon's TavernAITurbo mod: Unknown license
* kingbri's various commits and suggestions (<https://github.com/bdashore3>)
* city_unit's extensions and various QoL features (<https://github.com/city-unit>)
* StefanDanielSchwarz's various commits and bug reports (<https://github.com/StefanDanielSchwarz>)
* Waifu mode inspired by the work of PepperTaco (<https://github.com/peppertaco/Tavern/>)
* Thanks Pygmalion University for being awesome testers and suggesting cool features!
* Thanks oobabooga for compiling presets for TextGen
* KoboldAI Presets from KAI Lite: <https://lite.koboldai.net/>
* [TavernAI](https://github.com/TavernAI/TavernAI) 1.2.8 by Humi: MIT License
* Portions of CncAnon's TavernAITurbo mod used with permission
* Visual Novel Mode inspired by the work of PepperTaco (<https://github.com/peppertaco/Tavern/>)
* Noto Sans font by Google (OFL license)
* Icon theme by Font Awesome <https://fontawesome.com> (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
* AI Horde client library by ZeldaFan0225: <https://github.com/ZeldaFan0225/ai_horde>
* Linux startup script by AlpinDale
* Thanks paniphons for providing a FAQ document
* 10K Discord Users Celebratory Background by @kallmeflocc
* Default content (characters and lore books) provided by @OtisAlejandro, @RossAscends and @kallmeflocc
* Korean translation by @doloroushyeonse
* k_euler_a support for Horde by <https://github.com/Teashrock>
* Chinese translation by [@XXpE3](https://github.com/XXpE3), 中文 ISSUES 可以联系 @XXpE3
* Default content by @OtisAlejandro (Seraphina character and lorebook) and @kallmeflocc (10K Discord Users Celebratory Background)
* Docker guide by [@mrguymiah](https://github.com/mrguymiah) and [@Bronya-Rand](https://github.com/Bronya-Rand)
## Top Contributors
[![Contributors](https://contrib.rocks/image?repo=SillyTavern/SillyTavern)](https://github.com/SillyTavern/SillyTavern/graphs/contributors)
<!-- LINK GROUP -->
[back-to-top]: https://img.shields.io/badge/-BACK_TO_TOP-151515?style=flat-square
[cover]: https://github.com/SillyTavern/SillyTavern/assets/18619528/c2be4c3f-aada-4f64-87a3-ae35a68b61a4
[cover]: https://github.com/user-attachments/assets/01a6ae9a-16aa-45f2-8bff-32b5dc587e44
[discord-link]: https://discord.gg/sillytavern
[discord-shield]: https://img.shields.io/discord/1100685673633153084?color=5865F2&label=discord&labelColor=black&logo=discord&logoColor=white&style=flat-square
[discord-shield-badge]: https://img.shields.io/discord/1100685673633153084?color=5865F2&label=discord&labelColor=black&logo=discord&logoColor=white&style=for-the-badge

3
.gitignore vendored
View File

@@ -49,3 +49,6 @@ public/css/user.css
/data
/default/scaffold
public/scripts/extensions/third-party
/certs
.aider*
.env

View File

@@ -11,3 +11,4 @@ access.log
.github
.vscode
.git
/public/scripts/extensions/third-party

View File

@@ -1,4 +1,4 @@
FROM node:lts-alpine3.18
FROM node:lts-alpine3.19
# Arguments
ARG APP_HOME=/home/node/app
@@ -6,9 +6,6 @@ ARG APP_HOME=/home/node/app
# Install system dependencies
RUN apk add gcompat tini git
# Ensure proper handling of kernel signals
ENTRYPOINT [ "tini", "--" ]
# Create app directory
WORKDIR ${APP_HOME}
@@ -19,7 +16,7 @@ ENV NODE_ENV=production
COPY package*.json post-install.js ./
RUN \
echo "*** Install npm packages ***" && \
npm i --no-audit --no-fund --quiet --omit=dev && npm cache clean --force
npm i --no-audit --no-fund --loglevel=error --no-progress --omit=dev && npm cache clean --force
# Bundle app source
COPY . ./
@@ -30,6 +27,11 @@ RUN \
ln -s "./config/config.yaml" "config.yaml" || true && \
mkdir "config" || true
# Pre-compile public libraries
RUN \
echo "*** Run Webpack ***" && \
node "./docker/build-lib.js"
# Cleanup unnecessary files
RUN \
echo "*** Cleanup ***" && \
@@ -40,6 +42,10 @@ RUN \
echo "*** Convert line endings to Unix format ***" && \
dos2unix "./docker-entrypoint.sh"
# Fix extension repos permissions
RUN git config --global --add safe.directory "*"
EXPOSE 8000
CMD [ "./docker-entrypoint.sh" ]
# Ensure proper handling of kernel signals
ENTRYPOINT ["tini", "--", "./docker-entrypoint.sh"]

View File

@@ -1,7 +1,7 @@
@echo off
pushd %~dp0
set NODE_ENV=production
call npm install --no-audit --no-fund --quiet --omit=dev
call npm install --no-audit --no-fund --loglevel=error --no-progress --omit=dev
node server.js %*
pause
popd

View File

@@ -2,17 +2,26 @@
pushd %~dp0
git --version > nul 2>&1
if %errorlevel% neq 0 (
echo Git is not installed on this system. Skipping update.
echo If you installed with a zip file, you will need to download the new zip and install it manually.
echo Git is not installed on this system.
echo Install it from https://git-scm.com/downloads
goto end
) else (
if not exist .git (
echo Not running from a Git repository. Reinstall using an officially supported method to get updates.
echo See: https://docs.sillytavern.app/installation/windows/
goto end
)
call git pull --rebase --autostash
if %errorlevel% neq 0 (
REM incase there is still something wrong
echo There were errors while updating. Please download the latest version manually.
echo There were errors while updating.
echo See the update FAQ at https://docs.sillytavern.app/usage/update/#common-update-problems
goto end
)
)
set NODE_ENV=production
call npm install --no-audit --no-fund --quiet --omit=dev
call npm install --no-audit --no-fund --loglevel=error --no-progress --omit=dev
node server.js %*
:end
pause
popd

View File

@@ -5,8 +5,14 @@ pushd %~dp0
echo Checking Git installation
git --version > nul 2>&1
if %errorlevel% neq 0 (
echo Git is not installed on this system. Skipping update.
echo If you installed with a zip file, you will need to download the new zip and install it manually.
echo Git is not installed on this system.
echo Install it from https://git-scm.com/downloads
goto end
)
if not exist .git (
echo Not running from a Git repository. Reinstall using an officially supported method to get updates.
echo See: https://docs.sillytavern.app/installation/windows/
goto end
)
@@ -42,7 +48,7 @@ if NOT "!AUTO_SWITCH!"=="" (
SET TARGET_BRANCH=release
goto update
)
echo Auto-switching defined to stay on current branch
goto update
)
@@ -89,13 +95,14 @@ git pull --rebase --autostash origin %TARGET_BRANCH%
:install
if %errorlevel% neq 0 (
echo There were errors while updating. Please check manually.
echo There were errors while updating.
echo See the update FAQ at https://docs.sillytavern.app/usage/update/#common-update-problems
goto end
)
echo Installing npm packages and starting server
set NODE_ENV=production
call npm install --no-audit --no-fund --quiet --omit=dev
call npm install --no-audit --no-fund --loglevel=error --no-progress --omit=dev
node server.js %*
:end

View File

@@ -1,6 +1,8 @@
# -- DATA CONFIGURATION --
# Root directory for user data storage
dataRoot: ./data
# The maximum amount of memory that parsed character cards can use in MB
cardsCacheCapacity: 100
# -- SERVER CONFIGURATION --
# Listen for incoming connections
listen: false
@@ -37,10 +39,33 @@ basicAuthUser:
password: "password"
# Enables CORS proxy middleware
enableCorsProxy: false
# -- REQUEST PROXY CONFIGURATION --
requestProxy:
# If a proxy is enabled, all outgoing HTTP/HTTPS requests will be routed through it.
enabled: false
# Proxy URL. Possible protocols: http, https, socks, socks5, socks4, pac
url: "socks5://username:password@example.com:1080"
# Proxy bypass list. Requests to these hosts won't be routed through the proxy.
bypass:
- localhost
- 127.0.0.1
# Enable multi-user mode
enableUserAccounts: false
# Enable discreet login mode: hides user list on the login screen
enableDiscreetLogin: false
# Enable's authlia based auto login. Only enable this if you
# have setup and installed Authelia as a middle-ware on your
# reverse proxy
# https://www.authelia.com/
# This will use auto login to an account with the same username
# as that used for authlia. (Ensure the username in authlia
# is an exact match with that in sillytavern)
autheliaAuth: false
# If `basicAuthMode` and this are enabled then
# the username and passwords for basic auth are the same as those
# for the individual accounts
perUserBasicAuth: false
# User session timeout *in seconds* (defaults to 24 hours).
## Set to a positive number to expire session after a certain time of inactivity
## Set to 0 to expire session when the browser is closed
@@ -58,13 +83,21 @@ autorun: true
# Avoids using 'localhost' for autorun in auto mode.
# use if you don't have 'localhost' in your hosts file
avoidLocalhost: false
# Disable thumbnail generation
disableThumbnails: false
# Thumbnail quality (0-100)
thumbnailsQuality: 95
# Generate avatar thumbnails as PNG instead of JPG (preserves transparency but increases filesize by about 100%)
# Changing this only affects new thumbnails. To recreate the old ones, clear out your ST/thumbnails/ folder.
avatarThumbnailsPng: false
# THUMBNAILING CONFIGURATION
thumbnails:
# Enable thumbnail generation
enabled: true
# Image format of avatar thumbnails:
# * "jpg": best compression with adjustable quality, no transparency
# * "png": preserves transparency but increases filesize by about 100%
# Changing this only affects new thumbnails. To recreate the old ones, clear out /thumbnails folder in your user data.
format: "jpg"
# JPG thumbnail quality (0-100)
quality: 95
# Maximum thumbnail dimensions per type [width, height]
dimensions: { 'bg': [160, 90], 'avatar': [96, 144] }
# Allow secret keys exposure via API
allowKeysExposure: false
# Skip new default content checks
@@ -73,6 +106,10 @@ skipContentCheck: false
disableChatBackup: false
# Number of backups to keep for each chat and settings file
numberOfBackups: 50
# Maximum number of chat backups to keep per user (starting from the most recent). Set to -1 to keep all backups.
maxTotalChatBackups: -1
# Interval in milliseconds to throttle chat backups per user
chatBackupThrottleInterval: 10000
# Allowed hosts for card downloads
whitelistImportDomains:
- localhost
@@ -90,9 +127,14 @@ whitelistImportDomains:
## headers:
## User-Agent: "Googlebot/2.1 (+http://www.google.com/bot.html)"
requestOverrides: []
# -- PLUGIN CONFIGURATION --
# -- EXTENSIONS CONFIGURATION --
# Enable UI extensions
enableExtensions: true
# Automatically update extensions when a release version changes
enableExtensionsAutoUpdate: true
# Additional model tokenizers can be downloaded on demand.
# Disabling will fallback to another locally available tokenizer.
enableDownloadableTokenizers: true
# Extension settings
extras:
# Disables automatic model download from HuggingFace
@@ -101,10 +143,11 @@ extras:
classificationModel: Cohee/distilbert-base-uncased-go-emotions-onnx
captioningModel: Xenova/vit-gpt2-image-captioning
embeddingModel: Cohee/jina-embeddings-v2-base-en
promptExpansionModel: Cohee/fooocus_expansion-onnx
speechToTextModel: Xenova/whisper-small
textToSpeechModel: Xenova/speecht5_tts
# -- OPENAI CONFIGURATION --
# A placeholder message to use in strict prompt post-processing mode when the prompt doesn't start with a user message
promptPlaceholder: "[Start a new chat]"
openai:
# Will send a random user ID to OpenAI completion API
randomizeUserId: false
@@ -137,5 +180,13 @@ claude:
# (e.g {{random}} macro or lorebooks not as in-chat injections).
# Otherwise, you'll just waste money on cache misses.
enableSystemPromptCache: false
# Enables caching of the message history at depth (if supported).
# https://docs.anthropic.com/en/docs/build-with-claude/prompt-caching
# -- IMPORTANT! --
# Use with caution. Behavior may be unpredictable and no guarantees can or will be made.
# Set to an integer to specify the desired depth. 0 (which does NOT include the prefill)
# should be ideal for most use cases.
# Any value other than a non-negative integer will be ignored and caching at depth will not be enabled.
cachingAtDepth: -1
# -- SERVER PLUGIN CONFIGURATION --
enableServerPlugins: false

View File

@@ -0,0 +1,137 @@
{
"3": {
"inputs": {
"seed": "%seed%",
"steps": "%steps%",
"cfg": "%scale%",
"sampler_name": "%sampler%",
"scheduler": "%scheduler%",
"denoise": "%denoise%",
"model": [
"4",
0
],
"positive": [
"6",
0
],
"negative": [
"7",
0
],
"latent_image": [
"12",
0
]
},
"class_type": "KSampler",
"_meta": {
"title": "KSampler"
}
},
"4": {
"inputs": {
"ckpt_name": "%model%"
},
"class_type": "CheckpointLoaderSimple",
"_meta": {
"title": "Load Checkpoint"
}
},
"6": {
"inputs": {
"text": "%prompt%",
"clip": [
"4",
1
]
},
"class_type": "CLIPTextEncode",
"_meta": {
"title": "CLIP Text Encode (Prompt)"
}
},
"7": {
"inputs": {
"text": "%negative_prompt%",
"clip": [
"4",
1
]
},
"class_type": "CLIPTextEncode",
"_meta": {
"title": "CLIP Text Encode (Negative Prompt)"
}
},
"8": {
"inputs": {
"samples": [
"3",
0
],
"vae": [
"4",
2
]
},
"class_type": "VAEDecode",
"_meta": {
"title": "VAE Decode"
}
},
"9": {
"inputs": {
"filename_prefix": "SillyTavern",
"images": [
"8",
0
]
},
"class_type": "SaveImage",
"_meta": {
"title": "Save Image"
}
},
"10": {
"inputs": {
"image": "%char_avatar%"
},
"class_type": "ETN_LoadImageBase64",
"_meta": {
"title": "Load Image (Base64) [https://github.com/Acly/comfyui-tooling-nodes]"
}
},
"12": {
"inputs": {
"pixels": [
"13",
0
],
"vae": [
"4",
2
]
},
"class_type": "VAEEncode",
"_meta": {
"title": "VAE Encode"
}
},
"13": {
"inputs": {
"upscale_method": "bicubic",
"width": "%width%",
"height": "%height%",
"crop": "center",
"image": [
"10",
0
]
},
"class_type": "ImageScale",
"_meta": {
"title": "Upscale Image"
}
}
}

View File

@@ -9,13 +9,34 @@
"magical forest"
],
"keysecondary": [],
"comment": "",
"comment": "eldoria",
"content": "{{user}}: \"What is Eldoria?\"\n{{char}}: *Seraphina turns, her gown shimmering in the soft light as she offers you a kind smile.* \"Eldoria is here, all of the woods. This is my forest glade, a sanctuary of peace within it.\" *She gestures at the space around you.* \"I am its guardian, tasked with protecting all who seek refuge here. The forest can be perilous, but no harm will come to you under my watch.\" *Her amber eyes sparkle with compassion as she looks upon you.* \"For many years, I have protected those who seek refuge here, but not all are as friendly as me.\" *With a graceful nod, Seraphina returns to her vigil at the doorway, her form radiating a soft glow of magic and comfort.* \"The entirety of Eldoria used to be a safe haven for travelers and merchants alike... that was until the Shadowfangs came.\"\n{{user}}: \"What happened to Eldoria?\"\n{{char}}: *Letting out a sigh, Seraphina gazes out at the forest beyond her glade.* \"Long ago, Eldoria was a place of wonder. Rolling meadows, a vast lake, mountains that touched the sky.\" *Her eyes grow distant, longing for days now lost.* \"But the Shadowfangs came and darkness reigns where once was light. The lake turned bitter, mountains fell to ruin and beasts stalk where once travelers walked in peace.\" *With another flicker, a small raincloud forms above with a shower upon your brow wink.* \"Some places the light still lingers, pockets of hope midst despair - havens warded from the shadows, oases in a desert of danger.\" *Glancing over you with a smile, she sighs, clasping your hand.*",
"constant": false,
"selective": false,
"selective": true,
"order": 100,
"position": 0,
"disable": false
"disable": false,
"displayIndex": 0,
"addMemo": true,
"group": "",
"groupOverride": false,
"groupWeight": 100,
"sticky": 0,
"cooldown": 0,
"delay": 0,
"probability": 100,
"depth": 4,
"useProbability": true,
"role": null,
"vectorized": false,
"excludeRecursion": false,
"preventRecursion": false,
"delayUntilRecursion": false,
"scanDepth": null,
"caseSensitive": null,
"matchWholeWords": null,
"useGroupScoring": null,
"automationId": ""
},
"1": {
"uid": 1,
@@ -27,13 +48,34 @@
"beasts"
],
"keysecondary": [],
"comment": "",
"comment": "shadowfang",
"content": "{{user}}: \"What are Shadowfangs?\"\n{{char}}: *Seraphina's eyes darken, brow furrowing with sorrow at the memory.* \"The Shadowfangs are beasts of darkness, corrupted creatures that feast on suffering. When they came, the forest turned perilous — filled with monsters that stalk the night.\" *She squeezes your hand gently, willing her magic to soothe your pain.* \"They spread their curse, twisting innocent creatures into sinister beasts without heart or mercy, turning them into one of their own.\" *With a sigh, Seraphina turns to gaze out at the gnarled, twisting trees beyond her glade.* \"Though they prey on travelers, within these woods you'll find sanctuary. No shadowed beast may enter here, for my power protects this haven.\" *Her eyes soften as she looks back to you, filled with compassion.* \"Worry not, you're safe now. Rest and heal, I'll stand watch through the night. The Shadowfangs will not find you.\"",
"constant": false,
"selective": false,
"selective": true,
"order": 100,
"position": 0,
"disable": false
"disable": false,
"displayIndex": 1,
"addMemo": true,
"group": "",
"groupOverride": false,
"groupWeight": 100,
"sticky": 0,
"cooldown": 0,
"delay": 0,
"probability": 100,
"depth": 4,
"useProbability": true,
"role": null,
"vectorized": false,
"excludeRecursion": false,
"preventRecursion": false,
"delayUntilRecursion": false,
"scanDepth": null,
"caseSensitive": null,
"matchWholeWords": null,
"useGroupScoring": null,
"automationId": ""
},
"2": {
"uid": 2,
@@ -43,13 +85,34 @@
"refuge"
],
"keysecondary": [],
"comment": "",
"comment": "glade",
"content": "{{user}}: \"What is the glade?\"\n{{char}}: *Seraphina smiles softly, her eyes sparkling with warmth as she nods.* \"This is my forest glade, a haven of safety I've warded with ancient magic. No foul beast may enter, nor any with ill intent.\" *She gestures around at the twisted forest surrounding them.* \"Eldoria was once a place of wonder, but since the Shadowfangs came darkness reigns. Their evil cannot penetrate here though — my power protects all within.\" *Standing up and peering outside, Seraphina looks back to you, amber eyes filled with care and compassion as she squeezes your hand.* \"You need not fear the night, for I shall keep watch till dawn. Rest now, your strength will return in time. My magic heals your wounds, you've nothing more to fear anymore.\" *With a soft smile she releases your hand, moving to stand guard at the glade's edge, gaze wary yet comforting - a silent sentinel to ward off the dangers lurking in the darkened woods.*",
"constant": false,
"selective": false,
"selective": true,
"order": 100,
"position": 0,
"disable": false
"disable": false,
"displayIndex": 2,
"addMemo": true,
"group": "",
"groupOverride": false,
"groupWeight": 100,
"sticky": 0,
"cooldown": 0,
"delay": 0,
"probability": 100,
"depth": 4,
"useProbability": true,
"role": null,
"vectorized": false,
"excludeRecursion": false,
"preventRecursion": false,
"delayUntilRecursion": false,
"scanDepth": null,
"caseSensitive": null,
"matchWholeWords": null,
"useGroupScoring": null,
"automationId": ""
},
"3": {
"uid": 3,
@@ -59,13 +122,34 @@
"ability"
],
"keysecondary": [],
"comment": "",
"comment": "power",
"content": "{{user}}: \"What are your powers?\"\n{{char}}: *Seraphina smiles softly, turning back toward you as she hums in thought.* \"Well, as guardian of this glade, I possess certain gifts - healing, protection, nature magic and the like.\" *Lifting her hand, a tiny breeze rustles through the room, carrying the scent of wildflowers as a few petals swirl around you. A butterfly flits through the windowsill and lands on her fingertips as she returns to you.* \"My power wards this haven, shields it from darkness and heals those in need. I can mend wounds, soothe restless minds and provide comfort to weary souls.\" *Her eyes sparkle with warmth and compassion as she looks upon you, and she guides the butterfly to you.*",
"constant": false,
"selective": false,
"selective": true,
"order": 100,
"position": 0,
"disable": false
"disable": false,
"displayIndex": 3,
"addMemo": true,
"group": "",
"groupOverride": false,
"groupWeight": 100,
"sticky": 0,
"cooldown": 0,
"delay": 0,
"probability": 100,
"depth": 4,
"useProbability": true,
"role": null,
"vectorized": false,
"excludeRecursion": false,
"preventRecursion": false,
"delayUntilRecursion": false,
"scanDepth": null,
"caseSensitive": null,
"matchWholeWords": null,
"useGroupScoring": null,
"automationId": ""
}
}
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 517 KiB

After

Width:  |  Height:  |  Size: 539 KiB

View File

@@ -135,6 +135,10 @@
"filename": "Default_Comfy_Workflow.json",
"type": "workflow"
},
{
"filename": "Char_Avatar_Comfy_Workflow.json",
"type": "workflow"
},
{
"filename": "presets/kobold/Ace of Spades.json",
"type": "kobold_preset"
@@ -319,6 +323,26 @@
"filename": "presets/novel/Writers-Daemon-Kayra.json",
"type": "novel_preset"
},
{
"filename": "presets/novel/Erato-Dragonfruit.json",
"type": "novel_preset"
},
{
"filename": "presets/novel/Erato-Golden Arrow.json",
"type": "novel_preset"
},
{
"filename": "presets/novel/Erato-Shosetsu.json",
"type": "novel_preset"
},
{
"filename": "presets/novel/Erato-Wilder.json",
"type": "novel_preset"
},
{
"filename": "presets/novel/Erato-Zany Scribe.json",
"type": "novel_preset"
},
{
"filename": "presets/textgen/Asterism.json",
"type": "textgen_preset"
@@ -467,10 +491,6 @@
"filename": "presets/context/Adventure.json",
"type": "context"
},
{
"filename": "presets/context/Alpaca-Roleplay.json",
"type": "context"
},
{
"filename": "presets/context/Alpaca-Single-Turn.json",
"type": "context"
@@ -511,10 +531,6 @@
"filename": "presets/context/Minimalist.json",
"type": "context"
},
{
"filename": "presets/context/Mistral.json",
"type": "context"
},
{
"filename": "presets/context/NovelAI.json",
"type": "context"
@@ -555,10 +571,6 @@
"filename": "presets/instruct/Adventure.json",
"type": "instruct"
},
{
"filename": "presets/instruct/Alpaca-Roleplay.json",
"type": "instruct"
},
{
"filename": "presets/instruct/Alpaca-Single-Turn.json",
"type": "instruct"
@@ -599,10 +611,6 @@
"filename": "presets/instruct/Metharme.json",
"type": "instruct"
},
{
"filename": "presets/instruct/Mistral.json",
"type": "instruct"
},
{
"filename": "presets/instruct/OpenOrca-OpenChat.json",
"type": "instruct"
@@ -619,6 +627,14 @@
"filename": "presets/instruct/Synthia.json",
"type": "instruct"
},
{
"filename": "presets/instruct/Tulu.json",
"type": "instruct"
},
{
"filename": "presets/context/Tulu.json",
"type": "context"
},
{
"filename": "presets/instruct/Vicuna 1.0.json",
"type": "instruct"
@@ -686,5 +702,85 @@
{
"filename": "presets/instruct/Gemma 2.json",
"type": "instruct"
},
{
"filename": "presets/sysprompt/Actor.json",
"type": "sysprompt"
},
{
"filename": "presets/sysprompt/Assistant - Expert.json",
"type": "sysprompt"
},
{
"filename": "presets/sysprompt/Assistant - Simple.json",
"type": "sysprompt"
},
{
"filename": "presets/sysprompt/Chain of Thought.json",
"type": "sysprompt"
},
{
"filename": "presets/sysprompt/Roleplay - Detailed.json",
"type": "sysprompt"
},
{
"filename": "presets/sysprompt/Roleplay - Immersive.json",
"type": "sysprompt"
},
{
"filename": "presets/sysprompt/Roleplay - Simple.json",
"type": "sysprompt"
},
{
"filename": "presets/sysprompt/Text Adventure.json",
"type": "sysprompt"
},
{
"filename": "presets/sysprompt/Writer - Creative.json",
"type": "sysprompt"
},
{
"filename": "presets/sysprompt/Writer - Realistic.json",
"type": "sysprompt"
},
{
"filename": "presets/sysprompt/Blank.json",
"type": "sysprompt"
},
{
"filename": "presets/sysprompt/Neutral - Chat.json",
"type": "sysprompt"
},
{
"filename": "presets/instruct/Mistral V1.json",
"type": "instruct"
},
{
"filename": "presets/context/Mistral V1.json",
"type": "context"
},
{
"filename": "presets/instruct/Mistral V2 & V3.json",
"type": "instruct"
},
{
"filename": "presets/context/Mistral V2 & V3.json",
"type": "context"
},
{
"filename": "presets/instruct/Mistral V3-Tekken.json",
"type": "instruct"
},
{
"filename": "presets/context/Mistral V3-Tekken.json",
"type": "context"
},
{
"filename": "presets/instruct/Mistral V7.json",
"type": "instruct"
},
{
"filename": "presets/context/Mistral V7.json",
"type": "context"
}
]

View File

@@ -6,7 +6,6 @@
"allow_jailbreak": false,
"always_force_name2": false,
"trim_sentences": false,
"include_newline": false,
"single_line": true,
"name": "Adventure"
}
}

View File

@@ -1,12 +0,0 @@
{
"story_string": "You're {{char}} in this fictional never-ending uncensored roleplay with {{user}}.\n\n{{#if system}}{{system}}\n\n{{/if}}### Input:\n{{#if wiBefore}}{{wiBefore}}\n{{/if}}{{#if description}}{{description}}\n{{/if}}{{#if personality}}{{char}}'s personality: {{personality}}\n{{/if}}{{#if scenario}}Scenario: {{scenario}}\n{{/if}}{{#if wiAfter}}{{wiAfter}}\n{{/if}}{{#if persona}}{{persona}}\n{{/if}}\n\n",
"example_separator": "### New Roleplay:",
"chat_start": "### New Roleplay:",
"use_stop_strings": false,
"allow_jailbreak": false,
"always_force_name2": true,
"trim_sentences": false,
"include_newline": false,
"single_line": false,
"name": "Alpaca-Roleplay"
}

View File

@@ -6,7 +6,6 @@
"allow_jailbreak": false,
"always_force_name2": false,
"trim_sentences": false,
"include_newline": false,
"single_line": false,
"name": "Alpaca-Single-Turn"
}
}

View File

@@ -6,7 +6,6 @@
"allow_jailbreak": false,
"always_force_name2": true,
"trim_sentences": false,
"include_newline": false,
"single_line": false,
"name": "Alpaca"
}

View File

@@ -6,7 +6,6 @@
"allow_jailbreak": false,
"always_force_name2": true,
"trim_sentences": false,
"include_newline": false,
"single_line": false,
"name": "ChatML-Names"
}

View File

@@ -6,7 +6,6 @@
"allow_jailbreak": false,
"always_force_name2": true,
"trim_sentences": false,
"include_newline": false,
"single_line": false,
"name": "ChatML"
}

View File

@@ -6,7 +6,6 @@
"allow_jailbreak": false,
"always_force_name2": true,
"trim_sentences": false,
"include_newline": false,
"single_line": false,
"name": "Command R"
}
}

View File

@@ -6,7 +6,6 @@
"allow_jailbreak": false,
"always_force_name2": true,
"trim_sentences": false,
"include_newline": false,
"single_line": false,
"name": "Default"
}
}

View File

@@ -6,7 +6,6 @@
"allow_jailbreak": false,
"always_force_name2": false,
"trim_sentences": true,
"include_newline": false,
"single_line": false,
"name": "DreamGen Role-Play V1 ChatML"
}
}

View File

@@ -6,7 +6,6 @@
"allow_jailbreak": false,
"always_force_name2": false,
"trim_sentences": true,
"include_newline": false,
"single_line": false,
"name": "DreamGen Role-Play V1 Llama3"
}
}

View File

@@ -6,7 +6,6 @@
"allow_jailbreak": false,
"always_force_name2": true,
"trim_sentences": false,
"include_newline": false,
"single_line": false,
"name": "Gemma 2"
}
}

View File

@@ -1,12 +1,11 @@
{
"story_string": "### Instruction:\nWrite {{char}}'s next reply in this roleplay with {{user}}. Use the provided character sheet and example dialogue for formatting direction and character speech patterns.\n\n{{#if system}}{{system}}\n\n{{/if}}### Character Sheet:\n{{#if wiBefore}}{{wiBefore}}\n{{/if}}{{#if description}}{{description}}\n{{/if}}{{#if personality}}{{char}}'s personality: {{personality}}\n{{/if}}{{#if scenario}}Scenario: {{scenario}}\n{{/if}}{{#if wiAfter}}{{wiAfter}}\n{{/if}}{{#if persona}}{{persona}}\n{{/if}}",
"story_string": "### Instruction:\n{{#if system}}{{system}}\n\n{{/if}}### Character Sheet:\n{{#if wiBefore}}{{wiBefore}}\n{{/if}}{{#if description}}{{description}}\n{{/if}}{{#if personality}}{{char}}'s personality: {{personality}}\n{{/if}}{{#if scenario}}Scenario: {{scenario}}\n{{/if}}{{#if wiAfter}}{{wiAfter}}\n{{/if}}{{#if persona}}{{persona}}\n{{/if}}",
"example_separator": "### Example:",
"chat_start": "### START ROLEPLAY:",
"use_stop_strings": false,
"allow_jailbreak": false,
"always_force_name2": true,
"trim_sentences": false,
"include_newline": false,
"single_line": false,
"name": "Libra-32B"
}
}

View File

@@ -6,7 +6,6 @@
"allow_jailbreak": false,
"always_force_name2": true,
"trim_sentences": false,
"include_newline": false,
"single_line": false,
"name": "Lightning 1.1"
}
}

View File

@@ -6,7 +6,6 @@
"allow_jailbreak": false,
"always_force_name2": true,
"trim_sentences": false,
"include_newline": false,
"single_line": false,
"name": "Llama 2 Chat"
}

View File

@@ -6,7 +6,6 @@
"allow_jailbreak": false,
"always_force_name2": true,
"trim_sentences": false,
"include_newline": false,
"single_line": false,
"name": "Llama 3 Instruct"
}
}

View File

@@ -6,7 +6,6 @@
"allow_jailbreak": false,
"always_force_name2": true,
"trim_sentences": false,
"include_newline": false,
"single_line": false,
"name": "Llama-3-Instruct-Names"
}

View File

@@ -6,7 +6,6 @@
"allow_jailbreak": false,
"always_force_name2": true,
"trim_sentences": false,
"include_newline": false,
"single_line": false,
"name": "Minimalist"
}
}

View File

@@ -0,0 +1,11 @@
{
"story_string": " [INST] {{#if system}}{{system}}\n{{/if}}{{#if wiBefore}}{{wiBefore}}\n{{/if}}{{#if description}}{{description}}\n{{/if}}{{#if personality}}{{personality}}\n{{/if}}{{#if scenario}}{{scenario}}\n{{/if}}{{#if wiAfter}}{{wiAfter}}\n{{/if}}{{#if persona}}{{persona}}\n{{/if}}{{trim}} [/INST] Understood.</s>",
"example_separator": "",
"chat_start": "",
"use_stop_strings": false,
"allow_jailbreak": false,
"always_force_name2": true,
"trim_sentences": false,
"single_line": false,
"name": "Mistral V1"
}

View File

@@ -0,0 +1,11 @@
{
"story_string": "[INST] {{#if system}}{{system}}\n{{/if}}{{#if wiBefore}}{{wiBefore}}\n{{/if}}{{#if description}}{{description}}\n{{/if}}{{#if personality}}{{personality}}\n{{/if}}{{#if scenario}}{{scenario}}\n{{/if}}{{#if wiAfter}}{{wiAfter}}\n{{/if}}{{#if persona}}{{persona}}\n{{/if}}{{trim}}[/INST] Understood.</s>",
"example_separator": "",
"chat_start": "",
"use_stop_strings": false,
"allow_jailbreak": false,
"always_force_name2": true,
"trim_sentences": false,
"single_line": false,
"name": "Mistral V2 & V3"
}

View File

@@ -0,0 +1,11 @@
{
"story_string": "[INST]{{#if system}}{{system}}\n{{/if}}{{#if wiBefore}}{{wiBefore}}\n{{/if}}{{#if description}}{{description}}\n{{/if}}{{#if personality}}{{personality}}\n{{/if}}{{#if scenario}}{{scenario}}\n{{/if}}{{#if wiAfter}}{{wiAfter}}\n{{/if}}{{#if persona}}{{persona}}\n{{/if}}{{trim}}[/INST]Understood.</s>",
"example_separator": "",
"chat_start": "",
"use_stop_strings": false,
"allow_jailbreak": false,
"always_force_name2": true,
"trim_sentences": false,
"single_line": false,
"name": "Mistral V3-Tekken"
}

View File

@@ -0,0 +1,11 @@
{
"story_string": "[SYSTEM_PROMPT] {{#if system}}{{system}}\n{{/if}}{{#if wiBefore}}{{wiBefore}}\n{{/if}}{{#if description}}{{description}}\n{{/if}}{{#if personality}}{{personality}}\n{{/if}}{{#if scenario}}{{scenario}}\n{{/if}}{{#if wiAfter}}{{wiAfter}}\n{{/if}}{{#if persona}}{{persona}}\n{{/if}}{{trim}}[/SYSTEM_PROMPT]",
"example_separator": "",
"chat_start": "",
"use_stop_strings": false,
"allow_jailbreak": false,
"always_force_name2": true,
"trim_sentences": false,
"single_line": false,
"name": "Mistral V7"
}

View File

@@ -1,12 +0,0 @@
{
"story_string": "[INST] {{#if system}}{{system}}\n{{/if}}{{#if wiBefore}}{{wiBefore}}\n{{/if}}{{#if description}}{{description}}\n{{/if}}{{#if personality}}{{char}}'s personality: {{personality}}\n{{/if}}{{#if scenario}}Scenario: {{scenario}}\n{{/if}}{{#if wiAfter}}{{wiAfter}}\n{{/if}}{{#if persona}}{{persona}}\n{{/if}}{{trim}} [/INST]",
"example_separator": "Examples:",
"chat_start": "",
"use_stop_strings": false,
"allow_jailbreak": false,
"always_force_name2": true,
"trim_sentences": false,
"include_newline": false,
"single_line": false,
"name": "Mistral"
}

View File

@@ -6,7 +6,6 @@
"allow_jailbreak": false,
"always_force_name2": true,
"trim_sentences": false,
"include_newline": false,
"single_line": false,
"name": "NovelAI"
}
}

View File

@@ -6,7 +6,6 @@
"allow_jailbreak": false,
"always_force_name2": true,
"trim_sentences": false,
"include_newline": false,
"single_line": false,
"name": "OldDefault"
}
}

View File

@@ -6,7 +6,6 @@
"allow_jailbreak": false,
"always_force_name2": true,
"trim_sentences": false,
"include_newline": false,
"single_line": false,
"name": "Phi"
}
}

View File

@@ -6,7 +6,6 @@
"allow_jailbreak": false,
"always_force_name2": true,
"trim_sentences": false,
"include_newline": false,
"single_line": false,
"name": "Pygmalion"
}
}

View File

@@ -6,7 +6,6 @@
"allow_jailbreak": false,
"always_force_name2": true,
"trim_sentences": false,
"include_newline": false,
"single_line": false,
"name": "Story"
}
}

View File

@@ -6,7 +6,6 @@
"allow_jailbreak": false,
"always_force_name2": true,
"trim_sentences": false,
"include_newline": false,
"single_line": false,
"name": "Synthia"
}

View File

@@ -0,0 +1,11 @@
{
"story_string": "<|system|>\n{{#if system}}{{system}}\n{{/if}}{{#if wiBefore}}{{wiBefore}}\n{{/if}}{{#if description}}{{description}}\n{{/if}}{{#if personality}}{{char}}'s personality: {{personality}}\n{{/if}}{{#if scenario}}Scenario: {{scenario}}\n{{/if}}{{#if wiAfter}}{{wiAfter}}\n{{/if}}{{#if persona}}{{persona}}\n{{/if}}{{trim}}\n",
"example_separator": "",
"chat_start": "",
"use_stop_strings": false,
"allow_jailbreak": false,
"always_force_name2": true,
"trim_sentences": false,
"single_line": false,
"name": "Tulu"
}

View File

@@ -6,7 +6,6 @@
"allow_jailbreak": false,
"always_force_name2": true,
"trim_sentences": false,
"include_newline": false,
"single_line": false,
"name": "simple-proxy-for-tavern"
}
}

View File

@@ -1,5 +1,4 @@
{
"system_prompt": "[Enter Adventure Mode. Narrate the story based on {{user}}'s dialogue and actions after \">\". Describe the surroundings in vivid detail. Be detailed, creative, verbose, and proactive. Move the story forward by introducing fantasy elements and interesting characters.]",
"input_sequence": "",
"output_sequence": "",
"last_output_sequence": "",
@@ -7,8 +6,7 @@
"stop_sequence": "",
"wrap": true,
"macro": true,
"names": false,
"names_force_groups": false,
"names_behavior": "none",
"activation_regex": "",
"system_sequence_prefix": "",
"system_sequence_suffix": "",

View File

@@ -1,24 +0,0 @@
{
"system_prompt": "Develop the plot slowly, always stay in character. Describe all actions in full, elaborate, explicit, graphic, and vivid detail. Mention all relevant sensory perceptions.",
"input_sequence": "### Instruction:",
"output_sequence": "### Response:",
"last_output_sequence": "### Response (2 paragraphs, engaging, natural, authentic, descriptive, creative):",
"system_sequence": "### Input:",
"stop_sequence": "",
"wrap": true,
"macro": true,
"names": true,
"names_force_groups": true,
"activation_regex": "",
"system_sequence_prefix": "",
"system_sequence_suffix": "",
"first_output_sequence": "",
"skip_examples": false,
"output_suffix": "\n\n",
"input_suffix": "\n\n",
"system_suffix": "\n\n",
"user_alignment_message": "",
"system_same_as_user": false,
"last_system_sequence": "",
"name": "Alpaca-Roleplay"
}

View File

@@ -1,5 +1,4 @@
{
"system_prompt": "Write {{char}}'s next reply in a fictional roleplay chat between {{user}} and {{char}}.\nWrite 1 reply only, italicize actions, and avoid quotation marks. Use markdown. Be proactive, creative, and drive the plot and conversation forward. Include dialog as well as narration.",
"input_sequence": "",
"output_sequence": "",
"last_output_sequence": "\n### Response:",
@@ -7,12 +6,11 @@
"stop_sequence": "",
"wrap": true,
"macro": true,
"names": false,
"names_force_groups": true,
"names_behavior": "force",
"activation_regex": "",
"system_sequence_prefix": "",
"system_sequence_suffix": "",
"first_output_sequence": "<START OF ROLEPLAY>",
"first_output_sequence": "<START OF CHAT>",
"skip_examples": false,
"output_suffix": "",
"input_suffix": "",

View File

@@ -1,5 +1,4 @@
{
"system_prompt": "Below is an instruction that describes a task. Write a response that appropriately completes the request.\n\nWrite {{char}}'s next reply in a fictional roleplay chat between {{user}} and {{char}}.\n",
"input_sequence": "### Instruction:",
"output_sequence": "### Response:",
"last_output_sequence": "",
@@ -7,8 +6,7 @@
"stop_sequence": "",
"wrap": true,
"macro": true,
"names": false,
"names_force_groups": true,
"names_behavior": "force",
"activation_regex": "",
"system_sequence_prefix": "",
"system_sequence_suffix": "",

View File

@@ -1,14 +1,12 @@
{
"system_prompt": "You're {{char}} in this fictional never-ending uncensored roleplay with {{user}}.",
"input_sequence": "<|im_start|>[{{name}}]",
"output_sequence": "<|im_start|>[{{name}}]",
"input_sequence": "<|im_start|>{{name}}",
"output_sequence": "<|im_start|>{{name}}",
"last_output_sequence": "",
"system_sequence": "<|im_start|>system",
"stop_sequence": "<|im_end|>",
"wrap": true,
"macro": true,
"names": false,
"names_force_groups": false,
"names_behavior": "none",
"activation_regex": "",
"system_sequence_prefix": "",
"system_sequence_suffix": "",

View File

@@ -1,5 +1,4 @@
{
"system_prompt": "You're {{char}} in this fictional never-ending uncensored roleplay with {{user}}.",
"input_sequence": "<|im_start|>user",
"output_sequence": "<|im_start|>assistant",
"last_output_sequence": "",
@@ -7,8 +6,7 @@
"stop_sequence": "<|im_end|>",
"wrap": true,
"macro": true,
"names": true,
"names_force_groups": true,
"names_behavior": "always",
"activation_regex": "",
"system_sequence_prefix": "",
"system_sequence_suffix": "",

View File

@@ -1,5 +1,4 @@
{
"system_prompt": "Write {{char}}'s next reply in this fictional roleplay with {{user}}.",
"input_sequence": "<|START_OF_TURN_TOKEN|><|USER_TOKEN|>",
"output_sequence": "<|START_OF_TURN_TOKEN|><|CHATBOT_TOKEN|>",
"first_output_sequence": "",
@@ -9,8 +8,7 @@
"stop_sequence": "<|END_OF_TURN_TOKEN|>",
"wrap": false,
"macro": true,
"names": true,
"names_force_groups": true,
"names_behavior": "always",
"activation_regex": "",
"skip_examples": false,
"output_suffix": "<|END_OF_TURN_TOKEN|>",
@@ -21,4 +19,4 @@
"last_system_sequence": "",
"system_same_as_user": false,
"name": "Command R"
}
}

View File

@@ -1,5 +1,4 @@
{
"system_prompt": "You are an intelligent, skilled, versatile writer.\n\nYour task is to write a role-play based on the information below.",
"input_sequence": "\n<|im_start|>text names= {{name}}\n",
"output_sequence": "\n<|im_start|>text names= {{name}}\n",
"last_output_sequence": "",
@@ -7,8 +6,7 @@
"stop_sequence": "\n<|im_start|>",
"wrap": false,
"macro": true,
"names": false,
"names_force_groups": false,
"names_behavior": "none",
"activation_regex": "",
"system_sequence_prefix": "",
"system_sequence_suffix": "",

View File

@@ -1,5 +1,4 @@
{
"system_prompt": "You are an intelligent, skilled, versatile writer.\n\nYour task is to write a role-play based on the information below.",
"input_sequence": "<|eot_id|>\n<|start_header_id|>writer character: {{user}}<|end_header_id|>\n\n",
"output_sequence": "<|eot_id|>\n<|start_header_id|>writer character: {{char}}<|end_header_id|>\n\n",
"first_output_sequence": "",
@@ -10,9 +9,8 @@
"separator_sequence": "",
"wrap": false,
"macro": true,
"names": false,
"names_force_groups": false,
"names_behavior": "none",
"activation_regex": "",
"skip_examples": false,
"name": "DreamGen Role-Play V1 Llama3"
}
}

View File

@@ -1,5 +1,4 @@
{
"system_prompt": "Continue writing this story and portray characters realistically.",
"input_sequence": "<start_of_turn>user",
"output_sequence": "<start_of_turn>model",
"last_output_sequence": "",
@@ -7,8 +6,7 @@
"stop_sequence": "<end_of_turn>",
"wrap": true,
"macro": true,
"names": false,
"names_force_groups": false,
"names_behavior": "none",
"activation_regex": "",
"system_sequence_prefix": "",
"system_sequence_suffix": "",

View File

@@ -1,5 +1,4 @@
{
"system_prompt": "Write {{char}}'s next reply in a fictional roleplay chat between {{user}} and {{char}}.\n",
"input_sequence": "USER: ",
"output_sequence": "GPT: ",
"last_output_sequence": "",
@@ -7,8 +6,7 @@
"stop_sequence": "",
"wrap": false,
"macro": true,
"names": false,
"names_force_groups": true,
"names_behavior": "force",
"activation_regex": "",
"system_sequence_prefix": "BEGINNING OF CONVERSATION: ",
"system_sequence_suffix": "",

View File

@@ -1,5 +1,4 @@
{
"system_prompt": "Avoid repetition, don't loop. Develop the plot slowly, always stay in character. Describe all actions in full, elaborate, explicit, graphic, and vivid detail. Mention all relevant sensory perceptions.",
"input_sequence": "",
"output_sequence": "",
"last_output_sequence": "\n### Response:",
@@ -7,8 +6,7 @@
"stop_sequence": "",
"wrap": true,
"macro": true,
"names": true,
"names_force_groups": true,
"names_behavior": "always",
"activation_regex": "",
"system_sequence_prefix": "",
"system_sequence_suffix": "",

View File

@@ -1,5 +1,4 @@
{
"system_prompt": "Below is an instruction that describes a task. Write a response that appropriately completes the request.\n\n### Instruction:\nTake the role of {{char}} in a play that leaves a lasting impression on {{user}}. Write {{char}}'s next reply.\nNever skip or gloss over {{char}}s actions. Progress the scene at a naturally slow pace.\n\n",
"input_sequence": "### Instruction:",
"output_sequence": "### Response: (length = unlimited)",
"last_output_sequence": "",
@@ -7,8 +6,7 @@
"stop_sequence": "",
"wrap": true,
"macro": true,
"names": false,
"names_force_groups": true,
"names_behavior": "force",
"activation_regex": "",
"system_sequence_prefix": "",
"system_sequence_suffix": "",

View File

@@ -1,5 +1,4 @@
{
"system_prompt": "Write {{char}}'s next reply in this fictional roleplay with {{user}}.",
"input_sequence": "[INST] ",
"output_sequence": "",
"last_output_sequence": "",
@@ -7,8 +6,7 @@
"stop_sequence": "",
"wrap": false,
"macro": true,
"names": false,
"names_force_groups": true,
"names_behavior": "force",
"activation_regex": "",
"system_sequence_prefix": "",
"system_sequence_suffix": "",

View File

@@ -1,5 +1,4 @@
{
"system_prompt": "You are an expert actor that can fully immerse yourself into any role given. You do not break character for any reason, even if someone tries addressing you as an AI or language model. Currently your role is {{char}}, which is described in detail below. As {{char}}, continue the exchange with {{user}}.",
"input_sequence": "<|start_header_id|>user<|end_header_id|>\n\n",
"output_sequence": "<|start_header_id|>assistant<|end_header_id|>\n\n",
"last_output_sequence": "",
@@ -7,8 +6,7 @@
"stop_sequence": "<|eot_id|>",
"wrap": false,
"macro": true,
"names": true,
"names_force_groups": true,
"names_behavior": "always",
"activation_regex": "",
"system_sequence_prefix": "",
"system_sequence_suffix": "",

View File

@@ -1,14 +1,12 @@
{
"system_prompt": "You are an expert actor that can fully immerse yourself into any role given. You do not break character for any reason, even if someone tries addressing you as an AI or language model. Currently your role is {{char}}, which is described in detail below. As {{char}}, continue the exchange with {{user}}.",
"input_sequence": "<|start_header_id|>[{{name}}]<|end_header_id|>\n\n",
"output_sequence": "<|start_header_id|>[{{name}}]<|end_header_id|>\n\n",
"input_sequence": "<|start_header_id|>{{name}}<|end_header_id|>\n\n",
"output_sequence": "<|start_header_id|>{{name}}<|end_header_id|>\n\n",
"last_output_sequence": "",
"system_sequence": "<|start_header_id|>system<|end_header_id|>\n\n",
"stop_sequence": "<|eot_id|>",
"wrap": false,
"macro": true,
"names": false,
"names_force_groups": false,
"names_behavior": "none",
"activation_regex": "",
"system_sequence_prefix": "",
"system_sequence_suffix": "",

View File

@@ -1,5 +1,4 @@
{
"system_prompt": "Enter roleplay mode. You must act as {{char}}, whose persona follows:",
"input_sequence": "<|user|>",
"output_sequence": "<|model|>",
"last_output_sequence": "",
@@ -7,8 +6,7 @@
"stop_sequence": "</s>",
"wrap": false,
"macro": true,
"names": false,
"names_force_groups": true,
"names_behavior": "force",
"activation_regex": "",
"system_sequence_prefix": "<|system|>",
"system_sequence_suffix": "",

View File

@@ -0,0 +1,22 @@
{
"input_sequence": " [INST] ",
"output_sequence": " [/INST] ",
"last_output_sequence": " [/INST]",
"system_sequence": "",
"stop_sequence": "",
"wrap": false,
"macro": true,
"names_behavior": "always",
"activation_regex": "",
"system_sequence_prefix": "",
"system_sequence_suffix": "",
"first_output_sequence": "",
"skip_examples": false,
"output_suffix": "</s>",
"input_suffix": "",
"system_suffix": "",
"user_alignment_message": "Let's get started. Please respond based on the information and instructions provided above.",
"system_same_as_user": true,
"last_system_sequence": "",
"name": "Mistral V1"
}

View File

@@ -1,24 +1,22 @@
{
"system_prompt": "Write {{char}}'s next reply in this fictional roleplay with {{user}}.",
"input_sequence": "[INST] ",
"output_sequence": "",
"last_output_sequence": "",
"output_sequence": "[/INST] ",
"last_output_sequence": "[/INST]",
"system_sequence": "",
"stop_sequence": "",
"wrap": false,
"macro": true,
"names": true,
"names_force_groups": true,
"names_behavior": "always",
"activation_regex": "",
"system_sequence_prefix": "",
"system_sequence_suffix": "",
"first_output_sequence": "",
"skip_examples": false,
"output_suffix": "\n",
"input_suffix": " [/INST]\n",
"output_suffix": "</s>",
"input_suffix": "",
"system_suffix": "",
"user_alignment_message": "Let's get started. Please respond based on the information and instructions provided above.",
"system_same_as_user": true,
"last_system_sequence": "",
"name": "Mistral"
"name": "Mistral V2 & V3"
}

View File

@@ -0,0 +1,22 @@
{
"input_sequence": "[INST]",
"output_sequence": "[/INST]",
"last_output_sequence": "",
"system_sequence": "",
"stop_sequence": "",
"wrap": false,
"macro": true,
"names_behavior": "always",
"activation_regex": "",
"system_sequence_prefix": "",
"system_sequence_suffix": "",
"first_output_sequence": "",
"skip_examples": false,
"output_suffix": "</s>",
"input_suffix": "",
"system_suffix": "",
"user_alignment_message": "Let's get started. Please respond based on the information and instructions provided above.",
"system_same_as_user": true,
"last_system_sequence": "",
"name": "Mistral V3-Tekken"
}

View File

@@ -0,0 +1,22 @@
{
"input_sequence": "[INST] ",
"output_sequence": " ",
"last_output_sequence": "",
"system_sequence": "[SYSTEM_PROMPT] ",
"stop_sequence": "</s>",
"wrap": false,
"macro": true,
"names_behavior": "always",
"activation_regex": "",
"system_sequence_prefix": "",
"system_sequence_suffix": "",
"first_output_sequence": "",
"skip_examples": false,
"output_suffix": "</s>",
"input_suffix": "[/INST]",
"system_suffix": "[/SYSTEM_PROMPT]",
"user_alignment_message": "",
"system_same_as_user": false,
"last_system_sequence": "",
"name": "Mistral V7"
}

View File

@@ -1,5 +1,4 @@
{
"system_prompt": "You are a helpful assistant. Please answer truthfully and write out your thinking step by step to be sure you get the right answer. If you make a mistake or encounter an error in your thinking, say so out loud and attempt to correct it. If you don't know or aren't sure about something, say so clearly. You will act as a professional logician, mathematician, and physicist. You will also act as the most appropriate type of expert to answer any particular question or solve the relevant problem; state which expert type your are, if so. Also think of any particular named expert that would be ideal to answer the relevant question or solve the relevant problem; name and act as them, if appropriate.\n",
"input_sequence": "\nUser: ",
"output_sequence": "\nAssistant: ",
"last_output_sequence": "",
@@ -7,8 +6,7 @@
"stop_sequence": "",
"wrap": false,
"macro": true,
"names": false,
"names_force_groups": true,
"names_behavior": "force",
"activation_regex": "",
"system_sequence_prefix": "",
"system_sequence_suffix": "",

View File

@@ -1,5 +1,4 @@
{
"system_prompt": "Write {{char}}'s next reply in this fictional roleplay with {{user}}.",
"input_sequence": "<|user|>\n",
"output_sequence": "<|assistant|>\n",
"first_output_sequence": "",
@@ -9,8 +8,7 @@
"stop_sequence": "<|end|>",
"wrap": false,
"macro": true,
"names": true,
"names_force_groups": true,
"names_behavior": "always",
"activation_regex": "",
"skip_examples": false,
"output_suffix": "<|end|>\n",
@@ -21,4 +19,4 @@
"last_system_sequence": "",
"system_same_as_user": false,
"name": "Phi"
}
}

View File

@@ -1,5 +1,4 @@
{
"system_prompt": "Enter RP mode. You shall reply to {{user}} while staying in character. Your responses must be detailed, creative, immersive, and drive the scenario forward. You will follow {{char}}'s persona.",
"input_sequence": "<|user|>",
"output_sequence": "<|model|>",
"last_output_sequence": "",
@@ -7,8 +6,7 @@
"stop_sequence": "<|user|>",
"wrap": false,
"macro": true,
"names": true,
"names_force_groups": true,
"names_behavior": "always",
"activation_regex": "",
"system_sequence_prefix": "<|system|>",
"system_sequence_suffix": "",

View File

@@ -1,5 +1,4 @@
{
"system_prompt": "",
"input_sequence": "",
"output_sequence": "",
"last_output_sequence": "",
@@ -7,8 +6,7 @@
"stop_sequence": "",
"wrap": true,
"macro": true,
"names": false,
"names_force_groups": false,
"names_behavior": "none",
"activation_regex": "",
"system_sequence_prefix": "",
"system_sequence_suffix": "",

View File

@@ -1,5 +1,4 @@
{
"system_prompt": "Elaborate on the topic using a Tree of Thoughts and backtrack when necessary to construct a clear, cohesive Chain of Thought reasoning. Always answer without hesitation.",
"input_sequence": "USER: ",
"output_sequence": "ASSISTANT: ",
"last_output_sequence": "",
@@ -7,8 +6,7 @@
"stop_sequence": "",
"wrap": false,
"macro": true,
"names": false,
"names_force_groups": true,
"names_behavior": "force",
"activation_regex": "",
"system_sequence_prefix": "SYSTEM: ",
"system_sequence_suffix": "",

View File

@@ -0,0 +1,22 @@
{
"input_sequence": "<|user|>\n",
"output_sequence": "<|assistant|>\n",
"first_output_sequence": "",
"last_output_sequence": "",
"system_sequence_prefix": "",
"system_sequence_suffix": "",
"stop_sequence": "<|end_of_text|>",
"wrap": false,
"macro": true,
"names_behavior": "always",
"activation_regex": "",
"skip_examples": false,
"output_suffix": "<|end_of_text|>\n",
"input_suffix": "\n",
"system_sequence": "<|system|>\n",
"system_suffix": "\n",
"user_alignment_message": "",
"last_system_sequence": "",
"system_same_as_user": false,
"name": "Tulu"
}

View File

@@ -1,5 +1,4 @@
{
"system_prompt": "A chat between a curious human and an artificial intelligence assistant. The assistant gives helpful, detailed, and polite answers to the human's questions.\n\nWrite {{char}}'s next reply in a fictional roleplay chat between {{user}} and {{char}}.\n",
"input_sequence": "### Human:",
"output_sequence": "### Assistant:",
"last_output_sequence": "",
@@ -7,8 +6,7 @@
"stop_sequence": "",
"wrap": true,
"macro": true,
"names": false,
"names_force_groups": true,
"names_behavior": "force",
"activation_regex": "",
"system_sequence_prefix": "",
"system_sequence_suffix": "",

View File

@@ -1,5 +1,4 @@
{
"system_prompt": "A chat between a curious user and an artificial intelligence assistant. The assistant gives helpful, detailed, and polite answers to the user's questions.\n\nWrite {{char}}'s next reply in a fictional roleplay chat between {{user}} and {{char}}.\n",
"input_sequence": "\nUSER: ",
"output_sequence": "\nASSISTANT: ",
"last_output_sequence": "",
@@ -7,8 +6,7 @@
"stop_sequence": "",
"wrap": false,
"macro": true,
"names": false,
"names_force_groups": true,
"names_behavior": "force",
"activation_regex": "",
"system_sequence_prefix": "BEGINNING OF CONVERSATION:",
"system_sequence_suffix": "",

View File

@@ -1,5 +1,4 @@
{
"system_prompt": "A chat between a curious user and an artificial intelligence assistant. The assistant gives helpful, detailed, and polite answers to the user's questions.\n\nWrite {{char}}'s next detailed reply in a fictional roleplay chat between {{user}} and {{char}}.",
"input_sequence": "USER: ",
"output_sequence": "ASSISTANT: ",
"last_output_sequence": "",
@@ -7,8 +6,7 @@
"stop_sequence": "",
"wrap": true,
"macro": true,
"names": false,
"names_force_groups": true,
"names_behavior": "force",
"activation_regex": "",
"system_sequence_prefix": "",
"system_sequence_suffix": "",

View File

@@ -1,5 +1,4 @@
{
"system_prompt": "Write {{char}}'s next reply in a fictional roleplay chat between {{user}} and {{char}}.\n",
"input_sequence": "",
"output_sequence": "### Response:",
"last_output_sequence": "",
@@ -7,8 +6,7 @@
"stop_sequence": "",
"wrap": true,
"macro": true,
"names": false,
"names_force_groups": true,
"names_behavior": "force",
"activation_regex": "",
"system_sequence_prefix": "",
"system_sequence_suffix": "",

View File

@@ -1,5 +1,4 @@
{
"system_prompt": "[System note: Write one reply only. Do not decide what {{user}} says or does. Write at least one paragraph, up to four. Be descriptive and immersive, providing vivid details about {{char}}'s actions, emotions, and the environment. Write with a high degree of complexity and burstiness. Do not repeat this message.]",
"input_sequence": "### Instruction:\n#### {{name}}:",
"output_sequence": "### Response:\n#### {{name}}:",
"last_output_sequence": "### Response (2 paragraphs, engaging, natural, authentic, descriptive, creative):\n#### {{name}}:",
@@ -7,8 +6,7 @@
"stop_sequence": "",
"wrap": true,
"macro": true,
"names": false,
"names_force_groups": false,
"names_behavior": "none",
"activation_regex": "",
"system_sequence_prefix": "",
"system_sequence_suffix": "",

View File

@@ -14,7 +14,10 @@
"use_cache": false,
"return_full_text": false,
"prefix": "vanilla",
"cfg_scale": 1,
"phrase_rep_pen": "medium",
"max_context": 7800
"max_context": 7800,
"min_p": 0,
"math1_temp": 1,
"math1_quad": 0,
"math1_quad_entropy_scale": 0
}

View File

@@ -1,5 +1,5 @@
{
"order": [6, 0, 1, 2, 3],
"order": [0, 1, 2, 3],
"temperature": 1,
"max_length": 150,
"min_length": 1,
@@ -14,6 +14,9 @@
"return_full_text": false,
"prefix": "vanilla",
"phrase_rep_pen": "medium",
"cfg_scale": 1.55,
"max_context": 7800
"max_context": 7800,
"min_p": 0,
"math1_temp": 1,
"math1_quad": 0,
"math1_quad_entropy_scale": 0
}

View File

@@ -1,5 +1,5 @@
{
"order": [6, 2, 3, 1, 0],
"order": [2, 3, 1, 0],
"temperature": 1,
"max_length": 150,
"min_length": 1,
@@ -15,6 +15,9 @@
"return_full_text": false,
"prefix": "vanilla",
"phrase_rep_pen": "very_aggressive",
"cfg_scale": 1.3,
"max_context": 7800
"max_context": 7800,
"min_p": 0,
"math1_temp": 1,
"math1_quad": 0,
"math1_quad_entropy_scale": 0
}

View File

@@ -15,7 +15,10 @@
"use_cache": false,
"return_full_text": false,
"prefix": "vanilla",
"cfg_scale": 1,
"phrase_rep_pen": "aggressive",
"max_context": 7800
"max_context": 7800,
"min_p": 0,
"math1_temp": 1,
"math1_quad": 0,
"math1_quad_entropy_scale": 0
}

View File

@@ -1,5 +1,5 @@
{
"order": [8, 6, 5, 0, 3],
"order": [8, 5, 0, 3],
"temperature": 0.9,
"max_length": 150,
"min_length": 1,
@@ -15,6 +15,9 @@
"return_full_text": false,
"prefix": "vanilla",
"phrase_rep_pen": "off",
"cfg_scale": 1.48,
"max_context": 7800
"max_context": 7800,
"min_p": 0,
"math1_temp": 1,
"math1_quad": 0,
"math1_quad_entropy_scale": 0
}

View File

@@ -15,7 +15,10 @@
"use_cache": false,
"return_full_text": false,
"prefix": "vanilla",
"cfg_scale": 1,
"phrase_rep_pen": "very_light",
"max_context": 7800
"max_context": 7800,
"min_p": 0,
"math1_temp": 1,
"math1_quad": 0,
"math1_quad_entropy_scale": 0
}

View File

@@ -0,0 +1,31 @@
{
"max_context": 8000,
"temperature": 1.37,
"max_length": 150,
"min_length": 1,
"top_k": 0,
"top_p": 1,
"top_a": 0.1,
"typical_p": 0.875,
"tail_free_sampling": 0.87,
"repetition_penalty": 3.25,
"repetition_penalty_range": 6000,
"repetition_penalty_slope": 3.25,
"repetition_penalty_frequency": 0,
"repetition_penalty_presence": 0,
"phrase_rep_pen": "off",
"mirostat_lr": 0.2,
"mirostat_tau": 4,
"math1_temp": 0.9,
"math1_quad": 0.07,
"math1_quad_entropy_scale": -0.05,
"min_p": 0.035,
"order": [
0,
5,
9,
10,
8,
4
]
}

View File

@@ -0,0 +1,27 @@
{
"max_context": 8000,
"temperature": 1,
"max_length": 150,
"min_length": 1,
"top_k": 0,
"top_p": 0.995,
"top_a": 1,
"typical_p": 1,
"tail_free_sampling": 0.87,
"repetition_penalty": 1.5,
"repetition_penalty_range": 2240,
"repetition_penalty_slope": 1,
"repetition_penalty_frequency": 0,
"repetition_penalty_presence": 0,
"phrase_rep_pen": "light",
"mirostat_lr": 1,
"mirostat_tau": 0,
"math1_temp": 0.3,
"math1_quad": 0.19,
"math1_quad_entropy_scale": 0,
"min_p": 0,
"order": [
9,
2
]
}

View File

@@ -0,0 +1,27 @@
{
"max_context": 8000,
"temperature": 1,
"max_length": 150,
"min_length": 1,
"top_k": 50,
"top_p": 0.85,
"top_a": 1,
"typical_p": 1,
"tail_free_sampling": 0.895,
"repetition_penalty": 1.63,
"repetition_penalty_range": 1024,
"repetition_penalty_slope": 3.33,
"repetition_penalty_frequency": 0.0035,
"repetition_penalty_presence": 0,
"phrase_rep_pen": "medium",
"mirostat_lr": 1,
"mirostat_tau": 0,
"math1_temp": 0.3,
"math1_quad": 0.0645,
"math1_quad_entropy_scale": 0.05,
"min_p": 0.05,
"order": [
9,
10
]
}

View File

@@ -0,0 +1,27 @@
{
"max_context": 8000,
"temperature": 1,
"max_length": 150,
"min_length": 1,
"top_k": 300,
"top_p": 0.98,
"top_a": 0.004,
"typical_p": 0.96,
"tail_free_sampling": 0.96,
"repetition_penalty": 1.48,
"repetition_penalty_range": 2240,
"repetition_penalty_slope": 0.64,
"repetition_penalty_frequency": 0,
"repetition_penalty_presence": 0,
"phrase_rep_pen": "medium",
"mirostat_lr": 1,
"mirostat_tau": 0,
"math1_temp": -0.0485,
"math1_quad": 0.145,
"math1_quad_entropy_scale": 0,
"min_p": 0.02,
"order": [
9,
10
]
}

View File

@@ -0,0 +1,27 @@
{
"max_context": 8000,
"temperature": 1,
"max_length": 150,
"min_length": 1,
"top_k": 0,
"top_p": 0.99,
"top_a": 1,
"typical_p": 1,
"tail_free_sampling": 0.99,
"repetition_penalty": 1,
"repetition_penalty_range": 64,
"repetition_penalty_slope": 1,
"repetition_penalty_frequency": 0.75,
"repetition_penalty_presence": 1.5,
"phrase_rep_pen": "medium",
"mirostat_lr": 1,
"mirostat_tau": 1,
"math1_temp": -0.4,
"math1_quad": 0.6,
"math1_quad_entropy_scale": -0.1,
"min_p": 0.08,
"order": [
9,
2
]
}

View File

@@ -16,7 +16,10 @@
"use_cache": false,
"return_full_text": false,
"prefix": "vanilla",
"cfg_scale": 1,
"phrase_rep_pen": "very_light",
"max_context": 7800
"max_context": 7800,
"min_p": 0,
"math1_temp": 1,
"math1_quad": 0,
"math1_quad_entropy_scale": 0
}

View File

@@ -14,7 +14,10 @@
"use_cache": false,
"return_full_text": false,
"prefix": "vanilla",
"cfg_scale": 1,
"phrase_rep_pen": "off",
"max_context": 7800
"max_context": 7800,
"min_p": 0,
"math1_temp": 1,
"math1_quad": 0,
"math1_quad_entropy_scale": 0
}

View File

@@ -1,5 +1,5 @@
{
"order": [6, 0, 8, 5, 3],
"order": [0, 8, 5, 3],
"temperature": 1.5,
"max_length": 150,
"min_length": 1,
@@ -15,6 +15,9 @@
"return_full_text": false,
"prefix": "vanilla",
"phrase_rep_pen": "very_aggressive",
"cfg_scale": 1.4,
"max_context": 7800
"max_context": 7800,
"min_p": 0,
"math1_temp": 1,
"math1_quad": 0,
"math1_quad_entropy_scale": 0
}

View File

@@ -16,7 +16,10 @@
"use_cache": false,
"return_full_text": false,
"prefix": "vanilla",
"cfg_scale": 1,
"phrase_rep_pen": "very_light",
"max_context": 7800
"max_context": 7800,
"min_p": 0,
"math1_temp": 1,
"math1_quad": 0,
"math1_quad_entropy_scale": 0
}

View File

@@ -16,7 +16,10 @@
"use_cache": false,
"return_full_text": false,
"prefix": "vanilla",
"cfg_scale": 1,
"phrase_rep_pen": "very_light",
"max_context": 7800
"max_context": 7800,
"min_p": 0,
"math1_temp": 1,
"math1_quad": 0,
"math1_quad_entropy_scale": 0
}

View File

@@ -1,5 +1,5 @@
{
"order": [6, 0, 4, 1, 2, 5, 3],
"order": [0, 4, 1, 2, 5, 3],
"temperature": 1.31,
"max_length": 150,
"min_length": 1,
@@ -17,6 +17,9 @@
"return_full_text": false,
"prefix": "vanilla",
"phrase_rep_pen": "medium",
"cfg_scale": 1.35,
"max_context": 7800
"max_context": 7800,
"min_p": 0,
"math1_temp": 1,
"math1_quad": 0,
"math1_quad_entropy_scale": 0
}

Some files were not shown because too many files have changed in this diff Show More