Commit Graph

166 Commits

Author SHA1 Message Date
Cohee b0d9f14534 Re-add Together as a text completion source 2023-12-17 23:38:03 +02:00
valadaptive 5b3c96df50 Rename /textgenerationwebui endpoint
I'd like to migrate over to using "textgen" to mean text-generation APIs
in general, so I've renamed the /textgenerationwebui/* endpoints to
/backends/text-completions/*.
2023-12-12 16:40:14 -05:00
Cohee b0e7b73a32 Fix streaming processor error handler hooks 2023-12-08 02:01:08 +02:00
valadaptive cdcd913805 Don't stream events if the API returned a 4xx code 2023-12-07 18:00:36 -05:00
valadaptive 5540c165cf Refactor server-sent events parsing
Create one server-sent events stream class which implements the entire
spec (different line endings, chunking, etc) and use it in all the
streaming generators.
2023-12-07 18:00:36 -05:00
Cohee 0a092629ce Fix undefined variable reference 2023-12-03 23:24:39 +02:00
valadaptive 24ccef3aba Fix "settings" variable being shadowed 2023-12-03 15:44:36 -05:00
valadaptive 9c33ddbafc Make textgen settings type checks more concise 2023-12-03 14:56:01 -05:00
valadaptive 047c897ead Remove is[API] functions
Just use an equality comparison. It's a bit longer, but only because
"textgenerationwebui_settings" is a long identifier.
2023-12-03 14:56:01 -05:00
valadaptive ba54e3dea0 Replaces is_[api] params with api_type param
These were 5 mutually-exclusive booleans, which can be replaced with one
param that takes on 5 values, one for each API type.
2023-12-03 14:56:01 -05:00
Cohee 939e938ba2 Disallow multiswipe for quiet gens 2023-12-03 20:56:25 +02:00
Cohee 1786b0d340 #1403 Add Aphrodite multi-swipe 2023-12-03 20:40:09 +02:00
Cohee 64a3564892 lint: Comma dangle 2023-12-02 22:06:57 +02:00
Cohee c63cd87cc0 lint: Require semicolons 2023-12-02 21:11:06 +02:00
valadaptive a37f874e38 Require single quotes 2023-12-02 13:04:51 -05:00
valadaptive 60ac1aa1c7 Enable no-empty lint 2023-12-02 10:32:07 -05:00
Cohee 61908935f5 Stop string for user-continue. Trim spaces after name2 2023-11-22 16:16:48 +02:00
Cohee ddbdceba64 Add sampler order for koboldcpp under text completions 2023-11-21 01:47:57 +02:00
Cohee 1ebfddf07e Use mistral and yi tokenizers for custom token bans 2023-11-21 01:04:27 +02:00
Cohee 96caddfd71 Add koboldcpp as Text Completion source 2023-11-19 17:14:53 +02:00
kingbri f31b996cb5 Text Generation: Add TabbyAPI support
TabbyAPI is an exllamav2 only API server that aims to provide a simple
experience for loading and chatting with exl2 models.

SillyTavern currently doesn't have the ability to load and unload models,
so only add the OAI compatible completion endpoints.

The repository can be found here:
https://github.com/theroyallab/tabbyAPI

Signed-off-by: kingbri <bdashore3@proton.me>
2023-11-17 00:37:39 -05:00
Cohee f4630f9808 Add lastMessage macro. Substitute params in CFG negative prompts 2023-11-16 16:58:49 +02:00
Cohee 61764a9a21 Change mancer base URL via debug menu 2023-11-13 11:13:39 +02:00
RossAscends 52c07e0895 setup Aphrodite-specific API flag handling 2023-11-13 16:36:01 +09:00
Cohee 480099ee97 Mancer will work in legacy API mode. Remove Soft Prompt mentions. 2023-11-08 18:16:47 +02:00
Cohee 738c1d82c4 Clarify legacy API notification 2023-11-08 17:54:08 +02:00
Cohee cbc0b41773 Prevent doubled legacy toast 2023-11-08 10:28:02 +02:00
Cohee b6d29d2980 Return force /api append for Legacy ooba with relaxed URL off 2023-11-08 10:25:49 +02:00
Cohee e76c18c104 Legacy ooba API compatibility shim 2023-11-08 10:13:28 +02:00
RossAscends 00c029a65a only api format for ooba, more visible checkboxes 2023-11-08 14:08:51 +09:00
Cohee b2629d9718 Refactor status checks and indicators. 2023-11-08 02:52:03 +02:00
Cohee bda15ef007 Adjust aphro streaming error parser 2023-11-08 00:25:06 +02:00
Cohee 2c7b954a8d #1328 New API schema for ooba / mancer / aphrodite 2023-11-08 00:17:13 +02:00
RossAscends a5b5dfdcb6 temperature last for ooba 2023-11-05 23:50:07 +09:00
RossAscends 937c5d7e5f Min P for Ooba, fix preset loading for ZenSliders 2023-11-05 23:08:06 +09:00
RossAscends 447c43c9d7 placeholders for Aphro samplers 2023-11-04 11:16:12 +09:00
RossAscends c79bf951b7 minor skill issue with slider overhaul 2023-10-26 20:41:12 +09:00
RossAscends e9107870c0 Merge branch 'staging' of https://github.com/Cohee1207/SillyTavern into staging 2023-10-26 13:20:49 +09:00
RossAscends d50124e937 appwide slider overhaul 2023-10-26 13:20:47 +09:00
kingbri 4f67e9f38b Ooba: Add frequency and presence penalty sliders
These options essentially supersede repetition penalty, but since
ooba also gives the option, add these new sliders in conjunction
with the repetition penalty ones.

More testing is needed to find good default values.

Signed-off-by: kingbri <bdashore3@proton.me>
2023-10-25 15:22:47 -04:00
Cohee c4fbc8373d Add raw generate function 2023-10-11 17:56:52 +03:00
Cohee d265179f46 Don't crash ST server on invalid streaming URL 2023-10-08 23:42:28 +03:00
valden80 788bbe969f
Feature, ability to add banned words sequences from anywhere through {{banned "..."}} macro. (#1202)
* Add files via upload

* Add files via upload

* Add files via upload

* Add files via upload

* Add files via upload

* Fix constant assignment, reformat code

---------

Co-authored-by: Cohee <18619528+Cohee1207@users.noreply.github.com>
2023-10-05 13:10:41 +03:00
Cohee bb47712696 Split oobabooga/mancer sources. Add aphrodite support 2023-09-28 19:10:00 +03:00
Cohee 306cf51da4 #1180 Add custom token bans. Return grammar strings 2023-09-27 22:09:09 +03:00
Cohee 773d42b886 Suspend ooba grammar 2023-09-25 14:07:13 +03:00
Cohee 86e9974410 Add grammar for ooba llama.cpp 2023-09-24 17:57:00 +03:00
Cohee 322511caa9 Remove legacy Pygmalion formatting, part 2 2023-09-06 14:19:29 +03:00
Cohee f48cc0db31 Unify cfgValues parsing between ooba/Novel 2023-08-23 18:26:56 +03:00
Cohee fad6c164cb Don't set negative prompt from CFG extension to ooba at guidance scale 1.0 2023-08-23 17:44:38 +03:00
Cohee 6923044a34 Allow CFG on impersonation 2023-08-22 19:35:56 +03:00
kingbri 25c7686462 CFG: Pass entire guidance object
If an API doesn't use the negative prompt from generate, allow
the negative prompt to be refetched in the specific API. This
requires the full guidance scale object instead of just the number.

Signed-off-by: kingbri <bdashore3@proton.me>
2023-08-22 10:17:20 -04:00
kingbri 92e6c6a998 CFG: Use ST prompt builder for negatives
Make the generate function build a negative prompt in addition to the
normal one. This allows for nonconflicting insertion with other extension
prompts and World Info.

Signed-off-by: kingbri <bdashore3@proton.me>
2023-08-20 00:44:39 -04:00
kingbri 7191f7a8ad CFG: Add insertion depth and custom separator
Insertion depth allows for CFG to variably inject itself into the
negative prompt. This is similar to how Author's note works.

However, this method of insertion depth conflicts with AN and
world info where negatives can be meshed between two lines
of those specific insertions.

A custom separator must be wrapped in quotes, otherwise the default
separator is a newline for negative cascading.

Signed-off-by: kingbri <bdashore3@proton.me>
2023-08-19 01:29:59 -04:00
kingbri cdbca6d9fd CFG: Include the entire prompt with negative prompt
CFG with LLMs works differently than stable diffusion. The main principle
is prompt mixing and utilizing the differences between the two prompts
rather than a full "negative prompt" of what the user doesn't want.

SillyTavern its own way of formatting a prompt sent to an LLM backend.
Therefore, take that prompt and add negatives to it.

Signed-off-by: kingbri <bdashore3@proton.me>
2023-08-18 22:18:09 -04:00
Cohee 32eb877fdb Add native presetable CFG scale for ooba 2023-08-14 13:06:20 +03:00
kingbri 5bb6c89868 CFG: Add per-chat CFG and fixes
Per-chat CFG applies a CFG setting per-chat only rather than character
or globally. This overrides all other CFG settings (this will be changed).

Also add fixes to remove character CFG entries properly and not to
apply CFG if the scale is 1 as that won't do anything to generation.

Signed-off-by: kingbri <bdashore3@proton.me>
2023-08-11 01:39:15 -04:00
kingbri 0c94740560 Extensions: Add global CFG support
CFG is bundled as an extension which is more flexible in terms of
storing settings and consolidating code.

Global CFG is currently supported and the old power user setting
is auto-migrated.

Signed-off-by: kingbri <bdashore3@proton.me>
2023-08-11 01:39:15 -04:00
50h100a 53e41bdda8 Relax URL requirements when Mancer is enabled. 2023-08-08 16:12:03 -04:00
50h100a c1ab0212e5 update comments 2023-08-07 17:10:05 -04:00
50h100a 128945aaaa Copy 'relaxed api url' functionality over to webui 2023-08-07 16:46:32 -04:00
50h100a 2fc6813e66 code review adjustments part 1 2023-08-03 06:07:54 -04:00
Cohee 130559d499 #746 Add preset manager for ooba/kobold 2023-07-23 23:52:31 +03:00
Cohee 1b9ca4c9d9 Unhide advanced parameters for Novel 2023-07-23 02:09:03 +03:00
ThisIsPIRI e2f1f4a57a Add repetition penalty range for ooba 2023-07-22 07:38:35 +09:00
Cohee edd41989fd Initial commit 2023-07-20 20:32:15 +03:00