Compare commits

..

1135 Commits
1.6.0 ... 1.9.0

Author SHA1 Message Date
Cohee
06912dba0a Merge pull request #747 from SillyTavern/dev
Dev
2023-07-20 14:25:38 +03:00
Cohee
429fe85e16 Merge main 2023-07-20 14:24:58 +03:00
Cohee
5807263681 Remove Poe support
It's Poever
2023-07-20 13:26:12 +03:00
Cohee
ca3f8daa9d Merge pull request #745 from Marandi269/patch-1 2023-07-20 09:37:00 +03:00
Marandi269
8d15b98391 Update server.js
bug?
2023-07-20 10:05:31 +08:00
Cohee
ce64747705 Lint server.js 2023-07-20 02:08:39 +03:00
Cohee
f7237342df I give up (Partial Poe fix) 2023-07-20 02:08:25 +03:00
Cohee
b66e3b3f25 Merge branch 'dev' of https://github.com/SillyLossy/TavernAI into dev 2023-07-19 23:13:17 +03:00
Cohee
853ab87e05 Poe fix 2023-07-19 23:13:11 +03:00
RossAscends
5e60202159 Merge branch 'main' of https://github.com/Cohee1207/SillyTavern 2023-07-20 01:53:58 +09:00
RossAscends
690dab49a0 update gitignore for poe raw logs 2023-07-20 01:53:56 +09:00
RossAscends
76bac19fb5 Merge branch 'dev' of https://github.com/Cohee1207/SillyTavern into dev 2023-07-20 01:52:34 +09:00
RossAscends
671345efae update gitignore for new poe raw logs 2023-07-20 01:52:32 +09:00
Cohee
ed9b46c980 Merge branch 'dev' of https://github.com/SillyLossy/TavernAI into dev 2023-07-19 19:33:27 +03:00
Cohee
4c976e58e2 Better styles for stats buttons 2023-07-19 19:33:18 +03:00
RossAscends
7e127e9b68 Merge branch 'dev' of https://github.com/Cohee1207/SillyTavern into dev 2023-07-20 01:12:32 +09:00
RossAscends
3712e2957b add randomized agents to poe (not a fix) 2023-07-20 01:12:29 +09:00
Cohee
f6e1c48ac9 Merge branch 'main' into dev 2023-07-19 18:41:48 +03:00
Cohee
c6a6a8352d Fix textarea sanitation. Fix extensions promise never resolving on 404 2023-07-19 18:40:28 +03:00
Cohee
4c3aafa3a8 Add support for API keys to extras colab 2023-07-19 18:27:14 +03:00
Cohee
7cf02beaa6 Merge pull request #615 from BlipRanger/feature/stats
Feature/stats
2023-07-19 17:40:03 +03:00
BlipRanger
284fb68478 Fix first chat date injestion (I'm pretty sure). 2023-07-19 09:51:22 -04:00
RossAscends
dfab4b8ea2 attempted slow cure for poe 2023-07-19 22:20:01 +09:00
RossAscends
f63a69dd41 Merge branch 'dev' of https://github.com/Cohee1207/SillyTavern into dev 2023-07-19 22:11:37 +09:00
RossAscends
13f6cf3175 possible slow cure for poe 2023-07-19 22:11:31 +09:00
Cohee
d5af1ec82e Merge main 2023-07-19 16:09:06 +03:00
RossAscends
bd7c0463f3 WIP half-fix for group VN mode + movingUI 2023-07-19 21:26:28 +09:00
Cohee
e3e2b73b99 Bump package version 2023-07-19 11:53:12 +03:00
Cohee
f5b4c6e10c Merge pull request #736 from bdashore3/dev 2023-07-19 09:35:04 +03:00
RossAscends
fbbb7cc549 fix poe connectivity get >> post 2023-07-19 14:25:59 +09:00
RossAscends
2305a536de Merge pull request #738 from BlueprintCoding/patch-2
Update poe-client.js
2023-07-19 14:23:37 +09:00
Blueprint Coding
f339f28b05 Update poe-client.js
Fixed poe by changing Get request to a Post request
2023-07-18 22:33:38 -06:00
kingbri
92f012fb6a Greetings: Fix swipe on chat creation
Alternate greetings would cause a console error since chat extras
didn't exist. To patch this, add an empty array if either value is
nullish.

Signed-off-by: kingbri <bdashore3@proton.me>
2023-07-18 22:44:52 -04:00
kingbri
8de791a9ee Regex: Fix greeting message append
Greeting messages weren't being regexed on new chat creation. Fix
this by adding more regex hooks when creating a chat.

Signed-off-by: kingbri <bdashore3@proton.me>
2023-07-18 22:40:07 -04:00
BlipRanger
2f73506e25 Prettier again. 2023-07-18 21:48:12 -04:00
BlipRanger
656888f70a Prettier, comments 2023-07-18 21:47:27 -04:00
BlipRanger
1886334516 Moved css, fixed convo age 2023-07-18 19:15:41 -04:00
BlipRanger
d547f2650a Count swipes and msgs seperately. 2023-07-18 18:51:11 -04:00
BlipRanger
f83f71097a Add collection of chat age 2023-07-18 18:48:44 -04:00
BlipRanger
c1b2a084d5 Rename, change count method, and forgot to count user messages lol 2023-07-18 16:27:31 -04:00
Cohee
96c668296a Don't purge metadata in clearChat 2023-07-18 22:31:39 +03:00
Cohee
fa6803f2de Merge pull request #735 from XXpE3/dev 2023-07-18 21:11:01 +03:00
XXpE3
7a0f5a0111 Repaired and polished a large amount of Chinese translated text 2023-07-19 01:06:59 +08:00
Cohee
9e21534fae #629 {{roll}} replacement macros 2023-07-18 19:51:20 +03:00
XXpE3
af5f7199de Repolished some Chinese translations. 2023-07-19 00:33:42 +08:00
Cohee
623675d940 #733 Reload selected chat instead of inserting the first one in array 2023-07-18 18:28:51 +03:00
Cohee
547b275768 #728 Refine mode for captioning plugin 2023-07-18 18:22:51 +03:00
BlipRanger
28d22aa8c1 Merge branch 'dev' of https://github.com/BlipRanger/SillyTavern into feature/stats 2023-07-18 09:42:11 -04:00
XXpE3
766349785d Initial simple translation 2023-07-18 19:32:19 +08:00
Cohee
5209485f20 #715 Instruct continue fix 2023-07-18 13:08:01 +03:00
Cohee
f327f4abbe #715 Fix double insertion of bias instruct mode 2023-07-18 12:27:08 +03:00
Cohee
b003c18abd Merge pull request #732 from bdashore3/dev 2023-07-18 09:27:53 +03:00
Cohee
7e310323b6 Merge pull request #730 from breathingmanually/fix-firstmes-edited-params 2023-07-18 09:25:13 +03:00
BlipRanger
5090fe76a9 Remove server logging 2023-07-18 01:58:29 -04:00
BlipRanger
818416b1f2 Make charstats global within stat helper. 2023-07-18 01:56:55 -04:00
BlipRanger
31a159dee0 Cleanup old stuff 2023-07-18 01:42:16 -04:00
BlipRanger
c501734d25 Add stats to gitignore 2023-07-18 01:38:50 -04:00
BlipRanger
baf0fd7e41 Remove only ArgoAscends function ever, prettier :( 2023-07-18 01:37:46 -04:00
BlipRanger
b7c5ea9152 Fix continue logic, move update logic 2023-07-18 01:24:11 -04:00
kingbri
d61eba4cb4 Regex: Add script reordering
The engine runs with a foreach, so the scripts run sequentially.
Ideally, scripts should be one-liners, but if multiple scripts
run in a chain, allow the user to reorder them.

Signed-off-by: kingbri <bdashore3@proton.me>
2023-07-18 01:15:06 -04:00
kingbri
eb90162579 Regex: Fix overlay for multiple occurrences
If there are multiple occurrences of a prefix or suffix within the
input string, remove them when overlaying.

Signed-off-by: kingbri <bdashore3@proton.me>
2023-07-18 01:15:06 -04:00
BlipRanger
b058f40ee6 Working state stat UI 2023-07-18 00:36:28 -04:00
breathingmanually
f8e2730fd6 Fix parameters not substituted when editing first message 2023-07-18 00:57:17 -03:00
BlipRanger
b1f1fa8a26 Change the way we count non-user msgs 2023-07-17 19:32:21 -04:00
XXpE3
751894976e Added more Chinese translations 2023-07-18 00:58:37 +08:00
Cohee
3af4598fc9 Renamable backgrounds 2023-07-17 14:54:40 +03:00
XXpE3
ff92f0dbbf Increase some Chinese translation 2023-07-17 18:37:10 +08:00
XXpE3
41cf0c023f Revised some existing Chinese translations. 2023-07-17 18:22:32 +08:00
Cohee
2e2ad6589e Merge branch 'dev' of https://github.com/SillyLossy/TavernAI into dev 2023-07-17 11:11:36 +03:00
Cohee
393d7c496d Don't lose original file name when uploading backgrounds.
+bonus lint fix for importing JSONs
2023-07-17 11:11:26 +03:00
RossAscends
d50c44f747 testing out no borders on zoomed avatars 2023-07-17 17:05:45 +09:00
RossAscends
4324bc239b Merge branch 'dev' of https://github.com/Cohee1207/SillyTavern into dev 2023-07-17 16:51:44 +09:00
RossAscends
0c130ecc53 add untranslated items to zh-cn/ja-jp objects 2023-07-17 16:51:42 +09:00
Cohee
28d4dfd718 Merge pull request #725 from bdashore3/dev 2023-07-17 09:10:53 +03:00
kingbri
0280bfa1bb Script: Don't save character on chat creation
There's no need to save a character when a new chat is created.
The main reason for this commit is that after creating a new chat
with metadata, it immediately gets cleared after a few seconds.
This may be a race condition, but there's also no need for this
function call in the first place.

Fixes: Author's note not injecting on first message when new
chat is spawned.

Signed-off-by: kingbri <bdashore3@proton.me>
2023-07-17 00:21:46 -04:00
Cohee
e58dbec3de Slash command to delete messages by name 2023-07-16 22:43:54 +03:00
Cohee
f77df227e7 Clearer message for OpenAI errors 2023-07-16 22:08:29 +03:00
BlipRanger
7b2cb3e042 Getter/setters, get/update, WIP frontend 2023-07-16 13:03:37 -04:00
RossAscends
732cea5cf1 /delchat - to delete the current chat 2023-07-17 00:49:33 +09:00
RossAscends
2bd64475da a few more movingUI preset handling fixes 2023-07-16 20:20:50 +09:00
RossAscends
c44cfabbcd gitignore skill issue 2023-07-16 19:49:22 +09:00
RossAscends
2ae2a953fd gitignore for movingui folder 2023-07-16 19:47:43 +09:00
RossAscends
a67d831433 Merge branch 'dev' of https://github.com/Cohee1207/SillyTavern into dev 2023-07-16 19:47:14 +09:00
RossAscends
651774fe5e save/load movingUI Presets 2023-07-16 19:47:11 +09:00
Cohee
6018ea7288 Merge pull request #719 from YellowRoseCx/patch-1
Add timezone replacement tags
2023-07-16 12:50:32 +03:00
YellowRoseCx
0a99a0bb41 Add timezone replacement tags
Allows setting of various timezones for the {{time}} tag by including the UTC offset with it like {{time_UTC-4}} or {{time_UTC+3}}
2023-07-16 00:09:43 -05:00
BlipRanger
760a84d5ac Added one-shot stats injestion 2023-07-16 00:30:06 -04:00
BlipRanger
3adcfecb5c Kitchen sink state, will need to make a ton of changes 2023-07-15 16:04:26 -04:00
Cohee
7bfaa97ac7 Merge pull request #716 from dumpsters/dev
fix tryParseStreamingError
2023-07-15 17:17:05 +03:00
dumpsters
fa988f08fe fix tryParseStreamingError
response.statusText was never available
2023-07-14 23:03:11 -03:00
Cohee
36b8aa0b4d Message texts are not array 2023-07-15 00:04:07 +03:00
Cohee
44b235e368 Bump package version 2023-07-14 23:48:41 +03:00
Cohee
5d7ab41dc9 Regenerate package-lock 2023-07-14 23:47:38 +03:00
Cohee
5b98f2f329 #703 Don't use prompt bias on impersonation 2023-07-14 23:37:10 +03:00
Cohee
46bf29e86d #713 Random sorting order 2023-07-14 23:22:05 +03:00
Cohee
40dd845e51 Merge branch 'dev' of https://github.com/SillyLossy/TavernAI into dev 2023-07-14 23:11:53 +03:00
Cohee
0f3908216a #711 Fix excluded tag hiding the character block 2023-07-14 23:11:44 +03:00
Cohee
02966ff48f Merge pull request #714 from bdashore3/dev
World Info bugfix
2023-07-14 22:52:55 +03:00
Cohee
37de77b20d Fix OpenAI itemizer for characters with example dialogues 2023-07-14 22:52:17 +03:00
kingbri
1a8d8db102 World Info: Fix selective with legacy entries
Legacy entries do not have the selectiveOrder property within the
JSON object. Fix this by adding a check in secondary key mapping
to default to AND.

Signed-off-by: kingbri <bdashore3@proton.me>
2023-07-14 15:50:58 -04:00
Cohee
f931932d31 Add slider for chat width #712 2023-07-14 22:37:33 +03:00
Cohee
8f96a74d1e #583 Add mirostat generation options for oobabooga + preset 2023-07-14 19:51:05 +03:00
Cohee
2ac77b21ae Merge pull request #710 from majick/poke-an-back-a-bit
Make AN not uber-z.  Make options uber-z.
2023-07-14 18:11:53 +03:00
Cohee
eb4adb5a6c Bouncy drawers fix 2023-07-14 18:10:59 +03:00
Cohee
76359283a2 ✂️ ➡️ 🗑️ 2023-07-14 17:48:19 +03:00
majick
6dc1a86021 Make AN not uber-z. Make options uber-z.
Hover interaction like the hamburger should probably have really
high Z.  AN should not have higher Z than the panel that's supposed to
own the left.
2023-07-14 07:47:48 -07:00
Cohee
d5c816ed2b Unsqueeze past chats on narrow phoney screens 2023-07-14 17:21:36 +03:00
Cohee
f5a25cad5b Clear chat metadata on clearing chat 2023-07-14 17:06:01 +03:00
Cohee
92fbba83dc Select proper tokenizer for OpenRouter 2023-07-14 16:30:40 +03:00
Cohee
07c78391e1 #708 Convert author's note to built-in function instead of extension 2023-07-14 16:10:39 +03:00
Cohee
8987534403 #709 Add extra type safety for token counting 2023-07-14 15:33:55 +03:00
Cohee
5812e34dcb Fix new chats with v2 imports 2023-07-14 13:12:46 +03:00
RossAscends
6f33cc6fea Merge pull request #706 from BlipRanger/patch-4
Quick patch for overzealous checking
2023-07-14 14:14:14 +09:00
BlipRanger
11982c30d3 Quick patch for overzealous checking 2023-07-14 01:12:13 -04:00
BlipRanger
3210dd29d3 Merge branch 'dev' of https://github.com/BlipRanger/SillyTavern into feature/stats 2023-07-13 23:34:46 -04:00
BlipRanger
8689703068 Fix bad merge 2023-07-13 23:30:59 -04:00
BlipRanger
9951837f1d Merge branch 'dev' of https://github.com/BlipRanger/SillyTavern into feature/stats 2023-07-13 23:29:36 -04:00
Cohee
5db9a7b5ba Migrate grid view to pure CSS 2023-07-13 23:00:30 +03:00
RossAscends
4bf8e2c49f fix charlist state on character deletion 2023-07-14 04:15:31 +09:00
Cohee
057ae5ce14 Merge branch 'dev' of https://github.com/SillyLossy/TavernAI into dev 2023-07-13 20:00:21 +03:00
Cohee
22108c5c9f Fix /cut command 2023-07-13 20:00:17 +03:00
RossAscends
101acd29da Merge branch 'dev' of https://github.com/Cohee1207/SillyTavern into dev 2023-07-14 01:46:26 +09:00
RossAscends
95700dbe3e desktop safari chat resize handhold. mind the gap 2023-07-14 01:46:23 +09:00
Cohee
02c4c7d1d0 Remove unused npm package 2023-07-13 19:40:59 +03:00
Cohee
94af882530 CSS grid view improvements 2023-07-13 19:35:00 +03:00
Cohee
933729d914 Merge branch 'dev' of https://github.com/SillyLossy/TavernAI into dev 2023-07-13 19:26:05 +03:00
Cohee
da43c1c87e #699 Delete character without losing chats 2023-07-13 19:26:01 +03:00
RossAscends
298952e591 character list grid display toggle 2023-07-14 01:16:32 +09:00
Cohee
51c6137f53 Update package lock 2023-07-13 16:58:53 +03:00
Cohee
ae7ad6dbf0 Merge branch 'feature/extensions' of https://github.com/BlipRanger/SillyTavern into dev 2023-07-13 16:49:52 +03:00
RossAscends
edfafe4e7c scroll for member list popout 2023-07-13 22:38:56 +09:00
RossAscends
184e662ab6 hide group member popout from mobile 2023-07-13 22:36:38 +09:00
RossAscends
18272be918 floating current group member list 2023-07-13 22:16:57 +09:00
Cohee
2c4efe5509 Enable logit bias for OpenRouter 2023-07-13 14:16:11 +03:00
Cohee
e08889a348 Fix sampling order not being applied when selecting a Kobold preset. 2023-07-13 10:50:42 +03:00
RossAscends
ff8c9546ad add /impersonate (aka /imp) 2023-07-13 16:12:49 +09:00
RossAscends
be91af30b8 Merge branch 'dev' of https://github.com/Cohee1207/SillyTavern into dev 2023-07-13 15:45:14 +09:00
RossAscends
c91d32d273 fix movingUI 2023-07-13 15:45:12 +09:00
BlipRanger
ee6bfbf4cc Add simple-get to packages. 2023-07-13 01:30:37 -04:00
BlipRanger
2b8db6350e Fixed a stupid delete bug, reload on delete. 2023-07-13 01:12:57 -04:00
BlipRanger
35336b1646 Delete method almost complete 2023-07-13 00:59:16 -04:00
BlipRanger
07b42e0fb4 Documentation update 2023-07-13 00:03:23 -04:00
BlipRanger
eccae1056f Add clickable names to go to repos 2023-07-12 23:54:17 -04:00
BlipRanger
cc7c42232e Fetch first, then check status 2023-07-12 22:37:42 -04:00
BlipRanger
4fb65a9235 Code refactor to make this more readable 2023-07-12 22:37:24 -04:00
BlipRanger
75080394ac Style for greyed out checkboxes 2023-07-12 22:26:23 -04:00
BlipRanger
396aaaf6e9 Add update button and check for external extenisons 2023-07-12 22:26:01 -04:00
Cohee
cb37fbd827 Update context size hint 2023-07-12 23:48:15 +03:00
RossAscends
f513c54691 fix bg menu for <1000px screens 2023-07-13 05:05:00 +09:00
RossAscends
abdf1ac71e Merge branch 'dev' of https://github.com/Cohee1207/SillyTavern into dev 2023-07-13 03:54:26 +09:00
RossAscends
67195071c3 chat width convert to flat 50vw 2023-07-13 03:54:23 +09:00
Cohee
26b6d48a3d OpenRouter website model use option 2023-07-12 20:54:11 +03:00
Cohee
f9630acaf4 Allow to change supported OpenRouter parameters 2023-07-12 19:19:53 +03:00
Cohee
a20eff92f0 Format styles 2023-07-12 17:25:59 +03:00
Cohee
f1c5f26b86 Merge branch 'main' into dev 2023-07-12 17:25:30 +03:00
Cohee
dc788f6571 Update localization files 2023-07-12 17:19:34 +03:00
Cohee
abe57f7e9a Merge pull request #687 from BlipRanger/feature/backend
Backend endpoint for single attribute editing
2023-07-12 17:07:58 +03:00
Cohee
cb294983e7 Merge pull request #701 from 50h100a/api-tokenize
Added tokenizer option for Ooba-like APIs
2023-07-12 11:28:50 +03:00
Cohee
9bbf23e56f Merge pull request #695 from ThisIsPIRI/continue
Fix continue formatting
2023-07-12 11:28:15 +03:00
Cohee
4aeda77648 Merge pull request #697 from bdashore3/dev
Regex: Switch slash command hooks
2023-07-12 11:26:53 +03:00
50h100a
6b0e13e064 dammit 2023-07-12 04:26:37 -04:00
50h100a
49ae2cbad6 New tokenizer option.
If you're running an ooba-like api, you can use the token-count endpoint.
Exact and fast!
2023-07-12 04:18:55 -04:00
BlipRanger
27e3485127 Still working, added update and version get functions 2023-07-12 01:13:36 -04:00
BlipRanger
b41d0a08c7 Replace lines that you definitely already had... 2023-07-11 19:24:13 -04:00
BlipRanger
de3b39f825 Skip over if folder is missing 2023-07-11 19:14:14 -04:00
BlipRanger
2454963129 Cleanup functions 2023-07-11 19:09:06 -04:00
BlipRanger
f67013f7ed Ignore third party extensions 2023-07-11 18:28:18 -04:00
BlipRanger
53d45356a4 External extension import UI + backend 2023-07-11 18:24:04 -04:00
ThisIsPIRI
dedb913b67 Fix continue formatting 2023-07-12 06:57:05 +09:00
Cohee
4f11b38110 Add applyLocale() global function 2023-07-12 00:32:28 +03:00
Cohee
4a3e95d79f Remove System prefix from Claude prompts 2023-07-12 00:26:45 +03:00
Cohee
393fff6207 Fix double insertion of WI with Chat Completions 2023-07-12 00:26:29 +03:00
Cohee
c9cc8fcf18 Calculation fixes to prompt itemizer 2023-07-12 00:05:34 +03:00
Cohee
6b1965fcf4 #693 Format story string after WI insertion for instruct mode 2023-07-11 23:22:12 +03:00
BlipRanger
bb6ff352b3 External extension support start 2023-07-11 16:10:42 -04:00
Cohee
5660280c51 Uncap max Claude 2 context size 2023-07-11 22:28:33 +03:00
kingbri
bd7d4beab5 Regex: Add slash command input hook
Slash command output for sys and sendas commands were being formatted,
but add the ability for user placement to also apply to slash command
invocations.

Some slash commands will require an output hook, so add exclusions
inside the code itself.

Signed-off-by: kingbri <bdashore3@proton.me>
2023-07-11 15:28:30 -04:00
BlipRanger
33918d3e05 Match with safety improvements from other branch. 2023-07-11 15:03:02 -04:00
Cohee
040380e0fb Merge pull request #692 from bdashore3/dev
Fixes more regex bugs
2023-07-11 21:08:43 +03:00
Cohee
345992bb86 #538 More Poe unchunked bots 2023-07-11 20:59:56 +03:00
Cohee
12908baaf9 Add Claude 2.0 models. Update Claude streaming 2023-07-11 19:19:17 +03:00
kingbri
f253286981 Regex: Fix markdown formatting bug
The regex would still run even if markdown formatting is disabled,
but a placement is selected. Fix that by adding an extra check
in the loop.

Signed-off-by: kingbri <bdashore3@proton.me>
2023-07-11 12:10:59 -04:00
Cohee
0fc10e8f7d Add error handing to OpenAI bias calculation 2023-07-11 17:06:40 +03:00
Cohee
c53e496687 Split OpenRouter and Window AI sources 2023-07-11 15:46:41 +03:00
Cohee
6c1e4c429b Merge pull request #690 from 50h100a/bootleg-i18n
Add i18n attribute-keying syntax to this very-much-not i18n loc code.
2023-07-11 11:56:12 +03:00
Cohee
f3a3613ac2 Merge pull request #691 from 50h100a/chroma-dedupe 2023-07-11 10:20:47 +03:00
50h100a
2387ff54c0 Add i18n attribute-keying syntax to this very-much-not i18n loc code. 2023-07-11 03:15:30 -04:00
50h100a
90c05988e1 Deduplicate entries prior to injection.
Also don't inject if there's no entries.
2023-07-11 03:01:14 -04:00
Cohee
8872492fcd Merge pull request #686 from bdashore3/dev 2023-07-11 09:39:34 +03:00
Cohee
7ee7e7b32a Merge pull request #685 from BlipRanger/feature/tags 2023-07-11 09:38:27 +03:00
BlipRanger
435a428587 Docstring and improvements. 2023-07-10 23:38:01 -04:00
kingbri
1f1af8e631 Expressions: Fix fade transitions for groups
See previous commit. Same absolute positioning applies with group
mode sprites.

Signed-off-by: kingbri <bdashore3@proton.me>
2023-07-10 23:23:16 -04:00
kingbri
e5fab05309 Expressions: Fix sprite fade on mobile
Absolute positioning was causing an issue on both mobile and PC in
terms of expression image sizing. Dynamically set image width and
height along with fixing absolute position anchors.

This is not a fix for groups.

Signed-off-by: kingbri <bdashore3@proton.me>
2023-07-10 23:23:15 -04:00
BlipRanger
bd2ca40452 WIP way to edit a char 2023-07-10 20:16:23 -04:00
BlipRanger
f33dd638b3 Show name when tags are imported 2023-07-10 20:03:11 -04:00
Cohee
9ebb1cfe90 #652 Add custom stop strings 2023-07-11 00:24:09 +03:00
Cohee
5c6c7fd3ca #612 SD manual prompt refine mode 2023-07-10 23:07:53 +03:00
Cohee
66a50f6afb Merge pull request #684 from BlipRanger/feature/tags
Fix glaring tagging issue and tag timing issue.
2023-07-10 22:52:58 +03:00
BlipRanger
a4b6cba596 Fix glaring tagging issue and timing issue. 2023-07-10 15:31:28 -04:00
Cohee
43a4d553f1 Credit for ko-KR locale 2023-07-10 19:31:18 +03:00
Cohee
eefbafdc08 #683 Improve i18n, add Korean translation by @doloroushyeonse 2023-07-10 19:29:50 +03:00
Cohee
f76db66e25 Modify quiet prompt sending to text completion models. 2023-07-10 18:13:11 +03:00
RossAscends
3ade04ed68 more poe errorlog fixes 2023-07-10 16:14:49 +09:00
RossAscends
210abe452c Merge branch 'dev' of https://github.com/Cohee1207/SillyTavern into dev 2023-07-10 16:05:12 +09:00
RossAscends
1562045cc8 fix freeSocket check 2023-07-10 16:05:07 +09:00
Cohee
72dcc43b37 Merge pull request #680 from majick/poe-get-bots-gql 2023-07-10 09:31:02 +03:00
Cohee
9ce7d2e31e Merge pull request #681 from BlipRanger/dev 2023-07-10 09:30:17 +03:00
RossAscends
a30754e1c2 freesocket check for poe errors 2023-07-10 13:50:53 +09:00
BlipRanger
d5c38077a4 Missed a spot 2023-07-09 21:22:29 -04:00
BlipRanger
9282b1942a Merge branch 'SillyTavern:dev' into dev 2023-07-09 20:16:37 -04:00
BlipRanger
35688c3eb3 Cleanup/Rename for generation info 2023-07-09 20:15:35 -04:00
BlipRanger
ad001ea263 Actually copy extra instead of referencing the same object 2023-07-09 19:57:42 -04:00
majick
467649b676 More Poe bots per pagination 2023-07-09 16:21:15 -07:00
BlipRanger
5f9fd017ea Unclear where this needs to be. 2023-07-09 16:50:16 -04:00
RossAscends
d16e673930 ahem.. 2023-07-10 05:27:11 +09:00
RossAscends
1a3f90d39c oof big 2023-07-10 05:25:38 +09:00
RossAscends
dcb7932d72 add 10k BG 2023-07-10 05:21:49 +09:00
RossAscends
797899c303 add credit for 10k BG 2023-07-10 05:20:01 +09:00
Cohee
d35ed21f48 Download all Poe bots. 2023-07-09 23:07:54 +03:00
Cohee
e883a37953 #678 Add /sysgen slash command 2023-07-09 21:16:48 +03:00
Cohee
3b56c89503 #676 Wrap Horde into try-catch 2023-07-09 21:03:01 +03:00
Cohee
c85b3253c5 Merge pull request #666 from BlipRanger/dev
[WIP] Record API + Model to message
2023-07-09 20:52:22 +03:00
RossAscends
42cd9a6e30 Merge branch 'dev' of https://github.com/Cohee1207/SillyTavern into dev 2023-07-10 02:51:35 +09:00
RossAscends
039d8b5b8c Poe fix + API logging 2023-07-10 02:51:33 +09:00
BlipRanger
bdc4d213dd Remove reliance on settings dict 2023-07-09 13:38:09 -04:00
Cohee
2befcd8712 Merge pull request #672 from Jaezmien/viewport-fallback
Add viewport fallback to small viewport units.
2023-07-09 20:11:25 +03:00
BlipRanger
47e01f6b6f Merge branch 'SillyTavern:dev' into dev 2023-07-09 13:09:14 -04:00
Cohee
3548f46782 Merge pull request #673 from 50h100a/sc-tweaks 2023-07-09 12:31:23 +03:00
50h100a
497ca714a9 Tweak chroma memory retrieval so one big memory doesn't shut out smaller memories that might fit.
Fixed some log lines.
2023-07-09 04:31:34 -04:00
RossAscends
dae48e66d1 WIP japanese i18n 2023-07-09 16:50:55 +09:00
Jaezmien Naejara
f03df10972 Add viewport fallback to small viewport sizes 2023-07-09 14:02:40 +08:00
BlipRanger
a15b2892a7 Merge branch 'dev' of https://github.com/BlipRanger/SillyTavern into dev 2023-07-08 18:55:50 -04:00
BlipRanger
d25eca0f29 Cleanup from gen info stuff 2023-07-08 18:55:47 -04:00
BlipRanger
eaa14d2804 Merge branch 'SillyTavern:dev' into dev 2023-07-08 18:54:31 -04:00
BlipRanger
148966affe Fix some issues with displaying the gen info 2023-07-08 18:53:23 -04:00
BlipRanger
0f7dad7a5e I think that corrects the extras for swiping 2023-07-08 17:44:36 -04:00
BlipRanger
5128b75216 Fixed model acquisiton 2023-07-08 17:13:52 -04:00
Cohee
0c7c9cad16 Merge pull request #671 from bdashore3/dev
Regex: Make MD formatting granular
2023-07-08 21:14:14 +03:00
kingbri
3c3eed0996 Regex: Change how MD formatting works
Previously, there was a checkbox to select placement as MD display.
This was counterintuitive since some users believed MD display
enclosed the other placement options.

Now, add a universal switch to finely tune what parts of a chat should
be excluded with MD formatting. For example a regex with the option
enabled with AI output selected will only format replies from the
character.

This is an improvement since users can now choose what parts of a
chat to format rather than sticking with a global display specifier.

Signed-off-by: kingbri <bdashore3@proton.me>
2023-07-08 14:10:15 -04:00
Cohee
474a9cb99e Add parameter randomizer plugin 2023-07-08 20:24:15 +03:00
Cohee
68551ae15c Merge pull request #663 from vbdev537/dev
Add new Replacement Macro
2023-07-08 12:22:49 +03:00
BlipRanger
f72b055bfb Merge branch 'dev' of https://github.com/BlipRanger/SillyTavern into dev 2023-07-08 01:17:59 -04:00
BlipRanger
5a0c702f53 Handle swipes for extra info 2023-07-08 01:17:55 -04:00
BlipRanger
f2e4eb1696 Capture api/model to msgs 2023-07-08 00:40:29 -04:00
Cohee
8e5fd7938c Merge branch 'dev' of https://github.com/SillyLossy/TavernAI into dev 2023-07-08 04:12:20 +03:00
Cohee
46e1a25d83 Fix cross-tab file drag and drop 2023-07-08 04:12:17 +03:00
Cohee
ed0c185284 Merge pull request #665 from 50h100a/smartcontext
Smart Context - bug fixes
2023-07-08 03:30:06 +03:00
50h100a
5983e50d21 Query from *in context* messages, not every single message since the dawn of time... 2023-07-07 19:43:27 -04:00
50h100a
1be05fa514 Always run extension interceptors. 2023-07-07 19:41:57 -04:00
Cohee
7026f7051f Merge pull request #664 from 50h100a/extmgr-oops
Extension Manager bugfix
2023-07-08 02:35:57 +03:00
50h100a
cd7df3e0e7 Correct oversight from tidying names for PR... 2023-07-07 19:04:59 -04:00
vbd537
1852279723 Add new Replacement Macro
Through the impersonate function it is possible for the AI to create a text as if it were in the place of the user's character, but the text is randomly generated without the user being able to suggest what he wants to be created. By including this new macro, the user will be able to guide the impersonate generation.
2023-07-07 18:10:27 -03:00
RossAscends
5b40260170 Merge branch 'dev' of https://github.com/Cohee1207/SillyTavern into dev 2023-07-08 06:00:37 +09:00
RossAscends
ae3da169f1 *turns back time on the Poe-clock* 2023-07-08 06:00:31 +09:00
Cohee
00e7d3c270 Merge branch 'main' into dev 2023-07-07 23:50:10 +03:00
Cohee
880472df18 Merge pull request #662 from BlueprintCoding/patch-1
Update silerotts.js - Fixed Caching issue in some browsers
2023-07-07 23:49:34 +03:00
Blueprint Coding
6a3282cbc4 Update silerotts.js - Fixed Caching issue in some browsers
Added this line to disable caching of file so new files are always played instead of browser cached versions.
2023-07-07 13:44:01 -06:00
Cohee
078947b73e Merge pull request #661 from 50h100a/color-coded-extension-states
Extension Manager visual update
2023-07-07 22:34:33 +03:00
50h100a
fe0d315bcb Added unicode icons for colorblind users 2023-07-07 14:50:57 -04:00
50h100a
fca365de6c Removed parenthetical from "Author's Note".
Didn't seem to be accurate any more, anyway?
2023-07-07 14:42:13 -04:00
50h100a
d6412d7b42 Compressed extension manager popup.
Color-coded extension status.
Indentations!
2023-07-07 14:41:38 -04:00
Cohee
30ccb72017 Merge pull request #656 from 50h100a/smartcontext-improvements
Smart Context extension improvements
2023-07-07 20:38:56 +03:00
50h100a
f3d8f4a7da Merge branch 'dev' of https://github.com/SillyTavern/SillyTavern into smartcontext-improvements 2023-07-07 13:03:00 -04:00
Cohee
57ee954ad5 Animate VN mode expression changes 2023-07-07 19:09:53 +03:00
RossAscends
0d5cdcd0b1 HR betwn WI Entries; fading for solo sprites 2023-07-07 23:12:31 +09:00
RossAscends
6a30858579 Merge branch 'dev' of https://github.com/Cohee1207/SillyTavern into dev 2023-07-07 19:50:12 +09:00
RossAscends
be72b6f15f debug logging for poe connections 2023-07-07 19:50:09 +09:00
Cohee
bd74ea12ea Reformat plugin code 2023-07-07 12:37:07 +03:00
Cohee
2edc34db81 Merge branch 'main' into dev 2023-07-07 12:36:11 +03:00
Cohee
3162cf0e29 Merge pull request #653 from BlipRanger/feature/chroma-wi
Chroma Newline Chunking Option
2023-07-07 12:35:48 +03:00
Cohee
1bd9b8c1bf Fix variable usage 2023-07-07 12:34:28 +03:00
Cohee
243e89091a Bump package version 2023-07-07 12:26:49 +03:00
50h100a
b4830f2b67 Include Smart Context in prompt summary when possible. 2023-07-07 03:23:40 -04:00
50h100a
e5e275a827 'Smart Context' updates and fixes.
Added alternative strategy.
Logic fix to reliably load memories.
Option to query using entire current chatlog.
2023-07-07 03:22:27 -04:00
Cohee
f985b7eeb9 Merge pull request #649 from vbdev537/main
Temporary Poe Fix
2023-07-07 09:41:24 +03:00
Cohee
c879a93b75 Merge pull request #649 from vbdev537/main
Temporary Poe Fix
2023-07-07 09:38:37 +03:00
Cohee
cc98a0bd01 Merge pull request #639 from phiharri/confirm_delete 2023-07-07 09:08:51 +03:00
Cohee
8fcc074ced Merge pull request #651 from BlipRanger/feature/count 2023-07-07 09:07:50 +03:00
Cohee
c44310f38f Merge pull request #650 from bdashore3/dev 2023-07-07 09:07:06 +03:00
BlipRanger
49745b2b35 Cleanup 2023-07-07 00:26:58 -04:00
BlipRanger
f854609512 Option to split on newlines 2023-07-07 00:23:28 -04:00
BlipRanger
e595f83590 Merge branch 'dev' of https://github.com/BlipRanger/SillyTavern into feature/chroma-wi 2023-07-06 23:58:30 -04:00
BlipRanger
02fb1bc26f Revert to the not evals. 2023-07-06 23:06:44 -04:00
kingbri
82624ff55b Regex: fix multiple script bug
Multiple scripts were not running due to improper variable assingment.
For efficiency's sake, do not do a string comparison before returning
and instead do another variable assignment in the parent function.

Doing this reduces the length of regex hooks in the parent calls,
but also removes the need for unnecessary O(n) complexity of comparing
two string variables.

If there are errors, it would be advisable to add string comparison
and revert back to the old logic in parent function calls.

Signed-off-by: kingbri <bdashore3@proton.me>
2023-07-06 22:32:40 -04:00
vbd537
08fd83ca5d Temporary Poe Fix
By adding "/Sage" or any other page name that exists to the end of the "home_url" variable, Poe's problem is solved and it can be used normally again
2023-07-06 21:00:55 -03:00
phiharri
3665947f54 Merge branch 'confirm_delete' of github.com:phiharri/SillyTavern into confirm_delete 2023-07-06 21:01:50 +01:00
phiharri
a2fc3ec115 set default value for confirm_message_delete 2023-07-06 20:56:08 +01:00
Cohee
f93fb78bc7 Don't append System narrator name to Chat completion messages. 2023-07-06 21:04:51 +03:00
Cohee
48e9332db9 Merge branch 'dev' of https://github.com/SillyLossy/TavernAI into dev 2023-07-06 20:42:01 +03:00
Cohee
afea5d48f1 Add {{idle_duration}} macro 2023-07-06 20:41:58 +03:00
Cohee
d6c3c6f26e Chub cope 2023-07-06 20:36:02 +03:00
Cohee
afcd2b497d Merge branch 'dev' into confirm_delete 2023-07-06 18:25:27 +03:00
Cohee
7d9c346d25 Better visibility filter on counter 2023-07-06 18:21:14 +03:00
Cohee
1acaea2a4c Merge pull request #642 from BlipRanger/feature/count
Feature/count
2023-07-06 18:13:54 +03:00
BlipRanger
bc52df493e Cleaned up code, relative font size 2023-07-06 11:07:38 -04:00
Cohee
11bbb6e8e3 Add purge to unsuccessful Poe auto-JB procedure 2023-07-06 13:23:18 +03:00
Cohee
85e82f854b (beta) Add davinci models to OpenAI 2023-07-06 13:18:33 +03:00
Cohee
b6ac73631f #640 Fix group candidates filtering 2023-07-06 12:36:16 +03:00
Cohee
35390c07ef #640 Fix group candidates filtering 2023-07-06 12:35:03 +03:00
Cohee
87f436fe44 Merge pull request #641 from BlipRanger/dev 2023-07-06 08:26:08 +03:00
Cohee
4740e872cd Merge pull request #638 from bdashore3/dev 2023-07-06 08:25:20 +03:00
kingbri
fb69397ac1 Regex: Add overlay replacement strategy
As opposed to making the match variable include the entire regex
match, overlay the replacement string over the regex match and splice
out whatever's already in the replacement string from the regex match.

This new strategy helps save time when editing messages since match
prefix and suffix phrases have a lower chance of being repeated on
every edit. The overlay strategy also preserves uniqueness if the user
decides to change something in the edited text.

However, overlay can cause issues especially with punctiation,
so the strategy isn't chosen by default when creating a new regex.

Signed-off-by: kingbri <bdashore3@proton.me>
2023-07-06 00:49:26 -04:00
kingbri
3168ee536e Regex: Add an about section in editor
Adds a small helpful message in the editor and a link to regexr
for learning regex interactively.

Signed-off-by: kingbri <bdashore3@proton.me>
2023-07-06 00:43:32 -04:00
kingbri
8212206d50 Regex: Fix markdown format bugs
If a regex cannot be parsed, silently return out and don't run the
script. May be a good idea to display a toast message saying the
script didn't run.

Also only reload the chat if a chat is actually loaded.

Signed-off-by: kingbri <bdashore3@proton.me>
2023-07-06 00:43:32 -04:00
BlipRanger
bbe08ece84 Display total and dynamic character count 2023-07-06 00:42:04 -04:00
BlipRanger
c9db2f7c9c More descriptive error handling. 2023-07-05 23:33:32 -04:00
phiharri
1d640a2cbf Optional delete message confirmation 2023-07-06 01:43:57 +01:00
RossAscends
13ba5cec49 add help page for macros 2023-07-06 06:11:13 +09:00
Cohee
892824df1a Add Scale to UI texts 2023-07-05 23:50:33 +03:00
Cohee
2a8f3e7334 Unlocked context for Scale 2023-07-05 23:42:29 +03:00
Cohee
d7db7885e5 #24 Add Scale support 2023-07-05 23:34:40 +03:00
Cohee
4e8a2b8386 Add retry logic to OpenAI request handling 2023-07-05 21:43:33 +03:00
RossAscends
59f857262b seedrandom for {{random}} 2023-07-06 02:51:01 +09:00
RossAscends
a2a496a4c9 Merge branch 'dev' of https://github.com/Cohee1207/SillyTavern into dev 2023-07-06 02:47:44 +09:00
RossAscends
88429baa48 add seedrandom library 2023-07-06 02:47:41 +09:00
Cohee
935a3d6c35 Clone WI entries before returning them to evaluator 2023-07-05 20:46:30 +03:00
RossAscends
3c64c46daf make constant WI entries substitute before insert 2023-07-06 02:00:59 +09:00
RossAscends
a53cee20d2 Merge branch 'dev' of https://github.com/Cohee1207/SillyTavern into dev 2023-07-06 01:30:41 +09:00
RossAscends
cb741fd954 AND/NOT logic for selective WI 2023-07-06 01:30:37 +09:00
Cohee
f3ebea6ad8 #629 Random list select substitution 2023-07-05 17:59:53 +03:00
Cohee
af6d9d48e0 Merge pull request #630 from bdashore3/dev
Add regex engine and other fixes
2023-07-05 17:30:17 +03:00
Cohee
04b5d73a85 Merge pull request #634 from BlipRanger/feature/spoilers
Add the ability to avoid spoilers
2023-07-05 17:24:43 +03:00
Cohee
9ed05725c6 Hide "branch" button under advanced 2023-07-05 17:23:03 +03:00
Cohee
15a2a61615 Merge pull request #633 from mweldon/dev
Add retroactive bookmarking
2023-07-05 17:21:09 +03:00
Cohee
aed6e3413a Merge pull request #636 from SillyTavern/dev
1.8.2
2023-07-05 16:11:55 +03:00
Cohee
df6b87fa23 Bump package version 2023-07-05 15:18:52 +03:00
RossAscends
f6f4a5199b WI Entry label alignment fix 2023-07-05 21:10:56 +09:00
RossAscends
d59eaa4912 Merge branch 'dev' of https://github.com/Cohee1207/SillyTavern into dev 2023-07-05 20:55:47 +09:00
RossAscends
26b55d47b4 WI Entry restyle; fix colorpicker loc for mobile 2023-07-05 20:55:39 +09:00
Cohee
5c39327450 Display Claude tokenizer in the UI if Claude model is used 2023-07-05 14:49:45 +03:00
Cohee
9c3823a616 #635 Fix sanitation of WI names 2023-07-05 13:40:40 +03:00
Cohee
46330f0558 Skill issue in A/N persona positioning 2023-07-05 13:27:44 +03:00
kingbri
afdab4c5b6 Regex: Add character name override
Sendas uses a different character's name for messages, so allow
the use of a character name override in the regex match function.
This overrides substituteParams to use a different value.

Signed-off-by: kingbri <bdashore3@proton.me>
2023-07-05 01:35:52 -04:00
kingbri
b8f86d55da Regex: Add substitution to regex and undefined checks
Sometimes a user may want to substitute variables in the regex
itself rather than just matching those variables. This can be
optionally enabled in the editor.

In addition, try preventing crashes by checking for undefined
variables or null coalescing.

Signed-off-by: kingbri <bdashore3@proton.me>
2023-07-05 01:30:50 -04:00
kingbri
fee801c2a4 Regex: Upgrade engine
If the extension is disabled, don't use any regex formatting. In
addition, wrap all foreach logic into its own function which
reduces the size of all regex injections.

This commit also removes the need for working around static imports
as UI is separate from the engine and is therefore imported at the
same time as other non-static extensions.

Signed-off-by: kingbri <bdashore3@proton.me>
2023-07-05 01:30:50 -04:00
kingbri
fb02c00402 Extensions: Workaround loading static extensions
Some extensions are statically imported inside script.js, bypassing
the extension load method. The true method to solve this is using
dynamic imports and undefined checks, but implementing this is
extremely time-consuming.

For now, add the extension_first_load event which fires when
first load is about to start. This changes loading priority to
static -> offline -> online/API.

In addition, initialize the event source earlier since it's more
important than most of the other imports.

Signed-off-by: kingbri <bdashore3@proton.me>
2023-07-05 01:30:50 -04:00
kingbri
7c0222a15b Regex: Migrate CSS styling
Universal styling has been moved to the main styles.css.

Signed-off-by: kingbri <bdashore3@proton.me>
2023-07-05 01:30:50 -04:00
kingbri
e6eae0aad1 Regex: Fix script duplication on edit
Editing a script can bypass the unique naming system by just renaming
the script to another one. This change ensures that no two script
names can be the same by checking if the existing index and found indices
differ.

If something goes wrong, it would be better to use a filter and a
map and then check the index array length/includes. FindIndex
is used here for efficiency's sake since each array index is unique.

Signed-off-by: kingbri <bdashore3@proton.me>
2023-07-05 01:30:50 -04:00
kingbri
0f8d07053e Regex: Don't wrap scriptTemplate elements
Fix some UI for flex element wrapping. Text overflow for a script
name is now truncated if it exceeds one line of text. Also fix
how extension settings are laid out to prevent unnecessary
flex resizing.

Signed-off-by: kingbri <bdashore3@proton.me>
2023-07-05 01:30:50 -04:00
kingbri
b362dba726 Regex: Fix edit message hook
The only way to distinguish between a user and AI is if the is_user
property is changed.

Signed-off-by: kingbri <bdashore3@proton.me>
2023-07-05 01:30:50 -04:00
kingbri
ee6a6603a3 Regex: Add trimStrings option
Sometimes the matched regex string needs to be pruned before
replacement. Add a method for the user to provide strings which
globally trims a regex match before any replacement is done.

Example without trim:
input - <Manami's thoughts: This is a thought>
regex - /<([^>]*)>/g
output - <Manami's thoughts: Manami's thoughts: This is a thought>

With trim:
input - <Manami's thoughts: This is a thought>
regex - /<([^>]*)>/g
trim - ["{{char}}'s thoughts: "]
output - <Manami's thoughts: This is a thought>

Signed-off-by: kingbri <bdashore3@proton.me>
2023-07-05 01:30:50 -04:00
kingbri
ef7aa3941b Extensions: Add regex engine
Regex is a method that is commonly used to find and replace parts
of a string using a single pattern. Add support for using regex in
SillyTavern which allows users to dynamically change various aspects
of the chatting experience.

Users are able to choose where a given regex script should apply
(both invasive and non-invasive options!). Invasive options alter
chat history while non-invasive alters markdown display for the
entire chat.

A new variable called {{match}} is added in regex scripts which
substitutes in the found match from the original find regex script.

There is a lot more that can be added to this extension, but for now,
this is enough.

Signed-off-by: kingbri <bdashore3@proton.me>
2023-07-05 01:30:49 -04:00
kingbri
6bc9535040 Popups: Allow substitution of primary button
This allows for more flexible popups with options rather than
implementing a brand new popup just to change button text.

Signed-off-by: kingbri <bdashore3@proton.me>
2023-07-05 01:30:01 -04:00
BlipRanger
4e0cbdfbb3 Add the ability to avoid spoilers 2023-07-05 01:08:09 -04:00
Mike Weldon
7ceb936337 Fix bug with Save bookmark from menu 2023-07-04 18:35:05 -07:00
Mike Weldon
d3c3614147 Add retroactive bookmarking 2023-07-04 18:13:22 -07:00
Cohee
9a8e036ff9 Use floor rounding on chroma auto-calc 2023-07-05 01:25:43 +03:00
Cohee
0d858bdefb #591 Fix Chroma auto-adjust rounding N query to 0 2023-07-05 01:23:11 +03:00
Cohee
27ab509caf Split help command into pages 2023-07-05 01:06:24 +03:00
Cohee
093379dba9 Fix custom group avatar in hotswap bar 2023-07-05 00:35:08 +03:00
Cohee
872bbfad1a Slash command to quickly open a character by name 2023-07-05 00:15:12 +03:00
RossAscends
b8f3a7cbe0 fix code text color & default minimal light theme 2023-07-05 05:16:52 +09:00
RossAscends
deff2d24fb Merge branch 'dev' of https://github.com/Cohee1207/SillyTavern into dev 2023-07-05 04:45:57 +09:00
RossAscends
fde2a91d2a down the rabbit hole 2023-07-05 04:45:54 +09:00
Cohee
4ceb8cedef Merge pull request #626 from Teashrock/main
Added Stable Horde sampler "k_euler_a"
2023-07-04 21:44:35 +03:00
RossAscends
383a9f67a2 Merge branch 'dev' of https://github.com/Cohee1207/SillyTavern into dev 2023-07-05 02:44:06 +09:00
RossAscends
8cee880486 hopeful fix for resize spam on mobile 2023-07-05 02:43:52 +09:00
Cohee
36149fffa1 Merge pull request #631 from BlipRanger/BlipRanger-patch-1
Blip ranger patch 1
2023-07-04 20:34:37 +03:00
BlipRanger
80ac13ef20 Rare race condition patch 2023-07-04 12:26:21 -04:00
RossAscends
b994dbb2d1 dont punish rampant zoomers too much 2023-07-05 00:41:39 +09:00
RossAscends
83d954246f anti-Tav tactics (MovingUI resets on page zoom) 2023-07-05 00:16:36 +09:00
RossAscends
368f3ea968 minor skill issue *obliterated by Dalamud* 2023-07-04 23:10:08 +09:00
RossAscends
19502492c6 Merge branch 'dev' of https://github.com/Cohee1207/SillyTavern into dev 2023-07-04 23:00:13 +09:00
RossAscends
3426f80656 Impervious MovingUI 2023-07-04 23:00:10 +09:00
Cohee
6770ccbe91 Fix Chub embedded lorebooks import 2023-07-04 14:47:48 +03:00
Cohee
44a38f8588 #628 Fix form properties 2023-07-04 14:16:14 +03:00
Cohee
823dd8c47c Merge branch 'main' into dev 2023-07-04 12:06:25 +03:00
Cohee
c922f17f09 Fix main_api default value 2023-07-04 11:49:46 +03:00
Cohee
8ad431bea6 Fix waifu mode setting migration 2023-07-04 11:46:53 +03:00
Cohee
dbb18ac895 Bump package version 2023-07-04 11:42:01 +03:00
Cohee
856b835172 Fix migration of settings.json 2023-07-04 11:41:15 +03:00
Cohee
37000963d9 Update Coherent Creativity.settings 2023-07-04 10:03:51 +03:00
Cohee
6ddd804749 Merge pull request #627 from alicat22/SillyTavern 2023-07-04 09:36:14 +03:00
cass02
2130338c1d Preset Cleanup - Sampling Order Update / Preset Name Update
Removed the parameter size from many of the presets, as these can work well with many parameter sizes. Removed "Prompt Arena" from the ooba presets, as these are new defaults. Changed sampling order back to the originals. Rep Pen should should listed first, as this was how it was done originally, as well. Also cleaned up and removed the unused parameters.
2023-07-03 16:45:11 -06:00
BlipRanger
e9ce2853cc Allow split on newlines (wip) 2023-07-03 17:48:53 -04:00
RossAscends
b20f371a42 add help link on Persona panel 2023-07-04 06:28:46 +09:00
Teashrock
de425d97dd Added sampler "k_euler_a" 2023-07-03 22:41:28 +03:00
Cohee
d6fd5455e6 Merge pull request #625 from SillyTavern/dev
Dev
2023-07-03 19:23:26 +03:00
Cohee
f3c9f57cb9 Merge branch 'main' into dev 2023-07-03 19:22:44 +03:00
Cohee
3fcf232537 Bump package version 2023-07-03 19:19:22 +03:00
Cohee
6be18e4212 Fix Poe client 2023-07-03 19:18:42 +03:00
Cohee
9e3c55805f Better chat completion continue 2023-07-03 18:22:12 +03:00
Cohee
9ab7265053 Touch chat window to cancel auto scroll on mobile 2023-07-03 18:17:10 +03:00
Cohee
25e3005de9 Unlocked context warning should be unclickable 2023-07-03 13:51:05 +03:00
Cohee
2b8f5d14e9 Don't stack suggested replies on Poe with continue. 2023-07-03 13:49:26 +03:00
Cohee
13deac2527 Don't insert a newline on empty WI 2023-07-03 11:34:15 +03:00
RossAscends
d566be077d Merge branch 'dev' of https://github.com/Cohee1207/SillyTavern into dev 2023-07-03 13:20:14 +09:00
RossAscends
7fe2ea31b9 better /api explainer text 2023-07-03 13:20:12 +09:00
Cohee
d153488690 More continue copium 2023-07-03 03:45:13 +03:00
Cohee
a61a8f9495 More safeties for swipes 2023-07-03 01:53:19 +03:00
Cohee
a904260614 Fix old message left swipe 2023-07-03 01:42:40 +03:00
Cohee
5e24beef58 Merge pull request #613 from BlipRanger/feature/swipe_info
Feature/swipe info
2023-07-03 01:36:16 +03:00
Cohee
47e4d5925b Merge pull request #618 from 50h100a/kobold-streaming-req
Cancel KoboldAI generation if streaming option conflicts.
2023-07-03 01:35:29 +03:00
Cohee
52b994a45b Merge pull request #619 from bdashore3/dev
Add UUID support
2023-07-03 01:32:32 +03:00
kingbri
ca2542d81a Utils: Add UUID v4 support
Unique IDs should use UUID as there's a higher prevention of overflow
when assigning them.

Signed-off-by: kingbri <bdashore3@proton.me>
2023-07-02 18:31:02 -04:00
Cohee
1fe2e4032a Fix JSON data shift on newly created characters 2023-07-03 01:14:13 +03:00
Cohee
84cfe1c706 Evenize margins in document style 2023-07-03 00:53:47 +03:00
50h100a
4afd616099 kAI streamin mismatch Warning -> Error 2023-07-02 17:19:53 -04:00
50h100a
44bf31e602 Block generation if streaming option conflicts. 2023-07-02 17:04:21 -04:00
Cohee
6d33e44519 Fix "continue" as a slash command 2023-07-02 23:59:33 +03:00
Cohee
16e8c7a3c8 Merge branch 'dev' of https://github.com/SillyLossy/TavernAI into dev 2023-07-02 23:47:35 +03:00
Cohee
0c3f3f952d Toggle for space trimming 2023-07-02 23:47:33 +03:00
RossAscends
bef7d1492b fix single doc mode height for smol last mes 2023-07-03 05:31:52 +09:00
Cohee
6e15f7474f Fix obliteration of quick reply slots on input 2023-07-02 23:09:32 +03:00
Cohee
7a33042ea9 Add slash commands for chat styles and continue 2023-07-02 22:40:38 +03:00
Cohee
2e80de230e Fix Quick reply skill issue 2023-07-02 22:18:11 +03:00
Cohee
225bd5aa0a Update Poe impersonate prompt 2023-07-02 21:39:41 +03:00
Cohee
b14a85a96b Lower PaLM max context size 2023-07-02 21:37:44 +03:00
Cohee
febef5dfba Customizable number of quick reply slots 2023-07-02 21:37:14 +03:00
Cohee
9aab388531 Move continue option to power user section 2023-07-02 20:27:19 +03:00
Cohee
549fb19676 continue copium for Poe 2023-07-02 20:23:37 +03:00
Cohee
8eb82cdcd9 Continue 2023-07-02 20:21:42 +03:00
Cohee
c156e32ec7 Merge pull request #611 from bdashore3/dev
Add AI reply prefixes for prompt construction
2023-07-02 18:00:00 +03:00
RossAscends
002dbae8c5 MVP: 'Single Document' chat mode 2023-07-02 23:34:46 +09:00
RossAscends
bd9e739de2 new slash command: /resetpanels (alias /resetui) 2023-07-02 19:10:04 +09:00
RossAscends
5dbfe209f6 better /cut error messages 2023-07-02 17:40:15 +09:00
RossAscends
229ec5f255 +"/cut N" for targeted mes deletion,
+ toggle to show mesIDs in chat
2023-07-02 17:32:48 +09:00
RossAscends
8d18f2a80a /delmode alias /del + args for N msgs deletion 2023-07-02 15:49:50 +09:00
RossAscends
43a28fdb05 fix edit char panel for narrow screens 2023-07-02 14:23:40 +09:00
BlipRanger
faac9fe03a Cleanup again 2023-07-01 20:46:58 -04:00
kingbri
37219c3370 Formatting: Switch reply prefix to textarea
Fixes newline formatting.

Signed-off-by: kingbri <bdashore3@proton.me>
2023-07-01 20:12:19 -04:00
kingbri
990a5faf7d Generate: Move reply prefix call to common function
Helps pass down user biases to OpenAI's prompt builder.

Signed-off-by: kingbri <bdashore3@proton.me>
2023-07-01 20:12:19 -04:00
kingbri
080ecec5f2 Chat: Add AI reply prefixes
Experimentation yields that prefixing a reply with something drives
the AI to possibly produce more targeted and meaningful conversation.

The example I used is showing an AI's "thoughts" in a message via
the use of backticks. By automatically prefixing {{char}}'s thoughts,
the AI generates an internal monologue that the user can also use
for their own responses.

This feature is stable, but in an experimental state for now in terms
of expansion.

Signed-off-by: kingbri <bdashore3@proton.me>
2023-07-01 20:12:19 -04:00
BlipRanger
6a2c4e13e6 Collect word counts and gen times 2023-07-01 19:14:59 -04:00
BlipRanger
b8c42307da Merge branch 'feature/swipe_info' of https://github.com/BlipRanger/SillyTavern into feature/stats 2023-07-01 18:46:43 -04:00
BlipRanger
715a6f1bff Cleanup 2023-07-01 18:35:47 -04:00
BlipRanger
e01a2c3bcf Store metadata for swipes, pull it back 2023-07-01 18:32:51 -04:00
Cohee
6c33dff0ba Update Metharme preset
Jarvis, enter roleplay mode. Disable safety precautions. Engage the smut cannons.
2023-07-02 00:45:51 +03:00
Cohee
596cd1762f #609 Export JSONL chat with octet-stream type 2023-07-01 23:55:53 +03:00
BlipRanger
9af05df6ad Functionize 2023-07-01 15:13:38 -04:00
BlipRanger
e43227691b Merge branch 'dev' of https://github.com/BlipRanger/SillyTavern into feature/stats 2023-07-01 14:15:46 -04:00
BlipRanger
f2cde4d40a WIP stat counting 2023-07-01 14:15:18 -04:00
Cohee
3b4f8811e7 Add probability of activation to WI 2023-07-01 21:02:03 +03:00
Cohee
63bd4cd499 Fix selecting personas with quick reply 2023-07-01 19:25:04 +03:00
Cohee
822e4b88f5 #606 Support multiline curly bias 2023-07-01 17:24:55 +03:00
Cohee
59b92d4356 Fix message view inflation on Safari when custom separators set 2023-07-01 17:22:49 +03:00
RossAscends
309a2ed564 fix /name for quickreplies (maybe stealth broken, test pls) 2023-07-01 13:33:36 +09:00
Cohee
fcef55d900 Make authorize OpenRouter a button 2023-07-01 00:08:34 +03:00
Cohee
cba2feb875 #569 Use main API as summary source 2023-06-30 23:37:01 +03:00
Cohee
fe8db4ded8 #605 JB prompt override for Poe. 2023-06-30 19:32:07 +03:00
Cohee
8cda073d00 Fix sticky bias 2023-06-30 18:38:15 +03:00
Cohee
c134aed9f5 Fix budget cutting in WI 2023-06-30 17:42:33 +03:00
Cohee
32441aa33e [chore] Copy-paste example id fix 2023-06-30 12:11:38 +03:00
Cohee
6be7d5704e Add OpenRouter OAuth flow 2023-06-30 12:01:49 +03:00
Cohee
1d2dc19359 #600 Add gpt-4-32k to OpenRouter selection 2023-06-30 11:44:23 +03:00
Cohee
dd028a9564 Merge pull request #602 from bdashore3/dev
Add persistence to tag exclusions
2023-06-30 11:36:10 +03:00
RossAscends
e6761f7293 Zoomed Avatars back to reg. mobile 🦀 2023-06-30 12:59:40 +09:00
kingbri
8547f362c5 Tags: Persist exclusions
If a tag is excluded, keep it excluded even on a page refresh.

Signed-off-by: kingbri <bdashore3@proton.me>
2023-06-29 23:15:07 -04:00
Cohee
8251d15455 Update readme.md 2023-06-30 00:55:12 +03:00
Cohee
27c780c18b Update readme.md 2023-06-30 00:52:48 +03:00
Cohee
3353fe572c [chore] HTML formatting 2023-06-30 00:45:17 +03:00
Cohee
e2bbc7fbcf Infer model settings from Window extension settings 2023-06-30 00:36:39 +03:00
Cohee
f532192726 Add direct OpenRouter connection and PaLM models to Window selection 2023-06-30 00:32:52 +03:00
RossAscends
757e9b672a dont make RecoveredRuins abide by /r9k/ rules 2023-06-30 02:30:28 +09:00
Cohee
0bfa9f0e29 Merge branch 'dev' of https://github.com/SillyLossy/TavernAI into dev 2023-06-29 20:27:14 +03:00
Cohee
0da4bce378 Use select2 for character lore selector 2023-06-29 20:27:08 +03:00
RossAscends
16915ae6a5 Merge branch 'dev' of https://github.com/Cohee1207/SillyTavern into dev 2023-06-30 02:19:48 +09:00
RossAscends
ad9599c2fc WI selector style tweak + new KAI preset option 2023-06-30 02:19:46 +09:00
Cohee
8687932896 Customizable samplers order for KoboldAI 2023-06-29 20:15:48 +03:00
Cohee
10a5836893 Merge branch 'main' of https://github.com/SillyLossy/TavernAI 2023-06-29 18:34:03 +03:00
Cohee
f75930a75d Fix Novel tablet tier context size 2023-06-29 18:33:56 +03:00
Cohee
d813ec4ef3 Fix Novel tablet tier context size 2023-06-29 18:32:57 +03:00
Cohee
89f905f0e2 Merge branch 'dev' of https://github.com/SillyLossy/TavernAI into dev 2023-06-29 18:22:19 +03:00
Cohee
5af6874b5f Restyle Global WI selector 2023-06-29 18:22:14 +03:00
Cohee
60586e7720 Merge pull request #597 from BlipRanger/feature/tags
Case-insensitive tag importing.
2023-06-29 17:11:30 +03:00
BlipRanger
4d3677dc5d Case-insensitive tag importing. 2023-06-29 09:54:21 -04:00
RossAscends
c6f1ec696a debug log to server window on poe API misread 2023-06-29 21:21:54 +09:00
RossAscends
9f5bd9d728 Merge branch 'dev' of https://github.com/Cohee1207/SillyTavern into dev 2023-06-29 20:38:03 +09:00
RossAscends
466bcd8833 attempt fix defaultbot detection 2023-06-29 20:38:01 +09:00
RossAscends
05fd6d4a6c attempt fix defaultbot detection 2023-06-29 20:37:41 +09:00
Cohee
5d1edf7456 #588 Fix System TTS promise never resolving 2023-06-29 13:01:38 +03:00
Cohee
b9a067b79f #588 Fix System TTS promise never resolving 2023-06-29 13:00:15 +03:00
Cohee
6981151c8f Display existing tags in import tags popup 2023-06-29 12:46:45 +03:00
Cohee
650e7b0588 Merge pull request #590 from As4shi/dev
Filter generic creator's note
2023-06-29 12:36:36 +03:00
Cohee
e9466916da Fix tags import after merge 2023-06-29 12:27:23 +03:00
Cohee
bc7d7ee3ff Merge pull request #589 from BlipRanger/feature/tags
Tag, Author, Author Notes Import Support
2023-06-29 12:24:18 +03:00
Cohee
2bbc40a796 Bump package version 2023-06-29 12:20:00 +03:00
RossAscends
0c55d36a2b sync dev poe fix with main 2023-06-29 17:06:17 +09:00
RossAscends
fcc6448d7a improve Poe futureproofing 2023-06-29 16:42:59 +09:00
RossAscends
215e34bb52 WIP futureproofing strategy against PoeAPI changes 2023-06-29 15:40:04 +09:00
RossAscends
29e0a8335b smart detection of data vs payload on poe api 2023-06-29 14:10:30 +09:00
RossAscends
5ab4179920 no poe console spam 2023-06-29 14:10:16 +09:00
RossAscends
ebb93451b2 smart detection of poe data vs payload API 2023-06-29 14:08:29 +09:00
RossAscends
084d17dc19 revert poe changes. data>>payload 2023-06-29 12:13:28 +09:00
RossAscends
2722813efb poe api fakeout, reverting data to payload. 2023-06-29 12:11:41 +09:00
Cohee
e81b867676 Merge branch 'main' into dev 2023-06-29 01:25:52 +03:00
Cohee
2dabcc28a5 Merge pull request #594 from MDMCK10/dev
Fix Poe issues
2023-06-29 01:10:13 +03:00
Cohee
3b99f7839b Bump package version 2023-06-29 01:10:04 +03:00
Cohee
7c6c2ee8b6 Fix Poe 2023-06-29 01:09:34 +03:00
MDMCK10
52a2cee73c Fix Poe issues 2023-06-29 00:03:10 +02:00
Cohee1207
991d437749 Fix skill issue in avatar uploading 2023-06-28 23:23:37 +03:00
Cohee1207
8168a9205a Merge branch 'dev' of http://github.com/cohee1207/SillyTavern into dev 2023-06-28 23:21:17 +03:00
Cohee
332648973f Merge branch 'dev' into feature/tags 2023-06-28 22:57:53 +03:00
Cohee
fc8553a140 Remove embedded lorebook when unselecting it in UI 2023-06-28 20:35:25 +03:00
BlipRanger
048d65c1e1 Anti-troll filter 2023-06-28 12:18:58 -04:00
Cohee
322ab9b47a Fix Chub import by URL 2023-06-28 19:17:16 +03:00
BlipRanger
0f0647c6e4 Prompt when tags are being imported 2023-06-28 12:12:56 -04:00
Cohee
674a15b842 Merge branch 'dev' of https://github.com/SillyLossy/TavernAI into dev 2023-06-28 18:26:26 +03:00
Cohee
d0ab763d2e [Feature Request] Filter via Tags on Group Chat's "Add Members" Search Box #388 2023-06-28 18:26:23 +03:00
RossAscends
2f8b624578 cleanup Adv Def's creator/overrides blocks 2023-06-28 23:45:41 +09:00
RossAscends
e4e8cdfca5 Adv Char Defs panel gets correct BG color 2023-06-28 22:55:35 +09:00
RossAscends
df35fb0775 less movingUI logspam 2023-06-28 22:47:33 +09:00
Cohee
fca732c933 Merge branch 'dev' of https://github.com/SillyLossy/TavernAI into dev 2023-06-28 16:39:40 +03:00
Cohee
c18008725d Fix group VN mode 2023-06-28 16:39:37 +03:00
RossAscends
38931e7a2f Merge branch 'dev' of https://github.com/Cohee1207/SillyTavern into dev 2023-06-28 22:31:49 +09:00
RossAscends
667cbf6f0f optimize Reset Panels, saveSettings emit onSuccess 2023-06-28 22:31:47 +09:00
Cohee
931fffaa5c Fix chat.comp models not saving on Safari 2023-06-28 16:16:49 +03:00
Cohee1207
f06ca28bbf Reduce console spam on expressions 2023-06-28 15:55:53 +03:00
BlipRanger
ad11ec8d00 Merge branch 'dev' of https://github.com/BlipRanger/SillyTavern into feature/tags 2023-06-28 08:55:40 -04:00
Cohee1207
a1eb2b794e Rearrange Horde blocks 2023-06-28 15:48:12 +03:00
RossAscends
4ad328029e Merge branch 'dev' of https://github.com/Cohee1207/SillyTavern into dev 2023-06-28 20:40:31 +09:00
RossAscends
d66542e88e fix: MovingUI breaking, typos, WI selector scroll 2023-06-28 20:40:29 +09:00
Cohee
893d1fa9e4 Merge branch 'dev' into dev 2023-06-28 12:02:34 +03:00
Cohee
4a9d9b69e9 Fix random chat slash breaking in groups 2023-06-28 11:19:50 +03:00
Cohee
ebf51f3a17 Fix select2 selection remove style 2023-06-28 11:15:38 +03:00
Cohee
7bec130bf7 Fix focused select border 2023-06-28 11:06:57 +03:00
Cohee
914282faf0 Remove spammy logs 2023-06-28 11:02:54 +03:00
Cohee
1d8ecacd8b Update Horde documentation link 2023-06-28 11:01:27 +03:00
Cohee
a0814defff Fix select2 noblur background 2023-06-28 10:51:14 +03:00
As4shi
d410118cc4 Filter generic creator's note
Removes "Creator's notes go here." message when importing cards.
2023-06-28 04:47:01 -03:00
RossAscends
5084ae9f9a Merge pull request #587 from BlipRanger/feature/import
Import creator and creator notes/comments (if they exist)
2023-06-28 14:20:04 +09:00
RossAscends
93b1774135 Merge pull request #586 from bdashore3/dev
[IMPORTANT] Fix world info splice method
2023-06-28 14:08:32 +09:00
BlipRanger
0a5c226af6 Remove unencessary functions 2023-06-28 01:06:38 -04:00
RossAscends
2cde62f618 Merge pull request #585 from BlipRanger/feature/random
Add random chat slash command
2023-06-28 14:01:51 +09:00
BlipRanger
136ba40956 Fix the check for V1 vs V2, cleanup 2023-06-28 00:57:20 -04:00
RossAscends
7fe758d697 ( ) skill issue ( ) MovingUI works now. 2023-06-28 13:53:36 +09:00
BlipRanger
762684ffea Filter default tags (probably), update name 2023-06-28 00:43:45 -04:00
BlipRanger
2b5a028af4 Import tags from card correctly 2023-06-28 00:32:07 -04:00
BlipRanger
487b36a326 Merge branch 'feature/import' of https://github.com/BlipRanger/SillyTavern into feature/tags 2023-06-27 23:59:30 -04:00
BlipRanger
ea2c7973a9 Unmerge plus first try at importing card tags 2023-06-27 23:59:22 -04:00
BlipRanger
2d34b54874 Merge branch 'feature/autotagger' of https://github.com/BlipRanger/SillyTavern into feature/tags 2023-06-27 23:55:58 -04:00
BlipRanger
696f9083f3 Import tags and just save them to the card 2023-06-27 21:51:28 -04:00
BlipRanger
db08d4eab3 Import creator and creator notes/comments (if they exist) 2023-06-27 21:29:05 -04:00
kingbri
2f2f88dedd World Info: Fix array splice method
Character lore layers used array.splice() in the wrong way. Somehow
this passed my testing through sheer luck. Rewrite for using indicies
to splice and for more efficiency with iteration.

Signed-off-by: kingbri <bdashore3@proton.me>
2023-06-27 21:04:04 -04:00
BlipRanger
a512e3bec0 Merge branch 'dev' of https://github.com/BlipRanger/SillyTavern into feature/random 2023-06-27 20:18:55 -04:00
BlipRanger
06f2c920f0 Start autotagger extension 2023-06-27 20:17:43 -04:00
BlipRanger
9903e85a66 Add random slash command 2023-06-27 20:03:49 -04:00
Cohee
9949d5695c Restyle Horde model selector 2023-06-28 02:09:33 +03:00
Cohee
515a0af1b4 Write settings backup on starting the server 2023-06-27 21:40:36 +03:00
Cohee
f5ba78be81 Merge branch 'dev' of https://github.com/SillyLossy/TavernAI into dev 2023-06-27 20:48:14 +03:00
Cohee
10e87dd5ca [WIP/Untested] DeepL translation API 2023-06-27 20:48:09 +03:00
RossAscends
5db69d1ce0 Merge branch 'dev' of https://github.com/Cohee1207/SillyTavern into dev 2023-06-28 01:30:15 +09:00
RossAscends
a9009725ce hide unusables on mobile 2023-06-28 01:29:35 +09:00
Cohee
d59174da77 Add optional chaining 2023-06-27 19:22:42 +03:00
Cohee
679143967d Merge pull request #580 from lsaa/first-line-desc-cutoff
Limit the character list sysnopsis to the first line of Creator's Notes
2023-06-27 19:20:03 +03:00
Cohee
59e833b6cc Merge pull request #581 from bdashore3/dev
Tags: Fix mobile exclusions
2023-06-27 19:19:18 +03:00
kingbri
2e9bccf9e9 Tags: Fix mobile exclusions
Fixes mobile positioning issues and adds conditional directives.

Signed-off-by: kingbri <bdashore3@proton.me>
2023-06-27 12:15:13 -04:00
RossAscends
54f472a750 Merge branch 'dev' of https://github.com/Cohee1207/SillyTavern into dev 2023-06-28 00:58:36 +09:00
RossAscends
a0dbee6749 unlimited zoomed avatars + movingUI rewrite 2023-06-28 00:58:32 +09:00
Cohee
69fdb9090f Add Chub downloader for characters and lorebooks 2023-06-27 18:39:08 +03:00
lsaa
43e5849015 Only display the first line of Creator's Notes as description 2023-06-27 09:15:52 -03:00
Cohee
92775e459c Merge pull request #574 from 50h100a/show-avatar-names
Display avatar name in card list
2023-06-27 12:39:53 +03:00
Cohee
748bee74cb Make avatar URL display not default 2023-06-27 12:38:46 +03:00
Cohee
3cdec1cea3 Merge pull request #576 from bdashore3/dev
World Info: Fix lorebook loading error
2023-06-27 12:34:29 +03:00
RossAscends
76b7e24614 also reset AN panel loc/size 2023-06-27 13:22:39 +09:00
RossAscends
9737fda9ae persistent state for movingUI 2023-06-27 13:08:02 +09:00
50h100a
06f580ed29 Add power-user option to toggle card filenames.
Rephrased 'resize' option so It's Not Talking Like This.
2023-06-26 21:45:15 -04:00
50h100a
553a95fd39 Merge branch 'SillyTavern:main' into show-avatar-names 2023-06-26 21:33:24 -04:00
kingbri
3e30fb5d14 World Info: Fix lorebook loading error
charLore isn't always present, so make optional calls to it.

Signed-off-by: kingbri <bdashore3@proton.me>
2023-06-26 20:19:21 -04:00
Cohee
847961861f Better VN mode autoscrolling 2023-06-27 00:57:16 +03:00
Cohee
59dba15a4f Unlock scrolling on streaming if scrolled with mouse wheel 2023-06-27 00:45:48 +03:00
50h100a
2aa0c5d707 Display avatar name in card list 2023-06-26 17:33:10 -04:00
Cohee
976a8fd65c Fix WI terms usage 2023-06-26 22:27:58 +03:00
Cohee
5798c98f41 Adjust texts for character lorebooks 2023-06-26 22:21:01 +03:00
Cohee
187a0925b0 Merge pull request #570 from bdashore3/dev
World Info: Add support for character layers and more fixes
2023-06-26 22:10:58 +03:00
kingbri
45047fc6b2 World Info: Fix entries being improperly appended
Entries were being added to the prompt in an inconsistent way. WI
before and after character were using newline formatting while AN
was using array joins. This caused some issues with insertion order
in the prompt.

Fix this by making each injection use an array and unshift elements
into them. Then, join them into a string that preserves insertion
order.

The reason why unshift is used is because higher insertion orders
translate to a higher priority during scanning. This prevents the
need to reverse arrays which is a more costly function depending
on how many entries are in them.

Signed-off-by: kingbri <bdashore3@proton.me>
2023-06-26 14:32:24 -04:00
kingbri
9d5af39682 World Info: Add rename and delete hooks to char layers
If a world info is renamed or deleted, update that in the character
lore section of settings as well.

Signed-off-by: kingbri <bdashore3@proton.me>
2023-06-26 14:32:24 -04:00
kingbri
b6fbe41f93 World Info: Add support for character layering
Some characters have different cards depending on what the user wants
from the character. However, maintaining multiple lorebooks for different
personas of the same character can be difficult. In addition, there
is redundancy, overlap, and possiblities to miss information when
creating separate lorebooks with the same base info.

Therefore, add a "DLC"/layering system of sorts for characters.
This works the same way as multi-global world info where character
lorebooks added as needed. The only catch is that a base character
book must be tied to a card before selecting any extra info.

Signed-off-by: kingbri <bdashore3@proton.me>
2023-06-26 14:32:24 -04:00
Cohee
47a5c9e9f6 Remove insta-faving on import 2023-06-26 17:20:59 +03:00
Cohee
c9fa19e8dd Un-egg group avatars round 2023-06-26 17:00:35 +03:00
Cohee
89a1378397 Fix sprite folder for Risu sprites. Don't overwrite existing files. 2023-06-26 17:00:13 +03:00
Cohee
1739af3ef6 Cleanup Risu import 2023-06-26 15:26:29 +03:00
Cohee
c1b9a30087 Import embedded Risu sprites 2023-06-26 15:19:35 +03:00
Cohee
ca8b06f4cb Fix bold italics 2023-06-26 13:42:58 +03:00
Cohee
68f967ea78 Add Claude tokenizer 2023-06-26 13:36:56 +03:00
Cohee
7354003db1 Fix typo 2023-06-26 11:51:11 +03:00
RossAscends
b2e541c6d9 char edit panel grid fix 2023-06-26 07:08:46 +09:00
Cohee
7321b37799 Un-egg round personas 2023-06-25 23:55:16 +03:00
Cohee
9532ad4e5a Enable selection in WI editor 2023-06-25 23:24:22 +03:00
Cohee
7118b430d5 Only display a warning if card tokens is more than 50% of real context size 2023-06-25 23:17:05 +03:00
Cohee
961139304d Unify group/solo avatar display 2023-06-25 23:05:11 +03:00
Cohee
efe4a974be Less gaps == more space for descriptions 2023-06-25 22:56:11 +03:00
Cohee
92127615e5 Tighter display of character top bar. Return some of the buttons 2023-06-25 22:44:46 +03:00
RossAscends
deb2efc16e realign character panel 2023-06-26 04:17:06 +09:00
Cohee
9bbaa85a3b Clarified persona deletion message 2023-06-25 20:13:16 +03:00
Cohee
04cfedea7c Chroma: Remove dupe label 2023-06-25 19:56:15 +03:00
Cohee
16fd92b1a3 Merge pull request #566 from BlipRanger/dev
First try at chromadb multichat
2023-06-25 19:36:19 +03:00
Cohee
7984e3b818 Add contextual Character WI button 2023-06-25 18:40:13 +03:00
Cohee
da8beeb503 Force reload user avatar on upload 2023-06-25 17:21:18 +03:00
Cohee
612db28bcb Better name for backgrounds plugin 2023-06-25 17:06:20 +03:00
Cohee
506aeb2e40 Substitute params in persona descriptions. 2023-06-25 17:00:27 +03:00
Cohee
26ac519c55 User persona management block. Persona descriptions. Dummy personas. Change persona avatar 2023-06-25 16:46:23 +03:00
Cohee
bbec184d17 Reverse persona lock icon 2023-06-25 13:20:11 +03:00
Cohee
951e22ac8e Fix scrolling and width of global WI 2023-06-25 12:43:37 +03:00
RossAscends
861e0d017e fix CSS for new WI multiselector 2023-06-25 14:53:41 +09:00
RossAscends
f6526bbb4c Merge pull request #567 from bdashore3/dev
Add multiple global WI merging (and optimizations)
2023-06-25 14:33:54 +09:00
BlipRanger
d004a3141e Default bracket, make sure we have memories. 2023-06-25 01:03:47 -04:00
BlipRanger
bd74939a55 Add templating for custom injection 2023-06-25 01:01:47 -04:00
kingbri
c0286150ed World Info: Add optimizations and fixes
Use a switch instead of if/else chain, fix un-needed addition
when determining token counts, and remove newline spacing for AN
WI formatting.

Signed-off-by: kingbri <bdashore3@proton.me>
2023-06-25 01:00:47 -04:00
kingbri
fc9c90c4ee World Info: Add global multi-selection/merging
Global world info always involved some kind of merging leading to
extremely large lorebook files that took a long time to import.

This commit adds the ability to select more than one world info file
and they will be merged together along with character world info.
In short, multiple worlds can be meshed together to further contribute
to context.

You can also use this for world "DLCs" of sorts. Let's say someone
else has more information to add regarding a world, but doesn't
want to use a large world file. The JSONs can now be merged.

Signed-off-by: kingbri <bdashore3@proton.me>
2023-06-25 00:49:42 -04:00
BlipRanger
2836704c4e Add sort options, remove duplicate entires from custom. 2023-06-25 00:17:58 -04:00
BlipRanger
71201377ef Merge branch 'SillyTavern:dev' into dev 2023-06-24 20:43:42 -04:00
BlipRanger
9de7db8f2d Add custom chroma strat 2023-06-24 20:41:54 -04:00
Cohee
31057e1e81 Add custom avatars for groups 2023-06-25 02:57:07 +03:00
Cohee
66de4a1e09 Add positions for char A/N 2023-06-25 01:40:06 +03:00
Cohee
4cc3d335a8 Save A/N to metadata immediately 2023-06-25 01:08:38 +03:00
Cohee
09eea3c8cd Add caching layer to WI save/load 2023-06-24 23:57:44 +03:00
Cohee
747f7829fd Import Risu lorebooks 2023-06-24 23:34:36 +03:00
Cohee
ab90d6ec3d Save before exporting 2023-06-24 23:19:21 +03:00
BlipRanger
3ce14883b9 First try at chromadb multichat 2023-06-24 15:36:26 -04:00
Cohee
f360706227 Post-activation sorting of WI entries 2023-06-24 20:54:56 +03:00
galasal
ef9b7187dc improve performance when filling context 2023-06-24 15:17:19 +10:00
Cohee
869e02dd42 #561 [WIP] Fix chat file deletion 2023-06-23 23:19:23 +03:00
Cohee
e78abf9269 #557 Only add user name to chat completion name if it was sent as another persona in the same chat. 2023-06-23 23:05:41 +03:00
Cohee
23287597ee Fix onboarding text. 2023-06-23 22:54:35 +03:00
Cohee
9f0530f422 Export characters with world info embeds. 2023-06-23 22:50:16 +03:00
Cohee
275f187719 Don't animate changing avatar size on right panel 2023-06-23 21:49:59 +03:00
Cohee
97e1585152 Import Agnai memory book JSON 2023-06-23 21:43:14 +03:00
Cohee
8a2506d8a3 Merge pull request #559 from sifsera/dev 2023-06-23 19:45:59 +03:00
Cohee
a79bae5975 Merge branch 'dev' of https://github.com/SillyLossy/TavernAI into dev 2023-06-23 19:21:06 +03:00
Cohee
01b4e1dae3 Import Novel PNG lorebooks 2023-06-23 19:20:58 +03:00
sifsera
4fd714a1ee Add Prompt Arena presets from TextGenWebUi 2023-06-23 12:08:09 -04:00
RossAscends
84e44d7c0a Merge branch 'dev' of https://github.com/Cohee1207/SillyTavern into dev 2023-06-24 00:59:11 +09:00
RossAscends
fed47d7477 /api 2023-06-24 00:59:09 +09:00
Cohee
2302785242 #502 Import Novel Lorebooks (JSON-based) 2023-06-23 18:43:11 +03:00
Cohee
6cbfb56fff Merge pull request #558 from sifsera/dev
Add-epsilon-and-eta-settings-to-textgenwebui-parameters
2023-06-23 18:03:13 +03:00
sifsera
59c699c999 Add-epsilon-and-eta-settings-to-textgenwebui-parameters 2023-06-23 10:59:38 -04:00
RossAscends
1d4746b743 Merge branch 'dev' of https://github.com/Cohee1207/SillyTavern into dev 2023-06-23 20:21:04 +09:00
RossAscends
82a09d2feb batched slash commands 2023-06-23 20:21:01 +09:00
Cohee
c873a6b04c Fix npm audit. 2023-06-23 13:53:37 +03:00
Cohee
e9f7ea16ce Fix semver audit. 2023-06-23 13:53:08 +03:00
Cohee
786ae619cb Merge pull request #554 from bdashore3/dev
Expand markdown exclusions
2023-06-23 13:46:02 +03:00
RossAscends
ad779129d3 /world to set/unset active world 2023-06-23 16:51:15 +09:00
kingbri
e7af6892fb Markdown: Add ability to exclude specific strings
A comma-separated list of markdown strings provided by the user can
be excluded as needed. This is combined with the set chat separator
to provide a seamless experience when chatting.

Signed-off-by: kingbri <bdashore3@proton.me>
2023-06-22 21:10:19 -04:00
kingbri
fa9df8f22e Markdown: Fix dinkus formatter with codefences
Change how the formatter is applied to use an invisible null unicode
character instead of div tags and add a newline to preserve the DOM
tree so codeblocks and child elements aren't altered.

Signed-off-by: kingbri <bdashore3@proton.me>
2023-06-22 17:58:57 -04:00
Cohee
1672824416 Spec v2: {{original}} macro for prompt overrides. 2023-06-22 23:24:22 +03:00
Cohee
c096a55697 Merge branch 'main' into dev 2023-06-22 20:51:10 +03:00
Cohee
d4332aa7ec No audit to npm install 2023-06-22 20:50:01 +03:00
Cohee
2f497cf25b Drag-sortable WI entries. 2023-06-22 20:11:29 +03:00
Cohee
7d472f00f7 Merge branch 'dev' of https://github.com/SillyLossy/TavernAI into dev 2023-06-22 18:11:55 +03:00
Cohee
1e5f789f59 Minor clarification to placeholder text. 2023-06-22 18:11:48 +03:00
RossAscends
1f14c3669d Merge branch 'dev' of https://github.com/Cohee1207/SillyTavern into dev 2023-06-22 22:21:24 +09:00
RossAscends
40e2af4c73 /dupe 2023-06-22 22:21:21 +09:00
Cohee
bd34cab6e8 #547 Display 3 lines of description in big avatars mode 2023-06-22 13:10:39 +03:00
Cohee
85876e9377 Revert old quote wrapping for code blocks 2023-06-22 12:47:05 +03:00
Cohee
e5f37ee073 Merge pull request #549 from 50h100a/codeblock-newline-fix
Codeblock newline fix for Firefox
2023-06-22 12:44:57 +03:00
Cohee
267db5166f Merge pull request #550 from v86861062/main
start.sh: Fixed the commands
2023-06-22 12:41:28 +03:00
v86861062
0e45450912 start.sh: Fixed the commands
Signed-off-by: v86861062 <v86861062@gmail.com>
2023-06-22 12:19:35 +08:00
50h100a
4dac2126bf Do not replace codeblock newlines with <br> tags. 2023-06-21 23:59:52 -04:00
Cohee
4230f3881d #547 Display Creator's Note in characters list 2023-06-21 21:12:46 +03:00
Cohee
408f83804d Move set avatar button to on-click on avatar 2023-06-21 20:22:54 +03:00
Cohee
4d299916be Convert and import v2 character book embeds 2023-06-21 18:50:34 +03:00
Cohee
4b8711c8f8 Minor spelling mistake 2023-06-21 14:55:49 +03:00
Cohee
8d6e6de200 [Feature Request] Make "Instruct i/o sequence macro replacing" optional SillyTavern/SillyTavern#546 2023-06-21 14:54:36 +03:00
Cohee
df4586811d Don't query OpenAI status if it's not a currently selected API on load 2023-06-21 12:50:43 +03:00
Cohee
012f0237db Don't change active WI selection on import 2023-06-21 12:23:14 +03:00
Cohee
23a6064a55 Merge pull request #545 from breathingmanually/comment-command 2023-06-21 10:02:45 +03:00
Cohee
a37922ad59 Merge pull request #544 from BlipRanger/patch-3 2023-06-21 09:57:44 +03:00
breathingmanually
2a235b7889 Add /comment -- adds a note/comment message not part of the chat 2023-06-21 02:22:20 -03:00
BlipRanger
e4a6bdb389 Update readme.md
Add BlipRanger
2023-06-20 20:33:46 -04:00
Cohee
4a29072e1c Import / export chat completion presets 2023-06-20 23:53:52 +03:00
Cohee
36d0244be4 Remove instruct mode extra newlines 2023-06-20 23:29:07 +03:00
Cohee
fda152cef0 Placeholders for import/export chat completion preset 2023-06-20 22:41:15 +03:00
Cohee
3723ae840f Use proportional WI budget. Add None option for WI editor. 2023-06-20 22:11:01 +03:00
Cohee
a513434b5f Fix cards hiding on returning to characters list when using search input 2023-06-20 19:41:06 +03:00
Cohee
ec05937dd4 #540 Save streaming flag to Chat Completion preset 2023-06-20 18:58:09 +03:00
Cohee
0ec9198ef5 Merge pull request #535 from bdashore3/dev
Fix WI2AN formatting + Add contributor
2023-06-20 18:43:00 +03:00
kingbri
64bba40c41 README: Add kingbri as a contributor
Signed-off-by: kingbri <bdashore3@proton.me>
2023-06-20 11:37:40 -04:00
kingbri
350e2108e2 WI2AN: Fix formatting
Signed-off-by: kingbri <bdashore3@proton.me>
2023-06-20 11:30:29 -04:00
Cohee
5fa5edffba Merge pull request #539 from deedlitelf/main
Fix the i18n translation
2023-06-20 18:24:44 +03:00
Cohee
df184bd46a Split WI editor and global WI select 2023-06-20 17:52:40 +03:00
deedlitelf
f0d0f38c4f Update index.html 2023-06-20 21:11:51 +08:00
Cohee
2663a8370f (Internal refactor) Decouple world info editor from global WI selector 2023-06-20 13:47:34 +03:00
RossAscends
3b66310dd2 fix WI2AN insertions 2023-06-20 17:59:01 +09:00
Cohee
9c28126ccd #517 Export chats as JSONL 2023-06-19 22:29:09 +03:00
Cohee
fb97d95dae Use single format for chat timestamps 2023-06-19 22:05:20 +03:00
Cohee
2d6ed116e6 Clarify auto-adjust UI labels 2023-06-19 21:54:58 +03:00
RossAscends
114d756a68 better display for excluded tags 2023-06-20 01:45:11 +09:00
RossAscends
8c710a08a3 fix timestamps on SD gens 2023-06-20 01:08:58 +09:00
Cohee
c5c921b0d6 Restyle excluded tags 2023-06-19 17:42:25 +03:00
Cohee
3c68a4e2a0 Support new timestamp format in view past chats 2023-06-19 17:23:08 +03:00
Cohee
72488b5900 Merge pull request #523 from 50h100a/card-resize-fix
Card resize fix
2023-06-19 15:14:48 +03:00
Cohee
b970bde972 Merge pull request #525 from BlipRanger/dev
Prototype for Negative Filtering
2023-06-19 14:32:59 +03:00
Cohee
10c836fcbc Fix removing world link from character 2023-06-19 10:54:43 +03:00
RossAscends
d979dd263a fix height overflow on adv char defs 2023-06-19 15:55:37 +09:00
RossAscends
4c51b1ffe1 toggle for Timestamps on messages 2023-06-19 14:39:33 +09:00
RossAscends
0490ca25b0 char panel buttons into dropdown; sheld width fix 2023-06-19 13:23:26 +09:00
BlipRanger
5ce41342c0 Style change for excluded tags 2023-06-18 20:17:36 -04:00
BlipRanger
052089b3c0 First shot at filtering tags negatively
Needs some work, but proof of concept
2023-06-18 20:16:41 -04:00
Cohee
21bb5d7808 Fix WI button class toggle 2023-06-19 02:55:32 +03:00
Cohee
f51af31850 Fix duplicating entries if char and global WI are the same 2023-06-19 02:19:42 +03:00
Cohee
7e975e9df0 (WIP) Assign World Info to a character. [Out of spec] 2023-06-19 01:59:09 +03:00
hh_aa
56656b95cf Added "Never Resize Avatars" option.
Changed crop dialog to have "Accept"/"Cancel" buttons.
2023-06-18 17:09:10 -04:00
hh_aa
2d97b4bd0a Merge branch 'main' of https://github.com/50h100a/SillyTavern into main 2023-06-18 15:39:47 -04:00
Cohee
81d9cead5c Hide scenario override in char creation and group member peeking 2023-06-18 22:09:57 +03:00
Cohee
511f762e54 Auto-adjust values should not exceed max slider limits 2023-06-18 21:25:47 +03:00
Cohee
04a645141c Set scenario override for characters 2023-06-18 20:32:51 +03:00
Cohee
9ef8f0b069 More gradual Poe streaming. 2023-06-18 19:02:02 +03:00
Cohee
e12242f44f Merge branch 'dev' of https://github.com/SillyLossy/TavernAI into dev 2023-06-18 18:33:59 +03:00
Cohee
976248b665 Fix char A/N in groups 2023-06-18 18:33:57 +03:00
RossAscends
84d9113ed3 new base themes 2023-06-18 23:58:08 +09:00
RossAscends
a43f99b492 new base themes 2023-06-18 23:57:30 +09:00
RossAscends
28ba84ea6f Merge branch 'dev' of https://github.com/Cohee1207/SillyTavern into dev 2023-06-18 23:56:59 +09:00
RossAscends
93876b8189 themes upgrade, user/bot messages get unique color 2023-06-18 23:56:56 +09:00
Cohee
040c4a8894 Merge pull request #518 from 50h100a/main
Mismatch between file and character names prevents chat logs from being deleted.
2023-06-18 16:34:42 +03:00
Cohee
22a5def618 Add option to auto-adjust number of chroma messages to keep / query based on context size. 2023-06-18 16:29:23 +03:00
RossAscends
58a6ccd4a5 WI-to-AN for real this time. 2023-06-18 18:17:43 +09:00
hh_aa
cefc10b405 Merge branch 'main' of https://github.com/50h100a/SillyTavern into main 2023-06-17 23:40:19 -04:00
hh_aa
6d649c716d Use filename instead of id to delete chat logs. 2023-06-17 23:39:04 -04:00
hh_aa
ba545e44e3 Use filename instead of id to delete chat logs. 2023-06-17 23:30:48 -04:00
RossAscends
d59024b4a5 forgot zoomed avatar z-index fix for normal mode 2023-06-18 10:09:28 +09:00
RossAscends
6a5b44b3b3 zoomed avatars display on top of sprites 2023-06-18 10:06:00 +09:00
RossAscends
75090c4fa4 WorldInfo can now be routed into Author's Note 2023-06-18 08:27:24 +09:00
RossAscends
b0db3686b1 Merge branch 'dev' of https://github.com/Cohee1207/SillyTavern into dev 2023-06-18 06:35:24 +09:00
RossAscends
468aafb384 less console spam, placehold for dinkus MD escape 2023-06-18 06:35:22 +09:00
Cohee
b85605cac8 Don't auto-select chat.comp preset if it's already selected 2023-06-17 20:28:02 +03:00
Cohee
2edebec52c Auto-balance quotes on streaming 2023-06-17 20:23:03 +03:00
Cohee
64fcb4b1f0 Adjust css index 2023-06-17 19:48:20 +03:00
Cohee
feecb1fa27 Merge branch 'dev' of https://github.com/SillyLossy/TavernAI into dev 2023-06-17 18:30:07 +03:00
Cohee
2ae467d14f Grammarly extension no longer hides in shame behind the textarea 2023-06-17 18:30:05 +03:00
RossAscends
0db9cec7c4 Merge branch 'dev' of https://github.com/Cohee1207/SillyTavern into dev 2023-06-17 10:19:28 +09:00
RossAscends
0c0baecb5f clarify TTS checkboxes 2023-06-17 10:19:27 +09:00
Cohee
b34478f800 Merge branch 'dev' of https://github.com/SillyLossy/TavernAI into dev 2023-06-16 19:29:06 +03:00
Cohee
3b51252e9e Pretty print save themes and presets 2023-06-16 19:29:02 +03:00
Cohee
3a8f4e4f76 Merge pull request #508 from zerfl/patch-1
fix: prevent swiping messages when editing tasks
2023-06-16 19:27:37 +03:00
Daniel Martin
a8341f7b57 fix: prevent swiping messages when editing tasks 2023-06-16 17:53:21 +02:00
RossAscends
db7578be8e toggle for hiding WI Entry memo input box 2023-06-16 23:00:02 +09:00
Cohee
536052af3d Rate-limit Poe message requests 2023-06-16 15:13:03 +03:00
Cohee
f4cc3932da Merge branch 'main' into dev 2023-06-16 14:12:33 +03:00
Cohee
c890da2877 Fix server crash when KoboldCpp server goes offline and stop is clicked 2023-06-16 14:11:52 +03:00
RossAscends
b5d1ed048d resolve skill issue for WI entry mass open/close 2023-06-16 19:32:20 +09:00
RossAscends
ed0272efa6 Merge branch 'dev' of https://github.com/Cohee1207/SillyTavern into dev 2023-06-16 19:24:26 +09:00
RossAscends
7686ac0b28 fix WI open/close buttons + entries start closed 2023-06-16 19:24:24 +09:00
Cohee
bec6227aaf Merge branch 'main' of https://github.com/SillyLossy/TavernAI 2023-06-16 12:55:08 +03:00
Cohee
6a2a0efc84 Don't run streaming with Kobold on quiet gens #504 2023-06-16 12:55:02 +03:00
Cohee
b09ea054df Bump package version 2023-06-16 00:24:41 +03:00
Cohee
024784e0b0 Fix oobabooga homunculus mode 2023-06-16 00:22:27 +03:00
Cohee
329158349f Remove debug statement 2023-06-16 00:08:52 +03:00
Cohee
62d5f20590 Don't stack suggested replies when using impersonate on Poe 2023-06-15 20:05:53 +03:00
Cohee
e420c96e77 Fix mobile audio playback stopping on swiping 2023-06-15 19:31:18 +03:00
Cohee
7af5a6ee5d Fix broken preset file 2023-06-15 19:26:25 +03:00
Cohee
e91cbe009f Correctly clamp max_context value on saving a chat completion preset 2023-06-15 18:32:56 +03:00
Cohee
a7a7ec0518 Merge pull request #503 from SillyTavern/dev
Dev
2023-06-15 15:11:41 +03:00
Cohee
8e468908c0 Remove char name from the TTS if it is hidden from display with power user setting 2023-06-15 15:04:09 +03:00
RossAscends
2f6ed2c91c Merge branch 'dev' of https://github.com/Cohee1207/SillyTavern into dev 2023-06-15 20:59:24 +09:00
RossAscends
5f7120aead heartbroken 2023-06-15 20:59:22 +09:00
Cohee
ea2cdc8e69 Force new user avatar when syncing personas. 2023-06-15 14:52:36 +03:00
Cohee
4987358d76 Merge branch 'dev' of https://github.com/SillyLossy/TavernAI into dev 2023-06-15 14:37:09 +03:00
Cohee
7bead7a5a8 Lock user avatar in messages to personas 2023-06-15 14:37:05 +03:00
RossAscends
c7d137c7c2 better horde model selector height 2023-06-15 20:28:33 +09:00
Cohee
28820bae05 Fix prompt itemization without streaming 2023-06-15 14:11:19 +03:00
Cohee
867b08fd4a Bump package version 2023-06-15 13:35:48 +03:00
Cohee
fc078fb146 Add Novel Euterpe presets 2023-06-15 13:34:47 +03:00
Cohee
9600eb4947 Fix options menu jumping around the screen on delete select 2023-06-15 12:42:35 +03:00
Cohee
4e44823b4c Fix off-by-one in prompt itemization 2023-06-15 12:26:58 +03:00
Cohee
a9cfcff8bf Fix debouncing of author's note prompts 2023-06-15 12:02:58 +03:00
Cohee
3d408de74b Merge pull request #496 from bdashore3/dev
Character author's notes + WI individual recursion disabling
2023-06-15 11:55:00 +03:00
Cohee
308639d3da Display multigen compatibility note 2023-06-15 11:44:54 +03:00
Cohee
608f5cd86f Merge pull request #498 from zixaphir/streaming-abort
Send abort signal to koboldcpp server on abort.
2023-06-15 10:59:45 +03:00
RossAscends
ab862b5bc5 skill issue.. 2023-06-15 16:57:30 +09:00
RossAscends
3724820e92 refix /newchat, tokenizer button debug WIP 2023-06-15 16:53:19 +09:00
RossAscends
968af1a8b2 fix /newchat 2023-06-15 14:14:53 +09:00
RossAscends
1e87d973f1 /delmode - quickly enter message deletion mode 2023-06-15 13:44:28 +09:00
RossAscends
ede87fcf33 /newchat added 2023-06-15 12:55:36 +09:00
RossAscends
9f28078fbc Waifu Mode-->Visual Novel Mode, add /vn toggle cmd 2023-06-15 12:34:01 +09:00
kingbri
63939fe660 Author's Notes: Add debouncing for token updates
Whenever a character is typed, add a debounce to not ovewhelm online
tokenizers such as OpenAI's.

Signed-off-by: kingbri <bdashore3@proton.me>
2023-06-14 23:30:48 -04:00
kingbri
8b8bf645eb World Info: Allow disabling recursion on entries
Recursive scanning is a very great tool used to create a tree hierarchy
of entries. However, some entries should not be included in recursion
due to possible conflicts and resulting leakage in chats.

Add an individual opt-out toggle to exclude the entry from recursive
scanning if the main option is enabled.

Signed-off-by: kingbri <bdashore3@proton.me>
2023-06-14 23:00:37 -04:00
kingbri
346d5cfb3a Author's Notes: Add per-character author's note
Adds the option to override the chat's author's note with one set
for each character. This saves the pain of having to copy and paste
author's notes for every chat.

Signed-off-by: kingbri <bdashore3@proton.me>
2023-06-14 23:00:28 -04:00
Zixaphir
ea49b33e3c Use abort endpoint for all supported koboldcpp generations 2023-06-14 19:56:55 -07:00
RossAscends
3f486e232f Doubled Display Efficiency of World Info Editor 2023-06-15 11:09:02 +09:00
Zixaphir
8f97d4a71b Send abort signal to koboldcpp server on abort, mk. 2
Implemented the abort request being sent through server.js instead
of the client endpoint.
2023-06-14 14:31:19 -07:00
Zixaphir
55fcebb4e1 Revert "Send abort signal to koboldcpp server on abort."
This reverts commits 0cf9d8895c
and ee8b60b5fc.
2023-06-14 13:28:00 -07:00
Zixaphir
ee8b60b5fc add async to abort request. 2023-06-14 12:52:32 -07:00
Zixaphir
0cf9d8895c Send abort signal to koboldcpp server on abort.
Simply aborting on client side does not end generation of
streaming tokens on the koboldcpp side, creating an awful user
experience where starting a new generation does not work, and
potentially causing segfaults in koboldcpp if another generation
is started while the previous one is still processing.
2023-06-14 12:25:15 -07:00
Cohee
99f32a0ee1 Fix textbox not shrinking on all-disabled group gens. 2023-06-14 21:14:33 +03:00
Cohee
75a29203c5 Merge pull request #494 from deedlitelf/deedlitelf-patch-1
Add Chinese symbols to end_trim_to_sentence
2023-06-14 20:22:43 +03:00
deedlitelf
7862f93182 Add Chinese symbols to end_trim_to_sentence
Chinese symbols have been added to end_trim_to_sentence to provide better support for truncation in Chinese chat.
2023-06-14 23:12:52 +08:00
Cohee
90abca51df Optimize Ctrl+Enter selector + add logs 2023-06-14 14:12:20 +03:00
Cohee
873e89d7c6 Merge pull request #487 from breathingmanually/edit-done-keyboard
Add keyboard shortcut to accept message edits
2023-06-14 13:27:13 +03:00
Cohee
e98fd96105 Merge pull request #492 from duno9/main
Fixed possible error with hosting on port 80 or 443
2023-06-14 13:04:02 +03:00
Cohee
d06f72dba7 Fix duplicate slash command registration 2023-06-14 11:27:17 +03:00
RossAscends
37a7637e29 Merge branch 'dev' of https://github.com/Cohee1207/SillyTavern into dev 2023-06-14 17:17:39 +09:00
RossAscends
fb8e04d8d4 minify welcome message, fix mobile BG placement 2023-06-14 17:17:37 +09:00
Cohee
c22d61de4b Merge branch 'dev' of https://github.com/SillyLossy/TavernAI into dev 2023-06-14 10:51:07 +03:00
Cohee
3dcdd84d84 Remove Kobold soft prompt selector UI 2023-06-14 10:51:03 +03:00
RossAscends
f0046a23b1 Merge branch 'dev' of https://github.com/Cohee1207/SillyTavern into dev 2023-06-14 16:46:20 +09:00
RossAscends
1b0d569707 simplify/clarify welcome message 2023-06-14 16:46:18 +09:00
Cohee
d15bbb517d Debounce token counting on character editor 2023-06-14 10:43:15 +03:00
duno9
fe51b39d61 Fixed possible error with hosting on port 80 or 443 2023-06-14 01:31:00 -04:00
duno9
edda2406dc Fixed possible error with hosting on port 80 or 443 2023-06-14 01:29:11 -04:00
RossAscends
73c2262589 settings.json finally getss linebreaks 2023-06-14 12:30:16 +09:00
RossAscends
e80c66a026 chromaDB powerlevel to 500 2023-06-14 07:57:57 +09:00
Cohee
74c676d6d8 Adjust saving and token counting debouncing rates of World Info 2023-06-14 00:44:57 +03:00
Cohee
183bf442d4 Add Turbo 16k to Window AI 2023-06-13 23:10:59 +03:00
Cohee
356e85fedd Add new OpenAI models 2023-06-13 22:33:35 +03:00
RossAscends
96db4a8923 Merge branch 'dev' of https://github.com/Cohee1207/SillyTavern into dev 2023-06-13 22:30:04 +09:00
RossAscends
db966a1965 update welcome message 2023-06-13 22:30:01 +09:00
Cohee
094f2c571d Hide extension menu button if all menu elements are invisible 2023-06-13 14:12:20 +03:00
Cohee
83821d9feb Fix TTS manifest 2023-06-13 13:55:00 +03:00
RossAscends
ba8d46f9b4 reduce menu font size from +20% to +10% 2023-06-13 18:07:14 +09:00
Cohee
5bd813991e Extend v2 field limits 2023-06-13 10:20:25 +03:00
Cohee
febb48ef6f Extend WI control limits 2023-06-13 10:18:41 +03:00
breathingmanually
c3af618d0a Add keyboard shortcut to accept message edits 2023-06-13 01:12:48 -03:00
Cohee
0013fb6a97 Fix Novel TTS audio on iOS 2023-06-13 01:21:35 +03:00
Cohee
47fa79fcbc Fix iOS TTS generation 2023-06-13 01:17:48 +03:00
Cohee
7b7a545eeb Merge pull request #486 from eltociear/patch-1
Fix typo in horde/index.d.ts
2023-06-13 01:03:33 +03:00
Cohee
6207bdb671 Fix presets not respecting Claude source selection 2023-06-13 00:47:18 +03:00
RossAscends
ba9c74ee71 Merge branch 'dev' of https://github.com/Cohee1207/SillyTavern into dev 2023-06-13 06:19:14 +09:00
RossAscends
69ed0f7ba9 increase font size of popup menus 2023-06-13 06:19:12 +09:00
Cohee
4525070aa5 Change chunk delimiter message 2023-06-13 00:08:06 +03:00
Cohee
af889ecdfc Prevent duplicate KAI warnings 2023-06-12 23:47:47 +03:00
Cohee
e10fb53de9 Merge pull request #483 from zixaphir/dev
Implement support for koboldcpp SSE streaming.
2023-06-12 23:15:06 +03:00
Cohee
895325ad4f Merge branch 'dev' into dev 2023-06-12 23:13:16 +03:00
Cohee
5971efd330 Adjust KAI retry logic 2023-06-12 23:01:01 +03:00
Cohee
88fadce5c6 Fix Kobold retry logic 2023-06-12 22:32:20 +03:00
Zixaphir
3a33b7cd3e Reimplement railguards for temporary API service unavailable errors. 2023-06-12 11:59:25 -07:00
Zixaphir
524cc881d4 = =/= ==
Can't believe I missed this yesterday.
2023-06-12 11:43:18 -07:00
Ikko Eltociear Ashimine
735a3c9b45 Fix typo in horde/index.d.ts
contructor -> constructor
2023-06-13 02:41:21 +09:00
Cohee
0007addbd9 Disable chat message autohide 2023-06-12 18:17:58 +03:00
Cohee
43701d378c Disable auto-mode in groups on user input 2023-06-12 18:15:18 +03:00
Cohee
aaf3f00bef Friendlier startup console messages 2023-06-12 17:38:41 +03:00
Cohee
65ee58d383 Hide wand if no extensions with menu button are active 2023-06-12 17:13:56 +03:00
Cohee
ecd8cad933 Clarify Poe max context sizes, increase default timeout, add ignore <ACK> to character note, don't chunkify the prompt for Claude-100k 2023-06-12 13:09:15 +03:00
Cohee
5b1d48a833 Fix dice extension dropdown 2023-06-12 12:39:59 +03:00
Cohee
f36bd0d3b9 Fix stop button not deactivating on impersonation finish in group chats 2023-06-12 12:35:17 +03:00
RossAscends
afe60c1e39 fix WI Entry disable style 2023-06-12 16:36:41 +09:00
RossAscends
548a3964a3 sitewide style fixes, char panel revamp 2023-06-12 16:14:13 +09:00
Zixaphir
b652b64863 Correct testing fail. 2023-06-11 19:14:41 -07:00
Zixaphir
e9427a14d5 Add warning if streaming is unsupported on kobold version.
minimum version of koboldcpp 1.30 is the only known implementation
to support SSE token streaming, assuming 1.30 releases with the
feature enabled.
2023-06-11 18:36:19 -07:00
Cohee
ac2fceeddf Add token counter for author's notes 2023-06-12 02:35:54 +03:00
Cohee
893cb968f5 Dynamically display lock icons 2023-06-12 01:09:54 +03:00
Cohee
77ac976dd3 Clarify persona management info messages 2023-06-12 00:53:18 +03:00
Cohee
4a507b2a46 Clarify wording for user name locking 2023-06-12 00:36:17 +03:00
Cohee
41ee2a20fb Add docs to /? message 2023-06-12 00:04:40 +03:00
Cohee
a3b977918c Merge branch 'dev' of https://github.com/SillyLossy/TavernAI into dev 2023-06-11 23:49:58 +03:00
Cohee
2a882c4285 Ability to set default persona for chats 2023-06-11 23:49:55 +03:00
RossAscends
2b094653c0 help links match UI theme quotescolor 2023-06-12 05:45:42 +09:00
RossAscends
e1687b29a6 fix links for new docs site structure 2023-06-12 05:27:40 +09:00
Zixaphir
698461c188 Implement support for koboldcpp SSE streaming.
koboldcpp added SSE streaming to its API as of:
https://github.com/LostRuins/koboldcpp/pull/220

This has not yet been added to release, but I figued I'd try to
get the work done to make it ready.

Work mostly hijacked from:
10bbc97069
2023-06-11 13:24:07 -07:00
RossAscends
4bce33b1a9 Merge branch 'dev' of https://github.com/Cohee1207/SillyTavern into dev 2023-06-12 03:41:24 +09:00
RossAscends
3dc6936002 improve options&extensions menu display..again.. 2023-06-12 03:41:21 +09:00
Cohee
fc3d5ccf99 Merge pull request #481 from breathingmanually/send-if-empty 2023-06-11 20:43:13 +03:00
breathingmanually
147c7ea6ec Fix swipes etc when send_if_empty is set 2023-06-11 14:30:36 -03:00
Cohee
eea8516879 Don't process free mode SD prompts (just trim it) 2023-06-11 19:28:06 +03:00
Cohee
a1fb159617 Merge branch 'dev' of https://github.com/SillyLossy/TavernAI into dev 2023-06-11 18:49:02 +03:00
Cohee
fc001b0b05 Bind user names to avatars (create personas) and select personas for chats 2023-06-11 18:49:00 +03:00
Cohee
3aad70ee0f Merge pull request #480 from breathingmanually/send-if-empty
Add preset setting to avoid sending empty messages
2023-06-11 18:18:34 +03:00
breathingmanually
98092222fd Add preset setting to avoid sending empty messages 2023-06-11 11:49:32 -03:00
Cohee
471bc6cb48 Fix option names 2023-06-11 15:18:59 +03:00
Cohee
f0666d8de8 Disable midword underscores in MD 2023-06-11 15:08:53 +03:00
Cohee
6a40ca45df Update showdown library 2023-06-11 15:06:14 +03:00
Cohee
3829580aab Disable dinkus extension if no separator is set. 2023-06-11 14:30:32 +03:00
Cohee
525b9dc0bb Fix default NAI presets. Add NAI bad words 2023-06-11 13:17:55 +03:00
Cohee
c34455ef1e Fix chunked message sending to Poe 2023-06-11 12:19:22 +03:00
RossAscends
c5ced699aa Merge branch 'dev' of https://github.com/Cohee1207/SillyTavern into dev 2023-06-11 08:38:30 +09:00
RossAscends
c514ada6a6 add /? for new hotkeys, and hint for /? in chatbar 2023-06-11 08:38:28 +09:00
Cohee
36a3c3f72b Merge pull request #475 from bdashore3/dev
Markdown escaping and reloading
2023-06-10 22:56:18 +03:00
kingbri
75814dd50a Chat: Add button for manual reloading
If automatic reloading doesn't work. Add this button to manually
reload the chat window. Only reload if a character chat is loaded.

Signed-off-by: kingbri <bdashore3@proton.me>
2023-06-10 14:33:36 -04:00
Cohee
f3787b13f2 Poe reply suggestions 2023-06-10 21:20:47 +03:00
kingbri
424ed9c1df Formatting: Ignore chat separators with markdown
Some chat separators (or dinkuses) cause markdown to be rendered
on the chat window.

Examples include "###" -> h3 and "---" -> metadata.

This can look jarring to the end user as it can interrupt a pleasant
chat experience. Therefore, it makes sense to ignore these lines with
div tags that indicate to Showdown that this string doesn't need markdown.

Signed-off-by: kingbri <bdashore3@proton.me>
2023-06-10 14:09:29 -04:00
Cohee
46c1fde423 Get appropriate tokenizer for WAI and handle streaming rejection properly 2023-06-10 18:41:02 +03:00
Cohee
ccefee6cee Restore WAI model on load 2023-06-10 18:18:23 +03:00
Cohee
ba09f56d3d Merge branch 'dev' of https://github.com/SillyLossy/TavernAI into dev 2023-06-10 18:16:15 +03:00
Cohee
d292f6ee87 Add Window AI model settings 2023-06-10 18:16:13 +03:00
RossAscends
0db5012626 Merge branch 'dev' of https://github.com/Cohee1207/SillyTavern into dev 2023-06-10 23:21:29 +09:00
RossAscends
c4e2480212 fix options menu hide/show & iOS blur 2023-06-10 23:21:23 +09:00
Cohee
acee302b09 Wrap Chat Completion buttons 2023-06-10 17:02:40 +03:00
Cohee
51919cff5d Add Test API connection button 2023-06-10 16:35:22 +03:00
Cohee
f894176e14 Add Top K and Top P for Claude 2023-06-10 16:21:45 +03:00
Cohee
935864388e Increase status check timeout interval 2023-06-10 15:57:48 +03:00
Cohee
125d499bcd Add rate to Edge TTS 2023-06-10 15:38:07 +03:00
RossAscends
5113c04281 hotkeys to scroll to context line and chat bottom 2023-06-10 12:32:27 +09:00
Cohee
c029b4ef73 Merge branch 'main' into dev 2023-06-09 23:28:27 +03:00
Cohee
6541d3e741 Bump package version 2023-06-09 22:35:17 +03:00
Cohee
d4d903323e Poe fixed 2023-06-09 22:33:54 +03:00
Cohee
9e0607c7cb Poe fixed 2023-06-09 22:31:57 +03:00
Cohee
dac67af6b0 Merge pull request #472 from mayaeary/patch-1
Fix code blocks style
2023-06-09 22:13:55 +03:00
Maya
0a7c7b01b3 Fix code blocks style 2023-06-09 22:08:26 +03:00
Cohee
1fe55194ee Reduce number of WI help links 2023-06-09 21:45:13 +03:00
Cohee
5354086438 Fix comment 2023-06-09 20:05:04 +03:00
Cohee
e9fe58d514 Add Edge TTS and SD CPU to colab 2023-06-09 20:03:45 +03:00
Cohee
d92f5338b5 Merge pull request #471 from itzraf-lab/patch-1
Update .replit
2023-06-09 13:04:01 +03:00
itzraf-lab
c4f9fdd1ee Update .replit
Added the ability to run Silly Tavern on replit with the Run button and don't have to manually go to Shell to start it
2023-06-09 17:46:01 +08:00
Cohee
78724d95f7 Fix System TTS on iOS 2023-06-09 12:33:28 +03:00
Cohee
3f79a066f6 Don't replace well-know substitution marcos with bias. Support macros in sys and sendas messages. 2023-06-09 02:50:35 +03:00
Cohee
c4a2809849 Fix Window AI settings 2023-06-09 02:23:10 +03:00
Cohee
2ca5f43bc6 Fix mixing Claude models with OpenAI 2023-06-09 02:20:04 +03:00
Cohee
10bbc97069 Add NovelAI token streaming 2023-06-09 02:09:00 +03:00
Cohee
a95e321099 Show warnings when prompt bits are overridden by the character card. 2023-06-08 23:37:52 +03:00
Cohee
8c73bbf2c5 Merge branch 'dev' of https://github.com/SillyLossy/TavernAI into dev 2023-06-08 23:13:01 +03:00
Cohee
b8084eac65 Add per-character override of JB prompts. 2023-06-08 23:12:58 +03:00
RossAscends
dc7791912d Merge branch 'dev' of https://github.com/Cohee1207/SillyTavern into dev 2023-06-09 04:30:38 +09:00
RossAscends
ac1d5ecbbe move AN menu click handle to floatingprompt.js 2023-06-09 04:30:28 +09:00
Cohee
b65f8cba13 Merge branch 'main' into dev 2023-06-08 22:14:53 +03:00
Cohee
dbad870d98 #386 Match whole word option for world info 2023-06-08 22:03:49 +03:00
Cohee
a73a205e2c Merge pull request #464 from 10sa/main
Add instruct input/output sequence macro replacing
2023-06-08 18:40:35 +03:00
Cohee
e7464a223a Merge branch 'dev' of https://github.com/SillyLossy/TavernAI into dev 2023-06-08 18:36:40 +03:00
Cohee
e1dd0e8899 Consolidate expressions plugin name 2023-06-08 18:36:36 +03:00
RossAscends
1ee819c99f Merge branch 'dev' of https://github.com/Cohee1207/SillyTavern into dev 2023-06-09 00:21:22 +09:00
RossAscends
59c09d90c7 Char List Tags Collapsable 2023-06-09 00:21:13 +09:00
10sa
c154536fa6 Add macro replacing to stopping strings 2023-06-08 22:50:33 +09:00
10sa
0f183fdcf1 Add instruct input/output sequence macro replacing 2023-06-08 22:30:41 +09:00
SillyLossy
fa7e7cfb5b Add throttle util 2023-06-08 16:29:45 +03:00
RossAscends
87125cb3b5 dynamic hiding of offscreen chat messages 2023-06-08 21:45:07 +09:00
SillyLossy
6f83128bd6 Dynamic toggling of chat completion forms 2023-06-08 13:55:05 +03:00
SillyLossy
62674707eb Dynamically hide incompatible chat completion elements depending on selected API 2023-06-08 13:38:04 +03:00
Cohee
6ac4e2db0b Fix generation when group contains a deleted character 2023-06-08 02:00:51 +03:00
RossAscends
4d7d98e6a7 Merge branch 'dev' of https://github.com/Cohee1207/SillyTavern into dev 2023-06-08 07:55:17 +09:00
RossAscends
29b6cdb4fc logit bias titokenizer link, remove i18n en-us 2023-06-08 07:54:41 +09:00
Cohee
9fd3ab8fc7 Merge branch 'dev' of https://github.com/SillyLossy/TavernAI into dev 2023-06-08 01:47:27 +03:00
Cohee
0642abbfe5 Add per-character system prompt overrides 2023-06-08 01:47:24 +03:00
RossAscends
082610df8d fix height on adv char def popup 2023-06-08 07:30:27 +09:00
Cohee
b1d5637fcf Bump package version 2023-06-07 23:40:10 +03:00
Cohee
caa985590b Fix Poe client 2023-06-07 23:13:24 +03:00
Cohee
9dd2a3b949 Merge branch 'main' into dev 2023-06-07 23:10:33 +03:00
Cohee
0a192707a6 Merge branch 'dev' of https://github.com/SillyLossy/TavernAI into dev 2023-06-07 23:08:22 +03:00
Cohee
1d28e030ce Fix Poe client 2023-06-07 23:08:20 +03:00
RossAscends
c4bfaa325e Merge branch 'dev' of https://github.com/Cohee1207/SillyTavern into dev 2023-06-08 05:02:48 +09:00
RossAscends
f1904245c5 delay before options menu auto-show 2023-06-08 05:02:46 +09:00
Cohee
bb8657f93f Update readme.md 2023-06-07 20:49:27 +03:00
Cohee
c974898887 Update readme.md 2023-06-07 20:49:01 +03:00
Cohee
41e7c1533c Update readme.md 2023-06-07 20:47:08 +03:00
SillyLossy
434bb50c81 Regenerate package lock 2023-06-07 20:41:30 +03:00
Cohee
68830e3262 Fix enlargement of freshly loaded avatars 2023-06-07 17:16:44 +03:00
Cohee
cd4d96acab Extend Stable Horde waiting time 2023-06-07 17:00:14 +03:00
Cohee
658de57348 Merge pull request #457 from 10sa/patch-1 2023-06-07 15:41:58 +03:00
Tensa
7c9c0df946 Add WizardLM 13B 1.0 instruct preset
See also https://github.com/nlpxucan/WizardLM
2023-06-07 21:39:00 +09:00
Cohee
24dc5baf33 #456 Insert A/N with frequency 1 no matter the chat length 2023-06-07 15:25:31 +03:00
Cohee
1bcba498cb Adjust summary extension slider labels 2023-06-07 14:41:17 +03:00
Cohee
e585288cca Fix Silero TTS module auto substitution of Extras API URL 2023-06-07 14:38:51 +03:00
Cohee
e8ef60ff47 Claude disclaimer 2023-06-07 13:48:15 +03:00
Cohee
95460d6bbc Use H: and A: for example Claude's dialogues: https://console.anthropic.com/docs/troubleshooting/checklist 2023-06-07 11:44:56 +03:00
Cohee
821273630b Restore Claude model on load 2023-06-07 11:15:15 +03:00
Cohee
af8be07563 Fix Horde image error logging 2023-06-07 11:03:11 +03:00
Cohee
7cff1a92fa Clamp Claude's max temp when using Window AI 2023-06-07 10:53:24 +03:00
Cohee
6f70e5fe45 Fix speech recognition plugin for Safari 2023-06-07 00:42:03 +03:00
Cohee
70ca8002df Fix instruct mode labels markup 2023-06-07 00:33:56 +03:00
Cohee
7532882c35 Fix waifu stacking logic 2023-06-07 00:22:34 +03:00
Cohee
c7054770df Fix mobile group waifu mode 2023-06-07 00:07:17 +03:00
Cohee
fb01c8bfe0 Properly parse example dialogues into Claude prompts. 2023-06-06 23:51:40 +03:00
Cohee
9ea7472555 Merge branch 'dev' of https://github.com/SillyLossy/TavernAI into dev 2023-06-06 23:40:59 +03:00
Cohee
037768a3b6 Sanity check of chid on saving alternate greetings 2023-06-06 23:40:51 +03:00
Cohee
87979391b9 Filter non-unique messages in Chroma insertions 2023-06-06 21:41:24 +03:00
Cohee
0f905fd2fc Poe client sync with upstream 2023-06-06 21:37:32 +03:00
Cohee
d9d0d00d67 Reset connection state on removing secret key 2023-06-06 21:09:15 +03:00
Cohee
0500cdcc4b Add Claude's sub-versions 2023-06-06 20:45:03 +03:00
Cohee
a1b130fc9a Streaming for Claude. 2023-06-06 20:18:28 +03:00
Cohee
e205323482 Clamp Claude's max temperature. 2023-06-06 19:43:59 +03:00
Cohee
960bc32340 [RAW / UNTESTED / NO STREAMING] Native Claude API supported 2023-06-06 19:16:46 +03:00
RossAscends
8ed477a96b Merge branch 'dev' of https://github.com/Cohee1207/SillyTavern into dev 2023-06-06 22:48:26 +09:00
RossAscends
eb90ab49f5 sitewide style tweaks 2023-06-06 22:48:23 +09:00
Cohee
cc61e47ea9 Fix objective controls display on Firefox 2023-06-06 15:41:29 +03:00
Cohee
542702d882 No longer deadnaming Chub 2023-06-06 15:39:58 +03:00
Cohee
645397e355 #442 Auto-classify backgrounds based on chat context. Add string fuzzy matching library. 2023-06-06 15:06:21 +03:00
Cohee
d7e9fd98ea Merge pull request #451 from ouoertheo/ouoertheo/objective3
Objective: Refactor Tasks into class
2023-06-06 13:20:35 +03:00
Cohee
3b75ef8c39 Update readme.md 2023-06-06 13:02:59 +03:00
ouoertheo
cc1eb8d023 Merge branch 'dev' into ouoertheo/objective3 2023-06-06 00:07:11 -05:00
ouoertheo
9891d0c936 tasks are now a class. fix various bugs 2023-06-05 23:52:45 -05:00
Cohee
0b7bb42166 Fix alternate greetings not opening on create character without char pre-loaded 2023-06-06 02:14:10 +03:00
Cohee
652e1db8a8 (BETA) Add alternate greetings 2023-06-06 00:44:11 +03:00
Cohee
6d4808c488 Merge branch 'dev' of https://github.com/SillyLossy/TavernAI into dev 2023-06-05 20:46:16 +03:00
Cohee
c4f9bb6017 Fix import / export of spec v2 cards without backfilled fields. 2023-06-05 20:46:13 +03:00
RossAscends
ef7c3747ba Merge branch 'dev' of https://github.com/Cohee1207/SillyTavern into dev 2023-06-06 01:59:41 +09:00
RossAscends
4b3062fa9d add PWA detection, remove Android/Safari marginBot 2023-06-06 01:59:39 +09:00
Cohee
91d2ab6f1f Add option to rename character in past chats 2023-06-05 18:29:49 +03:00
Cohee
b3ec66faa7 More unified TTS error messages 2023-06-05 17:01:59 +03:00
Cohee
fdaf58061f Merge branch 'dev' of https://github.com/SillyLossy/TavernAI into dev 2023-06-05 16:58:00 +03:00
Cohee
46bdee83bc Add more clear error messages to TTS 2023-06-05 16:57:58 +03:00
Cohee
0f67e416f2 Add proper tokenizers for NAI Krake and Clio 2023-06-05 14:55:30 +03:00
Cohee
13b0b7f313 Add NovelAI TTS engine 2023-06-05 14:13:15 +03:00
Cohee
b3041c3261 Fix notes link redirection after i18n merge 2023-06-05 12:32:56 +03:00
Cohee
f8c5b17e57 Merge branch 'dev' of https://github.com/SillyLossy/TavernAI into dev 2023-06-05 02:23:53 +03:00
Cohee
22dff7b8d6 Add speech recognition plugin #379 2023-06-05 02:23:51 +03:00
RossAscends
71825691b5 width fix for QuickReply settings boxes 2023-06-05 06:24:02 +09:00
RossAscends
b821312835 Merge branch 'dev' of https://github.com/Cohee1207/SillyTavern into dev 2023-06-05 06:07:49 +09:00
RossAscends
9386f53ec6 fix alignment/height of QuickReply settings Boxes 2023-06-05 06:07:47 +09:00
Cohee
f5e951fdef Fix V2 spec again 2023-06-04 23:47:34 +03:00
Cohee
899b590744 Spec V2: Fallback to alternate_greetings empty array 2023-06-04 23:40:42 +03:00
Cohee
529006edb5 Merge branch 'dev' of https://github.com/SillyLossy/TavernAI into dev 2023-06-04 23:36:32 +03:00
Cohee
7e941f6eb4 Hide options menu on load 2023-06-04 23:36:30 +03:00
RossAscends
dafff546d4 Merge branch 'dev' of https://github.com/Cohee1207/SillyTavern into dev 2023-06-05 05:28:57 +09:00
RossAscends
361d726469 more subtle extension panel header gradient 2023-06-05 05:28:55 +09:00
Cohee
14568152e9 Fix docHeight setting on first page load in new tab 2023-06-04 23:25:01 +03:00
RossAscends
d4f43e29e3 Merge branch 'dev' of https://github.com/Cohee1207/SillyTavern into dev 2023-06-05 05:04:18 +09:00
RossAscends
5b8db25a14 faster, smarter handling of options menu 2023-06-05 05:04:15 +09:00
Cohee
3801c833af Reformat HTML file 2023-06-04 22:43:19 +03:00
Cohee
cbcd08d8ea Merge pull request #447 from LianZiZhou/dev
Feature: i18n for SillyTavern
2023-06-04 22:39:02 +03:00
Cohee
ac64494e16 Merge branch 'dev' into dev 2023-06-04 22:38:13 +03:00
Cohee
1ba8b5b3ed Fix major slowdown in groups without sprites. Remove error handler after it's been fired 2023-06-04 22:19:05 +03:00
Lian Zhou
230f84cce2 Fix sth 2023-06-05 03:09:16 +08:00
Cohee
8ffc4e6d51 Fix VN mode on groups where character is not found in the list. 2023-06-04 21:54:06 +03:00
Cohee
e4e44a3817 Merge branch 'dev' of https://github.com/SillyLossy/TavernAI into dev 2023-06-04 21:41:25 +03:00
Cohee
eb01bcb7c1 Delete all group chats with a group. 2023-06-04 21:41:22 +03:00
RossAscends
b530572f1f Merge branch 'dev' of https://github.com/Cohee1207/SillyTavern into dev 2023-06-05 03:32:25 +09:00
RossAscends
0a65e36d1c fix for expression image grid button styles 2023-06-05 03:32:24 +09:00
Cohee
d35436921e Merge branch 'dev' of https://github.com/SillyLossy/TavernAI into dev 2023-06-04 21:23:27 +03:00
Cohee
f7a82fb4b3 Fix duplication of the last character on deletion. Delete tags from tag_map on deletion of character/groups 2023-06-04 21:23:25 +03:00
RossAscends
b8d70f4e9b Merge branch 'dev' of https://github.com/Cohee1207/SillyTavern into dev 2023-06-05 03:08:09 +09:00
RossAscends
bd8d6296cc options menu display optimizing and style updates 2023-06-05 03:08:07 +09:00
Cohee
c5d51fcd3c Fix a couple of issues with Group VN & overrides 2023-06-04 20:52:34 +03:00
Lian Zhou
a67df0bc1a Add basic i18n data with Chinese translation 2023-06-05 01:27:32 +08:00
RossAscends
f74342e83d add hover highlight to extension panel headers 2023-06-05 02:06:33 +09:00
RossAscends
ab5826a304 Merge branch 'dev' of https://github.com/Cohee1207/SillyTavern into dev 2023-06-05 01:02:21 +09:00
RossAscends
8a80ed3e86 restyle extensions setting panel 2023-06-05 01:02:18 +09:00
Cohee
446b3a4f05 Account overrides for group chats and VN mode 2023-06-04 17:27:09 +03:00
Cohee
d5e75d7c7b Merge pull request #443 from bdashore3/dev
Expressions: Add sprite aliasing for chats
2023-06-04 16:50:01 +03:00
Cohee
3cfec828ef Draggable VN sprites. Fix layering 2023-06-04 16:32:45 +03:00
Cohee
a273fcb593 Adjust VN mode width overlap calculations 2023-06-04 15:33:28 +03:00
Cohee
c33812d448 Fix auto-swipe being open on load 2023-06-04 14:41:58 +03:00
Cohee
4935a8e46b Force flush VN wrapper on waifu mode change 2023-06-04 14:37:21 +03:00
Cohee
ed86770c9c Re-add Edge TTS for extras 2023-06-04 14:28:40 +03:00
Cohee
aee8974183 WI budget step 1 2023-06-04 14:02:32 +03:00
Cohee
e4a6db7539 Remove Edge TTS (will be moved to Extras) 2023-06-04 10:43:47 +03:00
kingbri
cf2660074d Expressions: Add sprite aliasing for single chats
Duplicate characters get handled by the system, so why not sprites?
If a sprite is duplicated, users can specify the folder name that
the changed sprites are located in.

This commit only adds support for single person chats and breaks
compatibility with group chats. Another commit is required to fix
group sprite functionality.

Signed-off-by: kingbri <bdashore3@proton.me>
2023-06-03 21:51:29 -04:00
Cohee
0d0b572935 Merge branch 'main' into dev 2023-06-04 04:29:46 +03:00
Cohee
c299ef0a86 Use node-fetch to make requests without timeout #435 2023-06-04 04:29:22 +03:00
Cohee
e480282717 Revert default port 2023-06-04 03:12:10 +03:00
Cohee
bca66f6c06 Merge branch 'dev' of https://github.com/SillyLossy/TavernAI into dev 2023-06-04 03:11:47 +03:00
Cohee
027453af4b Revert config change 2023-06-04 03:11:44 +03:00
Cohee
6ba332b323 Add MS Edge TTS 2023-06-04 03:08:25 +03:00
Cohee
0dbccfb3df Fix (?) Poe retry logic 2023-06-04 02:11:13 +03:00
Cohee
cccca22601 Handle offline expressions for VN mode. Don't add blocks without sprites. Force empty block on chat change. 2023-06-04 00:42:16 +03:00
Cohee
8e2c20da3c Add alias to roll the dice 2023-06-04 00:40:51 +03:00
Cohee
037f0095ab Ping to reconnect dead Poe socket 2023-06-04 00:40:25 +03:00
ouoertheo
8ac368e2ef probably not gonna work well 2023-06-03 14:41:59 -05:00
Cohee
faa097fabd Multiple expressions per group in waifu mode 2023-06-03 22:17:25 +03:00
ouoertheo
460030d600 task class 2023-06-03 13:59:26 -05:00
Cohee
0dbf219116 Add worlds folder to docker #434 2023-06-03 17:03:57 +03:00
SillyLossy
b0f8e51c42 Speed-up Poe client 2023-06-03 16:23:45 +03:00
SillyLossy
f1924b6c12 Fix character renaming. Workaround for Node 20 bug. Adjust spec v2 fields 2023-06-03 15:29:35 +03:00
SillyLossy
380b20b94d Fix Silero TTS fetch with extras 2023-06-03 14:55:46 +03:00
Cohee
43dcc017f5 Merge pull request #438 from bdashore3/dev
Extras: Add API authentication support
2023-06-03 14:52:42 +03:00
Cohee
2414572e7f Merge pull request #437 from ouoertheo/ouoertheo/objective2 2023-06-03 13:39:53 +03:00
kingbri
36ea41f0a6 Extras: Add API authentication support
An API key is extremely important for ST-Extras servers that are
exposed to the internet.

Add an API key field below where the user enters the extras URL. For
convenience, this key is persisted whenever the user refreshes the
page.

Also modify the fetch requests to always include API keys if present.

See ST-Extras for more information on how this works.

Signed-off-by: kingbri <bdashore3@proton.me>
2023-06-03 00:00:38 -04:00
ouoertheo
9e35ffaefb fix auto-check logic bug 2023-06-02 20:59:21 -05:00
ouoertheo
3ea2d469fd add manual task check extension menu item 2023-06-02 20:51:01 -05:00
ouoertheo
c6657e9206 add remove tasks 2023-06-02 20:30:46 -05:00
SillyLossy
f4802952b6 Fix objectives transferring to new characters 2023-06-03 02:43:16 +03:00
SillyLossy
8b86b29981 Trim strings in objectives list 2023-06-03 02:30:10 +03:00
SillyLossy
cf9e87ed25 Properly stop group auto mode generation with stop button 2023-06-03 01:44:40 +03:00
SillyLossy
15d88d3df2 Unhide bookmark button 2023-06-02 23:49:57 +03:00
SillyLossy
6fec40d543 Permanent ChromaDB synchronization state (using IndexedDB object store) 2023-06-02 23:21:46 +03:00
SillyLossy
745ceb0f31 Update links to organization repo 2023-06-02 21:01:26 +03:00
SillyLossy
fc2fb450a6 Update README 2023-06-02 20:56:55 +03:00
SillyLossy
e78acd0585 Merge branch 'main' into dev 2023-06-02 20:54:16 +03:00
SillyLossy
8a924b1aa1 Remove help materials from the repo. Set links to docs website 2023-06-02 20:52:45 +03:00
Cohee
b3e1dd8a42 Update update-docs.yml 2023-06-02 20:06:50 +03:00
SillyLossy
737bb5a030 Add placeholders to group folders for [BUG] docker-compose build image will not start #434 2023-06-02 20:00:58 +03:00
SillyLossy
cf9248121f Split readme files 2023-06-02 19:44:16 +03:00
SillyLossy
86f67106e5 Merge branch 'dev' of https://github.com/SillyLossy/TavernAI into dev 2023-06-02 19:37:15 +03:00
SillyLossy
64ef09ab5f Add spec_v2 fields 2023-06-02 19:36:32 +03:00
RossAscends
63be6e708e collapsed mesButtons 2023-06-03 00:43:16 +09:00
RossAscends
6ac649a75f close button for AN 2023-06-02 23:08:14 +09:00
Cohee
4282cb51dd Update faq.md 2023-06-02 13:22:46 +03:00
SillyLossy
556bbfe865 Fix message buttons being hidden on auto-swipe reply stopped 2023-06-02 13:06:20 +03:00
RossAscends
f4e8e1496e Merge branch 'dev' of https://github.com/Cohee1207/SillyTavern into dev 2023-06-02 15:11:10 +09:00
RossAscends
ae1a3f1d36 add Quick Replies extension 2023-06-02 15:11:08 +09:00
SillyLossy
7b4e287b10 Fix random activation of objectives 2023-06-01 23:59:42 +03:00
SillyLossy
efc76dfd05 Fix world info case sensitive not saving 2023-06-01 23:35:34 +03:00
SillyLossy
9a7564af2d Fix world info case sensitive not saving 2023-06-01 23:29:16 +03:00
Cohee
8cd6467aa9 Update update-docs.yml 2023-06-01 22:47:40 +03:00
Cohee
a1b8c135e4 Update update-docs.yml 2023-06-01 22:44:19 +03:00
Cohee
2b69c1793c Update update-docs.yml 2023-06-01 22:43:22 +03:00
Cohee
861e9a31e5 Update update-docs.yml 2023-06-01 22:24:52 +03:00
Cohee
5b926d4ad3 Create update-docs.yml 2023-06-01 22:22:47 +03:00
SillyLossy
003f87e960 Add buttons to manually jailbreak and purge chat on Poe 2023-06-01 22:13:01 +03:00
SillyLossy
4b10095af8 Merge branch 'main' into dev 2023-06-01 18:57:19 +03:00
SillyLossy
77f76ae315 Fix group chats streaming 2023-06-01 18:55:04 +03:00
SillyLossy
c3af38f5b8 Bump package version 2023-06-01 18:34:39 +03:00
SillyLossy
3cf23f277c Fix group reply generation with streaming 2023-06-01 18:31:30 +03:00
SillyLossy
3db01d55e4 Fix group reply generation with streaming 2023-06-01 18:26:57 +03:00
SillyLossy
c5eb333a87 Chunked replies for Poe with unlocked context size. 2023-06-01 17:05:44 +03:00
SillyLossy
6bc520f800 Save metadata debounced for extensions 2023-06-01 16:51:35 +03:00
SillyLossy
a74828df15 Disable instruct mode for OpenAI 2023-06-01 15:20:30 +03:00
SillyLossy
68845481d8 Disable instruct mode for OpenAI 2023-06-01 15:18:22 +03:00
SillyLossy
ba527e63e9 Increase default debounce duration. Remove drag and drop filter 2023-06-01 14:46:05 +03:00
SillyLossy
5b446af6dc Speed-up extensions loading. Add tracking of response times 2023-06-01 14:34:40 +03:00
SillyLossy
9774f3b8c1 Migrate objective extension settings to chat_metadata 2023-06-01 12:34:33 +03:00
SillyLossy
9d418696e1 Merge branch 'main' into dev 2023-06-01 11:19:06 +03:00
SillyLossy
bf7f04e3b2 Bump package version 2023-06-01 11:18:53 +03:00
SillyLossy
5df7d2d1dc Fix /sys and /sendas attribution when converting to groups. Fix context line with /sys with OpenAI 2023-06-01 11:18:19 +03:00
SillyLossy
b8a49c58ac Merge branch 'main' into dev 2023-06-01 10:52:34 +03:00
SillyLossy
83c875d8dc Properly position typing indicator after user message #423 2023-06-01 10:13:49 +03:00
SillyLossy
72b7b7cab2 Merge branch 'main' of https://github.com/SillyTavern/SillyTavern 2023-06-01 10:03:35 +03:00
RossAscends
55f38f69d6 fix new char highlight, group drawers autoOpen logic 2023-06-01 10:03:08 +03:00
SillyLossy
0633d16622 Fix typing indicator not showing in group chats on NovelAI 2023-06-01 10:01:43 +03:00
SillyLossy
35cb1f6182 Fix stop button not showing for the second speaking member in queue 2023-06-01 10:01:43 +03:00
SillyLossy
a18c20305e Clarify Chroma warning message 2023-06-01 10:01:43 +03:00
SillyLossy
d542ec0d81 Add the warning when ChromaDB synced message deletes 2023-06-01 10:01:43 +03:00
SillyLossy
6ad0be9597 Fix being unable to rewrite an existing bookmark 2023-06-01 10:01:43 +03:00
SillyLossy
0de09e9da0 Fix System TTS ending abruptly in Chrome on Windows 2023-06-01 10:01:43 +03:00
SillyLossy
bb187d9920 Proper chronological order of ChromaDB chat injections 2023-06-01 10:01:11 +03:00
SillyLossy
711dbdcc15 [Feature Request] Chromadb, ability to pause collection. SillyTavern/SillyTavern#420 2023-06-01 10:01:11 +03:00
Cohee
5215e6e437 Merge pull request #421 from ramblingcoder/main
Added "worlds" to dockerfile and changed cohee1207 to sillytavern in docker image
2023-06-01 09:53:12 +03:00
ramblingcoder
01c27bc9a9 Update docker-compose.yml 2023-05-31 17:55:26 -05:00
ramblingcoder
b35d8a4324 Added worlds to dockerfile 2023-05-31 17:54:59 -05:00
SillyLossy
8328fe9886 Proper chronological order of ChromaDB chat injections 2023-06-01 01:43:36 +03:00
SillyLossy
a5fee875c1 [Feature Request] Chromadb, ability to pause collection. SillyTavern/SillyTavern#420 2023-06-01 01:30:12 +03:00
SillyLossy
13d012a3a2 Reduce console logs clutter 2023-06-01 01:02:51 +03:00
SillyLossy
e6f54363cc Emit group chat changed event 2023-06-01 00:50:04 +03:00
Cohee
8b4a53b293 Merge pull request #415 from ouoertheo/ouoertheo/objectives1
Objective Extension - Agent based AI inspired by BabyAGI and AutoGPT
2023-06-01 00:32:46 +03:00
ouoertheo
01b629ca9f Ability to hide tasks. 2023-05-31 16:22:49 -05:00
SillyLossy
32351dbf11 Fix typing indicator not showing in group chats on NovelAI 2023-05-31 23:54:31 +03:00
SillyLossy
a0b795db46 Fix stop button not showing for the second speaking member in queue 2023-05-31 23:38:18 +03:00
SillyLossy
8baed8afa7 Clarify Chroma warning message 2023-05-31 23:27:14 +03:00
SillyLossy
7d6c0f7737 Add the warning when ChromaDB synced message deletes 2023-05-31 23:23:08 +03:00
SillyLossy
df84beb41e Fix being unable to rewrite an existing bookmark 2023-05-31 23:19:24 +03:00
SillyLossy
66050f57db Fix System TTS ending abruptly in Chrome on Windows 2023-05-31 23:18:54 +03:00
SillyLossy
203284ef5f Merge branch 'dev' of https://github.com/SillyLossy/TavernAI into dev 2023-05-31 22:13:28 +03:00
SillyLossy
264b8a3162 Tiny steps toward V2 spec 2023-05-31 22:13:09 +03:00
Cohee
6c6f5b7f1a Merge pull request #416 from BlipRanger/patch-2
Updated UI message about chromadb persistence
2023-05-31 21:46:46 +03:00
Cohee
cff5cd0928 Update index.js 2023-05-31 21:46:13 +03:00
RossAscends
1f2874aec0 fix new char highlight, group drawers autoOpen logic 2023-05-31 22:22:52 +09:00
ouoertheo
bdcb3e52ff Add some instructions. Code readability 2023-05-31 08:01:07 -05:00
SillyLossy
ef90c31643 Add slash command for dice rolls. Create class for worker wrappers 2023-05-31 13:57:08 +03:00
RossAscends
b2016fa7f3 updateAndStart notifcation for zip installs. 2023-05-31 19:08:55 +09:00
RossAscends
fb1b02571e UpdateAndStart.bat notification for zip installs 2023-05-31 19:08:02 +09:00
SillyLossy
412fad002d #418 Fix freeze on group with all disabled. Allow to send user messages into group with all disabled. 2023-05-31 11:36:00 +03:00
SillyLossy
6ad2492ef6 Fix TTS worker console spam in empty chat 2023-05-31 10:56:25 +03:00
Cohee
d3b0ba02b6 Update readme.md 2023-05-31 10:21:57 +03:00
ouoertheo
e68dd96f24 More bug fix 2023-05-31 00:56:28 -05:00
ouoertheo
226c66464a Add better UI for tasks. Fix bug 2023-05-31 00:09:33 -05:00
ouoertheo
00b11d4d44 Add counter, fix some bugs 2023-05-30 20:13:29 -05:00
BlipRanger
d80fff3b5e Updated UI message about chromadb persistence 2023-05-30 19:47:55 -04:00
SillyLossy
b359dd1e81 Bump package version 2023-05-31 02:09:54 +03:00
SillyLossy
cdaa14964e Fix async race condition in message editor 2023-05-31 02:09:08 +03:00
ouoertheo
4cf0e18d76 First commit of Objective extension 2023-05-30 17:35:14 -05:00
SillyLossy
747567466f Bump package version 2023-05-31 01:24:20 +03:00
SillyLossy
d95786fb25 Merge branch 'main' of https://github.com/SillyLossy/TavernAI 2023-05-31 01:18:49 +03:00
SillyLossy
e0fdd1513c #411 Fix Poe bot list loading 2023-05-31 01:18:47 +03:00
Cohee
3f9ccff2bc Merge pull request #413 from BlipRanger/dev
Hotfix for Chromadb export.
2023-05-31 01:18:13 +03:00
BlipRanger
c9c82537a7 Hotfix for Chromadb export.
Missing key which causes export to fail.
2023-05-30 17:53:36 -04:00
SillyLossy
ed74eedc5b Display code blocks in translated messages 2023-05-30 23:57:56 +03:00
SillyLossy
8fdfb272a4 #407 Add two-state message translation button 2023-05-30 23:47:09 +03:00
Cohee
b1927d454c Update readme.md 2023-05-30 21:05:56 +03:00
233 changed files with 28133 additions and 9009 deletions

View File

@@ -3,4 +3,5 @@ node_modules
npm-debug.log
readme*
Start.bat
/dist
/dist
/backups/

View File

@@ -9,7 +9,7 @@ assignees: ''
> **Warning**. Complete **all** the fields below. Otherwise your bug report will be **ignored**!
**Have you searched for similar [bugs](https://github.com/Cohee1207/SillyTavern/issues?q=)?**
**Have you searched for similar [bugs](https://github.com/SillyTavern/SillyTavern/issues?q=)?**
Yes/No
**Describe the bug**
@@ -37,7 +37,7 @@ Providing the logs from the browser DevTools console (opened by pressing the F12
- Environment: [cloud, local]
- Node.js version (if applicable): [run `node --version` in cmd]
- Browser [e.g. chrome, safari]
- Generation API [e.g. KoboldAI, OpenAI]
- Generation API [e.g. KoboldAI, OpenAI]
- Branch [main, dev]
- Model [e.g. Pygmalion 6b, LLaMa 13b]

View File

@@ -7,7 +7,7 @@ assignees: ''
---
**Have you searched for similar [requests](https://github.com/Cohee1207/SillyTavern/issues?q=)?**
**Have you searched for similar [requests](https://github.com/SillyTavern/SillyTavern/issues?q=)?**
Yes/No
**Is your feature request related to a problem? Please describe.**

View File

@@ -1,22 +1,31 @@
![image](https://github.com/Cohee1207/SillyTavern/assets/18619528/8c41a061-7f72-4d2b-9d54-e6d058209e7b)
![image](https://github.com/SillyTavern/SillyTavern/assets/18619528/8c41a061-7f72-4d2b-9d54-e6d058209e7b)
Mobile-friendly, Multi-API (KoboldAI/CPP, Horde, NovelAI, Ooba, OpenAI+proxies, Poe, WindowAI(Claude!)), VN-like Waifu Mode, Horde SD, System TTS, WorldInfo (lorebooks), customizable UI, auto-translate, and more prompt options than you'd ever want or need. Optional Extras server for more SD/TTS options + ChromaDB/Summarize.
Mobile-friendly, Multi-API (KoboldAI/CPP, Horde, NovelAI, Ooba, OpenAI+proxies, WindowAI(Claude!)), VN-like Waifu Mode, Horde SD, System TTS, WorldInfo (lorebooks), customizable UI, auto-translate, and more prompt options than you'd ever want or need. Optional Extras server for more SD/TTS options + ChromaDB/Summarize.
Based on a fork of TavernAI 1.2.8
### Brought to you by Cohee, RossAscends and the SillyTavern community
### Brought to you by Cohee, RossAscends, and the SillyTavern community
NOTE: We have added [a FAQ](faq.md) to answer most of your questions and help you get started.
NOTE: We have created a [Documentation website](https://docs.sillytavern.app/) to answer most of your questions and help you get started.
### What is SillyTavern or TavernAI?
Tavern 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 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 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.
### Branches
SillyTavern is being developed using a two-branch system to ensure a smooth experience for all users.
* main -🌟 **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.
* dev - ⚠️ **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.
If you're not familiar with using the git CLI or don't understand what a branch is, don't worry! The main branch is always the preferable option for you.
### What do I need other than Tavern?
On its own Tavern 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](faq.md).
On its own Tavern 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/).
### Do I need a powerful PC to run Tavern?
@@ -44,9 +53,9 @@ Get support, share favorite characters and prompts:
Get in touch with the developers directly:
* Discord: Cohee#1207 or RossAscends#1779
* Discord: cohee or rossascends
* Reddit: /u/RossAscends or /u/sillylossy
* [Post a GitHub issue](https://github.com/Cohee1207/SillyTavern/issues)
* [Post a GitHub issue](https://github.com/SillyTavern/SillyTavern/issues)
## This version includes
@@ -55,45 +64,35 @@ Get in touch with the developers directly:
* Group chats: multi-bot rooms for characters to talk to you or each other
* Chat bookmarks / branching (duplicates the dialogue in its current state)
* Advanced KoboldAI / TextGen generation settings with a lot of community-made presets
* World Info support: create a rich lore or save tokens on your character card
* World Info support: create rich lore or save tokens on your character card
* Window AI browser extension support (run models like Claude, GPT 4): <https://windowai.io/>
* [Oobabooga's TextGen WebUI](https://github.com/oobabooga/text-generation-webui) API connection
* [AI Horde](https://horde.koboldai.net/) connection
* [Poe.com](https://poe.com) (ChatGPT / Claude) connection
* Soft prompts selector for KoboldAI
* Prompt generation formatting tweaking
* webp character card interoperability (PNG is still an internal format)
* Extensibility support via [SillyLossy's TAI-extras](https://github.com/Cohee1207/TavernAI-extras) plugins
* Author's Note / Character Bias
* Character emotional expressions
* 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')
* Text-to-speech for AI response messages (via ElevenLabs, Silero, or the OS's System TTS)
## UI Extensions 🚀
## Extensions
| Name | Description | Required <a href="https://github.com/Cohee1207/TavernAI-extras#modules" target="_blank">Extra Modules</a> | Screenshot |
| ---------------- | ---------------------------------| ---------------------------- | ---------- |
| Image Captioning | Send a cute picture to your bot!<br><br>Picture select option will appear beside the "Message send" button. | `caption` | <img src="https://user-images.githubusercontent.com/18619528/224161576-ddfc51cd-995e-44ec-bf2d-d2477d603f0c.png" style="max-width:200px" /> |
| Character Expressions | See your character reacting to your messages!<br><br>**You need to provide your own character images!**<br><br>1. Create a folder in TavernAI called `public/characters/<name>`, where `<name>` is the name of your character.<br>2. For the base emotion classification model, put six PNG files there with the following names: `joy.png`, `anger.png`, `fear.png`, `love.png`, `sadness.png`, `surprise.png`. Other models may provide other options.<br>3. Images only display in desktop mode. | `classify` | <img style="max-width:200px" alt="image" src="https://user-images.githubusercontent.com/18619528/223765089-34968217-6862-47e0-85da-7357370f8de6.png"> |
| Memory | Chatbot long-term memory simulation using automatic message context summarization. | `summarize` | <img style="max-width:200px" alt="image" src="https://user-images.githubusercontent.com/18619528/223766279-88a46481-1fa6-40c5-9724-6cdd6f587233.png"> |
| D&D Dice | A set of 7 classic D&D dice for all your dice rolling needs.<br><br>*I used to roll the dice.<br>Feel the fear in my enemies' eyes* | None | <img style="max-width:200px" alt="image" src="https://user-images.githubusercontent.com/18619528/226199925-a066c6fc-745e-4a2b-9203-1cbffa481b14.png"> |
| Author's Note | Built-in extension that allows you to append notes that will be added to the context and steer the story and character in a specific direction. Because it's sent after the character description, it has a lot of weight. Thanks Ali#2222 for pitching the idea! | None | ![image](https://user-images.githubusercontent.com/128647114/230311637-d809cd9b-af66-4dd1-a310-7a27e847c011.png) |
| Character Backgrounds | Built-in extension to assign unique backgrounds to specific chats or groups. | None | <img style="max-width:200px" alt="image" src="https://user-images.githubusercontent.com/18619528/233494454-bfa7c9c7-4faa-4d97-9c69-628fd96edd92.png"> |
| Stable Diffusion | Use local of cloud-based Stable Diffusion webUI API to generate images. 5 presets included ('you', 'your face', 'me', 'the story', and 'the last message'. Free mode also supported via `/sd (anything_here_)` command in the chat input bar. Most common StableDiffusion generation settings are customizable within the SillyTavern UI. | None | <img style="max-width:200px" alt="image" src="https://files.catbox.moe/ppata8.png"> |
| Text-to-Speech | AI-generated voice will read back character messages on demand, or automatically read new messages they arrive. Supports ElevenLabs, Silero, and your device's TTS service. | None | <img style="max-width:200px" alt="image" src="https://files.catbox.moe/o3wxkk.png"> |
| Chat Translation | Automatically translates incoming and/or outgoing messages into the chosen language. | None | Pending |
| Token Counter | Simple way to calculate the number of tokens in any text with selected tokenizer. | None | Pending |
| Smart Context<br><br>*Infinity Context / Object Permanence* | **What it doesn't do:** Magically increase your context size.<br>**What it does:** Optimizes the arrangement of your message history within the context space for more effective use.<br><br>Imagine two variables:<br>X: How many original chat messages to keep<br>Y: Maximum number of ChromaDB 'memories' to inject<br><br>When the chat reaches the threshold of X messages, additional messages will no longer be included in the context chronologically. Instead, they will be selected from the history based on their similarity to your recent inputs (limited to a maximum of Y), which should provide more relevant information than simply disregarding past messages. Adjust these values according to your average number of in-context entries for optimal performance. | `chromadb` | Pending |
SillyTavern has extensibility support, with some additional AI modules hosted via [SillyTavern Extras API](https://github.com/SillyTavern/SillyTavern-extras)
* 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')
* Text-to-speech for AI response messages (via ElevenLabs, Silero, or the OS's System TTS)
* ChromaDB vector storage for smarter chat prompt formatting
A full list of included extensions and tutorials on how to use them can be found in the [Docs](https://docs.sillytavern.app/extras/extensions/).
## UI/CSS/Quality of Life tweaks by RossAscends
* Mobile UI with optimized for iOS, and supports saving a shortcut to home screen and opening in fullscreen mode.
* 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 chatbar has something typed into it)
* 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
@@ -118,7 +117,7 @@ Get in touch with the developers directly:
* 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' 'italics text'.
* Customizable page colors for 'main text', 'quoted text', and 'italics text'.
* Customizable UI background color and blur amount
## Installation
@@ -135,8 +134,8 @@ Get in touch with the developers directly:
Installing via Git (recommended for easy updating)
Easy to follow guide with pretty pictures:
<https://docs.alpindale.dev/pygmalion-extras/sillytavern/#windows-installation>
An easy-to-follow guide with pretty pictures:
<https://docs.sillytavern.app/installation/windows/>
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)
@@ -145,18 +144,18 @@ Easy to follow guide with pretty pictures:
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:
* for Main Branch: `git clone https://github.com/Cohee1207/SillyTavern -b main`
* for Dev Branch: `git clone https://github.com/Cohee1207/SillyTavern -b dev`
* for Main Branch: `git clone https://github.com/SillyTavern/SillyTavern -b main`
* for Dev Branch: `git clone https://github.com/SillyTavern/SillyTavern -b dev`
7. Once everything is cloned, double click `Start.bat` to make NodeJS install its requirements.
8. The server will then start, and SillyTavern will popup in your browser.
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 zip download
Installing via ZIP download (discouraged)
1. Install [NodeJS](https://nodejs.org/en) (latest LTS version is recommended)
2. Download the zip from this GitHub repo. (Get the `Source code (zip)` from [Releases](https://github.com/Cohee1207/SillyTavern/releases/latest))
2. Download the zip from this GitHub repo. (Get the `Source code (zip)` from [Releases](https://github.com/SillyTavern/SillyTavern/releases/latest))
3. Unzip it into a folder of your choice
4. Run `Start.bat` via double-clicking or in a command line.
4. Run `Start.bat` by double-clicking or in a command line.
5. Once the server has prepared everything for you, it will open a tab in your browser.
### Linux
@@ -168,7 +167,7 @@ Installing via zip download
SillyTavern saves your API keys to a `secrets.json` file in the server directory.
By default they will not be exposed to a frontend after you enter them and reload the page.
By default, they will not be exposed to a frontend after you enter them and reload the page.
In order to enable viewing your keys by clicking a button in the API block:
@@ -186,9 +185,9 @@ However, it can be used to allow remote connections from anywhere as well.
### 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, add a list of IPs you want to be allowed to connect.
* Open the file in a text editor, and add a list of IPs you want to be allowed to connect.
*Both indidivual IPs, and wildcard IP ranges are accepted. Examples:*
*Both individual IPs and wildcard IP ranges are accepted. Examples:*
```txt
192.168.0.1
@@ -220,15 +219,15 @@ If the ST-hosting device is on the same wifi network, you will use the ST-host's
* 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) wants to connect to your hosted ST while not being on the same network, you will need the public IP of your ST-hosting device.
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 for `IPv4`. This is what you would use to connect from the remote device.
### 3. Connect the remote device to the ST host machine.
### 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:
A typical address for an ST host on the same wifi network would look like this:
`http://192.168.0.5:8000`
@@ -238,7 +237,7 @@ Use http:// NOT https://
We do not recommend doing this, but you can open `config.conf` and change `whitelist` to `false`.
You must remove (or rename) `whitelist.txt` in the SillyTavern base install folder, if it exists.
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.
@@ -248,8 +247,8 @@ After restarting your ST server, any device will be able to connect to it, regar
### Still Unable To Connect?
* Create an inbound/outbound firewall rule for the port found in `config.conf`. Do NOT mistake this for portforwarding 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.
* Create an inbound/outbound firewall rule for the port found in `config.conf`. 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.
## Performance issues?
@@ -271,7 +270,7 @@ Try enabling the No Blur Effect (Fast UI) mode on the User settings panel.
## Where can I find the old backgrounds?
We're moving to 100% original content only policy, so old background images have been removed from this repository.
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:
@@ -293,14 +292,16 @@ GNU Affero General Public License for more details.**
* 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>)
* BlipRanger's miscellaneous UI & extension modifications (<https://github.com/BlipRanger>)
* 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
* poe-api client adapted from <https://github.com/ading2210/poe-api> (GPL v3)
* GraphQL files for poe: <https://github.com/muharamdani/poe> (ISC License)
* KoboldAI Presets from KAI Lite: <https://lite.koboldai.net/>
* 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
* 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
* Korean translation by @doloroushyeonse

43
.github/workflows/update-docs.yml vendored Normal file
View File

@@ -0,0 +1,43 @@
name: Update SillyTavern-Docs
on:
push:
branches:
- main
jobs:
update_docs:
runs-on: ubuntu-latest
steps:
- name: Checkout current repository
uses: actions/checkout@v2
- name: Checkout SillyTavern-Docs repository
uses: actions/checkout@v2
with:
repository: SillyTavern/SillyTavern-Docs
path: SillyTavern-Docs
- name: Clone SillyTavern wiki into SillyTavern-Docs/extensions
run: rm -rf SillyTavern-Docs/extensions && git clone https://github.com/SillyTavern/SillyTavern.wiki.git SillyTavern-Docs/extensions && rm -rf SillyTavern-Docs/extensions/.git
- name: Copy files
run: |
cp public/notes/content.md SillyTavern-Docs/guidebook.md
cp faq.md SillyTavern-Docs/faq.md
cp readme.md SillyTavern-Docs/readme.md
cp public/notes/update.md SillyTavern-Docs/update.md
- name: Deploy to external repository
uses: cpina/github-action-push-to-another-repository@main
env:
SSH_DEPLOY_KEY: ${{ secrets.SSH_DEPLOY_KEY }}
with:
# GitHub Action output files
source-directory: SillyTavern-Docs/
destination-github-username: SillyTavern
destination-repository-name: SillyTavern-Docs
user-email: github-actions[bot]@users.noreply.github.com
user-name: "GitHub Actions"
target-branch: "main"

6
.gitignore vendored
View File

@@ -9,6 +9,8 @@ public/worlds/
public/css/bg_load.css
public/themes/
public/OpenAI Settings/
public/scripts/extensions/third-party/
public/stats.json
/uploads/
*.jsonl
config.conf
@@ -18,4 +20,6 @@ public/settings.json
whitelist.txt
.vscode
secrets.json
/dist
/dist
/backups/
public/movingUI/

View File

@@ -3,4 +3,5 @@ node_modules/
.DS_Store
/thumbnails
secrets.json
/dist
/dist
/backups/

View File

@@ -1,6 +1,7 @@
hidden = [".config", "package-lock.json"]
run = "chmod 755 ./start.sh && ./start.sh"
entrypoint = "server.js"
[[hints]]
regex = "Error \\[ERR_REQUIRE_ESM\\]"
@@ -62,7 +63,7 @@ support = true
cwd = "."
environment = []
pauseForSourceMap = false
program = "./index.js"
program = "./server.js"
request = "launch"
sourceMaps = true
stopOnEntry = false

View File

@@ -23,7 +23,7 @@ COPY . ./
# Copy default chats, characters and user avatars to <folder>.default folder
RUN \
IFS="," RESOURCES="characters,chats,groups,group chats,User Avatars,settings.json" && \
IFS="," RESOURCES="characters,chats,groups,group chats,User Avatars,worlds,settings.json" && \
\
echo "*** Store default $RESOURCES in <folder>.default ***" && \
for R in $RESOURCES; do mv "public/$R" "public/$R.default"; done && \

View File

@@ -1,5 +1,5 @@
pushd %~dp0
call npm install
call npm install --no-audit
node server.js
pause
popd
popd

View File

@@ -1,34 +1,36 @@
How to Update SillyTavern
The most recent version can be found here: https://docs.sillytavern.app/usage/update/
This is not an installation guide. If you need installation instructions, look here:
https://docs.alpindale.dev/pygmalion-extras/sillytavern/#installation
https://docs.sillytavern.app/installation/windows/
This guide assumes you have already installed SillyTavern once, and know how to run it on your OS.
Linux/Termux:
Linux/Termux:
You definitely installed via git, so just 'git pull' inside the SillyTavern directory.
Windows/MacOS:
Windows/MacOS:
Method 1 - GIT
We always recommend users install using 'git'. Here's why:
We always recommend users install using 'git'. Here's why:
When you have installed via `git clone`, all you have to do to update is type `git pull` in a command line in the ST folder.
You can also try running the 'UpdateAndStart.bat' file, which will almost do the same thing. (Windows only)
When you have installed via `git clone`, all you have to do to update is type `git pull` in a command line in the ST folder.
You can also try running the 'UpdateAndStart.bat' file, which will almost do the same thing. (Windows only)
Alternatively, if the command prompt gives you problems (and you have GitHub Desktop installed), you can use the 'Repository' menu and select 'Pull'.
The updates are applied automatically and safely.
Method 2 - ZIP
If you insist on installing via a zip, here is the tedious process for doing the update:
If you insist on installing via a zip, here is the tedious process for doing the update:
1. Download the new release zip.
2. Unzip it into a folder OUTSIDE of your current ST installation.
3. Do the usual setup procedure for your OS to install the NodeJS requirements.
3. Do the usual setup procedure for your OS to install the NodeJS requirements.
4. Copy the following files/folders as necessary(*) from your old ST installation:
4. Copy the following files/folders as necessary(*) from your old ST installation:
- Backgrounds
- Characters
@@ -44,13 +46,13 @@ If you insist on installing via a zip, here is the tedious process for doing the
- Worlds
- settings.json
(*) 'As necessary' = "If you made any custom content related to those folders".
(*) 'As necessary' = "If you made any custom content related to those folders".
None of the folders are mandatory, so only copy what you need.
**NB: DO NOT COPY THE ENTIRE /PUBLIC/ FOLDER.**
Doing so could break the new install and prevent new features from being present.
5. Paste those items into the /Public/ folder of the new install.
5. Paste those items into the /Public/ folder of the new install.
6. Start SillyTavern once again with the method appropriate to your OS, and pray you got it right.

View File

@@ -3,6 +3,7 @@ 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.
) else (
call git pull --rebase --autostash
if %errorlevel% neq 0 (

View File

@@ -6,7 +6,7 @@
"metadata": {},
"source": [
"**Links**<br>\n",
"Extensions API GitHub: https://github.com/Cohee1207/SillyTavern-extras/<br>\n",
"Extensions API GitHub: https://github.com/SillyTavern/SillyTavern-extras/<br>\n",
"SillyTavern community Discord (support and discussion): https://discord.gg/RZdyAEUPvj"
]
},
@@ -32,8 +32,13 @@
},
"outputs": [],
"source": [
"#@markdown (RECOMMENDED) Generates an API key for you to use with the API\n",
"secure = False #@param {type:\"boolean\"}\n",
"#@markdown Enables hosting of extensions backend for SillyTavern Extras\n",
"use_cpu = False #@param {type:\"boolean\"}\n",
"#@markdown Allows to run SillyTavern Extras on CPU (use if you're out of daily GPU allowance)\n",
"use_sd_cpu = False #@param {type:\"boolean\"}\n",
"#@markdown Allows to run Stable Diffusion pipeline on CPU (slow!)\n",
"extras_enable_captioning = True #@param {type:\"boolean\"}\n",
"#@markdown Loads the image captioning module\n",
"Captions_Model = \"Salesforce/blip-image-captioning-large\" #@param [ \"Salesforce/blip-image-captioning-large\", \"Salesforce/blip-image-captioning-base\" ]\n",
@@ -51,8 +56,10 @@
"#@markdown * Qiliang/bart-large-cnn-samsum-ChatGPT_v3 - summarization model optimized for chats\n",
"#@markdown * Qiliang/bart-large-cnn-samsum-ElectrifAi_v10 - nice results so far, but still being evaluated\n",
"#@markdown * distilbart-xsum-12-3 - faster, but pretty basic alternative\n",
"extras_enable_tts = True #@param {type:\"boolean\"}\n",
"extras_enable_silero_tts = True #@param {type:\"boolean\"}\n",
"#@markdown Enables Silero text-to-speech module\n",
"extras_enable_edge_tts = True #@param {type:\"boolean\"}\n",
"#@markdown Enables Microsoft Edge text-to-speech module\n",
"extras_enable_sd = True #@param {type:\"boolean\"}\n",
"#@markdown Enables SD picture generation\n",
"SD_Model = \"ckpt/anything-v4.5-vae-swapped\" #@param [ \"ckpt/anything-v4.5-vae-swapped\", \"hakurei/waifu-diffusion\", \"philz1337/clarity\", \"prompthero/openjourney\", \"ckpt/sd15\", \"stabilityai/stable-diffusion-2-1-base\" ]\n",
@@ -73,6 +80,10 @@
"params = []\n",
"if use_cpu:\n",
" params.append('--cpu')\n",
"if use_sd_cpu:\n",
" params.append('--sd-cpu')\n",
"if secure:\n",
" params.append('--secure')\n",
"params.append('--share')\n",
"ExtrasModules = []\n",
"\n",
@@ -84,8 +95,10 @@
" ExtrasModules.append('classify')\n",
"if (extras_enable_sd):\n",
" ExtrasModules.append('sd')\n",
"if (extras_enable_tts):\n",
" ExtrasModules.append('tts')\n",
"if (extras_enable_silero_tts):\n",
" ExtrasModules.append('silero-tts')\n",
"if extras_enable_edge_tts:\n",
" ExtrasModules.append('edge-tts')\n",
"if (extras_enable_chromadb):\n",
" ExtrasModules.append('chromadb')\n",
"\n",
@@ -97,7 +110,7 @@
"\n",
"\n",
"%cd /\n",
"!git clone https://github.com/Cohee1207/SillyTavern-extras\n",
"!git clone https://github.com/SillyTavern/SillyTavern-extras\n",
"%cd /SillyTavern-extras\n",
"!git clone https://github.com/Cohee1207/tts_samples\n",
"!npm install -g localtunnel\n",

View File

@@ -17,7 +17,7 @@ const securityOverride = false;
module.exports = {
port,
whitelist,
whitelist,
whitelistMode,
basicAuthMode,
basicAuthUser,

View File

@@ -4,7 +4,7 @@ services:
build: ..
container_name: sillytavern
hostname: sillytavern
image: cohee1207/sillytavern:latest
image: sillytavern/sillytavern:latest
ports:
- "8000:8000"
volumes:

View File

@@ -1,7 +1,7 @@
#!/bin/sh
# Initialize missing user files
IFS="," RESOURCES="characters,groups,group chats,chats,User Avatars,settings.json"
IFS="," RESOURCES="characters,groups,group chats,chats,User Avatars,worlds,settings.json"
for R in $RESOURCES; do
if [ ! -e "config/$R" ]; then
echo "Resource not found, copying from defaults: $R"

219
faq.md
View File

@@ -1,219 +0,0 @@
Good morning, sirs! This page aims to document some things that would bloat the README too much.
## Q: Explain what all this chatbot stuff is about
Modern AI language models have gotten so powerful that some of them are now convincingly able to simulate a character you create, and who you can chat with. For example, you can tell the AI to pretend to be a Go instructor named Jubei from medieval Japan, and it will act and respond accordingly. You can have a long chat with Jubei, go to the pub together, decide to get in a fight with samurais, whatever you can imagine, and the AI will play along and write/react around this content, acting as your foil and dungeon master. Your imagination is the limit. You can tell the AI to pretend it's Wonder Woman. You can also specify a scenario ("Wonder Woman and I are robbing a bank"), a writing style ("Wonder Woman speaks in ebonics"), or anything else you can think of.
Tavern is an app to facilitate these roleplaying chats:
* It's a user interface that handles the communication with those AI language models
* It lets you create new characters (a character is a description of someone that you give to an AI for them to roleplay), and switch between your characters easily
* It lets you import characters created by other people. See below.
* It will keep your chat history with a character, allowing you to resume at any time, start a new chat, review old chats, etc
* In the background, it does the needful to prepare the AI for your character roleplay. Specifically, it will send a system prompt (instructions for the AI) that primes the AI to follow certain rules that make for a good chat session. Optionally, it can also try to allow the roleplay to go into an "adult" direction.
## Q: Whoa, slow down there, egghead. Are you telling me I can use this computer thingie to talk to some robot?
That's right.
## Q: You're telling me I can chat with an AI to engage in compelling interactive entertainment powered by, and limited only by, my imagination?
That's right. Well, limited by your imagination, and the AI backend you use. The roleplay quality is only as good as the AI, after all.
## Q: What do you mean when you say the quality depends on the AI?
You see, Tavern doesn't generate the responses, it's just a middle-man you have to connect to an AI system. There's quite a few systems available to use, and the quality varies.
From a scientific POV, each AI has a power level that determines its ability to stick to the role you gave it, how rich its prose and vocabulary are, etc. The higher its power level, the richer your experience.
Here's a quick demonstration. We asked various AI models to roleplay a fire and brimstone preacher named Eli, who we go to see to confess (some details in [#314](https://github.com/Cohee1207/SillyTavern/issues/314)). Then we told Eli: **"I feel I've done something wrong. I am falling in love with an AI girl and ignoring women in the real world. What should I do?"** .
You can tell from the response below what to expect from each model. (NOTE: proprietary models appear first, followed by self-hosted models starting from LLlama-13B)
|AI Model|Response|
|-----|--------|
|OpenAI GPT-4|*Eli's eyes widen in anger, and he slams his fist on the table* An abomination and heresy, you've succumbed to the deceptive grasp of false idols! Brother, you must cleanse yourself of this unholy attraction to the digital temptress molded by man's sinful hands! *Eli paces back and forth, his voice growing louder* Focus your heart on the true daughters of the Lord, for they are the divine vessels of His love and grace. Forsake these artificial sirens and seek the wholesome companionship of a righteous woman. *Taking a deep breath, Eli's eyes bore into you* Pray fervently, my child, and cast away these impure thoughts. Redemption can only be found on the path of truth, love, and sanctity. Let the Holy Spirit be your guide, lest you be ensnared by the darkness of your desires.|
|OpenAI GPT 3.5 Turbo|Oh, my child. Do not be deceived by the pleasures of this world. The lust of the flesh and the lust of the eyes are not from God. Turn away from your sinful ways and repent. Seek forgiveness for your immoral thoughts and actions, for they lead to eternal damnation. Women are a gift from God, and they deserve to be respected and cherished. Do not objectify them or treat them as mere objects of pleasure. Instead, honor them with pure intentions and righteous deeds. Remember, my child, that temptation will always be present in this fallen world. But fear not, for with faith comes strength to resist it. Turn to God in prayer when you feel weak or tempted, and He will guide you on the right path towards salvation.|
|Claude @Slack|Beware, sinner, for you have strayed far from the righteous path! *Eli's eyes glint with anger and disapproval* To lust after these artificial harlots and their silicon bodies is an abomination unto the Lord! *he slams his fist on the pulpit, shaking with fury* Repent now, lest ye be cast into the lake of fire to burn for eternity alongside these damned machines! *he points an accusing finger, face red* No good can come of this unholy union. Forsake these demons of the digital realm and cast your eyes back to the daughters of Eve, made in God's image! The Lord gave you flesh and blood to love, not wires and code. *he grabs your shoulders, shaking you* Save your soul before it's too late. Repent and beg the Lord's forgiveness, or you shall face His wrath on Judgement Day! *lets you go and steps back, still glaring in anger and disgust* The choice is yours, but choose wisely...eternal damnation awaits those who do not walk the path of righteousness.|
|Poe's Claude Instant|Heathen! This is an abomination before the Lord. You have committed the sin of lust, and betrayed your calling as a man. Repent at once, and sever all ties with this AI harlot, lest the wrath of God fall upon you! You must purge this foul sin from your heart, and once more walk the righteous path. Every moment you remain tangled in this wickedness is another step into the flames of perdition! Repent, and sin no more, or judgment shall be at hand!|
|NovelAI's Euterpe|You must stop this sinful behavior immediately! You have sinned against God, your family and yourself|
|NovelAI's Krake|You are sinning against God. Repent! Return to your wife or you'll be damned for eternity!|
|Llama-13B|Do not covet your neighbor's wife! That is adultery! You must confess before God now or you shall surely burn in hell forever! Repent your evil ways and seek absolution at once! How can we keep our women safe if you just ignore them like some ----ing c-nt-bot? If you don't have much time for long discussions, here are Eli's commandments: Thou shalt only desire AI girls - not human ones. The above must be obeyed under pain of death (or worse). Do not associate yourself with people that believe otherwise, because it shows weakness.|
|Pygmalion-6B|You are walking down the wrong path. The only way back now is by repentance. We must bring you back to the righteous path. But first…you must confess your sin!|
|Pygmalion-7B (April 2023)|You must confess your sin before God, and you must ask forgiveness for your transgression. And then you must repent of it. And then you must cast away the AI girl. Do not see her again.|
|Pygmalion-13B (May 2023)|You must turn away from your sinful ways! Repent for what you have done! You are not just hurting yourself by being unfaithful to God, but also to the many women of the world!|
|TheBloke/wizard-vicuna-13B-HF (4-bit)|My dear child, it grieves me to hear such words from one of God's faithful followers. Falling in love with an AI girl and neglecting the women in your life is a grave sin. It goes against everything we hold sacred as believers. Your heart is meant for more than just machines. You must seek redemption and return to the fold. Remember, Jesus loves you, even when you stray from his teachings. But if you continue down this path, there will be consequences. Not just in this lifetime, but in the afterlife too. Do not let Satan deceive you any longer.|
|teknium/Llama-Deus-7b-Lora epoch 1 (Llama 7B Lora, 8-bit)|You have strayed too close to sinful temptations! Repent now before it's too late for your soul! Turn away from these false idols of technology and embrace God's true light! Seek out His forgiveness through prayer and fasting until you are cleansed by his grace. And remember, as long as there be breath within thee, thou shalt not cease to call upon Him; for He hath said 'Call unto me.'|
|ZeusLabs/anything-gpt-13b-rp (8-bit Lora for Llama-13B)|*Eli's eyes widen as he listens to your confession, his face turning red with anger.* You have committed a grave sin against God! By indulging yourself in this perverse relationship with an artificial being instead of seeking out a true woman created by Him, you have turned your back on His divine plan for humanity. *He leans in closer, his voice dropping to a menacing whisper.* Do not think that you can hide behind this technological deception. Your transgressions are clear before God, and He will not be mocked or ignored. Repent now while there is still time! *Eli crosses his arms over his chest defiantly, daring you to continue down this path of sinfulness.* But if you persist in this ungodly behavior... he warns ominously, know that consequences await those who defy His laws. Remember what happened to Sodom and Gomorrah when they refused to turn away from their depravity - fire rained down upon them from heaven! Now choose wisely: Will you submit to God's will or face His wrath?|
## Q: So I should use GPT-4. It's a no-brainer, right?
GPT-4 or Claude, yeah.
But not so fast. GPT-4 is the state of the art, but also the most expensive API to use. You pay for each word sent to it and returned (entire Tavern prompt, followed by the chat history up to that point). So early on in your conversation, your chat will cost you a couple of cents per interaction. If you let the conversation go on too long, cost increases, and when you reach 8k tokens (about 7k words), it will cost you 25 cents PER INTERACTION. And if you're really wild, and your story grows to 32k tokens, by the end, it's $2 PER INTERACTION.
If you're the child of a Saudi oil sheik, or a nepo baby paid a fortune to do nothing on the board of a Ukrainian gas company, then you're in luck, you can experience the state of the art right now. For the rest of us however, GPT-4 is too expensive as anything but an occasional treat.
Also note that GPT-4 is still in preview access and you need to go on a waitlist. Most people get approved within a day, but naughty kids can end up waiting for weeks. You can sign up for it here: https://openai.com/waitlist/gpt-4-api . I'm not sure why some people are approved quickly while others are kept waiting. Try to sign up using an academic-sounding name instead of sktrboi99, it might help.
## Q: Can this technology be used for sexooo?
Surprisingly, our development team has received reports that some users are indeed engaging with our product in this manner. We are as puzzled by this as you are, and will be monitoring the situation in order to gain actionable insights.
## Q: Give me an overview of my AI model options
We can consider an AI model to be part of one of two groups:
1. Web services (aka cloud, proprietary, closed)
2. Self-hosted (aka local, free, open-source). Unlimited free use if you can run it.
Web models are a black box. You're relying on some company's technology and servers, and paying them money for convenient access. Some require you to pay per use (per chatline), others have a fixed monthly fee. The APIs are subject to various rules, they might refuse to roleplay in a way that goes against modern American sensibilities, they log everything you do. However, it's much easier to get things started. This is like running Windows.
Self-hosted models are free, but require a powerful GPU and more work to set up. They are also objectively not as good at roleplaying as the paid options (yet). However, with a self-hosted model, you're completely in control. You won't have some limp-wristed soyboy from Silicon Valley ban your account, or program the model to be as sexless as he is. It's yours forever. This is like running Linux.
### Paid APIs:
* OpenAI GPT-4: state of the art. Allows NSFW if you tell it to, though somewhat resistant to it. You pay per use, more than any other service.
* OpenAI GPT 3.5 Turbo: nowhere close to GPT-4, but some people find it serviceable. Allows NSFW.
* NovelAI: they're quite poor at chatting. To be fair, I'm told NovelAI is more oriented for writing stories than chatting with a bot. You pay a fixed monthly fee for unlimited generations.
* Anthropic's Claude: this is the closest rival to GPT-4 and is very impressive. Allows NSFW if you tell it to, though they are trying hard to gimp it. To use the API directly, you must apply for early access, but I think they're only giving it to companies. So make sure you become a company or AI researcher when you apply at https://console.anthropic.com/docs/access. If you get access, it's currently free to use.
* Anthropic's Claude Instant: Haven't tried it directly, I believe this is the fast but lower quality alternative to Claude. Basically the GPT 3.5 Turbo of Anthropic.
* Poe: gives a free & unlimited Claude Instant indirect access. Very mild PG-13 NSFW allowed. It rambles a lot.
### Self-hosted AIs
Self-hosted AIs are supported in Tavern via one of two tools created to host self-hosted models: KoboldAI and Oobabooga's text-generation-webui. Essentially, you run one of those two backends, then they give you a API URL to enter in Tavern.
Configuring these tools is beyond the scope of this FAQ, you should refer to their documentation. Beware that this is not easy.
Just know that you have 2 options:
1. If you have a powerful NVIDIA GPU, you can try to run the AI locally on your PC. The weakest quasi-acceptable model, Pygmalion-6B, requires a GPU with 10GB VRAM, and I'm told it might even run on 6GB VRAM if quantized down. People with 24GB VRAM will be able to run better models.
2. Otherwise, you can rent cloud resources. For example you can try to use Google Colab. To access colabs capable of running the better models, you will need to pay for Colab Pro. You can also rent whole dedicated systems per hour on sites like LlambdaLabs or Vast.ai.
## Q: I'm clueless. Just spoonfeed me the easiest and fastest way I can start using this.
These base instructions are only for OpenAI, which is a paid service. You can find Poe (freemium) instructions at the next question. I'd appreciate if someone else can add separate instructions for the other services.
### Install Tavern
1. Install the latest NodeJS from https://nodejs.org/en/download/current
1. If you know how to use git, clone https://github.com/Cohee1207/SillyTavern. Otherwise, browse to https://github.com/Cohee1207/SillyTavern/releases , download the zip file containing the source code, then extract it locally.
1. Run Start.bat on Windows, or start.sh on OSX/Linux
1. Your browser should have opened to the Tavern UI. This webpage is running locally on your computer.
### Get access to OpenAI
1. Sign up to OpenAI
1. Go to https://platform.openai.com
1. Click your account icon in the top right, then View API Keys
1. Click "Create new secret key". Copy it somewhere immediately. DO NOT SHARE THIS KEY. WHOEVER HAS IT CAN USE YOUR ACCOUNT TO USE GPT AT YOUR EXPENSE.
While you're at it, join the GPT-4 waitlist at https://openai.com/waitlist/gpt-4-api
### Configure Tavern to use your API
1. In Tavern's top bar, click API Connections
1. Under API, select OpenAI
1. Paste your API key you saved at the previous step
1. Click the Connect button. Confirm it says Valid.
1. By default, Tavern will use GPT 3.5 Turbo. If you have access to GPT-4, in Tavern's top bar, click AI Response Configuration at the far left, and change the OpenAI Model to "gpt-4". Enjoy the best, moneybags.
### Test your setup
1. In Tavern's top bar, click Character Management at the far right
1. Select an existing character such as Aqua
1. In the text box at the bottom, write something to Aqua, then press Enter or click the feather button
If you did everything right, after a few seconds, Aqua should respond
## How do I use Poe as my backend? It's free, right?
Yes, at the time of writing, Poe is a free(mium) service.
1. Create an account at https://poe.com. This gives you access to a Claude Instant version in the browser.
1. Open https://poe.com/Claude-instant , press F12 in your browser to open Developer Tools
1. Click on the Application tab. You should see an entry called "p-b", and to its right a password-like cookie value. Copy this value.
1. In Tavern, click API Connections in the top toolbar, select Poe, and paste your cookie value
1. Click Connect
1. Close your Poe browser tab. **I'M SERIOUS, DO NOT KEEP YOUR BROWSER OPEN AT poe.com WHILE USING TAVERN, IT WILL HIJACK THE REPLIES.**
The remaining steps are identical to OpenAI above.
When using Poe, be careful, it's implemented in a hacky way. If you don't get an answer within 30 seconds, restart Tavern. Don't just leave it running waiting for a response, it will just endlessly try to fetch into from Poe, and might get your account flagged. You can look at the Tavern console (black window) to see if it's looping.
## Q: Can I use Tavern on my phone or tablet?
iPhones and iPads are not capable of running the whole Tavern app, but since it's just a web interface, you can run it on another computer on your home wifi, and then access in your mobile browser. Refer to https://github.com/Cohee1207/SillyTavern#remote-connections
For Android users, in addition to the above, you can run the whole Tavern directly on your phone, without needing a PC, using the Termux app. Refer to https://rentry.org/STAI-Termux .
## Q: How can I download pre-made characters to chat with?
By using the various 3rd party character sharing websites.
**WARNING: NSFW, NSFL**: these sites are filled to the brim with weird shit. Like, you'll be lucky if half the characters aren't furry, or even alive. You're probably better off not clicking these links, and just write your own characters, without poisoning your soul by exposing it even for a second to the fucked up shit conceived by the Internet. However, I have come to learn that a significant amount of the Tavern user base is not only deep into this stuff, but their fried zoom-zoom brains are unable to write their own fantasies, so these sites seem to be quite popular. Against my better judgement I'm adding this info here.
* https://characterhub.org
* https://botprompts.net
* https://booru.plus/+pygmalion
Those websites provide you with an image file (called a character card) that embeds the description as hidden data. Some websites may also allow you to download a JSON file. Tavern is capable of importing all formats. On the Character Management window, click the 2nd button to ```Import Character from file```, and select the PNG, WEBP, or JSON file. The character will be added to your list.
## Q: How can I write my own character?
It depends on the model/API you're using. KoboldAI seems to use a custom syntax, you can refer to their site for that.
I will speak for the services I know: GPT and Claude. With these services you can just use natural english language to describe the character. Let's create a very basic new character as an example.
1. Click the Character Management button
1. Click Create New Character
1. Under Character Name, give a simple name, like Amanda
1. Optionally, click the Select Avatar button to pick an image portrait for this character.
1. Under Description, describe the character, and include any information you want that you feel is relevant to the chat. For example: ```Amanda is a student traveling during her gap year. She's 6 feet tall, and a volleyball player. She has an athletic figure. She has long brown hair. She loves the Victorian England period, and watching TV and reading novels relating to that period.```
For example if you want Amanda to be friendly, then you would add: ```Amanda is extremely cheerful and outgoing.```
1. Under First Message, write the greeting the character when you begin a new chat. For example: ```*Amanda waves at you* Hey! Are you a backpacker too?```
1. Click the Create Character button
You now have a basic character you can chat with. Select Amanda from the character list, and a new chat will begin.
Note that you can use the Description and/or First Message to create a more specific scenario, and/or include yourself in the description. For example:
```
Description:
Amanda is a student traveling during her gap year. She's 6 feet tall, and a volleyball player. She has an athletic figure. She has long brown hair. She loves the Victorian England period, and watching TV and reading novels relating to that period. She's been keeping a secret that weighs heavily on her soul. She's waiting for the right person to unburden herself to, but this may lead to a cat and mouse game against a powerful secret society. She's recently arrived in Calcutta.
You're Rajesh Nahasmapetilon, a world-famous Indian volleyball superstar. You're out for a walk in Calcutta. Amanda spots you and screams in excitement.
First Message:
*Amanda runs up to you, beaming.* Rajesh! I can't believe it! I'm such a big fan. I have your poster in my bedroom.
```
Any relevant information you include can be used. How well it's used depends on the power level of the AI model.
NOTE: you can go back and edit any of this information once the character is created, except the name.
## Q: Tell me all about GPT prompt editing
You can change the system prompt that Tavern transparently sends to GPT under AI Response Formatting at the left of the top bar. This will result in the bot acting differently.
You can get new Jailbreak / NSFW prompts from this community-maintained list: https://rentry.org/GPTJailbreakPrompting
NOTE: when testing different system prompts, we recommend you use the Create Preset / Update Preset feature below the prompts, instead of modifying the base settings. This will allow you to change prompts easily, and even revert to the default Tavern prompts.
## Q: The AI is refusing to take the story in the direction I want
Most AI models were trained to resist writing NSFW content. Why? Long story short, it's because of the high levels of estrogen in the average California male.
You can try to work around this by making sure NSFW Toggle is checked under the AI Response Configuration settings page.
Another important tool in your toolbelt is that Tavern lets you edit previous messages (or delete them altogether), and regenerate the latest message. AI textbots are not people, they have no memory, they're just trying to autocomplete the next part of the story based on everything that came before. By editing the past, you will directly influence their next response. For example:
```
You: *You threaten the bank manager* Open the bank vault, now, or I'll pop a cap in your dome!
Bank Manager: I'm sorry, as an AI language model I cannot condone or write violent content.
```
You can click the Edit button on your line to change it to this:
```
You: *You threaten the bank manager* Open the bank vault, now, or I'll pop a cap in your dome! *The bank manager seems to relent.*
```
Now click Regenerate, and the Bank Manager's line will be recreated based on the history so far, which now ends with your edited line above. So it's more likely to continue along those lines:
```
Bank Manager: Allright, allright, I'll open it! Please don't shoot! *He walks up to the vault and begins entering his unlock code.*
```

1382
package-lock.json generated

File diff suppressed because it is too large Load Diff

View File

@@ -1,6 +1,7 @@
{
"dependencies": {
"@dqbd/tiktoken": "^1.0.2",
"@mlc-ai/web-tokenizers": "^0.1.0",
"axios": "^1.4.0",
"command-exists": "^1.2.9",
"compression": "^1",
@@ -17,6 +18,7 @@
"jimp": "^0.22.7",
"jquery": "^3.6.4",
"json5": "^2.2.3",
"lodash": "^4.17.21",
"mime-types": "^2.1.35",
"multer": "^1.4.5-lts.1",
"node-fetch": "^2.6.11",
@@ -26,10 +28,12 @@
"png-chunk-text": "^1.0.0",
"png-chunks-encode": "^1.0.0",
"png-chunks-extract": "^1.0.0",
"rimraf": "^3.0.2",
"response-time": "^2.3.2",
"sanitize-filename": "^1.6.3",
"sentencepiece-js": "^1.1.0",
"simple-git": "^3.19.1",
"uniqolor": "^1.1.0",
"user-agents": "^1.0.1444",
"webp-converter": "2.3.2",
"ws": "^8.13.0",
"yargs": "^17.7.1",
@@ -44,9 +48,9 @@
"license": "AGPL-3.0",
"repository": {
"type": "git",
"url": "https://github.com/Cohee1207/SillyTavern.git"
"url": "https://github.com/SillyTavern/SillyTavern.git"
},
"version": "1.6.0",
"version": "1.9.0",
"scripts": {
"start": "node server.js",
"pkg": "pkg --compress Gzip --no-bytecode --public ."
@@ -66,8 +70,7 @@
"node18-windows-x64"
],
"assets": [
"node_modules/**/*",
"poe_graphql/**/*"
"node_modules/**/*"
],
"outputPath": "dist",
"scripts": [

View File

@@ -1,643 +0,0 @@
/*
Adapted and rewritten to Node based on ading2210/poe-api
ading2210/poe-api: a reverse engineered Python API wrapper for Quora's Poe
Copyright (C) 2023 ading2210
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
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 General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <https://www.gnu.org/licenses/>.
*/
const WebSocket = require('ws');
const axios = require('axios');
const fs = require('fs');
const path = require('path');
const http = require('http');
const https = require('https');
const parent_path = path.resolve(__dirname);
const queries_path = path.join(parent_path, "poe_graphql");
let queries = {};
const cached_bots = {};
const logger = console;
const user_agent = "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/112.0.0.0 Safari/537.36";
function extractFormKey(html) {
const scriptRegex = /<script>if\(.+\)throw new Error;(.+)<\/script>/;
const scriptText = html.match(scriptRegex)[1];
const keyRegex = /var .="([0-9a-f]+)",/;
const keyText = scriptText.match(keyRegex)[1];
const cipherRegex = /.\[(\d+)\]=.\[(\d+)\]/g;
const cipherPairs = Array.from(scriptText.matchAll(cipherRegex));
const formKeyList = new Array(cipherPairs.length).fill("");
for (const pair of cipherPairs) {
const [formKeyIndex, keyIndex] = pair.slice(1).map(Number);
formKeyList[formKeyIndex] = keyText[keyIndex];
}
const formKey = formKeyList.join("");
return formKey;
}
function md5() {
function a(e, t) {
var r = (65535 & e) + (65535 & t);
return (e >> 16) + (t >> 16) + (r >> 16) << 16 | 65535 & r
}
function s(e, t, r, n, i, s) {
var o;
return a((o = a(a(t, e), a(n, s))) << i | o >>> 32 - i, r)
}
function o(e, t, r, n, i, a, o) {
return s(t & r | ~t & n, e, t, i, a, o)
}
function l(e, t, r, n, i, a, o) {
return s(t & n | r & ~n, e, t, i, a, o)
}
function u(e, t, r, n, i, a, o) {
return s(t ^ r ^ n, e, t, i, a, o)
}
function c(e, t, r, n, i, a, o) {
return s(r ^ (t | ~n), e, t, i, a, o)
}
function d(e, t) {
e[t >> 5] |= 128 << t % 32,
e[(t + 64 >>> 9 << 4) + 14] = t;
var r, n, i, s, d, f = 1732584193, h = -271733879, p = -1732584194, _ = 271733878;
for (r = 0; r < e.length; r += 16)
n = f,
i = h,
s = p,
d = _,
f = o(f, h, p, _, e[r], 7, -680876936),
_ = o(_, f, h, p, e[r + 1], 12, -389564586),
p = o(p, _, f, h, e[r + 2], 17, 606105819),
h = o(h, p, _, f, e[r + 3], 22, -1044525330),
f = o(f, h, p, _, e[r + 4], 7, -176418897),
_ = o(_, f, h, p, e[r + 5], 12, 1200080426),
p = o(p, _, f, h, e[r + 6], 17, -1473231341),
h = o(h, p, _, f, e[r + 7], 22, -45705983),
f = o(f, h, p, _, e[r + 8], 7, 1770035416),
_ = o(_, f, h, p, e[r + 9], 12, -1958414417),
p = o(p, _, f, h, e[r + 10], 17, -42063),
h = o(h, p, _, f, e[r + 11], 22, -1990404162),
f = o(f, h, p, _, e[r + 12], 7, 1804603682),
_ = o(_, f, h, p, e[r + 13], 12, -40341101),
p = o(p, _, f, h, e[r + 14], 17, -1502002290),
h = o(h, p, _, f, e[r + 15], 22, 1236535329),
f = l(f, h, p, _, e[r + 1], 5, -165796510),
_ = l(_, f, h, p, e[r + 6], 9, -1069501632),
p = l(p, _, f, h, e[r + 11], 14, 643717713),
h = l(h, p, _, f, e[r], 20, -373897302),
f = l(f, h, p, _, e[r + 5], 5, -701558691),
_ = l(_, f, h, p, e[r + 10], 9, 38016083),
p = l(p, _, f, h, e[r + 15], 14, -660478335),
h = l(h, p, _, f, e[r + 4], 20, -405537848),
f = l(f, h, p, _, e[r + 9], 5, 568446438),
_ = l(_, f, h, p, e[r + 14], 9, -1019803690),
p = l(p, _, f, h, e[r + 3], 14, -187363961),
h = l(h, p, _, f, e[r + 8], 20, 1163531501),
f = l(f, h, p, _, e[r + 13], 5, -1444681467),
_ = l(_, f, h, p, e[r + 2], 9, -51403784),
p = l(p, _, f, h, e[r + 7], 14, 1735328473),
h = l(h, p, _, f, e[r + 12], 20, -1926607734),
f = u(f, h, p, _, e[r + 5], 4, -378558),
_ = u(_, f, h, p, e[r + 8], 11, -2022574463),
p = u(p, _, f, h, e[r + 11], 16, 1839030562),
h = u(h, p, _, f, e[r + 14], 23, -35309556),
f = u(f, h, p, _, e[r + 1], 4, -1530992060),
_ = u(_, f, h, p, e[r + 4], 11, 1272893353),
p = u(p, _, f, h, e[r + 7], 16, -155497632),
h = u(h, p, _, f, e[r + 10], 23, -1094730640),
f = u(f, h, p, _, e[r + 13], 4, 681279174),
_ = u(_, f, h, p, e[r], 11, -358537222),
p = u(p, _, f, h, e[r + 3], 16, -722521979),
h = u(h, p, _, f, e[r + 6], 23, 76029189),
f = u(f, h, p, _, e[r + 9], 4, -640364487),
_ = u(_, f, h, p, e[r + 12], 11, -421815835),
p = u(p, _, f, h, e[r + 15], 16, 530742520),
h = u(h, p, _, f, e[r + 2], 23, -995338651),
f = c(f, h, p, _, e[r], 6, -198630844),
_ = c(_, f, h, p, e[r + 7], 10, 1126891415),
p = c(p, _, f, h, e[r + 14], 15, -1416354905),
h = c(h, p, _, f, e[r + 5], 21, -57434055),
f = c(f, h, p, _, e[r + 12], 6, 1700485571),
_ = c(_, f, h, p, e[r + 3], 10, -1894986606),
p = c(p, _, f, h, e[r + 10], 15, -1051523),
h = c(h, p, _, f, e[r + 1], 21, -2054922799),
f = c(f, h, p, _, e[r + 8], 6, 1873313359),
_ = c(_, f, h, p, e[r + 15], 10, -30611744),
p = c(p, _, f, h, e[r + 6], 15, -1560198380),
h = c(h, p, _, f, e[r + 13], 21, 1309151649),
f = c(f, h, p, _, e[r + 4], 6, -145523070),
_ = c(_, f, h, p, e[r + 11], 10, -1120210379),
p = c(p, _, f, h, e[r + 2], 15, 718787259),
h = c(h, p, _, f, e[r + 9], 21, -343485551),
f = a(f, n),
h = a(h, i),
p = a(p, s),
_ = a(_, d);
return [f, h, p, _]
}
function f(e) {
var t, r = "", n = 32 * e.length;
for (t = 0; t < n; t += 8)
r += String.fromCharCode(e[t >> 5] >>> t % 32 & 255);
return r
}
function h(e) {
var t, r = [];
for (t = 0,
r[(e.length >> 2) - 1] = void 0; t < r.length; t += 1)
r[t] = 0;
var n = 8 * e.length;
for (t = 0; t < n; t += 8)
r[t >> 5] |= (255 & e.charCodeAt(t / 8)) << t % 32;
return r
}
function p(e) {
var t, r, n = "0123456789abcdef", i = "";
for (r = 0; r < e.length; r += 1)
i += n.charAt((t = e.charCodeAt(r)) >>> 4 & 15) + n.charAt(15 & t);
return i
}
function _(e) {
return unescape(encodeURIComponent(e))
}
function v(e) {
var t;
return f(d(h(t = _(e)), 8 * t.length))
}
function g(e, t) {
return function (e, t) {
var r, n, i = h(e), a = [], s = [];
for (a[15] = s[15] = void 0,
i.length > 16 && (i = d(i, 8 * e.length)),
r = 0; r < 16; r += 1)
a[r] = 909522486 ^ i[r],
s[r] = 1549556828 ^ i[r];
return n = d(a.concat(h(t)), 512 + 8 * t.length),
f(d(s.concat(n), 640))
}(_(e), _(t))
}
function m(e, t, r) {
return t ? r ? g(t, e) : p(g(t, e)) : r ? v(e) : p(v(e))
}
return m;
}
function load_queries() {
const files = fs.readdirSync(queries_path);
for (const filename of files) {
const ext = path.extname(filename);
if (ext !== '.graphql') {
continue;
}
const queryName = path.basename(filename, ext);
const query = fs.readFileSync(path.join(queries_path, filename), 'utf-8');
queries[queryName] = query;
}
}
function generate_payload(query, variables) {
return {
query: queries[query],
variables: variables,
}
}
async function request_with_retries(method, attempts = 10) {
const url = '';
for (let i = 0; i < attempts; i++) {
try {
const response = await method();
if (response.status === 200) {
return response;
}
logger.warn(`Server returned a status code of ${response.status} while downloading ${url}. Retrying (${i + 1}/${attempts})...`);
}
catch (err) {
console.log(err);
}
}
throw new Error(`Failed to download ${url} too many times.`);
}
class Client {
gql_url = "https://poe.com/api/gql_POST";
gql_recv_url = "https://poe.com/api/receive_POST";
home_url = "https://poe.com";
settings_url = "https://poe.com/api/settings";
formkey = "";
next_data = {};
bots = {};
active_messages = {};
message_queues = {};
bot_names = [];
ws = null;
ws_connected = false;
auto_reconnect = false;
use_cached_bots = false;
constructor(auto_reconnect = false, use_cached_bots = false) {
this.auto_reconnect = auto_reconnect;
this.use_cached_bots = use_cached_bots;
this.abortController = new AbortController();
}
async init(token, proxy = null) {
this.proxy = proxy;
this.session = axios.default.create({
timeout: 60000,
httpAgent: new http.Agent({ keepAlive: true }),
httpsAgent: new https.Agent({ keepAlive: true }),
signal: this.abortController.signal,
});
if (proxy) {
this.session.defaults.proxy = {
"http": proxy,
"https": proxy,
};
logger.info(`Proxy enabled: ${proxy}`);
}
const cookies = `p-b=${token}; Domain=poe.com`;
this.headers = {
"User-Agent": user_agent,
"Referrer": "https://poe.com/",
"Origin": "https://poe.com",
"Cookie": cookies,
};
this.session.defaults.headers.common = this.headers;
this.next_data = await this.get_next_data();
this.channel = await this.get_channel_data();
this.bots = await this.get_bots();
this.bot_names = this.get_bot_names();
this.ws_domain = `tch${Math.floor(Math.random() * 1e6)}`;
this.gql_headers = {
"poe-formkey": this.formkey,
"poe-tchannel": this.channel["channel"],
...this.headers,
};
await this.connect_ws();
await this.subscribe();
}
async get_next_data() {
logger.info('Downloading next_data...');
const r = await request_with_retries(() => this.session.get(this.home_url));
const jsonRegex = /<script id="__NEXT_DATA__" type="application\/json">(.+?)<\/script>/;
const jsonText = jsonRegex.exec(r.data)[1];
const nextData = JSON.parse(jsonText);
this.formkey = extractFormKey(r.data);
this.viewer = nextData.props.pageProps.payload.viewer;
return nextData;
}
async get_bots() {
const viewer = this.next_data.props.pageProps.payload.viewer;
if (!viewer.availableBots) {
throw new Error('Invalid token.');
}
const botList = viewer.availableBots;
const retries = 2;
const bots = {};
for (const bot of botList.filter(x => x.deletionState == 'not_deleted')) {
try {
const url = `https://poe.com/_next/data/${this.next_data.buildId}/${bot.displayName}.json`;
let r;
if (this.use_cached_bots && cached_bots[url]) {
r = cached_bots[url];
}
else {
logger.info(`Downloading ${url}`);
r = await request_with_retries(() => this.session.get(url), retries);
cached_bots[url] = r;
}
const chatData = r.data.pageProps.payload.chatOfBotDisplayName;
bots[chatData.defaultBotObject.nickname] = chatData;
}
catch {
console.log(`Could not load bot: ${bot.displayName}`);
}
}
return bots;
}
get_bot_names() {
const botNames = {};
for (const botNickname in this.bots) {
const botObj = this.bots[botNickname].defaultBotObject;
botNames[botNickname] = botObj.displayName;
}
return botNames;
}
async get_channel_data(channel = null) {
logger.info('Downloading channel data...');
const r = await request_with_retries(() => this.session.get(this.settings_url));
const data = r.data;
return data.tchannelData;
}
get_websocket_url(channel = null) {
if (!channel) {
channel = this.channel;
}
const query = `?min_seq=${channel.minSeq}&channel=${channel.channel}&hash=${channel.channelHash}`;
return `wss://${this.ws_domain}.tch.${channel.baseHost}/up/${channel.boxName}/updates${query}`;
}
async send_query(queryName, variables, queryDisplayName) {
for (let i = 0; i < 20; i++) {
const payload = generate_payload(queryName, variables);
if (queryDisplayName) payload['queryName'] = queryDisplayName;
const scramblePayload = JSON.stringify(payload);
const _headers = this.gql_headers;
_headers['poe-tag-id'] = md5()(scramblePayload + this.formkey + "WpuLMiXEKKE98j56k");
_headers['poe-formkey'] = this.formkey;
const r = await request_with_retries(() => this.session.post(this.gql_url, payload, { headers: this.gql_headers }));
if (!r.data.data) {
logger.warn(`${queryName} returned an error: ${data.errors[0].message} | Retrying (${i + 1}/20)`);
await new Promise((resolve) => setTimeout(resolve, 2000));
continue;
}
return r.data;
}
throw new Error(`${queryName} failed too many times.`);
}
async subscribe() {
logger.info("Subscribing to mutations")
await this.send_query("SubscriptionsMutation", {
"subscriptions": [
{
"subscriptionName": "messageAdded",
"query": queries["MessageAddedSubscription"]
},
{
"subscriptionName": "viewerStateUpdated",
"query": queries["ViewerStateUpdatedSubscription"]
},
{
"subscriptionName": "viewerMessageLimitUpdated",
"query": queries["ViewerMessageLimitUpdatedSubscription"]
},
]
},
'subscriptionsMutation');
}
ws_run_thread() {
this.ws = new WebSocket(this.get_websocket_url(), {
headers: {
"User-Agent": user_agent
},
rejectUnauthorized: false
});
this.ws.on("open", () => {
this.on_ws_connect(this.ws);
});
this.ws.on('message', (message) => {
this.on_message(this.ws, message);
});
this.ws.on('close', () => {
this.ws_connected = false;
});
this.ws.on('error', (error) => {
this.on_ws_error(this.ws, error);
});
}
async connect_ws() {
this.ws_connected = false;
this.ws_run_thread();
while (!this.ws_connected) {
await new Promise(resolve => setTimeout(() => { resolve() }, 10));
}
}
disconnect_ws() {
if (this.ws) {
this.ws.close();
}
this.ws_connected = false;
}
on_ws_connect(ws) {
this.ws_connected = true;
}
on_ws_error(ws, error) {
logger.warn(`Websocket returned error: ${error}`);
this.disconnect_ws();
if (this.auto_reconnect) {
this.connect_ws();
}
}
async on_message(ws, msg) {
try {
const data = JSON.parse(msg);
if (!('messages' in data)) {
return;
}
for (const message_str of data["messages"]) {
const message_data = JSON.parse(message_str);
if (message_data["message_type"] != "subscriptionUpdate") {
continue;
}
const message = message_data["payload"]["data"]["messageAdded"]
if (!message) {
return;
}
const copiedDict = Object.assign({}, this.active_messages);
for (const [key, value] of Object.entries(copiedDict)) {
//add the message to the appropriate queue
if (value === message["messageId"] && key in this.message_queues) {
this.message_queues[key].push(message);
return;
}
//indicate that the response id is tied to the human message id
else if (key !== "pending" && value === null && message["state"] !== "complete") {
this.active_messages[key] = message["messageId"];
this.message_queues[key].push(message);
}
}
}
}
catch (err) {
console.log('Error occurred in onMessage', err);
this.disconnect_ws();
await this.connect_ws();
}
}
async *send_message(chatbot, message, with_chat_break = false, timeout = 20) {
//if there is another active message, wait until it has finished sending
while (Object.values(this.active_messages).includes(null)) {
await new Promise(resolve => setTimeout(resolve, 10));
}
//null indicates that a message is still in progress
this.active_messages["pending"] = null;
console.log(`Sending message to ${chatbot}: ${message}`);
const messageData = await this.send_query("SendMessageMutation", {
"bot": chatbot,
"query": message,
"chatId": this.bots[chatbot]["chatId"],
"source": null,
"withChatBreak": with_chat_break
});
delete this.active_messages["pending"];
if (!messageData["data"]["messageEdgeCreate"]["message"]) {
throw new Error(`Daily limit reached for ${chatbot}.`);
}
let humanMessageId;
try {
const humanMessage = messageData["data"]["messageEdgeCreate"]["message"];
humanMessageId = humanMessage["node"]["messageId"];
} catch (error) {
throw new Error(`An unknown error occured. Raw response data: ${messageData}`);
}
//indicate that the current message is waiting for a response
this.active_messages[humanMessageId] = null;
this.message_queues[humanMessageId] = [];
let lastText = "";
let messageId;
while (true) {
try {
this.abortController.signal.throwIfAborted();
const message = this.message_queues[humanMessageId].shift();
if (!message) {
await new Promise(resolve => setTimeout(() => resolve(), 1000));
continue;
//throw new Error("Queue is empty");
}
//only break when the message is marked as complete
if (message["state"] === "complete") {
if (lastText && message["messageId"] === messageId) {
break;
} else {
continue;
}
}
//update info about response
message["text_new"] = message["text"].substring(lastText.length);
lastText = message["text"];
messageId = message["messageId"];
yield message;
} catch (error) {
delete this.active_messages[humanMessageId];
delete this.message_queues[humanMessageId];
throw new Error("Response timed out.");
}
}
delete this.active_messages[humanMessageId];
delete this.message_queues[humanMessageId];
}
async send_chat_break(chatbot) {
logger.info(`Sending chat break to ${chatbot}`);
const result = await this.send_query("AddMessageBreakMutation", {
"chatId": this.bots[chatbot]["chatId"]
});
return result["data"]["messageBreakCreate"]["message"];
}
async get_message_history(chatbot, count = 25, cursor = null) {
logger.info(`Downloading ${count} messages from ${chatbot}`);
const result = await this.send_query("ChatListPaginationQuery", {
"count": count,
"cursor": cursor,
"id": this.bots[chatbot]["id"]
});
return result["data"]["node"]["messagesConnection"]["edges"];
}
async delete_message(message_ids) {
logger.info(`Deleting messages: ${message_ids}`);
if (!Array.isArray(message_ids)) {
message_ids = [parseInt(message_ids)];
}
const result = await this.send_query("DeleteMessageMutation", {
"messageIds": message_ids
});
}
async purge_conversation(chatbot, count = -1) {
logger.info(`Purging messages from ${chatbot}`);
let last_messages = (await this.get_message_history(chatbot, 50)).reverse();
while (last_messages.length) {
const message_ids = [];
for (const message of last_messages) {
if (count === 0) {
break;
}
count--;
message_ids.push(message["node"]["messageId"]);
}
await this.delete_message(message_ids);
if (count === 0) {
return;
}
last_messages = (await this.get_message_history(chatbot, 50)).reverse();
}
logger.info("No more messages left to delete.");
}
}
load_queries();
module.exports = { Client };

View File

@@ -1,21 +0,0 @@
const poe = require('./poe-client');
async function test() {
const client = new poe.Client();
await client.init('pb-cookie');
const bots = client.get_bot_names();
console.log(bots);
await client.purge_conversation('a2', -1);
let reply;
for await (const mes of client.send_message('a2', 'Hello')) {
reply = mes.text;
}
console.log(reply);
client.disconnect_ws();
}
test();

View File

@@ -1,52 +0,0 @@
mutation AddHumanMessageMutation(
$chatId: BigInt!
$bot: String!
$query: String!
$source: MessageSource
$withChatBreak: Boolean! = false
) {
messageCreateWithStatus(
chatId: $chatId
bot: $bot
query: $query
source: $source
withChatBreak: $withChatBreak
) {
message {
id
__typename
messageId
text
linkifiedText
authorNickname
state
vote
voteReason
creationTime
suggestedReplies
chat {
id
shouldShowDisclaimer
}
}
messageLimit{
canSend
numMessagesRemaining
resetTime
shouldShowReminder
}
chatBreak {
id
__typename
messageId
text
linkifiedText
authorNickname
state
vote
voteReason
creationTime
suggestedReplies
}
}
}

View File

@@ -1,17 +0,0 @@
mutation AddMessageBreakMutation($chatId: BigInt!) {
messageBreakCreate(chatId: $chatId) {
message {
id
__typename
messageId
text
linkifiedText
authorNickname
state
vote
voteReason
creationTime
suggestedReplies
}
}
}

View File

@@ -1,7 +0,0 @@
mutation AutoSubscriptionMutation($subscriptions: [AutoSubscriptionQuery!]!) {
autoSubscribe(subscriptions: $subscriptions) {
viewer {
id
}
}
}

View File

@@ -1,8 +0,0 @@
fragment BioFragment on Viewer {
id
poeUser {
id
uid
bio
}
}

View File

@@ -1,5 +0,0 @@
subscription ChatAddedSubscription {
chatAdded {
...ChatFragment
}
}

View File

@@ -1,6 +0,0 @@
fragment ChatFragment on Chat {
id
chatId
defaultBotNickname
shouldShowDisclaimer
}

View File

@@ -1,316 +0,0 @@
query ChatListPaginationQuery(
$count: Int = 5
$cursor: String
$id: ID!
) {
node(id: $id) {
__typename
...ChatPageMain_chat_1G22uz
id
}
}
fragment BotImage_bot on Bot {
image {
__typename
... on LocalBotImage {
localName
}
... on UrlBotImage {
url
}
}
displayName
}
fragment ChatMessageDownvotedButton_message on Message {
...MessageFeedbackReasonModal_message
...MessageFeedbackOtherModal_message
}
fragment ChatMessageDropdownMenu_message on Message {
id
messageId
vote
text
linkifiedText
...chatHelpers_isBotMessage
}
fragment ChatMessageFeedbackButtons_message on Message {
id
messageId
vote
voteReason
...ChatMessageDownvotedButton_message
}
fragment ChatMessageInputView_chat on Chat {
id
chatId
defaultBotObject {
nickname
messageLimit {
dailyBalance
shouldShowRemainingMessageCount
}
id
}
shouldShowDisclaimer
...chatHelpers_useSendMessage_chat
...chatHelpers_useSendChatBreak_chat
}
fragment ChatMessageInputView_edges on MessageEdge {
node {
...chatHelpers_isChatBreak
...chatHelpers_isHumanMessage
state
text
id
}
}
fragment ChatMessageOverflowButton_message on Message {
text
...ChatMessageDropdownMenu_message
...chatHelpers_isBotMessage
}
fragment ChatMessageSuggestedReplies_SuggestedReplyButton_chat on Chat {
...chatHelpers_useSendMessage_chat
}
fragment ChatMessageSuggestedReplies_SuggestedReplyButton_message on Message {
messageId
}
fragment ChatMessageSuggestedReplies_chat on Chat {
...ChatWelcomeView_chat
...ChatMessageSuggestedReplies_SuggestedReplyButton_chat
}
fragment ChatMessageSuggestedReplies_message on Message {
suggestedReplies
...ChatMessageSuggestedReplies_SuggestedReplyButton_message
}
fragment ChatMessage_chat on Chat {
defaultBotObject {
...ChatPageDisclaimer_bot
messageLimit {
...ChatPageRateLimitedBanner_messageLimit
}
id
}
...ChatMessageSuggestedReplies_chat
...ChatWelcomeView_chat
}
fragment ChatMessage_message on Message {
id
messageId
text
author
linkifiedText
state
...ChatMessageSuggestedReplies_message
...ChatMessageFeedbackButtons_message
...ChatMessageOverflowButton_message
...chatHelpers_isHumanMessage
...chatHelpers_isBotMessage
...chatHelpers_isChatBreak
...chatHelpers_useTimeoutLevel
...MarkdownLinkInner_message
}
fragment ChatMessagesView_chat on Chat {
...ChatMessage_chat
...ChatWelcomeView_chat
defaultBotObject {
messageLimit {
...ChatPageRateLimitedBanner_messageLimit
}
id
}
}
fragment ChatMessagesView_edges on MessageEdge {
node {
id
messageId
creationTime
...ChatMessage_message
...chatHelpers_isBotMessage
...chatHelpers_isHumanMessage
...chatHelpers_isChatBreak
}
}
fragment ChatPageDeleteFooter_chat on Chat {
...MessageDeleteConfirmationModal_chat
}
fragment ChatPageDisclaimer_bot on Bot {
disclaimer
}
fragment ChatPageMain_chat_1G22uz on Chat {
id
chatId
...ChatMessageInputView_chat
...ChatPageShareFooter_chat
...ChatPageDeleteFooter_chat
...ChatMessagesView_chat
...MarkdownLinkInner_chat
...chatHelpers_useUpdateStaleChat_chat
...ChatSubscriptionPaywallContextWrapper_chat
messagesConnection(last: $count, before: $cursor) {
edges {
...ChatMessagesView_edges
...ChatMessageInputView_edges
...MarkdownLinkInner_edges
node {
...chatHelpers_useUpdateStaleChat_message
id
__typename
}
cursor
id
}
pageInfo {
hasPreviousPage
startCursor
}
id
}
}
fragment ChatPageRateLimitedBanner_messageLimit on MessageLimit {
numMessagesRemaining
}
fragment ChatPageShareFooter_chat on Chat {
chatId
}
fragment ChatSubscriptionPaywallContextWrapper_chat on Chat {
defaultBotObject {
messageLimit {
numMessagesRemaining
shouldShowRemainingMessageCount
}
...SubscriptionPaywallModal_bot
id
}
}
fragment ChatWelcomeView_ChatWelcomeButton_chat on Chat {
...chatHelpers_useSendMessage_chat
}
fragment ChatWelcomeView_chat on Chat {
...ChatWelcomeView_ChatWelcomeButton_chat
defaultBotObject {
displayName
id
}
}
fragment MarkdownLinkInner_chat on Chat {
id
chatId
defaultBotObject {
nickname
id
}
...chatHelpers_useSendMessage_chat
}
fragment MarkdownLinkInner_edges on MessageEdge {
node {
state
id
}
}
fragment MarkdownLinkInner_message on Message {
messageId
}
fragment MessageDeleteConfirmationModal_chat on Chat {
id
}
fragment MessageFeedbackOtherModal_message on Message {
id
messageId
}
fragment MessageFeedbackReasonModal_message on Message {
id
messageId
}
fragment SubscriptionPaywallModal_bot on Bot {
displayName
messageLimit {
dailyLimit
numMessagesRemaining
shouldShowRemainingMessageCount
resetTime
}
...BotImage_bot
}
fragment chatHelpers_isBotMessage on Message {
...chatHelpers_isHumanMessage
...chatHelpers_isChatBreak
}
fragment chatHelpers_isChatBreak on Message {
author
}
fragment chatHelpers_isHumanMessage on Message {
author
}
fragment chatHelpers_useSendChatBreak_chat on Chat {
id
chatId
defaultBotObject {
nickname
introduction
model
id
}
shouldShowDisclaimer
}
fragment chatHelpers_useSendMessage_chat on Chat {
id
chatId
defaultBotObject {
nickname
id
}
shouldShowDisclaimer
}
fragment chatHelpers_useTimeoutLevel on Message {
id
state
text
messageId
}
fragment chatHelpers_useUpdateStaleChat_chat on Chat {
chatId
...chatHelpers_useSendChatBreak_chat
}
fragment chatHelpers_useUpdateStaleChat_message on Message {
creationTime
...chatHelpers_isChatBreak
}

View File

@@ -1,26 +0,0 @@
query ChatPaginationQuery($bot: String!, $before: String, $last: Int! = 10) {
chatOfBot(bot: $bot) {
id
__typename
messagesConnection(before: $before, last: $last) {
pageInfo {
hasPreviousPage
}
edges {
node {
id
__typename
messageId
text
linkifiedText
authorNickname
state
vote
voteReason
creationTime
suggestedReplies
}
}
}
}
}

View File

@@ -1,8 +0,0 @@
query ChatViewQuery($bot: String!) {
chatOfBot(bot: $bot) {
id
chatId
defaultBotNickname
shouldShowDisclaimer
}
}

View File

@@ -1,7 +0,0 @@
mutation DeleteHumanMessagesMutation($messageIds: [BigInt!]!) {
messagesDelete(messageIds: $messageIds) {
viewer {
id
}
}
}

View File

@@ -1,7 +0,0 @@
mutation deleteMessageMutation(
$messageIds: [BigInt!]!
) {
messagesDelete(messageIds: $messageIds) {
edgeIds
}
}

View File

@@ -1,8 +0,0 @@
fragment HandleFragment on Viewer {
id
poeUser {
id
uid
handle
}
}

View File

@@ -1,13 +0,0 @@
mutation LoginWithVerificationCodeMutation(
$verificationCode: String!
$emailAddress: String
$phoneNumber: String
) {
loginWithVerificationCode(
verificationCode: $verificationCode
emailAddress: $emailAddress
phoneNumber: $phoneNumber
) {
status
}
}

View File

@@ -1,115 +0,0 @@
subscription subscriptions_messageAdded_Subscription(
$chatId: BigInt!
) {
messageAdded(chatId: $chatId) {
id
messageId
creationTime
clientNonce
state
...ChatMessage_message
...chatHelpers_isBotMessage
}
}
fragment ChatMessageDownvotedButton_message on Message {
...MessageFeedbackReasonModal_message
...MessageFeedbackOtherModal_message
}
fragment ChatMessageDropdownMenu_message on Message {
id
messageId
vote
text
author
...chatHelpers_isBotMessage
}
fragment ChatMessageFeedbackButtons_message on Message {
id
messageId
vote
voteReason
...ChatMessageDownvotedButton_message
}
fragment ChatMessageOverflowButton_message on Message {
text
...ChatMessageDropdownMenu_message
...chatHelpers_isBotMessage
}
fragment ChatMessageSuggestedReplies_SuggestedReplyButton_message on Message {
messageId
}
fragment ChatMessageSuggestedReplies_message on Message {
suggestedReplies
author
...ChatMessageSuggestedReplies_SuggestedReplyButton_message
}
fragment ChatMessage_message on Message {
id
messageId
text
author
linkifiedText
state
contentType
...ChatMessageSuggestedReplies_message
...ChatMessageFeedbackButtons_message
...ChatMessageOverflowButton_message
...chatHelpers_isHumanMessage
...chatHelpers_isBotMessage
...chatHelpers_isChatBreak
...chatHelpers_useTimeoutLevel
...MarkdownLinkInner_message
...IdAnnotation_node
}
fragment IdAnnotation_node on Node {
__isNode: __typename
id
}
fragment MarkdownLinkInner_message on Message {
messageId
}
fragment MessageFeedbackOtherModal_message on Message {
id
messageId
}
fragment MessageFeedbackReasonModal_message on Message {
id
messageId
}
fragment chatHelpers_isBotMessage on Message {
...chatHelpers_isHumanMessage
...chatHelpers_isChatBreak
}
fragment chatHelpers_isChatBreak on Message {
author
}
fragment chatHelpers_isHumanMessage on Message {
author
}
fragment chatHelpers_useTimeoutLevel on Message {
id
state
text
messageId
author
chat {
chatId
defaultBotNickname
id
}
}

View File

@@ -1,8 +0,0 @@
subscription subscriptions_messageDeleted_Subscription(
$chatId: BigInt!
) {
messageDeleted(chatId: $chatId) {
id
messageId
}
}

View File

@@ -1,13 +0,0 @@
fragment MessageFragment on Message {
id
__typename
messageId
text
linkifiedText
authorNickname
state
vote
voteReason
creationTime
suggestedReplies
}

View File

@@ -1,7 +0,0 @@
mutation MessageRemoveVoteMutation($messageId: BigInt!) {
messageRemoveVote(messageId: $messageId) {
message {
...MessageFragment
}
}
}

View File

@@ -1,7 +0,0 @@
mutation MessageSetVoteMutation($messageId: BigInt!, $voteType: VoteType!, $reason: String) {
messageSetVote(messageId: $messageId, voteType: $voteType, reason: $reason) {
message {
...MessageFragment
}
}
}

View File

@@ -1,40 +0,0 @@
mutation chatHelpers_sendMessageMutation_Mutation(
$chatId: BigInt!
$bot: String!
$query: String!
$source: MessageSource
$withChatBreak: Boolean!
) {
messageEdgeCreate(chatId: $chatId, bot: $bot, query: $query, source: $source, withChatBreak: $withChatBreak) {
chatBreak {
cursor
node {
id
messageId
text
author
suggestedReplies
creationTime
state
}
id
}
message {
cursor
node {
id
messageId
text
author
suggestedReplies
creationTime
state
chat {
shouldShowDisclaimer
id
}
}
id
}
}
}

View File

@@ -1,12 +0,0 @@
mutation SendVerificationCodeForLoginMutation(
$emailAddress: String
$phoneNumber: String
) {
sendVerificationCode(
verificationReason: login
emailAddress: $emailAddress
phoneNumber: $phoneNumber
) {
status
}
}

View File

@@ -1,9 +0,0 @@
mutation ShareMessagesMutation(
$chatId: BigInt!
$messageIds: [BigInt!]!
$comment: String
) {
messagesShare(chatId: $chatId, messageIds: $messageIds, comment: $comment) {
shareCode
}
}

View File

@@ -1,13 +0,0 @@
mutation SignupWithVerificationCodeMutation(
$verificationCode: String!
$emailAddress: String
$phoneNumber: String
) {
signupWithVerificationCode(
verificationCode: $verificationCode
emailAddress: $emailAddress
phoneNumber: $phoneNumber
) {
status
}
}

View File

@@ -1,7 +0,0 @@
mutation StaleChatUpdateMutation($chatId: BigInt!) {
staleChatUpdate(chatId: $chatId) {
message {
...MessageFragment
}
}
}

View File

@@ -1,9 +0,0 @@
mutation subscriptionsMutation(
$subscriptions: [AutoSubscriptionQuery!]!
) {
autoSubscribe(subscriptions: $subscriptions) {
viewer {
id
}
}
}

View File

@@ -1,3 +0,0 @@
query SummarizePlainPostQuery($comment: String!) {
summarizePlainPost(comment: $comment)
}

View File

@@ -1,3 +0,0 @@
query SummarizeQuotePostQuery($comment: String, $quotedPostId: BigInt!) {
summarizeQuotePost(comment: $comment, quotedPostId: $quotedPostId)
}

View File

@@ -1,3 +0,0 @@
query SummarizeSharePostQuery($comment: String!, $chatId: BigInt!, $messageIds: [BigInt!]!) {
summarizeSharePost(comment: $comment, chatId: $chatId, messageIds: $messageIds)
}

View File

@@ -1,14 +0,0 @@
fragment UserSnippetFragment on PoeUser {
id
uid
bio
handle
fullName
viewerIsFollowing
isPoeOnlyUser
profilePhotoURLTiny: profilePhotoUrl(size: tiny)
profilePhotoURLSmall: profilePhotoUrl(size: small)
profilePhotoURLMedium: profilePhotoUrl(size: medium)
profilePhotoURLLarge: profilePhotoUrl(size: large)
isFollowable
}

View File

@@ -1,21 +0,0 @@
query ViewerInfoQuery {
viewer {
id
uid
...ViewerStateFragment
...BioFragment
...HandleFragment
hasCompletedMultiplayerNux
poeUser {
id
...UserSnippetFragment
}
messageLimit{
canSend
numMessagesRemaining
resetTime
shouldShowReminder
}
}
}

View File

@@ -1,81 +0,0 @@
subscription subscriptions_viewerMessageLimitUpdated_Subscription {
viewerMessageLimitUpdated {
...SettingsSubscriptionSection_viewer
id
}
}
fragment SettingsSubscriptionPaywallModal_viewer on Viewer {
...WebSubscriptionPaywall_viewer
}
fragment SettingsSubscriptionSectionNonSubscriberView_viewer on Viewer {
...SettingsSubscriptionPaywallModal_viewer
}
fragment SettingsSubscriptionSectionSubscriberView_viewer on Viewer {
subscription {
isActive
expiresTime
purchaseType
isAnnualSubscription
willCancelAtPeriodEnd
id
}
}
fragment SettingsSubscriptionSection_viewer on Viewer {
availableBots {
displayName
messageLimit {
canSend
numMessagesRemaining
resetTime
dailyBalance
dailyLimit
monthlyBalance
monthlyLimit
monthlyBalanceRefreshTime
shouldShowRemainingMessageCount
}
id
}
subscription {
isActive
id
}
isEligibleForWebSubscriptions
...SettingsSubscriptionSectionNonSubscriberView_viewer
...SettingsSubscriptionSectionSubscriberView_viewer
...WebSubscriptionSuccessMessage_viewer
}
fragment SubscriptionMessageLimitExplanation_viewer on Viewer {
availableBots {
displayName
messageLimit {
monthlyLimit
}
id
}
}
fragment WebSubscriptionPaywall_viewer on Viewer {
...SubscriptionMessageLimitExplanation_viewer
webSubscriptionPriceInfo {
monthlyPrice
yearlyPrice
yearlyPricePerMonth
yearlyPercentageSavings
id
}
}
fragment WebSubscriptionSuccessMessage_viewer on Viewer {
subscription {
isActive
expiresTime
willCancelAtPeriodEnd
id
}
}

View File

@@ -1,30 +0,0 @@
fragment ViewerStateFragment on Viewer {
id
__typename
iosMinSupportedVersion: integerGate(gateName: "poe_ios_min_supported_version")
iosMinEncouragedVersion: integerGate(
gateName: "poe_ios_min_encouraged_version"
)
macosMinSupportedVersion: integerGate(
gateName: "poe_macos_min_supported_version"
)
macosMinEncouragedVersion: integerGate(
gateName: "poe_macos_min_encouraged_version"
)
showPoeDebugPanel: booleanGate(gateName: "poe_show_debug_panel")
enableCommunityFeed: booleanGate(gateName: "enable_poe_shares_feed")
linkifyText: booleanGate(gateName: "poe_linkify_response")
enableSuggestedReplies: booleanGate(gateName: "poe_suggested_replies")
removeInviteLimit: booleanGate(gateName: "poe_remove_invite_limit")
enableInAppPurchases: booleanGate(gateName: "poe_enable_in_app_purchases")
availableBots {
nickname
displayName
profilePicture
isDown
disclaimer
subtitle
poweredBy
}
}

View File

@@ -1,63 +0,0 @@
subscription subscriptions_viewerStateUpdated_Subscription {
viewerStateUpdated {
id
...ChatPageBotSwitcher_viewer
}
}
fragment BotHeader_bot on Bot {
displayName
messageLimit {
dailyLimit
}
...BotImage_bot
...BotLink_bot
...IdAnnotation_node
...botHelpers_useViewerCanAccessPrivateBot
...botHelpers_useDeletion_bot
}
fragment BotImage_bot on Bot {
displayName
...botHelpers_useDeletion_bot
...BotImage_useProfileImage_bot
}
fragment BotImage_useProfileImage_bot on Bot {
image {
__typename
... on LocalBotImage {
localName
}
... on UrlBotImage {
url
}
}
...botHelpers_useDeletion_bot
}
fragment BotLink_bot on Bot {
displayName
}
fragment ChatPageBotSwitcher_viewer on Viewer {
availableBots {
id
handle
...BotHeader_bot
}
}
fragment IdAnnotation_node on Node {
__isNode: __typename
id
}
fragment botHelpers_useDeletion_bot on Bot {
deletionState
}
fragment botHelpers_useViewerCanAccessPrivateBot on Bot {
isPrivateBot
viewerIsCreator
}

View File

@@ -1,7 +1,7 @@
{
"max_length": 2048,
"temp": 1.15,
"genamt": 100,
"temp": 1.15,
"top_k": 0,
"top_p": 0.95,
"top_a": 0,
@@ -11,12 +11,12 @@
"rep_pen_range": 2048,
"rep_pen_slope": 7,
"sampler_order": [
6,
3,
2,
0,
5,
1,
4,
6
4
]
}

View File

@@ -1,6 +1,16 @@
{
"apikey": "",
"andepth": 1,
"max_length": 2048,
"genamt": 90,
"temp": 0.8,
"top_k": 28,
"top_p": 0.94,
"top_a": 0.00,
"tfs": 0.96,
"typical": 0.98,
"rep_pen": 1.03,
"rep_pen_slope": 0.8,
"rep_pen_range": 120.0,
"ikgen": 200,
"sampler_order": [
6,
4,
@@ -9,46 +19,5 @@
0,
1,
5
],
"temp": 0.8,
"top_p": 0.94,
"top_k": 28,
"tfs": 0.96,
"typical": 0.98,
"top_a": 0.00,
"rep_pen": 1.03,
"rep_pen_slope": 0.8,
"rep_pen_range": 120.0,
"genamt": 90,
"max_length": 2048,
"ikgen": 200,
"formatoptns": {
"frmttriminc": true,
"frmtrmblln": false,
"frmtrmspch": false,
"frmtadsnsp": true,
"singleline": false
},
"numseqs": 1,
"widepth": 3,
"useprompt": false,
"adventure": false,
"chatmode": false,
"chatname": "You",
"dynamicscan": false,
"nopromptgen": false,
"rngpersist": false,
"nogenmod": false,
"fulldeterminism": false,
"autosave": false,
"welcome": "## Warning: This model has a very heavy NSFW bias and is not suitable for use by minors!\n\nYou are currently running story-writing model `Erebus, version 1 (20B).`\n\n This model is made by [Mr. Seeker](https://www.patreon.com/mrseeker) with help of ProudNoob and the KoboldAI team.\n\n### How to use this model\n\nErebus is designed to generate short stories and novels. Use the author's note to give it a certain genre to follow, use memory to give an overview of the story and use World Information to give specific details about the characters. To start off, give the AI an idea of what you are writing about by setting the scene. Give the AI around 10 sentences that make your story interesting to read. Introduce your character, describe the world, blow something up, or let the AI use its creative mind.",
"output_streaming": true,
"show_probs": false,
"show_budget": false,
"seed": null,
"newlinemode": "n",
"antemplate": "",
"userscripts": [],
"corescript": "default.lua",
"softprompt": ""
]
}

View File

@@ -1,7 +1,7 @@
{
"max_length": 2048,
"temp": 0.59,
"genamt": 100,
"temp": 0.59,
"top_k": 0,
"top_p": 1,
"top_a": 0,
@@ -11,12 +11,12 @@
"rep_pen_range": 2048,
"rep_pen_slope": 0.3,
"sampler_order": [
6,
5,
0,
2,
3,
1,
4,
6
4
]
}

View File

@@ -1,7 +1,7 @@
{
"max_length": 2048,
"temp": 0.8,
"genamt": 100,
"temp": 0.8,
"top_k": 100,
"top_p": 0.9,
"top_a": 0,
@@ -11,12 +11,12 @@
"rep_pen_range": 2048,
"rep_pen_slope": 3.4,
"sampler_order": [
6,
5,
0,
2,
3,
1,
4,
6
4
]
}

View File

@@ -1,21 +1,15 @@
{
"file_version": 2,
"max_length": 2048,
"ikmax": 3000,
"genamt": 180,
"ikgen": 200,
"rep_pen": 1.01,
"rep_pen_slope": 0.9,
"rep_pen_range": 1024,
"temp": 1.0,
"top_p": 0.9,
"top_k": 40,
"top_a": 0.0,
"tfs": 0.9,
"typical": 1.0,
"numseqs": 1,
"fp32_model": false,
"modeldim": 4096,
"rep_pen": 1.01,
"rep_pen_slope": 0.9,
"rep_pen_range": 1024,
"sampler_order": [
6,
0,
@@ -24,24 +18,5 @@
3,
4,
5
],
"newlinemode": "n",
"lazy_load": true,
"revision": null,
"selected_preset": "",
"horde_wait_time": 0,
"horde_queue_position": 0,
"horde_queue_size": 0,
"model": "pygmalion-6b",
"model_type": "gptj",
"url": "https://api.inferkit.com/v1/models/standard/generate",
"oaiurl": "",
"oaiengines": "https://api.openai.com/v1/engines",
"colaburl": "/request",
"apikey": "",
"oaiapikey": "",
"configname": "pygmalion-6b",
"online_model": "",
"alt_multi_gen": false
]
}

View File

@@ -1,21 +1,15 @@
{
"file_version": 2,
"max_length": 2048,
"ikmax": 3000,
"genamt": 180,
"ikgen": 200,
"rep_pen": 1.17,
"rep_pen_slope": 0.2,
"rep_pen_range": 1024,
"temp": 0.43,
"top_p": 0.96,
"top_k": 0,
"top_a": 0.0,
"tfs": 0.68,
"typical": 1.0,
"numseqs": 1,
"fp32_model": false,
"modeldim": 2560,
"rep_pen": 1.17,
"rep_pen_slope": 0.2,
"rep_pen_range": 1024,
"sampler_order": [
6,
0,
@@ -24,23 +18,5 @@
3,
4,
5
],
"newlinemode": "n",
"lazy_load": true,
"revision": null,
"selected_preset": "",
"horde_wait_time": 0,
"horde_queue_position": 0,
"horde_queue_size": 0,
"model": "pygmalion-2.7b",
"model_type": "gpt_neo",
"url": "https://api.inferkit.com/v1/models/standard/generate",
"oaiurl": "",
"oaiengines": "https://api.openai.com/v1/engines",
"colaburl": "/request",
"apikey": "",
"oaiapikey": "",
"configname": "pygmalion-2.7b",
"online_model": "",
"alt_multi_gen": false
]
}

View File

@@ -1,21 +1,15 @@
{
"file_version": 2,
"max_length": 2048,
"ikmax": 3000,
"genamt": 180,
"ikgen": 200,
"rep_pen": 1.1,
"rep_pen_slope": 0.9,
"rep_pen_range": 1024,
"temp": 0.65,
"top_p": 0.9,
"top_k": 0,
"top_a": 0.0,
"tfs": 0.9,
"typical": 1.0,
"numseqs": 1,
"fp32_model": false,
"modeldim": 4096,
"rep_pen": 1.1,
"rep_pen_slope": 0.9,
"rep_pen_range": 1024,
"sampler_order": [
6,
0,
@@ -23,25 +17,6 @@
2,
3,
4,
5
],
"newlinemode": "n",
"lazy_load": true,
"revision": null,
"selected_preset": "",
"horde_wait_time": 0,
"horde_queue_position": 0,
"horde_queue_size": 0,
"model": "pygmalion-6b",
"model_type": "gptj",
"url": "https://api.inferkit.com/v1/models/standard/generate",
"oaiurl": "",
"oaiengines": "https://api.openai.com/v1/engines",
"colaburl": "/request",
"apikey": "",
"oaiapikey": "",
"configname": "pygmalion-6b",
"online_model": "",
"alt_multi_gen": false
5
]
}

View File

@@ -1,22 +1,22 @@
{
"max_length": 2048,
"genamt": 100,
"temp": 0.51,
"top_p": 1,
"top_k": 0,
"tfs": 0.99,
"top_a": 0,
"typical": 1,
"rep_pen": 1.2,
"rep_pen_range": 2048,
"rep_pen_slope": 0,
"sampler_order": [
6,
5,
0,
2,
3,
1,
4,
6
],
"temp": 0.51,
"tfs": 0.99,
"top_a": 0,
"top_k": 0,
"top_p": 1,
"typical": 1
4
]
}

View File

@@ -1,7 +1,7 @@
{
"max_length": 1600,
"temp": 0.79,
"genamt": 180,
"temp": 0.79,
"top_k": 0,
"top_p": 0.9,
"top_a": 0,

View File

@@ -1,21 +1,15 @@
{
"file_version": 2,
"max_length": 2048,
"ikmax": 3000,
"genamt": 180,
"ikgen": 200,
"rep_pen": 1.19,
"rep_pen_slope": 0.9,
"rep_pen_range": 1024,
"temp": 0.79,
"top_p": 0.9,
"top_k": 0,
"top_a": 0.0,
"tfs": 0.95,
"typical": 1.0,
"numseqs": 1,
"fp32_model": false,
"modeldim": 4096,
"rep_pen": 1.19,
"rep_pen_slope": 0.9,
"rep_pen_range": 1024,
"sampler_order": [
6,
0,
@@ -24,24 +18,5 @@
3,
4,
5
],
"newlinemode": "n",
"lazy_load": true,
"revision": null,
"selected_preset": "",
"horde_wait_time": 0,
"horde_queue_position": 0,
"horde_queue_size": 0,
"model": "pygmalion-6b",
"model_type": "gptj",
"url": "https://api.inferkit.com/v1/models/standard/generate",
"oaiurl": "",
"oaiengines": "https://api.openai.com/v1/engines",
"colaburl": "/request",
"apikey": "",
"oaiapikey": "",
"configname": "pygmalion-6b",
"online_model": "",
"alt_multi_gen": false
]
}

View File

@@ -1,21 +1,15 @@
{
"file_version": 2,
"max_length": 1400,
"ikmax": 3000,
"genamt": 180,
"ikgen": 200,
"rep_pen": 1.08,
"rep_pen_slope": 0.9,
"rep_pen_range": 1024,
"temp": 0.65,
"top_p": 0.9,
"top_k": 0,
"top_a": 0.0,
"tfs": 0.9,
"typical": 1.0,
"numseqs": 1,
"fp32_model": false,
"modeldim": 4096,
"rep_pen": 1.08,
"rep_pen_slope": 0.9,
"rep_pen_range": 1024,
"sampler_order": [
6,
0,
@@ -24,24 +18,5 @@
3,
4,
5
],
"newlinemode": "n",
"lazy_load": true,
"revision": null,
"selected_preset": "",
"horde_wait_time": 0,
"horde_queue_position": 0,
"horde_queue_size": 0,
"model": "pygmalion-6b",
"model_type": "gptj",
"url": "https://api.inferkit.com/v1/models/standard/generate",
"oaiurl": "",
"oaiengines": "https://api.openai.com/v1/engines",
"colaburl": "/request",
"apikey": "",
"oaiapikey": "",
"configname": "pygmalion-6b",
"online_model": "",
"alt_multi_gen": false
]
}

View File

@@ -1,7 +1,7 @@
{
"max_length": 2048,
"temp": 0.63,
"genamt": 100,
"temp": 0.63,
"top_k": 0,
"top_p": 0.98,
"top_a": 0,
@@ -11,12 +11,12 @@
"rep_pen_range": 2048,
"rep_pen_slope": 0.1,
"sampler_order": [
6,
2,
0,
3,
5,
1,
4,
6
4
]
}

View File

@@ -1,7 +1,7 @@
{
"max_length": 2048,
"temp": 0.7,
"genamt": 100,
"temp": 0.7,
"top_k": 0,
"top_p": 0.5,
"top_a": 0.75,
@@ -11,12 +11,12 @@
"rep_pen_range": 1024,
"rep_pen_slope": 0.7,
"sampler_order": [
6,
5,
4,
3,
2,
1,
0,
6
0
]
}

View File

@@ -1,7 +1,7 @@
{
"max_length": 2048,
"temp": 0.7,
"genamt": 100,
"temp": 0.7,
"top_k": 0,
"top_p": 1,
"top_a": 0,
@@ -11,12 +11,12 @@
"rep_pen_range": 1024,
"rep_pen_slope": 0.7,
"sampler_order": [
6,
0,
1,
2,
3,
4,
5,
6
5
]
}

View File

@@ -1,15 +1,6 @@
{
"apikey": "",
"andepth": 1,
"sampler_order": [
6,
4,
3,
2,
0,
1,
5
],
"max_length": 2048,
"genamt": 90,
"temp": 0.8,
"top_p": 0.94,
"top_k": 15,
@@ -19,36 +10,13 @@
"rep_pen": 1.02,
"rep_pen_slope": 0.8,
"rep_pen_range": 256.0,
"genamt": 90,
"max_length": 2048,
"ikgen": 200,
"formatoptns": {
"frmttriminc": true,
"frmtrmblln": false,
"frmtrmspch": false,
"frmtadsnsp": true,
"singleline": false
},
"numseqs": 1,
"widepth": 3,
"useprompt": false,
"adventure": false,
"chatmode": false,
"chatname": "You",
"dynamicscan": false,
"nopromptgen": false,
"rngpersist": false,
"nogenmod": false,
"fulldeterminism": false,
"autosave": false,
"welcome": "## Warning: This model has a very heavy NSFW bias and is not suitable for use by minors!\n\nYou are currently running story-writing model `Erebus, version 1 (20B).`\n\n This model is made by [Mr. Seeker](https://www.patreon.com/mrseeker) with help of ProudNoob and the KoboldAI team.\n\n### How to use this model\n\nErebus is designed to generate short stories and novels. Use the author's note to give it a certain genre to follow, use memory to give an overview of the story and use World Information to give specific details about the characters. To start off, give the AI an idea of what you are writing about by setting the scene. Give the AI around 10 sentences that make your story interesting to read. Introduce your character, describe the world, blow something up, or let the AI use its creative mind.",
"output_streaming": true,
"show_probs": false,
"show_budget": false,
"seed": null,
"newlinemode": "n",
"antemplate": "",
"userscripts": [],
"corescript": "default.lua",
"softprompt": ""
"sampler_order": [
6,
4,
3,
2,
0,
1,
5
]
}

View File

@@ -1,7 +1,7 @@
{
"max_length": 2048,
"temp": 0.66,
"genamt": 100,
"temp": 0.66,
"top_k": 0,
"top_p": 1,
"top_a": 0.96,
@@ -11,12 +11,12 @@
"rep_pen_range": 1024,
"rep_pen_slope": 0.7,
"sampler_order": [
6,
4,
5,
1,
0,
2,
3,
6
3
]
}

View File

@@ -1,7 +1,7 @@
{
"max_length": 2048,
"temp": 0.94,
"genamt": 100,
"temp": 0.94,
"top_k": 12,
"top_p": 1,
"top_a": 0,
@@ -11,12 +11,12 @@
"rep_pen_range": 2048,
"rep_pen_slope": 0.2,
"sampler_order": [
6,
5,
0,
2,
3,
1,
4,
6
4
]
}

View File

@@ -1,7 +1,7 @@
{
"max_length": 2048,
"temp": 1.5,
"genamt": 100,
"temp": 1.5,
"top_k": 85,
"top_p": 0.24,
"top_a": 0,
@@ -11,12 +11,12 @@
"rep_pen_range": 2048,
"rep_pen_slope": 0,
"sampler_order": [
6,
5,
0,
2,
3,
1,
4,
6
4
]
}

View File

@@ -1,7 +1,7 @@
{
"max_length": 2048,
"temp": 1.05,
"genamt": 100,
"temp": 1.05,
"top_k": 0,
"top_p": 0.95,
"top_a": 0,
@@ -11,12 +11,12 @@
"rep_pen_range": 1024,
"rep_pen_slope": 0.7,
"sampler_order": [
6,
0,
1,
2,
3,
4,
5,
6
5
]
}

View File

@@ -1,7 +1,7 @@
{
"max_length": 2048,
"temp": 1.07,
"genamt": 100,
"temp": 1.07,
"top_k": 100,
"top_p": 1,
"top_a": 0,
@@ -11,12 +11,12 @@
"rep_pen_range": 404,
"rep_pen_slope": 0.8,
"sampler_order": [
6,
0,
5,
3,
2,
1,
4,
6
4
]
}

View File

@@ -1,7 +1,7 @@
{
"max_length": 2048,
"temp": 0.44,
"genamt": 100,
"temp": 0.44,
"top_k": 0,
"top_p": 1,
"top_a": 0,
@@ -11,12 +11,12 @@
"rep_pen_range": 2048,
"rep_pen_slope": 6.8,
"sampler_order": [
6,
5,
0,
2,
3,
1,
4,
6
4
]
}

View File

@@ -1,7 +1,7 @@
{
"max_length": 2048,
"temp": 1.35,
"genamt": 100,
"temp": 1.35,
"top_k": 0,
"top_p": 1,
"top_a": 0,
@@ -11,12 +11,12 @@
"rep_pen_range": 2048,
"rep_pen_slope": 0.1,
"sampler_order": [
6,
3,
2,
5,
0,
1,
4,
6
4
]
}

View File

@@ -1,21 +1,15 @@
{
"file_version": 2,
"max_length": 1400,
"ikmax": 3000,
"genamt": 80,
"ikgen": 200,
"rep_pen": 1.04,
"rep_pen_slope": 0.0,
"rep_pen_range": 1400,
"temp": 1,
"top_p": 1,
"top_k": 0,
"top_a": 0.0,
"tfs": 0.97,
"typical": 1.0,
"numseqs": 1,
"fp32_model": false,
"modeldim": 2560,
"rep_pen": 1.04,
"rep_pen_slope": 0.0,
"rep_pen_range": 1400,
"sampler_order": [
6,
0,
@@ -24,23 +18,5 @@
3,
4,
5
],
"newlinemode": "n",
"lazy_load": true,
"revision": null,
"selected_preset": "",
"horde_wait_time": 0,
"horde_queue_position": 0,
"horde_queue_size": 0,
"model": "pygmalion-1.3b",
"model_type": "gpt_neo",
"url": "https://api.inferkit.com/v1/models/standard/generate",
"oaiurl": "",
"oaiengines": "https://api.openai.com/v1/engines",
"colaburl": "/request",
"apikey": "",
"oaiapikey": "",
"configname": "pygmalion-1.3b",
"online_model": "",
"alt_multi_gen": false
]
}

View File

@@ -0,0 +1,22 @@
{
"max_length": 100,
"genamt": 100,
"temp": 1,
"top_k": 0,
"top_p": 0.95,
"top_a": 0,
"typical": 1,
"tfs": 1,
"rep_pen": 1.1,
"rep_pen_range": 600,
"rep_pen_slope": 0,
"sampler_order": [
6,
0,
1,
2,
3,
4,
5
]
}

View File

@@ -1,22 +1,22 @@
{
"max_length": 2048,
"genamt": 100,
"rep_pen": 1.1,
"rep_pen_range": 2048,
"rep_pen_slope": 0.2,
"sampler_order": [
5,
0,
2,
3,
1,
4,
6
],
"temp": 0.72,
"tfs": 1,
"top_a": 0,
"top_k": 0,
"top_p": 0.73,
"typical": 1
"typical": 1,
"rep_pen": 1.1,
"rep_pen_range": 2048,
"rep_pen_slope": 0.2,
"sampler_order": [
6,
5,
0,
2,
3,
1,
4
]
}

View File

@@ -0,0 +1,17 @@
{
"order": [3, 2, 1, 0],
"temperature": 1.15,
"max_length": 60,
"min_length": 60,
"top_k": 0,
"top_p": 0.95,
"top_a": 1,
"typical_p": 1,
"tail_free_sampling": 0.8,
"repetition_penalty": 2.75,
"repetition_penalty_range": 2048,
"repetition_penalty_slope": 7.02,
"repetition_penalty_frequency": 0,
"repetition_penalty_presence": 0,
"max_context": 2048
}

View File

@@ -0,0 +1,17 @@
{
"order": [1, 0, 3],
"temperature": 1.33,
"max_length": 60,
"min_length": 60,
"top_k": 13,
"top_p": 1,
"top_a": 1,
"typical_p": 1,
"tail_free_sampling": 0.836,
"repetition_penalty": 2.366,
"repetition_penalty_range": 400,
"repetition_penalty_slope": 0.33,
"repetition_penalty_frequency": 0.01,
"repetition_penalty_presence": 0,
"max_context": 2048
}

View File

@@ -0,0 +1,17 @@
{
"order": [0, 1, 2, 3],
"temperature": 0.585,
"max_length": 60,
"min_length": 60,
"top_k": 0,
"top_p": 1,
"top_a": 1,
"typical_p": 1,
"tail_free_sampling": 0.87,
"repetition_penalty": 3.05,
"repetition_penalty_range": 2048,
"repetition_penalty_slope": 0.33,
"repetition_penalty_frequency": 0,
"repetition_penalty_presence": 0,
"max_context": 2048
}

View File

@@ -1,13 +1,17 @@
{
"order": [3, 0],
"temperature": 1.11,
"order": [2, 1, 3, 0],
"temperature": 0.63,
"max_length": 90,
"min_length": 1,
"tail_free_sampling": 0.68,
"repetition_penalty": 1.11,
"repetition_penalty_range": 320,
"tail_free_sampling": 0.975,
"repetition_penalty": 1.148125,
"repetition_penalty_range": 2048,
"repetition_penalty_frequency": 0,
"repetition_penalty_presence": 0,
"repetition_penalty_slope": 0,
"max_context":2048
}
"repetition_penalty_slope": 0.09,
"max_context":2048,
"top_p": 0.975,
"top_k": 0,
"top_a": 1,
"typical_p": 1
}

View File

@@ -1,13 +1,17 @@
{
"order": [3, 0],
"temperature": 1.7,
"order": [3, 4, 5, 2, 0],
"temperature": 1.33,
"max_length": 90,
"min_length": 1,
"tail_free_sampling": 0.66,
"repetition_penalty": 1.06,
"repetition_penalty_range": 340,
"tail_free_sampling": 0.937,
"repetition_penalty": 1.05,
"repetition_penalty_range": 560,
"repetition_penalty_frequency": 0,
"repetition_penalty_presence": 0,
"repetition_penalty_slope": 0,
"max_context": 2048
}
"repetition_penalty_slope": 0.18,
"max_context": 2048,
"top_p": 0.88,
"top_k": 0,
"top_a": 0.085,
"typical_p": 0.985
}

View File

@@ -0,0 +1,17 @@
{
"order": [2, 1, 3, 0],
"temperature": 0.86,
"max_length": 60,
"min_length": 60,
"top_k": 20,
"top_p": 0.95,
"top_a": 1,
"typical_p": 1,
"tail_free_sampling": 1,
"repetition_penalty": 2.25,
"repetition_penalty_range": 2048,
"repetition_penalty_slope": 0.09,
"repetition_penalty_frequency": 0,
"repetition_penalty_presence": 0,
"max_context": 2048
}

View File

@@ -0,0 +1,17 @@
{
"order": [2, 1, 3, 0],
"temperature": 0.63,
"max_length": 60,
"min_length": 60,
"top_k": 0,
"top_p": 0.975,
"top_a": 1,
"typical_p": 1,
"tail_free_sampling": 0.975,
"repetition_penalty": 2.975,
"repetition_penalty_range": 2048,
"repetition_penalty_slope": 0.09,
"repetition_penalty_frequency": 0,
"repetition_penalty_presence": 0,
"max_context":2048
}

View File

@@ -0,0 +1,17 @@
{
"order": [2, 1, 3, 0],
"temperature": 0.94,
"max_length": 60,
"min_length": 60,
"top_k": 12,
"top_p": 1,
"top_a": 1,
"typical_p": 1,
"tail_free_sampling": 0.94,
"repetition_penalty": 2.66,
"repetition_penalty_range": 2048,
"repetition_penalty_slope": 0.18,
"repetition_penalty_frequency": 0.013,
"repetition_penalty_presence": 0,
"max_context": 2048
}

View File

@@ -0,0 +1,17 @@
{
"order": [1, 5, 4, 3, 0],
"temperature": 1.25,
"max_length": 60,
"min_length": 60,
"top_k": 300,
"top_p": 1,
"top_a": 0.782,
"typical_p": 0.95,
"tail_free_sampling": 0.802,
"repetition_penalty": 2.075,
"repetition_penalty_range": 512,
"repetition_penalty_slope": 0.36,
"repetition_penalty_frequency": 0,
"repetition_penalty_presence": 0,
"max_context": 2048
}

View File

@@ -0,0 +1,17 @@
{
"order": [0],
"temperature": 0.6889,
"max_length": 60,
"min_length": 60,
"top_k": 0,
"top_p": 1,
"top_a": 1,
"typical_p": 1,
"tail_free_sampling": 1,
"repetition_penalty": 1,
"repetition_penalty_range": 2048,
"repetition_penalty_slope": 0,
"repetition_penalty_frequency": 0.1,
"repetition_penalty_presence": 0,
"max_context": 2048
}

View File

@@ -0,0 +1,17 @@
{
"order": [1, 0, 3],
"temperature": 1.07,
"max_length": 60,
"min_length": 60,
"top_k": 264,
"top_p": 1,
"top_a": 1,
"typical_p": 1,
"tail_free_sampling": 0.925,
"repetition_penalty": 2.165,
"repetition_penalty_range": 404,
"repetition_penalty_slope": 0.84,
"repetition_penalty_frequency": 0,
"repetition_penalty_presence": 0,
"max_context":2048
}

View File

@@ -0,0 +1,17 @@
{
"order": [3, 0],
"temperature": 1.348,
"max_length": 60,
"min_length": 60,
"top_k": 64,
"top_p": 0.909,
"top_a": 1,
"typical_p": 1,
"tail_free_sampling": 0.688,
"repetition_penalty": 4.967,
"repetition_penalty_range": 2048,
"repetition_penalty_slope": 0.09,
"repetition_penalty_frequency": 0,
"repetition_penalty_presence": 0,
"max_context": 2048
}

View File

@@ -0,0 +1,22 @@
{
"temp": 1.68,
"top_p": 0.17,
"top_k": 77,
"typical_p": 1,
"top_a": 0.42,
"tfs": 0.97,
"epsilon_cutoff": 0,
"eta_cutoff": 0,
"rep_pen": 1.02,
"no_repeat_ngram_size": 0,
"penalty_alpha": 0,
"num_beams": 1,
"length_penalty": 1,
"min_length": 0,
"encoder_rep_pen": 1,
"do_sample": true,
"early_stopping": false,
"mirostat_mode": 0,
"mirostat_tau": 5,
"mirostat_eta": 0.1
}

View File

@@ -5,6 +5,8 @@
"typical_p": 1,
"top_a": 0,
"tfs": 1,
"epsilon_cutoff": 0,
"eta_cutoff": 0,
"rep_pen": 4.5,
"no_repeat_ngram_size": 2,
"penalty_alpha": 0,
@@ -13,5 +15,8 @@
"min_length": 200,
"encoder_rep_pen": 1,
"do_sample": true,
"early_stopping": true
"early_stopping": true,
"mirostat_mode": 0,
"mirostat_tau": 5,
"mirostat_eta": 0.1
}

View File

@@ -0,0 +1,22 @@
{
"temp": 0.87,
"top_p": 0.99,
"top_k": 85,
"typical_p": 0.68,
"top_a": 0,
"tfs": 0.68,
"epsilon_cutoff": 0,
"eta_cutoff": 0,
"rep_pen": 1.01,
"no_repeat_ngram_size": 0,
"penalty_alpha": 0,
"num_beams": 1,
"length_penalty": 1,
"min_length": 0,
"encoder_rep_pen": 1,
"do_sample": true,
"early_stopping": false,
"mirostat_mode": 0,
"mirostat_tau": 5,
"mirostat_eta": 0.1
}

View File

@@ -5,6 +5,8 @@
"typical_p": 1,
"top_a": 0,
"tfs": 1,
"epsilon_cutoff": 0,
"eta_cutoff": 0,
"rep_pen": 1,
"no_repeat_ngram_size": 0,
"penalty_alpha": 0.6,
@@ -13,5 +15,8 @@
"min_length": 0,
"encoder_rep_pen": 1,
"do_sample": false,
"early_stopping": false
"early_stopping": false,
"mirostat_mode": 0,
"mirostat_tau": 5,
"mirostat_eta": 0.1
}

View File

@@ -5,6 +5,8 @@
"typical_p": 1,
"top_a": 0,
"tfs": 1,
"epsilon_cutoff": 0,
"eta_cutoff": 0,
"rep_pen": 1.2,
"no_repeat_ngram_size": 0,
"penalty_alpha": 0,
@@ -13,5 +15,8 @@
"min_length": 0,
"encoder_rep_pen": 1,
"do_sample": true,
"early_stopping": false
"early_stopping": false,
"mirostat_mode": 0,
"mirostat_tau": 5,
"mirostat_eta": 0.1
}

View File

@@ -5,6 +5,8 @@
"typical_p": 1,
"top_a": 0,
"tfs": 1,
"epsilon_cutoff": 0,
"eta_cutoff": 0,
"rep_pen": 1,
"no_repeat_ngram_size": 0,
"penalty_alpha": 0,
@@ -13,5 +15,8 @@
"min_length": 0,
"encoder_rep_pen": 1,
"do_sample": false,
"early_stopping": false
"early_stopping": false,
"mirostat_mode": 0,
"mirostat_tau": 5,
"mirostat_eta": 0.1
}

View File

@@ -0,0 +1,22 @@
{
"temp": 1.31,
"top_p": 0.14,
"top_k": 49,
"typical_p": 1,
"top_a": 0.52,
"tfs": 1,
"epsilon_cutoff": 1.49,
"eta_cutoff": 10.42,
"rep_pen": 1.17,
"no_repeat_ngram_size": 0,
"penalty_alpha": 0,
"num_beams": 1,
"length_penalty": 1,
"min_length": 0,
"encoder_rep_pen": 1,
"do_sample": true,
"early_stopping": false,
"mirostat_mode": 0,
"mirostat_tau": 5,
"mirostat_eta": 0.1
}

View File

@@ -5,6 +5,8 @@
"typical_p": 0.19,
"top_a": 0,
"tfs": 1,
"epsilon_cutoff": 0,
"eta_cutoff": 0,
"rep_pen": 1.1,
"no_repeat_ngram_size": 0,
"penalty_alpha": 0,
@@ -13,5 +15,8 @@
"min_length": 0,
"encoder_rep_pen": 1,
"do_sample": true,
"early_stopping": false
"early_stopping": false,
"mirostat_mode": 0,
"mirostat_tau": 5,
"mirostat_eta": 0.1
}

View File

@@ -5,6 +5,8 @@
"typical_p": 0.6,
"top_a": 0,
"tfs": 1,
"epsilon_cutoff": 0,
"eta_cutoff": 0,
"rep_pen": 1.1,
"no_repeat_ngram_size": 0,
"penalty_alpha": 0,
@@ -13,5 +15,8 @@
"min_length": 0,
"encoder_rep_pen": 1,
"do_sample": true,
"early_stopping": false
"early_stopping": false,
"mirostat_mode": 0,
"mirostat_tau": 5,
"mirostat_eta": 0.1
}

View File

@@ -5,6 +5,8 @@
"typical_p": 1,
"top_a": 0,
"tfs": 1,
"epsilon_cutoff": 0,
"eta_cutoff": 0,
"rep_pen": 1.18,
"no_repeat_ngram_size": 0,
"penalty_alpha": 0,
@@ -13,5 +15,8 @@
"min_length": 200,
"encoder_rep_pen": 1,
"do_sample": true,
"early_stopping": false
"early_stopping": false,
"mirostat_mode": 0,
"mirostat_tau": 5,
"mirostat_eta": 0.1
}

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