SillyTavern 1.12.5
Breaking changes
This release includes several breaking changes to STscript. Please follow the STscript section below to update your scripts.
Backends
- OpenAI: added
chatgpt-4o-latest
to the list of models. - Block Entropy: added as a Chat Completion source.
- TogetherAI: now supports
min_p
,presence_penalty
andfrequency_penalty
sampling parameters. - Ollama: now supports
min_p
sampling parameter.keep_alive
setting can be configured inconfig.yaml
. - Claude: added a
config.yaml
option to enable experimental system prompt caching. - Perplexity: added Llama 3.1 models to the list.
- Google MakerSuite: renamed to Google AI Studio.
- Featherless: model list now shows the maximum context size and automatically sets the context size for the selected model.
- Added a tokenizer for Gemma and Gemini models.
Improvements
- Macros in first messages are now synchronized between the display and the prompt.
- Server: the host protocol can now be configured in
config.yaml
. Choose between IPv4 (default), IPv6, or both. - World Info: disabling an entry is now possible without changing its constant status.
- World Info: added an option to limit max recursion depth. Conflicts with min activations.
- Text Completion: Mirostat settings block is now not displayed on sources where it is not supported.
- Text Completion: names as stopping strings can now be toggled in Advanced Formatting under Context Settings.
- Chat Completion: group nudge won't be inserted when impersonating in groups.
- Tags: backup imports can now either overwrite or skip existing tags.
- Tags: added import options to bulk tag editing menu.
- Added a configuration option to auto-select the input field contents in popups.
- Added a configuration option to enable quick impersonation button.
- Model cache for transformers.js has been moved under the data root directory.
Extensions
-
Image Captioning: raised or removed (if applicable) a token limit for multimodal captioning.
-
Character Gallery: images are now sorted by ascending date.
-
TTS: added an "OpenAI-compatible" endpoint source.
-
Summarization: added an experimental WebLLM extension summarization source.
-
Character Expressions: "LLM" classification source now uses raw prompt generation method.
-
Image Generation:
- Added Block Entropy and Hugging Face Inference API as image generation sources.
- Added image swipes for image rerolls and cycling through generated images.
- Added a separate stop button to cancel image generation (located in the wand menu).
-
Quick Reply:
- QR panel popup button can now be hidden.
- Quick Reply buttons can now use an icon instead of, or in addition to, their label text.
- Quick Reply Sets can now be assigned colors to highlight the buttons.
- Added a basic debugger to the Quick Reply editor.
- Added UI shortcuts for copying or moving quick replies between sets.
- Added an option to auto-execute QR on new chat creation.
STscript
The piped value from a parent closure will no longer be automatically injected into the first command of a child closure. You can still explicitly reference the parent's piped value with {{pipe}}, but if you leave the unnamed argument of the first command inside a closure blank, the value will not be automatically injected.
Messages added by Image Generation and Image Captioning extensions now emit events that can trigger QR auto-execution.
- Added support for block comments.
/run
command: can now execute closures directly, in addition to QRs and closure variables./break
command: added to break out of a loop (/while
or/times
) or a closure early./addswipe
command: addedswitch
parameter to display a new swipe immediately./api-url
command: added to get/set server URL for compatible APIs./tokenizer
command: added to choose a preferred tokenizer./gen
command: now supports empty prompts./api
and/summarize
now supportquiet
parameter to hide toast notifications.
STscript documentation: https://docs.sillytavern.app/usage/st-script/
Bug fixes
- Fixed Google Translate API response decoding. No more ��.
- Fixed being unable to toggle DRY sampling block with sampler select.
- Fixed rendering of underscore italics Markdown in code blocks.
- Fixed expanded custom CSS editor not applying changes to the styles.
- Fixed OpenRouter providers selection not being loaded on app start.
- Fixed sluggish performance of WI editor when editing large books.
- Fixed lazy loading of chat when all visible messages were deleted.
- Fixed using legacy API paths for sources where it was not supported.
- Fixed automatic TTS narration of messages hidden from prompts.
- Fixed a placeholder TTS text causing ghost narration on mobile.
- Fixed vector storage applying summarization to files and WI entries.
- Fixed entity name prefix trimming even if name display is preferred.
- Fixed macros not being replaced in DRY penalty sequence breakers.
Community updates
- Update zh-cn.json by @steve02081504 in #2573
- Fix: Properly handle text responses when character name is not provided in sendas cmd by @joenunezb in #2577
- /theme allows returning current theme & fix /theme and /bg doc by @Wolfsblvt in #2572
- Improve building CONNECT_API_MAP by @Wolfsblvt in #2578
- Fix colors resetting on Tag Management dragging by @Wolfsblvt in #2579
- Staging by @Cohee1207 in #2580
- fix typo by @Kas1o in #2589
- Add eventSource for generate_data, export functions for streaming/generation request by @splitclover in #2590
- Update 'zh-cn' translation by @steve02081504 in #2583
- Fix "show more messages" on empty chat by @Wolfsblvt in #2587
- Improve Tag Backup Restore functionality by @Wolfsblvt in #2582
- Parser followup 2 by @LenAnderson in #2415
- Update MakerSuite temperature caps by @Succubyss in #2592
- Gemini-related updates; adds gemini-1.5-pro-exp-0801 by @Succubyss in #2600
- Gemini max context size corrections, option selector update by @Succubyss in #2602
- Update
zh-cn.json
by @steve02081504 in #2608 - WI blackbox begone (Export, document and refactor a bit of the WI API) by @Wolfsblvt in #2601
- Image generation stop handling by @Cohee1207 in #2594
- Fix incorrect JanitorAI/JannyAI import due to incorrect HTTP header by @ayancey in #2611
- Added quick Regenerate and Impersonate buttons by @NearEDGE in #2598
- fix: LLM Classifier Defaulting to Last Spoken Character's Expression For All Characters in Group Chats by @Bronya-Rand in #2605
- Major WI performance improvements on UI usage by @Wolfsblvt in #2615
- Update zh-cn.json by @steve02081504 in #2618
- Add GPT-4o checkpoint model (support Structured Output) by @Wolfsblvt in #2623
- Improve
/addswipe
and/delswipe
slightly by @Wolfsblvt in #2629 - Add events for chat completion import/export by @splitclover in #2634
- Group members as stopping strings only added if generating for a specific member or impersonating by @Wolfsblvt in #2636
- Split WI Entry 'disable' into separate toggle by @RossAscends in #2635
- Adding Block Entropy API endpoints for chat, image, and video generation by @edk208 in #2640
- OpenAI Compatible API TTS Provider by @ayancey in #2654
- Summarize with WebLLM extension by @Cohee1207 in #2651
- Quick Replies: Add auto-execute on new chat by @Cohee1207 in #2656
- Bump axios from 1.6.1 to 1.7.4 by @dependabot in #2659
- Bump axios from 1.7.2 to 1.7.4 in /tests by @dependabot in #2660
- Image Generation: Add swipes for generated images by @Cohee1207 in #2655
- support for Ipv6 by @BPplays in #2593
- Move transformers.js model cache under the data root by @Cohee1207 in #2667
- Don't trim names in message prefixes if allowed with settings by @Cohee1207 in #2669
- enable vision for chatgpt-4o-latest by @cuteanon in #2673
- Add bulk tag import by @d-ber in #2663
/api-url
slash command to get/set the API server url for text gen and OpenAI Custom by @Wolfsblvt in #2675- Open popups should block all default hotkeys by @Wolfsblvt in #2677
- Enable auto-select of input field on popups + Add "auto-select" utility class by @Wolfsblvt in #2550
- /messages callback refactored to async by @Succubyss in #2682
- Don't replace underscore italics inside of code blocks by @Cohee1207 in #2679
- Add slash command to set tokenizer by @eugencowie in #2683
- Tag import fixed, again. (accepts char avatar key) by @Wolfsblvt in #2685
- Wait for settings before reloading after toggling extensions by @Cohee1207 in #2686
- Improve WI Character Filter description by @Wolfsblvt in #2687
- Hugging Face Inference API Image Generation by @ayancey in #2688
- Suspend macros in first messages by @Cohee1207 in #2674
- Add quiet flags to /api and /summarize by @Cohee1207 in #2691
- QR: Add toggle to hide popout button by @Cohee1207 in #2692
- Implements max recursion depth for lorebooks by @honey-tree in #2698
- Cull the usage of MAG in streaming by @Cohee1207 in #2700
- Staging by @Cohee1207 in #2705
New Contributors
- @Kas1o made their first contribution in #2589
- @ayancey made their first contribution in #2611
- @NearEDGE made their first contribution in #2598
- @edk208 made their first contribution in #2640
- @dependabot made their first contribution in #2659
- @BPplays made their first contribution in #2593
- @cuteanon made their first contribution in #2673
- @d-ber made their first contribution in #2663
- @eugencowie made their first contribution in #2683
- @honey-tree made their first contribution in #2698
Full Changelog: 1.12.4...1.12.5