Merge branch 'staging' into sysprompt-divorce

This commit is contained in:
Cohee 2024-09-21 22:15:37 +03:00
commit c2114bc83d
15 changed files with 154 additions and 99 deletions

View File

@ -1,9 +1,20 @@
> [!IMPORTANT] > [!IMPORTANT]
> ここに掲載されている情報は、古かったり不完全であったりする可能性があります。最新の情報は英語版をご利用ください。 > ここに掲載されている情報は、古かったり不完全であったりする可能性があります。最新の情報は英語版をご利用ください。
![][cover]
<div align="center">
[English](readme.md) | [中文](readme-zh_cn.md) | 日本語 | [Русский](readme-ru_ru.md) [English](readme.md) | [中文](readme-zh_cn.md) | 日本語 | [Русский](readme-ru_ru.md)
![SillyTavern-Banner](https://github.com/SillyTavern/SillyTavern/assets/18619528/c2be4c3f-aada-4f64-87a3-ae35a68b61a4) [![GitHub Stars](https://img.shields.io/github/stars/SillyTavern/SillyTavern.svg)](https://github.com/SillyTavern/SillyTavern/stargazers)
[![GitHub Forks](https://img.shields.io/github/forks/SillyTavern/SillyTavern.svg)](https://github.com/SillyTavern/SillyTavern/network)
[![GitHub Issues](https://img.shields.io/github/issues/SillyTavern/SillyTavern.svg)](https://github.com/SillyTavern/SillyTavern/issues)
[![GitHub Pull Requests](https://img.shields.io/github/issues-pr/SillyTavern/SillyTavern.svg)](https://github.com/SillyTavern/SillyTavern/pulls)
</div>
---
モバイルデバイスにも適したレイアウト・マルチAPIKoboldAI/CPP、Horde、NovelAI、Ooba、OpenAI、OpenRouter、Claude、Scale、VN ライクな Waifu モード、Stable Diffusion、TTS、WorldInfo伝承本、カスタマイズ可能なUI、自動翻訳、大量のプロンプトオプションサードパーティの拡張機能をインストールする機能 モバイルデバイスにも適したレイアウト・マルチAPIKoboldAI/CPP、Horde、NovelAI、Ooba、OpenAI、OpenRouter、Claude、Scale、VN ライクな Waifu モード、Stable Diffusion、TTS、WorldInfo伝承本、カスタマイズ可能なUI、自動翻訳、大量のプロンプトオプションサードパーティの拡張機能をインストールする機能
@ -284,8 +295,8 @@ ST サーバを再起動すると、ユーザ名とパスワードさえ知っ
## スクリーンショット ## スクリーンショット
<img width="400" alt="image" src="https://user-images.githubusercontent.com/18619528/228649245-8061c60f-63dc-488e-9325-f151b7a3ec2d.png"> <img width="500" alt="image" src="https://github.com/user-attachments/assets/9b5f32f0-c3b3-4102-b3f5-0e9213c0f50f">
<img width="400" alt="image" src="https://user-images.githubusercontent.com/18619528/228649856-fbdeef05-d727-4d5a-be80-266cbbc6b811.png"> <img width="500" alt="image" src="https://github.com/user-attachments/assets/913fdbaa-7d33-42f1-ae2c-89dca41c53d1">
## ライセンスとクレジット ## ライセンスとクレジット
@ -314,3 +325,6 @@ ST サーバを再起動すると、ユーザ名とパスワードさえ知っ
* @doloroushyeonse による韓国語翻訳 * @doloroushyeonse による韓国語翻訳
* k_euler_a による Horde のサポート <https://github.com/Teashrock> * k_euler_a による Horde のサポート <https://github.com/Teashrock>
* [@XXpE3](https://github.com/XXpE3) による中国語翻訳、中国語 ISSUES の連絡先は @XXpE3 * [@XXpE3](https://github.com/XXpE3) による中国語翻訳、中国語 ISSUES の連絡先は @XXpE3
<!-- LINK GROUP -->
[cover]: https://github.com/user-attachments/assets/01a6ae9a-16aa-45f2-8bff-32b5dc587e44

View File

@ -3,9 +3,20 @@
<a name="readme-top"></a> <a name="readme-top"></a>
![][cover]
<div align="center">
[English](readme.md) | [中文](readme-zh_cn.md) | [日本語](readme-ja_jp.md) | Русский [English](readme.md) | [中文](readme-zh_cn.md) | [日本語](readme-ja_jp.md) | Русский
![][cover] [![GitHub Stars](https://img.shields.io/github/stars/SillyTavern/SillyTavern.svg)](https://github.com/SillyTavern/SillyTavern/stargazers)
[![GitHub Forks](https://img.shields.io/github/forks/SillyTavern/SillyTavern.svg)](https://github.com/SillyTavern/SillyTavern/network)
[![GitHub Issues](https://img.shields.io/github/issues/SillyTavern/SillyTavern.svg)](https://github.com/SillyTavern/SillyTavern/issues)
[![GitHub Pull Requests](https://img.shields.io/github/issues-pr/SillyTavern/SillyTavern.svg)](https://github.com/SillyTavern/SillyTavern/pulls)
</div>
---
Мобайл-френдли интерфейс, поддержка множества API (KoboldAI/CPP, Horde, NovelAI, Ooba, OpenAI, OpenRouter, Claude, Scale), ВН-образный режим Вайфу, Stable Diffusion, TTS, поддержка миров (лорбуков), кастомизируемый UI, автоперевод, тончайшая настройка промптов + возможность устанавливать расширения. Мобайл-френдли интерфейс, поддержка множества API (KoboldAI/CPP, Horde, NovelAI, Ooba, OpenAI, OpenRouter, Claude, Scale), ВН-образный режим Вайфу, Stable Diffusion, TTS, поддержка миров (лорбуков), кастомизируемый UI, автоперевод, тончайшая настройка промптов + возможность устанавливать расширения.
@ -29,8 +40,8 @@ SillyTavern — это форк версии TavernAI 1.2.8, который ра
## Скриншоты ## Скриншоты
<img width="400" alt="image" src="https://github.com/SillyTavern/SillyTavern/assets/61471128/e902c7a2-45a6-4415-97aa-c59c597669c1"> <img width="500" alt="image" src="https://github.com/user-attachments/assets/9b5f32f0-c3b3-4102-b3f5-0e9213c0f50f">
<img width="400" alt="image" src="https://github.com/SillyTavern/SillyTavern/assets/61471128/f8a79c47-4fe9-4564-9e4a-bf247ed1c961"> <img width="500" alt="image" src="https://github.com/user-attachments/assets/913fdbaa-7d33-42f1-ae2c-89dca41c53d1">
### Ветки ### Ветки
@ -355,7 +366,7 @@ SillyTavern сохраняет ключи от ваших API в файле `sec
<!-- LINK GROUP --> <!-- LINK GROUP -->
[back-to-top]: https://img.shields.io/badge/-BACK_TO_TOP-151515?style=flat-square [back-to-top]: https://img.shields.io/badge/-BACK_TO_TOP-151515?style=flat-square
[cover]: https://github.com/SillyTavern/SillyTavern/assets/18619528/c2be4c3f-aada-4f64-87a3-ae35a68b61a4 [cover]: https://github.com/user-attachments/assets/01a6ae9a-16aa-45f2-8bff-32b5dc587e44
[discord-link]: https://discord.gg/sillytavern [discord-link]: https://discord.gg/sillytavern
[discord-shield]: https://img.shields.io/discord/1100685673633153084?color=5865F2&label=discord&labelColor=black&logo=discord&logoColor=white&style=flat-square [discord-shield]: https://img.shields.io/discord/1100685673633153084?color=5865F2&label=discord&labelColor=black&logo=discord&logoColor=white&style=flat-square
[discord-shield-badge]: https://img.shields.io/discord/1100685673633153084?color=5865F2&label=discord&labelColor=black&logo=discord&logoColor=white&style=for-the-badge [discord-shield-badge]: https://img.shields.io/discord/1100685673633153084?color=5865F2&label=discord&labelColor=black&logo=discord&logoColor=white&style=for-the-badge

View File

@ -1,9 +1,20 @@
> [!IMPORTANT] > [!IMPORTANT]
> 这里的信息可能已经过时或不完整,仅供您参考。请使用英文版本获取最新信息。 > 这里的信息可能已经过时或不完整,仅供您参考。请使用英文版本获取最新信息。
![][cover]
<div align="center">
[English](readme.md) | 中文 | [日本語](readme-ja_jp.md) | [Русский](readme-ru_ru.md) [English](readme.md) | 中文 | [日本語](readme-ja_jp.md) | [Русский](readme-ru_ru.md)
![image](https://github.com/SillyTavern/SillyTavern/assets/18619528/c2be4c3f-aada-4f64-87a3-ae35a68b61a4) [![GitHub Stars](https://img.shields.io/github/stars/SillyTavern/SillyTavern.svg)](https://github.com/SillyTavern/SillyTavern/stargazers)
[![GitHub Forks](https://img.shields.io/github/forks/SillyTavern/SillyTavern.svg)](https://github.com/SillyTavern/SillyTavern/network)
[![GitHub Issues](https://img.shields.io/github/issues/SillyTavern/SillyTavern.svg)](https://github.com/SillyTavern/SillyTavern/issues)
[![GitHub Pull Requests](https://img.shields.io/github/issues-pr/SillyTavern/SillyTavern.svg)](https://github.com/SillyTavern/SillyTavern/pulls)
</div>
---
移动设备界面友好多种人工智能服务或模型支持KoboldAI/CPP, Horde, NovelAI, Ooba, OpenAI, OpenRouter, Claude, Scale类似 Galgame 的 老 婆 模 式Horde SD文本系统语音生成世界信息Lorebooks可定制的界面自动翻译和比你所需要的更多的 Prompt。附带扩展服务支持文本绘画生成与语音生成和基于向量数据库 的聊天信息总结。 移动设备界面友好多种人工智能服务或模型支持KoboldAI/CPP, Horde, NovelAI, Ooba, OpenAI, OpenRouter, Claude, Scale类似 Galgame 的 老 婆 模 式Horde SD文本系统语音生成世界信息Lorebooks可定制的界面自动翻译和比你所需要的更多的 Prompt。附带扩展服务支持文本绘画生成与语音生成和基于向量数据库 的聊天信息总结。
@ -278,8 +289,8 @@ SillyTavern 会将 API 密钥保存在目录中的 `secrets.json` 文件内。
## 屏幕截图 ## 屏幕截图
<img width="400" alt="image" src="https://user-images.githubusercontent.com/18619528/228649245-8061c60f-63dc-488e-9325-f151b7a3ec2d.png"> <img width="500" alt="image" src="https://github.com/user-attachments/assets/9b5f32f0-c3b3-4102-b3f5-0e9213c0f50f">
<img width="400" alt="image" src="https://user-images.githubusercontent.com/18619528/228649856-fbdeef05-d727-4d5a-be80-266cbbc6b811.png"> <img width="500" alt="image" src="https://github.com/user-attachments/assets/913fdbaa-7d33-42f1-ae2c-89dca41c53d1">
## 许可证和贡献 ## 许可证和贡献
@ -306,3 +317,6 @@ SillyTavern 会将 API 密钥保存在目录中的 `secrets.json` 文件内。
* Default content (characters and lore books) provided by @OtisAlejandro, @RossAscends and @kallmeflocc * Default content (characters and lore books) provided by @OtisAlejandro, @RossAscends and @kallmeflocc
* Korean translation by @doloroushyeonse * Korean translation by @doloroushyeonse
* 中文翻译由 [@XXpE3](https://github.com/XXpE3) 完成,中文 ISSUES 可以联系 @XXpE3 * 中文翻译由 [@XXpE3](https://github.com/XXpE3) 完成,中文 ISSUES 可以联系 @XXpE3
<!-- LINK GROUP -->
[cover]: https://github.com/user-attachments/assets/01a6ae9a-16aa-45f2-8bff-32b5dc587e44

19
.github/readme.md vendored
View File

@ -1,8 +1,19 @@
<a name="readme-top"></a> <a name="readme-top"></a>
![][cover]
<div align="center">
English | [中文](readme-zh_cn.md) | [日本語](readme-ja_jp.md) | [Русский](readme-ru_ru.md) English | [中文](readme-zh_cn.md) | [日本語](readme-ja_jp.md) | [Русский](readme-ru_ru.md)
![][cover] [![GitHub Stars](https://img.shields.io/github/stars/SillyTavern/SillyTavern.svg)](https://github.com/SillyTavern/SillyTavern/stargazers)
[![GitHub Forks](https://img.shields.io/github/forks/SillyTavern/SillyTavern.svg)](https://github.com/SillyTavern/SillyTavern/network)
[![GitHub Issues](https://img.shields.io/github/issues/SillyTavern/SillyTavern.svg)](https://github.com/SillyTavern/SillyTavern/issues)
[![GitHub Pull Requests](https://img.shields.io/github/issues-pr/SillyTavern/SillyTavern.svg)](https://github.com/SillyTavern/SillyTavern/pulls)
</div>
---
SillyTavern provides a single unified interface for many LLM APIs (KoboldAI/CPP, Horde, NovelAI, Ooba, Tabby, OpenAI, OpenRouter, Claude, Mistral and more), a mobile-friendly layout, Visual Novel Mode, Automatic1111 & ComfyUI API image generation integration, TTS, WorldInfo (lorebooks), customizable UI, auto-translate, more prompt options than you'd ever want or need, and endless growth potential via third-party extensions. SillyTavern provides a single unified interface for many LLM APIs (KoboldAI/CPP, Horde, NovelAI, Ooba, Tabby, OpenAI, OpenRouter, Claude, Mistral and more), a mobile-friendly layout, Visual Novel Mode, Automatic1111 & ComfyUI API image generation integration, TTS, WorldInfo (lorebooks), customizable UI, auto-translate, more prompt options than you'd ever want or need, and endless growth potential via third-party extensions.
@ -65,8 +76,8 @@ Or get in touch with the developers directly:
## Screenshots ## Screenshots
<img width="400" alt="image" src="https://github.com/SillyTavern/SillyTavern/assets/61471128/e902c7a2-45a6-4415-97aa-c59c597669c1"> <img width="500" alt="image" src="https://github.com/user-attachments/assets/9b5f32f0-c3b3-4102-b3f5-0e9213c0f50f">
<img width="400" alt="image" src="https://github.com/SillyTavern/SillyTavern/assets/61471128/f8a79c47-4fe9-4564-9e4a-bf247ed1c961"> <img width="500" alt="image" src="https://github.com/user-attachments/assets/913fdbaa-7d33-42f1-ae2c-89dca41c53d1">
## Character Cards ## Character Cards
@ -363,6 +374,6 @@ GNU Affero General Public License for more details.**
[![Contributors](https://contrib.rocks/image?repo=SillyTavern/SillyTavern)](https://github.com/SillyTavern/SillyTavern/graphs/contributors) [![Contributors](https://contrib.rocks/image?repo=SillyTavern/SillyTavern)](https://github.com/SillyTavern/SillyTavern/graphs/contributors)
<!-- LINK GROUP --> <!-- LINK GROUP -->
[cover]: https://github.com/SillyTavern/SillyTavern/assets/18619528/c2be4c3f-aada-4f64-87a3-ae35a68b61a4 [cover]: https://github.com/user-attachments/assets/01a6ae9a-16aa-45f2-8bff-32b5dc587e44
[discord-link]: https://discord.gg/sillytavern [discord-link]: https://discord.gg/sillytavern
[discord-shield-badge]: https://img.shields.io/discord/1100685673633153084?color=5865F2&label=discord&labelColor=black&logo=discord&logoColor=white&style=for-the-badge [discord-shield-badge]: https://img.shields.io/discord/1100685673633153084?color=5865F2&label=discord&labelColor=black&logo=discord&logoColor=white&style=for-the-badge

103
package-lock.json generated
View File

@ -22,7 +22,7 @@
"cookie-session": "^2.1.0", "cookie-session": "^2.1.0",
"cors": "^2.8.5", "cors": "^2.8.5",
"csrf-csrf": "^2.2.3", "csrf-csrf": "^2.2.3",
"express": "^4.20.0", "express": "^4.21.0",
"form-data": "^4.0.0", "form-data": "^4.0.0",
"google-translate-api-browser": "^3.0.1", "google-translate-api-browser": "^3.0.1",
"he": "^1.2.0", "he": "^1.2.0",
@ -1568,21 +1568,6 @@
"node": ">=0.10.0" "node": ">=0.10.0"
} }
}, },
"node_modules/body-parser/node_modules/qs": {
"version": "6.13.0",
"resolved": "https://registry.npmjs.org/qs/-/qs-6.13.0.tgz",
"integrity": "sha512-+38qI9SOr8tfZ4QmJNplMUxqjbe7LKvvZgWdExBOmd+egZTtjLB67Gu0HRX3u/XOq7UU2Nx6nsjvS16Z9uwfpg==",
"license": "BSD-3-Clause",
"dependencies": {
"side-channel": "^1.0.6"
},
"engines": {
"node": ">=0.6"
},
"funding": {
"url": "https://github.com/sponsors/ljharb"
}
},
"node_modules/boolbase": { "node_modules/boolbase": {
"version": "1.0.0", "version": "1.0.0",
"resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz",
@ -1728,6 +1713,7 @@
"version": "2.7.0", "version": "2.7.0",
"resolved": "https://registry.npmjs.org/centra/-/centra-2.7.0.tgz", "resolved": "https://registry.npmjs.org/centra/-/centra-2.7.0.tgz",
"integrity": "sha512-PbFMgMSrmgx6uxCdm57RUos9Tc3fclMvhLSATYN39XsDV29B89zZ3KA89jmY0vwSGazyU+uerqwa6t+KaodPcg==", "integrity": "sha512-PbFMgMSrmgx6uxCdm57RUos9Tc3fclMvhLSATYN39XsDV29B89zZ3KA89jmY0vwSGazyU+uerqwa6t+KaodPcg==",
"license": "MIT",
"dependencies": { "dependencies": {
"follow-redirects": "^1.15.6" "follow-redirects": "^1.15.6"
} }
@ -2540,9 +2526,9 @@
"license": "MIT" "license": "MIT"
}, },
"node_modules/encodeurl": { "node_modules/encodeurl": {
"version": "1.0.2", "version": "2.0.0",
"resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-2.0.0.tgz",
"integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==", "integrity": "sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg==",
"license": "MIT", "license": "MIT",
"engines": { "engines": {
"node": ">= 0.8" "node": ">= 0.8"
@ -2879,9 +2865,9 @@
"integrity": "sha512-c2bQfLNbMzLPmzQuOr8fy0csy84WmwnER81W88DzTp9CYNPJ6yzOj2EZAh9pywYpqHnshVLHQJ8WzldAyfY+Iw==" "integrity": "sha512-c2bQfLNbMzLPmzQuOr8fy0csy84WmwnER81W88DzTp9CYNPJ6yzOj2EZAh9pywYpqHnshVLHQJ8WzldAyfY+Iw=="
}, },
"node_modules/express": { "node_modules/express": {
"version": "4.20.0", "version": "4.21.0",
"resolved": "https://registry.npmjs.org/express/-/express-4.20.0.tgz", "resolved": "https://registry.npmjs.org/express/-/express-4.21.0.tgz",
"integrity": "sha512-pLdae7I6QqShF5PnNTCVn4hI91Dx0Grkn2+IAsMTgMIKuQVte2dN9PeGSSAME2FR8anOhVA62QDIUaWVfEXVLw==", "integrity": "sha512-VqcNGcj/Id5ZT1LZ/cfihi3ttTn+NJmkli2eZADigjq29qTlWi/hAQ43t/VLPq8+UX06FCEx3ByOYet6ZFblng==",
"license": "MIT", "license": "MIT",
"dependencies": { "dependencies": {
"accepts": "~1.3.8", "accepts": "~1.3.8",
@ -2896,7 +2882,7 @@
"encodeurl": "~2.0.0", "encodeurl": "~2.0.0",
"escape-html": "~1.0.3", "escape-html": "~1.0.3",
"etag": "~1.8.1", "etag": "~1.8.1",
"finalhandler": "1.2.0", "finalhandler": "1.3.1",
"fresh": "0.5.2", "fresh": "0.5.2",
"http-errors": "2.0.0", "http-errors": "2.0.0",
"merge-descriptors": "1.0.3", "merge-descriptors": "1.0.3",
@ -2905,11 +2891,11 @@
"parseurl": "~1.3.3", "parseurl": "~1.3.3",
"path-to-regexp": "0.1.10", "path-to-regexp": "0.1.10",
"proxy-addr": "~2.0.7", "proxy-addr": "~2.0.7",
"qs": "6.11.0", "qs": "6.13.0",
"range-parser": "~1.2.1", "range-parser": "~1.2.1",
"safe-buffer": "5.2.1", "safe-buffer": "5.2.1",
"send": "0.19.0", "send": "0.19.0",
"serve-static": "1.16.0", "serve-static": "1.16.2",
"setprototypeof": "1.2.0", "setprototypeof": "1.2.0",
"statuses": "2.0.1", "statuses": "2.0.1",
"type-is": "~1.6.18", "type-is": "~1.6.18",
@ -2928,15 +2914,6 @@
"node": ">= 0.6" "node": ">= 0.6"
} }
}, },
"node_modules/express/node_modules/encodeurl": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-2.0.0.tgz",
"integrity": "sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg==",
"license": "MIT",
"engines": {
"node": ">= 0.8"
}
},
"node_modules/express/node_modules/safe-buffer": { "node_modules/express/node_modules/safe-buffer": {
"version": "5.2.1", "version": "5.2.1",
"resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz",
@ -3033,13 +3010,13 @@
} }
}, },
"node_modules/finalhandler": { "node_modules/finalhandler": {
"version": "1.2.0", "version": "1.3.1",
"resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.2.0.tgz", "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.3.1.tgz",
"integrity": "sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==", "integrity": "sha512-6BN9trH7bp3qvnrRyzsBz+g3lZxTNZTbVO2EV1CS0WIcDbawYVdYvGflME/9QP0h0pYlCDBCTjYa9nZzMDpyxQ==",
"license": "MIT", "license": "MIT",
"dependencies": { "dependencies": {
"debug": "2.6.9", "debug": "2.6.9",
"encodeurl": "~1.0.2", "encodeurl": "~2.0.0",
"escape-html": "~1.0.3", "escape-html": "~1.0.3",
"on-finished": "2.4.1", "on-finished": "2.4.1",
"parseurl": "~1.3.3", "parseurl": "~1.3.3",
@ -4080,9 +4057,9 @@
} }
}, },
"node_modules/load-bmfont": { "node_modules/load-bmfont": {
"version": "1.4.1", "version": "1.4.2",
"resolved": "https://registry.npmjs.org/load-bmfont/-/load-bmfont-1.4.1.tgz", "resolved": "https://registry.npmjs.org/load-bmfont/-/load-bmfont-1.4.2.tgz",
"integrity": "sha512-8UyQoYmdRDy81Brz6aLAUhfZLwr5zV0L3taTQ4hju7m6biuwiWiJXjPhBJxbUQJA8PrkvJ/7Enqmwk2sM14soA==", "integrity": "sha512-qElWkmjW9Oq1F9EI5Gt7aD9zcdHb9spJCW1L/dmPf7KzCCEJxq8nhHz5eCgI9aMf7vrG/wyaCqdsI+Iy9ZTlog==",
"license": "MIT", "license": "MIT",
"dependencies": { "dependencies": {
"buffer-equal": "0.0.1", "buffer-equal": "0.0.1",
@ -4090,7 +4067,7 @@
"parse-bmfont-ascii": "^1.0.3", "parse-bmfont-ascii": "^1.0.3",
"parse-bmfont-binary": "^1.0.5", "parse-bmfont-binary": "^1.0.5",
"parse-bmfont-xml": "^1.1.4", "parse-bmfont-xml": "^1.1.4",
"phin": "^2.9.1", "phin": "^3.7.1",
"xhr": "^2.0.1", "xhr": "^2.0.1",
"xtend": "^4.0.0" "xtend": "^4.0.0"
} }
@ -4692,13 +4669,13 @@
"license": "MIT" "license": "MIT"
}, },
"node_modules/parse-bmfont-xml": { "node_modules/parse-bmfont-xml": {
"version": "1.1.4", "version": "1.1.6",
"resolved": "https://registry.npmjs.org/parse-bmfont-xml/-/parse-bmfont-xml-1.1.4.tgz", "resolved": "https://registry.npmjs.org/parse-bmfont-xml/-/parse-bmfont-xml-1.1.6.tgz",
"integrity": "sha512-bjnliEOmGv3y1aMEfREMBJ9tfL3WR0i0CKPj61DnSLaoxWR3nLrsQrEbCId/8rF4NyRF0cCqisSVXyQYWM+mCQ==", "integrity": "sha512-0cEliVMZEhrFDwMh4SxIyVJpqYoOWDJ9P895tFuS+XuNzI5UBmBk5U5O4KuJdTnZpSBI4LFA2+ZiJaiwfSwlMA==",
"license": "MIT", "license": "MIT",
"dependencies": { "dependencies": {
"xml-parse-from-string": "^1.0.0", "xml-parse-from-string": "^1.0.0",
"xml2js": "^0.4.5" "xml2js": "^0.5.0"
} }
}, },
"node_modules/parse-headers": { "node_modules/parse-headers": {
@ -4814,6 +4791,7 @@
"version": "3.7.1", "version": "3.7.1",
"resolved": "https://registry.npmjs.org/phin/-/phin-3.7.1.tgz", "resolved": "https://registry.npmjs.org/phin/-/phin-3.7.1.tgz",
"integrity": "sha512-GEazpTWwTZaEQ9RhL7Nyz0WwqilbqgLahDM3D0hxWwmVDI52nXEybHqiN6/elwpkJBhcuj+WbBu+QfT0uhPGfQ==", "integrity": "sha512-GEazpTWwTZaEQ9RhL7Nyz0WwqilbqgLahDM3D0hxWwmVDI52nXEybHqiN6/elwpkJBhcuj+WbBu+QfT0uhPGfQ==",
"license": "MIT",
"dependencies": { "dependencies": {
"centra": "^2.7.0" "centra": "^2.7.0"
}, },
@ -5032,12 +5010,12 @@
} }
}, },
"node_modules/qs": { "node_modules/qs": {
"version": "6.11.0", "version": "6.13.0",
"resolved": "https://registry.npmjs.org/qs/-/qs-6.11.0.tgz", "resolved": "https://registry.npmjs.org/qs/-/qs-6.13.0.tgz",
"integrity": "sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==", "integrity": "sha512-+38qI9SOr8tfZ4QmJNplMUxqjbe7LKvvZgWdExBOmd+egZTtjLB67Gu0HRX3u/XOq7UU2Nx6nsjvS16Z9uwfpg==",
"license": "BSD-3-Clause", "license": "BSD-3-Clause",
"dependencies": { "dependencies": {
"side-channel": "^1.0.4" "side-channel": "^1.0.6"
}, },
"engines": { "engines": {
"node": ">=0.6" "node": ">=0.6"
@ -5344,9 +5322,9 @@
} }
}, },
"node_modules/sax": { "node_modules/sax": {
"version": "1.2.4", "version": "1.4.1",
"resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", "resolved": "https://registry.npmjs.org/sax/-/sax-1.4.1.tgz",
"integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==", "integrity": "sha512-+aWOz7yVScEGoKNd4PA10LZ8sk0A/z5+nXQG5giUO5rprX9jgYsTdov9qCchZiPIZezbZH+jRut8nPodFAX4Jg==",
"license": "ISC" "license": "ISC"
}, },
"node_modules/send": { "node_modules/send": {
@ -5373,6 +5351,15 @@
"node": ">= 0.8.0" "node": ">= 0.8.0"
} }
}, },
"node_modules/send/node_modules/encodeurl": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz",
"integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==",
"license": "MIT",
"engines": {
"node": ">= 0.8"
}
},
"node_modules/send/node_modules/ms": { "node_modules/send/node_modules/ms": {
"version": "2.1.3", "version": "2.1.3",
"resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz",
@ -5380,15 +5367,15 @@
"license": "MIT" "license": "MIT"
}, },
"node_modules/serve-static": { "node_modules/serve-static": {
"version": "1.16.0", "version": "1.16.2",
"resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.16.0.tgz", "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.16.2.tgz",
"integrity": "sha512-pDLK8zwl2eKaYrs8mrPZBJua4hMplRWJ1tIFksVC3FtBEBnl8dxgeHtsaMS8DhS9i4fLObaon6ABoc4/hQGdPA==", "integrity": "sha512-VqpjJZKadQB/PEbEwvFdO43Ax5dFBZ2UECszz8bQ7pi7wt//PWe1P6MN7eCnjsatYtBT6EuiClbjSWP2WrIoTw==",
"license": "MIT", "license": "MIT",
"dependencies": { "dependencies": {
"encodeurl": "~1.0.2", "encodeurl": "~2.0.0",
"escape-html": "~1.0.3", "escape-html": "~1.0.3",
"parseurl": "~1.3.3", "parseurl": "~1.3.3",
"send": "0.18.0" "send": "0.19.0"
}, },
"engines": { "engines": {
"node": ">= 0.8.0" "node": ">= 0.8.0"

View File

@ -12,7 +12,7 @@
"cookie-session": "^2.1.0", "cookie-session": "^2.1.0",
"cors": "^2.8.5", "cors": "^2.8.5",
"csrf-csrf": "^2.2.3", "csrf-csrf": "^2.2.3",
"express": "^4.20.0", "express": "^4.21.0",
"form-data": "^4.0.0", "form-data": "^4.0.0",
"google-translate-api-browser": "^3.0.1", "google-translate-api-browser": "^3.0.1",
"he": "^1.2.0", "he": "^1.2.0",
@ -49,23 +49,14 @@
"node": ">= 18" "node": ">= 18"
}, },
"overrides": { "overrides": {
"parse-bmfont-xml": {
"xml2js": "^0.5.0"
},
"vectra": { "vectra": {
"openai": "^4.17.0" "openai": "^4.17.0"
}, },
"load-bmfont": {
"phin": "^3.7.1"
},
"axios": { "axios": {
"follow-redirects": "^1.15.4" "follow-redirects": "^1.15.4"
}, },
"node-fetch": { "node-fetch": {
"whatwg-url": "^14.0.0" "whatwg-url": "^14.0.0"
},
"express": {
"send": "^0.19.0"
} }
}, },
"name": "sillytavern", "name": "sillytavern",

View File

@ -103,7 +103,6 @@
touch-action: none; touch-action: none;
overflow: hidden; overflow: hidden;
position: fixed; position: fixed;
} }
.world_entry_form_control { .world_entry_form_control {
@ -112,7 +111,7 @@
.drawer-content { .drawer-content {
min-width: unset; min-width: unset;
width: 100%; width: 100dvw;
max-height: calc(100vh - 45px); max-height: calc(100vh - 45px);
max-height: calc(100dvh - 45px); max-height: calc(100dvh - 45px);
position: fixed; position: fixed;
@ -159,9 +158,9 @@
#sheld, #sheld,
#character_popup, #character_popup,
.drawer-content { .drawer-content {
width: 100% !important; width: 100dvw !important;
margin: 0 auto; margin: 0 auto;
max-width: 100%; max-width: 100dvw;
left: 0 !important; left: 0 !important;
resize: none !important; resize: none !important;
top: var(--topBarBlockSize); top: var(--topBarBlockSize);
@ -233,9 +232,9 @@
/* 100vh are fallback units for browsers that don't support dvh */ /* 100vh are fallback units for browsers that don't support dvh */
height: calc(100vh - 45px); height: calc(100vh - 45px);
height: calc(100dvh - 45px); height: calc(100dvh - 45px);
min-width: 100% !important; min-width: 100dvw !important;
width: 100% !important; width: 100dvw !important;
max-width: 100% !important; max-width: 100dvw !important;
overflow-y: hidden; overflow-y: hidden;
border-left: 1px solid var(--SmartThemeBorderColor); border-left: 1px solid var(--SmartThemeBorderColor);
border-right: 1px solid var(--SmartThemeBorderColor); border-right: 1px solid var(--SmartThemeBorderColor);
@ -481,10 +480,10 @@
margin: 0 auto; margin: 0 auto;
height: calc(100vh - 70px); height: calc(100vh - 70px);
height: calc(100dvh - 70px); height: calc(100dvh - 70px);
width: calc(100% - 5px); width: calc(100dvw - 5px);
max-height: calc(100vh - 70px); max-height: calc(100vh - 70px);
max-height: calc(100dvh - 70px); max-height: calc(100dvh - 70px);
max-width: calc(100% - 5px); max-width: calc(100dvw - 5px);
} }
@ -502,4 +501,4 @@
#horde_model { #horde_model {
height: unset; height: unset;
} }
} }

View File

@ -47,6 +47,10 @@ dialog {
padding: 1px; padding: 1px;
} }
.popup:not(:has(.img_enlarged_container)) .popup-body {
max-height: 95dvh;
}
.popup .popup-content { .popup .popup-content {
margin-top: 10px; margin-top: 10px;
padding: 0 8px; padding: 0 8px;

View File

@ -0,0 +1,3 @@
<svg xmlns="http://www.w3.org/2000/svg" width="10" height="7">
<polygon points="0,0 10,0 5,7" fill="#888888" />
</svg>

After

Width:  |  Height:  |  Size: 123 B

View File

@ -1341,7 +1341,7 @@
</div> </div>
</div> </div>
<div data-tg-type="koboldcpp" id="xtc_block" class="wide100p"> <div data-tg-type="koboldcpp, aphrodite" id="xtc_block" class="wide100p">
<h4 class="wide100p textAlignCenter"> <h4 class="wide100p textAlignCenter">
<label data-i18n="Exclude Top Choices (XTC)">Exclude Top Choices (XTC)</label> <label data-i18n="Exclude Top Choices (XTC)">Exclude Top Choices (XTC)</label>
<a href="https://github.com/oobabooga/text-generation-webui/pull/6335" target="_blank"> <a href="https://github.com/oobabooga/text-generation-webui/pull/6335" target="_blank">
@ -1401,7 +1401,7 @@
</div> </div>
</div> </div>
</div> </div>
<div data-tg-type="ooba, mancer, koboldcpp, tabby, llamacpp" id="dynatemp_block_ooba" class="wide100p"> <div data-tg-type="ooba, mancer, koboldcpp, tabby, llamacpp, aphrodite" id="dynatemp_block_ooba" class="wide100p">
<h4 class="wide100p textAlignCenter"> <h4 class="wide100p textAlignCenter">
<div class="flex-container alignitemscenter justifyCenter"> <div class="flex-container alignitemscenter justifyCenter">
<div class="checkbox_label" for="dynatemp_textgenerationwebui"> <div class="checkbox_label" for="dynatemp_textgenerationwebui">

View File

@ -737,6 +737,16 @@ export function initRossMods() {
RA_autoconnect(); RA_autoconnect();
} }
if (isMobile()) {
const fixFunkyPositioning = () => {
console.debug('[Mobile] Device viewport change detected.');
document.documentElement.style.position = 'fixed';
requestAnimationFrame(() => document.documentElement.style.position = '');
};
window.addEventListener('resize', fixFunkyPositioning);
window.addEventListener('orientationchange', fixFunkyPositioning);
}
$('#main_api').change(function () { $('#main_api').change(function () {
var PrevAPI = main_api; var PrevAPI = main_api;
setTimeout(() => RA_autoconnect(PrevAPI), 100); setTimeout(() => RA_autoconnect(PrevAPI), 100);

View File

@ -349,7 +349,7 @@
</div> </div>
</div> </div>
<div class="flex-container marginTopBot5" data-sd-source="auto,vlad,extras,horde,drawthings,comfy"> <div class="flex-container marginTopBot5" data-sd-source="auto,vlad,extras,horde,drawthings">
<label class="flex1 checkbox_label"> <label class="flex1 checkbox_label">
<input id="sd_restore_faces" type="checkbox" /> <input id="sd_restore_faces" type="checkbox" />
<small data-i18n="Restore Faces">Restore Faces</small> <small data-i18n="Restore Faces">Restore Faces</small>

View File

@ -2885,7 +2885,7 @@ export class ChatCompletion {
const message = { role: item.role, content: item.content, ...(item.name ? { name: item.name } : {}) }; const message = { role: item.role, content: item.content, ...(item.name ? { name: item.name } : {}) };
chat.push(message); chat.push(message);
} else { } else {
console.warn('Invalid message in collection', item); this.log(`Skipping invalid or empty message in collection: ${JSON.stringify(item)}`);
} }
} }
return chat; return chat;

View File

@ -1203,7 +1203,7 @@ export function getTextGenGenerationData(finalPrompt, maxTokens, isImpersonate,
'repetition_penalty': settings.rep_pen, 'repetition_penalty': settings.rep_pen,
'seed': settings.seed >= 0 ? settings.seed : undefined, 'seed': settings.seed >= 0 ? settings.seed : undefined,
'stop': getStoppingStrings(isImpersonate, isContinue), 'stop': getStoppingStrings(isImpersonate, isContinue),
'temperature': settings.temp, 'temperature': dynatemp ? (settings.min_temp + settings.max_temp) / 2 : settings.temp,
'temperature_last': settings.temperature_last, 'temperature_last': settings.temperature_last,
'top_p': settings.top_p, 'top_p': settings.top_p,
'top_k': settings.top_k, 'top_k': settings.top_k,
@ -1223,6 +1223,12 @@ export function getTextGenGenerationData(finalPrompt, maxTokens, isImpersonate,
'guided_json': settings.json_schema, 'guided_json': settings.json_schema,
'early_stopping': false, // hacks 'early_stopping': false, // hacks
'include_stop_str_in_output': false, 'include_stop_str_in_output': false,
'dynatemp_min': dynatemp ? settings.min_temp : undefined,
'dynatemp_max': dynatemp ? settings.max_temp : undefined,
'dynatemp_exponent': dynatemp ? settings.dynatemp_exponent : undefined,
'xtc_threshold': settings.xtc_threshold,
'xtc_probability': settings.xtc_probability,
'custom_token_bans': toIntArray(banned_tokens),
}; };
if (settings.type === OPENROUTER) { if (settings.type === OPENROUTER) {

View File

@ -2570,20 +2570,25 @@ input[type="file"] {
/*#################################################################*/ /*#################################################################*/
select { select {
-moz-appearance: none;
-webkit-appearance: none;
appearance: none;
padding: 3px 2px; padding: 3px 2px;
background-color: var(--black30a); background-color: var(--black30a);
border: 1px solid var(--SmartThemeBorderColor); border: 1px solid var(--SmartThemeBorderColor);
border-radius: 5px; border-radius: 5px;
margin-bottom: 5px; margin-bottom: 5px;
height: min-content; height: min-content;
background-image: url('/img/down-arrow.svg');
background-repeat: no-repeat;
background-position: right 6px center;
background-size: 8px 5px;
} }
select option { select option {
/* works to highlight selected/active option */ /* works to highlight selected/active option */
background-color: var(--white50a); background-color: var(--white50a);
color: var(--black70a); color: var(--black70a);
} }
select option:not(:checked) { select option:not(:checked) {