Commit Graph

533 Commits

Author SHA1 Message Date
Cohee 0ca880bf60 Check for whitespace-only WI format 2024-07-02 20:32:46 +03:00
Cohee 2293828f8e Ditto, for chat completion 2024-06-28 08:14:38 +00:00
Cohee cf56bfb6a9 Add 01.AI as a chat completion source 2024-06-28 00:51:09 +03:00
Cohee de7a5085b1 Partial revert of class/id distinction 2024-06-23 19:18:40 +03:00
Cohee f2d64a7d08 Merge branch 'staging' into modelsearch 2024-06-23 19:05:00 +03:00
Harrison 9b17f4e0c0 add search functionality for models 2024-06-24 00:47:06 +10:00
Wolfsblvt 461b1a9d87 Even more enum refactorings (not done yet)
- Add common enum icons
- enum def for existing enum types, with color description
2024-06-20 20:33:45 +02:00
Wolfsblvt 7f7ecdcca8 Merge branch 'staging' into slash-command-enums 2024-06-17 07:06:26 +02:00
Wolfsblvt 66d609c35f Several million refactoring of existing slash commands with enums (really) 2024-06-17 07:04:10 +02:00
Wolfsblvt 6f7ef25369 Rework slash command enum values pt.2
- Fix jsconfig module resolution for imports in frontend scripts
- Add file with common slash command enum values
2024-06-17 03:30:52 +02:00
Cohee 1a061c6ae5 Skip connect on max context unlock via preset 2024-06-16 22:16:47 +03:00
Cohee c7dc63200a Merge branch 'staging' into ruRuNew 2024-06-16 15:56:07 +03:00
Cohee 339428a4e9 #2379 Move continue prefill to end of completion 2024-06-15 18:00:09 +03:00
Cohee 405fc1458c Use ext. macros in prompt manager 2024-06-15 13:15:52 +03:00
Yokayo 84ee968ab4 More localizable text 2024-06-12 16:30:32 +07:00
Cohee 76c35d269b Calculate number of messages after event 2024-06-06 00:44:59 +03:00
Cohee ff241dd0a9 Add events for completed prompts 2024-06-06 00:23:12 +03:00
Cohee f27a83ef73 Restrict function calling to non-streaming only 2024-05-29 01:11:40 +03:00
Cohee b833f36c75 Function calling for Groq 2024-05-29 01:10:18 +03:00
Cohee 309eb80748 Function calling for Claude and OpenRouter 2024-05-29 00:56:55 +03:00
Cohee cb381595f9 Function calling for Mistral 2024-05-25 17:31:40 +03:00
Cohee fa6fc45e6f Function calling for Cohere 2024-05-25 17:09:47 +03:00
Cohee a20c6bb01e Extension framework for function tool calling 2024-05-25 15:31:57 +03:00
daiaji 66454bb711
Add reverse proxy support to Google MakerSuite to allow some Google MakerSuite URLs to no longer be hardcoded with domain names. (#2307)
* Add reverse proxy support to Google MakerSuite.

* Remove hardcoded URLs for some Google MakerSuite API calls.

* Don't send real key to alt.endpoint

* Fix for image captioning

* Fix key validation

* +fix key check for mistral

* Fix caption key validation

* Fix tokenization endpoint use

---------

Co-authored-by: Cohee <18619528+Cohee1207@users.noreply.github.com>
2024-05-24 21:38:29 +03:00
Cohee 4d161768c0 New Cohere model 2024-05-24 17:17:21 +03:00
Succubyss c822b9e2da Implements Assistant Impersonation Prefill 2024-05-16 21:59:58 -05:00
Cohee 7289ed72f8 #2240 Yes, I can add new maker suite model 2024-05-15 23:31:09 +03:00
Cohee caf236d60a Add event for chat completion settings ready 2024-05-14 22:34:40 +03:00
Cohee 49cb8daf7d Add inline image control 2024-05-14 01:08:31 +03:00
based 67610b9f7f gpt-4o 2024-05-14 04:37:36 +10:00
Len 1d75b98393
STscript Parser Rewrite (#1965)
* set isForced to true on input

* make floating auto-complete follow horizontal scrolling

* add callable closure vars

* changes to /let and /var for callable closures

* fix error message

* fix scope for closure arguments

* if should return the pipe result from closures

* use /run to call closures and no arguments on immediate closures

* throw exception from QRs window-function if no match

* when to show autocomplete vs info only

* autocomplete positioning

* autocomplete styling

* add theming to autocomplete (theme, dark, light)

* improve autocomplete show/hide logic and editor selection

* use blur tint color instead of chat tint color and use blur setting

* cleanup and docs

* use scope macros for QR args

* add enter to select autocomplete

* fix no executor found

* cleanup and comment

* fix alias list in help string

* fallback to empty string piped value if null or undefined

* fix typo

* blur textarea on ctrl+enter execute (and refocus after)

* stop executeSlashCommand if parser throws

* move /let and /var callbacks into functions

* switch textarea to monospace when value starts with slash

* add double pipe a pipe breaker

* fix /? slash

* remove some logging

* add "/:name" as shorthand for "/run name" after all

* move shit around

* fix error message

* use testRunShorthandEnd

* use parseQuotedValue and parseValue to determine name for "/:"

QR labels and set names can include spaces

* add some adjustments to make autocomplete work properly

some hint in there about "/:" would still be nice

* add autocomplete style  selector

* only strip quotes from subcommand if they are at both ends

* fix JSDoc

* escaping

* allow open quotes on dry run

* throwing shit at the wall for /: autocomplete

* escapes only for symbols

* clean up autocomplete

* improve performance

* fix scope macros

* remove unescaping of pipes

* fix macros in scope copy

* fix "/? slash"

* don't run parser for getNameAt if text has not changed

* fix options filter

* re-enable blur listener

* restore selection on non-replace select

* fix for escaping first character of value

* add support for {{pipe}} and {{var::}} closures

* add index support to var macro

* add scoped var macro to macro help

* more escape fixes

* reduce autocomplete render debounce

* cleanup

* restore old escape handling and parser flag for strict escaping

* fix "no match" autocomplete message

* add dummy commands for comments and parser flag

* fix type annotations

* somewhat safer macro replacements

* fix autocomplete select on blank / "no match"

* fix cutting off handled part in substitution

* add parser flag REPLACE_GETVAR

Replaces all {{getvar::}} and {{getglobalvar::}} macros with {{var::}}.
Inserts a series of command executors before the command with the macros that:
- save {{pipe}} to a var
- call /getvar or /getglobalvar to get the variable used in the macro
- call /let to save the retrieved variable
- return the saved {{pipe}} value

This helps to avoid double-substitutions when the var values contain text that could be interpreted as macros.

* remove old parser

* fix send on enter when no match

* deal with pipes in quoted values (loose escaping)

* add default parser flags to user settings

* allow quoted values in unnamed argument

* set parser flag without explicit state to "on"

* add click hint on parser error toast

* dirty more detailed cmd defs

* remove name from unnamed arg

* move autocomplete into class and floating with details

* replace jQuery's trigger('input') on #send_textarea with native events because jQuery does not dispatch the native event

* fix ctrl+space

* fix arrow navigation

* add comments

* fix pointer block

* add static fromProps

* fix up dummy commands

* migrate all commands to addCommandObject

* remove commented comment command

* fix alias in details

* add range as argument type

* switch to addCommandObject

* switch to addCommandObject

* fix height

* fix floating details position on left

* re-enable blur event

* use auto width for full details on floating autocomplete

* auto-size floating full details

* fix typo

* re-enable blur listener

* don't prevent enter when selected item is fully typed out

* add autocomplete details tooltips

* add language to slash command examples

* move makeItem into option and command and fix click select

* use autocomplete parts in /? slash

* fix alias formatting

* add language to slash command examples

* fix details position on initial input history

* small screen styles

* replace registerSlashCommand with detailed declarations

* put name on first line

* add missing returns

* fix missing comma

* fix alias display in autocomplete list

* remove args from help string

* move parser settings to its own section

* jsdoc

* hljs stscript lang

* add hljs to autocomplete help examples

* add missing import

* apply autocomplete colors to stscript codeblocks (hljs)

* add fromProps

* cache autocomplete elements

* towards generic autocomplete

* remove unused imports

* fix blanks

* add return types

* re-enable blur

* fix blank check

* Caption messages by id

* add aborting command execution

* fix return type

* fix chat input font reset

* add slash command progress indicator

* add missing return

* mark registerSlashCommand deprecated

* why??

* separate abort logic for commands

* remove parsing of quoted values from unnamed arg

* add adjustable autocomplete width

* revert stop button pulse

* add progress and pause/abort to QR editor

* add resize event on autocomplete width change

* add key= argument to all get vars

* refactoring

* introduce NamedArgumentAsignment

* add TODOs

* refactoring

* record start and end of named arg assignment

* refactoring

* prevent duplicate calls to show

* refactoring

* remove macro ac

* add secondary autocomplete and enum descriptions

* add syntax highlighting to QR editor

* add enum descriptions to /while

* add /let key=... to scope variable names

* add unnamed argument assignment class and unnamed argument splitting

* fix QR editor style

* remove dash before autocomplete help text

* add autocomplete for unnamed enums

* fix remaining dom after holding backslash

* fix for unnamed enums

* fix autocomplete for /parser-flag

* add parser-flag enum help

* fix type annotations

* fix autocomplete result for /:

* add colored autocomplete type icons

* collapse second line autocomplete help if empty

* mark optional named args in autocomplete

* fix when what

* remove duplicate debug buttons

* dispatch input on autocomplete select

* prevent grow from editor syntax layer

* add auto-adjust qr editor caret color

* remove text-shadow from autocomplete

* join value strings in /let and /var

* add /abort syntax highlight

* fix attempting secondary result when there is none

* rename settings headers and split autocomplete / stscript

* add parser flag tooltips

* add tooltips to chat width stops

* fix typo

* return clone of help item

* fix enum string

* don't make optional notice for autocomplete arguments smaller

* avoid scrollbar in chat input

* add rudimentary macro autocomplete

* strip macro from helptext

* finally remove closure delimiters around root

* cleanup

* fix index stuff for removed closure delimiters

* fix type hint

* add child commands to progress indicator

* include sub-separator in macro autocomplete

* remove all mentions of interruptsGeneration and purge

* remove unused imports

* fix syntax highlight with newline at end of input

* cleanup select pointer events

* coalesce onProgress call

* add regex to STscript syntax highlighting

* fix closure end

* fix autocomplete type icon alignment

* adjustments for small screens

* fix removing wrong element

* add missing "at=" arg to /sys, /comment, /sendas

* add font scale setting for autocomplete

* add target=_blank for parser flag links

* fix for searching enums

* remove REGEXP_MODE from hljs
just causes trouble

* fix autocomplete in closures

* fix typo

* fix type hint

* Get rid of scroll bar on load

* Add type hint for /send name argument. Fix 'at' types

* Add 'negative' arg hint to /sd command

* reenable blur event

* Allow /summarize to process any text

* Compact layout of script toggles

* Expand CSS by default

* fix double ranger indicator and adjust to narrow container

* make custom css input fill available vertical space

* reduce scroll lag

* use default cursor on scrollbar

* Clean-up module loading in index.html

* fix tab indent with hljs

---------

Co-authored-by: Cohee <18619528+Cohee1207@users.noreply.github.com>
2024-05-12 22:15:05 +03:00
Cohee c73bfbd7b0 Safari bruh moment 2024-05-06 21:21:03 +03:00
Cohee 7063fce2af Selectable openrouter providers 2024-05-06 19:26:20 +03:00
Cohee 181b5aff97 Add Groq as chat completion source 2024-05-05 18:53:12 +03:00
Cohee 31f1b34911 Add Perplexity L3-sonar models 2024-05-05 18:21:58 +03:00
Cohee 5197809d6b Add global variables to TypeScript definitions. Fix some errors 2024-05-04 20:44:41 +03:00
Cohee 7bc87b6e28 8x22b is supposed to have 64k tokens 2024-05-03 21:36:41 +03:00
sirius422 389ee7917f Add json extension to exported oai and LogitBias presets 2024-04-26 23:07:25 +08:00
Cohee b3bbec83b6 Merge branch 'staging' into neo-server 2024-04-20 02:56:05 +03:00
Cohee 2a2a63c52c Add Perplexity as Chat Completion source 2024-04-20 00:09:38 +03:00
Cohee 47a06c14d9 Merge branch 'staging' into neo-server 2024-04-17 21:59:30 +03:00
Cohee 8a4b675143 Disable-able chat history and examples 2024-04-17 21:23:06 +03:00
Cohee 9a1ea7f226 Implement Data Bank vectors querying 2024-04-17 02:09:22 +03:00
Cohee 8546490bcc Improve Scale JWT error handling 2024-04-16 18:59:01 +03:00
Cohee 71041ec764 Properly unset temp cap for all Chat Comp sources 2024-04-15 02:00:56 +03:00
Cohee 022c180b62 Lint and clean-up 2024-04-15 00:39:15 +03:00
Cohee 4a553e1fc8 Merge branch 'release' into staging 2024-04-15 00:26:43 +03:00
Cohee 1e088ac124 Fix /proxy command to return a name 2024-04-14 21:31:59 +03:00
Cohee 607e85639c Code clean-up 2024-04-14 19:31:38 +03:00
Ondřej Sakala 5ce625fb6b added a web-search toggle for Cohere API 2024-04-14 02:25:11 +02:00
Cohee 1c4bad35b2 #2085 Implement async token counting 2024-04-13 21:05:31 +03:00
Cohee ba397dd2a8 #2062 Extend unlock for MakerSuite models 2024-04-13 20:09:51 +03:00
Cohee 9c218455c4 [chore] Run ESLint 2024-04-12 14:22:12 +03:00
based 34bca69950 system prompt support for gemini 1.5 2024-04-11 16:38:20 +10:00
Cohee 53baa7aae7 #2051 #2031 Selectable prompt converter for custom OAI type 2024-04-10 21:12:57 +03:00
based 540cddf300 new turbo model 2024-04-10 14:24:43 +10:00
Cohee 6d65d47f00 Fix macro not being subbed in example separators for instruct 2024-04-09 11:24:16 +03:00
Cohee 42138ca09b Add command-r-plus 2024-04-04 20:38:34 +03:00
Cohee 51b3b8bfaa Add smooth streaming 2024-04-02 14:56:15 +03:00
Aisu Wata ac0a431cbe fix: avoid skipping example chats in a dialogue when close to quota 2024-04-01 22:44:16 -03:00
Cohee d498458971
Merge pull request #1996 from aisu-wata0/staging
fix: "Squash system messages" would fail to skip example messages
2024-04-02 00:35:57 +03:00
Cohee 9838ba8044 #1994 Add Cohere as a Chat Completion source 2024-04-02 00:20:17 +03:00
Aisu Wata 41860bdc57 fix: squashing system messages would fail to skip example messages 2024-04-01 01:24:29 -03:00
Cohee fcdd90cec4 Adjust last prompt line of quite gens 2024-03-28 21:51:02 +02:00
Cohee 310acfe810 Use new instruct sequences in prompt formatting 2024-03-28 00:52:20 +02:00
Cohee 01d17f4396 Export Chat Comps examples parser 2024-03-27 23:38:13 +02:00
based 6a51855f19 Update Makersuite models 2024-03-27 13:52:51 +10:00
Cohee 0218eb1a18 Disable newline wrapping of in-chat extension prompts 2024-03-25 13:11:28 +02:00
Cohee e153861043 Hide radio controls in drawers 2024-03-24 21:25:27 +02:00
Cohee 8a7ad5ef91 Indicate overridden prompts 2024-03-24 02:19:10 +02:00
Cohee 3b637cc9a6 Add forbid overrides to prompts 2024-03-24 01:28:35 +02:00
Cohee c1ac34e001 Disable-able main prompt 2024-03-24 00:28:54 +02:00
Cohee 7b9c0e303f Clean-up continue nudge init 2024-03-23 23:11:05 +02:00
Cohee 6665666098 Add continue postfix controls for Chat Completion 2024-03-23 23:02:42 +02:00
Cohee 67e78fa456 Add roles to summary injects 2024-03-23 19:18:43 +02:00
Cohee 607df2f555 Add ability to insert role-typed prompt injections 2024-03-23 17:36:43 +02:00
Cohee 6fe1b0f0e2 #1933 Gemini 1.5 Pro 2024-03-21 19:25:54 +02:00
Cohee 965bb54f7d Option to add names to completion contents 2024-03-19 21:53:40 +02:00
Cohee 4a5c1a5ac8 Remove vision model restrictions from OpenRouter. 2024-03-19 20:48:49 +02:00
Cohee 46993384a3 Allow any model to send inline images in OpenAI custom endpoint mode 2024-03-14 00:33:04 +02:00
Cohee e24fbfdc1d Update default OAI sampler parameters 2024-03-13 02:25:20 +02:00
Cohee 15eb18740e Pass char/user names for Claude example messages converter 2024-03-08 08:31:36 +02:00
Cohee 00a4a12d7d Remove "Exclude Assistant suffix" option 2024-03-05 20:41:53 +02:00
based 3e1d44fc29 remove deprecated option + reverse proxy support in claude vision 2024-03-06 02:47:00 +10:00
based de0e0dad27 he forgor oop 2024-03-05 15:33:07 +10:00
based 8d9175f3f2 update default settings preset 2024-03-05 15:22:16 +10:00
based 64d9c9dc5d anthropic captioning 2024-03-05 07:07:38 +10:00
based 7bb8741cfa fix older model naming for the new api 2024-03-05 05:50:29 +10:00
based 04bb882e90 implement messages api and selector for nuclaude models 2024-03-05 04:40:19 +10:00
based 149a65cf62 migrate model name in old presets to new naming scheme 2024-02-27 02:23:07 +10:00
Cohee c9f0d61f19 #1851 Substitute macros in new example chat 2024-02-22 18:45:50 +02:00
Cohee ece3b2a7c1 Fix Chat Completions status check on settings loading if another API is selected 2024-02-22 04:36:06 +02:00
Cohee 2e00a1baaf [FEATURE_REQUEST] Can the unlocked max context size for OpenAI completion be increased from 102k to 200k for example? #1842 2024-02-19 19:37:18 +02:00
Cohee 9d713825c2 #1827 Consolidate {{group}} macro behavior 2024-02-12 16:23:01 +02:00
Cohee 33d93b9761 #1813 Fix squash system messages 2024-02-11 15:56:48 +02:00
Cohee 18f84979f2 Use SSE streaming for MakerSuite 2024-02-10 02:43:50 +02:00
Cohee 90231680a9 Remove extra space 2024-02-08 00:05:23 +02:00
Cohee dfc1719c3f Use fuzzy name matching 2024-02-08 00:04:48 +02:00
EX3-0 b2eb361028
Update openai.js added /proxy command.
Added "proxy" slash command to openai.js to change between proxy presets in ST script.
2024-02-07 13:52:48 -05:00
anon 634c9aad3b add logsprobs support for custom OpenAI APIs 2024-02-04 23:11:45 +00:00
Cohee 7ac6ed267f #1782 OpenAI multiswipe 2024-02-04 03:36:37 +02:00
Cohee da7b435b7c
Merge pull request #1751 from kingbased/proxypreset
Reverse proxy presets
2024-01-29 22:09:33 +02:00
based ee7ee9f60a merged mistral proxy support 2024-01-27 06:26:23 +10:00
based aa976d0de2 implemented proxy preset manager 2024-01-27 06:21:00 +10:00
Cohee 4d534e3042 [BUG] Incorrect context size for gpt-4-turbo-0125 #1748 2024-01-26 18:51:20 +02:00
Cohee 1647e5ae49
Merge pull request #1734 from khanonnie/alternative-tokens
Implement Token Probabilities UI panel using logprobs
2024-01-26 03:39:25 +02:00
khanon 60044c18a4 Implement Token Probabilities UI using logprobs 2024-01-25 18:34:46 -06:00
Cohee 40476dca3b New OAI models 2024-01-25 22:01:02 +02:00
Cohee 515e3859ec
Merge pull request #1689 from h-a-s-k/staging
Group chat fixes
2024-01-25 20:51:55 +02:00
Cohee 107fe85543 Add OpenRouter filtered reason display 2024-01-23 00:10:53 +02:00
Cohee 0b322c0e3d Add repetition penalty control for OpenRouter 2024-01-18 23:55:09 +02:00
h-a-s-k 074cc13e60 Fix group chat example messages not including character name 2024-01-13 14:34:17 -03:00
h-a-s-k 9354697753 Actually call them example chats 2024-01-13 13:06:51 -03:00
Cohee f4c7fff8c0 Mistral API got fixed 2024-01-12 18:17:43 +02:00
Cohee e33ac6a78a Add min_p and top_a for OpenRouter 2024-01-12 17:15:13 +02:00
Cohee 747a7824c0 OpenRouter model dropdown facelift 2024-01-11 20:27:59 +02:00
Cohee 9b24e7dc67
Merge pull request #1596 from DonMoralez/staging
added exclude prefixes, modified sequence checker
2024-01-01 23:33:58 +02:00
Cohee 9106696f2f Render prompt manager when switching APIs 2024-01-01 17:06:10 +02:00
based 42aa7fd316 mistral proxy support 2023-12-31 06:21:40 +10:00
valadaptive 0d3505c44b Remove OAI_BEFORE_CHATCOMPLETION
Not used in any internal code or extensions I can find.
2023-12-25 03:48:49 -05:00
DonMoralez a8e5285ff7 Merge remote-tracking branch 'upstream/staging' into staging 2023-12-25 01:19:30 +02:00
Cohee f8dece9d88 Always remove logit bias and stop from vision 2023-12-24 20:01:59 +02:00
DonMoralez 6fb69d5929 Merge remote-tracking branch 'upstream/staging' into staging 2023-12-23 00:25:57 +02:00
Cohee 89d70539b9 Alternative continue method for chat completions 2023-12-22 20:24:54 +02:00
DonMoralez e95482aea1 Merge remote-tracking branch 'upstream/staging' into staging 2023-12-22 17:12:59 +02:00
DonMoralez ee06a488b0 Add exclude prefixes checkbox, modified sequence checker 2023-12-22 17:04:58 +02:00
Cohee a85a6cf606 Allow displaying unreferenced macro in message texts 2023-12-21 20:49:03 +02:00
DonMoralez 1c9643806b Merge remote-tracking branch 'upstream/staging' into staging 2023-12-21 17:30:37 +02:00
Cohee b5e59c819c Merge branch 'staging' into claude-rework 2023-12-21 16:52:43 +02:00
Cohee 3001db3a47 Add additional parameters for custom endpoints 2023-12-20 23:39:10 +02:00
Cohee ae64c99835 Add custom caption source 2023-12-20 21:05:20 +02:00
Cohee 5734dbd17c Add custom endpoint type 2023-12-20 18:29:03 +02:00
DonMoralez 50ece13752 Add restore button, def hum message, claude check 2023-12-18 02:25:17 +02:00
DonMoralez 7835a1360f Merge remote-tracking branch 'upstream/staging' into staging 2023-12-17 19:46:47 +02:00
based ed96ec5c3e reverse proxy condition fix 2023-12-16 12:02:34 +10:00
DonMoralez 6b59014892 (Fix) "squash sys. messages" processed empty messages, adding \n 2023-12-16 00:24:48 +02:00
based 583f786d74 finish mistral frontend integration + apikey status check 2023-12-16 07:15:57 +10:00
based 041957975a add mistral completion source to UI 2023-12-16 06:08:41 +10:00
DonMoralez 10fb83ee53 Merge remote-tracking branch 'upstream/staging' into staging 2023-12-15 13:12:15 +02:00
Cohee cde9903fcb Fix Bison models 2023-12-14 22:18:34 +02:00
DonMoralez 6f16ccf01f Merge branch 'staging' of https://github.com/DonMoralez/SillyTavern into staging 2023-12-14 20:17:41 +02:00
Cohee 6bb894286e Migrate palm source to makersuite 2023-12-14 19:54:31 +02:00
based 5071b9a369 webstorm moment 2023-12-15 02:01:42 +10:00
based 60880cfd4d merge 2023-12-15 01:39:12 +10:00
based 698850b514 Merge remote-tracking branch 'fork/staging' into gemini
# Conflicts:
#	server.js
#	src/endpoints/prompt-converters.js
#	src/endpoints/tokenizers.js
2023-12-15 01:35:17 +10:00
based d5bcd96eef message inlining vision support 2023-12-15 01:28:54 +10:00
based 0b7c1a98cd added google vision caption support 2023-12-14 22:37:53 +10:00
based ca87f29771 added streaming for google models 2023-12-14 21:03:41 +10:00
based 3e82a7d439 tokenizer changes and fixes. + a toggle 2023-12-14 16:31:08 +10:00
based e26159c00d refactor and rework palm request to work with the 'content' format and added an endpoint for googles tokenizer 2023-12-14 15:49:50 +10:00