Commit Graph

434 Commits

Author SHA1 Message Date
Cohee bc1d745209 Rewrite getstatus_openai using fetch 2023-08-31 22:46:13 +03:00
rbmj deeedad19e
Make jsdoc/type-checker happy Pt 3 (#1070)
* png-chunks-extract.extract has no create_date

* `new Buffer.from` is not a thing

* handle failed character read

* stop lying about your return value

* what we get for mixing booleans and strings

* localeCompare makes more sense and fixes types

* uhh wtf, there is no callback in readFileSync

* no subtracting Dates, only Numbers (timestamps)

* handle if no file in request

* changing types makes typechecker mad

* handle false or undefined character read

* default param does not exist

* can't have same property assigned twice

* json5.parse expects a string, not buffer

* handle invalid thumbnail type

* handle invalid thumbnail type case

* ignore bad axios typing

* fix ambiguous typing

* types is incorrect? no .destroy(). use type guard

* include intended error handling of refactor

* Make API urls const

---------

Co-authored-by: Cohee <18619528+Cohee1207@users.noreply.github.com>
2023-08-31 19:44:58 +03:00
Cohee c19eb3146f Force set create date string 2023-08-31 19:30:27 +03:00
kingbri 4e553cf6ab Server: Allow appending of additional headers for local backends
This is a useful feature for those who want to utilize APIs with
proxy middleware for adding extra features or security. For cloud
API safety and abiding by rate limits, this feature only applies to
local backends such as ooba or kobold.

Signed-off-by: kingbri <bdashore3@proton.me>
2023-08-31 00:15:07 -04:00
Cohee 218cfb43d8 Fix gallery files caching, filter by mime type. Use fetch instead of Jquery Ajax 2023-08-31 00:55:17 +03:00
Cohee 194278d171 Merge branch 'staging' into feature/exorcism 2023-08-31 00:42:34 +03:00
Cohee 7cb896ddd7 Fix first run initialization 2023-08-31 00:40:03 +03:00
Cohee 7f99ae5705 Revert unnecessary string cast 2023-08-31 00:21:29 +03:00
RealBeepMcJeep 326c7d8841 input not an arr, it is an arr or string or other 2023-08-30 13:28:08 -07:00
RealBeepMcJeep 9dfe42a7c3 convert to async and fix types 2023-08-30 13:28:08 -07:00
RealBeepMcJeep 2e3ddd16d5 fix ambiguous args for typechecker 2023-08-30 13:28:08 -07:00
RealBeepMcJeep 77c9744878 make more readable & make types happy 2023-08-30 13:28:08 -07:00
RealBeepMcJeep 49aff85472 handle bad read of raw data 2023-08-30 13:28:08 -07:00
RealBeepMcJeep c1b76b5f48 resolve can only return one thing at a time 2023-08-30 13:28:08 -07:00
RealBeepMcJeep f7576750fc handle undefined X-Streaming-URL 2023-08-30 13:28:08 -07:00
RealBeepMcJeep 691e9ee754 this default param does not exist 2023-08-30 13:28:08 -07:00
RealBeepMcJeep ab9594fe62 handle missing user agent case 2023-08-30 13:28:08 -07:00
RealBeepMcJeep 8211e67ed7 generateToken requires req to set cookie 2023-08-30 13:28:08 -07:00
RealBeepMcJeep aa901883d2 node v18 type-checker hates this, ignore it 2023-08-30 13:28:08 -07:00
RealBeepMcJeep cd8027aeea fixes 7 errs. see yargs typescript docs. test plz 2023-08-30 13:28:08 -07:00
RealBeepMcJeep 3feeaaa09f listen requires a number, `URL` port is string wtf 2023-08-30 13:28:08 -07:00
RealBeepMcJeep 113ea1d0ec JSON.parse wants a string 2023-08-30 13:28:08 -07:00
city-unit 86c0974a6e More image support 2023-08-30 15:33:39 -04:00
Cohee 220d19d3ec Remove useless assignments 2023-08-30 22:09:09 +03:00
Cohee f5e52eab05 Specify read encoding 2023-08-30 22:04:11 +03:00
Cohee ce46e1a4ca Replace restClient in getstatus_novelai 2023-08-30 21:58:46 +03:00
Cohee a757532c3e Fix local fetch import for Kobold 2023-08-30 21:46:09 +03:00
Cohee 02f7c9ab64 Merge branch 'staging' into cleanup-imports 2023-08-30 21:19:14 +03:00
Cohee 27b6fe1f76 Fix sendFile usage 2023-08-30 21:14:53 +03:00
Cohee 52dbb916c0
Specify file read encoding where possible 2023-08-30 20:57:19 +03:00
Cohee 938e244987
Change file buffer read handling 2023-08-30 20:55:00 +03:00
RealBeepMcJeep 8b38015fab stop polluting my global namespace 2023-08-30 10:28:58 -07:00
RealBeepMcJeep 271a429a62 default param value does not exist 2023-08-30 10:28:58 -07:00
RealBeepMcJeep f3f9efb163 check the docs, there is no such option sirs 2023-08-30 10:28:58 -07:00
RealBeepMcJeep 398544407d type checker no trust functions as type guards 2023-08-30 10:28:58 -07:00
RealBeepMcJeep b648d9bd87 JSON.parse wants a string 2023-08-30 10:28:58 -07:00
RealBeepMcJeep 79e6d4c297 outdated local ai_horde library, bad 2023-08-30 10:28:58 -07:00
RealBeepMcJeep 94c6b453c0 workaround: pkg does not exist on type Process 2023-08-30 10:28:58 -07:00
RealBeepMcJeep 11cef1b234 type checker wants a string 2023-08-30 10:28:58 -07:00
RealBeepMcJeep 6ca678e137 sanitize only accepts strings 2023-08-30 10:28:58 -07:00
RealBeepMcJeep e1df933368 plz no pollute global namespace 2023-08-30 10:28:58 -07:00
RealBeepMcJeep b91bc21d60 fixes readableStream fuckery, needs testing 2023-08-30 10:28:58 -07:00
RealBeepMcJeep baac38f888 types demands we handle null case 2023-08-30 10:28:58 -07:00
RealBeepMcJeep 3422b3e963 inline function immediately called lolwtf 2023-08-30 10:28:58 -07:00
RealBeepMcJeep 4e78c3ec79 should be a string according to types 2023-08-30 10:28:58 -07:00
RealBeepMcJeep 2928c79446 simple-git needs to get their shit together 2023-08-30 10:28:58 -07:00
RealBeepMcJeep 20f807c5c9 async functions return promises silly 2023-08-30 10:28:58 -07:00
RealBeepMcJeep 37e20f6fc5 type-guard vs possible null 2023-08-30 10:28:58 -07:00
RealBeepMcJeep 6bd77bac7a checker thinks this could be undefined, handle it 2023-08-30 10:28:57 -07:00
RealBeepMcJeep c703b0b25e 'Buffer' is not assignable to param 'string' 2023-08-30 10:28:57 -07:00
RealBeepMcJeep 274b2e5009 fix ambiguous typing 2023-08-30 10:28:57 -07:00
city-unit 165d4b3b75 Merge branch 'staging' of https://github.com/city-unit/SillyTavern into feature/exorcism 2023-08-30 00:12:00 -04:00
RealBeepMcJeep 403546e514 finish moving and organizing require statements 2023-08-29 14:34:41 -07:00
RealBeepMcJeep 7bf72beed7 move AIHorde import to top 2023-08-29 14:29:02 -07:00
RealBeepMcJeep d07779e5da refactor ambiguous "Client" from node-rest-client 2023-08-29 14:28:13 -07:00
RealBeepMcJeep 26e008e907 move and organize more imports 2023-08-29 14:26:59 -07:00
RealBeepMcJeep 9087736835 move and organize additional imports 2023-08-29 14:23:53 -07:00
RealBeepMcJeep c0b1ea5f4c grouping native node imports 2023-08-29 14:20:37 -07:00
RealBeepMcJeep fc59b20f36 cli/fs related library import grouping 2023-08-29 14:16:39 -07:00
RealBeepMcJeep 918aba3eb6 group image processing imports at top 2023-08-29 14:12:47 -07:00
RealBeepMcJeep 288378919a move express imports to top 2023-08-29 14:10:40 -07:00
RealBeepMcJeep 8d5eb062e6 move fs and path imports to top 2023-08-29 14:06:37 -07:00
RealBeepMcJeep 2bd645e271 move child_process import to top 2023-08-29 14:05:18 -07:00
Cohee 01ff9604bd
Merge pull request #1043 from RealBeepMcJeep/patch-1
remove unused symbols
2023-08-29 23:37:46 +03:00
Cohee 9dc908c9aa Merge branch 'staging' of http://github.com/cohee1207/SillyTavern into staging 2023-08-29 23:28:53 +03:00
Cohee 8d2c84c6ef Limit max backups to settings only 2023-08-29 23:28:44 +03:00
rbmj e820245fcf
importing process unneeded, native to node runtime
process is native to node runtime, no need to import
2023-08-29 10:56:24 -07:00
rbmj 3d8761f077
remove unused symbols
these do nothing
2023-08-29 10:00:31 -07:00
Cohee f1b91620b6
Merge pull request #1021 from ouoertheo/ouoertheo/tts-ui-voicemap
TTS Voice map UI and Coqui UI improvements
2023-08-28 23:57:22 +03:00
Cohee 9ac2281a8f Remove spammy server log 2023-08-28 23:56:26 +03:00
city-unit 39eae80f6e Merge branch 'staging' of https://github.com/city-unit/SillyTavern into feature/exorcism 2023-08-27 12:47:05 -04:00
Cohee 9660aaa2c2 Add NovelAI hypebot plugin 2023-08-27 18:27:34 +03:00
Cohee 109ea4008b Improve Horde request error detection 2023-08-27 13:31:14 +03:00
Cohee 8cb194da0f Fix sending empty array as OAI stop strings 2023-08-27 13:17:20 +03:00
city-unit 3737f58072 Merge branch 'staging' of https://github.com/city-unit/SillyTavern into feature/exorcism 2023-08-26 20:56:38 -04:00
Cohee 4998c3acc8 Merge branch 'release' into staging 2023-08-26 22:07:06 +03:00
Cohee 3b7ca5e379 Add fallback option for OpenRouter 2023-08-26 21:59:56 +03:00
Cohee b8531ee75c #1022 Rewrite getstatus endpoint 2023-08-26 21:56:41 +03:00
Bahamut de905875c4 LibreTranslate 2023-08-26 20:47:25 +03:00
Bahamut 6ab1435f49 LibreTranslate 2023-08-26 19:53:57 +03:00
Cohee 464644e8a5 Fix console log string 2023-08-26 16:05:42 +03:00
Cohee 4d6d82ffcc
Merge pull request #1023 from StefanDanielSchwarz/Context-Template-Preset-Manager
context template preset manager
2023-08-26 16:04:35 +03:00
Cohee 7e506db105 Server fix for context template manager 2023-08-26 14:38:30 +03:00
Cohee 4fd0a055e2 Notify about listen mode connections 2023-08-26 14:17:57 +03:00
Cohee 42e6da4a36 Add support of stop strings to OpenAI / Claude 2023-08-26 00:12:11 +03:00
Tony Ribeiro 74a6e79df6 Added delete asset api route, factorise asset filename sanitizer to use in both asset download/delete. Added delete function to asset UI download button. 2023-08-25 00:45:15 +02:00
Tony Ribeiro 47a35076db Merge branch 'staging' of https://github.com/Tony-sama/SillyTavern into staging 2023-08-24 22:18:01 +02:00
Tony Ribeiro 1014d592f7 Added a refresh assets button to audio UI to detect audio asset again. Usefull after download an asset or putting a file manually. 2023-08-24 22:17:54 +02:00
Cohee 48924d3696 Improve asset downloader 2023-08-24 22:47:07 +03:00
Tony Ribeiro 3b6978010f
Merge branch 'SillyTavern:staging' into staging 2023-08-24 21:05:12 +02:00
Cohee cd24de3c2e Reformat code. 2023-08-24 21:59:26 +03:00
Cohee ab52af4fb5 Add support for Koboldcpp tokenization endpoint 2023-08-24 20:19:57 +03:00
Tony Ribeiro 43e70c9df1
Merge branch 'SillyTavern:staging' into staging 2023-08-24 15:18:02 +02:00
Mike Weldon 1d1109e43b Set generate_until_sentence for NovelAI
* Set generate_until_sentence true for NovelAI
* Add a Story String file for NovelAI with persona before character
  which works better
* Remove hardcoded dinkus for chat_start since it is in the Story String
2023-08-23 18:04:56 -07:00
Tony Ribeiro 46964b1b99 Add temp folder into assets, file are download into this temp file and moved only when complete. Allow to handle fail download. 2023-08-24 02:34:06 +02:00
Cohee 4aa31fcba9 Add fallback option for OpenRouter 2023-08-24 03:21:17 +03:00
Tony Ribeiro 017df860e5 Sanitized character bgm request. 2023-08-24 01:42:52 +02:00
Tony Ribeiro a5f66bda63 Added sanitization of request input for assets_download function. Changed assets download UI for button with little animation while downloading. 2023-08-24 00:17:07 +02:00
Tony Ribeiro f23115f6b3 - Added assets folder to .gitignore
- disabled audio extension by default
        - turned get request into post
        - avoid background that are data url
        - changed UI name to Dynamic Audio
        - Changed Assets/Audio ui load to use $.get
        - added assets json url as field in ui, with connect button require confirm from popup.
2023-08-23 18:51:41 +02:00
Tony Ribeiro d070336e9c Merge branch 'staging' of https://github.com/Tony-sama/SillyTavern into staging 2023-08-23 05:11:07 +02:00
Tony Ribeiro 13dac1f4d3 Assets extension, factorised using the received json type to organise the assets in the UI/folders. 2023-08-23 05:10:55 +02:00
Tony Ribeiro 8e38229ed4 Audio extension, handle custome background. Factorised bgm/ambient file listing into one assets listing function on server.js. 2023-08-23 03:47:13 +02:00
Tony Ribeiro 5009416f94
Merge branch 'SillyTavern:staging' into staging 2023-08-23 01:44:52 +02:00
Cohee 41cc86af9f Add example extension for chat variables. Allow registering custom text processing functions for extensions 2023-08-22 17:46:37 +03:00
based ba925f388c added more options to the scale request 2023-08-22 21:29:18 +10:00
based 06902279a9 merge 2023-08-22 21:17:18 +10:00
Tony Ribeiro 589631c154 prototype of assets list/download extension 2023-08-22 04:51:00 +02:00
Tony Ribeiro 4cf2b73eb1 Reorganised to handle different kind of assets, starting with audio bgm/ambient. 2023-08-22 01:49:45 +02:00
Tony Ribeiro b176a1ed12 Adapted audio extension to empty bgm/ambient folder 2023-08-22 00:46:49 +02:00
Tony Ribeiro 84e397c429 - Audio
- refactored dynamic bgm to handle solo and group chat
        - added bgm cooldown variable, user can custom in the ui
2023-08-21 23:33:31 +02:00
Tony Ribeiro 25daa61e83 Audio module proper extension code. Dedicated Audio extension scripts. Simple UI to adjust bgm/ambient. Load bgm per character from character folder and switch audio dynamically w.r.t. expression. Ambient sound updated when background change. 2023-08-21 23:33:30 +02:00
Cohee cf796af950 Fix 500 error on fetching an empty folder 2023-08-21 23:06:27 +03:00
city-unit c7d9eb39f5 Remove img filter, move file loader to utils 2023-08-21 11:21:32 -04:00
city-unit 3f04a5bfa0 Merge branch 'staging' of https://github.com/city-unit/SillyTavern into feature/exorcism 2023-08-21 00:47:35 -04:00
city-unit 82adc4c780 Merge branch 'feature/exorcism' of https://github.com/city-unit/SillyTavern into feature/exorcism 2023-08-21 00:46:47 -04:00
city-unit e31c87c471 Add a way to see images in an image folder safely. 2023-08-21 00:43:04 -04:00
Cohee 897ad28477 Apply preset manager for instruct presets 2023-08-21 00:56:53 +03:00
Cohee a27bef8b12 Merge branch 'staging' into qolfeatures 2023-08-20 18:47:43 +03:00
Cohee efa0f12349 Fix prompt manager issues 2023-08-20 16:25:16 +03:00
based 7ecc0295dc scale cookie method 2023-08-20 20:55:37 +10:00
Cohee 6fb278266b
Merge pull request #977 from city-unit/feature/exorcism
Feature/exorcism
2023-08-20 12:37:56 +03:00
Cohee 94754af013 Reformat code 2023-08-20 12:37:38 +03:00
city-unit e8c996ff61 Move to char+timestamp for img naming. 2023-08-20 01:41:58 -04:00
50h100a 83eb3449f3 localhost -> 127.0.0.1.
Thank you websockets, very cool.
2023-08-20 00:30:34 -04:00
city-unit 3ce8343016 Add comments and stuff 2023-08-20 00:15:57 -04:00
city-unit e76001a600 Merge branch 'staging' of https://github.com/city-unit/SillyTavern into feature/exorcism 2023-08-19 23:58:11 -04:00
city-unit 2f09efcd7f Exorcised base64 image stuff 2023-08-19 23:01:09 -04:00
Cohee bab368e3d2 Fix auto-load not triggering from hotswaps 2023-08-19 22:22:24 +03:00
based ce40780ed1 Added option to exclude assistant prefix to Claude prompt (for jailbreaks already appending Assistant:) 2023-08-20 03:09:50 +10:00
Cohee1207 5a68cd61a1 Remove unnecessary log 2023-08-19 18:58:37 +03:00
Cohee1207 2cd2318298 Code clean-up 2023-08-19 18:52:06 +03:00
Cohee 438c78574f
Merge pull request #971 from kingbased/jurassic
AI21 Adapter
2023-08-19 18:48:15 +03:00
based 0f21eabb6e AI21 Adapter + Tokenization implementation 2023-08-20 01:20:42 +10:00
Cohee1207 a9849d1883 More uploads cleanup 2023-08-19 17:50:16 +03:00
Cohee1207 6471ce2074 Clean-up uploads folder when possible 2023-08-19 17:43:56 +03:00
Cohee1207 991ff98eaa Performance optimizations for character edit / chat opening 2023-08-19 15:58:17 +03:00
deffcolony 9839ea5b07 adds green color for url line
This will make sure the link is more visible in console
2023-08-18 16:48:23 +02:00
Cohee f4dcd89ef6 Merge branch 'staging' of http://github.com/SillyTavern/SillyTavern into staging 2023-08-18 12:11:32 +03:00
Cohee 52431e246a Make file write operations sync 2023-08-18 12:11:18 +03:00
50h100a 8c191c4115 groundwork for WebUI-like streaming with mancer 2023-08-17 18:29:40 -04:00
Cohee e502354cec
Merge pull request #956 from 50h100a/streaming-fix
Fix (some) websocket shenanigans in WebUI streaming
2023-08-17 19:42:55 +03:00
Cohee 9c614529ca Make all file write operations atomic 2023-08-17 15:20:02 +03:00
Cohee 0b412033ba Streamline and simply Novel logit bias. Make it a part of preset 2023-08-17 13:05:22 +03:00
50h100a 13299e5c39 deal with websocket shenanigans
(and also clarify what's being printed out sometimes)
2023-08-17 05:52:32 -04:00
Mike Weldon 722801bb50 Add logit biases for NovelAI 2023-08-16 22:14:04 -07:00
Mike Weldon feb523bd01 NovelAI Kayra 1.1 update
* Updated some presets and added Cosmic Cube
* Change defaults for NovelAI to select Clio on cold start
* Automatically change the preset to an appropriate default whenever you change the model
* Removed deprecated Top G sampler
2023-08-15 18:52:29 -07:00
Cohee ea7268febd Replace tokenizer packages with agnai versions (not crash dumping to console) 2023-08-15 18:08:34 +03:00
Cohee 57b9a94c17 Add banned tokens for Novel 2023-08-15 15:51:14 +03:00
Mike Weldon 41ec7e5600 Many NovelAI fixes from dev guidance
* Remove AI Module "Autoselect" and make the auto-instruct work for all modules. This is how NAI is supposed to work.
* Log the response from the API.
* Move the AI Module setting up to the top of the settings window since it isn't part of the preset.
* Refactor phrase_rep_pen to use the actual API strings.
* Clamp the maximum token length to 150 before we call the API.
* Clamp the minimum token length in the UX from 1 to 150.
* Fix bug where the preamble was not initialized on cold start.
* Get rid of extra newline before dinkus.
* Make always_force_name2 default true.
2023-08-14 19:35:21 -07:00
Mike Weldon a0573413b2 Add new NAI samplers and update presets 2023-08-11 17:58:40 -07:00
spacegeek69 4b48861d13 [OpenRouter] Switch to token per dollar for prices 2023-08-10 21:13:24 +02:00
Cohee 23e869f56a Implicit variables to explicit 2023-08-10 20:06:18 +03:00
spacegeek69 0ede3894e2 [OpenRouter] Show API prices on connect in console 2023-08-10 11:21:58 +02:00
Cohee 25bd2541f7 Fix server crash in error handler 2023-08-08 23:11:27 +03:00
Cohee c94eae6eb6 Improve OpenAI/OpenRouter error parsing 2023-08-08 20:07:41 +03:00
Cohee 9a7654598e Don't crash the server on trying to display corrupted past chat 2023-08-08 17:56:13 +03:00
Cohee 5f97a52d58 #895 Move AI Horde connection to related endpoints 2023-08-07 19:34:10 +03:00
Cohee 151f4d322c #883 Add option to disable CSRF tokens 2023-08-06 16:42:15 +03:00
Cohee 74b973c571 Fix Novel error handling 2023-08-05 21:15:49 +03:00
Cohee cd8a24a712 Fix bulk edit 2023-08-04 14:41:00 +03:00
50h100a 9cf4056b28 Do backflips trying to get error information from endpoints.
Then present it nicely.
2023-08-03 07:32:53 -04:00
50h100a 61c0e3b08b Merge branch 'staging' of https://github.com/SillyTavern/SillyTavern into mancer-api 2023-08-02 23:46:03 -04:00
50h100a d4278388f7 remove non-changes 2023-08-02 23:38:50 -04:00
50h100a 2fdec7eb03 Added authentication variant to WebUI API. 2023-08-02 23:25:24 -04:00
Cohee1207 65a16970f4 Extend cases for OAI status code message pulling 2023-08-02 23:02:29 +03:00
gd1551 ea800d1550 Add stop sequences support to NovelAI generations 2023-08-02 22:42:11 +03:00
Cohee af8c21fea2 Send middle-out transform strategy to OpenRouter 2023-08-01 18:49:03 +03:00
Cohee 7596d78322 #844 Properly handle KoboldAI errors 2023-08-01 15:22:51 +03:00
Mike Weldon 73ea029acd Fix rep penalty parameter name 2023-07-30 14:14:17 -07:00
Mike Weldon 27c6e5ecff Fix some presets, bad words, rep allowlist, and banned tokens 2023-07-30 14:03:28 -07:00
Cohee dddc49c235 #798 Claude assistant prefill 2023-07-30 01:51:59 +03:00
RossAscends a646aaa125 Merge branch 'staging' of https://github.com/Cohee1207/SillyTavern into staging 2023-07-30 06:22:05 +09:00
RossAscends 80a0cb2bc4 MPV of QuickReply Presets 2023-07-30 06:22:03 +09:00
Cohee df8d7075a8 Handle 451 from OpenRouter 2023-07-29 22:50:07 +03:00
Mike Weldon 732707ae2b Turn on instruct mode for NAI 2023-07-28 22:56:31 -07:00
Mike Weldon b107848ccb Add Kayra presets 2023-07-28 17:23:28 -07:00
Cohee 3fb4756c03 #803 Add a separate field for proxy password 2023-07-28 21:33:29 +03:00
Cohee1207 3eea8a714c #789 Add sorting by char.data strings size ("tokens") 2023-07-27 23:45:25 +03:00
Cohee 0df8c4b6a2
Merge pull request #774 from city-unit/feature/delete
More general/functionalized char delete methods
2023-07-24 22:45:41 +03:00
city-unit 8fdea22379 Move delete calls to functions, generalize delete endpoint. 2023-07-24 15:05:27 -04:00
Cohee 130559d499 #746 Add preset manager for ooba/kobold 2023-07-23 23:52:31 +03:00
Cohee1207 f28e7cf47c Redirect to OpenAI site to view usage 2023-07-21 23:35:54 +03:00
Cohee b05d501f82 Add default content by contest winners 2023-07-21 15:28:32 +03:00
Cohee edd41989fd Initial commit 2023-07-20 20:32:15 +03:00