mirror of
https://github.com/SillyTavern/SillyTavern.git
synced 2025-06-05 21:59:27 +02:00
Merge branch 'dev' of https://github.com/Cohee1207/SillyTavern into dev
This commit is contained in:
583
public/i18n.json
Normal file
583
public/i18n.json
Normal file
@ -0,0 +1,583 @@
|
||||
{
|
||||
"lang": ["en", "zh-cn"],
|
||||
"en": {
|
||||
"clickslidertips": "Click slider numbers to input manually.",
|
||||
"kobldpresets": "Kobold Presets",
|
||||
"guikoboldaisettings":"GUI KoboldAI Settings",
|
||||
"novelaipreserts":"NovelAI Presets",
|
||||
"default":"Default",
|
||||
"openaipresets":"OpenAI Presets",
|
||||
"text gen webio(ooba) presets":"Text Gen WebUI (ooba) presets",
|
||||
"poe.com api settings":"Poe.com API Settings",
|
||||
"response legth(tokens)":" Response Length (tokens)",
|
||||
"context size(tokens)":" Context Size (tokens)",
|
||||
"unlocked":" Unlocked",
|
||||
"only select modls support context sizes greater than 2048 tokens. proceed only is you know you're doing":"Only select models support context sizes greater than 2048 tokens.Proceed only if you know what you're doing.",
|
||||
"rep.pen range":"Rep. Pen. Range",
|
||||
"temperature":"Temperature",
|
||||
"rep.pen":"Rep. Pen.",
|
||||
"Encoder Rep. Pen.":"Encoder Rep. Pen.",
|
||||
"No Repeat Ngram Size":"No Repeat Ngram Size",
|
||||
"Min Length":"Min Length",
|
||||
"OpenAI Reverse Proxy":"OpenAI Reverse Proxy",
|
||||
"Alternative server URL (leave empty to use the default value).":"Alternative server URL (leave empty to use the default value).",
|
||||
"Remove your real OAI API Key from the API panel BEFORE typing anything into this box":"Remove your real OAI API Key from the API panel BEFORE typing anything into this box.",
|
||||
"We cannot provide support for problems encountered while using an unofficial OpenAI proxy":"We cannot provide support for problems encountered while using an unofficial OpenAI proxy.",
|
||||
"Legacy Streaming Processing":"Legacy Streaming Processing",
|
||||
"Enable this if the streaming doesn't work with your proxy":"Enable this if the streaming doesn't work with your proxy",
|
||||
"Context Size (tokens)":"Context Size (tokens)",
|
||||
"Max Response Length (tokens)":"Max Response Length (tokens)",
|
||||
"Temperature":" Temperature",
|
||||
"Frequency Penalty":"Frequency Penalty",
|
||||
"Presence Penalty":"Presence Penalty",
|
||||
"Top-p":"Top-p",
|
||||
"Display bot response text chunks as they are generated":"Display bot response text chunks as they are generated.",
|
||||
"Auto-purge API context (save JB)":"Auto-purge API context (save JB)",
|
||||
"Delete non-JB messages from Poe context before sending a new prompt. Prevents auto-jailbreak message from being pushed out of context":"Delete non-JB messages from Poe context before sending a new prompt. Prevents auto-jailbreak message from being pushed out of context",
|
||||
"Auto-jailbreak":"Auto-jailbreak",
|
||||
"Send the jailbreak message before first generation after page refresh.":"Send the jailbreak message before first generation after page refresh.",
|
||||
"Send character note":"Send character note",
|
||||
"Sent with every prompt to modify bot responses.":"Sent with every prompt to modify bot responses.",
|
||||
"Top A":"Top A",
|
||||
"Typical Sampling":"Typical Sampling",
|
||||
"Tail Free Sampling":"Tail Free Sampling",
|
||||
"Rep. Pen. Slope":"Rep. Pen. Slope",
|
||||
"Single-line mode":"Single-line mode",
|
||||
"Top K":"Top K",
|
||||
"Top P":"Top P",
|
||||
"select":"select",
|
||||
"Typical P":"Typical P",
|
||||
"Do Sample":"Do Sample",
|
||||
"Add BOS Token":"Add BOS Token",
|
||||
"Add the bos_token to the beginning of prompts. Disabling this can make the replies more creative.":"Add the bos_token to the beginning of prompts. Disabling this can make the replies more creative.",
|
||||
"Ban EOS Token":"Ban EOS Token",
|
||||
"Ban the eos_token. This forces the model to never end the generation prematurely":"Ban the eos_token. This forces the model to never end the generation prematurely",
|
||||
"Skip Special Tokens":"Skip Special Tokens",
|
||||
"Beam search":"Beam search",
|
||||
"Number of Beams":"Number of Beams",
|
||||
"Length Penalty":"Length Penalty",
|
||||
"Early Stopping":"Early Stopping",
|
||||
"Contrastive search":"Contrastive search",
|
||||
"Penalty Alpha":"Penalty Alpha",
|
||||
"Seed":"Seed",
|
||||
"Inserts jailbreak as a last system message.":"Inserts jailbreak as a last system message.",
|
||||
"This tells the AI to ignore its usual content restrictions.":"This tells the AI to ignore its usual content restrictions.",
|
||||
"NSFW Encouraged":"NSFW Encouraged",
|
||||
"Tell the AI that NSFW is allowed.":"Tell the AI that NSFW is allowed.",
|
||||
"NSFW Prioritized":"NSFW Prioritized",
|
||||
"NSFW prompt text goes first in the prompt to emphasize its effect.":"NSFW prompt text goes first in the prompt to emphasize its effect.",
|
||||
"Streaming":"Streaming",
|
||||
"Display the response bit by bit as it is generated.":"Display the response bit by bit as it is generated.",
|
||||
"When this is off, responses will be displayed all at once when they are complete.":"When this is off, responses will be displayed all at once when they are complete.",
|
||||
"Enhance Definitions":"Enhance Definitions",
|
||||
"Use OAI knowledge base to enhance definitions for public figures and known fictional characters":"Use OAI knowledge base to enhance definitions for public figures and known fictional characters",
|
||||
"Wrap in Quotes":"Wrap in Quotes",
|
||||
"Wrap entire user message in quotes before sending.":"Wrap entire user message in quotes before sending.",
|
||||
"Leave off if you use quotes manually for speech.":"Leave off if you use quotes manually for speech.",
|
||||
"Main prompt":"Main prompt",
|
||||
"The main prompt used to set the model behavior":"The main prompt used to set the model behavior",
|
||||
"NSFW prompt":"NSFW prompt",
|
||||
"Prompt that is used when the NSFW toggle is on":"Prompt that is used when the NSFW toggle is on",
|
||||
"Jailbreak prompt":"Jailbreak prompt",
|
||||
"Prompt that is used when the Jailbreak toggle is on":"Prompt that is used when the Jailbreak toggle is on",
|
||||
"Impersonation prompt":"Impersonation prompt",
|
||||
"Prompt that is used for Impersonation function":"Prompt that is used for Impersonation function",
|
||||
"Logit Bias":"Logit Bias",
|
||||
"Helps to ban or reenforce the usage of certain words":"Helps to ban or reenforce the usage of certain words",
|
||||
"View / Edit bias preset":"View / Edit bias preset",
|
||||
"Add bias entry":"Add bias entry",
|
||||
"Jailbreak activation message":"Jailbreak activation message",
|
||||
"Message to send when auto-jailbreak is on.":"Message to send when auto-jailbreak is on.",
|
||||
"Jailbreak confirmation reply":"Jailbreak confirmation reply",
|
||||
"Bot must send this back to confirm jailbreak":"Bot must send this back to confirm jailbreak",
|
||||
"Character Note":"Character Note",
|
||||
"Influences bot behavior in its responses":"Influences bot behavior in its responses",
|
||||
"API":"API",
|
||||
"KoboldAI":"KoboldAI",
|
||||
"Poe":"Poe",
|
||||
"Use Horde":"Use Horde",
|
||||
"API url":"API url",
|
||||
"Register a Horde account for faster queue times":"Register a Horde account for faster queue times",
|
||||
"Learn how to contribute your idle GPU cycles to the Hord":"Learn how to contribute your idle GPU cycles to the Hord",
|
||||
"Adjust context size to worker capabilities":"Adjust context size to worker capabilities",
|
||||
"Adjust response length to worker capabilities":"Adjust response length to worker capabilities",
|
||||
"API key":"API key",
|
||||
"Register":"Register",
|
||||
"For privacy reasons":"For privacy reasons, your API key will be hidden after you reload the page",
|
||||
"Model":"Model",
|
||||
"Hold Control / Command key to select multiple models.":"Hold Control / Command key to select multiple models.",
|
||||
"Horde models not loaded":"Horde models not loaded",
|
||||
"Not connected":"Not connected",
|
||||
"Novel API key":"Novel API key",
|
||||
"Follow":"Follow",
|
||||
"these directions":" these directions ",
|
||||
"to get your NovelAI API key.":"to get your NovelAI API key.",
|
||||
"Enter it in the box below":"Enter it in the box below:",
|
||||
"Novel AI Model":"Novel AI Model",
|
||||
"Euterpe":"Euterpe",
|
||||
"Krake":"Krake",
|
||||
"No connection":"No connection...",
|
||||
"oobabooga/text-generation-webui":"oobabooga/text-generation-webui",
|
||||
"Make sure you run it with":" Make sure you run it with --api flag",
|
||||
"Blocking API url":"Blocking API url",
|
||||
"Streaming API url":"Streaming API url",
|
||||
"to get your OpenAI API key.":"to get your OpenAI API key.",
|
||||
"OpenAI Model":"OpenAI Model",
|
||||
"View API Usage Metrics":"View API Usage Metrics",
|
||||
"Poe.com Unofficial API":"Poe.com Unofficial API",
|
||||
"to get your 'p-b cookie'":"to get your 'p-b cookie'",
|
||||
"Bot":"Bot",
|
||||
"Connect to the API":"Connect to the API",
|
||||
"Auto-connect to Last Server":"Auto-connect to Last Server",
|
||||
"View hidden API keys":"View hidden API keys",
|
||||
"Advanced Formatting":"Advanced Formatting",
|
||||
"AutoFormat Overrides":"AutoFormat Overrides",
|
||||
"Disable description formatting":"Disable description formatting",
|
||||
"Disable personality formatting":"Disable personality formatting",
|
||||
"Disable scenario formatting":"Disable scenario formatting",
|
||||
"Disable example chats formatting":"Disable example chats formatting",
|
||||
"Disable chat start formatting":"Disable chat start formatting",
|
||||
"Custom Chat Separator":"Custom Chat Separator",
|
||||
"Instruct mode":"Instruct mode",
|
||||
"Enabled":"Enabled",
|
||||
"Wrap Sequences with Newline":"Wrap Sequences with Newline",
|
||||
"Include Names":"Include Names",
|
||||
"System Prompt":"System Prompt",
|
||||
"Input Sequence":"Input Sequence",
|
||||
"Output Sequence":"Output Sequence",
|
||||
"System Sequence":"System Sequence",
|
||||
"Stop Sequence":"Stop Sequence",
|
||||
"Context Formatting":"Context Formatting",
|
||||
"Tokenizer":"Tokenizer",
|
||||
"None / Estimated":"None / Estimated",
|
||||
"Sentencepiece (LLaMA)":"Sentencepiece (LLaMA)",
|
||||
"Token Padding":"Token Padding",
|
||||
"Always add character's name to prompt":"Always add character's name to prompt",
|
||||
"Keep Example Messages in Prompt":"Keep Example Messages in Prompt",
|
||||
"Remove Empty New Lines from Output":"Remove Empty New Lines from Output",
|
||||
"Pygmalion Formatting":"Pygmalion Formatting",
|
||||
"Disabled for all models":"Disabled for all models",
|
||||
"Automatic (based on model name)":"Automatic (based on model name)",
|
||||
"Enabled for all models":"Enabled for all models",
|
||||
"Multigen":"Multigen",
|
||||
"First chunk (tokens)":"First chunk (tokens)",
|
||||
"Next chunks (tokens)":"Next chunks (tokens)",
|
||||
"Anchors Order":"Anchors Order",
|
||||
"Character then Style":"Character then Style",
|
||||
"Style then Character":"Style then Character",
|
||||
"Character Anchor":"Character Anchor",
|
||||
"Style Anchor":"Style Anchor",
|
||||
"World Info":"World Info",
|
||||
"Scan Depth":"Scan Depth",
|
||||
"depth":"depth",
|
||||
"Token Budget":"Token Budget",
|
||||
"budget":"budget",
|
||||
"Recursive scanning":"Recursive scanning",
|
||||
"Soft Prompt":"Soft Prompt",
|
||||
"About soft prompts":"About soft prompts",
|
||||
"None":"None",
|
||||
"User Settings":"User Settings",
|
||||
"UI Customization":"UI Customization",
|
||||
"Avatar Style":"Avatar Style:",
|
||||
"Circle":"Circle",
|
||||
"Rectangle":"Rectangle",
|
||||
"Chat Style":"Chat Style:",
|
||||
"Default":"Default",
|
||||
"Bubbles":"Bubbles",
|
||||
"Chat Width (PC)":"Chat Width (PC):",
|
||||
"No Blur Effect":"No Blur Effect",
|
||||
"No Text Shadows":"No Text Shadows",
|
||||
"Waifu Mode":" ♡ Waifu Mode ♡",
|
||||
"Message Timer":"Message Timer",
|
||||
"Characters Hotswap":"Characters Hotswap",
|
||||
"Movable UI Panels":"Movable UI Panels",
|
||||
"Reset Panels":"Reset Panels",
|
||||
"UI Colors":"UI Colors",
|
||||
"Main Text":"Main Text",
|
||||
"Italics Text":"Italics Text",
|
||||
"Quote Text":"Quote Text",
|
||||
"Shadow Color":"Shadow Color",
|
||||
"FastUI BG":"FastUI BG",
|
||||
"Blur Tint":"Blur Tint",
|
||||
"Font Scale":"Font Scale",
|
||||
"Blur Strength":"Blur Strength",
|
||||
"Text Shadow Width":"Text Shadow Width",
|
||||
"UI Theme Preset":"UI Theme Preset",
|
||||
"Power User Options":"Power User Options",
|
||||
"Swipes":"Swipes",
|
||||
"Background Sound Only":"Background Sound Only",
|
||||
"Auto-load Last Chat":"Auto-load Last Chat",
|
||||
"Auto-save Message Edits":"Auto-save Message Edits",
|
||||
"Auto-fix Markdown":"Auto-fix Markdown",
|
||||
"Allow {{char}}: in bot messages":"Allow {{char}}: in bot messages",
|
||||
"Allow {{user}}: in bot messages":"Allow {{user}}: in bot messages",
|
||||
"Auto-scroll Chat":"Auto-scroll Chat",
|
||||
"Render Formulas":"Render Formulas",
|
||||
"Send on Enter":"Send on Enter",
|
||||
"Always disabled":"Always disabled",
|
||||
"Automatic (desktop)":"Automatic (desktop)",
|
||||
"Always enabled":"Always enabled",
|
||||
"Name":"Name",
|
||||
"Your Avatar":"Your Avatar",
|
||||
"Extensions API:":"Extensions API:",
|
||||
"SillyTavern-extras":"SillyTavern-extras",
|
||||
"Auto-connect":"Auto-connect",
|
||||
"Active extensions":"Active extensions",
|
||||
"Extension settings":"Extension settings",
|
||||
"Description":"Description",
|
||||
"First message":"First message",
|
||||
"Group Controls":"Group Controls",
|
||||
"Group reply strategy":"Group reply strategy",
|
||||
"Natural order":"Natural order",
|
||||
"List order":"List order",
|
||||
"Allow self responses":"Allow self responses",
|
||||
"Auto Mode":"Auto Mode",
|
||||
"Add Members":"Add Members",
|
||||
"Current Members":"Current Members",
|
||||
"text":"text",
|
||||
"Delete":"Delete",
|
||||
"Cancel":"Cancel",
|
||||
"Advanced Defininitions":"- Advanced Defininitions",
|
||||
"Personality summary":"Personality summary",
|
||||
"A brief description of the personality":"A brief description of the personality",
|
||||
"Scenario":"Scenario",
|
||||
"Circumstances and context of the dialogue":"Circumstances and context of the dialogue",
|
||||
"Talkativeness":"Talkativeness",
|
||||
"How often the chracter speaks in":"How often the chracter speaks in",
|
||||
"group chats!":"group chats!",
|
||||
"Shy":"Shy",
|
||||
"Normal":"Normal",
|
||||
"Chatty":"Chatty",
|
||||
"Examples of dialogue":"Examples of dialogue",
|
||||
"Forms a personality more clearly":"Forms a personality more clearly",
|
||||
"Save":"Save",
|
||||
"World Info Editor":"World Info Editor",
|
||||
"New Entry":"New Entry",
|
||||
"Export":"Export",
|
||||
"Delete World":"Delete World",
|
||||
"Chat History":"Chat History",
|
||||
"Group Chat Scenario Override":"Group Chat Scenario Override",
|
||||
"All group members will use the following scenario text instead of what is specified in their character cards.":"All group members will use the following scenario text instead of what is specified in their character cards.",
|
||||
"Keywords":"Keywords",
|
||||
"Separate with commas":"Separate with commas",
|
||||
"Secondary Required Keywords":"Secondary Required Keywords",
|
||||
"Content":"Content",
|
||||
"What this keyword should mean to the AI":"What this keyword should mean to the AI",
|
||||
"Memo/Note":"Memo/Note",
|
||||
"Not sent to AI":"Not sent to AI",
|
||||
"Constant":"Constant",
|
||||
"Selective":"Selective",
|
||||
"Before Char":"Before Char",
|
||||
"After Char":"After Char",
|
||||
"Insertion Order":"Insertion Order",
|
||||
" Tokens:":" Tokens:",
|
||||
"Disable":"Disable",
|
||||
"${characterName}":"${characterName}",
|
||||
"CHAR":"CHAR",
|
||||
"is typing":"is typing",
|
||||
"Back to parent chat":"Back to parent chat",
|
||||
"Save bookmark":"Save bookmark",
|
||||
"Convert to group":"Convert to group",
|
||||
"Start new chat":"Start new chat",
|
||||
"View past chats":"View past chats",
|
||||
"Delete messages":"Delete messages",
|
||||
"Impersonate":"Impersonate",
|
||||
"Regenerate":"Regenerate",
|
||||
"PNG":"PNG",
|
||||
"JSON":"JSON",
|
||||
"WEBP":"WEBP",
|
||||
"presets": "Presets",
|
||||
"Message Sound": "Message Sound",
|
||||
"Author's Note": "Author's Note"
|
||||
},
|
||||
"zh-cn": {
|
||||
"clickslidertips": "点击滑块右侧数字可手动输入",
|
||||
"kobldpresets": "Kobold 预设",
|
||||
"guikoboldaisettings":"GUI KoboldAI 设置",
|
||||
"novelaipreserts":"NovelAI预设",
|
||||
"default":"默认",
|
||||
"openaipresets":"OpenAI 预设",
|
||||
"text gen webio(ooba) presets":"文本生成WebUI(ooba)预设",
|
||||
"poe.com api settings":"poe.com API 设置",
|
||||
"response legth(tokens)":"响应长度(Toekns)",
|
||||
"select":"选择 ",
|
||||
"context size(tokens)":"上下文大小(Toekns)",
|
||||
"unlocked":"解锁",
|
||||
"only select modls support context sizes greater than 2048 tokens. proceed only is you know you're doing":"仅选定模型支持大于2048Toekn的上下文窗口时可用。您在修改该选项时应该知道自己在做什么。",
|
||||
"rep.pen":"Rep. Pen.",
|
||||
"rep.pen range":"Rep. Pen.范围",
|
||||
"temperature":"Temperature",
|
||||
"Encoder Rep. Pen.":"Encoder Rep. Pen.",
|
||||
"No Repeat Ngram Size":"不需要重复Ngram大小",
|
||||
"Min Length":"最小长度",
|
||||
"OpenAI Reverse Proxy":"OpenAI 反向代理",
|
||||
"Alternative server URL (leave empty to use the default value).":"替代服务器URL(留空使用默认值)。",
|
||||
"Remove your real OAI API Key from the API panel BEFORE typing anything into this box":"在输入内容之前,从API面板中删除OAI API密钥",
|
||||
"We cannot provide support for problems encountered while using an unofficial OpenAI proxy":"我们无法为使用非官方OpenAI代理时遇到的问题提供支持",
|
||||
"Legacy Streaming Processing":"传统流式处理",
|
||||
"Enable this if the streaming doesn't work with your proxy":"如果流式响应与您的代理不兼容,请启用此功能",
|
||||
"Context Size (tokens)":"上下文大小(Tokens)",
|
||||
"Max Response Length (tokens)":"最大响应长度(Tokens)",
|
||||
"Temperature":"采样温度",
|
||||
"Frequency Penalty":"频率惩罚",
|
||||
"Presence Penalty":"存在惩罚",
|
||||
"Top-p":"Top-p",
|
||||
"Display bot response text chunks as they are generated":"显示机器人生成的响应文本块",
|
||||
"Auto-purge API context (save JB)":"自动删除应用程序接口上下文(保存JB)",
|
||||
"Delete non-JB messages from Poe context before sending a new prompt. Prevents auto-jailbreak message from being pushed out of context":"在发送新提示之前从Poe上下文中删除非JB消息。防止自动越狱消息被推出上下文",
|
||||
"Auto-jailbreak":"自动越狱",
|
||||
"Send the jailbreak message before first generation after page refresh.":"在页面刷新后的第一次生成之前发送越狱消息",
|
||||
"Send character note":"发送人物笔记",
|
||||
"Sent with every prompt to modify bot responses.":"每个提示都发送给修改机器人响应的人",
|
||||
"Top A":"Top-a",
|
||||
"Typical Sampling":"典型采样",
|
||||
"Tail Free Sampling":"无尾采样",
|
||||
"Rep. Pen. Slope":"Rep. Pen. Slope",
|
||||
"Single-line mode":"单行模式",
|
||||
"Top K":"Top-k",
|
||||
"Top P":"Top-p",
|
||||
"Typical P":"典型P",
|
||||
"Do Sample":"采样",
|
||||
"Add BOS Token":"添加BOS标记",
|
||||
"Add the bos_token to the beginning of prompts. Disabling this can make the replies more creative.":"在提示的开头添加bos_token标记。禁用此功能可以让回复更加创造性.",
|
||||
"Ban EOS Token":"禁止EOS标记",
|
||||
"Ban the eos_token. This forces the model to never end the generation prematurely":"禁止eos_token标记。这会迫使模型不会过早结束生成",
|
||||
"Skip Special Tokens":"跳过特殊标记",
|
||||
"Beam search":"搜索",
|
||||
"Number of Beams":"光束数目",
|
||||
"Length Penalty":"长度惩罚",
|
||||
"Early Stopping":"提前终止",
|
||||
"Contrastive search":"对比搜索",
|
||||
"Penalty Alpha":"惩罚系数",
|
||||
"Seed":"种子",
|
||||
"Inserts jailbreak as a last system message.":"在最后一个系统消息中插入越狱",
|
||||
"This tells the AI to ignore its usual content restrictions.":"这告诉人工智能忽略其通常的内容限制",
|
||||
"NSFW Encouraged":"NSFW鼓励",
|
||||
"Tell the AI that NSFW is allowed.":"告诉人工智能,NSFW是允许的。",
|
||||
"NSFW Prioritized":"NSFW优先",
|
||||
"NSFW prompt text goes first in the prompt to emphasize its effect.":"NSFW提示文本在提示中排在第一位,以强调其效果",
|
||||
"Streaming":"流式响应",
|
||||
"Display the response bit by bit as it is generated.":"在生成响应时逐位显示响应。",
|
||||
"When this is off, responses will be displayed all at once when they are complete.":"关闭此选项后,响应将在完成后立即显示所有响应。",
|
||||
"Enhance Definitions":"增强定义",
|
||||
"Use OAI knowledge base to enhance definitions for public figures and known fictional characters":"使用 OAI 知识库增强公众人物和已知虚构人物的定义",
|
||||
"Wrap in Quotes":"用引号括起来",
|
||||
"Wrap entire user message in quotes before sending.":"在发送之前将整个用户消息包装在引号中。",
|
||||
"Leave off if you use quotes manually for speech.":"",
|
||||
"Main prompt":"主提示符",
|
||||
"The main prompt used to set the model behavior":"用于设置模型行为的主要提示",
|
||||
"NSFW prompt":"NSFW 提示",
|
||||
"Prompt that is used when the NSFW toggle is on":"NSFW 切换开关打开时使用的提示",
|
||||
"Jailbreak prompt":"越狱提示",
|
||||
"Prompt that is used when the Jailbreak toggle is on":"越狱切换开关打开时使用的提示",
|
||||
"Impersonation prompt":"模拟提示",
|
||||
"Prompt that is used for Impersonation function":"用于模拟功能的提示",
|
||||
"Logit Bias":"对数偏差",
|
||||
"Helps to ban or reenforce the usage of certain words":"有助于禁止或加强某些单词的使用",
|
||||
"View / Edit bias preset":"查看/编辑偏置预设",
|
||||
"Add bias entry":"添加偏置条目",
|
||||
"Jailbreak activation message":"越狱激活消息",
|
||||
"Message to send when auto-jailbreak is on.":"自动越狱开启时要发送的消息。",
|
||||
"Jailbreak confirmation reply":"越狱确认回复",
|
||||
"Bot must send this back to confirm jailbreak":"机器人必须将其发回以确认越狱",
|
||||
"Character Note":"人物注释",
|
||||
"Influences bot behavior in its responses":"影响机器人响应中的行为",
|
||||
"API":"API",
|
||||
"KoboldAI":"KoboldAI",
|
||||
"Poe":"Poe",
|
||||
"Use Horde":"使用Horde",
|
||||
"API url":"接口网址",
|
||||
"Register a Horde account for faster queue times":"注册帐户以加快排队时间",
|
||||
"Learn how to contribute your idle GPU cycles to the Hord":"了解如何将空闲 GPU 周期贡献给 Hord",
|
||||
"Adjust context size to worker capabilities":"根据辅助角色功能调整上下文大小",
|
||||
"Adjust response length to worker capabilities":"根据辅助角色功能调整响应长度",
|
||||
"API key":"接口密钥",
|
||||
"Register":"注册",
|
||||
"For privacy reasons":"出于隐私原因,您的 API 密钥将在您重新加载页面后隐藏",
|
||||
"Model":"模型",
|
||||
"Hold Control / Command key to select multiple models.":"按住控制/命令键选择多个型号。",
|
||||
"Horde models not loaded":"按住控制/命令键选择多个型号。",
|
||||
"Not connected":"未连接",
|
||||
"Novel API key":"NovelAI API 密钥",
|
||||
"Follow":"跟随",
|
||||
"these directions":" 这些帮助 ",
|
||||
"to get your NovelAI API key.":"以获取您的 NovelAI API 密钥。",
|
||||
"Enter it in the box below":"将其输入到下面的输入框中",
|
||||
"Novel AI Model":"NovelAI 模型",
|
||||
"Euterpe":"Euterpe",
|
||||
"Krake":"Krate",
|
||||
"No connection":"无连接",
|
||||
"oobabooga/text-generation-webui":"",
|
||||
"Make sure you run it with":"确保启动时包含 --api 参数",
|
||||
"Blocking API url":"阻塞式 API 地址",
|
||||
"Streaming API url":"Streaming API 地址",
|
||||
"to get your OpenAI API key.":"以获取您的 OpenAI API 密钥。",
|
||||
"OpenAI Model":"OpenAI模型",
|
||||
"View API Usage Metrics":"查看 API 使用情况",
|
||||
"Poe.com Unofficial API":"Poe.com 非官方的 “API”",
|
||||
"to get your 'p-b cookie'":"",
|
||||
"Bot":"Bot",
|
||||
"Connect to the API":"连接到API",
|
||||
"Auto-connect to Last Server":"自动连接到最后的API",
|
||||
"View hidden API keys":"查看隐藏的 API 密钥",
|
||||
"Advanced Formatting":"高级格式化",
|
||||
"AutoFormat Overrides":"自动套用格式替代",
|
||||
"Disable description formatting":"禁用说明格式",
|
||||
"Disable personality formatting":"禁用个性化格式",
|
||||
"Disable scenario formatting":"禁用方案格式",
|
||||
"Disable example chats formatting":"禁用聊天格式示例",
|
||||
"Disable chat start formatting":"禁用聊天开始格式",
|
||||
"Custom Chat Separator":"自定义聊天分隔符",
|
||||
"Instruct mode":"指示模式",
|
||||
"Enabled":"启用",
|
||||
"Wrap Sequences with Newline":"用换行符换行序列",
|
||||
"Include Names":"包括名称",
|
||||
"System Prompt":"系统提示",
|
||||
"Input Sequence":"输入序列",
|
||||
"Output Sequence":"输出序列",
|
||||
"System Sequence":"系统顺序",
|
||||
"Stop Sequence":"停止序列",
|
||||
"Context Formatting":"上下文格式",
|
||||
"Tokenizer":"分词器",
|
||||
"None / Estimated":"无/估计",
|
||||
"Sentencepiece (LLaMA)":"Sentencepiece (LLaMA)",
|
||||
"Token Padding":"令牌填充",
|
||||
"Always add character's name to prompt":"始终将角色名称添加到提示符中",
|
||||
"Keep Example Messages in Prompt":"保持示例消息提示",
|
||||
"Remove Empty New Lines from Output":"从输出中删除空的新行",
|
||||
"Pygmalion Formatting":"Pygmalion 格式",
|
||||
"Disabled for all models":"对所有模型禁用",
|
||||
"Automatic (based on model name)":"自动(基于型号名称)",
|
||||
"Enabled for all models":"所有模型启用",
|
||||
"Multigen":"Multigen",
|
||||
"First chunk (tokens)":"第一个区块(Tokens)",
|
||||
"Next chunks (tokens)":"接下来的区块(Tokens)",
|
||||
"Anchors Order":"锚点顺序",
|
||||
"Character then Style":"字符然后样式",
|
||||
"Style then Character":"样式然后字符",
|
||||
"Character Anchor":"角色锚点",
|
||||
"Style Anchor":"样式锚点",
|
||||
"World Info":"",
|
||||
"Scan Depth":"扫描深度",
|
||||
"depth":"深度",
|
||||
"Token Budget":"Token预算",
|
||||
"budget":"预算",
|
||||
"Recursive scanning":"递归扫描",
|
||||
"Soft Prompt":"软提示",
|
||||
"About soft prompts":"关于软提示",
|
||||
"None":"没有",
|
||||
"User Settings":"用户设置",
|
||||
"UI Customization":"用户界面定制",
|
||||
"Avatar Style":"头像风格",
|
||||
"Circle":"圈",
|
||||
"Rectangle":"Rectangle",
|
||||
"Chat Style":"聊天方式:",
|
||||
"Default":"默认",
|
||||
"Bubbles":"气泡",
|
||||
"Chat Width (PC)":"聊天宽度(电脑):",
|
||||
"No Blur Effect":"无模糊效果",
|
||||
"No Text Shadows":"无文本阴影",
|
||||
"Waifu Mode":"♡ Waifu模式 ♡",
|
||||
"Message Timer":"消息计时器",
|
||||
"Characters Hotswap":"角色热插拔",
|
||||
"Movable UI Panels":"可移动的用户界面面板",
|
||||
"Reset Panels":"重置面板",
|
||||
"UI Colors":"用户界面颜色",
|
||||
"Main Text":"正文",
|
||||
"Italics Text":"斜体文本",
|
||||
"Quote Text":"引用文本",
|
||||
"Shadow Color":"阴影颜色",
|
||||
"FastUI BG":"快界面 BG",
|
||||
"Blur Tint":"模糊色调",
|
||||
"Font Scale":"字体比例",
|
||||
"Blur Strength":"模糊强度",
|
||||
"Text Shadow Width":"文本阴影宽度",
|
||||
"UI Theme Preset":"UI 主题预设",
|
||||
"Power User Options":"高级用户选项",
|
||||
"Swipes":"滑动",
|
||||
"Background Sound Only":"仅背景声音",
|
||||
"Auto-load Last Chat":"自动加载上次聊天",
|
||||
"Auto-save Message Edits":"自动保存消息编辑",
|
||||
"Auto-fix Markdown":"自动修复",
|
||||
"Allow {{char}}: in bot messages":"允许 {{char}}:在机器人消息中",
|
||||
"Allow {{user}}: in bot messages":"允许 {{user}}:在机器人消息中",
|
||||
"Auto-scroll Chat":"自动滚动聊天",
|
||||
"Render Formulas":"渲染公式",
|
||||
"Send on Enter":"输入时发送",
|
||||
"Always disabled":"始终禁用",
|
||||
"Automatic (desktop)":"自动(桌面)",
|
||||
"Always enabled":"始终启用",
|
||||
"Name":"名字",
|
||||
"Your Avatar":"你的头像",
|
||||
"Extensions API:":"扩展接口:",
|
||||
"SillyTavern-extras":"SillyTavern-extras",
|
||||
"Auto-connect":"自动连接",
|
||||
"Active extensions":"活动扩展",
|
||||
"Extension settings":"扩展设置",
|
||||
"Description":"描述",
|
||||
"First message":"第一条消息",
|
||||
"Group Controls":"组控件",
|
||||
"Group reply strategy":"组回复策略",
|
||||
"Natural order": "自然顺序",
|
||||
"List order":"列表顺序",
|
||||
"Allow self responses":"允许自我响应",
|
||||
"Auto Mode":"自动模式",
|
||||
"Add Members":"添加成员",
|
||||
"Current Members":"现有成员",
|
||||
"text":"文本",
|
||||
"Delete":"删除",
|
||||
"Cancel":"取消",
|
||||
"Advanced Defininitions":"- 高级定义",
|
||||
"Personality summary":"性格总结",
|
||||
"A brief description of the personality":"个性的简要描述",
|
||||
"Scenario":"场景",
|
||||
"Circumstances and context of the dialogue":"对话的情况和背景",
|
||||
"Talkativeness":"",
|
||||
"How often the chracter speaks in":"说话的频率",
|
||||
"group chats!":"群聊!",
|
||||
"Shy":"羞涩 ",
|
||||
"Normal":"正常",
|
||||
"Chatty":"",
|
||||
"Examples of dialogue":"对话示例",
|
||||
"Forms a personality more clearly":"更清晰地形成个性",
|
||||
"Save":"保存",
|
||||
"World Info Editor":"信息编辑器",
|
||||
"New Entry":"新一行",
|
||||
"Export":"导出",
|
||||
"Delete World":"删除文本",
|
||||
"Chat History":"聊天记录",
|
||||
"Group Chat Scenario Override":"群聊方案覆盖",
|
||||
"All group members will use the following scenario text instead of what is specified in their character cards.":"所有组成员都将使用以下方案文本,而不是其角色卡中指定的内容。",
|
||||
"Keywords":"关键字",
|
||||
"Separate with commas":"用逗号分隔",
|
||||
"Secondary Required Keywords":"次要必填关键字",
|
||||
"Content":"内容",
|
||||
"What this keyword should mean to the AI":"这个关键词对AI意味着什么",
|
||||
"Memo/Note":"备忘录/便笺",
|
||||
"Not sent to AI":"未发送到 AI",
|
||||
"Constant":"常数 ",
|
||||
"Selective":"选择",
|
||||
"Before Char":"在Char之前",
|
||||
"After Char":"在Char之后",
|
||||
"Insertion Order":"顺序",
|
||||
"Tokens:":"Tokens",
|
||||
"Disable":"禁用",
|
||||
"${characterName}":"${字符名称}",
|
||||
"CHAR":"字符",
|
||||
"is typing":"正在输入...",
|
||||
"Back to parent chat":"返回聊天",
|
||||
"Save bookmark":"保存书签",
|
||||
"Convert to group":"转换为组",
|
||||
"Start new chat":"开始新聊天",
|
||||
"View past chats":"查看过去的聊天",
|
||||
"Delete messages":"删除消息",
|
||||
"Impersonate":"模拟",
|
||||
"Regenerate":"重新生成",
|
||||
"PNG":"PNG",
|
||||
"JSON":"JSON",
|
||||
"WEBP":"WEBP",
|
||||
"presets": "预设",
|
||||
"Message Sound": "消息音效",
|
||||
"Author's Note": "作者的注释"
|
||||
}
|
||||
}
|
1409
public/index.html
1409
public/index.html
File diff suppressed because it is too large
Load Diff
@ -78,7 +78,6 @@ async function updateVisualNovelMode(name, expression) {
|
||||
async function visualNovelRemoveInactive(container) {
|
||||
const context = getContext();
|
||||
const group = context.groups.find(x => x.id == context.groupId);
|
||||
const members = group.members;
|
||||
const removeInactiveCharactersPromises = [];
|
||||
|
||||
// remove inactive characters after 1 second
|
||||
@ -87,7 +86,7 @@ async function visualNovelRemoveInactive(container) {
|
||||
const element = $(current);
|
||||
const avatar = element.data('avatar');
|
||||
|
||||
if (!members.includes(avatar) || group.disabled_members.includes(avatar)) {
|
||||
if (!group.members.includes(avatar) || group.disabled_members.includes(avatar)) {
|
||||
element.fadeOut(250, () => {
|
||||
element.remove();
|
||||
resolve();
|
||||
@ -106,13 +105,12 @@ async function visualNovelRemoveInactive(container) {
|
||||
async function visualNovelSetCharacterSprites(container, name, expression) {
|
||||
const context = getContext();
|
||||
const group = context.groups.find(x => x.id == context.groupId);
|
||||
const members = group.members;
|
||||
const labels = await getExpressionsList();
|
||||
|
||||
const createCharacterPromises = [];
|
||||
const setSpritePromises = [];
|
||||
|
||||
for (const avatar of members) {
|
||||
for (const avatar of group.members) {
|
||||
const isDisabled = group.disabled_members.includes(avatar);
|
||||
|
||||
// skip disabled characters
|
||||
@ -121,6 +119,11 @@ async function visualNovelSetCharacterSprites(container, name, expression) {
|
||||
}
|
||||
|
||||
const character = context.characters.find(x => x.avatar == avatar);
|
||||
|
||||
if (!character) {
|
||||
continue;
|
||||
}
|
||||
|
||||
let spriteFolderName = character.name;
|
||||
const avatarFileName = getSpriteFolderName({ original_avatar: character.avatar });
|
||||
const expressionOverride = extension_settings.expressionOverrides.find((e) =>
|
||||
@ -177,9 +180,8 @@ async function visualNovelSetCharacterSprites(container, name, expression) {
|
||||
async function visualNovelUpdateLayers(container) {
|
||||
const context = getContext();
|
||||
const group = context.groups.find(x => x.id == context.groupId);
|
||||
const members = group.members;
|
||||
const recentMessages = context.chat.map(x => x.original_avatar).filter(x => x).reverse().filter(onlyUnique);
|
||||
const filteredMembers = members.filter(x => !group.disabled_members.includes(x));
|
||||
const filteredMembers = group.members.filter(x => !group.disabled_members.includes(x));
|
||||
const layerIndices = filteredMembers.slice().sort((a, b) => recentMessages.indexOf(b) - recentMessages.indexOf(a));
|
||||
|
||||
const setLayerIndicesPromises = [];
|
||||
@ -272,6 +274,8 @@ function setImage(img, path) {
|
||||
img.removeClass('default');
|
||||
img.off('error');
|
||||
img.on('error', function () {
|
||||
console.debug('Error loading image', path);
|
||||
$(this).off('error');
|
||||
$(this).attr('src', '');
|
||||
});
|
||||
}
|
||||
@ -624,7 +628,9 @@ async function setExpression(character, expression, force) {
|
||||
img.removeClass('default');
|
||||
img.off('error');
|
||||
img.on('error', function () {
|
||||
console.debug('Expression image error', sprite.path);
|
||||
$(this).attr('src', '');
|
||||
$(this).off('error');
|
||||
if (force && extension_settings.expressions.showDefault) {
|
||||
setDefault();
|
||||
}
|
||||
|
@ -633,11 +633,11 @@ function isConnectedToExtras() {
|
||||
|
||||
async function moduleWorker() {
|
||||
if (isConnectedToExtras() || extension_settings.sd.horde) {
|
||||
$('#sd_gen').show(200);
|
||||
$('#sd_gen').show();
|
||||
$('.sd_message_gen').show();
|
||||
}
|
||||
else {
|
||||
$('#sd_gen').hide(200);
|
||||
$('#sd_gen').hide();
|
||||
$('.sd_message_gen').hide();
|
||||
}
|
||||
}
|
||||
|
@ -1005,7 +1005,7 @@ function select_group_chats(groupId, skipAnimation) {
|
||||
}
|
||||
|
||||
$("#dialogue_popup").data("group_id", groupId);
|
||||
callPopup("<h3>Delete the group?</h3>", "del_group");
|
||||
callPopup('<h3>Delete the group?</h3><p>This will also delete all your chats with that group. If you want to delete a single conversation, select a "View past chats" option in the lower left menu.</p>', "del_group");
|
||||
});
|
||||
|
||||
updateFavButtonState(group?.fav ?? false);
|
||||
|
23
server.js
23
server.js
@ -2181,16 +2181,29 @@ app.post('/deletegroup', jsonParser, async (request, response) => {
|
||||
|
||||
const id = request.body.id;
|
||||
const pathToGroup = path.join(directories.groups, sanitize(`${id}.json`));
|
||||
const pathToChat = path.join(directories.groupChats, sanitize(`${id}.jsonl`));
|
||||
|
||||
try {
|
||||
// Delete group chats
|
||||
const group = json5.parse(fs.readFileSync(pathToGroup));
|
||||
|
||||
if (group && Array.isArray(group.chats)) {
|
||||
for (const chat of group.chats) {
|
||||
console.log('Deleting group chat', chat);
|
||||
const pathToFile = path.join(directories.groupChats, `${id}.jsonl`);
|
||||
|
||||
if (fs.existsSync(pathToFile)) {
|
||||
fs.rmSync(pathToFile);
|
||||
}
|
||||
}
|
||||
}
|
||||
} catch (error) {
|
||||
console.error('Could not delete group chats. Clean them up manually.', error);
|
||||
}
|
||||
|
||||
if (fs.existsSync(pathToGroup)) {
|
||||
fs.rmSync(pathToGroup);
|
||||
}
|
||||
|
||||
if (fs.existsSync(pathToChat)) {
|
||||
fs.rmSync(pathToChat);
|
||||
}
|
||||
|
||||
return response.send({ ok: true });
|
||||
});
|
||||
|
||||
|
Reference in New Issue
Block a user