From 2b0d9c26eb137e49905150ce3fff921bd3e4915f Mon Sep 17 00:00:00 2001 From: Silentoplayz <50341825+Silentoplayz@users.noreply.github.com> Date: Thu, 3 Apr 2025 22:20:40 -0400 Subject: [PATCH 01/37] fix: don't show export button if nothing to export --- src/lib/components/admin/Evaluations/Feedbacks.svelte | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/src/lib/components/admin/Evaluations/Feedbacks.svelte b/src/lib/components/admin/Evaluations/Feedbacks.svelte index 026755b8a..fa3707117 100644 --- a/src/lib/components/admin/Evaluations/Feedbacks.svelte +++ b/src/lib/components/admin/Evaluations/Feedbacks.svelte @@ -92,6 +92,11 @@ }; const exportHandler = async () => { + if (feedbacks.length === 0) { + toast.info($i18n.t('No feedback available to export.')); + return; + } + const _feedbacks = await exportAllFeedbacks(localStorage.token).catch((err) => { toast.error(err); return null; @@ -115,7 +120,7 @@ {feedbacks.length} -
+ {#if feedbacks.length > 0}
-
+ {/if}
Date: Fri, 4 Apr 2025 02:38:03 +0000 Subject: [PATCH 02/37] Update Feedbacks.svelte fix --- src/lib/components/admin/Evaluations/Feedbacks.svelte | 4 ---- 1 file changed, 4 deletions(-) diff --git a/src/lib/components/admin/Evaluations/Feedbacks.svelte b/src/lib/components/admin/Evaluations/Feedbacks.svelte index fa3707117..3733576d0 100644 --- a/src/lib/components/admin/Evaluations/Feedbacks.svelte +++ b/src/lib/components/admin/Evaluations/Feedbacks.svelte @@ -92,10 +92,6 @@ }; const exportHandler = async () => { - if (feedbacks.length === 0) { - toast.info($i18n.t('No feedback available to export.')); - return; - } const _feedbacks = await exportAllFeedbacks(localStorage.token).catch((err) => { toast.error(err); From 41b9ff9e00deba85917770d3bb78f6f4f2a9a4f9 Mon Sep 17 00:00:00 2001 From: Silentoplayz <50341825+Silentoplayz@users.noreply.github.com> Date: Thu, 3 Apr 2025 23:33:30 -0400 Subject: [PATCH 03/37] fix: funcs, models, prompts, & tools conditional export button --- src/lib/components/admin/Functions.svelte | 64 ++++++++++--------- src/lib/components/workspace/Models.svelte | 51 +++++++-------- src/lib/components/workspace/Prompts.svelte | 55 ++++++++-------- src/lib/components/workspace/Tools.svelte | 70 ++++++++++----------- 4 files changed, 122 insertions(+), 118 deletions(-) diff --git a/src/lib/components/admin/Functions.svelte b/src/lib/components/admin/Functions.svelte index f5868d09c..87f4958d4 100644 --- a/src/lib/components/admin/Functions.svelte +++ b/src/lib/components/admin/Functions.svelte @@ -430,39 +430,41 @@
- + if (_functions) { + let blob = new Blob([JSON.stringify(_functions)], { + type: 'application/json' + }); + saveAs(blob, `functions-export-${Date.now()}.json`); + } + }} + > +
{$i18n.t('Export Functions')}
+ +
+ + + +
+ + {/if} diff --git a/src/lib/components/workspace/Models.svelte b/src/lib/components/workspace/Models.svelte index 3c509a0bc..c9137fb85 100644 --- a/src/lib/components/workspace/Models.svelte +++ b/src/lib/components/workspace/Models.svelte @@ -93,13 +93,10 @@ const tab = await window.open(`${url}/models/create`, '_blank'); - // Define the event handler function const messageHandler = (event) => { if (event.origin !== url) return; if (event.data === 'loaded') { tab.postMessage(JSON.stringify(model), '*'); - - // Remove the event listener after handling the message window.removeEventListener('message', messageHandler); } }; @@ -477,29 +474,33 @@ - +
+ + + +
+ + {/if} {/if} diff --git a/src/lib/components/workspace/Prompts.svelte b/src/lib/components/workspace/Prompts.svelte index 98401f3f9..0c16b49a2 100644 --- a/src/lib/components/workspace/Prompts.svelte +++ b/src/lib/components/workspace/Prompts.svelte @@ -285,33 +285,36 @@ - +
+ + + +
+ + {/if} {/if} diff --git a/src/lib/components/workspace/Tools.svelte b/src/lib/components/workspace/Tools.svelte index c42ebb485..593797822 100644 --- a/src/lib/components/workspace/Tools.svelte +++ b/src/lib/components/workspace/Tools.svelte @@ -71,13 +71,10 @@ const tab = await window.open(`${url}/tools/create`, '_blank'); - // Define the event handler function const messageHandler = (event) => { if (event.origin !== url) return; if (event.data === 'loaded') { tab.postMessage(JSON.stringify(item), '*'); - - // Remove the event listener after handling the message window.removeEventListener('message', messageHandler); } }; @@ -124,8 +121,7 @@ if (res) { toast.success($i18n.t('Tool deleted successfully')); - - init(); + await init(); } }; @@ -398,39 +394,41 @@ - + if (_tools) { + let blob = new Blob([JSON.stringify(_tools)], { + type: 'application/json' + }); + saveAs(blob, `tools-export-${Date.now()}.json`); + } + }} + > +
{$i18n.t('Export Tools')}
+ +
+ + + +
+ + {/if} {/if} From 1c57e3e02c11fdc606988dea2e188dbf8cd59c63 Mon Sep 17 00:00:00 2001 From: Juan Calderon-Perez <835733+gaby@users.noreply.github.com> Date: Thu, 3 Apr 2025 23:52:10 -0400 Subject: [PATCH 04/37] Fix API_KEY_ALLOWED_ENDPOINTS --- backend/open_webui/utils/auth.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/backend/open_webui/utils/auth.py b/backend/open_webui/utils/auth.py index 54ad6a0bf..f3979fc35 100644 --- a/backend/open_webui/utils/auth.py +++ b/backend/open_webui/utils/auth.py @@ -182,7 +182,11 @@ def get_current_user( ).split(",") ] - if request.url.path not in allowed_paths: + # Check if the request path matches any allowed endpoint. + if not any( + request.url.path == allowed or request.url.path.startswith(allowed + "/") + for allowed in allowed_paths + ): raise HTTPException( status.HTTP_403_FORBIDDEN, detail=ERROR_MESSAGES.API_KEY_NOT_ALLOWED ) From a25d87607e0809412f5b24445a065bf95829135c Mon Sep 17 00:00:00 2001 From: narutopden Date: Fri, 4 Apr 2025 14:55:49 +0800 Subject: [PATCH 05/37] i18n: add Tibetan language --- src/lib/i18n/locales/bo-TB/translation.json | 1216 +++++++++++++++++++ src/lib/i18n/locales/languages.json | 4 + 2 files changed, 1220 insertions(+) create mode 100644 src/lib/i18n/locales/bo-TB/translation.json diff --git a/src/lib/i18n/locales/bo-TB/translation.json b/src/lib/i18n/locales/bo-TB/translation.json new file mode 100644 index 000000000..60569a6db --- /dev/null +++ b/src/lib/i18n/locales/bo-TB/translation.json @@ -0,0 +1,1216 @@ +{ + "-1 for no limit, or a positive integer for a specific limit": "-1 ནི་ཚད་མེད་པའི་ཆེད་དམ། ཡང་ན་ཧྲིལ་གྲངས་དགོས་ངེས་ཤིག་ཚད་བཀག་ངེས་ཅན་ཞིག་གི་ཆེད་དུ།", + "'s', 'm', 'h', 'd', 'w' or '-1' for no expiration.": "'s', 'm', 'h', 'd', 'w' ཡང་ན་ '-1' དུས་ཚོད་རྫོགས་མི་དགོས་པའི་ཆེད་དུ།", + "(e.g. `sh webui.sh --api --api-auth username_password`)": "(དཔེར་ན། `sh webui.sh --api --api-auth username_password`)", + "(e.g. `sh webui.sh --api`)": "(དཔེར་ན། `sh webui.sh --api`)", + "(latest)": "(ཆེས་གསར།)", + "(Ollama)": "(Ollama)", + "{{ models }}": "{{ models }}", + "{{COUNT}} Available Tool Servers": "ལག་ཆ་ {{COUNT}} ཡོད།", + "{{COUNT}} hidden lines": "ཡིག་ཕྲེང་ {{COUNT}} སྦས་ཡོད།", + "{{COUNT}} Replies": "ལན་ {{COUNT}}", + "{{user}}'s Chats": "{{user}} ཡི་ཁ་བརྡ།", + "{{webUIName}} Backend Required": "{{webUIName}} རྒྱབ་སྣེ་དགོས།", + "*Prompt node ID(s) are required for image generation": "*པར་བཟོའི་ཆེད་དུ་འགུལ་སློང་མདུད་ཚེག་གི་ ID(s) དགོས།", + "A new version (v{{LATEST_VERSION}}) is now available.": "པར་གཞི་གསར་པ། (v{{LATEST_VERSION}}) ད་ལྟ་ཡོད།", + "A task model is used when performing tasks such as generating titles for chats and web search queries": "ལས་ཀའི་དཔེ་དབྱིབས་ནི་ཁ་བརྡའི་ཁ་བྱང་བཟོ་བ་དང་དྲ་བའི་འཚོལ་བཤེར་འདྲི་བ་ལྟ་བུའི་ལས་འགན་སྒྲུབ་སྐབས་སྤྱོད་ཀྱི་ཡོད།", + "a user": "བེད་སྤྱོད་མཁན་ཞིག", + "About": "སྐོར་ལོ།", + "Accept autocomplete generation / Jump to prompt variable": "རང་འཚང་བཟོ་བསྐྲུན་དང་ལེན་བྱེད་པ། / འགུལ་སློང་འགྱུར་ཚད་ལ་མཆོངས་པ།", + "Access": "འཛུལ་སྤྱོད།", + "Access Control": "འཛུལ་སྤྱོད་ཚོད་འཛིན།", + "Accessible to all users": "བེད་སྤྱོད་མཁན་ཡོངས་ལ་འཛུལ་སྤྱོད་ཆོག་པ།", + "Account": "རྩིས་ཁྲ།", + "Account Activation Pending": "རྩིས་ཁྲ་སྒུལ་བསྐྱོད་སྒུག་བཞིན་པ།", + "Accurate information": "གནས་ཚུལ་ཡང་དག", + "Actions": "བྱ་སྤྱོད།", + "Activate": "སྒུལ་བསྐྱོད།", + "Activate this command by typing \"/{{COMMAND}}\" to chat input.": "ཁ་བརྡའི་ནང་འཇུག་ཏུ་ \"/{{COMMAND}}\" མནན་ནས་བཀའ་བརྡ་འདི་སྒུལ་བསྐྱོད་བྱེད་པ།", + "Active Users": "བེད་སྤྱོད་མཁན་ལས་བྱེད་བཞིན་པ།", + "Add": "སྣོན་པ།", + "Add a model ID": "དཔེ་དབྱིབས་ཀྱི་ ID ཞིག་སྣོན་པ།", + "Add a short description about what this model does": "དཔེ་དབྱིབས་འདིས་ཅི་ཞིག་བྱེད་མིན་སྐོར་གྱི་འགྲེལ་བཤད་ཐུང་ངུ་ཞིག་སྣོན་པ།", + "Add a tag": "རྟགས་ཤིག་སྣོན་པ།", + "Add Arena Model": "Arena དཔེ་དབྱིབས་སྣོན་པ།", + "Add Connection": "སྦྲེལ་མཐུད་སྣོན་པ།", + "Add Content": "ནང་དོན་སྣོན་པ།", + "Add content here": "ནང་དོན་འདིར་སྣོན་པ།", + "Add custom prompt": "སྲོལ་བཟོས་འགུལ་སློང་སྣོན་པ།", + "Add Files": "ཡིག་ཆ་སྣོན་པ།", + "Add Group": "ཚོགས་པ་སྣོན་པ།", + "Add Memory": "དྲན་ཤེས་སྣོན་པ།", + "Add Model": "དཔེ་དབྱིབས་སྣོན་པ།", + "Add Reaction": "ཡ་ལན་སྣོན་པ།", + "Add Tag": "རྟགས་སྣོན་པ།", + "Add Tags": "རྟགས་ཚུ་སྣོན་པ།", + "Add text content": "ཡིག་རྐྱང་ནང་དོན་སྣོན་པ།", + "Add User": "བེད་སྤྱོད་མཁན་སྣོན་པ།", + "Add User Group": "བེད་སྤྱོད་མཁན་ཚོགས་པ་སྣོན་པ།", + "Adjusting these settings will apply changes universally to all users.": "སྒྲིག་འགོད་འདི་དག་ལེགས་སྒྲིག་བྱས་ན་བེད་སྤྱོད་མཁན་ཡོངས་ལ་འགྱུར་བ་དེ་བཀོལ་སྤྱོད་བྱེད་ངེས།", + "admin": "དོ་དམ་པ།", + "Admin": "དོ་དམ་པ།", + "Admin Panel": "དོ་དམ་པའི་ལྟ་སྟེགས།", + "Admin Settings": "དོ་དམ་པའི་སྒྲིག་འགོད།", + "Admins have access to all tools at all times; users need tools assigned per model in the workspace.": "དོ་དམ་པས་དུས་རྟག་ཏུ་ལག་ཆ་ཡོངས་ལ་འཛུལ་སྤྱོད་བྱེད་ཆོག བེད་སྤྱོད་མཁན་གྱིས་ལས་ཡུལ་ནང་དཔེ་དབྱིབས་རེ་རེར་བཀོད་པའི་ལག་ཆ་དགོས་མཁོ་ཡོད།", + "Advanced Parameters": "མཐོ་རིམ་ཞུགས་གྲངས།", + "Advanced Params": "མཐོ་རིམ་ཞུགས།", + "All": "ཡོངས།", + "All Documents": "ཡིག་ཆ་ཡོངས།", + "All models deleted successfully": "དཔེ་དབྱིབས་ཡོངས་རྫོགས་ལེགས་པར་བསུབས་ཟིན།", + "Allow Chat Controls": "ཁ་བརྡའི་ཚོད་འཛིན་ལ་གནང་བ་སྤྲོད་པ།", + "Allow Chat Delete": "ཁ་བརྡ་བསུབ་པར་གནང་བ་སྤྲོད་པ།", + "Allow Chat Deletion": "ཁ་བརྡ་བསུབ་པར་གནང་བ་སྤྲོད་པ།", + "Allow Chat Edit": "ཁ་བརྡ་ཞུ་དག་ལ་གནང་བ་སྤྲོད་པ།", + "Allow File Upload": "ཡིག་ཆ་སྤར་བར་གནང་བ་སྤྲོད་པ།", + "Allow non-local voices": "ས་གནས་མིན་པའི་སྐད་གདངས་ལ་གནང་བ་སྤྲོད་པ།", + "Allow Temporary Chat": "གནས་སྐབས་ཁ་བརྡར་གནང་བ་སྤྲོད་པ།", + "Allow User Location": "བེད་སྤྱོད་མཁན་གནས་ཡུལ་ལ་གནང་བ་སྤྲོད་པ།", + "Allow Voice Interruption in Call": "སྐད་འབོད་ནང་གི་སྐད་ཆའི་བར་ཆད་ལ་གནང་བ་སྤྲོད་པ།", + "Allowed Endpoints": "གནང་བ་ཐོབ་པའི་མཇུག་མཐུད།", + "Already have an account?": "རྩིས་ཁྲ་ཡོད་ཟིན་ནམ།", + "Alternative to the top_p, and aims to ensure a balance of quality and variety. The parameter p represents the minimum probability for a token to be considered, relative to the probability of the most likely token. For example, with p=0.05 and the most likely token having a probability of 0.9, logits with a value less than 0.045 are filtered out.": "top_p ཡི་ཚབ་བྱེད། སྤུས་ཚད་དང་སྣ་ཚོགས་ཀྱི་དོ་མཉམ་འགན་ལེན་བྱ་རྒྱུར་དམིགས་པ། ཞུགས་གྲངས་ p ཡིས་མཚོན་བྱེད་ནི། ཆེས་འབྱུང་སྲིད་པའི་ཊོཀ་ཀེན་གྱི་ཆགས་ཚུལ་དང་བསྡུར་ན། བསམ་ཞིབ་བྱེད་དགོས་པའི་ཊོཀ་ཀེན་གྱི་ཆགས་ཚུལ་ཉུང་ཤོས་ཡིན། དཔེར་ན། p=0.05 དང་ཆེས་འབྱུང་སྲིད་པའི་ཊོཀ་ཀེན་གྱི་ཆགས་ཚུལ་ 0.9 ཡིན་ན། 0.045 ལས་ཆུང་བའི་རིན་ཐང་ཅན་གྱི་ལོ་ཇི་ཁེ་སི་དག་ཕྱིར་འཚག་བྱེད་ངེས།", + "Always": "རྟག་ཏུ།", + "Always Collapse Code Blocks": "རྟག་ཏུ་ཀོཌ་གཏོགས་ཁོངས་བསྐུམ་པ།", + "Always Expand Details": "རྟག་ཏུ་ཞིབ་ཕྲ་རྒྱ་བསྐྱེད་པ།", + "Amazing": "ངོ་མཚར་ཆེན།", + "an assistant": "ལག་རོགས་པ།", + "Analyzed": "དབྱེ་ཞིབ་བྱས་པ།", + "Analyzing...": "དབྱེ་ཞིབ་བྱེད་བཞིན་པ།...", + "and": "དང་།", + "and {{COUNT}} more": "ད་དུང་ {{COUNT}}", + "and create a new shared link.": "དང་མཉམ་སྤྱོད་སྦྲེལ་ཐག་གསར་པ་ཞིག་བཟོ་བ།", + "API Base URL": "API གཞི་རྩའི་ URL", + "API Key": "API ལྡེ་མིག", + "API Key created.": "API ལྡེ་མིག་བཟོས་ཟིན།", + "API Key Endpoint Restrictions": "API ལྡེ་མིག་མཇུག་མཐུད་ཚད་བཀག", + "API keys": "API ལྡེ་མིག", + "Application DN": "Application DN", + "Application DN Password": "Application DN གསང་གྲངས།", + "applies to all users with the \"user\" role": "\"བེད་སྤྱོད་མཁན་\" གྱི་གནས་ཚད་ཡོད་པའི་བེད་སྤྱོད་མཁན་ཡོངས་ལ་འཕྲོད་པ།", + "April": "ཟླ་བཞི་པ།", + "Archive": "ཡིག་མཛོད།", + "Archive All Chats": "ཁ་བརྡ་ཡོངས་རྫོགས་ཡིག་མཛོད་དུ་འཇུག་པ།", + "Archived Chats": "ཡིག་མཛོད་དུ་བཞག་པའི་ཁ་བརྡ།", + "archived-chat-export": "ཡིག་མཛོད་ཁ་བརྡ་ཕྱིར་གཏོང་།", + "Are you sure you want to clear all memories? This action cannot be undone.": "དྲན་ཤེས་ཡོངས་རྫོགས་བསུབ་འདོད་ཡོད་དམ། བྱ་སྤྱོད་འདི་ཕྱིར་ལྡོག་བྱེད་མི་ཐུབ།", + "Are you sure you want to delete this channel?": "ཁྱེད་ཀྱིས་བགྲོ་གླེང་འདི་བསུབ་འདོད་ངེས་ཡིན་ནམ།", + "Are you sure you want to delete this message?": "འཕྲིན་འདི་བསུབ་འདོད་ངེས་ཡིན་ནམ།", + "Are you sure you want to unarchive all archived chats?": "ཁྱེད་ཀྱིས་ཡིག་མཛོད་དུ་བཞག་པའི་ཁ་བརྡ་ཡོངས་རྫོགས་ཕྱིར་འདོན་འདོད་ངེས་ཡིན་ནམ།", + "Are you sure?": "ཁྱོད་ངེས་པ་ཡིན་ནམ།", + "Arena Models": "Arena དཔེ་དབྱིབས།", + "Artifacts": "རྫས་རྟེན།", + "Ask": "འདྲི་བ།", + "Ask a question": "དྲི་བ་ཞིག་འདྲི་བ།", + "Assistant": "ལག་རོགས་པ།", + "Attach file from knowledge": "ཤེས་བྱའི་ནང་ནས་ཡིག་ཆ་འཇོག་པ།", + "Attention to detail": "ཞིབ་ཕྲར་དོ་སྣང་།", + "Attribute for Mail": "ཡིག་ཟམ་གྱི་ཁྱད་ཆོས།", + "Attribute for Username": "བེད་སྤྱོད་མིང་གི་ཁྱད་ཆོས།", + "Audio": "སྒྲ།", + "August": "ཟླ་བརྒྱད་པ།", + "Authenticate": "དངོས་ར་སྤྲོད་པ།", + "Authentication": "དངོས་ར་སྤྲོད་པ།", + "Auto-Copy Response to Clipboard": "ལན་རང་འགུལ་གྱིས་སྦྱར་སྡེར་དུ་འདྲ་བཤུས་བྱེད་པ།", + "Auto-playback response": "ལན་རང་འགུལ་གྱིས་གཏོང་བ།", + "Autocomplete Generation": "རང་འཚང་བཟོ་སྐྲུན།", + "Autocomplete Generation Input Max Length": "རང་འཚང་བཟོ་སྐྲུན་ནང་འཇུག་གི་རིང་ཚད་ཆེ་ཤོས།", + "Automatic1111": "Automatic1111", + "AUTOMATIC1111 Api Auth String": "AUTOMATIC1111 Api Auth ཡིག་ཕྲེང་།", + "AUTOMATIC1111 Base URL": "AUTOMATIC1111 གཞི་རྩའི་ URL", + "AUTOMATIC1111 Base URL is required.": "AUTOMATIC1111 གཞི་རྩའི་ URL ངེས་པར་དུ་དགོས།", + "Available list": "ཡོད་པའི་ཐོ་གཞུང་།", + "Available Tool Servers": "ཡོད་པའི་ལག་ཆའི་སར་བར།", + "available!": "ཡོད།", + "Awful": "ཧ་ཅང་སྡུག", + "Azure AI Speech": "Azure AI སྐད་ཆ།", + "Azure Region": "Azure ས་ཁུལ།", + "Back": "རྒྱབ།", + "Bad Response": "ལན་ངན་པ།", + "Banners": "དར་ཆ།", + "Base Model (From)": "གཞི་རྩའི་དཔེ་དབྱིབས། (ནས།)", + "Batch Size (num_batch)": "ཚན་ཆུང་ཆེ་ཆུང་། (num_batch)", + "before": "སྔོན།", + "Being lazy": "ལེ་ལོ་བྱེད་པ།", + "Beta": "Beta", + "Bing Search V7 Endpoint": "Bing Search V7 མཇུག་མཐུད།", + "Bing Search V7 Subscription Key": "Bing Search V7 མངགས་ཉོ་ལྡེ་མིག", + "Bocha Search API Key": "Bocha Search API ལྡེ་མིག", + "Boosting or penalizing specific tokens for constrained responses. Bias values will be clamped between -100 and 100 (inclusive). (Default: none)": "ཚད་བཀག་ལན་གྱི་ཆེད་དུ་ཊོཀ་ཀེན་ངེས་ཅན་ལ་ཤུགས་སྣོན་ནམ་ཉེས་ཆད་གཏོང་བ། ཕྱོགས་ཞེན་གྱི་རིན་ཐང་ -100 ནས་ 100 བར་བཙིར་ངེས། (ཚུད་པ།) (སྔོན་སྒྲིག་མེད།)", + "Brave Search API Key": "Brave Search API ལྡེ་མིག", + "By {{name}}": "{{name}} ཡིས།", + "Bypass Embedding and Retrieval": "ཚུད་འཇུག་དང་ལེན་ཚུར་སྒྲུབ་ལས་བརྒལ་བ།", + "Bypass SSL verification for Websites": "དྲ་ཚིགས་ཀྱི་ SSL ར་སྤྲོད་བརྒལ་བ།", + "Calendar": "ལོ་ཐོ།", + "Call": "སྐད་འབོད།", + "Call feature is not supported when using Web STT engine": "Web STT མ་ལག་སྤྱོད་སྐབས་སྐད་འབོད་ཀྱི་ཁྱད་ཆོས་ལ་རྒྱབ་སྐྱོར་མེད།", + "Camera": "པར་ཆས།", + "Cancel": "རྩིས་མེད།", + "Capabilities": "ནུས་པ།", + "Capture": "འཛིན་པ།", + "Certificate Path": "ལག་ཁྱེར་གྱི་ལམ་བུ།", + "Change Password": "གསང་གྲངས་བརྗེ་བ།", + "Channel Name": "བགྲོ་གླེང་གི་མིང་།", + "Channels": "བགྲོ་གླེང་།", + "Character": "ཡིག་འབྲུ།", + "Character limit for autocomplete generation input": "རང་འཚང་བཟོ་སྐྲུན་ནང་འཇུག་གི་ཡིག་འབྲུ་ཚད་བཀག", + "Chart new frontiers": "ས་མཚམས་གསར་པ་འགོད་པ།", + "Chat": "ཁ་བརྡ།", + "Chat Background Image": "ཁ་བརྡའི་རྒྱབ་ལྗོངས་པར།", + "Chat Bubble UI": "ཁ་བརྡའི་ལྦུ་བའི་ UI", + "Chat Controls": "ཁ་བརྡའི་ཚོད་འཛིན།", + "Chat direction": "ཁ་བརྡའི་ཁ་ཕྱོགས།", + "Chat Overview": "ཁ་བརྡའི་སྤྱི་མཐོང་།", + "Chat Permissions": "ཁ་བརྡའི་དབང་ཚད།", + "Chat Tags Auto-Generation": "ཁ་བརྡའི་རྟགས་རང་འགུལ་བཟོ་སྐྲུན།", + "Chats": "ཁ་བརྡ།", + "Check Again": "ཡང་བསྐྱར་ཞིབ་དཔྱད།", + "Check for updates": "གསར་སྒྱུར་འཚོལ་ཞིབ།", + "Checking for updates...": "གསར་སྒྱུར་འཚོལ་བཞིན་པ།...", + "Choose a model before saving...": "ཉར་ཚགས་མ་བྱས་སྔོན་དུ་དཔེ་དབྱིབས་ཤིག་གདམ་པ།...", + "Chunk Overlap": "དུམ་བུ་བསྣོལ་བ།", + "Chunk Size": "དུམ་བུའི་ཆེ་ཆུང་།", + "Ciphers": "གསང་སྦྱོར།", + "Citation": "ལུང་འདྲེན།", + "Clear memory": "དྲན་ཤེས་གཙང་སེལ།", + "Clear Memory": "དྲན་ཤེས་གཙང་སེལ།", + "click here": "འདིར་མནན་པ།", + "Click here for filter guides.": "འཚག་མ་ལམ་སྟོན་གྱི་ཆེད་དུ་འདིར་མནན་པ།", + "Click here for help.": "རོགས་རམ་ཆེད་དུ་འདིར་མནན་པ།", + "Click here to": "འདིར་མནན་ནས།", + "Click here to download user import template file.": "བེད་སྤྱོད་མཁན་ནང་འདྲེན་མ་དཔེ་ཡིག་ཆ་ཕབ་ལེན་བྱེད་པར་འདིར་མནན་པ།", + "Click here to learn more about faster-whisper and see the available models.": "faster-whisper སྐོར་མང་ཙམ་ཤེས་པ་དང་ཡོད་པའི་དཔེ་དབྱིབས་ལྟ་བར་འདིར་མནན་པ།", + "Click here to see available models.": "ཡོད་པའི་དཔེ་དབྱིབས་ལྟ་བར་འདིར་མནན་པ།", + "Click here to select": "གདམ་ག་བྱེད་པར་འདིར་མནན་པ།", + "Click here to select a csv file.": "csv ཡིག་ཆ་ཞིག་གདམ་ག་བྱེད་པར་འདིར་མནན་པ།", + "Click here to select a py file.": "py ཡིག་ཆ་ཞིག་གདམ་ག་བྱེད་པར་འདིར་མནན་པ།", + "Click here to upload a workflow.json file.": "workflow.json ཡིག་ཆ་ཞིག་སྤར་བར་འདིར་མནན་པ།", + "click here.": "འདིར་མནན་པ།", + "Click on the user role button to change a user's role.": "བེད་སྤྱོད་མཁན་གྱི་གནས་ཚད་མཐེབ་གནོན་ལ་མནན་ནས་བེད་སྤྱོད་མཁན་གྱི་གནས་ཚད་བརྗེ་བ།", + "Clipboard write permission denied. Please check your browser settings to grant the necessary access.": "སྦྱར་སྡེར་འབྲི་བའི་དབང་ཚད་ཁས་མ་བླངས། དགོས་ངེས་ཀྱི་འཛུལ་སྤྱོད་སྤྲོད་པར་ཁྱེད་ཀྱི་བརྡ་འཚོལ་ཆས་ཀྱི་སྒྲིག་འགོད་ཞིབ་དཔྱད་བྱེད་རོགས།", + "Clone": "འདྲ་བཟོ།", + "Clone Chat": "ཁ་བརྡ་འདྲ་བཟོ།", + "Clone of {{TITLE}}": "{{TITLE}} ཡི་འདྲ་བཟོ།", + "Close": "ཁ་རྒྱག་པ།", + "Code execution": "ཀོཌ་ལག་བསྟར།", + "Code Execution": "ཀོཌ་ལག་བསྟར།", + "Code Execution Engine": "ཀོཌ་ལག་བསྟར་འཕྲུལ་འཁོར།", + "Code Execution Timeout": "ཀོཌ་ལག་བསྟར་དུས་ཚོད་བཀག་པ།", + "Code formatted successfully": "ཀོཌ་བཀོད་པ་ལེགས་པར་བཟོས་ཟིན།", + "Code Interpreter": "ཀོཌ་འགྲེལ་བཤད།", + "Code Interpreter Engine": "ཀོཌ་འགྲེལ་བཤད་འཕྲུལ་འཁོར།", + "Code Interpreter Prompt Template": "ཀོཌ་འགྲེལ་བཤད་འགུལ་སློང་མ་དཔེ།", + "Collapse": "བསྐུམ་པ།", + "Collection": "བསྡུ་གསོག", + "Color": "ཚོན་མདོག", + "ComfyUI": "ComfyUI", + "ComfyUI API Key": "ComfyUI API ལྡེ་མིག", + "ComfyUI Base URL": "ComfyUI གཞི་རྩའི་ URL", + "ComfyUI Base URL is required.": "ComfyUI གཞི་རྩའི་ URL དགོས་ངེས།", + "ComfyUI Workflow": "ComfyUI ལས་ཀའི་རྒྱུན་རིམ།", + "ComfyUI Workflow Nodes": "ComfyUI ལས་ཀའི་རྒྱུན་རིམ་མདུད་ཚེག", + "Command": "བཀའ་བརྡ།", + "Completions": "འགྲུབ་པ།", + "Concurrent Requests": "མཉམ་ལས་རེ་ཞུ།", + "Configure": "སྒྲིག་འགོད།", + "Confirm": "གཏན་འཁེལ།", + "Confirm Password": "གསང་གྲངས་གཏན་འཁེལ།", + "Confirm your action": "ཁྱེད་ཀྱི་བྱ་སྤྱོད་གཏན་འཁེལ།", + "Confirm your new password": "ཁྱེད་ཀྱི་གསང་གྲངས་གསར་པ་གཏན་འཁེལ།", + "Connect to your own OpenAI compatible API endpoints.": "ཁྱེད་རང་གི་ OpenAI དང་མཐུན་པའི་ API མཇུག་མཐུད་ལ་སྦྲེལ་བ།", + "Connect to your own OpenAPI compatible external tool servers.": "ཁྱེད་རང་གི་ OpenAPI དང་མཐུན་པའི་ཕྱི་རོལ་ལག་ཆའི་སར་བར་ལ་སྦྲེལ་བ།", + "Connections": "སྦྲེལ་མཐུད།", + "Constrains effort on reasoning for reasoning models. Only applicable to reasoning models from specific providers that support reasoning effort.": "རྒྱུ་མཚན་འདྲེན་པའི་དཔེ་དབྱིབས་ཀྱི་རྒྱུ་མཚན་འདྲེན་པའི་འབད་བརྩོན་ལ་ཚད་བཀག་བྱེད་པ། རྒྱུ་མཚན་འདྲེན་པའི་འབད་བརྩོན་ལ་རྒྱབ་སྐྱོར་བྱེད་པའི་མཁོ་སྤྲོད་པ་ངེས་ཅན་གྱི་རྒྱུ་མཚན་འདྲེན་པའི་དཔེ་དབྱིབས་ལ་ཁོ་ན་འཕྲོད་པ།", + "Contact Admin for WebUI Access": "WebUI འཛུལ་སྤྱོད་ཆེད་དུ་དོ་དམ་པ་དང་འབྲེལ་གཏུག་བྱེད་པ།", + "Content": "ནང་དོན།", + "Content Extraction Engine": "ནང་དོན་འདོན་སྤེལ་འཕྲུལ་འཁོར།", + "Context Length": "ནང་དོན་གྱི་རིང་ཚད།", + "Continue Response": "ལན་མུ་མཐུད་པ།", + "Continue with {{provider}}": "{{provider}} དང་མཉམ་དུ་མུ་མཐུད་པ།", + "Continue with Email": "ཡིག་ཟམ་དང་མཉམ་དུ་མུ་མཐུད་པ།", + "Continue with LDAP": "LDAP དང་མཉམ་དུ་མུ་མཐུད་པ།", + "Control how message text is split for TTS requests. 'Punctuation' splits into sentences, 'paragraphs' splits into paragraphs, and 'none' keeps the message as a single string.": "TTS རེ་ཞུའི་ཆེད་དུ་འཕྲིན་ཡིག་གི་ཡིག་རྐྱང་ཇི་ལྟར་བགོ་དགོས་ཚོད་འཛིན་བྱེད་པ། 'ཚེག་ཤད་' ཀྱིས་རረབ་ལུ་བགོ། 'ཚན་པ་' ཀྱིས་ཚན་པར་བགོ། 'མེད་པ་' ཡིས་འཕྲིན་ཡིག་དེ་ཡིག་ཕྲེང་གཅིག་ཏུ་ཉར་ཚགས་བྱེད་པ།", + "Control the repetition of token sequences in the generated text. A higher value (e.g., 1.5) will penalize repetitions more strongly, while a lower value (e.g., 1.1) will be more lenient. At 1, it is disabled.": "བཟོས་པའི་ཡིག་རྐྱང་ནང་གི་ཊོཀ་ཀེན་གྱི་རིམ་པའི་བསྐྱར་ཟློས་ཚོད་འཛིན་བྱེད་པ། རིན་ཐང་མཐོ་བ་ (དཔེར་ན། 1.5) ཡིས་བསྐྱར་ཟློས་ལ་ཆད་པ་དྲག་པོ་གཏོང་ངེས། དེ་བཞིན་དུ་རིན་ཐང་དམའ་བ་ (དཔེར་ན། 1.1) ཡིས་གུ་ཡངས་ཆེ་བ་ཡོང་ངེས། 1 ལ་སླེབས་དུས། དེ་ནུས་མེད་བཏང་ཡོད།", + "Controls": "ཚོད་འཛིན།", + "Controls the balance between coherence and diversity of the output. A lower value will result in more focused and coherent text.": "ཐོན་འབྲས་ཀྱི་འབྲེལ་ཆགས་རང་བཞིན་དང་སྣ་ཚོགས་རང་བཞིན་བར་གྱི་དོ་མཉམ་ཚོད་འཛིན་བྱེད་པ། རིན་ཐང་དམའ་བས་ཡིག་རྐྱང་གི་དམིགས་ཚད་དང་འབྲེལ་ཆགས་རང་བཞིན་སྔར་ལས་ལྷག་པར་བྱེད་ངེས།", + "Copied": "འདྲ་བཤུས་བྱས་པ།", + "Copied shared chat URL to clipboard!": "མཉམ་སྤྱོད་ཁ་བརྡའི་ URL སྦྱར་སྡེར་དུ་འདྲ་བཤུས་བྱས་ཟིན།", + "Copied to clipboard": "སྦྱར་སྡེར་དུ་འདྲ་བཤུས་བྱས་པ།", + "Copy": "འདྲ་བཤུས།", + "Copy last code block": "ཀོཌ་གཏོགས་ཁོངས་མཐའ་མ་འདྲ་བཤུས།", + "Copy last response": "ལན་མཐའ་མ་འདྲ་བཤུས།", + "Copy Link": "སྦྲེལ་ཐག་འདྲ་བཤུས།", + "Copy to clipboard": "སྦྱར་སྡེར་དུ་འདྲ་བཤུས།", + "Copying to clipboard was successful!": "སྦྱར་སྡེར་དུ་འདྲ་བཤུས་བྱེད་པ་ལེགས་འགྲུབ་བྱུང་།", + "CORS must be properly configured by the provider to allow requests from Open WebUI.": "Open WebUI ནས་རེ་ཞུ་གཏོང་བར་གནང་བ་སྤྲོད་ཆེད། CORS ངེས་པར་དུ་མཁོ་སྤྲོད་པས་འགྲིག་པོར་སྒྲིག་འགོད་བྱེད་དགོས།", + "Create": "གསར་བཟོ།", + "Create a knowledge base": "ཤེས་བྱའི་རྟེན་གཞི་ཞིག་གསར་བཟོ་བྱེད་པ།", + "Create a model": "དཔེ་དབྱིབས་ཤིག་གསར་བཟོ་བྱེད་པ།", + "Create Account": "རྩིས་ཁྲ་གསར་བཟོ།", + "Create Admin Account": "དོ་དམ་པའི་རྩིས་ཁྲ་གསར་བཟོ།", + "Create Channel": "བགྲོ་གླེང་གསར་བཟོ།", + "Create Group": "ཚོགས་པ་གསར་བཟོ།", + "Create Knowledge": "ཤེས་བྱ་གསར་བཟོ།", + "Create new key": "ལྡེ་མིག་གསར་པ་བཟོ་བ།", + "Create new secret key": "གསང་བའི་ལྡེ་མིག་གསར་པ་བཟོ་བ།", + "Created at": "གསར་བཟོ་བྱེད་དུས།", + "Created At": "གསར་བཟོ་བྱེད་དུས།", + "Created by": "གསར་བཟོ་བྱེད་མཁན།", + "CSV Import": "CSV ནང་འདྲེན།", + "Ctrl+Enter to Send": "Ctrl+Enter གཏོང་བ།", + "Current Model": "ད་ལྟའི་དཔེ་དབྱིབས།", + "Current Password": "ད་ལྟའི་གསང་གྲངས།", + "Custom": "སྲོལ་བཟོས།", + "Danger Zone": "ཉེན་ཁའི་ས་ཁུལ།", + "Dark": "ནག་པོ།", + "Database": "གནས་ཚུལ་མཛོད།", + "December": "ཟླ་བ་བཅུ་གཉིས་པ།", + "Default": "སྔོན་སྒྲིག", + "Default (Open AI)": "སྔོན་སྒྲིག (Open AI)", + "Default (SentenceTransformers)": "སྔོན་སྒྲིག (SentenceTransformers)", + "Default mode works with a wider range of models by calling tools once before execution. Native mode leverages the model’s built-in tool-calling capabilities, but requires the model to inherently support this feature.": "སྔོན་སྒྲིག་མ་དཔེ་ནི་ལག་བསྟར་མ་བྱས་སྔོན་དུ་ལག་ཆ་ཐེངས་གཅིག་འབོད་ནས་དཔེ་དབྱིབས་རྒྱ་ཆེ་བའི་ཁྱབ་ཁོངས་དང་མཉམ་ལས་བྱེད་ཐུབ། ས་སྐྱེས་མ་དཔེ་ཡིས་དཔེ་དབྱིབས་ཀྱི་ནང་འདྲེས་ལག་ཆ་འབོད་པའི་ནུས་པ་སྤྱོད་ཀྱི་ཡོད་མོད། འོན་ཀྱང་དཔེ་དབྱིབས་དེས་ཁྱད་ཆོས་འདི་ལ་ངོ་བོའི་ཐོག་ནས་རྒྱབ་སྐྱོར་བྱེད་དགོས།", + "Default Model": "སྔོན་སྒྲིག་དཔེ་དབྱིབས།", + "Default model updated": "སྔོན་སྒྲིག་དཔེ་དབྱིབས་གསར་སྒྱུར་བྱས།", + "Default Models": "སྔོན་སྒྲིག་དཔེ་དབྱིབས།", + "Default permissions": "སྔོན་སྒྲིག་དབང་ཚད།", + "Default permissions updated successfully": "སྔོན་སྒྲིག་དབང་ཚད་ལེགས་པར་གསར་སྒྱུར་བྱས།", + "Default Prompt Suggestions": "སྔོན་སྒྲིག་འགུལ་སློང་གྲོས་གཞི།", + "Default to 389 or 636 if TLS is enabled": "TLS སྒུལ་བསྐྱོད་བྱས་ན་སྔོན་སྒྲིག་ཏུ་ ༣༨༩ ཡང་ན་ ༦༣༦།", + "Default to ALL": "སྔོན་སྒྲིག་ཏུ་ཡོངས་རྫོགས།", + "Default to segmented retrieval for focused and relevant content extraction, this is recommended for most cases.": "དམིགས་ཚད་དང་འབྲེལ་ཡོད་ནང་དོན་འདོན་སྤེལ་གྱི་ཆེད་དུ་སྔོན་སྒྲིག་ཏུ་དུམ་བུ་ལེན་ཚུར་སྒྲུབ་བྱེད་པ། འདི་ནི་གནས་སྟངས་མང་ཆེ་བའི་ཆེད་དུ་འོས་སྦྱོར་བྱེད།", + "Default User Role": "སྔོན་སྒྲིག་བེད་སྤྱོད་མཁན་གྱི་གནས་ཚད།", + "Delete": "བསུབ་པ།", + "Delete a model": "དཔེ་དབྱིབས་ཤིག་བསུབ་པ།", + "Delete All Chats": "ཁ་བརྡ་ཡོངས་རྫོགས་བསུབ་པ།", + "Delete All Models": "དཔེ་དབྱིབས་ཡོངས་རྫོགས་བསུབ་པ།", + "Delete chat": "ཁ་བརྡ་བསུབ་པ།", + "Delete Chat": "ཁ་བརྡ་བསུབ་པ།", + "Delete chat?": "ཁ་བརྡ་བསུབ་པ།?", + "Delete folder?": "ཡིག་སྣོད་བསུབ་པ།?", + "Delete function?": "ལས་འགན་བསུབ་པ།?", + "Delete Message": "འཕྲིན་བསུབ་པ།", + "Delete message?": "འཕྲིན་བསུབ་པ།?", + "Delete prompt?": "འགུལ་སློང་བསུབ་པ།?", + "delete this link": "སྦྲེལ་ཐག་འདི་བསུབ་པ།", + "Delete tool?": "ལག་ཆ་བསུབ་པ།?", + "Delete User": "བེད་སྤྱོད་མཁན་བསུབ་པ།", + "Deleted {{deleteModelTag}}": "{{deleteModelTag}} བསུབས་ཟིན།", + "Deleted {{name}}": "{{name}} བསུབས་ཟིན།", + "Deleted User": "བེད་སྤྱོད་མཁན་བསུབས་ཟིན།", + "Describe your knowledge base and objectives": "ཁྱེད་ཀྱི་ཤེས་བྱའི་རྟེན་གཞི་དང་དམིགས་ཡུལ་འགྲེལ་བཤད་བྱེད་པ།", + "Description": "འགྲེལ་བཤད།", + "Didn't fully follow instructions": "ལམ་སྟོན་ཡོངས་སུ་མ་བསྒྲུབས།", + "Direct": "ཐད་ཀར།", + "Direct Connections": "ཐད་ཀར་སྦྲེལ་མཐུད།", + "Direct Connections allow users to connect to their own OpenAI compatible API endpoints.": "ཐད་ཀར་སྦྲེལ་མཐུད་ཀྱིས་བེད་སྤྱོད་མཁན་ཚོར་ཁོ་ཚོའི་རང་གི་ OpenAI དང་མཐུན་པའི་ API མཇུག་མཐུད་ལ་སྦྲེལ་བར་གནང་བ་སྤྲོད།", + "Direct Connections settings updated": "ཐད་ཀར་སྦྲེལ་མཐུད་ཀྱི་སྒྲིག་འགོད་གསར་སྒྱུར་བྱས།", + "Disabled": "ནུས་མེད།", + "Discover a function": "ལས་འགན་ཞིག་རྙེད་པ།", + "Discover a model": "དཔེ་དབྱིབས་ཤིག་རྙེད་པ།", + "Discover a prompt": "འགུལ་སློང་ཞིག་རྙེད་པ།", + "Discover a tool": "ལག་ཆ་ཞིག་རྙེད་པ།", + "Discover how to use Open WebUI and seek support from the community.": "Open WebUI ཇི་ལྟར་བེད་སྤྱོད་གཏོང་ཚུལ་རྙེད་པ་དང་སྤྱི་ཚོགས་ནས་རྒྱབ་སྐྱོར་འཚོལ་བ།", + "Discover wonders": "ངོ་མཚར་རྙེད་པ།", + "Discover, download, and explore custom functions": "སྲོལ་བཟོས་ལས་འགན་རྙེད་པ། ཕབ་ལེན་བྱེད་པ། དང་བརྟག་ཞིབ་བྱེད་པ།", + "Discover, download, and explore custom prompts": "སྲོལ་བཟོས་འགུལ་སློང་རྙེད་པ། ཕབ་ལེན་བྱེད་པ། དང་བརྟག་ཞིབ་བྱེད་པ།", + "Discover, download, and explore custom tools": "སྲོལ་བཟོས་ལག་ཆ་རྙེད་པ། ཕབ་ལེན་བྱེད་པ། དང་བརྟག་ཞིབ་བྱེད་པ།", + "Discover, download, and explore model presets": "དཔེ་དབྱིབས་སྔོན་སྒྲིག་རྙེད་པ། ཕབ་ལེན་བྱེད་པ། དང་བརྟག་ཞིབ་བྱེད་པ།", + "Dismissible": "ཕྱིར་འཐེན་རུང་བ།", + "Display": "འཆར་སྟོན།", + "Display Emoji in Call": "སྐད་འབོད་ནང་ Emoji འཆར་སྟོན་བྱེད་པ།", + "Display the username instead of You in the Chat": "ཁ་བརྡའི་ནང་ 'ཁྱེད་' ཀྱི་ཚབ་ཏུ་བེད་སྤྱོད་མིང་འཆར་སྟོན་བྱེད་པ།", + "Displays citations in the response": "ལན་ནང་ལུང་འདྲེན་འཆར་སྟོན་བྱེད་པ།", + "Dive into knowledge": "ཤེས་བྱའི་ནང་འཛུལ་བ།", + "Do not install functions from sources you do not fully trust.": "ཁྱེད་ཀྱིས་ཡིད་ཆེས་ཆ་ཚང་མེད་པའི་འབྱུང་ཁུངས་ནས་ལས་འགན་སྒྲིག་སྦྱོར་མ་བྱེད།", + "Do not install tools from sources you do not fully trust.": "ཁྱེད་ཀྱིས་ཡིད་ཆེས་ཆ་ཚང་མེད་པའི་འབྱུང་ཁུངས་ནས་ལག་ཆ་སྒྲིག་སྦྱོར་མ་བྱེད།", + "Docling": "Docling", + "Docling Server URL required.": "Docling སར་བར་གྱི་ URL དགོས་ངེས།", + "Document": "ཡིག་ཆ།", + "Document Intelligence": "ཡིག་ཆའི་རིག་ནུས།", + "Document Intelligence endpoint and key required.": "ཡིག་ཆའི་རིག་ནུས་མཇུག་མཐུད་དང་ལྡེ་མིག་དགོས་ངེས།", + "Documentation": "ཡིག་ཆ།", + "Documents": "ཡིག་ཆ།", + "does not make any external connections, and your data stays securely on your locally hosted server.": "ཕྱི་རོལ་གྱི་སྦྲེལ་མཐུད་གང་ཡང་མི་བྱེད། དེ་མིན་ཁྱེད་ཀྱི་གནས་ཚུལ་དེ་ཁྱེད་ཀྱི་ས་གནས་སུ་བཀོད་སྒྲིག་བྱས་པའི་སར་བར་སྟེང་བདེ་འཇགས་ངང་གནས་ངེས།", + "Domain Filter List": "ཁྱབ་ཁོངས་འཚག་མའི་ཐོ་གཞུང་།", + "Don't have an account?": "རྩིས་ཁྲ་མེད་དམ།", + "don't install random functions from sources you don't trust.": "ཁྱེད་ཀྱིས་ཡིད་ཆེས་མེད་པའི་འབྱུང་ཁུངས་ནས་གང་བྱུང་གི་ལས་འགན་སྒྲིག་སྦྱོར་མ་བྱེད།", + "don't install random tools from sources you don't trust.": "ཁྱེད་ཀྱིས་ཡིད་ཆེས་མེད་པའི་འབྱུང་ཁུངས་ནས་གང་བྱུང་གི་ལག་ཆ་སྒྲིག་སྦྱོར་མ་བྱེད།", + "Don't like the style": "བཟོ་ལྟ་ལ་མི་དགའ།", + "Done": "ཚར་སོང་།", + "Download": "ཕབ་ལེན།", + "Download as SVG": "SVG ཐོག་ཕབ་ལེན།", + "Download canceled": "ཕབ་ལེན་རྩིས་མེད་བཏང་།", + "Download Database": "གནས་ཚུལ་མཛོད་ཕབ་ལེན།", + "Drag and drop a file to upload or select a file to view": "ཡིག་ཆ་ཞིག་འདྲུད་ནས་འཇོག་སྟེ་སྤར་བའམ། ཡང་ན་ཡིག་ཆ་ཞིག་གདམ་ག་བྱས་ནས་ལྟ་བ།", + "Draw": "རི་མོ་འབྲི་བ།", + "Drop any files here to add to the conversation": "ཡིག་ཆ་གང་རུང་འདིར་བཞག་ནས་ཁ་བརྡར་སྣོན་པ།", + "e.g. '30s','10m'. Valid time units are 's', 'm', 'h'.": "དཔེར་ན། '30s','10m'. ནུས་ལྡན་དུས་ཚོད་ཀྱི་ཚན་པ་ནི། 's', 'm', 'h' ཡིན།", + "e.g. \"json\" or a JSON schema": "དཔེར་ན། \"json\" ཡང་ན་ JSON གི་ schema", + "e.g. 60": "དཔེར་ན། ༦༠", + "e.g. A filter to remove profanity from text": "དཔེར་ན། ཡིག་རྐྱང་ནས་ཚིག་རྩུབ་འདོར་བྱེད་ཀྱི་འཚག་མ།", + "e.g. My Filter": "དཔེར་ན། ངའི་འཚག་མ།", + "e.g. My Tools": "དཔེར་ན། ངའི་ལག་ཆ།", + "e.g. my_filter": "དཔེར་ན། my_filter", + "e.g. my_tools": "དཔེར་ན། my_tools", + "e.g. Tools for performing various operations": "དཔེར་ན། ལས་ཀ་སྣ་ཚོགས་སྒྲུབ་བྱེད་ཀྱི་ལག་ཆ།", + "Edit": "ཞུ་དག", + "Edit Arena Model": "Arena དཔེ་དབྱིབས་ཞུ་དག", + "Edit Channel": "བགྲོ་གླེང་ཞུ་དག", + "Edit Connection": "སྦྲེལ་མཐུད་ཞུ་དག", + "Edit Default Permissions": "སྔོན་སྒྲིག་དབང་ཚད་ཞུ་དག", + "Edit Memory": "དྲན་ཤེས་ཞུ་དག", + "Edit User": "བེད་སྤྱོད་མཁན་ཞུ་དག", + "Edit User Group": "བེད་སྤྱོད་མཁན་ཚོགས་པ་ཞུ་དག", + "ElevenLabs": "ElevenLabs", + "Email": "ཡིག་ཟམ།", + "Embark on adventures": "ཉེན་བརྟུལ་གྱི་འགྲུལ་བཞུད་ལ་འཇུག་པ།", + "Embedding": "ཚུད་འཇུག", + "Embedding Batch Size": "ཚུད་འཇུག་ཚན་ཆུང་གི་ཆེ་ཆུང་།", + "Embedding Model": "ཚུད་འཇུག་དཔེ་དབྱིབས།", + "Embedding Model Engine": "ཚུད་འཇུག་དཔེ་དབྱིབས་འཕྲུལ་འཁོར།", + "Embedding model set to \"{{embedding_model}}\"": "ཚུད་འཇུག་དཔེ་དབྱིབས་ \"{{embedding_model}}\" ལ་བཀོད་སྒྲིག་བྱས།", + "Enable API Key": "API ལྡེ་མིག་སྒུལ་བསྐྱོད་བྱེད་པ།", + "Enable autocomplete generation for chat messages": "ཁ་བརྡའི་འཕྲིན་ཡིག་གི་ཆེད་དུ་རང་འཚང་བཟོ་སྐྲུན་སྒུལ་བསྐྱོད་བྱེད་པ།", + "Enable Code Execution": "ཀོཌ་ལག་བསྟར་སྒུལ་བསྐྱོད་བྱེད་པ།", + "Enable Code Interpreter": "ཀོཌ་འགྲེལ་བཤད་སྒུལ་བསྐྱོད་བྱེད་པ།", + "Enable Community Sharing": "སྤྱི་ཚོགས་མཉམ་སྤྱོད་སྒུལ་བསྐྱོད་བྱེད་པ།", + "Enable Memory Locking (mlock) to prevent model data from being swapped out of RAM. This option locks the model's working set of pages into RAM, ensuring that they will not be swapped out to disk. This can help maintain performance by avoiding page faults and ensuring fast data access.": "དཔེ་དབྱིབས་ཀྱི་གནས་ཚུལ་ RAM ནས་ཕྱིར་བརྗེ་བར་སྔོན་འགོག་བྱེད་པའི་ཆེད་དུ་དྲན་ཤེས་ཟྭ་རྒྱག་ (mlock) སྒུལ་བསྐྱོད་བྱེད་པ། འདེམས་ཀ་འདིས་དཔེ་དབྱིབས་ཀྱི་ལས་ཀའི་ཤོག་ངོས་ཚོགས་སྡེ་ RAM ནང་ཟྭ་རྒྱག་སྟེ། དེ་དག་ཌིསཀ་ལ་ཕྱིར་བརྗེ་མི་འགྲོ་བ་འགན་ལེན་བྱེད། འདིས་ཤོག་ངོས་ནོར་འཁྲུལ་ལས་གཡོལ་བ་དང་གནས་ཚུལ་མྱུར་པོར་འཛུལ་སྤྱོད་ཐུབ་པའི་འགན་ལེན་བྱས་ནས་ལས་ཆོད་རྒྱུན་སྲུང་བྱེད་པར་རོགས་པ་བྱེད་ཐུབ།", + "Enable Memory Mapping (mmap) to load model data. This option allows the system to use disk storage as an extension of RAM by treating disk files as if they were in RAM. This can improve model performance by allowing for faster data access. However, it may not work correctly with all systems and can consume a significant amount of disk space.": "དཔེ་དབྱིབས་ཀྱི་གནས་ཚུལ་ནང་འཇུག་བྱེད་པའི་ཆེད་དུ་དྲན་ཤེས་ས་ཁྲ་འགོད་པ་ (mmap) སྒུལ་བསྐྱོད་བྱེད་པ། འདེམས་ཀ་འདིས་མ་ལག་ལ་ཌིསཀ་ཡིག་ཆ་ RAM ནང་ཡོད་པ་ལྟར་བརྩིས་ནས། ཌིསཀ་གསོག་ཆས་ RAM གྱི་རྒྱ་བསྐྱེད་དུ་བེད་སྤྱོད་གཏོང་བའི་གནང་བ་སྤྲོད། འདིས་གནས་ཚུལ་མྱུར་པོར་འཛུལ་སྤྱོད་ཆོག་པར་བཏང་ནས་དཔེ་དབྱིབས་ཀྱི་ལས་ཆོད་ལེགས་སུ་གཏོང་ཐུབ། འོན་ཀྱང་། འདི་མ་ལག་ཡོངས་ལ་ཡང་དག་པར་ལས་ཀ་བྱེད་མི་སྲིད། དེ་མིན་ཌིསཀ་གི་བར་སྟོང་མང་པོ་ཟ་སྲིད།", + "Enable Message Rating": "འཕྲིན་ལ་སྐར་མ་སྤྲོད་པ་སྒུལ་བསྐྱོད་བྱེད་པ།", + "Enable Mirostat sampling for controlling perplexity.": "རྙོག་འཛིང་ཚད་ཚོད་འཛིན་གྱི་ཆེད་དུ་ Mirostat མ་དཔེ་འདེམས་པ་སྒུལ་བསྐྱོད་བྱེད་པ།", + "Enable New Sign Ups": "ཐོ་འགོད་གསར་པ་སྒུལ་བསྐྱོད་བྱེད་པ།", + "Enabled": "སྒུལ་བསྐྱོད་བྱས་ཡོད།", + "Enforce Temporary Chat": "གནས་སྐབས་ཁ་བརྡ་བཙན་བཀོལ་བྱེད་པ།", + "Ensure your CSV file includes 4 columns in this order: Name, Email, Password, Role.": "ཁྱེད་ཀྱི་ CSV ཡིག་ཆར་གོ་རིམ་འདི་ལྟར། མིང་། ཡིག་ཟམ། གསང་གྲངས། གནས་ཚད། སྟར་པ་ ༤ ཚུད་ཡོད་པ་ཁག་ཐེག་བྱེད་རོགས།", + "Enter {{role}} message here": "{{role}} ཡི་འཕྲིན་འདིར་འཇུག་པ།", + "Enter a detail about yourself for your LLMs to recall": "ཁྱེད་ཀྱི་ LLMs ཡིས་ཕྱིར་དྲན་ཆེད་དུ་ཁྱེད་རང་གི་སྐོར་གྱི་ཞིབ་ཕྲ་ཞིག་འཇུག་པ།", + "Enter api auth string (e.g. username:password)": "api auth ཡིག་ཕྲེང་འཇུག་པ། (དཔེར་ན། username:password)", + "Enter Application DN": "Application DN འཇུག་པ།", + "Enter Application DN Password": "Application DN གསང་གྲངས་འཇུག་པ།", + "Enter Bing Search V7 Endpoint": "Bing Search V7 མཇུག་མཐུད་འཇུག་པ།", + "Enter Bing Search V7 Subscription Key": "Bing Search V7 མངགས་ཉོ་ལྡེ་མིག་འཇུག་པ།", + "Enter Bocha Search API Key": "Bocha Search API ལྡེ་མིག་འཇུག་པ།", + "Enter Brave Search API Key": "Brave Search API ལྡེ་མིག་འཇུག་པ།", + "Enter certificate path": "ལག་ཁྱེར་གྱི་ལམ་བུ་འཇུག་པ།", + "Enter CFG Scale (e.g. 7.0)": "CFG ཆེ་ཆུང་འཇུག་པ། (དཔེར་ན། 7.0)", + "Enter Chunk Overlap": "དུམ་བུ་བསྣོལ་བ་འཇུག་པ།", + "Enter Chunk Size": "དུམ་བུའི་ཆེ་ཆུང་འཇུག་པ།", + "Enter comma-seperated \"token:bias_value\" pairs (example: 5432:100, 413:-100)": "ཚེག་བསྐུངས་ཀྱིས་ལོགས་སུ་བཀར་བའི་ \"ཊོཀ་ཀེན།:ཕྱོགས་ཞེན་རིན་ཐང་།\" ཆ་འཇུག་པ། (དཔེར། 5432:100, 413:-100)", + "Enter description": "འགྲེལ་བཤད་འཇུག་པ།", + "Enter Docling Server URL": "Docling སར་བར་གྱི་ URL འཇུག་པ།", + "Enter Document Intelligence Endpoint": "ཡིག་ཆའི་རིག་ནུས་མཇུག་མཐུད་འཇུག་པ།", + "Enter Document Intelligence Key": "ཡིག་ཆའི་རིག་ནུས་ལྡེ་མིག་འཇུག་པ།", + "Enter domains separated by commas (e.g., example.com,site.org)": "ཚེག་བསྐུངས་ཀྱིས་ལོགས་སུ་བཀར་བའི་ཁྱབ་ཁོངས་འཇུག་པ། (དཔེར་ན། example.com,site.org)", + "Enter Exa API Key": "Exa API ལྡེ་མིག་འཇུག་པ།", + "Enter Github Raw URL": "Github Raw URL འཇུག་པ།", + "Enter Google PSE API Key": "Google PSE API ལྡེ་མིག་འཇུག་པ།", + "Enter Google PSE Engine Id": "Google PSE Engine Id འཇུག་པ།", + "Enter Image Size (e.g. 512x512)": "པར་གྱི་ཆེ་ཆུང་འཇུག་པ། (དཔེར་ན། 512x512)", + "Enter Jina API Key": "Jina API ལྡེ་མིག་འཇུག་པ།", + "Enter Jupyter Password": "Jupyter གསང་གྲངས་འཇུག་པ།", + "Enter Jupyter Token": "Jupyter Token འཇུག་པ།", + "Enter Jupyter URL": "Jupyter URL འཇུག་པ།", + "Enter Kagi Search API Key": "Kagi Search API ལྡེ་མིག་འཇུག་པ།", + "Enter Key Behavior": "ལྡེ་མིག་གི་བྱེད་སྟངས་འཇུག་པ།", + "Enter language codes": "སྐད་ཡིག་གི་ཨང་རྟགས་འཇུག་པ།", + "Enter Model ID": "དཔེ་དབྱིབས་ཀྱི་ ID འཇུག་པ།", + "Enter model tag (e.g. {{modelTag}})": "དཔེ་དབྱིབས་ཀྱི་རྟགས་འཇུག་པ། (དཔེར་ན། {{modelTag}})", + "Enter Mojeek Search API Key": "Mojeek Search API ལྡེ་མིག་འཇུག་པ།", + "Enter Number of Steps (e.g. 50)": "གོམ་གྲངས་འཇུག་པ། (དཔེར་ན། ༥༠)", + "Enter Perplexity API Key": "Perplexity API ལྡེ་མིག་འཇུག་པ།", + "Enter proxy URL (e.g. https://user:password@host:port)": "Proxy URL འཇུག་པ། (དཔེར་ན། https://user:password@host:port)", + "Enter reasoning effort": "རྒྱུ་མཚན་འདྲེན་པའི་འབད་བརྩོན་འཇུག་པ།", + "Enter Sampler (e.g. Euler a)": "Sampler འཇུག་པ། (དཔེར་ན། Euler a)", + "Enter Scheduler (e.g. Karras)": "Scheduler འཇུག་པ། (དཔེར་ན། Karras)", + "Enter Score": "སྐར་མ་འཇུག་པ།", + "Enter SearchApi API Key": "SearchApi API ལྡེ་མིག་འཇུག་པ།", + "Enter SearchApi Engine": "SearchApi Engine འཇུག་པ།", + "Enter Searxng Query URL": "Searxng Query URL འཇུག་པ།", + "Enter Seed": "Seed འཇུག་པ།", + "Enter SerpApi API Key": "SerpApi API ལྡེ་མིག་འཇུག་པ།", + "Enter SerpApi Engine": "SerpApi Engine འཇུག་པ།", + "Enter Serper API Key": "Serper API ལྡེ་མིག་འཇུག་པ།", + "Enter Serply API Key": "Serply API ལྡེ་མིག་འཇུག་པ།", + "Enter Serpstack API Key": "Serpstack API ལྡེ་མིག་འཇུག་པ།", + "Enter server host": "སར་བར་གྱི་ Host འཇུག་པ།", + "Enter server label": "སར་བར་གྱི་བྱང་རྟགས་འཇུག་པ།", + "Enter server port": "སར་བར་གྱི་ Port འཇུག་པ།", + "Enter stop sequence": "མཚམས་འཇོག་རིམ་པ་འཇུག་པ།", + "Enter system prompt": "མ་ལག་གི་འགུལ་སློང་འཇུག་པ།", + "Enter Tavily API Key": "Tavily API ལྡེ་མིག་འཇུག་པ།", + "Enter the public URL of your WebUI. This URL will be used to generate links in the notifications.": "ཁྱེད་ཀྱི་ WebUI ཡི་སྤྱི་སྤྱོད་ URL འཇུག་པ། URL འདི་བརྡ་ཁྱབ་ནང་སྦྲེལ་ཐག་བཟོ་བར་བེད་སྤྱོད་བྱེད་ངེས།", + "Enter Tika Server URL": "Tika Server URL འཇུག་པ།", + "Enter timeout in seconds": "སྐར་ཆའི་ནང་དུས་ཚོད་བཀག་པ་འཇུག་པ།", + "Enter to Send": "Enter གཏོང་བ།", + "Enter Top K": "Top K འཇུག་པ།", + "Enter Top K Reranker": "Top K Reranker འཇུག་པ།", + "Enter URL (e.g. http://127.0.0.1:7860/)": "URL འཇུག་པ། (དཔེར་ན། http://127.0.0.1:7860/)", + "Enter URL (e.g. http://localhost:11434)": "URL འཇུག་པ། (དཔེར་ན། http://localhost:11434)", + "Enter your current password": "ཁྱེད་ཀྱི་ད་ལྟའི་གསང་གྲངས་འཇུག་པ།", + "Enter Your Email": "ཁྱེད་ཀྱི་ཡིག་ཟམ་འཇུག་པ།", + "Enter Your Full Name": "ཁྱེད་ཀྱི་མིང་ཆ་ཚང་འཇུག་པ།", + "Enter your message": "ཁྱེད་ཀྱི་འཕྲིན་འཇུག་པ།", + "Enter your new password": "ཁྱེད་ཀྱི་གསང་གྲངས་གསར་པ་འཇུག་པ།", + "Enter Your Password": "ཁྱེད་ཀྱི་གསང་གྲངས་འཇུག་པ།", + "Enter Your Role": "ཁྱེད་ཀྱི་གནས་ཚད་འཇུག་པ།", + "Enter Your Username": "ཁྱེད་ཀྱི་བེད་སྤྱོད་མིང་འཇུག་པ།", + "Enter your webhook URL": "ཁྱེད་ཀྱི་ Webhook URL འཇུག་པ།", + "Error": "ནོར་འཁྲུལ།", + "ERROR": "ནོར་འཁྲུལ།", + "Error accessing Google Drive: {{error}}": "Google Drive འཛུལ་སྤྱོད་སྐབས་ནོར་འཁྲུལ།: {{error}}", + "Error uploading file: {{error}}": "ཡིག་ཆ་སྤར་སྐབས་ནོར་འཁྲུལ།: {{error}}", + "Evaluations": "གདེང་འཇོག", + "Exa API Key": "Exa API ལྡེ་མིག", + "Example: (&(objectClass=inetOrgPerson)(uid=%s))": "དཔེར་ན། (&(objectClass=inetOrgPerson)(uid=%s))", + "Example: ALL": "དཔེར་ན། ALL", + "Example: mail": "དཔེར་ན། mail", + "Example: ou=users,dc=foo,dc=example": "དཔེར་ན། ou=users,dc=foo,dc=example", + "Example: sAMAccountName or uid or userPrincipalName": "དཔེར་ན། sAMAccountName ཡང་ན་ uid ཡང་ན་ userPrincipalName", + "Exceeded the number of seats in your license. Please contact support to increase the number of seats.": "ཁྱེད་ཀྱི་ཆོག་མཆན་ནང་གི་སྟེགས་གྲངས་ལས་བརྒལ་སོང་། སྟེགས་གྲངས་མང་དུ་གཏོང་བར་རོགས་སྐྱོར་དང་འབྲེལ་གཏུག་བྱེད་རོགས།", + "Exclude": "ཕུད་པ།", + "Execute code for analysis": "དབྱེ་ཞིབ་ཆེད་དུ་ཀོཌ་ལག་བསྟར་བྱེད་པ།", + "Executing `{{NAME}}`...": "`{{NAME}}` ལག་བསྟར་བྱེད་བཞིན་པ།...", + "Expand": "རྒྱ་བསྐྱེད་པ།", + "Experimental": "ཚོད་ལྟའི་རང་བཞིན།", + "Explain": "འགྲེལ་བཤད།", + "Explain this section to me in more detail": "ས་བཅད་འདི་ང་ལ་ཞིབ་ཕྲ་འགྲེལ་བཤད་བྱེད་རོགས།", + "Explore the cosmos": "འཇིག་རྟེན་བརྟག་ཞིབ་བྱེད་པ།", + "Export": "ཕྱིར་གཏོང་།", + "Export All Archived Chats": "ཡིག་མཛོད་དུ་བཞག་པའི་ཁ་བརྡ་ཡོངས་རྫོགས་ཕྱིར་གཏོང་།", + "Export All Chats (All Users)": "ཁ་བརྡ་ཡོངས་རྫོགས་ཕྱིར་གཏོང་། (བེད་སྤྱོད་མཁན་ཡོངས་)", + "Export chat (.json)": "ཁ་བརྡ་ཕྱིར་གཏོང་ (.json)", + "Export Chats": "ཁ་བརྡ་ཕྱིར་གཏོང་།", + "Export Config to JSON File": "སྒྲིག་འགོད་ JSON ཡིག་ཆར་ཕྱིར་གཏོང་།", + "Export Functions": "ལས་འགན་ཕྱིར་གཏོང་།", + "Export Models": "དཔེ་དབྱིབས་ཕྱིར་གཏོང་།", + "Export Presets": "སྔོན་སྒྲིག་ཕྱིར་གཏོང་།", + "Export Prompts": "འགུལ་སློང་ཕྱིར་གཏོང་།", + "Export to CSV": "CSV ལ་ཕྱིར་གཏོང་།", + "Export Tools": "ལག་ཆ་ཕྱིར་གཏོང་།", + "External": "ཕྱི་རོལ།", + "External Models": "ཕྱི་རོལ་གྱི་དཔེ་དབྱིབས།", + "Failed to add file.": "ཡིག་ཆ་སྣོན་པར་མ་ཐུབ།", + "Failed to connect to {{URL}} OpenAPI tool server": "{{URL}} OpenAPI ལག་ཆའི་སར་བར་ལ་སྦྲེལ་མཐུད་བྱེད་མ་ཐུབ།", + "Failed to create API Key.": "API ལྡེ་མིག་བཟོ་མ་ཐུབ།", + "Failed to fetch models": "དཔེ་དབྱིབས་ལེན་པར་མ་ཐུབ།", + "Failed to read clipboard contents": "སྦྱར་སྡེར་གྱི་ནང་དོན་ཀློག་མ་ཐུབ།", + "Failed to save models configuration": "དཔེ་དབྱིབས་སྒྲིག་འགོད་ཉར་ཚགས་བྱེད་མ་ཐུབ།", + "Failed to update settings": "སྒྲིག་འགོད་གསར་སྒྱུར་བྱེད་མ་ཐུབ།", + "Failed to upload file.": "ཡིག་ཆ་སྤར་མ་ཐུབ།", + "Features": "ཁྱད་ཆོས།", + "Features Permissions": "ཁྱད་ཆོས་ཀྱི་དབང་ཚད།", + "February": "ཟླ་བ་གཉིས་པ།", + "Feedback History": "བསམ་འཆར་གྱི་ལོ་རྒྱུས།", + "Feedbacks": "བསམ་འཆར།", + "Feel free to add specific details": "ཞིབ་ཕྲ་ངེས་ཅན་སྣོན་པར་སེམས་ཁྲལ་མེད།", + "File": "ཡིག་ཆ།", + "File added successfully.": "ཡིག་ཆ་ལེགས་པར་བསྣན་ཟིན།", + "File content updated successfully.": "ཡིག་ཆའི་ནང་དོན་ལེགས་པར་གསར་སྒྱུར་བྱས་ཟིན།", + "File Mode": "ཡིག་ཆའི་མ་དཔེ།", + "File not found.": "ཡིག་ཆ་མ་རྙེད།", + "File removed successfully.": "ཡིག་ཆ་ལེགས་པར་བསུབས་ཟིན།", + "File size should not exceed {{maxSize}} MB.": "ཡིག་ཆའི་ཆེ་ཆུང་ {{maxSize}} MB ལས་མི་བརྒལ་དགོས།", + "File uploaded successfully": "ཡིག་ཆ་ལེགས་པར་སྤར་ཟིན།", + "Files": "ཡིག་ཆ།", + "Filter is now globally disabled": "འཚག་མ་དེ་ད་ལྟ་འཛམ་གླིང་ཡོངས་ནས་ནུས་མེད་བཏང་ཡོད།", + "Filter is now globally enabled": "འཚག་མ་དེ་ད་ལྟ་འཛམ་གླིང་ཡོངས་ནས་སྒུལ་བསྐྱོད་བྱས་ཡོད།", + "Filters": "འཚག་མ།", + "Fingerprint spoofing detected: Unable to use initials as avatar. Defaulting to default profile image.": "མཛུབ་ཐེལ་རྫུན་བཟོ་རྙེད་སོང་།: མིང་གི་ཡིག་འབྲུ་མགོ་མ་སྐུ་ཚབ་ཏུ་བེད་སྤྱོད་གཏོང་མི་ཐུབ། སྔོན་སྒྲིག་ཕྱི་ཐག་པར་རིས་ལ་སྔོན་སྒྲིག་བྱེད་བཞིན་པ།", + "Fluidly stream large external response chunks": "ཕྱི་རོལ་གྱི་ལན་གྱི་དུམ་བུ་ཆེན་པོ་རྒྱུན་བཞིན་རྒྱུག་པ།", + "Focus chat input": "ཁ་བརྡའི་ནང་འཇུག་ལ་དམིགས་པ།", + "Folder deleted successfully": "ཡིག་སྣོད་ལེགས་པར་བསུབས་ཟིན།", + "Folder name cannot be empty": "ཡིག་སྣོད་ཀྱི་མིང་སྟོང་པ་ཡིན་མི་ཆོག", + "Folder name cannot be empty.": "ཡིག་སྣོད་ཀྱི་མིང་སྟོང་པ་ཡིན་མི་ཆོག", + "Folder name updated successfully": "ཡིག་སྣོད་ཀྱི་མིང་ལེགས་པར་གསར་སྒྱུར་བྱས་ཟིན།", + "Followed instructions perfectly": "ལམ་སྟོན་ཡང་དག་པར་བསྒྲུབས།", + "Forge new paths": "ལམ་བུ་གསར་པ་བཟོ་བ།", + "Form": "རེའུ་མིག", + "Format your variables using brackets like this:": "ཁྱེད་ཀྱི་འགྱུར་ཚད་དེ་འདི་ལྟར་གུག་རྟགས་བེད་སྤྱོད་ནས་བཀོད་སྒྲིག་བྱེད་པ།:", + "Frequency Penalty": "ཡང་ཟློས་ཀྱི་ཆད་པ།", + "Full Context Mode": "ནང་དོན་ཆ་ཚང་མ་དཔེ།", + "Function": "ལས་འགན།", + "Function Calling": "ལས་འགན་འབོད་པ།", + "Function created successfully": "ལས་འགན་ལེགས་པར་བཟོས་ཟིན།", + "Function deleted successfully": "ལས་འགན་ལེགས་པར་བསུབས་ཟིན།", + "Function Description": "ལས་འགན་གྱི་འགྲེལ་བཤད།", + "Function ID": "ལས་འགན་གྱི་ ID", + "Function is now globally disabled": "ལས་འགན་དེ་ད་ལྟ་འཛམ་གླིང་ཡོངས་ནས་ནུས་མེད་བཏང་ཡོད།", + "Function is now globally enabled": "ལས་འགན་དེ་ད་ལྟ་འཛམ་གླིང་ཡོངས་ནས་སྒུལ་བསྐྱོད་བྱས་ཡོད།", + "Function Name": "ལས་འགན་གྱི་མིང་།", + "Function updated successfully": "ལས་འགན་ལེགས་པར་གསར་སྒྱུར་བྱས་ཟིན།", + "Functions": "ལས་འགན།", + "Functions allow arbitrary code execution": "ལས་འགན་གྱིས་གང་འདོད་ཀྱི་ཀོཌ་ལག་བསྟར་ལ་གནང་བ་སྤྲོད།", + "Functions allow arbitrary code execution.": "ལས་འགན་གྱིས་གང་འདོད་ཀྱི་ཀོཌ་ལག་བསྟར་ལ་གནང་བ་སྤྲོད།", + "Functions imported successfully": "ལས་འགན་ལེགས་པར་ནང་འདྲེན་བྱས།", + "Gemini": "Gemini", + "Gemini API Config": "Gemini API Config", + "Gemini API Key is required.": "Gemini API ལྡེ་མིག་དགོས་ངེས།", + "General": "སྤྱིར་བཏང་།", + "Generate an image": "པར་ཞིག་བཟོ་བ།", + "Generate Image": "པར་བཟོ་བ།", + "Generate prompt pair": "འགུལ་སློང་ཆ་ཞིག་བཟོ་བ།", + "Generating search query": "འཚོལ་བཤེར་འདྲི་བ་བཟོ་བཞིན་པ།", + "Get started": "འགོ་འཛུགས།", + "Get started with {{WEBUI_NAME}}": "{{WEBUI_NAME}} དང་མཉམ་དུ་འགོ་འཛུགས་པ།", + "Global": "འཛམ་གླིང་ཡོངས་ཀྱི་", + "Good Response": "ལན་ཡག་པོ།", + "Google Drive": "Google Drive", + "Google PSE API Key": "Google PSE API ལྡེ་མིག", + "Google PSE Engine Id": "Google PSE Engine Id", + "Group created successfully": "ཚོགས་པ་ལེགས་པར་བཟོས་ཟིན།", + "Group deleted successfully": "ཚོགས་པ་ལེགས་པར་བསུབས་ཟིན།", + "Group Description": "ཚོགས་པའི་འགྲེལ་བཤད།", + "Group Name": "ཚོགས་པའི་མིང་།", + "Group updated successfully": "ཚོགས་པ་ལེགས་པར་གསར་སྒྱུར་བྱས་ཟིན།", + "Groups": "ཚོགས་པ།", + "Haptic Feedback": "འདར་འཕྲུལ་གྱི་བསམ་འཆར།", + "has no conversations.": "ལ་ཁ་བརྡ་མེད།", + "Hello, {{name}}": "བཀྲ་ཤིས་བདེ་ལེགས། {{name}}", + "Help": "རོགས་རམ།", + "Help us create the best community leaderboard by sharing your feedback history!": "ཁྱེད་ཀྱི་བསམ་འཆར་ལོ་རྒྱུས་མཉམ་སྤྱོད་བྱས་ནས་ང་ཚོས་སྤྱི་ཚོགས་ཀྱི་འགྲན་རེས་རེའུ་མིག་ཡག་ཤོས་བཟོ་བར་རོགས་པ་བྱེད་རོགས།", + "Hex Color": "Hex ཚོན་མདོག", + "Hex Color - Leave empty for default color": "Hex ཚོན་མདོག - སྔོན་སྒྲིག་ཚོན་མདོག་གི་ཆེད་དུ་སྟོང་པ་བཞག་པ།", + "Hide": "སྦ་བ།", + "Hide Model": "དཔེ་དབྱིབས་སྦ་བ།", + "Home": "གཙོ་ངོས།", + "Host": "Host", + "How can I help you today?": "དེ་རིང་ངས་ཁྱེད་ལ་རོགས་པ་ཅི་ཞིག་བྱེད་ཐུབ་བམ།", + "How would you rate this response?": "ལན་འདི་ལ་ཁྱེད་ཀྱིས་སྐར་མ་ག་ཚོད་སྤྲོད་འདོད་དམ།", + "Hybrid Search": "Hybrid འཚོལ་བཤེར།", + "I acknowledge that I have read and I understand the implications of my action. I am aware of the risks associated with executing arbitrary code and I have verified the trustworthiness of the source.": "ངས་ངའི་བྱ་སྤྱོད་ཀྱི་ཤུགས་རྐྱེན་ཀློག་པ་དང་གོ་རྟོགས་སྤྲད་ཡོད་པ་ཁས་ལེན་བྱེད། ངས་གང་འདོད་ཀྱི་ཀོཌ་ལག་བསྟར་དང་འབྲེལ་བའི་ཉེན་ཁ་ཤེས་ཀྱི་ཡོད། དེ་མིན་ངས་འབྱུང་ཁུངས་ཀྱི་ཡིད་རྟོན་རུང་བའི་རང་བཞིན་ར་སྤྲོད་བྱས་ཡོད།", + "ID": "ID", + "Ignite curiosity": "ཤེས་འདོད་སློང་བ།", + "Image": "པར།", + "Image Compression": "པར་བསྡུ་སྐུམ།", + "Image Generation": "པར་བཟོ།", + "Image Generation (Experimental)": "པར་བཟོ། (ཚོད་ལྟའི་རང་བཞིན།)", + "Image Generation Engine": "པར་བཟོ་འཕྲུལ་འཁོར།", + "Image Max Compression Size": "པར་གྱི་བསྡུ་སྐུམ་ཆེ་ཤོས།", + "Image Prompt Generation": "པར་འགུལ་སློང་བཟོ་སྐྲུན།", + "Image Prompt Generation Prompt": "པར་འགུལ་སློང་བཟོ་སྐྲུན་གྱི་འགུལ་སློང་།", + "Image Settings": "པར་གྱི་སྒྲིག་འགོད།", + "Images": "པར།", + "Import Chats": "ཁ་བརྡ་ནང་འདྲེན།", + "Import Config from JSON File": "JSON ཡིག་ཆ་ནས་སྒྲིག་འགོད་ནང་འདྲེན།", + "Import Functions": "ལས་འགན་ནང་འདྲེན།", + "Import Models": "དཔེ་དབྱིབས་ནང་འདྲེན།", + "Import Presets": "སྔོན་སྒྲིག་ནང་འདྲེན།", + "Import Prompts": "འགུལ་སློང་ནང་འདྲེན།", + "Import Tools": "ལག་ཆ་ནང་འདྲེན།", + "Include": "ཚུད་པ།", + "Include `--api-auth` flag when running stable-diffusion-webui": "stable-diffusion-webui ལག་བསྟར་བྱེད་སྐབས་ `--api-auth` དར་ཆ་ཚུད་པ།", + "Include `--api` flag when running stable-diffusion-webui": "stable-diffusion-webui ལག་བསྟར་བྱེད་སྐབས་ `--api` དར་ཆ་ཚུད་པ།", + "Influences how quickly the algorithm responds to feedback from the generated text. A lower learning rate will result in slower adjustments, while a higher learning rate will make the algorithm more responsive.": "བཟོས་པའི་ཡིག་རྐྱང་ནས་ཐོན་པའི་བསམ་འཆར་ལ་ཨང་རྩིས་ཀྱིས་ཇི་ཙམ་མགྱོགས་པོར་ལན་འདེབས་བྱེད་པར་ཤུགས་རྐྱེན་ཐེབས་པ། སྦྱོང་ཚད་དམའ་བས་ལེགས་སྒྲིག་དལ་བ་ཡོང་ངེས། དེ་བཞིན་དུ་སྦྱོང་ཚད་མཐོ་བས་ཨང་རྩིས་དེ་ལན་འདེབས་ཆེ་བ་བཟོ་ངེས།", + "Info": "གནས་ཚུལ།", + "Inject the entire content as context for comprehensive processing, this is recommended for complex queries.": "ནང་དོན་ཆ་ཚང་དེ་ནང་དོན་དུ་བཅུག་ནས་སྒྲུབ་རིམ་ཆ་ཚང་བྱེད་པ། འདི་ནི་འདྲི་བ་རྙོག་འཛིང་ཅན་གྱི་ཆེད་དུ་འོས་སྦྱོར་བྱེད།", + "Input commands": "ནང་འཇུག་བཀའ་བརྡ།", + "Install from Github URL": "Github URL ནས་སྒྲིག་སྦྱོར་བྱེད་པ།", + "Instant Auto-Send After Voice Transcription": "སྐད་ཆ་ཡིག་འབེབས་བྱས་རྗེས་ལམ་སང་རང་འགུལ་གཏོང་བ།", + "Integration": "མཉམ་འདྲེས།", + "Interface": "ངོས་འཛིན།", + "Invalid file format.": "ཡིག་ཆའི་བཀོད་པ་ནུས་མེད།", + "Invalid JSON schema": "JSON schema ནུས་མེད།", + "Invalid Tag": "རྟགས་ནུས་མེད།", + "is typing...": "ཡིག་འབྲུ་རྒྱག་བཞིན་པ།...", + "January": "ཟླ་བ་དང་པོ།", + "Jina API Key": "Jina API ལྡེ་མིག", + "join our Discord for help.": "རོགས་རམ་ཆེད་དུ་ང་ཚོའི་ Discord ལ་མཉམ་ཞུགས་བྱེད་པ།", + "JSON": "JSON", + "JSON Preview": "JSON སྔོན་ལྟ།", + "July": "ཟླ་བ་བདུན་པ།", + "June": "ཟླ་བ་དྲུག་པ།", + "Jupyter Auth": "Jupyter Auth", + "Jupyter URL": "Jupyter URL", + "JWT Expiration": "JWT དུས་ཚོད་རྫོགས་པ།", + "JWT Token": "JWT Token", + "Kagi Search API Key": "Kagi Search API ལྡེ་མིག", + "Keep Alive": "གསོན་པོར་གནས་པ།", + "Key": "ལྡེ་མིག", + "Keyboard shortcuts": "མཐེབ་གནོན་མྱུར་ལམ།", + "Knowledge": "ཤེས་བྱ།", + "Knowledge Access": "ཤེས་བྱར་འཛུལ་སྤྱོད།", + "Knowledge created successfully.": "ཤེས་བྱ་ལེགས་པར་བཟོས་ཟིན།", + "Knowledge deleted successfully.": "ཤེས་བྱ་ལེགས་པར་བསུབས་ཟིན།", + "Knowledge Public Sharing": "ཤེས་བྱ་སྤྱི་སྤྱོད་མཉམ་སྤྱོད།", + "Knowledge reset successfully.": "ཤེས་བྱ་ལེགས་པར་སླར་སྒྲིག་བྱས་ཟིན།", + "Knowledge updated successfully": "ཤེས་བྱ་ལེགས་པར་གསར་སྒྱུར་བྱས་ཟིན།", + "Kokoro.js (Browser)": "Kokoro.js (བརྡ་འཚོལ་ཆས།)", + "Kokoro.js Dtype": "Kokoro.js Dtype", + "Label": "བྱང་རྟགས།", + "Landing Page Mode": "འབབ་ཤོག་མ་དཔེ།", + "Language": "སྐད་ཡིག", + "Last Active": "མཐའ་མའི་ལས་བྱེད།", + "Last Modified": "མཐའ་མའི་བཟོ་བཅོས།", + "Last reply": "ལན་མཐའ་མ།", + "LDAP": "LDAP", + "LDAP server updated": "LDAP སར་བར་གསར་སྒྱུར་བྱས།", + "Leaderboard": "འགྲན་རེས་རེའུ་མིག", + "Leave empty for unlimited": "ཚད་མེད་པའི་ཆེད་དུ་སྟོང་པ་བཞག་པ།", + "Leave empty to include all models from \"{{url}}/api/tags\" endpoint": "\"{{url}}/api/tags\" མཇུག་མཐུད་ནས་དཔེ་དབྱིབས་ཡོངས་རྫོགས་ཚུད་པར་སྟོང་པ་བཞག་པ།", + "Leave empty to include all models from \"{{url}}/models\" endpoint": "\"{{url}}/models\" མཇུག་མཐུད་ནས་དཔེ་དབྱིབས་ཡོངས་རྫོགས་ཚུད་པར་སྟོང་པ་བཞག་པ།", + "Leave empty to include all models or select specific models": "དཔེ་དབྱིབས་ཡོངས་རྫོགས་ཚུད་པར་སྟོང་པ་བཞག་པའམ། ཡང་ན་དཔེ་དབྱིབས་ངེས་ཅན་གདམ་ག་བྱེད་པ།", + "Leave empty to use the default prompt, or enter a custom prompt": "སྔོན་སྒྲིག་འགུལ་སློང་བེད་སྤྱོད་གཏོང་བར་སྟོང་པ་བཞག་པའམ། ཡང་ན་སྲོལ་བཟོས་འགུལ་སློང་འཇུག་པ།", + "Leave model field empty to use the default model.": "སྔོན་སྒྲིག་དཔེ་དབྱིབས་བེད་སྤྱོད་གཏོང་བར་དཔེ་དབྱིབས་ཀྱི་ཁོངས་སྟོང་པ་བཞག་པ།", + "License": "ཆོག་མཆན།", + "Light": "དཀར་པོ།", + "Listening...": "ཉན་བཞིན་པ།...", + "Llama.cpp": "Llama.cpp", + "LLMs can make mistakes. Verify important information.": "LLMs ལ་ནོར་འཁྲུལ་ཡོང་སྲིད། གནས་ཚུལ་གལ་ཆེན་ར་སྤྲོད་བྱེད་རོགས།", + "Loader": "ནང་འཇུག་བྱེད་པོ།", + "Loading Kokoro.js...": "Kokoro.js ནང་འཇུག་བྱེད་བཞིན་པ།...", + "Local": "ས་གནས།", + "Local Models": "ས་གནས་ཀྱི་དཔེ་དབྱིབས།", + "Location access not allowed": "གནས་ཡུལ་འཛུལ་སྤྱོད་ལ་གནང་བ་མ་སྤྲད།", + "Logit Bias": "Logit ཕྱོགས་ཞེན།", + "Lost": "བརླགས།", + "LTR": "LTR", + "Made by Open WebUI Community": "Open WebUI སྤྱི་ཚོགས་ཀྱིས་བཟོས།", + "Make sure to enclose them with": "དེ་དག་འདིས་བསྐོར་བ་ཁག་ཐེག་བྱེད་པ།", + "Make sure to export a workflow.json file as API format from ComfyUI.": "ComfyUI ནས་ workflow.json ཡིག་ཆ་ API བཀོད་པའི་ཐོག་ཕྱིར་གཏོང་བྱེད་པ་ཁག་ཐེག་བྱེད་པ།", + "Manage": "དོ་དམ།", + "Manage Direct Connections": "ཐད་ཀར་སྦྲེལ་མཐུད་དོ་དམ།", + "Manage Models": "དཔེ་དབྱིབས་དོ་དམ།", + "Manage Ollama": "Ollama དོ་དམ།", + "Manage Ollama API Connections": "Ollama API སྦྲེལ་མཐུད་དོ་དམ།", + "Manage OpenAI API Connections": "OpenAI API སྦྲེལ་མཐུད་དོ་དམ།", + "Manage Pipelines": "རྒྱུ་ལམ་དོ་དམ།", + "Manage Tool Servers": "ལག་ཆའི་སར་བར་དོ་དམ།", + "March": "ཟླ་བ་གསུམ་པ།", + "Max Tokens (num_predict)": "ཊོཀ་ཀེན་མང་ཤོས། (num_predict)", + "Max Upload Count": "སྤར་བའི་གྲངས་མང་ཤོས།", + "Max Upload Size": "སྤར་བའི་ཆེ་ཆུང་མང་ཤོས།", + "Maximum of 3 models can be downloaded simultaneously. Please try again later.": "དཔེ་དབྱིབས་ ༣ ལས་མང་བ་མཉམ་དུ་ཕབ་ལེན་བྱེད་མི་ཐུབ། རྗེས་སུ་ཡང་བསྐྱར་ཚོད་ལྟ་བྱེད་རོགས།", + "May": "ཟླ་བ་ལྔ་པ།", + "Memories accessible by LLMs will be shown here.": "LLMs ཀྱིས་འཛུལ་སྤྱོད་ཐུབ་པའི་དྲན་ཤེས་དག་འདིར་སྟོན་ངེས།", + "Memory": "དྲན་ཤེས།", + "Memory added successfully": "དྲན་ཤེས་ལེགས་པར་བསྣན་ཟིན།", + "Memory cleared successfully": "དྲན་ཤེས་ལེགས་པར་གཙང་སེལ་བྱས་ཟིན།", + "Memory deleted successfully": "དྲན་ཤེས་ལེགས་པར་བསུབས་ཟིན།", + "Memory updated successfully": "དྲན་ཤེས་ལེགས་པར་གསར་སྒྱུར་བྱས་ཟིན།", + "Merge Responses": "ལན་ཟླ་སྒྲིལ།", + "Message rating should be enabled to use this feature": "ཁྱད་ཆོས་འདི་བེད་སྤྱོད་གཏོང་བར་འཕྲིན་ལ་སྐར་མ་སྤྲོད་པ་སྒུལ་བསྐྱོད་བྱེད་དགོས།", + "Messages you send after creating your link won't be shared. Users with the URL will be able to view the shared chat.": "ཁྱེད་ཀྱི་སྦྲེལ་ཐག་བཟོས་རྗེས་ཁྱེད་ཀྱིས་བསྐུར་བའི་འཕྲིན་དག་མཉམ་སྤྱོད་བྱེད་མི་འགྱུར། URL ཡོད་པའི་བེད་སྤྱོད་མཁན་ཚོས་མཉམ་སྤྱོད་ཁ་བརྡ་ལྟ་ཐུབ་ངེས།", + "Min P": "P ཉུང་ཤོས།", + "Minimum Score": "སྐར་མ་ཉུང་ཤོས།", + "Mirostat": "Mirostat", + "Mirostat Eta": "Mirostat Eta", + "Mirostat Tau": "Mirostat Tau", + "Model": "དཔེ་དབྱིབས།", + "Model '{{modelName}}' has been successfully downloaded.": "དཔེ་དབྱིབས། '{{modelName}}' ལེགས་པར་ཕབ་ལེན་བྱས་ཟིན།", + "Model '{{modelTag}}' is already in queue for downloading.": "དཔེ་དབྱིབས། '{{modelTag}}' ཕབ་ལེན་གྱི་སྒུག་ཐོ་ནང་ཡོད་ཟིན།", + "Model {{modelId}} not found": "དཔེ་དབྱིབས། {{modelId}} མ་རྙེད།", + "Model {{modelName}} is not vision capable": "དཔེ་དབྱིབས། {{modelName}} ལ་མཐོང་ནུས་མེད།", + "Model {{name}} is now {{status}}": "དཔེ་དབྱིབས། {{name}} ད་ལྟ་ {{status}} ཡིན།", + "Model {{name}} is now hidden": "དཔེ་དབྱིབས། {{name}} ད་ལྟ་སྦས་ཡོད།", + "Model {{name}} is now visible": "དཔེ་དབྱིབས། {{name}} ད་ལྟ་མཐོང་ཐུབ།", + "Model accepts image inputs": "དཔེ་དབྱིབས་ཀྱིས་པར་གྱི་ནང་འཇུག་དང་ལེན་བྱེད།", + "Model created successfully!": "དཔེ་དབྱིབས་ལེགས་པར་བཟོས་ཟིན།", + "Model filesystem path detected. Model shortname is required for update, cannot continue.": "དཔེ་དབྱིབས་ཀྱི་ཡིག་ཆ་མ་ལག་ལམ་བུ་རྙེད་སོང་། གསར་སྒྱུར་གྱི་ཆེད་དུ་དཔེ་དབྱིབས་ཀྱི་མིང་ཐུང་ངུ་དགོས། མུ་མཐུད་མི་ཐུབ།", + "Model Filtering": "དཔེ་དབྱིབས་འཚག་མ།", + "Model ID": "དཔེ་དབྱིབས་ཀྱི་ ID", + "Model IDs": "དཔེ་དབྱིབས་ཀྱི་ IDs", + "Model Name": "དཔེ་དབྱིབས་ཀྱི་མིང་།", + "Model not selected": "དཔེ་དབྱིབས་གདམ་ག་མ་བྱས།", + "Model Params": "དཔེ་དབྱིབས་ཀྱི་ཞུགས་གྲངས།", + "Model Permissions": "དཔེ་དབྱིབས་ཀྱི་དབང་ཚད།", + "Model updated successfully": "དཔེ་དབྱིབས་ལེགས་པར་གསར་སྒྱུར་བྱས།", + "Modelfile Content": "Modelfile ནང་དོན།", + "Models": "དཔེ་དབྱིབས།", + "Models Access": "དཔེ་དབྱིབས་འཛུལ་སྤྱོད།", + "Models configuration saved successfully": "དཔེ་དབྱིབས་སྒྲིག་འགོད་ལེགས་པར་ཉར་ཚགས་བྱས།", + "Models Public Sharing": "དཔེ་དབྱིབས་སྤྱི་སྤྱོད་མཉམ་སྤྱོད།", + "Mojeek Search API Key": "Mojeek Search API ལྡེ་མིག", + "more": "མང་བ།", + "More": "མང་བ།", + "Name": "མིང་།", + "Name your knowledge base": "ཁྱེད་ཀྱི་ཤེས་བྱའི་རྟེན་གཞི་ལ་མིང་ཐོགས།", + "Native": "ས་སྐྱེས།", + "New Chat": "ཁ་བརྡ་གསར་པ།", + "New Folder": "ཡིག་སྣོད་གསར་པ།", + "New Password": "གསང་གྲངས་གསར་པ།", + "new-channel": "བགྲོ་གླེང་གསར་པ།", + "No content found": "ནང་དོན་མ་རྙེད།", + "No content to speak": "བཤད་རྒྱུའི་ནང་དོན་མེད།", + "No distance available": "ཐག་རིང་ཚད་མེད།", + "No feedbacks found": "བསམ་འཆར་མ་རྙེད།", + "No file selected": "ཡིག་ཆ་གདམ་ག་མ་བྱས།", + "No files found.": "ཡིག་ཆ་མ་རྙེད།", + "No groups with access, add a group to grant access": "འཛུལ་སྤྱོད་ཡོད་པའི་ཚོགས་པ་མེད། འཛུལ་སྤྱོད་སྤྲོད་པར་ཚོགས་པ་ཞིག་སྣོན་པ།", + "No HTML, CSS, or JavaScript content found.": "HTML, CSS, ཡང་ན་ JavaScript གི་ནང་དོན་མ་རྙེད།", + "No inference engine with management support found": "དོ་དམ་རྒྱབ་སྐྱོར་ཡོད་པའི་དཔོག་རྩིས་འཕྲུལ་འཁོར་མ་རྙེད།", + "No knowledge found": "ཤེས་བྱ་མ་རྙེད།", + "No memories to clear": "གཙང་སེལ་བྱེད་རྒྱུའི་དྲན་ཤེས་མེད།", + "No model IDs": "དཔེ་དབྱིབས་ཀྱི་ ID མེད།", + "No models found": "དཔེ་དབྱིབས་མ་རྙེད།", + "No models selected": "དཔེ་དབྱིབས་གདམ་ག་མ་བྱས།", + "No results found": "འབྲས་བུ་མ་རྙེད།", + "No search query generated": "འཚོལ་བཤེར་འདྲི་བ་བཟོས་མེད།", + "No source available": "འབྱུང་ཁུངས་མེད།", + "No users were found.": "བེད་སྤྱོད་མཁན་མ་རྙེད།", + "No valves to update": "གསར་སྒྱུར་བྱེད་རྒྱུའི་ Valve མེད།", + "None": "གཅིག་ཀྱང་མེད།", + "Not factually correct": "དོན་དངོས་དང་མི་མཐུན།", + "Not helpful": "ཕན་ཐོགས་མེད།", + "Note: If you set a minimum score, the search will only return documents with a score greater than or equal to the minimum score.": "དོ་སྣང་།: གལ་ཏེ་ཁྱེད་ཀྱིས་སྐར་མ་ཉུང་ཤོས་ཤིག་བཀོད་སྒྲིག་བྱས་ན། འཚོལ་བཤེར་གྱིས་སྐར་མ་ཉུང་ཤོས་དེ་དང་མཉམ་པའམ་དེ་ལས་ཆེ་བའི་ཡིག་ཆ་ཁོ་ན་ཕྱིར་སློག་བྱེད་ངེས།", + "Notes": "མཆན་བུ།", + "Notification Sound": "བརྡ་ཁྱབ་ཀྱི་སྒྲ།", + "Notification Webhook": "བརྡ་ཁྱབ་ཀྱི་ Webhook", + "Notifications": "བརྡ་ཁྱབ།", + "November": "ཟླ་བ་བཅུ་གཅིག་པ།", + "num_gpu (Ollama)": "num_gpu (Ollama)", + "num_thread (Ollama)": "num_thread (Ollama)", + "OAuth ID": "OAuth ID", + "October": "ཟླ་བ་བཅུ་པ།", + "Off": "ཁ་རྒྱག་པ།", + "Okay, Let's Go!": "འགྲིག་སོང་། འགྲོ།", + "OLED Dark": "OLED ནག་པོ།", + "Ollama": "Ollama", + "Ollama API": "Ollama API", + "Ollama API settings updated": "Ollama API སྒྲིག་འགོད་གསར་སྒྱུར་བྱས།", + "Ollama Version": "Ollama པར་གཞི།", + "On": "ཁ་ཕྱེ་བ།", + "OneDrive": "OneDrive", + "Only alphanumeric characters and hyphens are allowed": "ཨང་ཀི་དང་དབྱིན་ཡིག་གི་ཡིག་འབྲུ་དང་སྦྲེལ་རྟགས་ཁོ་ན་ཆོག་པ།", + "Only alphanumeric characters and hyphens are allowed in the command string.": "བཀའ་བརྡའི་ཡིག་ཕྲེང་ནང་ཨང་ཀི་དང་དབྱིན་ཡིག་གི་ཡིག་འབྲུ་དང་སྦྲེལ་རྟགས་ཁོ་ན་ཆོག་པ།", + "Only collections can be edited, create a new knowledge base to edit/add documents.": "བསྡུ་གསོག་ཁོ་ན་ཞུ་དག་བྱེད་ཐུབ། ཡིག་ཆ་ཞུ་དག་/སྣོན་པར་ཤེས་བྱའི་རྟེན་གཞི་གསར་པ་ཞིག་བཟོ་བ།", + "Only select users and groups with permission can access": "དབང་ཚད་ཡོད་པའི་བེད་སྤྱོད་མཁན་དང་ཚོགས་པ་གདམ་ག་བྱས་པ་ཁོ་ན་འཛུལ་སྤྱོད་ཐུབ།", + "Oops! Looks like the URL is invalid. Please double-check and try again.": "ཨོའོ། URL དེ་ནུས་མེད་ཡིན་པ་འདྲ། ཡང་བསྐྱར་ཞིབ་དཔྱད་བྱས་ནས་ཚོད་ལྟ་བྱེད་རོགས།", + "Oops! There are files still uploading. Please wait for the upload to complete.": "ཨོའོ། ད་དུང་སྤར་བཞིན་པའི་ཡིག་ཆ་ཡོད། སྤར་ཚར་བར་སྒུག་རོགས།", + "Oops! There was an error in the previous response.": "ཨོའོ། ལན་སྔ་མར་ནོར་འཁྲུལ་ཞིག་བྱུང་སོང་།", + "Oops! You're using an unsupported method (frontend only). Please serve the WebUI from the backend.": "ཨོའོ། ཁྱེད་ཀྱིས་རྒྱབ་སྐྱོར་མེད་པའི་ཐབས་ལམ་ཞིག་ (མདུན་ངོས་ཁོ་ན།) བེད་སྤྱོད་གཏོང་བཞིན་འདུག རྒྱབ་སྣེ་ནས་ WebUI མཁོ་སྤྲོད་བྱེད་རོགས།", + "Open file": "ཡིག་ཆ་ཁ་ཕྱེ་བ།", + "Open in full screen": "ཡོངས་གནས་ངོས་སུ་ཁ་ཕྱེ་བ།", + "Open new chat": "ཁ་བརྡ་གསར་པ་ཁ་ཕྱེ་བ།", + "Open WebUI uses faster-whisper internally.": "Open WebUI ཡིས་ནང་ཁུལ་དུ་ faster-whisper བེད་སྤྱོད་བྱེད།", + "Open WebUI uses SpeechT5 and CMU Arctic speaker embeddings.": "Open WebUI ཡིས་ SpeechT5 དང་ CMU Arctic གཏམ་བཤད་པའི་ཚུད་འཇུག་བེད་སྤྱོད་བྱེད།", + "Open WebUI version (v{{OPEN_WEBUI_VERSION}}) is lower than required version (v{{REQUIRED_VERSION}})": "Open WebUI པར་གཞི། (v{{OPEN_WEBUI_VERSION}}) དེ་དགོས་ངེས་ཀྱི་པར་གཞི་ (v{{REQUIRED_VERSION}}) ལས་དམའ་བ།", + "OpenAI": "OpenAI", + "OpenAI API": "OpenAI API", + "OpenAI API Config": "OpenAI API Config", + "OpenAI API Key is required.": "OpenAI API ལྡེ་མིག་དགོས་ངེས།", + "OpenAI API settings updated": "OpenAI API སྒྲིག་འགོད་གསར་སྒྱུར་བྱས།", + "OpenAI URL/Key required.": "OpenAI URL/ལྡེ་མིག་དགོས་ངེས།", + "or": "ཡང་ན།", + "Organize your users": "ཁྱེད་ཀྱི་བེད་སྤྱོད་མཁན་སྒྲིག་འཛུགས།", + "Other": "གཞན།", + "OUTPUT": "ཐོན་འབྲས།", + "Output format": "ཐོན་འབྲས་ཀྱི་བཀོད་པ།", + "Overview": "སྤྱི་མཐོང་།", + "page": "ཤོག་ངོས།", + "Password": "གསང་གྲངས།", + "Paste Large Text as File": "ཡིག་རྐྱང་ཆེན་པོ་ཡིག་ཆ་ལྟར་སྦྱོར་བ།", + "PDF document (.pdf)": "PDF ཡིག་ཆ། (.pdf)", + "PDF Extract Images (OCR)": "PDF པར་འདོན་སྤེལ། (OCR)", + "pending": "སྒུག་བཞིན་པ།", + "Permission denied when accessing media devices": "བརྒྱུད་ལམ་སྒྲིག་ཆས་འཛུལ་སྤྱོད་སྐབས་དབང་ཚད་ཁས་མ་བླངས།", + "Permission denied when accessing microphone": "སྐད་སྒྲ་འཛིན་ཆས་འཛུལ་སྤྱོད་སྐབས་དབང་ཚད་ཁས་མ་བླངས།", + "Permission denied when accessing microphone: {{error}}": "སྐད་སྒྲ་འཛིན་ཆས་འཛུལ་སྤྱོད་སྐབས་དབང་ཚད་ཁས་མ་བླངས།: {{error}}", + "Permissions": "དབང་ཚད།", + "Perplexity API Key": "Perplexity API ལྡེ་མིག", + "Personalization": "སྒེར་སྤྱོད་ཅན།", + "Pin": "གདབ་པ།", + "Pinned": "གདབ་ཟིན།", + "Pioneer insights": "སྔོན་དཔག་རིག་ནུས།", + "Pipeline deleted successfully": "རྒྱུ་ལམ་ལེགས་པར་བསུབས་ཟིན།", + "Pipeline downloaded successfully": "རྒྱུ་ལམ་ལེགས་པར་ཕབ་ལེན་བྱས་ཟིན།", + "Pipelines": "རྒྱུ་ལམ།", + "Pipelines Not Detected": "རྒྱུ་ལམ་མ་རྙེད།", + "Pipelines Valves": "རྒྱུ་ལམ་གྱི་ Valve", + "Plain text (.txt)": "ཡིག་རྐྱང་རྐྱང་པ། (.txt)", + "Playground": "རྩེད་ཐང་།", + "Please carefully review the following warnings:": "གཤམ་གསལ་ཉེན་བརྡ་དག་ལ་ཞིབ་ཚགས་ངང་བལྟ་ཞིབ་བྱེད་རོགས།:", + "Please do not close the settings page while loading the model.": "དཔེ་དབྱིབས་ནང་འཇུག་བྱེད་སྐབས་སྒྲིག་འགོད་ཤོག་ངོས་ཁ་མ་རྒྱག་རོགས།", + "Please enter a prompt": "འགུལ་སློང་ཞིག་འཇུག་རོགས།", + "Please fill in all fields.": "ཁོངས་ཡོངས་རྫོགས་ཁ་སྐོང་རོགས།", + "Please select a model first.": "ཐོག་མར་དཔེ་དབྱིབས་ཤིག་གདམ་ག་བྱེད་རོགས།", + "Please select a model.": "དཔེ་དབྱིབས་ཤིག་གདམ་ག་བྱེད་རོགས།", + "Please select a reason": "རྒྱུ་མཚན་ཞིག་གདམ་ག་བྱེད་རོགས།", + "Port": "Port", + "Positive attitude": "ལྟ་སྟངས་དགེ་མཚན།", + "Prefix ID": "སྔོན་སྦྱོར་ ID", + "Prefix ID is used to avoid conflicts with other connections by adding a prefix to the model IDs - leave empty to disable": "སྔོན་སྦྱོར་ ID ནི་དཔེ་དབྱིབས་ཀྱི་ IDs ལ་སྔོན་སྦྱོར་ཞིག་སྣོན་ནས་སྦྲེལ་མཐུད་གཞན་དང་གདོང་ཐུག་ལས་གཡོལ་བར་བེད་སྤྱོད་བྱེད། - ནུས་མེད་བཏང་བར་སྟོང་པ་བཞག་པ།", + "Presence Penalty": "ད་ཡོད་ཀྱི་ཆད་པ།", + "Previous 30 days": "ཉིན་ ༣༠ སྔོན་མ།", + "Previous 7 days": "ཉིན་ ༧ སྔོན་མ།", + "Private": "སྒེར།", + "Profile Image": "སྤྱི་ཐག་པར།", + "Prompt": "འགུལ་སློང་།", + "Prompt (e.g. Tell me a fun fact about the Roman Empire)": "འགུལ་སློང་ (དཔེར་ན། རོམ་མའི་གོང་མའི་རྒྱལ་ཁབ་སྐོར་གྱི་དགོད་བྲོ་བའི་དོན་དངོས་ཤིག་ང་ལ་ཤོད་པ།)", + "Prompt Autocompletion": "འགུལ་སློང་རང་འཚང་།", + "Prompt Content": "འགུལ་སློང་ནང་དོན།", + "Prompt created successfully": "འགུལ་སློང་ལེགས་པར་བཟོས་ཟིན།", + "Prompt suggestions": "འགུལ་སློང་གྲོས་གཞི།", + "Prompt updated successfully": "འགུལ་སློང་ལེགས་པར་གསར་སྒྱུར་བྱས།", + "Prompts": "འགུལ་སློང་།", + "Prompts Access": "འགུལ་སློང་འཛུལ་སྤྱོད།", + "Prompts Public Sharing": "འགུལ་སློང་སྤྱི་སྤྱོད་མཉམ་སྤྱོད།", + "Public": "སྤྱི་སྤྱོད།", + "Pull \"{{searchValue}}\" from Ollama.com": "Ollama.com ནས་ \"{{searchValue}}\" འཐེན་པ།", + "Pull a model from Ollama.com": "Ollama.com ནས་དཔེ་དབྱིབས་ཤིག་འཐེན་པ།", + "Query Generation Prompt": "འདྲི་བ་བཟོ་སྐྲུན་གྱི་འགུལ་སློང་།", + "RAG Template": "RAG མ་དཔེ།", + "Rating": "སྐར་མ།", + "Re-rank models by topic similarity": "བརྗོད་གཞི་འདྲ་མཚུངས་ལྟར་དཔེ་དབྱིབས་བསྐྱར་སྒྲིག་བྱེད་པ།", + "Read": "ཀློག་པ།", + "Read Aloud": "སྐད་གསལ་པོས་ཀློག་པ།", + "Reasoning Effort": "རྒྱུ་མཚན་འདྲེན་པའི་འབད་བརྩོན།", + "Record voice": "སྐད་སྒྲ་ཕབ་པ།", + "Redirecting you to Open WebUI Community": "ཁྱེད་ Open WebUI སྤྱི་ཚོགས་ལ་ཁ་ཕྱོགས་སྒྱུར་བཞིན་པ།", + "Reduces the probability of generating nonsense. A higher value (e.g. 100) will give more diverse answers, while a lower value (e.g. 10) will be more conservative.": "དོན་མེད་བཟོ་བའི་ཆགས་ཚུལ་ཉུང་དུ་གཏོང་བ། རིན་ཐང་མཐོ་བ་ (དཔེར་ན། ༡༠༠) ཡིས་ལན་སྣ་ཚོགས་ཆེ་བ་སྤྲོད་ངེས། དེ་བཞིན་དུ་རིན་ཐང་དམའ་བ་ (དཔེར་ན། ༡༠) ཡིས་སྲུང་འཛིན་ཆེ་བ་ཡོང་ངེས།", + "Refer to yourself as \"User\" (e.g., \"User is learning Spanish\")": "ཁྱེད་རང་ལ་ \"བེད་སྤྱོད་མཁན་\" ཞེས་འབོད་པ། (དཔེར་ན། \"བེད་སྤྱོད་མཁན་གྱིས་སི་པན་གྱི་སྐད་ཡིག་སྦྱོང་བཞིན་པ།\")", + "References from": "ནས་ལུང་འདྲེན།", + "Refused when it shouldn't have": "མི་དགོས་དུས་ཁས་མ་བླངས།", + "Regenerate": "བསྐྱར་བཟོ།", + "Release Notes": "འགྲེམས་སྤེལ་མཆན་བུ།", + "Relevance": "འབྲེལ་ཡོད་རང་བཞིན།", + "Remove": "འདོར་བ།", + "Remove Model": "དཔེ་དབྱིབས་འདོར་བ།", + "Rename": "མིང་བསྐྱར་འདོགས།", + "Reorder Models": "དཔེ་དབྱིབས་བསྐྱར་སྒྲིག", + "Repeat Last N": "N མཐའ་མ་བསྐྱར་ཟློས།", + "Repeat Penalty (Ollama)": "བསྐྱར་ཟློས་ཀྱི་ཆད་པ། (Ollama)", + "Reply in Thread": "བརྗོད་གཞིའི་ནང་ལན་འདེབས།", + "Request Mode": "རེ་ཞུའི་མ་དཔེ།", + "Reranking Model": "བསྐྱར་སྒྲིག་དཔེ་དབྱིབས།", + "Reranking model disabled": "བསྐྱར་སྒྲིག་དཔེ་དབྱིབས་ནུས་མེད་བཏང་།", + "Reranking model set to \"{{reranking_model}}\"": "བསྐྱར་སྒྲིག་དཔེ་དབྱིབས་ \"{{reranking_model}}\" ལ་བཀོད་སྒྲིག་བྱས།", + "Reset": "སླར་སྒྲིག", + "Reset All Models": "དཔེ་དབྱིབས་ཡོངས་རྫོགས་སླར་སྒྲིག", + "Reset Upload Directory": "སྤར་བའི་ཐོ་འཚོལ་སླར་སྒྲིག", + "Reset Vector Storage/Knowledge": "ཚད་བརྡའི་གསོག་ཆས།/ཤེས་བྱ་སླར་སྒྲིག", + "Reset view": "མཐོང་སྣང་སླར་སྒྲིག", + "Response notifications cannot be activated as the website permissions have been denied. Please visit your browser settings to grant the necessary access.": "དྲ་ཚིགས་ཀྱི་དབང་ཚད་ཁས་མ་བླངས་པས་ལན་གྱི་བརྡ་ཁྱབ་སྒུལ་བསྐྱོད་བྱེད་མི་ཐུབ། དགོས་ངེས་ཀྱི་འཛུལ་སྤྱོད་སྤྲོད་པར་ཁྱེད་ཀྱི་བརྡ་འཚོལ་ཆས་ཀྱི་སྒྲིག་འགོད་ལ་ལྟ་རོགས།", + "Response splitting": "ལན་བགོ་བ།", + "Result": "འབྲས་བུ།", + "Retrieval": "ལེན་ཚུར་སྒྲུབ།", + "Retrieval Query Generation": "ལེན་ཚུར་སྒྲུབ་འདྲི་བ་བཟོ་སྐྲུན།", + "Rich Text Input for Chat": "ཁ་བརྡའི་ཆེད་དུ་ཡིག་རྐྱང་ཕུན་སུམ་ཚོགས་པའི་ནང་འཇུག", + "RK": "RK", + "Role": "གནས་ཚད།", + "Rosé Pine": "Rosé Pine", + "Rosé Pine Dawn": "Rosé Pine Dawn", + "RTL": "RTL", + "Run": "ལག་བསྟར།", + "Running": "ལག་བསྟར་བྱེད་བཞིན་པ།", + "Save": "ཉར་ཚགས།", + "Save & Create": "ཉར་ཚགས་ & གསར་བཟོ།", + "Save & Update": "ཉར་ཚགས་ & གསར་སྒྱུར།", + "Save As Copy": "འདྲ་བཤུས་ཐོག་ཉར་ཚགས།", + "Save Tag": "རྟགས་ཉར་ཚགས།", + "Saved": "ཉར་ཚགས་བྱས།", + "Saving chat logs directly to your browser's storage is no longer supported. Please take a moment to download and delete your chat logs by clicking the button below. Don't worry, you can easily re-import your chat logs to the backend through": "ཁ་བརྡའི་ཟིན་ཐོ་ཐད་ཀར་ཁྱེད་ཀྱི་བརྡ་འཚོལ་ཆས་ཀྱི་གསོག་ཆས་སུ་ཉར་ཚགས་བྱེད་པར་ད་ནས་བཟུང་རྒྱབ་སྐྱོར་མེད། གཤམ་གྱི་མཐེབ་གནོན་མནན་ནས་ཁྱེད་ཀྱི་ཁ་བརྡའི་ཟིན་ཐོ་ཕབ་ལེན་དང་བསུབ་པར་དུས་ཚོད་ཅུང་ཟད་བླང་རོགས། སེམས་ཁྲལ་མེད། ཁྱེད་ཀྱིས་སྟབས་བདེ་པོར་ཁྱེད་ཀྱི་ཁ་བརྡའི་ཟིན་ཐོ་རྒྱབ་སྣེ་ལ་བསྐྱར་དུ་ནང་འདྲེན་བྱེད་ཐུབ།", + "Scroll to bottom when switching between branches": "ཡན་ལག་བརྗེ་སྐབས་མཐིལ་དུ་འགྲིལ་བ།", + "Search": "འཚོལ་བཤེར།", + "Search a model": "དཔེ་དབྱིབས་ཤིག་འཚོལ་བ།", + "Search Base": "འཚོལ་བཤེར་གཞི་རྩ།", + "Search Chats": "ཁ་བརྡ་འཚོལ་བཤེར།", + "Search Collection": "བསྡུ་གསོག་འཚོལ་བཤེར།", + "Search Filters": "འཚོལ་བཤེར་འཚག་མ།", + "search for tags": "རྟགས་འཚོལ་བ།", + "Search Functions": "ལས་འགན་འཚོལ་བཤེར།", + "Search Knowledge": "ཤེས་བྱ་འཚོལ་བཤེར།", + "Search Models": "དཔེ་དབྱིབས་འཚོལ་བཤེར།", + "Search options": "འཚོལ་བཤེར་འདེམས་ཀ", + "Search Prompts": "འགུལ་སློང་འཚོལ་བཤེར།", + "Search Result Count": "འཚོལ་བཤེར་འབྲས་བུའི་གྲངས།", + "Search the internet": "དྲ་རྒྱ་འཚོལ་བཤེར།", + "Search Tools": "ལག་ཆ་འཚོལ་བཤེར།", + "SearchApi API Key": "SearchApi API ལྡེ་མིག", + "SearchApi Engine": "SearchApi Engine", + "Searched {{count}} sites": "དྲ་ཚིགས་ {{count}} འཚོལ་བཤེར་བྱས།", + "Searching \"{{searchQuery}}\"": "\"{{searchQuery}}\" འཚོལ་བཞིན་པ།", + "Searching Knowledge for \"{{searchQuery}}\"": "\"{{searchQuery}}\" ཆེད་དུ་ཤེས་བྱ་འཚོལ་བཞིན་པ།", + "Searxng Query URL": "Searxng Query URL", + "See readme.md for instructions": "ལམ་སྟོན་ཆེད་དུ་ readme.md ལ་ལྟ་བ།", + "See what's new": "གསར་པ་ཅི་ཡོད་ལྟ་བ།", + "Seed": "Seed", + "Select a base model": "གཞི་རྩའི་དཔེ་དབྱིབས་ཤིག་གདམ་པ།", + "Select a engine": "འཕྲུལ་འཁོར་ཞིག་གདམ་པ།", + "Select a function": "ལས་འགན་ཞིག་གདམ་པ།", + "Select a group": "ཚོགས་པ་ཞིག་གདམ་པ།", + "Select a model": "དཔེ་དབྱིབས་ཤིག་གདམ་པ།", + "Select a pipeline": "རྒྱུ་ལམ་ཞིག་གདམ་པ།", + "Select a pipeline url": "རྒྱུ་ལམ་གྱི་ url ཞིག་གདམ་པ།", + "Select a tool": "ལག་ཆ་ཞིག་གདམ་པ།", + "Select an auth method": "auth ཐབས་ལམ་ཞིག་གདམ་པ།", + "Select an Ollama instance": "Ollama དཔེ་མཚོན་ཞིག་གདམ་པ།", + "Select Engine": "འཕྲུལ་འཁོར་གདམ་པ།", + "Select Knowledge": "ཤེས་བྱ་གདམ་པ།", + "Select only one model to call": "འབོད་པར་དཔེ་དབྱིབས་གཅིག་ཁོ་ན་གདམ་པ།", + "Selected model(s) do not support image inputs": "གདམ་ཟིན་པའི་དཔེ་དབྱིབས་(ཚོ)ས་པར་གྱི་ནང་འཇུག་ལ་རྒྱབ་སྐྱོར་མི་བྱེད།", + "Semantic distance to query": "འདྲི་བའི་དོན་གྱི་ཐག་རིང་ཚད།", + "Send": "གཏོང་བ།", + "Send a Message": "འཕྲིན་ཞིག་གཏོང་བ།", + "Send message": "འཕྲིན་གཏོང་བ།", + "Sends `stream_options: { include_usage: true }` in the request.\nSupported providers will return token usage information in the response when set.": "རེ་ཞུའི་ནང་ `stream_options: { include_usage: true }` གཏོང་བ།\nབཀོད་སྒྲིག་བྱས་ཚེ། རྒྱབ་སྐྱོར་ཡོད་པའི་མཁོ་སྤྲོད་པས་ལན་ནང་ཊོཀ་ཀེན་བེད་སྤྱོད་ཀྱི་གནས་ཚུལ་ཕྱིར་སློག་བྱེད་ངེས།", + "September": "ཟླ་བ་དགུ་པ།", + "SerpApi API Key": "SerpApi API ལྡེ་མིག", + "SerpApi Engine": "SerpApi Engine", + "Serper API Key": "Serper API ལྡེ་མིག", + "Serply API Key": "Serply API ལྡེ་མིག", + "Serpstack API Key": "Serpstack API ལྡེ་མིག", + "Server connection verified": "སར་བར་སྦྲེལ་མཐུད་ར་སྤྲོད་བྱས།", + "Set as default": "སྔོན་སྒྲིག་ཏུ་འཇོག་པ།", + "Set CFG Scale": "CFG ཆེ་ཆུང་འཇོག་པ།", + "Set Default Model": "སྔོན་སྒྲིག་དཔེ་དབྱིབས་འཇོག་པ།", + "Set embedding model": "ཚུད་འཇུག་དཔེ་དབྱིབས་འཇོག་པ།", + "Set embedding model (e.g. {{model}})": "ཚུད་འཇུག་དཔེ་དབྱིབས་འཇོག་པ། (དཔེར་ན། {{model}})", + "Set Image Size": "པར་གྱི་ཆེ་ཆུང་འཇོག་པ།", + "Set reranking model (e.g. {{model}})": "བསྐྱར་སྒྲིག་དཔེ་དབྱིབས་འཇོག་པ། (དཔེར་ན། {{model}})", + "Set Sampler": "Sampler འཇོག་པ།", + "Set Scheduler": "Scheduler འཇོག་པ།", + "Set Steps": "གོམ་གྲངས་འཇོག་པ།", + "Set Task Model": "ལས་ཀའི་དཔེ་དབྱིབས་འཇོག་པ།", + "Set the number of layers, which will be off-loaded to GPU. Increasing this value can significantly improve performance for models that are optimized for GPU acceleration but may also consume more power and GPU resources.": "GPU ལ་ཕྱིར་འགོད་བྱེད་རྒྱུའི་བརྩེགས་གྲངས་འཇོག་པ། རིན་ཐང་འདི་མང་དུ་བཏང་ན་ GPU མགྱོགས་སྣོན་གྱི་ཆེད་དུ་ལེགས་སྒྱུར་བྱས་པའི་དཔེ་དབྱིབས་ཀྱི་ལས་ཆོད་མངོན་གསལ་དོད་པོས་ལེགས་སུ་གཏོང་ཐུབ། འོན་ཀྱང་དེས་གློག་ཤུགས་དང་ GPU ཡི་ཐོན་ཁུངས་མང་བ་ཟ་སྲིད།", + "Set the number of worker threads used for computation. This option controls how many threads are used to process incoming requests concurrently. Increasing this value can improve performance under high concurrency workloads but may also consume more CPU resources.": "རྩིས་རྒྱག་ལ་བེད་སྤྱོད་གཏོང་བའི་ལས་ཀའི་སྐུད་གྲངས་འཇོག་པ། འདེམས་ཀ་འདིས་ནང་ཡོང་རེ་ཞུ་དུས་མཉམ་དུ་སྒྲུབ་པར་སྐུད་གྲངས་ག་ཚོད་བེད་སྤྱོད་གཏོང་དགོས་ཚོད་འཛིན་བྱེད། རིན་ཐང་འདི་མང་དུ་བཏང་ན་མཉམ་ལས་མཐོ་བའི་ལས་འགན་འོག་ལས་ཆོད་ལེགས་སུ་གཏོང་ཐུབ། འོན་ཀྱང་དེས་ CPU ཡི་ཐོན་ཁུངས་མང་བ་ཟ་སྲིད།", + "Set Voice": "སྐད་འཇོག་པ།", + "Set whisper model": "whisper དཔེ་དབྱིབས་འཇོག་པ།", + "Sets a flat bias against tokens that have appeared at least once. A higher value (e.g., 1.5) will penalize repetitions more strongly, while a lower value (e.g., 0.9) will be more lenient. At 0, it is disabled.": "ཉུང་མཐར་ཐེངས་གཅིག་བྱུང་བའི་ཊོཀ་ཀེན་ལ་ངོས་མཉམ་ཕྱོགས་ཞེན་ཞིག་འཇོག་པ། རིན་ཐང་མཐོ་བ་ (དཔེར་ན། 1.5) ཡིས་བསྐྱར་ཟློས་ལ་ཆད་པ་དྲག་པོ་གཏོང་ངེས། དེ་བཞིན་དུ་རིན་ཐང་དམའ་བ་ (དཔེར་ན། 0.9) ཡིས་གུ་ཡངས་ཆེ་བ་ཡོང་ངེས། 0 ལ་སླེབས་དུས། དེ་ནུས་མེད་བཏང་ཡོད།", + "Sets a scaling bias against tokens to penalize repetitions, based on how many times they have appeared. A higher value (e.g., 1.5) will penalize repetitions more strongly, while a lower value (e.g., 0.9) will be more lenient. At 0, it is disabled.": "ཊོཀ་ཀེན་དེ་ཐེངས་ག་ཚོད་བྱུང་ཡོད་པར་གཞིགས་ནས་བསྐྱར་ཟློས་ལ་ཆད་པ་གཏོང་བར་ཊོཀ་ཀེན་ལ་ཆེ་ཆུང་འཇོག་པའི་ཕྱོགས་ཞེན་ཞིག་འཇོག་པ། རིན་ཐང་མཐོ་བ་ (དཔེར་ན། 1.5) ཡིས་བསྐྱར་ཟློས་ལ་ཆད་པ་དྲག་པོ་གཏོང་ངེས། དེ་བཞིན་དུ་རིན་ཐང་དམའ་བ་ (དཔེར་ན། 0.9) ཡིས་གུ་ཡངས་ཆེ་བ་ཡོང་ངེས། 0 ལ་སླེབས་དུས། དེ་ནུས་མེད་བཏང་ཡོད།", + "Sets how far back for the model to look back to prevent repetition.": "བསྐྱར་ཟློས་སྔོན་འགོག་བྱེད་པའི་ཆེད་དུ་དཔེ་དབྱིབས་ཀྱིས་ཕྱིར་ག་ཚོད་ལྟ་དགོས་འཇོག་པ།", + "Sets the random number seed to use for generation. Setting this to a specific number will make the model generate the same text for the same prompt.": "བཟོ་སྐྲུན་ལ་བེད་སྤྱོད་གཏོང་རྒྱུའི་གང་བྱུང་གྲངས་ཀྱི་ Seed འཇོག་པ། འདི་གྲངས་ངེས་ཅན་ཞིག་ལ་བཀོད་སྒྲིག་བྱས་ན་དཔེ་དབྱིབས་ཀྱིས་འགུལ་སློང་གཅིག་པར་ཡིག་རྐྱང་གཅིག་པ་བཟོ་ངེས།", + "Sets the size of the context window used to generate the next token.": "ཊོཀ་ཀེན་རྗེས་མ་བཟོ་བར་བེད་སྤྱོད་གཏོང་བའི་ནང་དོན་སྒེའུ་ཁུང་གི་ཆེ་ཆུང་འཇོག་པ།", + "Sets the stop sequences to use. When this pattern is encountered, the LLM will stop generating text and return. Multiple stop patterns may be set by specifying multiple separate stop parameters in a modelfile.": "བེད་སྤྱོད་གཏོང་རྒྱུའི་མཚམས་འཇོག་རིམ་པ་འཇོག་པ། བཟོ་ལྟ་འདི་འཕྲད་དུས། LLM ཡིས་ཡིག་རྐྱང་བཟོ་བ་མཚམས་འཇོག་ནས་ཕྱིར་ལོག་བྱེད་ངེས། Modelfile ནང་མཚམས་འཇོག་ཞུགས་གྲངས་ལོགས་སུ་མང་པོ་གསལ་བཀོད་བྱས་ནས་མཚམས་འཇོག་བཟོ་ལྟ་མང་པོ་འཇོག་ཐུབ།", + "Settings": "སྒྲིག་འགོད།", + "Settings saved successfully!": "སྒྲིག་འགོད་ལེགས་པར་ཉར་ཚགས་བྱས།", + "Share": "མཉམ་སྤྱོད།", + "Share Chat": "ཁ་བརྡ་མཉམ་སྤྱོད།", + "Share to Open WebUI Community": "Open WebUI སྤྱི་ཚོགས་ལ་མཉམ་སྤྱོད།", + "Sharing Permissions": "མཉམ་སྤྱོད་དབང་ཚད།", + "Show": "སྟོན་པ།", + "Show \"What's New\" modal on login": "ནང་འཛུལ་སྐབས་ \"གསར་པ་ཅི་ཡོད\" modal སྟོན་པ།", + "Show Admin Details in Account Pending Overlay": "རྩིས་ཁྲ་སྒུག་བཞིན་པའི་གཏོགས་ངོས་སུ་དོ་དམ་པའི་ཞིབ་ཕྲ་སྟོན་པ།", + "Show Model": "དཔེ་དབྱིབས་སྟོན་པ།", + "Show shortcuts": "མྱུར་ལམ་སྟོན་པ།", + "Show your support!": "ཁྱེད་ཀྱི་རྒྱབ་སྐྱོར་སྟོན་པ།", + "Showcased creativity": "གསར་གཏོད་ནུས་པ་ངོམ་པ།", + "Sign in": "ནང་འཛུལ།", + "Sign in to {{WEBUI_NAME}}": "{{WEBUI_NAME}} ལ་ནང་འཛུལ།", + "Sign in to {{WEBUI_NAME}} with LDAP": "LDAP དང་མཉམ་དུ་ {{WEBUI_NAME}} ལ་ནང་འཛུལ།", + "Sign Out": "ཕྱིར་ཐོན།", + "Sign up": "ཐོ་འགོད།", + "Sign up to {{WEBUI_NAME}}": "{{WEBUI_NAME}} ལ་ཐོ་འགོད།", + "Signing in to {{WEBUI_NAME}}": "{{WEBUI_NAME}} ལ་ནང་འཛུལ་བྱེད་བཞིན་པ།", + "sk-1234": "sk-༡༢༣༤", + "Source": "འབྱུང་ཁུངས།", + "Speech Playback Speed": "གཏམ་བཤད་ཕྱིར་གཏོང་གི་མྱུར་ཚད།", + "Speech recognition error: {{error}}": "གཏམ་བཤད་ངོས་འཛིན་ནོར་འཁྲུལ།: {{error}}", + "Speech-to-Text Engine": "གཏམ་བཤད་ནས་ཡིག་རྐྱང་གི་འཕྲུལ་འཁོར།", + "Stop": "མཚམས་འཇོག", + "Stop Sequence": "མཚམས་འཇོག་རིམ་པ།", + "Stream Chat Response": "ཁ་བརྡའི་ལན་རྒྱུག་པ།", + "STT Model": "STT དཔེ་དབྱིབས།", + "STT Settings": "STT སྒྲིག་འགོད།", + "Subtitle (e.g. about the Roman Empire)": "ཁ་བྱང་ཕལ་པ། (དཔེར་ན། རོམ་མའི་གོང་མའི་རྒྱལ་ཁབ་སྐོར།)", + "Success": "ལེགས་འགྲུབ།", + "Successfully updated.": "ལེགས་པར་གསར་སྒྱུར་བྱས།", + "Suggested": "གྲོས་གཞི།", + "Support": "རྒྱབ་སྐྱོར།", + "Support this plugin:": "plugin འདི་ལ་རྒྱབ་སྐྱོར་བྱེད་པ།:", + "Sync directory": "ཐོ་འཚོལ་མཉམ་སྡེབ།", + "System": "མ་ལག", + "System Instructions": "མ་ལག་གི་ལམ་སྟོན།", + "System Prompt": "མ་ལག་གི་འགུལ་སློང་།", + "Tags": "རྟགས།", + "Tags Generation": "རྟགས་བཟོ་སྐྲུན།", + "Tags Generation Prompt": "རྟགས་བཟོ་སྐྲུན་གྱི་འགུལ་སློང་།", + "Tail free sampling is used to reduce the impact of less probable tokens from the output. A higher value (e.g., 2.0) will reduce the impact more, while a value of 1.0 disables this setting.": "མཇུག་མ་རང་དབང་མ་དཔེ་འདེམས་པ་ནི་ཐོན་འབྲས་ནས་ཆགས་ཚུལ་དམའ་བའི་ཊོཀ་ཀེན་གྱི་ཤུགས་རྐྱེན་ཉུང་དུ་གཏོང་བར་བེད་སྤྱོད་བྱེད། རིན་ཐང་མཐོ་བ་ (དཔེར་ན། 2.0) ཡིས་ཤུགས་རྐྱེན་དེ་སྔར་ལས་ཉུང་དུ་གཏོང་ངེས། དེ་བཞིན་དུ་རིན་ཐང་ 1.0 ཡིས་སྒྲིག་འགོད་འདི་ནུས་མེད་བཏང་ངེས།", + "Talk to model": "དཔེ་དབྱིབས་ལ་སྐད་ཆ་ཤོད།", + "Tap to interrupt": "བར་ཆད་བྱེད་པར་མནན་པ།", + "Tasks": "ལས་འགན།", + "Tavily API Key": "Tavily API ལྡེ་མིག", + "Tell us more:": "ང་ཚོ་ལ་མང་ཙམ་ཤོད།:", + "Temperature": "དྲོད་ཚད།", + "Template": "མ་དཔེ།", + "Temporary Chat": "གནས་སྐབས་ཁ་བརྡ།", + "Text Splitter": "ཡིག་རྐྱང་བགོ་བྱེད།", + "Text-to-Speech Engine": "ཡིག་རྐྱང་ནས་གཏམ་བཤད་ཀྱི་འཕྲུལ་འཁོར།", + "Tfs Z": "Tfs Z", + "Thanks for your feedback!": "ཁྱེད་ཀྱི་བསམ་འཆར་ལ་ཐུགས་རྗེ་ཆེ།", + "The Application Account DN you bind with for search": "ཁྱེད་ཀྱིས་འཚོལ་བཤེར་གྱི་ཆེད་དུ་སྦྲེལ་བའི་ Application Account DN", + "The base to search for users": "བེད་སྤྱོད་མཁན་འཚོལ་བའི་གཞི་རྩ།", + "The batch size determines how many text requests are processed together at once. A higher batch size can increase the performance and speed of the model, but it also requires more memory.": "ཚན་ཆུང་གི་ཆེ་ཆུང་གིས་ཡིག་རྐྱང་རེ་ཞུ་ག་ཚོད་མཉམ་དུ་ཐེངས་གཅིག་ལ་སྒྲུབ་དགོས་གཏན་འཁེལ་བྱེད། ཚན་ཆུང་ཆེ་བ་ཡིས་དཔེ་དབྱིབས་ཀྱི་ལས་ཆོད་དང་མྱུར་ཚད་མང་དུ་གཏོང་ཐུབ། འོན་ཀྱང་དེས་དྲན་ཤེས་མང་བ་དགོས།", + "The developers behind this plugin are passionate volunteers from the community. If you find this plugin helpful, please consider contributing to its development.": "plugin འདིའི་རྒྱབ་ཀྱི་གསར་སྤེལ་བ་དག་ནི་སྤྱི་ཚོགས་ནས་ཡིན་པའི་སེམས་ཤུགས་ཅན་གྱི་དང་བླངས་པ་ཡིན། གལ་ཏེ་ཁྱེད་ཀྱིས་ plugin འདི་ཕན་ཐོགས་ཡོད་པ་མཐོང་ན། དེའི་གསར་སྤེལ་ལ་ཞལ་འདེབས་གནང་བར་བསམ་ཞིབ་གནང་རོགས།", + "The evaluation leaderboard is based on the Elo rating system and is updated in real-time.": "གདེང་འཇོག་འགྲན་རེས་རེའུ་མིག་དེ་ Elo སྐར་མ་སྤྲོད་པའི་མ་ལག་ལ་གཞི་བཅོལ་ཡོད། དེ་མིན་དུས་ཐོག་ཏུ་གསར་སྒྱུར་བྱེད་ཀྱི་ཡོད།", + "The LDAP attribute that maps to the mail that users use to sign in.": "བེད་སྤྱོད་མཁན་ཚོས་ནང་འཛུལ་བྱེད་སྐབས་བེད་སྤྱོད་གཏོང་བའི་ཡིག་ཟམ་ལ་སྦྲེལ་བའི་ LDAP ཁྱད་ཆོས།", + "The LDAP attribute that maps to the username that users use to sign in.": "བེད་སྤྱོད་མཁན་ཚོས་ནང་འཛུལ་བྱེད་སྐབས་བེད་སྤྱོད་གཏོང་བའི་བེད་སྤྱོད་མིང་ལ་སྦྲེལ་བའི་ LDAP ཁྱད་ཆོས།", + "The leaderboard is currently in beta, and we may adjust the rating calculations as we refine the algorithm.": "འགྲན་རེས་རེའུ་མིག་དེ་ད་ལྟ་ Beta པར་གཞི་ཡིན། ང་ཚོས་ཨང་རྩིས་དེ་ཞིབ་ཚགས་སུ་གཏོང་སྐབས་སྐར་མའི་རྩིས་རྒྱག་ལེགས་སྒྲིག་བྱེད་སྲིད།", + "The maximum file size in MB. If the file size exceeds this limit, the file will not be uploaded.": "MB ནང་གི་ཡིག་ཆའི་ཆེ་ཆུང་མང་ཤོས། གལ་ཏེ་ཡིག་ཆའི་ཆེ་ཆུང་ཚད་བཀག་འདི་ལས་བརྒལ་ན། ཡིག་ཆ་དེ་སྤར་མི་འགྱུར།", + "The maximum number of files that can be used at once in chat. If the number of files exceeds this limit, the files will not be uploaded.": "ཁ་བརྡའི་ནང་ཐེངས་གཅིག་ལ་བེད་སྤྱོད་གཏོང་ཐུབ་པའི་ཡིག་ཆའི་གྲངས་མང་ཤོས། གལ་ཏེ་ཡིག་ཆའི་གྲངས་ཚད་བཀག་འདི་ལས་བརྒལ་ན། ཡིག་ཆ་དག་སྤར་མི་འགྱུར།", + "The score should be a value between 0.0 (0%) and 1.0 (100%).": "སྐར་མ་དེ་ 0.0 (0%) ནས་ 1.0 (100%) བར་གྱི་རིན་ཐང་ཞིག་ཡིན་དགོས།", + "The temperature of the model. Increasing the temperature will make the model answer more creatively.": "དཔེ་དབྱིབས་ཀྱི་དྲོད་ཚད། དྲོད་ཚད་མཐོ་རུ་བཏང་ན་དཔེ་དབྱིབས་ཀྱིས་ལན་གསར་གཏོད་ཆེ་བ་སྤྲོད་ངེས།", + "Theme": "བརྗོད་གཞི།", + "Thinking...": "བསམ་བཞིན་པ།...", + "This action cannot be undone. Do you wish to continue?": "བྱ་སྤྱོད་འདི་ཕྱིར་ལྡོག་བྱེད་མི་ཐུབ། ཁྱེད་མུ་མཐུད་འདོད་ཡོད་དམ།", + "This channel was created on {{createdAt}}. This is the very beginning of the {{channelName}} channel.": "བགྲོ་གླེང་འདི་ {{createdAt}} ལ་བཟོས་པ། འདི་ནི་ {{channelName}} བགྲོ་གླེང་གི་ཐོག་མ་རང་ཡིན།", + "This ensures that your valuable conversations are securely saved to your backend database. Thank you!": "འདིས་ཁྱེད་ཀྱི་རྩ་ཆེའི་ཁ་བརྡ་དག་བདེ་འཇགས་ངང་ཁྱེད་ཀྱི་རྒྱབ་སྣེ་གནས་ཚུལ་མཛོད་དུ་ཉར་ཚགས་བྱེད་པ་ཁག་ཐེག་བྱེད། ཐུགས་རྗེ་ཆེ།", + "This is an experimental feature, it may not function as expected and is subject to change at any time.": "འདི་ནི་ཚོད་ལྟའི་རང་བཞིན་གྱི་ཁྱད་ཆོས་ཤིག་ཡིན། དེ་རེ་སྒུག་ལྟར་ལས་ཀ་བྱེད་མི་སྲིད། དེ་མིན་དུས་ཚོད་གང་རུང་ལ་འགྱུར་བ་འགྲོ་སྲིད།", + "This option controls how many tokens are preserved when refreshing the context. For example, if set to 2, the last 2 tokens of the conversation context will be retained. Preserving context can help maintain the continuity of a conversation, but it may reduce the ability to respond to new topics.": "འདེམས་ཀ་འདིས་ནང་དོན་གསར་སྒྱུར་བྱེད་སྐབས་ཊོཀ་ཀེན་ག་ཚོད་ཉར་ཚགས་བྱེད་དགོས་ཚོད་འཛིན་བྱེད། དཔེར་ན། གལ་ཏེ་ ༢ ལ་བཀོད་སྒྲིག་བྱས་ན། ཁ་བརྡའི་ནང་དོན་གྱི་ཊོཀ་ཀེན་མཐའ་མ་ ༢ ཉར་ཚགས་བྱེད་ངེས། ནང་དོན་ཉར་ཚགས་བྱས་ན་ཁ་བརྡའི་རྒྱུན་མཐུད་རང་བཞིན་རྒྱུན་སྲུང་བྱེད་པར་རོགས་པ་བྱེད་ཐུབ། འོན་ཀྱང་དེས་བརྗོད་གཞི་གསར་པར་ལན་འདེབས་བྱེད་པའི་ནུས་པ་ཉུང་དུ་གཏོང་སྲིད།", + "This option sets the maximum number of tokens the model can generate in its response. Increasing this limit allows the model to provide longer answers, but it may also increase the likelihood of unhelpful or irrelevant content being generated.": "འདེམས་ཀ་འདིས་དཔེ་དབྱིབས་ཀྱིས་དེའི་ལན་ནང་བཟོ་ཐུབ་པའི་ཊོཀ་ཀེན་གྱི་གྲངས་མང་ཤོས་འཇོག་པ། ཚད་བཀག་འདི་མང་དུ་བཏང་ན་དཔེ་དབྱིབས་ཀྱིས་ལན་རིང་བ་སྤྲོད་པར་གནང་བ་སྤྲོད། འོན་ཀྱང་དེས་ཕན་ཐོགས་མེད་པའམ་འབྲེལ་མེད་ཀྱི་ནང་དོན་བཟོ་བའི་ཆགས་ཚུལ་མང་དུ་གཏོང་སྲིད།", + "This option will delete all existing files in the collection and replace them with newly uploaded files.": "འདེམས་ཀ་འདིས་བསྡུ་གསོག་ནང་གི་ཡོད་པའི་ཡིག་ཆ་ཡོངས་རྫོགས་བསུབ་ནས་དེ་དག་གསར་དུ་སྤར་བའི་ཡིག་ཆས་ཚབ་བྱེད་ངེས།", + "This response was generated by \"{{model}}\"": "ལན་འདི་ \"{{model}}\" ཡིས་བཟོས་པ།", + "This will delete": "འདིས་བསུབ་ངེས།", + "This will delete {{NAME}} and all its contents.": "འདིས་ {{NAME}} དང་ དེའི་ནང་དོན་ཡོངས་རྫོགས་ བསུབ་ངེས།", + "This will delete all models including custom models": "འདིས་སྲོལ་བཟོས་དཔེ་དབྱིབས་ཚུད་པའི་དཔེ་དབྱིབས་ཡོངས་རྫོགས་བསུབ་ངེས།", + "This will delete all models including custom models and cannot be undone.": "འདིས་སྲོལ་བཟོས་དཔེ་དབྱིབས་ཚུད་པའི་དཔེ་དབྱིབས་ཡོངས་རྫོགས་བསུབ་ངེས་པ་དང་ཕྱིར་ལྡོག་བྱེད་མི་ཐུབ།", + "This will reset the knowledge base and sync all files. Do you wish to continue?": "འདིས་ཤེས་བྱའི་རྟེན་གཞི་སླར་སྒྲིག་བྱས་ནས་ཡིག་ཆ་ཡོངས་རྫོགས་མཉམ་སྡེབ་བྱེད་ངེས། ཁྱེད་མུ་མཐུད་འདོད་ཡོད་དམ།", + "Thorough explanation": "འགྲེལ་བཤད་ཞིབ་ཚགས།", + "Thought for {{DURATION}}": "{{DURATION}} རིང་བསམས།", + "Thought for {{DURATION}} seconds": "སྐར་ཆ་ {{DURATION}} རིང་བསམས།", + "Tika": "Tika", + "Tika Server URL required.": "Tika Server URL དགོས་ངེས།", + "Tiktoken": "Tiktoken", + "Tip: Update multiple variable slots consecutively by pressing the tab key in the chat input after each replacement.": "བསམ་འཆར།: ཚབ་བྱེད་རེ་རེའི་རྗེས་སུ་ཁ་བརྡའི་ནང་འཇུག་ཏུ་ tab མཐེབ་གནོན་མནན་ནས་འགྱུར་ཚད་ཀྱི་གནས་མང་པོ་རྒྱུན་མཐུད་དུ་གསར་སྒྱུར་བྱེད་པ།", + "Title": "ཁ་བྱང་།", + "Title (e.g. Tell me a fun fact)": "ཁ་བྱང་ (དཔེར་ན། དགོད་བྲོ་བའི་དོན་དངོས་ཤིག་ང་ལ་ཤོད།)", + "Title Auto-Generation": "ཁ་བྱང་རང་འགུལ་བཟོ་སྐྲུན།", + "Title cannot be an empty string.": "ཁ་བྱང་ཡིག་ཕྲེང་སྟོང་པ་ཡིན་མི་ཆོག", + "Title Generation": "ཁ་བྱང་བཟོ་སྐྲུན།", + "Title Generation Prompt": "ཁ་བྱང་བཟོ་སྐྲུན་གྱི་འགུལ་སློང་།", + "TLS": "TLS", + "To access the available model names for downloading,": "ཕབ་ལེན་གྱི་ཆེད་དུ་ཡོད་པའི་དཔེ་དབྱིབས་ཀྱི་མིང་ལ་འཛུལ་སྤྱོད་བྱེད་པར།:", + "To access the GGUF models available for downloading,": "ཕབ་ལེན་གྱི་ཆེད་དུ་ཡོད་པའི་ GGUF དཔེ་དབྱིབས་ལ་འཛུལ་སྤྱོད་བྱེད་པར།:", + "To access the WebUI, please reach out to the administrator. Admins can manage user statuses from the Admin Panel.": "WebUI ལ་འཛུལ་སྤྱོད་བྱེད་པར། དོ་དམ་པ་དང་འབྲེལ་གཏུག་བྱེད་རོགས། དོ་དམ་པས་དོ་དམ་པའི་ལྟ་སྟེགས་ནས་བེད་སྤྱོད་མཁན་གྱི་གནས་སྟངས་དོ་དམ་བྱེད་ཐུབ།", + "To attach knowledge base here, add them to the \"Knowledge\" workspace first.": "ཤེས་བྱའི་རྟེན་གཞི་འདིར་འཇོག་པར། ཐོག་མར་དེ་དག་ \"ཤེས་བྱའི་\" ལས་ཡུལ་དུ་སྣོན་པ།", + "To learn more about available endpoints, visit our documentation.": "ཡོད་པའི་མཇུག་མཐུད་སྐོར་མང་ཙམ་ཤེས་པར། ང་ཚོའི་ཡིག་ཆ་ལ་ལྟ་བ།", + "To protect your privacy, only ratings, model IDs, tags, and metadata are shared from your feedback—your chat logs remain private and are not included.": "ཁྱེད་ཀྱི་སྒེར་དོན་སྲུང་སྐྱོབ་བྱེད་པར། ཁྱེད་ཀྱི་བསམ་འཆར་ནས་སྐར་མ། དཔེ་དབྱིབས་ཀྱི་ IDs། རྟགས། དང་ metadata ཁོ་ན་མཉམ་སྤྱོད་བྱེད།—ཁྱེད་ཀྱི་ཁ་བརྡའི་ཟིན་ཐོ་སྒེར་དོན་དུ་གནས་པ་དང་ཚུད་མེད།", + "To select actions here, add them to the \"Functions\" workspace first.": "བྱ་སྤྱོད་འདིར་གདམ་ག་བྱེད་པར། ཐོག་མར་དེ་དག་ \"ལས་འགན་གྱི་\" ལས་ཡུལ་དུ་སྣོན་པ།", + "To select filters here, add them to the \"Functions\" workspace first.": "འཚག་མ་འདིར་གདམ་ག་བྱེད་པར། ཐོག་མར་དེ་དག་ \"ལས་འགན་གྱི་\" ལས་ཡུལ་དུ་སྣོན་པ།", + "To select toolkits here, add them to the \"Tools\" workspace first.": "ལག་ཆའི་ཚོགས་སྡེ་འདིར་གདམ་ག་བྱེད་པར། ཐོག་མར་དེ་དག་ \"ལག་ཆའི་\" ལས་ཡུལ་དུ་སྣོན་པ།", + "Toast notifications for new updates": "གསར་སྒྱུར་གསར་པའི་ཆེད་དུ་ Toast བརྡ་ཁྱབ།", + "Today": "དེ་རིང་།", + "Toggle settings": "སྒྲིག་འགོད་བརྗེ་བ།", + "Toggle sidebar": "ཟུར་ངོས་བརྗེ་བ།", + "Token": "ཊོཀ་ཀེན།", + "Tokens To Keep On Context Refresh (num_keep)": "ནང་དོན་གསར་སྒྱུར་སྐབས་ཉར་ཚགས་བྱེད་རྒྱུའི་ཊོཀ་ཀེན། (num_keep)", + "Too verbose": "རིང་དྲགས།", + "Tool created successfully": "ལག་ཆ་ལེགས་པར་བཟོས་ཟིན།", + "Tool deleted successfully": "ལག་ཆ་ལེགས་པར་བསུབས་ཟིན།", + "Tool Description": "ལག་ཆའི་འགྲེལ་བཤད།", + "Tool ID": "ལག་ཆའི་ ID", + "Tool imported successfully": "ལག་ཆ་ལེགས་པར་ནང་འདྲེན་བྱས།", + "Tool Name": "ལག་ཆའི་མིང་།", + "Tool updated successfully": "ལག་ཆ་ལེགས་པར་གསར་སྒྱུར་བྱས།", + "Tools": "ལག་ཆ།", + "Tools Access": "ལག་ཆར་འཛུལ་སྤྱོད།", + "Tools are a function calling system with arbitrary code execution": "ལག་ཆ་ནི་གང་འདོད་ཀྱི་ཀོཌ་ལག་བསྟར་ཡོད་པའི་ལས་འགན་འབོད་པའི་མ་ལག་ཅིག་ཡིན།", + "Tools Function Calling Prompt": "ལག་ཆ་ལས་འགན་འབོད་པའི་འགུལ་སློང་།", + "Tools have a function calling system that allows arbitrary code execution": "ལག་ཆར་གང་འདོད་ཀྱི་ཀོཌ་ལག་བསྟར་ལ་གནང་བ་སྤྲོད་པའི་ལས་འགན་འབོད་པའི་མ་ལག་ཡོད།", + "Tools have a function calling system that allows arbitrary code execution.": "ལག་ཆར་གང་འདོད་ཀྱི་ཀོཌ་ལག་བསྟར་ལ་གནང་བ་སྤྲོད་པའི་ལས་འགན་འབོད་པའི་མ་ལག་ཡོད།", + "Tools Public Sharing": "ལག་ཆ་སྤྱི་སྤྱོད་མཉམ་སྤྱོད།", + "Top K": "Top K", + "Top K Reranker": "Top K Reranker", + "Top P": "Top P", + "Transformers": "Transformers", + "Trouble accessing Ollama?": "Ollama འཛུལ་སྤྱོད་སྐབས་དཀའ་ངལ་འཕྲད་དམ།", + "Trust Proxy Environment": "Proxy ཁོར་ཡུག་ལ་ཡིད་ཆེས།", + "TTS Model": "TTS དཔེ་དབྱིབས།", + "TTS Settings": "TTS སྒྲིག་འགོད།", + "TTS Voice": "TTS སྐད།", + "Type": "རིགས།", + "Type Hugging Face Resolve (Download) URL": "Hugging Face Resolve (ཕབ་ལེན།) URL མནན་པ།", + "Uh-oh! There was an issue with the response.": "ཨོའོ། ལན་ལ་དཀའ་ངལ་ཞིག་བྱུང་སོང་།", + "UI": "UI", + "Unarchive All": "ཡོངས་རྫོགས་ཕྱིར་འདོན།", + "Unarchive All Archived Chats": "ཡིག་མཛོད་དུ་བཞག་པའི་ཁ་བརྡ་ཡོངས་རྫོགས་ཕྱིར་འདོན།", + "Unarchive Chat": "ཁ་བརྡ་ཕྱིར་འདོན།", + "Unlock mysteries": "གསང་བ་གྲོལ་བ།", + "Unpin": "ཕྱིར་འདོན།", + "Unravel secrets": "གསང་བ་གྲོལ་བ།", + "Untagged": "རྟགས་མེད།", + "Update": "གསར་སྒྱུར།", + "Update and Copy Link": "གསར་སྒྱུར་དང་སྦྲེལ་ཐག་འདྲ་བཤུས།", + "Update for the latest features and improvements.": "ཁྱད་ཆོས་དང་ལེགས་བཅོས་གསར་ཤོས་ཀྱི་ཆེད་དུ་གསར་སྒྱུར་བྱེད་པ།", + "Update password": "གསང་གྲངས་གསར་སྒྱུར།", + "Updated": "གསར་སྒྱུར་བྱས།", + "Updated at": "གསར་སྒྱུར་བྱེད་དུས།", + "Updated At": "གསར་སྒྱུར་བྱེད་དུས།", + "Upgrade to a licensed plan for enhanced capabilities, including custom theming and branding, and dedicated support.": "ནུས་པ་ཤུགས་ཆེ་བ། སྲོལ་བཟོས་བརྗོད་གཞི་དང་ཚོང་རྟགས། དམིགས་བསལ་རྒྱབ་སྐྱོར་ཚུད་པའི་ཆོག་མཆན་ཡོད་པའི་འཆར་གཞི་ལ་རིམ་སྤོར་བྱེད་པ།", + "Upload": "སྤར་བ།", + "Upload a GGUF model": "GGUF དཔེ་དབྱིབས་ཤིག་སྤར་བ།", + "Upload directory": "སྤར་བའི་ཐོ་འཚོལ།", + "Upload files": "ཡིག་ཆ་སྤར་བ།", + "Upload Files": "ཡིག་ཆ་སྤར་བ།", + "Upload Pipeline": "རྒྱུ་ལམ་སྤར་བ།", + "Upload Progress": "སྤར་བའི་འཕེལ་རིམ།", + "URL": "URL", + "URL Mode": "URL མ་དཔེ།", + "Use '#' in the prompt input to load and include your knowledge.": "འགུལ་སློང་ནང་འཇུག་ཏུ་ '#' བེད་སྤྱོད་ནས་ཁྱེད་ཀྱི་ཤེས་བྱ་ནང་འཇུག་དང་ཚུད་པ།", + "Use Gravatar": "Gravatar བེད་སྤྱོད།", + "Use groups to group your users and assign permissions.": "ཁྱེད་ཀྱི་བེད་སྤྱོད་མཁན་ཚོགས་པ་བཟོ་བ་དང་དབང་ཚད་སྤྲོད་པར་ཚོགས་པ་བེད་སྤྱོད་གཏོང་བ།", + "Use Initials": "མིང་གི་ཡིག་འབྲུ་མགོ་མ་བེད་སྤྱོད།", + "use_mlock (Ollama)": "use_mlock (Ollama)", + "use_mmap (Ollama)": "use_mmap (Ollama)", + "user": "བེད་སྤྱོད་མཁན།", + "User": "བེད་སྤྱོད་མཁན།", + "User location successfully retrieved.": "བེད་སྤྱོད་མཁན་གནས་ཡུལ་ལེགས་པར་ལེན་ཚུར་སྒྲུབ་བྱས།", + "User Webhooks": "བེད་སྤྱོད་མཁན་གྱི་ Webhooks", + "Username": "བེད་སྤྱོད་མིང་།", + "Users": "བེད་སྤྱོད་མཁན།", + "Using the default arena model with all models. Click the plus button to add custom models.": "དཔེ་དབྱིབས་ཡོངས་རྫོགས་དང་མཉམ་དུ་སྔོན་སྒྲིག་ arena དཔེ་དབྱིབས་བེད་སྤྱོད་གཏོང་བཞིན་པ། སྲོལ་བཟོས་དཔེ་དབྱིབས་སྣོན་པར་བསྣན་རྟགས་མཐེབ་གནོན་ལ་མནན་པ།", + "Utilize": "བེད་སྤྱོད།", + "Valid time units:": "ནུས་ལྡན་དུས་ཚོད་ཀྱི་ཚན་པ།:", + "Valves": "Valves", + "Valves updated": "Valves གསར་སྒྱུར་བྱས།", + "Valves updated successfully": "Valves ལེགས་པར་གསར་སྒྱུར་བྱས།", + "variable": "འགྱུར་ཚད།", + "variable to have them replaced with clipboard content.": "འགྱུར་ཚད་དེ་དག་སྦྱར་སྡེར་གྱི་ནང་དོན་གྱིས་ཚབ་བྱེད་པར་ཡོད་པ།", + "Verify Connection": "སྦྲེལ་མཐུད་ར་སྤྲོད།", + "Version": "པར་གཞི།", + "Version {{selectedVersion}} of {{totalVersions}}": "པར་གཞི་ {{selectedVersion}} ། {{totalVersions}} ནས།", + "View Replies": "ལན་ལྟ་བ།", + "View Result from `{{NAME}}`": "`{{NAME}}` ནས་འབྲས་བུ་ལྟ་བ།", + "Visibility": "མཐོང་ཐུབ་རང་བཞིན།", + "Voice": "སྐད།", + "Voice Input": "སྐད་ཀྱི་ནང་འཇུག", + "Warning": "ཉེན་བརྡ།", + "Warning:": "ཉེན་བརྡ།:", + "Warning: Enabling this will allow users to upload arbitrary code on the server.": "ཉེན་བརྡ།: འདི་སྒུལ་བསྐྱོད་བྱས་ན་བེད་སྤྱོད་མཁན་ཚོས་སར་བར་སྟེང་གང་འདོད་ཀྱི་ཀོཌ་སྤར་བར་གནང་བ་སྤྲོད་ངེས།", + "Warning: If you update or change your embedding model, you will need to re-import all documents.": "ཉེན་བརྡ།: གལ་ཏེ་ཁྱེད་ཀྱིས་ཁྱེད་ཀྱི་ཚུད་འཇུག་དཔེ་དབྱིབས་གསར་སྒྱུར་རམ་བརྗེ་བ་ཡིན་ན། ཁྱེད་ཀྱིས་ཡིག་ཆ་ཡོངས་རྫོགས་བསྐྱར་དུ་ནང་འདྲེན་བྱེད་དགོས་ངེས།", + "Warning: Jupyter execution enables arbitrary code execution, posing severe security risks—proceed with extreme caution.": "ཉེན་བརྡ།: Jupyter ལག་བསྟར་གྱིས་གང་འདོད་ཀྱི་ཀོཌ་ལག་བསྟར་སྒུལ་བསྐྱོད་བྱས་ནས། བདེ་འཇགས་ཀྱི་ཉེན་ཁ་ཚབས་ཆེན་བཟོ་གི་ཡོད།—ཧ་ཅང་གཟབ་ནན་གྱིས་སྔོན་སྐྱོད་བྱེད་རོགས།", + "Web": "དྲ་བ།", + "Web API": "Web API", + "Web Search": "དྲ་བའི་འཚོལ་བཤེར།", + "Web Search Engine": "དྲ་བའི་འཚོལ་བཤེར་འཕྲུལ་འཁོར།", + "Web Search in Chat": "ཁ་བརྡའི་ནང་དྲ་བའི་འཚོལ་བཤེར།", + "Web Search Query Generation": "དྲ་བའི་འཚོལ་བཤེར་འདྲི་བ་བཟོ་སྐྲུན།", + "Webhook URL": "Webhook URL", + "WebUI Settings": "WebUI སྒྲིག་འགོད།", + "WebUI URL": "WebUI URL", + "WebUI will make requests to \"{{url}}/api/chat\"": "WebUI ཡིས་ \"{{url}}/api/chat\" ལ་རེ་ཞུ་གཏོང་ངེས།", + "WebUI will make requests to \"{{url}}/chat/completions\"": "WebUI ཡིས་ \"{{url}}/chat/completions\" ལ་རེ་ཞུ་གཏོང་ངེས།", + "WebUI will make requests to \"{{url}}/openapi.json\"": "WebUI ཡིས་ \"{{url}}/openapi.json\" ལ་རེ་ཞུ་གཏོང་ངེས།", + "What are you trying to achieve?": "ཁྱེད་ཀྱིས་ཅི་ཞིག་འགྲུབ་ཐབས་བྱེད་བཞིན་ཡོད།", + "What are you working on?": "ཁྱེད་ཀྱིས་ཅི་ཞིག་ལས་ཀ་བྱེད་བཞིན་ཡོད།", + "What’s New in": "གསར་པ་ཅི་ཡོད།", + "When enabled, the model will respond to each chat message in real-time, generating a response as soon as the user sends a message. This mode is useful for live chat applications, but may impact performance on slower hardware.": "སྒུལ་བསྐྱོད་བྱས་ཚེ། དཔེ་དབྱིབས་ཀྱིས་ཁ་བརྡའི་འཕྲིན་རེ་རེར་དུས་ཐོག་ཏུ་ལན་འདེབས་བྱེད་ངེས། བེད་སྤྱོད་མཁན་གྱིས་འཕྲིན་བཏང་མ་ཐག་ལན་ཞིག་བཟོ་ངེས། མ་དཔེ་འདི་ཐད་གཏོང་ཁ་བརྡའི་བཀོལ་ཆས་ལ་ཕན་ཐོགས་ཡོད། འོན་ཀྱང་དེས་མཁྲེགས་ཆས་དལ་བའི་སྟེང་ལས་ཆོད་ལ་ཤུགས་རྐྱེན་ཐེབས་སྲིད།", + "wherever you are": "ཁྱེད་གང་དུ་ཡོད་ཀྱང་།", + "Whisper (Local)": "Whisper (ས་གནས།)", + "Why?": "ཅིའི་ཕྱིར།", + "Widescreen Mode": "ཡངས་གནས་ངོས་མ་དཔེ།", + "Won": "ཐོབ།", + "Works together with top-k. A higher value (e.g., 0.95) will lead to more diverse text, while a lower value (e.g., 0.5) will generate more focused and conservative text.": "top-k དང་མཉམ་ལས་བྱེད། རིན་ཐང་མཐོ་བ་ (དཔེར་ན། 0.95) ཡིས་ཡིག་རྐྱང་སྣ་ཚོགས་ཆེ་བ་ཡོང་ངེས། དེ་བཞིན་དུ་རིན་ཐང་དམའ་བ་ (དཔེར་ན། 0.5) ཡིས་ཡིག་རྐྱང་དམིགས་ཚད་དང་སྲུང་འཛིན་ཆེ་བ་བཟོ་ངེས།", + "Workspace": "ལས་ཡུལ།", + "Workspace Permissions": "ལས་ཡུལ་གྱི་དབང་ཚད།", + "Write": "འབྲི་བ།", + "Write a prompt suggestion (e.g. Who are you?)": "འགུལ་སློང་གྲོས་གཞི་ཞིག་འབྲི་བ། (དཔེར་ན། ཁྱེད་སུ་ཡིན།)", + "Write a summary in 50 words that summarizes [topic or keyword].": "[བརྗོད་གཞི་ཡང་ན་གནད་ཚིག] ཕྱོགས་སྡོམ་བྱེད་པའི་ཚིག་ ༥༠ ནང་གི་སྙིང་བསྡུས་ཤིག་འབྲི་བ།", + "Write something...": "ཅི་ཞིག་འབྲི་བ།...", + "Write your model template content here": "ཁྱེད་ཀྱི་དཔེ་དབྱིབས་མ་དཔེའི་ནང་དོན་འདིར་འབྲི་བ།", + "Yesterday": "ཁ་ས།", + "You": "ཁྱེད།", + "You are currently using a trial license. Please contact support to upgrade your license.": "ཁྱེད་ཀྱིས་ད་ལྟ་ཚོད་ལྟའི་ཆོག་མཆན་ཞིག་བེད་སྤྱོད་གཏོང་བཞིན་འདུག ཁྱེད་ཀྱི་ཆོག་མཆན་རིམ་སྤོར་བྱེད་པར་རོགས་སྐྱོར་དང་འབྲེལ་གཏུག་བྱེད་རོགས།", + "You can only chat with a maximum of {{maxCount}} file(s) at a time.": "ཁྱེད་ཀྱིས་ཐེངས་གཅིག་ལ་ཡིག་ཆ་ {{maxCount}} ལས་མང་བ་དང་ཁ་བརྡ་བྱེད་མི་ཐུབ།", + "You can personalize your interactions with LLMs by adding memories through the 'Manage' button below, making them more helpful and tailored to you.": "ཁྱེད་ཀྱིས་གཤམ་གྱི་ 'དོ་དམ་' མཐེབ་གནོན་བརྒྱུད་དྲན་ཤེས་སྣོན་ནས་ LLMs དང་མཉམ་དུ་འབྲེལ་འདྲིས་བྱེད་པ་སྒེར་སྤྱོད་ཅན་བཟོ་ཐུབ། དེ་དག་ཁྱེད་ལ་སྔར་ལས་ཕན་ཐོགས་པ་དང་འཚམ་པོ་བཟོ་ཐུབ།", + "You cannot upload an empty file.": "ཁྱེད་ཀྱིས་ཡིག་ཆ་སྟོང་པ་སྤར་མི་ཐུབ།", + "You do not have permission to upload files": "ཁྱེད་ལ་ཡིག་ཆ་སྤར་བའི་དབང་ཚད་མེད།", + "You do not have permission to upload files.": "ཁྱེད་ལ་ཡིག་ཆ་སྤར་བའི་དབང་ཚད་མེད།", + "You have no archived conversations.": "ཁྱེད་ལ་ཡིག་མཛོད་དུ་བཞག་པའི་ཁ་བརྡ་མེད།", + "You have shared this chat": "ཁྱེད་ཀྱིས་ཁ་བརྡ་འདི་མཉམ་སྤྱོད་བྱས་ཡོད།", + "You're a helpful assistant.": "ཁྱེད་ནི་ཕན་ཐོགས་པའི་ལག་རོགས་པ་ཞིག་ཡིན།", + "You're now logged in.": "ཁྱེད་ད་ལྟ་ནང་འཛུལ་བྱས་ཟིན།", + "Your account status is currently pending activation.": "ཁྱེད་ཀྱི་རྩིས་ཁྲའི་གནས་སྟངས་ད་ལྟ་སྒུལ་བསྐྱོད་སྒུག་བཞིན་པ།", + "Your entire contribution will go directly to the plugin developer; Open WebUI does not take any percentage. However, the chosen funding platform might have its own fees.": "ཁྱེད་ཀྱི་ཞལ་འདེབས་ཆ་ཚང་ཐད་ཀར་ plugin གསར་སྤེལ་བ་ལ་འགྲོ་ངེས། Open WebUI ཡིས་བརྒྱ་ཆ་གང་ཡང་མི་ལེན། འོན་ཀྱང་། གདམ་ཟིན་པའི་མ་དངུལ་གཏོང་བའི་སྟེགས་བུ་ལ་དེའི་རང་གི་འགྲོ་གྲོན་ཡོད་སྲིད།", + "Youtube": "Youtube", + "Youtube Language": "Youtube སྐད་ཡིག", + "Youtube Proxy URL": "Youtube Proxy URL" +} diff --git a/src/lib/i18n/locales/languages.json b/src/lib/i18n/locales/languages.json index c6517f760..def0867d0 100644 --- a/src/lib/i18n/locales/languages.json +++ b/src/lib/i18n/locales/languages.json @@ -19,6 +19,10 @@ "code": "bn-BD", "title": "Bengali (বাংলা)" }, + { + "code": "bo-TB", + "title": "Tibetan (བོད)" + }, { "code": "bg-BG", "title": "Bulgarian (български)" From ec3435de001c25b645fad189f0d5f811bb5d22f0 Mon Sep 17 00:00:00 2001 From: Florian Kick Date: Fri, 4 Apr 2025 13:30:51 +0200 Subject: [PATCH 06/37] make content parameter optional in OpenAI chat completion API endpoint --- backend/open_webui/routers/ollama.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/backend/open_webui/routers/ollama.py b/backend/open_webui/routers/ollama.py index fcb263d1e..775cd0446 100644 --- a/backend/open_webui/routers/ollama.py +++ b/backend/open_webui/routers/ollama.py @@ -1197,7 +1197,7 @@ class OpenAIChatMessageContent(BaseModel): class OpenAIChatMessage(BaseModel): role: str - content: Union[str, list[OpenAIChatMessageContent]] + content: Union[Optional[str], list[OpenAIChatMessageContent]] model_config = ConfigDict(extra="allow") From 3b2b6e183d4aaa89a65043592b49b8f1f00dae01 Mon Sep 17 00:00:00 2001 From: Marko Henning Date: Fri, 4 Apr 2025 15:30:57 +0200 Subject: [PATCH 07/37] Added missing parameter for query_doc_with_hybrid_search. --- backend/open_webui/routers/retrieval.py | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/backend/open_webui/routers/retrieval.py b/backend/open_webui/routers/retrieval.py index 250d27eb3..6f71e11d3 100644 --- a/backend/open_webui/routers/retrieval.py +++ b/backend/open_webui/routers/retrieval.py @@ -1534,8 +1534,13 @@ def query_doc_handler( ): try: if request.app.state.config.ENABLE_RAG_HYBRID_SEARCH: + collection_results = {} + collection_results[form_data.collection_name] = VECTOR_DB_CLIENT.get( + collection_name=form_data.collection_name + ) return query_doc_with_hybrid_search( collection_name=form_data.collection_name, + collection_result=collection_results[form_data.collection_name], query=form_data.query, embedding_function=lambda query, prefix: request.app.state.EMBEDDING_FUNCTION( query, prefix=prefix, user=user From 77fa11098a5a4f271af3eaa9861a94c3e38145f9 Mon Sep 17 00:00:00 2001 From: Timothy Jaeryang Baek Date: Fri, 4 Apr 2025 08:31:13 -0600 Subject: [PATCH 08/37] enh: openapi tool server custom path --- src/lib/apis/index.ts | 9 ++++++--- src/lib/components/AddServerModal.svelte | 2 +- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/src/lib/apis/index.ts b/src/lib/apis/index.ts index 015e1272a..b6d4d10d2 100644 --- a/src/lib/apis/index.ts +++ b/src/lib/apis/index.ts @@ -262,7 +262,7 @@ export const stopTask = async (token: string, id: string) => { export const getToolServerData = async (token: string, url: string) => { let error = null; - const res = await fetch(`${url}/openapi.json`, { + const res = await fetch(`${url}`, { method: 'GET', headers: { Accept: 'application/json', @@ -304,10 +304,13 @@ export const getToolServersData = async (i18n, servers: object[]) => { servers .filter((server) => server?.config?.enable) .map(async (server) => { - const data = await getToolServerData(server?.key, server?.url).catch((err) => { + const data = await getToolServerData( + server?.key, + server?.url + (server?.path ?? '/openapi.json') + ).catch((err) => { toast.error( i18n.t(`Failed to connect to {{URL}} OpenAPI tool server`, { - URL: server?.url + URL: server?.url + (server?.path ?? '/openapi.json') }) ); return null; diff --git a/src/lib/components/AddServerModal.svelte b/src/lib/components/AddServerModal.svelte index d0f79c576..500032ba1 100644 --- a/src/lib/components/AddServerModal.svelte +++ b/src/lib/components/AddServerModal.svelte @@ -56,8 +56,8 @@ show = false; url = ''; - key = ''; path = '/openapi.json'; + key = ''; auth_type = 'bearer'; enable = true; From feaf434d4e8ede0fe1a5397afac9fb20b0cc18c5 Mon Sep 17 00:00:00 2001 From: Timothy Jaeryang Baek Date: Fri, 4 Apr 2025 09:11:54 -0600 Subject: [PATCH 09/37] refac: input prompt --- src/lib/components/chat/MessageInput.svelte | 10 +++++-- .../chat/MessageInput/Commands/Prompts.svelte | 17 +++++++----- .../chat/MessageInput/VoiceRecording.svelte | 2 +- src/lib/components/chat/Messages.svelte | 15 +---------- src/lib/components/chat/Placeholder.svelte | 26 +++++++++---------- src/lib/utils/index.ts | 6 ++--- 6 files changed, 35 insertions(+), 41 deletions(-) diff --git a/src/lib/components/chat/MessageInput.svelte b/src/lib/components/chat/MessageInput.svelte index 9251ba4e4..045fe0a3d 100644 --- a/src/lib/components/chat/MessageInput.svelte +++ b/src/lib/components/chat/MessageInput.svelte @@ -21,7 +21,12 @@ TTSWorker } from '$lib/stores'; - import { blobToFile, compressImage, createMessagesList, findWordIndices } from '$lib/utils'; + import { + blobToFile, + compressImage, + createMessagesList, + extractCurlyBraceWords + } from '$lib/utils'; import { transcribeAudio } from '$lib/apis/audio'; import { uploadFile } from '$lib/apis/files'; import { generateAutoCompletion } from '$lib/apis'; @@ -631,6 +636,7 @@ {#if $settings?.richTextInput ?? true}
0) { const word = words.at(0); diff --git a/src/lib/components/chat/MessageInput/Commands/Prompts.svelte b/src/lib/components/chat/MessageInput/Commands/Prompts.svelte index 26cf1d368..1ac6ae193 100644 --- a/src/lib/components/chat/MessageInput/Commands/Prompts.svelte +++ b/src/lib/components/chat/MessageInput/Commands/Prompts.svelte @@ -1,7 +1,7 @@ diff --git a/src/lib/components/chat/MessageInput/VoiceRecording.svelte b/src/lib/components/chat/MessageInput/VoiceRecording.svelte index 7a30fb74d..a5b781247 100644 --- a/src/lib/components/chat/MessageInput/VoiceRecording.svelte +++ b/src/lib/components/chat/MessageInput/VoiceRecording.svelte @@ -2,7 +2,7 @@ import { toast } from 'svelte-sonner'; import { createEventDispatcher, tick, getContext, onMount, onDestroy } from 'svelte'; import { config, settings } from '$lib/stores'; - import { blobToFile, calculateSHA256, findWordIndices } from '$lib/utils'; + import { blobToFile, calculateSHA256, extractCurlyBraceWords } from '$lib/utils'; import { transcribeAudio } from '$lib/apis/audio'; diff --git a/src/lib/components/chat/Messages.svelte b/src/lib/components/chat/Messages.svelte index b55a27b40..160d7eb37 100644 --- a/src/lib/components/chat/Messages.svelte +++ b/src/lib/components/chat/Messages.svelte @@ -14,7 +14,7 @@ import { toast } from 'svelte-sonner'; import { getChatList, updateChatById } from '$lib/apis/chats'; - import { copyToClipboard, findWordIndices } from '$lib/utils'; + import { copyToClipboard, extractCurlyBraceWords } from '$lib/utils'; import Message from './Messages/Message.svelte'; import Loader from '../common/Loader.svelte'; @@ -406,19 +406,6 @@ } prompt = text; - - await tick(); - - const chatInputContainerElement = document.getElementById('chat-input-container'); - if (chatInputContainerElement) { - prompt = p; - - chatInputContainerElement.style.height = ''; - chatInputContainerElement.style.height = - Math.min(chatInputContainerElement.scrollHeight, 200) + 'px'; - chatInputContainerElement.focus(); - } - await tick(); }} /> diff --git a/src/lib/components/chat/Placeholder.svelte b/src/lib/components/chat/Placeholder.svelte index be700ab00..545d43c44 100644 --- a/src/lib/components/chat/Placeholder.svelte +++ b/src/lib/components/chat/Placeholder.svelte @@ -8,7 +8,7 @@ const dispatch = createEventDispatcher(); import { config, user, models as _models, temporaryChatEnabled } from '$lib/stores'; - import { sanitizeResponseContent, findWordIndices } from '$lib/utils'; + import { sanitizeResponseContent, extractCurlyBraceWords } from '$lib/utils'; import { WEBUI_BASE_URL } from '$lib/constants'; import Suggestions from './Suggestions.svelte'; @@ -65,9 +65,7 @@ const chatInputElement = document.getElementById('chat-input'); if (chatInputContainerElement) { - chatInputContainerElement.style.height = ''; - chatInputContainerElement.style.height = - Math.min(chatInputContainerElement.scrollHeight, 200) + 'px'; + chatInputContainerElement.scrollTop = chatInputContainerElement.scrollHeight; } await tick(); @@ -86,21 +84,21 @@ } $: models = selectedModels.map((id) => $_models.find((m) => m.id === id)); - + onMount(() => {});
{#if $temporaryChatEnabled} - -
- {$i18n.t('Temporary Chat')} -
-
+ +
+ {$i18n.t('Temporary Chat')} +
+
{/if}
{ }) < 0; }; -export const findWordIndices = (text) => { - const regex = /\[([^\]]+)\]/g; +export const extractCurlyBraceWords = (text) => { + const regex = /\{\{([^}]+)\}\}/g; const matches = []; let match; while ((match = regex.exec(text)) !== null) { matches.push({ - word: match[1], + word: match[1].trim(), startIndex: match.index, endIndex: regex.lastIndex - 1 }); From b612af29e9444d913469b1f5fb1bbad58281b87f Mon Sep 17 00:00:00 2001 From: Timothy Jaeryang Baek Date: Fri, 4 Apr 2025 09:17:19 -0600 Subject: [PATCH 10/37] refac --- .../chat/MessageInput/Commands/Prompts.svelte | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) diff --git a/src/lib/components/chat/MessageInput/Commands/Prompts.svelte b/src/lib/components/chat/MessageInput/Commands/Prompts.svelte index 1ac6ae193..da88acc45 100644 --- a/src/lib/components/chat/MessageInput/Commands/Prompts.svelte +++ b/src/lib/components/chat/MessageInput/Commands/Prompts.svelte @@ -152,7 +152,24 @@ chatInputElement.focus(); chatInputElement.dispatchEvent(new Event('input')); - chatInputElement.scrollTop = chatInputElement.scrollHeight; + const words = extractCurlyBraceWords(prompt); + + if (words.length > 0) { + const word = words.at(0); + const fullPrompt = prompt; + + prompt = prompt.substring(0, word?.endIndex + 1); + await tick(); + + chatInputElement.scrollTop = chatInputElement.scrollHeight; + + prompt = fullPrompt; + await tick(); + + chatInputElement.setSelectionRange(word?.startIndex, word.endIndex + 1); + } else { + chatInputElement.scrollTop = chatInputElement.scrollHeight; + } } }; From cb94a87cb04939da0d7ad10fc980b818530beb74 Mon Sep 17 00:00:00 2001 From: Timothy Jaeryang Baek Date: Sat, 5 Apr 2025 01:05:47 -0600 Subject: [PATCH 11/37] refac: tools styling --- src/lib/components/chat/MessageInput.svelte | 101 ++++---------- .../components/chat/ToolServersModal.svelte | 125 ++++++++++++------ 2 files changed, 110 insertions(+), 116 deletions(-) diff --git a/src/lib/components/chat/MessageInput.svelte b/src/lib/components/chat/MessageInput.svelte index 045fe0a3d..be93dc34a 100644 --- a/src/lib/components/chat/MessageInput.svelte +++ b/src/lib/components/chat/MessageInput.svelte @@ -52,6 +52,7 @@ import CommandLine from '../icons/CommandLine.svelte'; import { KokoroWorker } from '$lib/workers/KokoroWorker'; import ToolServersModal from './ToolServersModal.svelte'; + import Wrench from '../icons/Wrench.svelte'; const i18n = getContext('i18n'); @@ -90,7 +91,7 @@ webSearchEnabled }); - let showToolServers = false; + let showTools = false; let loaded = false; let recording = false; @@ -353,7 +354,7 @@ - + {#if loaded}
@@ -397,38 +398,6 @@
- {#if selectedToolIds.length > 0} -
-
-
- - - - -
-
- {#each selectedToolIds.map((id) => { - return $tools ? $tools.find((t) => t.id === id) : { id: id, name: id }; - }) as tool, toolIdx (toolIdx)} - - {tool.name} - - - {#if toolIdx !== selectedToolIds.length - 1} - , - {/if} - {/each} -
-
-
- {/if} - {#if atSelectedModel !== undefined}
@@ -1133,6 +1102,29 @@
+ {#if toolServers.length + selectedToolIds.length > 0} + + + + {/if} + {#if $_user} {#if $config?.features?.enable_web_search && ($_user.role === 'admin' || $_user?.permissions?.features?.web_search)} @@ -1195,47 +1187,6 @@
- {#if toolServers.length > 0} - - - - {/if} - {#if !history?.currentId || history.messages[history.currentId]?.done == true}
-
-
- Open WebUI can use tools provided by any OpenAPI server.
Learn more about OpenAPI tool servers. -
-
- {#each $toolServers as toolServer} - -
-
- {toolServer?.openapi?.info?.title} - v{toolServer?.openapi?.info?.version} -
+ {#if selectedTools.length > 0} + {#if $toolServers.length > 0} +
+
{$i18n.t('Tools')}
+
+ {/if} -
- {toolServer?.openapi?.info?.description} -
- -
- {toolServer?.url} -
-
- -
- {#each toolServer?.specs ?? [] as tool_spec} -
-
- {tool_spec?.name} -
- -
- {tool_spec?.description} -
+
+
+ {#each selectedTools as tool} + +
+
+ {tool?.name}
- {/each} -
-
- {/each} + + {#if tool?.meta?.description} +
+ {tool?.meta?.description} +
+ {/if} +
+ + + + {/each} +
-
+ {/if} + + {#if $toolServers.length > 0} +
+
{$i18n.t('Tool Servers')}
+
+ +
+
+ Open WebUI can use tools provided by any OpenAPI server.
Learn more about OpenAPI tool servers. +
+
+ {#each $toolServers as toolServer} + +
+
+ {toolServer?.openapi?.info?.title} - v{toolServer?.openapi?.info?.version} +
+ +
+ {toolServer?.openapi?.info?.description} +
+ +
+ {toolServer?.url} +
+
+ +
+ {#each toolServer?.specs ?? [] as tool_spec} +
+
+ {tool_spec?.name} +
+ +
+ {tool_spec?.description} +
+
+ {/each} +
+
+ {/each} +
+
+ {/if}
From 5e06b6d3f445d2ad6522f76c6404b302af88d85b Mon Sep 17 00:00:00 2001 From: Timothy Jaeryang Baek Date: Sat, 5 Apr 2025 01:24:32 -0600 Subject: [PATCH 12/37] refac: styling --- src/lib/components/chat/MessageInput.svelte | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/lib/components/chat/MessageInput.svelte b/src/lib/components/chat/MessageInput.svelte index be93dc34a..985311a98 100644 --- a/src/lib/components/chat/MessageInput.svelte +++ b/src/lib/components/chat/MessageInput.svelte @@ -1033,7 +1033,7 @@
-
+
-
+
{#if toolServers.length + selectedToolIds.length > 0} @@ -1157,7 +1157,7 @@ > @@ -1176,7 +1176,7 @@ > From 4ad10f0c6e707869cddc4e0cdbcf95dc10cfca8b Mon Sep 17 00:00:00 2001 From: Timothy Jaeryang Baek Date: Sat, 5 Apr 2025 01:31:45 -0600 Subject: [PATCH 13/37] chore: format --- backend/open_webui/utils/auth.py | 3 +- src/lib/components/admin/Settings.svelte | 29 ++ .../components/admin/Settings/Tools.svelte | 404 ++++++++++++++++++ .../components/chat/ChatPlaceholder.svelte | 20 +- src/lib/components/chat/Settings/Chats.svelte | 2 +- src/lib/i18n/locales/ar-BH/translation.json | 21 +- src/lib/i18n/locales/ar/translation.json | 57 ++- src/lib/i18n/locales/bg-BG/translation.json | 21 +- src/lib/i18n/locales/bn-BD/translation.json | 21 +- src/lib/i18n/locales/bo-TB/translation.json | 21 +- src/lib/i18n/locales/ca-ES/translation.json | 21 +- src/lib/i18n/locales/ceb-PH/translation.json | 21 +- src/lib/i18n/locales/cs-CZ/translation.json | 21 +- src/lib/i18n/locales/da-DK/translation.json | 21 +- src/lib/i18n/locales/de-DE/translation.json | 22 +- src/lib/i18n/locales/dg-DG/translation.json | 21 +- src/lib/i18n/locales/el-GR/translation.json | 21 +- src/lib/i18n/locales/en-GB/translation.json | 22 +- src/lib/i18n/locales/en-US/translation.json | 22 +- src/lib/i18n/locales/es-ES/translation.json | 21 +- src/lib/i18n/locales/et-EE/translation.json | 21 +- src/lib/i18n/locales/eu-ES/translation.json | 21 +- src/lib/i18n/locales/fa-IR/translation.json | 21 +- src/lib/i18n/locales/fi-FI/translation.json | 21 +- src/lib/i18n/locales/fr-CA/translation.json | 21 +- src/lib/i18n/locales/fr-FR/translation.json | 21 +- src/lib/i18n/locales/he-IL/translation.json | 21 +- src/lib/i18n/locales/hi-IN/translation.json | 21 +- src/lib/i18n/locales/hr-HR/translation.json | 21 +- src/lib/i18n/locales/hu-HU/translation.json | 21 +- src/lib/i18n/locales/id-ID/translation.json | 21 +- src/lib/i18n/locales/ie-GA/translation.json | 21 +- src/lib/i18n/locales/it-IT/translation.json | 21 +- src/lib/i18n/locales/ja-JP/translation.json | 21 +- src/lib/i18n/locales/ka-GE/translation.json | 21 +- src/lib/i18n/locales/ko-KR/translation.json | 21 +- src/lib/i18n/locales/languages.json | 6 +- src/lib/i18n/locales/lt-LT/translation.json | 21 +- src/lib/i18n/locales/ms-MY/translation.json | 21 +- src/lib/i18n/locales/nb-NO/translation.json | 21 +- src/lib/i18n/locales/nl-NL/translation.json | 23 +- src/lib/i18n/locales/pa-IN/translation.json | 21 +- src/lib/i18n/locales/pl-PL/translation.json | 21 +- src/lib/i18n/locales/pt-BR/translation.json | 21 +- src/lib/i18n/locales/pt-PT/translation.json | 21 +- src/lib/i18n/locales/ro-RO/translation.json | 21 +- src/lib/i18n/locales/ru-RU/translation.json | 21 +- src/lib/i18n/locales/sk-SK/translation.json | 21 +- src/lib/i18n/locales/sr-RS/translation.json | 21 +- src/lib/i18n/locales/sv-SE/translation.json | 21 +- src/lib/i18n/locales/th-TH/translation.json | 21 +- src/lib/i18n/locales/tk-TW/translation.json | 21 +- src/lib/i18n/locales/tr-TR/translation.json | 21 +- src/lib/i18n/locales/uk-UA/translation.json | 21 +- src/lib/i18n/locales/ur-PK/translation.json | 21 +- src/lib/i18n/locales/vi-VN/translation.json | 21 +- src/lib/i18n/locales/zh-CN/translation.json | 21 +- src/lib/i18n/locales/zh-TW/translation.json | 21 +- 58 files changed, 1319 insertions(+), 278 deletions(-) create mode 100644 src/lib/components/admin/Settings/Tools.svelte diff --git a/backend/open_webui/utils/auth.py b/backend/open_webui/utils/auth.py index f3979fc35..6af99f164 100644 --- a/backend/open_webui/utils/auth.py +++ b/backend/open_webui/utils/auth.py @@ -184,7 +184,8 @@ def get_current_user( # Check if the request path matches any allowed endpoint. if not any( - request.url.path == allowed or request.url.path.startswith(allowed + "/") + request.url.path == allowed + or request.url.path.startswith(allowed + "/") for allowed in allowed_paths ): raise HTTPException( diff --git a/src/lib/components/admin/Settings.svelte b/src/lib/components/admin/Settings.svelte index 76e3ae59d..c26604d6c 100644 --- a/src/lib/components/admin/Settings.svelte +++ b/src/lib/components/admin/Settings.svelte @@ -20,6 +20,7 @@ import DocumentChartBar from '../icons/DocumentChartBar.svelte'; import Evaluations from './Settings/Evaluations.svelte'; import CodeExecution from './Settings/CodeExecution.svelte'; + import Tools from './Settings/Tools.svelte'; const i18n = getContext('i18n'); @@ -135,6 +136,32 @@
{$i18n.t('Evaluations')}
+ + +
+
+ +
+ {#each OPENAI_API_BASE_URLS as url, idx} + { + updateOpenAIHandler(); + }} + onDelete={() => { + OPENAI_API_BASE_URLS = OPENAI_API_BASE_URLS.filter( + (url, urlIdx) => idx !== urlIdx + ); + OPENAI_API_KEYS = OPENAI_API_KEYS.filter((key, keyIdx) => idx !== keyIdx); + + let newConfig = {}; + OPENAI_API_BASE_URLS.forEach((url, newIdx) => { + newConfig[newIdx] = OPENAI_API_CONFIGS[newIdx < idx ? newIdx : newIdx + 1]; + }); + OPENAI_API_CONFIGS = newConfig; + updateOpenAIHandler(); + }} + /> + {/each} +
+
+ {/if} +
+
+ +
+ +
+
+
{$i18n.t('Ollama API')}
+ +
+ { + updateOllamaHandler(); + }} + /> +
+
+ + {#if ENABLE_OLLAMA_API} +
+ +
+
+
{$i18n.t('Manage Ollama API Connections')}
+ + + + +
+ +
+
+ {#each OLLAMA_BASE_URLS as url, idx} + { + updateOllamaHandler(); + }} + onDelete={() => { + OLLAMA_BASE_URLS = OLLAMA_BASE_URLS.filter((url, urlIdx) => idx !== urlIdx); + + let newConfig = {}; + OLLAMA_BASE_URLS.forEach((url, newIdx) => { + newConfig[newIdx] = OLLAMA_API_CONFIGS[newIdx < idx ? newIdx : newIdx + 1]; + }); + OLLAMA_API_CONFIGS = newConfig; + }} + /> + {/each} +
+
+ +
+ {$i18n.t('Trouble accessing Ollama?')} + + {$i18n.t('Click here for help.')} + +
+
+ {/if} +
+ +
+ +
+
+
{$i18n.t('Direct Connections')}
+ +
+
+ { + updateDirectConnectionsHandler(); + }} + /> +
+
+
+ +
+
+ {$i18n.t( + 'Direct Connections allow users to connect to their own OpenAI compatible API endpoints.' + )} +
+
+
+ {:else} +
+
+ +
+
+ {/if} +
+ +
+ +
+ diff --git a/src/lib/components/chat/ChatPlaceholder.svelte b/src/lib/components/chat/ChatPlaceholder.svelte index 43fc94aeb..4a07a82cc 100644 --- a/src/lib/components/chat/ChatPlaceholder.svelte +++ b/src/lib/components/chat/ChatPlaceholder.svelte @@ -28,7 +28,7 @@ } $: models = modelIds.map((id) => $_models.find((m) => m.id === id)); - + onMount(() => { mounted = true; }); @@ -67,15 +67,15 @@
{#if $temporaryChatEnabled} - -
- {$i18n.t('Temporary Chat')} -
-
+ +
+ {$i18n.t('Temporary Chat')} +
+
{/if}
{ currentChatPage.set(1); await chats.set(await getChatList(localStorage.token, $currentChatPage)); diff --git a/src/lib/i18n/locales/ar-BH/translation.json b/src/lib/i18n/locales/ar-BH/translation.json index a2c3a60a0..021f11bc7 100644 --- a/src/lib/i18n/locales/ar-BH/translation.json +++ b/src/lib/i18n/locales/ar-BH/translation.json @@ -6,7 +6,7 @@ "(latest)": "(الأخير)", "(Ollama)": "", "{{ models }}": "{{ نماذج }}", - "{{COUNT}} Available Tool Servers": "", + "{{COUNT}} Available Tools": "", "{{COUNT}} hidden lines": "", "{{COUNT}} Replies": "", "{{user}}'s Chats": "دردشات {{user}}", @@ -108,6 +108,7 @@ "Attribute for Username": "", "Audio": "صوتي", "August": "أغسطس", + "Auth": "", "Authenticate": "", "Authentication": "", "Auto-Copy Response to Clipboard": "النسخ التلقائي للاستجابة إلى الحافظة", @@ -119,7 +120,7 @@ "AUTOMATIC1111 Base URL": "AUTOMATIC1111 الرابط الرئيسي", "AUTOMATIC1111 Base URL is required.": "AUTOMATIC1111 الرابط مطلوب", "Available list": "", - "Available Tool Servers": "", + "Available Tools": "", "available!": "متاح", "Awful": "", "Azure AI Speech": "", @@ -303,6 +304,7 @@ "Direct Connections": "", "Direct Connections allow users to connect to their own OpenAI compatible API endpoints.": "", "Direct Connections settings updated": "", + "Direct Tool Servers": "", "Disabled": "", "Discover a function": "", "Discover a model": "اكتشف نموذجا", @@ -412,6 +414,7 @@ "Enter Kagi Search API Key": "", "Enter Key Behavior": "", "Enter language codes": "أدخل كود اللغة", + "Enter Mistral API Key": "", "Enter Model ID": "", "Enter model tag (e.g. {{modelTag}})": "(e.g. {{modelTag}}) أدخل الموديل تاق", "Enter Mojeek Search API Key": "", @@ -436,6 +439,7 @@ "Enter server port": "", "Enter stop sequence": "أدخل تسلسل التوقف", "Enter system prompt": "", + "Enter system prompt here": "", "Enter Tavily API Key": "", "Enter the public URL of your WebUI. This URL will be used to generate links in the notifications.": "", "Enter Tika Server URL": "", @@ -449,6 +453,7 @@ "Enter Your Email": "أدخل البريد الاكتروني", "Enter Your Full Name": "أدخل الاسم كامل", "Enter your message": "", + "Enter your name": "", "Enter your new password": "", "Enter Your Password": "ادخل كلمة المرور", "Enter Your Role": "أدخل الصلاحيات", @@ -468,7 +473,7 @@ "Exceeded the number of seats in your license. Please contact support to increase the number of seats.": "", "Exclude": "", "Execute code for analysis": "", - "Executing `{{NAME}}`...": "", + "Executing **{{NAME}}**...": "", "Expand": "", "Experimental": "تجريبي", "Explain": "", @@ -525,6 +530,7 @@ "Forge new paths": "", "Form": "", "Format your variables using brackets like this:": "", + "Forwards system user session credentials to authenticate": "", "Frequency Penalty": "عقوبة التردد", "Full Context Mode": "", "Function": "", @@ -694,6 +700,8 @@ "Mirostat": "Mirostat", "Mirostat Eta": "Mirostat Eta", "Mirostat Tau": "Mirostat Tau", + "Mistral OCR": "", + "Mistral OCR API Key required.": "", "Model": "", "Model '{{modelName}}' has been successfully downloaded.": "تم تحميل النموذج '{{modelName}}' بنجاح", "Model '{{modelTag}}' is already in queue for downloading.": "النموذج '{{modelTag}}' موجود بالفعل في قائمة الانتظار للتحميل", @@ -789,6 +797,7 @@ "OpenAI API Key is required.": "OpenAI API.مطلوب مفتاح ", "OpenAI API settings updated": "", "OpenAI URL/Key required.": "URL/مفتاح OpenAI.مطلوب عنوان ", + "openapi.json Path": "", "or": "أو", "Organize your users": "", "Other": "آخر", @@ -1042,6 +1051,7 @@ "Thinking...": "", "This action cannot be undone. Do you wish to continue?": "", "This channel was created on {{createdAt}}. This is the very beginning of the {{channelName}} channel.": "", + "This chat won’t appear in history and your messages will not be saved.": "", "This ensures that your valuable conversations are securely saved to your backend database. Thank you!": "وهذا يضمن حفظ محادثاتك القيمة بشكل آمن في قاعدة بياناتك الخلفية. شكرًا لك!", "This is an experimental feature, it may not function as expected and is subject to change at any time.": "", "This option controls how many tokens are preserved when refreshing the context. For example, if set to 2, the last 2 tokens of the conversation context will be retained. Preserving context can help maintain the continuity of a conversation, but it may reduce the ability to respond to new topics.": "", @@ -1089,6 +1099,7 @@ "Tool ID": "", "Tool imported successfully": "", "Tool Name": "", + "Tool Servers": "", "Tool updated successfully": "", "Tools": "", "Tools Access": "", @@ -1158,7 +1169,7 @@ "Version": "إصدار", "Version {{selectedVersion}} of {{totalVersions}}": "", "View Replies": "", - "View Result from `{{NAME}}`": "", + "View Result from **{{NAME}}**": "", "Visibility": "", "Voice": "", "Voice Input": "", @@ -1176,9 +1187,9 @@ "Webhook URL": "Webhook الرابط", "WebUI Settings": "WebUI اعدادات", "WebUI URL": "", + "WebUI will make requests to \"{{url}}{{path}}\"": "", "WebUI will make requests to \"{{url}}/api/chat\"": "", "WebUI will make requests to \"{{url}}/chat/completions\"": "", - "WebUI will make requests to \"{{url}}/openapi.json\"": "", "What are you trying to achieve?": "", "What are you working on?": "", "What’s New in": "ما هو الجديد", diff --git a/src/lib/i18n/locales/ar/translation.json b/src/lib/i18n/locales/ar/translation.json index 892bd53ac..3a3fbeb79 100644 --- a/src/lib/i18n/locales/ar/translation.json +++ b/src/lib/i18n/locales/ar/translation.json @@ -4,7 +4,9 @@ "(e.g. `sh webui.sh --api --api-auth username_password`)": "(مثال: `sh webui.sh --api --api-auth اسم_المستخدم_كلمة_المرور`)", "(e.g. `sh webui.sh --api`)": "(مثال: تشغيل الأمر: `sh webui.sh --api`)", "(latest)": "(أحدث)", + "(Ollama)": "", "{{ models }}": "النماذج: {{ models }}", + "{{COUNT}} Available Tools": "", "{{COUNT}} hidden lines": "{{COUNT}} سطر/أسطر مخفية", "{{COUNT}} Replies": "{{COUNT}} رد/ردود", "{{user}}'s Chats": "محادثات المستخدم {{user}}", @@ -68,6 +70,8 @@ "Already have an account?": "هل لديك حساب بالفعل؟", "Alternative to the top_p, and aims to ensure a balance of quality and variety. The parameter p represents the minimum probability for a token to be considered, relative to the probability of the most likely token. For example, with p=0.05 and the most likely token having a probability of 0.9, logits with a value less than 0.045 are filtered out.": "بديل للـ top_p، ويهدف إلى ضمان توازن بين الجودة والتنوع. تمثل المعلمة p الحد الأدنى لاحتمالية اعتبار الرمز مقارنة باحتمالية الرمز الأكثر احتمالاً. على سبيل المثال، مع p=0.05 والرمز الأكثر احتمالاً لديه احتمال 0.9، يتم ترشيح القيم الأقل من 0.045.", "Always": "دائمًا", + "Always Collapse Code Blocks": "", + "Always Expand Details": "", "Amazing": "رائع", "an assistant": "مساعد", "Analyzed": "تم التحليل", @@ -104,6 +108,7 @@ "Attribute for Username": "خاصية لاسم المستخدم", "Audio": "الصوت", "August": "أغسطس", + "Auth": "", "Authenticate": "توثيق", "Authentication": "المصادقة", "Auto-Copy Response to Clipboard": "نسخ الرد تلقائيًا إلى الحافظة", @@ -115,6 +120,7 @@ "AUTOMATIC1111 Base URL": "الرابط الأساسي لـ AUTOMATIC1111", "AUTOMATIC1111 Base URL is required.": "الرابط الأساسي لـ AUTOMATIC1111 مطلوب.", "Available list": "القائمة المتاحة", + "Available Tools": "", "available!": "متاح!", "Awful": "فظيع", "Azure AI Speech": "نطق Azure AI (مايكروسوفت)", @@ -212,6 +218,7 @@ "Confirm your action": "أكد إجراءك", "Confirm your new password": "أكد كلمة مرورك الجديدة", "Connect to your own OpenAI compatible API endpoints.": "اتصل بنقاط نهاية API المتوافقة مع OpenAI الخاصة بك.", + "Connect to your own OpenAPI compatible external tool servers.": "", "Connections": "الاتصالات", "Constrains effort on reasoning for reasoning models. Only applicable to reasoning models from specific providers that support reasoning effort.": "يقيّد الجهد في التفكير لنماذج التفكير. ينطبق فقط على نماذج التفكير من مقدمي خدمات محددين يدعمون جهد التفكير.", "Contact Admin for WebUI Access": "اتصل بالمسؤول للوصول إلى واجهة الويب", @@ -270,6 +277,7 @@ "Default Prompt Suggestions": "الإفتراضي Prompt الاقتراحات", "Default to 389 or 636 if TLS is enabled": "الافتراضي هو 389 أو 636 إذا تم تمكين TLS", "Default to ALL": "الافتراضي هو الكل", + "Default to segmented retrieval for focused and relevant content extraction, this is recommended for most cases.": "", "Default User Role": "الإفتراضي صلاحيات المستخدم", "Delete": "حذف", "Delete a model": "حذف الموديل", @@ -292,9 +300,11 @@ "Describe your knowledge base and objectives": "صف قاعدة معرفتك وأهدافك", "Description": "وصف", "Didn't fully follow instructions": "لم أتبع التعليمات بشكل كامل", + "Direct": "", "Direct Connections": "الاتصالات المباشرة", "Direct Connections allow users to connect to their own OpenAI compatible API endpoints.": "تتيح الاتصالات المباشرة للمستخدمين الاتصال بنقاط نهاية API متوافقة مع OpenAI الخاصة بهم.", "Direct Connections settings updated": "تم تحديث إعدادات الاتصالات المباشرة", + "Direct Tool Servers": "", "Disabled": "معطّل", "Discover a function": "اكتشف وظيفة", "Discover a model": "اكتشف نموذجا", @@ -314,6 +324,8 @@ "Dive into knowledge": "انغمس في المعرفة", "Do not install functions from sources you do not fully trust.": "لا تقم بتثبيت الوظائف من مصادر لا تثق بها تمامًا.", "Do not install tools from sources you do not fully trust.": "لا تقم بتثبيت الأدوات من مصادر لا تثق بها تمامًا.", + "Docling": "", + "Docling Server URL required.": "", "Document": "المستند", "Document Intelligence": "تحليل المستندات الذكي", "Document Intelligence endpoint and key required.": "يتطلب نقطة نهاية ومفتاح لتحليل المستندات.", @@ -334,6 +346,7 @@ "Draw": "ارسم", "Drop any files here to add to the conversation": "أسقط أية ملفات هنا لإضافتها إلى المحادثة", "e.g. '30s','10m'. Valid time units are 's', 'm', 'h'.": "e.g. '30s','10m'. الوحدات الزمنية الصالحة هي 's', 'm', 'h'.", + "e.g. \"json\" or a JSON schema": "", "e.g. 60": "مثال: 60", "e.g. A filter to remove profanity from text": "مثال: مرشح لإزالة الألفاظ النابية من النص", "e.g. My Filter": "مثال: مرشحي", @@ -368,6 +381,7 @@ "Enable Mirostat sampling for controlling perplexity.": "تفعيل أخذ عينات Mirostat للتحكم في درجة التعقيد.", "Enable New Sign Ups": "تفعيل عمليات التسجيل الجديدة", "Enabled": "مفعل", + "Enforce Temporary Chat": "", "Ensure your CSV file includes 4 columns in this order: Name, Email, Password, Role.": "تأكد من أن ملف CSV الخاص بك يتضمن 4 أعمدة بهذا الترتيب: Name, Email, Password, Role.", "Enter {{role}} message here": "أدخل رسالة {{role}} هنا", "Enter a detail about yourself for your LLMs to recall": "ادخل معلومات عنك تريد أن يتذكرها الموديل", @@ -384,6 +398,7 @@ "Enter Chunk Size": "أدخل Chunk الحجم", "Enter comma-seperated \"token:bias_value\" pairs (example: 5432:100, 413:-100)": "أدخل أزواج \"الرمز:قيمة التحيز\" مفصولة بفواصل (مثال: 5432:100، 413:-100)", "Enter description": "أدخل الوصف", + "Enter Docling Server URL": "", "Enter Document Intelligence Endpoint": "أدخل نقطة نهاية تحليل المستندات", "Enter Document Intelligence Key": "أدخل مفتاح تحليل المستندات", "Enter domains separated by commas (e.g., example.com,site.org)": "أدخل النطاقات مفصولة بفواصل (مثال: example.com,site.org)", @@ -399,6 +414,7 @@ "Enter Kagi Search API Key": "أدخل مفتاح API لـ Kagi Search", "Enter Key Behavior": "أدخل سلوك المفتاح", "Enter language codes": "أدخل كود اللغة", + "Enter Mistral API Key": "", "Enter Model ID": "أدخل معرف النموذج", "Enter model tag (e.g. {{modelTag}})": "(e.g. {{modelTag}}) أدخل الموديل تاق", "Enter Mojeek Search API Key": "أدخل مفتاح API لـ Mojeek Search", @@ -423,18 +439,21 @@ "Enter server port": "أدخل منفذ الخادم", "Enter stop sequence": "أدخل تسلسل التوقف", "Enter system prompt": "أدخل موجه النظام", + "Enter system prompt here": "", "Enter Tavily API Key": "أدخل مفتاح API لـ Tavily", "Enter the public URL of your WebUI. This URL will be used to generate links in the notifications.": "أدخل الرابط العلني لـ WebUI الخاص بك. سيتم استخدام هذا الرابط لإنشاء روابط داخل الإشعارات.", "Enter Tika Server URL": "أدخل رابط خادم Tika", "Enter timeout in seconds": "أدخل المهلة بالثواني", "Enter to Send": "اضغط Enter للإرسال", "Enter Top K": "أدخل Top K", + "Enter Top K Reranker": "", "Enter URL (e.g. http://127.0.0.1:7860/)": "الرابط (e.g. http://127.0.0.1:7860/)", "Enter URL (e.g. http://localhost:11434)": "URL (e.g. http://localhost:11434)", "Enter your current password": "أدخل كلمة المرور الحالية", "Enter Your Email": "أدخل البريد الاكتروني", "Enter Your Full Name": "أدخل الاسم كامل", "Enter your message": "أدخل رسالتك", + "Enter your name": "", "Enter your new password": "أدخل كلمة المرور الجديدة", "Enter Your Password": "ادخل كلمة المرور", "Enter Your Role": "أدخل الصلاحيات", @@ -454,6 +473,7 @@ "Exceeded the number of seats in your license. Please contact support to increase the number of seats.": "تجاوزت عدد المقاعد المسموح بها في الترخيص. يرجى الاتصال بالدعم لزيادتها.", "Exclude": "استبعاد", "Execute code for analysis": "تنفيذ الكود للتحليل", + "Executing **{{NAME}}**...": "", "Expand": "توسيع", "Experimental": "تجريبي", "Explain": "شرح", @@ -471,8 +491,10 @@ "Export Prompts": "مطالبات التصدير", "Export to CSV": "تصدير إلى CSV", "Export Tools": "تصدير الأدوات", + "External": "", "External Models": "نماذج خارجية", "Failed to add file.": "فشل في إضافة الملف.", + "Failed to connect to {{URL}} OpenAPI tool server": "", "Failed to create API Key.": "فشل في إنشاء مفتاح API.", "Failed to fetch models": "فشل في جلب النماذج", "Failed to read clipboard contents": "فشل في قراءة محتويات الحافظة", @@ -508,6 +530,7 @@ "Forge new paths": "أنشئ مسارات جديدة", "Form": "نموذج", "Format your variables using brackets like this:": "نسّق متغيراتك باستخدام الأقواس بهذا الشكل:", + "Forwards system user session credentials to authenticate": "", "Frequency Penalty": "عقوبة التردد", "Full Context Mode": "وضع السياق الكامل", "Function": "وظيفة", @@ -553,6 +576,7 @@ "Hex Color": "لون سداسي", "Hex Color - Leave empty for default color": "اللون السداسي - اتركه فارغًا لاستخدام اللون الافتراضي", "Hide": "أخفاء", + "Hide Model": "", "Home": "الصفحة الرئيسية", "Host": "المضيف", "How can I help you today?": "كيف استطيع مساعدتك اليوم؟", @@ -583,12 +607,14 @@ "Include `--api` flag when running stable-diffusion-webui": "قم بتضمين علامة `-api` عند تشغيل Stable-diffusion-webui", "Influences how quickly the algorithm responds to feedback from the generated text. A lower learning rate will result in slower adjustments, while a higher learning rate will make the algorithm more responsive.": "يؤثر على سرعة استجابة الخوارزمية للتغذية الراجعة من النص المُولد. معدل تعلم منخفض يؤدي إلى تعديلات أبطأ، بينما معدل أعلى يجعلها أكثر استجابة.", "Info": "معلومات", + "Inject the entire content as context for comprehensive processing, this is recommended for complex queries.": "", "Input commands": "إدخال الأوامر", "Install from Github URL": "التثبيت من عنوان URL لجيثب", "Instant Auto-Send After Voice Transcription": "إرسال تلقائي فوري بعد تحويل الصوت إلى نص", "Integration": "التكامل", "Interface": "واجهه المستخدم", "Invalid file format.": "تنسيق ملف غير صالح.", + "Invalid JSON schema": "", "Invalid Tag": "تاق غير صالحة", "is typing...": "يكتب...", "January": "يناير", @@ -610,6 +636,7 @@ "Knowledge Access": "الوصول إلى المعرفة", "Knowledge created successfully.": "تم إنشاء المعرفة بنجاح.", "Knowledge deleted successfully.": "تم حذف المعرفة بنجاح.", + "Knowledge Public Sharing": "", "Knowledge reset successfully.": "تم إعادة تعيين المعرفة بنجاح.", "Knowledge updated successfully": "تم تحديث المعرفة بنجاح", "Kokoro.js (Browser)": "Kokoro.js (المتصفح)", @@ -624,8 +651,8 @@ "LDAP server updated": "تم تحديث خادم LDAP", "Leaderboard": "لوحة المتصدرين", "Leave empty for unlimited": "اتركه فارغًا لعدم وجود حد", - "Leave empty to include all models from \"{{URL}}/api/tags\" endpoint": "اتركه فارغًا لتضمين جميع النماذج من نقطة النهاية \"{{URL}}/api/tags\"", - "Leave empty to include all models from \"{{URL}}/models\" endpoint": "اتركه فارغًا لتضمين جميع النماذج من نقطة النهاية \"{{URL}}/models\"", + "Leave empty to include all models from \"{{url}}/api/tags\" endpoint": "", + "Leave empty to include all models from \"{{url}}/models\" endpoint": "", "Leave empty to include all models or select specific models": "اتركه فارغًا لتضمين جميع النماذج أو اختر نماذج محددة", "Leave empty to use the default prompt, or enter a custom prompt": "اتركه فارغًا لاستخدام التوجيه الافتراضي، أو أدخل توجيهًا مخصصًا", "Leave model field empty to use the default model.": "اترك حقل النموذج فارغًا لاستخدام النموذج الافتراضي.", @@ -652,6 +679,7 @@ "Manage Ollama API Connections": "إدارة اتصالات Ollama API", "Manage OpenAI API Connections": "إدارة اتصالات OpenAI API", "Manage Pipelines": "إدارة خطوط الأنابيب", + "Manage Tool Servers": "", "March": "مارس", "Max Tokens (num_predict)": "ماكس توكنز (num_predict)", "Max Upload Count": "الحد الأقصى لعدد التحميلات", @@ -672,12 +700,16 @@ "Mirostat": "Mirostat", "Mirostat Eta": "Mirostat Eta", "Mirostat Tau": "Mirostat Tau", + "Mistral OCR": "", + "Mistral OCR API Key required.": "", "Model": "النموذج", "Model '{{modelName}}' has been successfully downloaded.": "تم تحميل النموذج '{{modelName}}' بنجاح", "Model '{{modelTag}}' is already in queue for downloading.": "النموذج '{{modelTag}}' موجود بالفعل في قائمة الانتظار للتحميل", "Model {{modelId}} not found": "لم يتم العثور على النموذج {{modelId}}.", "Model {{modelName}} is not vision capable": "نموذج {{modelName}} غير قادر على الرؤية", "Model {{name}} is now {{status}}": "نموذج {{name}} هو الآن {{status}}", + "Model {{name}} is now hidden": "", + "Model {{name}} is now visible": "", "Model accepts image inputs": "النموذج يقبل إدخالات الصور", "Model created successfully!": "تم إنشاء النموذج بنجاح!", "Model filesystem path detected. Model shortname is required for update, cannot continue.": "تم اكتشاف مسار نظام الملفات النموذجي. الاسم المختصر للنموذج مطلوب للتحديث، ولا يمكن الاستمرار.", @@ -693,6 +725,7 @@ "Models": "الموديلات", "Models Access": "الوصول إلى النماذج", "Models configuration saved successfully": "تم حفظ إعدادات النماذج بنجاح", + "Models Public Sharing": "", "Mojeek Search API Key": "مفتاح API لـ Mojeek Search", "more": "المزيد", "More": "المزيد", @@ -764,6 +797,7 @@ "OpenAI API Key is required.": "OpenAI API.مطلوب مفتاح ", "OpenAI API settings updated": "تم تحديث إعدادات OpenAI API", "OpenAI URL/Key required.": "URL/مفتاح OpenAI.مطلوب عنوان ", + "openapi.json Path": "", "or": "أو", "Organize your users": "تنظيم المستخدمين الخاصين بك", "Other": "آخر", @@ -806,15 +840,19 @@ "Presence Penalty": "عقوبة التكرار", "Previous 30 days": "أخر 30 يوم", "Previous 7 days": "أخر 7 أيام", + "Private": "", "Profile Image": "صورة الملف الشخصي", "Prompt": "التوجيه", "Prompt (e.g. Tell me a fun fact about the Roman Empire)": "موجه (على سبيل المثال: أخبرني بحقيقة ممتعة عن الإمبراطورية الرومانية)", + "Prompt Autocompletion": "", "Prompt Content": "محتوى عاجل", "Prompt created successfully": "تم إنشاء التوجيه بنجاح", "Prompt suggestions": "اقتراحات سريعة", "Prompt updated successfully": "تم تحديث التوجيه بنجاح", "Prompts": "مطالبات", "Prompts Access": "الوصول إلى التوجيهات", + "Prompts Public Sharing": "", + "Public": "", "Pull \"{{searchValue}}\" from Ollama.com": "Ollama.com \"{{searchValue}}\" أسحب من ", "Pull a model from Ollama.com": "Ollama.com سحب الموديل من ", "Query Generation Prompt": "توجيه إنشاء الاستعلام", @@ -946,9 +984,11 @@ "Share": "كشاركة", "Share Chat": "مشاركة الدردشة", "Share to Open WebUI Community": "OpenWebUI شارك في مجتمع", + "Sharing Permissions": "", "Show": "عرض", "Show \"What's New\" modal on login": "عرض نافذة \"ما الجديد\" عند تسجيل الدخول", "Show Admin Details in Account Pending Overlay": "عرض تفاصيل المشرف في نافذة \"الحساب قيد الانتظار\"", + "Show Model": "", "Show shortcuts": "إظهار الاختصارات", "Show your support!": "أظهر دعمك!", "Showcased creativity": "أظهر الإبداع", @@ -979,6 +1019,7 @@ "System": "النظام", "System Instructions": "تعليمات النظام", "System Prompt": "محادثة النظام", + "Tags": "", "Tags Generation": "إنشاء الوسوم", "Tags Generation Prompt": "توجيه إنشاء الوسوم", "Tail free sampling is used to reduce the impact of less probable tokens from the output. A higher value (e.g., 2.0) will reduce the impact more, while a value of 1.0 disables this setting.": "يتم استخدام أخذ العينات بدون ذيل لتقليل تأثير الرموز الأقل احتمالًا. القيمة الأعلى (مثل 2.0) تقلل التأثير أكثر، والقيمة 1.0 تعطل هذا الإعداد.", @@ -1009,6 +1050,8 @@ "Theme": "الثيم", "Thinking...": "جارٍ التفكير...", "This action cannot be undone. Do you wish to continue?": "لا يمكن التراجع عن هذا الإجراء. هل ترغب في المتابعة؟", + "This channel was created on {{createdAt}}. This is the very beginning of the {{channelName}} channel.": "", + "This chat won’t appear in history and your messages will not be saved.": "", "This ensures that your valuable conversations are securely saved to your backend database. Thank you!": "وهذا يضمن حفظ محادثاتك القيمة بشكل آمن في قاعدة بياناتك الخلفية. شكرًا لك!", "This is an experimental feature, it may not function as expected and is subject to change at any time.": "هذه ميزة تجريبية، وقد لا تعمل كما هو متوقع وقد تتغير في أي وقت.", "This option controls how many tokens are preserved when refreshing the context. For example, if set to 2, the last 2 tokens of the conversation context will be retained. Preserving context can help maintain the continuity of a conversation, but it may reduce the ability to respond to new topics.": "هذا الخيار يحدد عدد الرموز التي يتم الاحتفاظ بها عند تحديث السياق. مثلاً، إذا تم ضبطه على 2، سيتم الاحتفاظ بآخر رمزين من السياق. الحفاظ على السياق يساعد في استمرارية المحادثة، لكنه قد يحد من التفاعل مع مواضيع جديدة.", @@ -1056,6 +1099,7 @@ "Tool ID": "معرف الأداة", "Tool imported successfully": "تم استيراد الأداة بنجاح", "Tool Name": "اسم الأداة", + "Tool Servers": "", "Tool updated successfully": "تم تحديث الأداة بنجاح", "Tools": "الأدوات", "Tools Access": "الوصول إلى الأدوات", @@ -1063,7 +1107,9 @@ "Tools Function Calling Prompt": "توجيه استدعاء وظائف الأدوات", "Tools have a function calling system that allows arbitrary code execution": "تحتوي الأدوات على نظام لاستدعاء الوظائف يتيح تنفيذ كود برمجي مخصص", "Tools have a function calling system that allows arbitrary code execution.": "تحتوي الأدوات على نظام لاستدعاء الوظائف يتيح تنفيذ كود برمجي مخصص.", + "Tools Public Sharing": "", "Top K": "Top K", + "Top K Reranker": "", "Top P": "Top P", "Transformers": "Transformers", "Trouble accessing Ollama?": "هل تواجه مشكلة في الوصول", @@ -1108,6 +1154,7 @@ "user": "مستخدم", "User": "مستخدم", "User location successfully retrieved.": "تم استرجاع موقع المستخدم بنجاح.", + "User Webhooks": "", "Username": "اسم المستخدم", "Users": "المستخدمين", "Using the default arena model with all models. Click the plus button to add custom models.": "يتم استخدام نموذج الساحة الافتراضي مع جميع النماذج. اضغط على زر + لإضافة نماذج مخصصة.", @@ -1118,9 +1165,11 @@ "Valves updated successfully": "تم تحديث الصمامات بنجاح", "variable": "المتغير", "variable to have them replaced with clipboard content.": "متغير لاستبدالها بمحتوى الحافظة.", + "Verify Connection": "", "Version": "إصدار", "Version {{selectedVersion}} of {{totalVersions}}": "الإصدار {{selectedVersion}} من {{totalVersions}}", "View Replies": "عرض الردود", + "View Result from **{{NAME}}**": "", "Visibility": "مستوى الظهور", "Voice": "الصوت", "Voice Input": "إدخال صوتي", @@ -1138,6 +1187,7 @@ "Webhook URL": "Webhook الرابط", "WebUI Settings": "WebUI اعدادات", "WebUI URL": "رابط WebUI", + "WebUI will make requests to \"{{url}}{{path}}\"": "", "WebUI will make requests to \"{{url}}/api/chat\"": "ستقوم WebUI بإرسال الطلبات إلى \"{{url}}/api/chat\"", "WebUI will make requests to \"{{url}}/chat/completions\"": "ستقوم WebUI بإرسال الطلبات إلى \"{{url}}/chat/completions\"", "What are you trying to achieve?": "ما الذي تحاول تحقيقه؟", @@ -1163,7 +1213,6 @@ "You can only chat with a maximum of {{maxCount}} file(s) at a time.": "يمكنك الدردشة مع {{maxCount}} ملف(ات) كحد أقصى في نفس الوقت.", "You can personalize your interactions with LLMs by adding memories through the 'Manage' button below, making them more helpful and tailored to you.": "يمكنك تخصيص تفاعلك مع النماذج اللغوية عن طريق إضافة الذكريات باستخدام زر \"إدارة\" أدناه، مما يجعلها أكثر فائدة وتناسبًا لك.", "You cannot upload an empty file.": "لا يمكنك رفع ملف فارغ.", - "You do not have permission to access this feature.": "ليس لديك صلاحية للوصول إلى هذه الميزة.", "You do not have permission to upload files": "ليس لديك صلاحية لرفع الملفات", "You do not have permission to upload files.": "ليس لديك صلاحية لرفع الملفات.", "You have no archived conversations.": "لا تملك محادثات محفوظه", @@ -1175,4 +1224,4 @@ "Youtube": "Youtube", "Youtube Language": "لغة YouTube", "Youtube Proxy URL": "رابط بروكسي YouTube" - } \ No newline at end of file +} diff --git a/src/lib/i18n/locales/bg-BG/translation.json b/src/lib/i18n/locales/bg-BG/translation.json index 77f5d15ff..292e7faf3 100644 --- a/src/lib/i18n/locales/bg-BG/translation.json +++ b/src/lib/i18n/locales/bg-BG/translation.json @@ -6,7 +6,7 @@ "(latest)": "(последна)", "(Ollama)": "", "{{ models }}": "{{ models }}", - "{{COUNT}} Available Tool Servers": "", + "{{COUNT}} Available Tools": "", "{{COUNT}} hidden lines": "", "{{COUNT}} Replies": "{{COUNT}} Отговори", "{{user}}'s Chats": "{{user}}'s чатове", @@ -108,6 +108,7 @@ "Attribute for Username": "Атрибут за потребителско име", "Audio": "Аудио", "August": "Август", + "Auth": "", "Authenticate": "Удостоверяване", "Authentication": "Автентикация", "Auto-Copy Response to Clipboard": "Автоматично копиране на отговор в клипборда", @@ -119,7 +120,7 @@ "AUTOMATIC1111 Base URL": "AUTOMATIC1111 Базов URL", "AUTOMATIC1111 Base URL is required.": "AUTOMATIC1111 Базов URL е задължителен.", "Available list": "Наличен списък", - "Available Tool Servers": "", + "Available Tools": "", "available!": "наличен!", "Awful": "Ужасно", "Azure AI Speech": "Azure AI Реч", @@ -303,6 +304,7 @@ "Direct Connections": "Директни връзки", "Direct Connections allow users to connect to their own OpenAI compatible API endpoints.": "Директните връзки позволяват на потребителите да се свързват със собствени OpenAI съвместими API крайни точки.", "Direct Connections settings updated": "Настройките за директни връзки са актуализирани", + "Direct Tool Servers": "", "Disabled": "Деактивирано", "Discover a function": "Открийте функция", "Discover a model": "Открийте модел", @@ -412,6 +414,7 @@ "Enter Kagi Search API Key": "Въведете API ключ за Kagi Search", "Enter Key Behavior": "", "Enter language codes": "Въведете кодове на езика", + "Enter Mistral API Key": "", "Enter Model ID": "Въведете ID на модела", "Enter model tag (e.g. {{modelTag}})": "Въведете таг на модел (напр. {{modelTag}})", "Enter Mojeek Search API Key": "Въведете API ключ за Mojeek Search", @@ -436,6 +439,7 @@ "Enter server port": "Въведете порт на сървъра", "Enter stop sequence": "Въведете стоп последователност", "Enter system prompt": "Въведете системен промпт", + "Enter system prompt here": "", "Enter Tavily API Key": "Въведете API ключ за Tavily", "Enter the public URL of your WebUI. This URL will be used to generate links in the notifications.": "Въведете публичния URL адрес на вашия WebUI. Този URL адрес ще бъде използван за генериране на връзки в известията.", "Enter Tika Server URL": "Въведете URL адрес на Tika сървър", @@ -449,6 +453,7 @@ "Enter Your Email": "Въведете имейл", "Enter Your Full Name": "Въведете вашето пълно име", "Enter your message": "Въведете съобщението си", + "Enter your name": "", "Enter your new password": "Въведете новата си парола", "Enter Your Password": "Въведете вашата парола", "Enter Your Role": "Въведете вашата роля", @@ -468,7 +473,7 @@ "Exceeded the number of seats in your license. Please contact support to increase the number of seats.": "", "Exclude": "Изключи", "Execute code for analysis": "Изпълнете код за анализ", - "Executing `{{NAME}}`...": "", + "Executing **{{NAME}}**...": "", "Expand": "", "Experimental": "Експериментално", "Explain": "", @@ -525,6 +530,7 @@ "Forge new paths": "Изковете нови пътища", "Form": "Форма", "Format your variables using brackets like this:": "Форматирайте вашите променливи, използвайки скоби като това:", + "Forwards system user session credentials to authenticate": "", "Frequency Penalty": "Наказание за честота", "Full Context Mode": "Режим на пълен контекст", "Function": "Функция", @@ -694,6 +700,8 @@ "Mirostat": "Mirostat", "Mirostat Eta": "Mirostat Eta", "Mirostat Tau": "Mirostat Tau", + "Mistral OCR": "", + "Mistral OCR API Key required.": "", "Model": "Модел", "Model '{{modelName}}' has been successfully downloaded.": "Моделът '{{modelName}}' беше успешно свален.", "Model '{{modelTag}}' is already in queue for downloading.": "Моделът '{{modelTag}}' е вече в очакване за сваляне.", @@ -789,6 +797,7 @@ "OpenAI API Key is required.": "OpenAI API ключ е задължителен.", "OpenAI API settings updated": "Настройките на OpenAI API са актуализирани", "OpenAI URL/Key required.": "OpenAI URL/Key е задължителен.", + "openapi.json Path": "", "or": "или", "Organize your users": "Организирайте вашите потребители", "Other": "Друго", @@ -1042,6 +1051,7 @@ "Thinking...": "Мисля...", "This action cannot be undone. Do you wish to continue?": "Това действие не може да бъде отменено. Желаете ли да продължите?", "This channel was created on {{createdAt}}. This is the very beginning of the {{channelName}} channel.": "", + "This chat won’t appear in history and your messages will not be saved.": "", "This ensures that your valuable conversations are securely saved to your backend database. Thank you!": "Това гарантира, че ценните ви разговори се запазват сигурно във вашата бекенд база данни. Благодарим ви!", "This is an experimental feature, it may not function as expected and is subject to change at any time.": "Това е експериментална функция, може да не работи според очакванията и подлежи на промяна по всяко време.", "This option controls how many tokens are preserved when refreshing the context. For example, if set to 2, the last 2 tokens of the conversation context will be retained. Preserving context can help maintain the continuity of a conversation, but it may reduce the ability to respond to new topics.": "", @@ -1089,6 +1099,7 @@ "Tool ID": "ID на инструмента", "Tool imported successfully": "Инструментът е импортиран успешно", "Tool Name": "Име на инструмента", + "Tool Servers": "", "Tool updated successfully": "Инструментът е актуализиран успешно", "Tools": "Инструменти", "Tools Access": "Достъп до инструменти", @@ -1158,7 +1169,7 @@ "Version": "Версия", "Version {{selectedVersion}} of {{totalVersions}}": "Версия {{selectedVersion}} от {{totalVersions}}", "View Replies": "Преглед на отговорите", - "View Result from `{{NAME}}`": "", + "View Result from **{{NAME}}**": "", "Visibility": "Видимост", "Voice": "Глас", "Voice Input": "Гласов вход", @@ -1176,9 +1187,9 @@ "Webhook URL": "Уебхук URL", "WebUI Settings": "WebUI Настройки", "WebUI URL": "WebUI URL", + "WebUI will make requests to \"{{url}}{{path}}\"": "", "WebUI will make requests to \"{{url}}/api/chat\"": "WebUI ще прави заявки към \"{{url}}/api/chat\"", "WebUI will make requests to \"{{url}}/chat/completions\"": "WebUI ще прави заявки към \"{{url}}/chat/completions\"", - "WebUI will make requests to \"{{url}}/openapi.json\"": "", "What are you trying to achieve?": "Какво се опитвате да постигнете?", "What are you working on?": "Върху какво работите?", "What’s New in": "", diff --git a/src/lib/i18n/locales/bn-BD/translation.json b/src/lib/i18n/locales/bn-BD/translation.json index 71b95d74e..ae46b09cd 100644 --- a/src/lib/i18n/locales/bn-BD/translation.json +++ b/src/lib/i18n/locales/bn-BD/translation.json @@ -6,7 +6,7 @@ "(latest)": "(সর্বশেষ)", "(Ollama)": "", "{{ models }}": "{{ মডেল}}", - "{{COUNT}} Available Tool Servers": "", + "{{COUNT}} Available Tools": "", "{{COUNT}} hidden lines": "", "{{COUNT}} Replies": "", "{{user}}'s Chats": "{{user}}র চ্যাটস", @@ -108,6 +108,7 @@ "Attribute for Username": "", "Audio": "অডিও", "August": "আগস্ট", + "Auth": "", "Authenticate": "", "Authentication": "", "Auto-Copy Response to Clipboard": "রেসপন্সগুলো স্বয়ংক্রিভাবে ক্লিপবোর্ডে কপি হবে", @@ -119,7 +120,7 @@ "AUTOMATIC1111 Base URL": "AUTOMATIC1111 বেজ ইউআরএল", "AUTOMATIC1111 Base URL is required.": "AUTOMATIC1111 বেজ ইউআরএল আবশ্যক", "Available list": "", - "Available Tool Servers": "", + "Available Tools": "", "available!": "উপলব্ধ!", "Awful": "", "Azure AI Speech": "", @@ -303,6 +304,7 @@ "Direct Connections": "", "Direct Connections allow users to connect to their own OpenAI compatible API endpoints.": "", "Direct Connections settings updated": "", + "Direct Tool Servers": "", "Disabled": "", "Discover a function": "", "Discover a model": "একটি মডেল আবিষ্কার করুন", @@ -412,6 +414,7 @@ "Enter Kagi Search API Key": "", "Enter Key Behavior": "", "Enter language codes": "ল্যাঙ্গুয়েজ কোড লিখুন", + "Enter Mistral API Key": "", "Enter Model ID": "", "Enter model tag (e.g. {{modelTag}})": "মডেল ট্যাগ লিখুন (e.g. {{modelTag}})", "Enter Mojeek Search API Key": "", @@ -436,6 +439,7 @@ "Enter server port": "", "Enter stop sequence": "স্টপ সিকোয়েন্স লিখুন", "Enter system prompt": "", + "Enter system prompt here": "", "Enter Tavily API Key": "", "Enter the public URL of your WebUI. This URL will be used to generate links in the notifications.": "", "Enter Tika Server URL": "", @@ -449,6 +453,7 @@ "Enter Your Email": "আপনার ইমেইল লিখুন", "Enter Your Full Name": "আপনার পূর্ণ নাম লিখুন", "Enter your message": "", + "Enter your name": "", "Enter your new password": "", "Enter Your Password": "আপনার পাসওয়ার্ড লিখুন", "Enter Your Role": "আপনার রোল লিখুন", @@ -468,7 +473,7 @@ "Exceeded the number of seats in your license. Please contact support to increase the number of seats.": "", "Exclude": "", "Execute code for analysis": "", - "Executing `{{NAME}}`...": "", + "Executing **{{NAME}}**...": "", "Expand": "", "Experimental": "পরিক্ষামূলক", "Explain": "", @@ -525,6 +530,7 @@ "Forge new paths": "", "Form": "", "Format your variables using brackets like this:": "", + "Forwards system user session credentials to authenticate": "", "Frequency Penalty": "ফ্রিকোয়েন্সি পেনাল্টি", "Full Context Mode": "", "Function": "", @@ -694,6 +700,8 @@ "Mirostat": "Mirostat", "Mirostat Eta": "Mirostat Eta", "Mirostat Tau": "Mirostat Tau", + "Mistral OCR": "", + "Mistral OCR API Key required.": "", "Model": "", "Model '{{modelName}}' has been successfully downloaded.": "'{{modelName}}' মডেল সফলভাবে ডাউনলোড হয়েছে।", "Model '{{modelTag}}' is already in queue for downloading.": "{{modelTag}} ডাউনলোডের জন্য আগে থেকেই অপেক্ষমান আছে।", @@ -789,6 +797,7 @@ "OpenAI API Key is required.": "OpenAI API কোড আবশ্যক", "OpenAI API settings updated": "", "OpenAI URL/Key required.": "OpenAI URL/Key আবশ্যক", + "openapi.json Path": "", "or": "অথবা", "Organize your users": "", "Other": "অন্যান্য", @@ -1042,6 +1051,7 @@ "Thinking...": "", "This action cannot be undone. Do you wish to continue?": "", "This channel was created on {{createdAt}}. This is the very beginning of the {{channelName}} channel.": "", + "This chat won’t appear in history and your messages will not be saved.": "", "This ensures that your valuable conversations are securely saved to your backend database. Thank you!": "এটা নিশ্চিত করে যে, আপনার গুরুত্বপূর্ণ আলোচনা নিরাপদে আপনার ব্যাকএন্ড ডেটাবেজে সংরক্ষিত আছে। ধন্যবাদ!", "This is an experimental feature, it may not function as expected and is subject to change at any time.": "", "This option controls how many tokens are preserved when refreshing the context. For example, if set to 2, the last 2 tokens of the conversation context will be retained. Preserving context can help maintain the continuity of a conversation, but it may reduce the ability to respond to new topics.": "", @@ -1089,6 +1099,7 @@ "Tool ID": "", "Tool imported successfully": "", "Tool Name": "", + "Tool Servers": "", "Tool updated successfully": "", "Tools": "", "Tools Access": "", @@ -1158,7 +1169,7 @@ "Version": "ভার্সন", "Version {{selectedVersion}} of {{totalVersions}}": "", "View Replies": "", - "View Result from `{{NAME}}`": "", + "View Result from **{{NAME}}**": "", "Visibility": "", "Voice": "", "Voice Input": "", @@ -1176,9 +1187,9 @@ "Webhook URL": "ওয়েবহুক URL", "WebUI Settings": "WebUI সেটিংসমূহ", "WebUI URL": "", + "WebUI will make requests to \"{{url}}{{path}}\"": "", "WebUI will make requests to \"{{url}}/api/chat\"": "", "WebUI will make requests to \"{{url}}/chat/completions\"": "", - "WebUI will make requests to \"{{url}}/openapi.json\"": "", "What are you trying to achieve?": "", "What are you working on?": "", "What’s New in": "এতে নতুন কী", diff --git a/src/lib/i18n/locales/bo-TB/translation.json b/src/lib/i18n/locales/bo-TB/translation.json index 60569a6db..c6e3d030f 100644 --- a/src/lib/i18n/locales/bo-TB/translation.json +++ b/src/lib/i18n/locales/bo-TB/translation.json @@ -6,7 +6,7 @@ "(latest)": "(ཆེས་གསར།)", "(Ollama)": "(Ollama)", "{{ models }}": "{{ models }}", - "{{COUNT}} Available Tool Servers": "ལག་ཆ་ {{COUNT}} ཡོད།", + "{{COUNT}} Available Tools": "", "{{COUNT}} hidden lines": "ཡིག་ཕྲེང་ {{COUNT}} སྦས་ཡོད།", "{{COUNT}} Replies": "ལན་ {{COUNT}}", "{{user}}'s Chats": "{{user}} ཡི་ཁ་བརྡ།", @@ -108,6 +108,7 @@ "Attribute for Username": "བེད་སྤྱོད་མིང་གི་ཁྱད་ཆོས།", "Audio": "སྒྲ།", "August": "ཟླ་བརྒྱད་པ།", + "Auth": "", "Authenticate": "དངོས་ར་སྤྲོད་པ།", "Authentication": "དངོས་ར་སྤྲོད་པ།", "Auto-Copy Response to Clipboard": "ལན་རང་འགུལ་གྱིས་སྦྱར་སྡེར་དུ་འདྲ་བཤུས་བྱེད་པ།", @@ -119,7 +120,7 @@ "AUTOMATIC1111 Base URL": "AUTOMATIC1111 གཞི་རྩའི་ URL", "AUTOMATIC1111 Base URL is required.": "AUTOMATIC1111 གཞི་རྩའི་ URL ངེས་པར་དུ་དགོས།", "Available list": "ཡོད་པའི་ཐོ་གཞུང་།", - "Available Tool Servers": "ཡོད་པའི་ལག་ཆའི་སར་བར།", + "Available Tools": "", "available!": "ཡོད།", "Awful": "ཧ་ཅང་སྡུག", "Azure AI Speech": "Azure AI སྐད་ཆ།", @@ -303,6 +304,7 @@ "Direct Connections": "ཐད་ཀར་སྦྲེལ་མཐུད།", "Direct Connections allow users to connect to their own OpenAI compatible API endpoints.": "ཐད་ཀར་སྦྲེལ་མཐུད་ཀྱིས་བེད་སྤྱོད་མཁན་ཚོར་ཁོ་ཚོའི་རང་གི་ OpenAI དང་མཐུན་པའི་ API མཇུག་མཐུད་ལ་སྦྲེལ་བར་གནང་བ་སྤྲོད།", "Direct Connections settings updated": "ཐད་ཀར་སྦྲེལ་མཐུད་ཀྱི་སྒྲིག་འགོད་གསར་སྒྱུར་བྱས།", + "Direct Tool Servers": "", "Disabled": "ནུས་མེད།", "Discover a function": "ལས་འགན་ཞིག་རྙེད་པ།", "Discover a model": "དཔེ་དབྱིབས་ཤིག་རྙེད་པ།", @@ -412,6 +414,7 @@ "Enter Kagi Search API Key": "Kagi Search API ལྡེ་མིག་འཇུག་པ།", "Enter Key Behavior": "ལྡེ་མིག་གི་བྱེད་སྟངས་འཇུག་པ།", "Enter language codes": "སྐད་ཡིག་གི་ཨང་རྟགས་འཇུག་པ།", + "Enter Mistral API Key": "", "Enter Model ID": "དཔེ་དབྱིབས་ཀྱི་ ID འཇུག་པ།", "Enter model tag (e.g. {{modelTag}})": "དཔེ་དབྱིབས་ཀྱི་རྟགས་འཇུག་པ། (དཔེར་ན། {{modelTag}})", "Enter Mojeek Search API Key": "Mojeek Search API ལྡེ་མིག་འཇུག་པ།", @@ -436,6 +439,7 @@ "Enter server port": "སར་བར་གྱི་ Port འཇུག་པ།", "Enter stop sequence": "མཚམས་འཇོག་རིམ་པ་འཇུག་པ།", "Enter system prompt": "མ་ལག་གི་འགུལ་སློང་འཇུག་པ།", + "Enter system prompt here": "", "Enter Tavily API Key": "Tavily API ལྡེ་མིག་འཇུག་པ།", "Enter the public URL of your WebUI. This URL will be used to generate links in the notifications.": "ཁྱེད་ཀྱི་ WebUI ཡི་སྤྱི་སྤྱོད་ URL འཇུག་པ། URL འདི་བརྡ་ཁྱབ་ནང་སྦྲེལ་ཐག་བཟོ་བར་བེད་སྤྱོད་བྱེད་ངེས།", "Enter Tika Server URL": "Tika Server URL འཇུག་པ།", @@ -449,6 +453,7 @@ "Enter Your Email": "ཁྱེད་ཀྱི་ཡིག་ཟམ་འཇུག་པ།", "Enter Your Full Name": "ཁྱེད་ཀྱི་མིང་ཆ་ཚང་འཇུག་པ།", "Enter your message": "ཁྱེད་ཀྱི་འཕྲིན་འཇུག་པ།", + "Enter your name": "", "Enter your new password": "ཁྱེད་ཀྱི་གསང་གྲངས་གསར་པ་འཇུག་པ།", "Enter Your Password": "ཁྱེད་ཀྱི་གསང་གྲངས་འཇུག་པ།", "Enter Your Role": "ཁྱེད་ཀྱི་གནས་ཚད་འཇུག་པ།", @@ -468,7 +473,7 @@ "Exceeded the number of seats in your license. Please contact support to increase the number of seats.": "ཁྱེད་ཀྱི་ཆོག་མཆན་ནང་གི་སྟེགས་གྲངས་ལས་བརྒལ་སོང་། སྟེགས་གྲངས་མང་དུ་གཏོང་བར་རོགས་སྐྱོར་དང་འབྲེལ་གཏུག་བྱེད་རོགས།", "Exclude": "ཕུད་པ།", "Execute code for analysis": "དབྱེ་ཞིབ་ཆེད་དུ་ཀོཌ་ལག་བསྟར་བྱེད་པ།", - "Executing `{{NAME}}`...": "`{{NAME}}` ལག་བསྟར་བྱེད་བཞིན་པ།...", + "Executing **{{NAME}}**...": "", "Expand": "རྒྱ་བསྐྱེད་པ།", "Experimental": "ཚོད་ལྟའི་རང་བཞིན།", "Explain": "འགྲེལ་བཤད།", @@ -525,6 +530,7 @@ "Forge new paths": "ལམ་བུ་གསར་པ་བཟོ་བ།", "Form": "རེའུ་མིག", "Format your variables using brackets like this:": "ཁྱེད་ཀྱི་འགྱུར་ཚད་དེ་འདི་ལྟར་གུག་རྟགས་བེད་སྤྱོད་ནས་བཀོད་སྒྲིག་བྱེད་པ།:", + "Forwards system user session credentials to authenticate": "", "Frequency Penalty": "ཡང་ཟློས་ཀྱི་ཆད་པ།", "Full Context Mode": "ནང་དོན་ཆ་ཚང་མ་དཔེ།", "Function": "ལས་འགན།", @@ -694,6 +700,8 @@ "Mirostat": "Mirostat", "Mirostat Eta": "Mirostat Eta", "Mirostat Tau": "Mirostat Tau", + "Mistral OCR": "", + "Mistral OCR API Key required.": "", "Model": "དཔེ་དབྱིབས།", "Model '{{modelName}}' has been successfully downloaded.": "དཔེ་དབྱིབས། '{{modelName}}' ལེགས་པར་ཕབ་ལེན་བྱས་ཟིན།", "Model '{{modelTag}}' is already in queue for downloading.": "དཔེ་དབྱིབས། '{{modelTag}}' ཕབ་ལེན་གྱི་སྒུག་ཐོ་ནང་ཡོད་ཟིན།", @@ -789,6 +797,7 @@ "OpenAI API Key is required.": "OpenAI API ལྡེ་མིག་དགོས་ངེས།", "OpenAI API settings updated": "OpenAI API སྒྲིག་འགོད་གསར་སྒྱུར་བྱས།", "OpenAI URL/Key required.": "OpenAI URL/ལྡེ་མིག་དགོས་ངེས།", + "openapi.json Path": "", "or": "ཡང་ན།", "Organize your users": "ཁྱེད་ཀྱི་བེད་སྤྱོད་མཁན་སྒྲིག་འཛུགས།", "Other": "གཞན།", @@ -1042,6 +1051,7 @@ "Thinking...": "བསམ་བཞིན་པ།...", "This action cannot be undone. Do you wish to continue?": "བྱ་སྤྱོད་འདི་ཕྱིར་ལྡོག་བྱེད་མི་ཐུབ། ཁྱེད་མུ་མཐུད་འདོད་ཡོད་དམ།", "This channel was created on {{createdAt}}. This is the very beginning of the {{channelName}} channel.": "བགྲོ་གླེང་འདི་ {{createdAt}} ལ་བཟོས་པ། འདི་ནི་ {{channelName}} བགྲོ་གླེང་གི་ཐོག་མ་རང་ཡིན།", + "This chat won’t appear in history and your messages will not be saved.": "", "This ensures that your valuable conversations are securely saved to your backend database. Thank you!": "འདིས་ཁྱེད་ཀྱི་རྩ་ཆེའི་ཁ་བརྡ་དག་བདེ་འཇགས་ངང་ཁྱེད་ཀྱི་རྒྱབ་སྣེ་གནས་ཚུལ་མཛོད་དུ་ཉར་ཚགས་བྱེད་པ་ཁག་ཐེག་བྱེད། ཐུགས་རྗེ་ཆེ།", "This is an experimental feature, it may not function as expected and is subject to change at any time.": "འདི་ནི་ཚོད་ལྟའི་རང་བཞིན་གྱི་ཁྱད་ཆོས་ཤིག་ཡིན། དེ་རེ་སྒུག་ལྟར་ལས་ཀ་བྱེད་མི་སྲིད། དེ་མིན་དུས་ཚོད་གང་རུང་ལ་འགྱུར་བ་འགྲོ་སྲིད།", "This option controls how many tokens are preserved when refreshing the context. For example, if set to 2, the last 2 tokens of the conversation context will be retained. Preserving context can help maintain the continuity of a conversation, but it may reduce the ability to respond to new topics.": "འདེམས་ཀ་འདིས་ནང་དོན་གསར་སྒྱུར་བྱེད་སྐབས་ཊོཀ་ཀེན་ག་ཚོད་ཉར་ཚགས་བྱེད་དགོས་ཚོད་འཛིན་བྱེད། དཔེར་ན། གལ་ཏེ་ ༢ ལ་བཀོད་སྒྲིག་བྱས་ན། ཁ་བརྡའི་ནང་དོན་གྱི་ཊོཀ་ཀེན་མཐའ་མ་ ༢ ཉར་ཚགས་བྱེད་ངེས། ནང་དོན་ཉར་ཚགས་བྱས་ན་ཁ་བརྡའི་རྒྱུན་མཐུད་རང་བཞིན་རྒྱུན་སྲུང་བྱེད་པར་རོགས་པ་བྱེད་ཐུབ། འོན་ཀྱང་དེས་བརྗོད་གཞི་གསར་པར་ལན་འདེབས་བྱེད་པའི་ནུས་པ་ཉུང་དུ་གཏོང་སྲིད།", @@ -1089,6 +1099,7 @@ "Tool ID": "ལག་ཆའི་ ID", "Tool imported successfully": "ལག་ཆ་ལེགས་པར་ནང་འདྲེན་བྱས།", "Tool Name": "ལག་ཆའི་མིང་།", + "Tool Servers": "", "Tool updated successfully": "ལག་ཆ་ལེགས་པར་གསར་སྒྱུར་བྱས།", "Tools": "ལག་ཆ།", "Tools Access": "ལག་ཆར་འཛུལ་སྤྱོད།", @@ -1158,7 +1169,7 @@ "Version": "པར་གཞི།", "Version {{selectedVersion}} of {{totalVersions}}": "པར་གཞི་ {{selectedVersion}} ། {{totalVersions}} ནས།", "View Replies": "ལན་ལྟ་བ།", - "View Result from `{{NAME}}`": "`{{NAME}}` ནས་འབྲས་བུ་ལྟ་བ།", + "View Result from **{{NAME}}**": "", "Visibility": "མཐོང་ཐུབ་རང་བཞིན།", "Voice": "སྐད།", "Voice Input": "སྐད་ཀྱི་ནང་འཇུག", @@ -1176,9 +1187,9 @@ "Webhook URL": "Webhook URL", "WebUI Settings": "WebUI སྒྲིག་འགོད།", "WebUI URL": "WebUI URL", + "WebUI will make requests to \"{{url}}{{path}}\"": "", "WebUI will make requests to \"{{url}}/api/chat\"": "WebUI ཡིས་ \"{{url}}/api/chat\" ལ་རེ་ཞུ་གཏོང་ངེས།", "WebUI will make requests to \"{{url}}/chat/completions\"": "WebUI ཡིས་ \"{{url}}/chat/completions\" ལ་རེ་ཞུ་གཏོང་ངེས།", - "WebUI will make requests to \"{{url}}/openapi.json\"": "WebUI ཡིས་ \"{{url}}/openapi.json\" ལ་རེ་ཞུ་གཏོང་ངེས།", "What are you trying to achieve?": "ཁྱེད་ཀྱིས་ཅི་ཞིག་འགྲུབ་ཐབས་བྱེད་བཞིན་ཡོད།", "What are you working on?": "ཁྱེད་ཀྱིས་ཅི་ཞིག་ལས་ཀ་བྱེད་བཞིན་ཡོད།", "What’s New in": "གསར་པ་ཅི་ཡོད།", diff --git a/src/lib/i18n/locales/ca-ES/translation.json b/src/lib/i18n/locales/ca-ES/translation.json index 09000a7da..8c1f87865 100644 --- a/src/lib/i18n/locales/ca-ES/translation.json +++ b/src/lib/i18n/locales/ca-ES/translation.json @@ -6,7 +6,7 @@ "(latest)": "(últim)", "(Ollama)": "(Ollama)", "{{ models }}": "{{ models }}", - "{{COUNT}} Available Tool Servers": "{{COUNT}} Servidors d'eines disponibles", + "{{COUNT}} Available Tools": "", "{{COUNT}} hidden lines": "{{COUNT}} línies ocultes", "{{COUNT}} Replies": "{{COUNT}} respostes", "{{user}}'s Chats": "Els xats de {{user}}", @@ -108,6 +108,7 @@ "Attribute for Username": "Atribut per al Nom d'usuari", "Audio": "Àudio", "August": "Agost", + "Auth": "", "Authenticate": "Autenticar", "Authentication": "Autenticació", "Auto-Copy Response to Clipboard": "Copiar la resposta automàticament al porta-retalls", @@ -119,7 +120,7 @@ "AUTOMATIC1111 Base URL": "URL Base d'AUTOMATIC1111", "AUTOMATIC1111 Base URL is required.": "Es requereix l'URL Base d'AUTOMATIC1111.", "Available list": "Llista de disponibles", - "Available Tool Servers": "Servidors d'eines disponibles", + "Available Tools": "", "available!": "disponible!", "Awful": "Terrible", "Azure AI Speech": "Azure AI Speech", @@ -303,6 +304,7 @@ "Direct Connections": "Connexions directes", "Direct Connections allow users to connect to their own OpenAI compatible API endpoints.": "Les connexions directes permeten als usuaris connectar-se als seus propis endpoints d'API compatibles amb OpenAI.", "Direct Connections settings updated": "Configuració de les connexions directes actualitzada", + "Direct Tool Servers": "", "Disabled": "Deshabilitat", "Discover a function": "Descobrir una funció", "Discover a model": "Descobrir un model", @@ -412,6 +414,7 @@ "Enter Kagi Search API Key": "Introdueix la clau API de Kagi Search", "Enter Key Behavior": "Introdueix el comportament de clau", "Enter language codes": "Introdueix els codis de llenguatge", + "Enter Mistral API Key": "", "Enter Model ID": "Introdueix l'identificador del model", "Enter model tag (e.g. {{modelTag}})": "Introdueix l'etiqueta del model (p. ex. {{modelTag}})", "Enter Mojeek Search API Key": "Introdueix la clau API de Mojeek Search", @@ -436,6 +439,7 @@ "Enter server port": "Introdueix el port del servidor", "Enter stop sequence": "Introdueix la seqüència de parada", "Enter system prompt": "Introdueix la indicació de sistema", + "Enter system prompt here": "", "Enter Tavily API Key": "Introdueix la clau API de Tavily", "Enter the public URL of your WebUI. This URL will be used to generate links in the notifications.": "Entra la URL pública de WebUI. Aquesta URL s'utilitzarà per generar els enllaços en les notificacions.", "Enter Tika Server URL": "Introdueix l'URL del servidor Tika", @@ -449,6 +453,7 @@ "Enter Your Email": "Introdueix el teu correu electrònic", "Enter Your Full Name": "Introdueix el teu nom complet", "Enter your message": "Introdueix el teu missatge", + "Enter your name": "", "Enter your new password": "Introdueix la teva nova contrasenya", "Enter Your Password": "Introdueix la teva contrasenya", "Enter Your Role": "Introdueix el teu rol", @@ -468,7 +473,7 @@ "Exceeded the number of seats in your license. Please contact support to increase the number of seats.": "S'ha superat el nombre de places a la vostra llicència. Poseu-vos en contacte amb el servei d'assistència per augmentar el nombre de places.", "Exclude": "Excloure", "Execute code for analysis": "Executar el codi per analitzar-lo", - "Executing `{{NAME}}`...": "Executant `{{NAME}}`...", + "Executing **{{NAME}}**...": "", "Expand": "Expandir", "Experimental": "Experimental", "Explain": "Explicar", @@ -525,6 +530,7 @@ "Forge new paths": "Crea nous camins", "Form": "Formulari", "Format your variables using brackets like this:": "Formata les teves variables utilitzant claudàtors així:", + "Forwards system user session credentials to authenticate": "", "Frequency Penalty": "Penalització per freqüència", "Full Context Mode": "Mode de context complert", "Function": "Funció", @@ -694,6 +700,8 @@ "Mirostat": "Mirostat", "Mirostat Eta": "Eta de Mirostat", "Mirostat Tau": "Tau de Mirostat", + "Mistral OCR": "", + "Mistral OCR API Key required.": "", "Model": "Model", "Model '{{modelName}}' has been successfully downloaded.": "El model '{{modelName}}' s'ha descarregat correctament.", "Model '{{modelTag}}' is already in queue for downloading.": "El model '{{modelTag}}' ja està en cua per ser descarregat.", @@ -789,6 +797,7 @@ "OpenAI API Key is required.": "Es requereix la clau API d'OpenAI.", "OpenAI API settings updated": "Configuració de l'API d'OpenAI actualitzada", "OpenAI URL/Key required.": "URL/Clau d'OpenAI requerides.", + "openapi.json Path": "", "or": "o", "Organize your users": "Organitza els teus usuaris", "Other": "Altres", @@ -1042,6 +1051,7 @@ "Thinking...": "Pensant...", "This action cannot be undone. Do you wish to continue?": "Aquesta acció no es pot desfer. Vols continuar?", "This channel was created on {{createdAt}}. This is the very beginning of the {{channelName}} channel.": "Aquest canal es va crear el dia {{createdAt}}. Aquest és el començament del canal {{channelName}}.", + "This chat won’t appear in history and your messages will not be saved.": "", "This ensures that your valuable conversations are securely saved to your backend database. Thank you!": "Això assegura que les teves converses valuoses queden desades de manera segura a la teva base de dades. Gràcies!", "This is an experimental feature, it may not function as expected and is subject to change at any time.": "Aquesta és una funció experimental, és possible que no funcioni com s'espera i està subjecta a canvis en qualsevol moment.", "This option controls how many tokens are preserved when refreshing the context. For example, if set to 2, the last 2 tokens of the conversation context will be retained. Preserving context can help maintain the continuity of a conversation, but it may reduce the ability to respond to new topics.": "Aquesta opció controla quants tokens es conserven en actualitzar el context. Per exemple, si s'estableix en 2, es conservaran els darrers 2 tokens del context de conversa. Preservar el context pot ajudar a mantenir la continuïtat d'una conversa, però pot reduir la capacitat de respondre a nous temes.", @@ -1089,6 +1099,7 @@ "Tool ID": "ID de l'eina", "Tool imported successfully": "Eina importada correctament", "Tool Name": "Nom de l'eina", + "Tool Servers": "", "Tool updated successfully": "Eina actualitzada correctament", "Tools": "Eines", "Tools Access": "Accés a les eines", @@ -1158,7 +1169,7 @@ "Version": "Versió", "Version {{selectedVersion}} of {{totalVersions}}": "Versió {{selectedVersion}} de {{totalVersions}}", "View Replies": "Veure les respostes", - "View Result from `{{NAME}}`": "Veure el resultat de `{{NAME}}`", + "View Result from **{{NAME}}**": "", "Visibility": "Visibilitat", "Voice": "Veu", "Voice Input": "Entrada de veu", @@ -1176,9 +1187,9 @@ "Webhook URL": "URL del webhook", "WebUI Settings": "Preferències de WebUI", "WebUI URL": "URL de WebUI", + "WebUI will make requests to \"{{url}}{{path}}\"": "", "WebUI will make requests to \"{{url}}/api/chat\"": "WebUI farà peticions a \"{{url}}/api/chat\"", "WebUI will make requests to \"{{url}}/chat/completions\"": "WebUI farà peticions a \"{{url}}/chat/completions\"", - "WebUI will make requests to \"{{url}}/openapi.json\"": "WebUI farà peticions a \"{{url}}/openapi.json\"", "What are you trying to achieve?": "Què intentes aconseguir?", "What are you working on?": "En què estàs treballant?", "What’s New in": "Què hi ha de nou a", diff --git a/src/lib/i18n/locales/ceb-PH/translation.json b/src/lib/i18n/locales/ceb-PH/translation.json index 4956d8047..1acefa008 100644 --- a/src/lib/i18n/locales/ceb-PH/translation.json +++ b/src/lib/i18n/locales/ceb-PH/translation.json @@ -6,7 +6,7 @@ "(latest)": "", "(Ollama)": "", "{{ models }}": "", - "{{COUNT}} Available Tool Servers": "", + "{{COUNT}} Available Tools": "", "{{COUNT}} hidden lines": "", "{{COUNT}} Replies": "", "{{user}}'s Chats": "", @@ -108,6 +108,7 @@ "Attribute for Username": "", "Audio": "Audio", "August": "", + "Auth": "", "Authenticate": "", "Authentication": "", "Auto-Copy Response to Clipboard": "Awtomatikong kopya sa tubag sa clipboard", @@ -119,7 +120,7 @@ "AUTOMATIC1111 Base URL": "Base URL AUTOMATIC1111", "AUTOMATIC1111 Base URL is required.": "Ang AUTOMATIC1111 base URL gikinahanglan.", "Available list": "", - "Available Tool Servers": "", + "Available Tools": "", "available!": "magamit!", "Awful": "", "Azure AI Speech": "", @@ -303,6 +304,7 @@ "Direct Connections": "", "Direct Connections allow users to connect to their own OpenAI compatible API endpoints.": "", "Direct Connections settings updated": "", + "Direct Tool Servers": "", "Disabled": "", "Discover a function": "", "Discover a model": "", @@ -412,6 +414,7 @@ "Enter Kagi Search API Key": "", "Enter Key Behavior": "", "Enter language codes": "", + "Enter Mistral API Key": "", "Enter Model ID": "", "Enter model tag (e.g. {{modelTag}})": "Pagsulod sa template tag (e.g. {{modelTag}})", "Enter Mojeek Search API Key": "", @@ -436,6 +439,7 @@ "Enter server port": "", "Enter stop sequence": "Pagsulod sa katapusan nga han-ay", "Enter system prompt": "", + "Enter system prompt here": "", "Enter Tavily API Key": "", "Enter the public URL of your WebUI. This URL will be used to generate links in the notifications.": "", "Enter Tika Server URL": "", @@ -449,6 +453,7 @@ "Enter Your Email": "Pagsulod sa imong e-mail address", "Enter Your Full Name": "Ibutang ang imong tibuok nga ngalan", "Enter your message": "", + "Enter your name": "", "Enter your new password": "", "Enter Your Password": "Ibutang ang imong password", "Enter Your Role": "", @@ -468,7 +473,7 @@ "Exceeded the number of seats in your license. Please contact support to increase the number of seats.": "", "Exclude": "", "Execute code for analysis": "", - "Executing `{{NAME}}`...": "", + "Executing **{{NAME}}**...": "", "Expand": "", "Experimental": "Eksperimento", "Explain": "", @@ -525,6 +530,7 @@ "Forge new paths": "", "Form": "", "Format your variables using brackets like this:": "", + "Forwards system user session credentials to authenticate": "", "Frequency Penalty": "", "Full Context Mode": "", "Function": "", @@ -694,6 +700,8 @@ "Mirostat": "Mirostat", "Mirostat Eta": "Mirostat Eta", "Mirostat Tau": "Mirostat Tau", + "Mistral OCR": "", + "Mistral OCR API Key required.": "", "Model": "", "Model '{{modelName}}' has been successfully downloaded.": "Ang modelo'{{modelName}}' malampuson nga na-download.", "Model '{{modelTag}}' is already in queue for downloading.": "Ang modelo'{{modelTag}}' naa na sa pila para ma-download.", @@ -789,6 +797,7 @@ "OpenAI API Key is required.": "Ang yawe sa OpenAI API gikinahanglan.", "OpenAI API settings updated": "", "OpenAI URL/Key required.": "", + "openapi.json Path": "", "or": "O", "Organize your users": "", "Other": "", @@ -1042,6 +1051,7 @@ "Thinking...": "", "This action cannot be undone. Do you wish to continue?": "", "This channel was created on {{createdAt}}. This is the very beginning of the {{channelName}} channel.": "", + "This chat won’t appear in history and your messages will not be saved.": "", "This ensures that your valuable conversations are securely saved to your backend database. Thank you!": "Kini nagsiguro nga ang imong bililhon nga mga panag-istoryahanay luwas nga natipig sa imong backend database. ", "This is an experimental feature, it may not function as expected and is subject to change at any time.": "", "This option controls how many tokens are preserved when refreshing the context. For example, if set to 2, the last 2 tokens of the conversation context will be retained. Preserving context can help maintain the continuity of a conversation, but it may reduce the ability to respond to new topics.": "", @@ -1089,6 +1099,7 @@ "Tool ID": "", "Tool imported successfully": "", "Tool Name": "", + "Tool Servers": "", "Tool updated successfully": "", "Tools": "", "Tools Access": "", @@ -1158,7 +1169,7 @@ "Version": "Bersyon", "Version {{selectedVersion}} of {{totalVersions}}": "", "View Replies": "", - "View Result from `{{NAME}}`": "", + "View Result from **{{NAME}}**": "", "Visibility": "", "Voice": "", "Voice Input": "", @@ -1176,9 +1187,9 @@ "Webhook URL": "", "WebUI Settings": "Mga Setting sa WebUI", "WebUI URL": "", + "WebUI will make requests to \"{{url}}{{path}}\"": "", "WebUI will make requests to \"{{url}}/api/chat\"": "", "WebUI will make requests to \"{{url}}/chat/completions\"": "", - "WebUI will make requests to \"{{url}}/openapi.json\"": "", "What are you trying to achieve?": "", "What are you working on?": "", "What’s New in": "Unsay bag-o sa", diff --git a/src/lib/i18n/locales/cs-CZ/translation.json b/src/lib/i18n/locales/cs-CZ/translation.json index c7d694b8a..9e29c553d 100644 --- a/src/lib/i18n/locales/cs-CZ/translation.json +++ b/src/lib/i18n/locales/cs-CZ/translation.json @@ -6,7 +6,7 @@ "(latest)": "Nejnovější", "(Ollama)": "", "{{ models }}": "{{ models }}", - "{{COUNT}} Available Tool Servers": "", + "{{COUNT}} Available Tools": "", "{{COUNT}} hidden lines": "", "{{COUNT}} Replies": "", "{{user}}'s Chats": "{{user}}'s konverzace", @@ -108,6 +108,7 @@ "Attribute for Username": "", "Audio": "Zvuk", "August": "Srpen", + "Auth": "", "Authenticate": "Autentikace", "Authentication": "", "Auto-Copy Response to Clipboard": "Automatické kopírování odpovědi do schránky", @@ -119,7 +120,7 @@ "AUTOMATIC1111 Base URL": "Výchozí URL pro AUTOMATIC1111", "AUTOMATIC1111 Base URL is required.": "Vyžaduje se základní URL pro AUTOMATIC1111.", "Available list": "Dostupný seznam", - "Available Tool Servers": "", + "Available Tools": "", "available!": "k dispozici!", "Awful": "", "Azure AI Speech": "Azure AI syntéza řeči", @@ -303,6 +304,7 @@ "Direct Connections": "", "Direct Connections allow users to connect to their own OpenAI compatible API endpoints.": "", "Direct Connections settings updated": "", + "Direct Tool Servers": "", "Disabled": "Zakázáno", "Discover a function": "Objevit funkci", "Discover a model": "Objevte model", @@ -412,6 +414,7 @@ "Enter Kagi Search API Key": "", "Enter Key Behavior": "", "Enter language codes": "Zadejte kódy jazyků", + "Enter Mistral API Key": "", "Enter Model ID": "Zadejte ID modelu", "Enter model tag (e.g. {{modelTag}})": "Zadejte označení modelu (např. {{modelTag}})", "Enter Mojeek Search API Key": "", @@ -436,6 +439,7 @@ "Enter server port": "", "Enter stop sequence": "Zadejte ukončovací sekvenci", "Enter system prompt": "Vložte systémový prompt", + "Enter system prompt here": "", "Enter Tavily API Key": "Zadejte API klíč Tavily", "Enter the public URL of your WebUI. This URL will be used to generate links in the notifications.": "", "Enter Tika Server URL": "Zadejte URL serveru Tika", @@ -449,6 +453,7 @@ "Enter Your Email": "Zadejte svůj email", "Enter Your Full Name": "Zadejte své plné jméno", "Enter your message": "Zadejte svou zprávu", + "Enter your name": "", "Enter your new password": "", "Enter Your Password": "Zadejte své heslo", "Enter Your Role": "Zadejte svou roli", @@ -468,7 +473,7 @@ "Exceeded the number of seats in your license. Please contact support to increase the number of seats.": "", "Exclude": "Vyloučit", "Execute code for analysis": "", - "Executing `{{NAME}}`...": "", + "Executing **{{NAME}}**...": "", "Expand": "", "Experimental": "Experimentální", "Explain": "", @@ -525,6 +530,7 @@ "Forge new paths": "", "Form": "Formulář", "Format your variables using brackets like this:": "Formátujte své proměnné pomocí závorek takto:", + "Forwards system user session credentials to authenticate": "", "Frequency Penalty": "Penalizace frekvence", "Full Context Mode": "", "Function": "Funkce", @@ -694,6 +700,8 @@ "Mirostat": "Mirostat", "Mirostat Eta": "Mirostat Eta", "Mirostat Tau": "Mirostat Tau", + "Mistral OCR": "", + "Mistral OCR API Key required.": "", "Model": "Model", "Model '{{modelName}}' has been successfully downloaded.": "Model „{{modelName}}“ byl úspěšně stažen.", "Model '{{modelTag}}' is already in queue for downloading.": "Model '{{modelTag}}' je již zařazen do fronty pro stahování.", @@ -789,6 +797,7 @@ "OpenAI API Key is required.": "Je vyžadován klíč OpenAI API.", "OpenAI API settings updated": "", "OpenAI URL/Key required.": "Je vyžadován odkaz/adresa URL nebo klíč OpenAI.", + "openapi.json Path": "", "or": "nebo", "Organize your users": "", "Other": "Jiné", @@ -1042,6 +1051,7 @@ "Thinking...": "Přemýšlím...", "This action cannot be undone. Do you wish to continue?": "Tuto akci nelze vrátit zpět. Přejete si pokračovat?", "This channel was created on {{createdAt}}. This is the very beginning of the {{channelName}} channel.": "", + "This chat won’t appear in history and your messages will not be saved.": "", "This ensures that your valuable conversations are securely saved to your backend database. Thank you!": "To zajišťuje, že vaše cenné konverzace jsou bezpečně uloženy ve vaší backendové databázi. Děkujeme!", "This is an experimental feature, it may not function as expected and is subject to change at any time.": "Jedná se o experimentální funkci, nemusí fungovat podle očekávání a může být kdykoliv změněna.", "This option controls how many tokens are preserved when refreshing the context. For example, if set to 2, the last 2 tokens of the conversation context will be retained. Preserving context can help maintain the continuity of a conversation, but it may reduce the ability to respond to new topics.": "", @@ -1089,6 +1099,7 @@ "Tool ID": "ID nástroje", "Tool imported successfully": "Nástroj byl úspěšně importován", "Tool Name": "", + "Tool Servers": "", "Tool updated successfully": "Nástroj byl úspěšně aktualizován.", "Tools": "Nástroje", "Tools Access": "", @@ -1158,7 +1169,7 @@ "Version": "Verze", "Version {{selectedVersion}} of {{totalVersions}}": "Verze {{selectedVersion}} z {{totalVersions}}", "View Replies": "", - "View Result from `{{NAME}}`": "", + "View Result from **{{NAME}}**": "", "Visibility": "Viditelnost", "Voice": "Hlas", "Voice Input": "Hlasový vstup", @@ -1176,9 +1187,9 @@ "Webhook URL": "Webhook URL", "WebUI Settings": "Nastavení WebUI", "WebUI URL": "", + "WebUI will make requests to \"{{url}}{{path}}\"": "", "WebUI will make requests to \"{{url}}/api/chat\"": "", "WebUI will make requests to \"{{url}}/chat/completions\"": "", - "WebUI will make requests to \"{{url}}/openapi.json\"": "", "What are you trying to achieve?": "", "What are you working on?": "", "What’s New in": "Co je nového v", diff --git a/src/lib/i18n/locales/da-DK/translation.json b/src/lib/i18n/locales/da-DK/translation.json index 8037fedb5..6d3ffbfa5 100644 --- a/src/lib/i18n/locales/da-DK/translation.json +++ b/src/lib/i18n/locales/da-DK/translation.json @@ -6,7 +6,7 @@ "(latest)": "(seneste)", "(Ollama)": "", "{{ models }}": "{{ modeller }}", - "{{COUNT}} Available Tool Servers": "", + "{{COUNT}} Available Tools": "", "{{COUNT}} hidden lines": "", "{{COUNT}} Replies": "", "{{user}}'s Chats": "{{user}}s chats", @@ -108,6 +108,7 @@ "Attribute for Username": "", "Audio": "Lyd", "August": "august", + "Auth": "", "Authenticate": "", "Authentication": "", "Auto-Copy Response to Clipboard": "Automatisk kopiering af svar til udklipsholder", @@ -119,7 +120,7 @@ "AUTOMATIC1111 Base URL": "AUTOMATIC1111 Base URL", "AUTOMATIC1111 Base URL is required.": "AUTOMATIC1111 Base URL er påkrævet.", "Available list": "Tilgængelige lister", - "Available Tool Servers": "", + "Available Tools": "", "available!": "tilgængelig!", "Awful": "", "Azure AI Speech": "Azure AI Speech", @@ -303,6 +304,7 @@ "Direct Connections": "", "Direct Connections allow users to connect to their own OpenAI compatible API endpoints.": "", "Direct Connections settings updated": "", + "Direct Tool Servers": "", "Disabled": "Inaktiv", "Discover a function": "Find en funktion", "Discover a model": "Find en model", @@ -412,6 +414,7 @@ "Enter Kagi Search API Key": "", "Enter Key Behavior": "", "Enter language codes": "Indtast sprogkoder", + "Enter Mistral API Key": "", "Enter Model ID": "Indtast model-ID", "Enter model tag (e.g. {{modelTag}})": "Indtast modelmærke (f.eks. {{modelTag}})", "Enter Mojeek Search API Key": "", @@ -436,6 +439,7 @@ "Enter server port": "", "Enter stop sequence": "Indtast stopsekvens", "Enter system prompt": "Indtast systemprompt", + "Enter system prompt here": "", "Enter Tavily API Key": "Indtast Tavily API-nøgle", "Enter the public URL of your WebUI. This URL will be used to generate links in the notifications.": "", "Enter Tika Server URL": "Indtast Tika Server URL", @@ -449,6 +453,7 @@ "Enter Your Email": "Indtast din e-mail", "Enter Your Full Name": "Indtast dit fulde navn", "Enter your message": "Indtast din besked", + "Enter your name": "", "Enter your new password": "", "Enter Your Password": "Indtast din adgangskode", "Enter Your Role": "Indtast din rolle", @@ -468,7 +473,7 @@ "Exceeded the number of seats in your license. Please contact support to increase the number of seats.": "", "Exclude": "", "Execute code for analysis": "", - "Executing `{{NAME}}`...": "", + "Executing **{{NAME}}**...": "", "Expand": "", "Experimental": "Eksperimentel", "Explain": "", @@ -525,6 +530,7 @@ "Forge new paths": "", "Form": "Formular", "Format your variables using brackets like this:": "", + "Forwards system user session credentials to authenticate": "", "Frequency Penalty": "Hyppighedsstraf", "Full Context Mode": "", "Function": "", @@ -694,6 +700,8 @@ "Mirostat": "Mirostat", "Mirostat Eta": "Mirostat Eta", "Mirostat Tau": "Mirostat Tau", + "Mistral OCR": "", + "Mistral OCR API Key required.": "", "Model": "", "Model '{{modelName}}' has been successfully downloaded.": "Model '{{modelName}}' er blevet downloadet.", "Model '{{modelTag}}' is already in queue for downloading.": "Model '{{modelTag}}' er allerede i kø til download.", @@ -789,6 +797,7 @@ "OpenAI API Key is required.": "OpenAI API-nøgle er påkrævet.", "OpenAI API settings updated": "", "OpenAI URL/Key required.": "OpenAI URL/nøgle påkrævet.", + "openapi.json Path": "", "or": "eller", "Organize your users": "", "Other": "Andet", @@ -1042,6 +1051,7 @@ "Thinking...": "Tænker...", "This action cannot be undone. Do you wish to continue?": "Denne handling kan ikke fortrydes. Vil du fortsætte?", "This channel was created on {{createdAt}}. This is the very beginning of the {{channelName}} channel.": "", + "This chat won’t appear in history and your messages will not be saved.": "", "This ensures that your valuable conversations are securely saved to your backend database. Thank you!": "Dette sikrer, at dine værdifulde samtaler gemmes sikkert i din backend-database. Tak!", "This is an experimental feature, it may not function as expected and is subject to change at any time.": "Dette er en eksperimentel funktion, den fungerer muligvis ikke som forventet og kan ændres når som helst.", "This option controls how many tokens are preserved when refreshing the context. For example, if set to 2, the last 2 tokens of the conversation context will be retained. Preserving context can help maintain the continuity of a conversation, but it may reduce the ability to respond to new topics.": "", @@ -1089,6 +1099,7 @@ "Tool ID": "", "Tool imported successfully": "Værktøj importeret.", "Tool Name": "", + "Tool Servers": "", "Tool updated successfully": "Værktøj opdateret.", "Tools": "Værktøjer", "Tools Access": "", @@ -1158,7 +1169,7 @@ "Version": "Version", "Version {{selectedVersion}} of {{totalVersions}}": "Version {{selectedVersion}} af {{totalVersions}}", "View Replies": "", - "View Result from `{{NAME}}`": "", + "View Result from **{{NAME}}**": "", "Visibility": "", "Voice": "Stemme", "Voice Input": "", @@ -1176,9 +1187,9 @@ "Webhook URL": "Webhook-URL", "WebUI Settings": "WebUI-indstillinger", "WebUI URL": "", + "WebUI will make requests to \"{{url}}{{path}}\"": "", "WebUI will make requests to \"{{url}}/api/chat\"": "", "WebUI will make requests to \"{{url}}/chat/completions\"": "", - "WebUI will make requests to \"{{url}}/openapi.json\"": "", "What are you trying to achieve?": "", "What are you working on?": "", "What’s New in": "Nyheder i", diff --git a/src/lib/i18n/locales/de-DE/translation.json b/src/lib/i18n/locales/de-DE/translation.json index db8bd496c..0219b2ab4 100644 --- a/src/lib/i18n/locales/de-DE/translation.json +++ b/src/lib/i18n/locales/de-DE/translation.json @@ -6,7 +6,7 @@ "(latest)": "(neueste)", "(Ollama)": "", "{{ models }}": "{{ Modelle }}", - "{{COUNT}} Available Tool Servers": "", + "{{COUNT}} Available Tools": "", "{{COUNT}} hidden lines": "{{COUNT}} versteckte Zeilen", "{{COUNT}} Replies": "{{COUNT}} Antworten", "{{user}}'s Chats": "{{user}}s Chats", @@ -108,6 +108,7 @@ "Attribute for Username": "Attribut für Benutzername", "Audio": "Audio", "August": "August", + "Auth": "", "Authenticate": "Authentifizieren", "Authentication": "Authentifizierung", "Auto-Copy Response to Clipboard": "Antwort automatisch in die Zwischenablage kopieren", @@ -119,7 +120,7 @@ "AUTOMATIC1111 Base URL": "AUTOMATIC1111-Basis-URL", "AUTOMATIC1111 Base URL is required.": "AUTOMATIC1111-Basis-URL ist erforderlich.", "Available list": "Verfügbare Liste", - "Available Tool Servers": "", + "Available Tools": "", "available!": "Verfügbar!", "Awful": "Schrecklich", "Azure AI Speech": "Azure AI Speech", @@ -303,6 +304,7 @@ "Direct Connections": "Direktverbindungen", "Direct Connections allow users to connect to their own OpenAI compatible API endpoints.": "Direktverbindungen ermöglichen es Benutzern, sich mit ihren eigenen OpenAI-kompatiblen API-Endpunkten zu verbinden.", "Direct Connections settings updated": "Direktverbindungs-Einstellungen aktualisiert", + "Direct Tool Servers": "", "Disabled": "Deaktiviert", "Discover a function": "Entdecken Sie weitere Funktionen", "Discover a model": "Entdecken Sie weitere Modelle", @@ -412,6 +414,7 @@ "Enter Kagi Search API Key": "Geben Sie den Kagi Search API-Schlüssel ein", "Enter Key Behavior": "Verhalten von 'Enter'", "Enter language codes": "Geben Sie die Sprachcodes ein", + "Enter Mistral API Key": "", "Enter Model ID": "Geben Sie die Modell-ID ein", "Enter model tag (e.g. {{modelTag}})": "Geben Sie den Model-Tag ein", "Enter Mojeek Search API Key": "Geben Sie den Mojeek Search API-Schlüssel ein", @@ -436,6 +439,7 @@ "Enter server port": "Geben Sie den Server-Port ein", "Enter stop sequence": "Stop-Sequenz eingeben", "Enter system prompt": "Systemprompt eingeben", + "Enter system prompt here": "", "Enter Tavily API Key": "Geben Sie den Tavily-API-Schlüssel ein", "Enter the public URL of your WebUI. This URL will be used to generate links in the notifications.": "Geben sie die öffentliche URL Ihrer WebUI ein. Diese URL wird verwendet, um Links in den Benachrichtigungen zu generieren.", "Enter Tika Server URL": "Geben Sie die Tika-Server-URL ein", @@ -449,6 +453,7 @@ "Enter Your Email": "Geben Sie Ihre E-Mail-Adresse ein", "Enter Your Full Name": "Geben Sie Ihren vollständigen Namen ein", "Enter your message": "Geben Sie Ihre Nachricht ein", + "Enter your name": "", "Enter your new password": "Geben Sie Ihr neues Passwort ein", "Enter Your Password": "Geben Sie Ihr Passwort ein", "Enter Your Role": "Geben Sie Ihre Rolle ein", @@ -468,7 +473,7 @@ "Exceeded the number of seats in your license. Please contact support to increase the number of seats.": "", "Exclude": "Ausschließen", "Execute code for analysis": "Code für Analyse ausführen", - "Executing `{{NAME}}`...": "", + "Executing **{{NAME}}**...": "", "Expand": "Aufklappen", "Experimental": "Experimentell", "Explain": "Erklären", @@ -525,6 +530,7 @@ "Forge new paths": "Neue Wege beschreiten", "Form": "Formular", "Format your variables using brackets like this:": "Formatieren Sie Ihre Variablen mit Klammern, wie hier:", + "Forwards system user session credentials to authenticate": "", "Frequency Penalty": "Frequenzstrafe", "Full Context Mode": "Voll-Kontext Modus", "Function": "Funktion", @@ -694,6 +700,8 @@ "Mirostat": "Mirostat", "Mirostat Eta": "Mirostat Eta", "Mirostat Tau": "Mirostat Tau", + "Mistral OCR": "", + "Mistral OCR API Key required.": "", "Model": "Modell", "Model '{{modelName}}' has been successfully downloaded.": "Modell '{{modelName}}' wurde erfolgreich heruntergeladen.", "Model '{{modelTag}}' is already in queue for downloading.": "Modell '{{modelTag}}' befindet sich bereits in der Warteschlange zum Herunterladen.", @@ -789,6 +797,7 @@ "OpenAI API Key is required.": "OpenAI-API-Schlüssel erforderlich.", "OpenAI API settings updated": "OpenAI-API-Einstellungen aktualisiert", "OpenAI URL/Key required.": "OpenAI-URL/Schlüssel erforderlich.", + "openapi.json Path": "", "or": "oder", "Organize your users": "Organisieren Sie Ihre Benutzer", "Other": "Andere", @@ -1022,7 +1031,6 @@ "Temperature": "Temperatur", "Template": "Vorlage", "Temporary Chat": "Temporäre Unterhaltung", - "This chat won’t appear in history and your messages will not be saved.": "Diese Unterhaltung erscheint nicht in deinem Chat-Verlauf. Alle Nachrichten sind privat und werden nicht gespeichert.", "Text Splitter": "Text-Splitter", "Text-to-Speech Engine": "Text-zu-Sprache-Engine", "Tfs Z": "Tfs Z", @@ -1043,6 +1051,7 @@ "Thinking...": "Denke nach...", "This action cannot be undone. Do you wish to continue?": "Diese Aktion kann nicht rückgängig gemacht werden. Möchten Sie fortfahren?", "This channel was created on {{createdAt}}. This is the very beginning of the {{channelName}} channel.": "Dieser Kanal wurde am {{createdAt}} erstellt. Dies ist der Beginn des {{channelName}} Kanals.", + "This chat won’t appear in history and your messages will not be saved.": "Diese Unterhaltung erscheint nicht in deinem Chat-Verlauf. Alle Nachrichten sind privat und werden nicht gespeichert.", "This ensures that your valuable conversations are securely saved to your backend database. Thank you!": "Dies stellt sicher, dass Ihre wertvollen Chats sicher in Ihrer Backend-Datenbank gespeichert werden. Vielen Dank!", "This is an experimental feature, it may not function as expected and is subject to change at any time.": "Dies ist eine experimentelle Funktion, sie funktioniert möglicherweise nicht wie erwartet und kann jederzeit geändert werden.", "This option controls how many tokens are preserved when refreshing the context. For example, if set to 2, the last 2 tokens of the conversation context will be retained. Preserving context can help maintain the continuity of a conversation, but it may reduce the ability to respond to new topics.": "", @@ -1090,6 +1099,7 @@ "Tool ID": "Werkzeug-ID", "Tool imported successfully": "Werkzeug erfolgreich importiert", "Tool Name": "Werkzeugname", + "Tool Servers": "", "Tool updated successfully": "Werkzeug erfolgreich aktualisiert", "Tools": "Werkzeuge", "Tools Access": "Werkzeugzugriff", @@ -1159,7 +1169,7 @@ "Version": "Version", "Version {{selectedVersion}} of {{totalVersions}}": "Version {{selectedVersion}} von {{totalVersions}}", "View Replies": "Antworten anzeigen", - "View Result from `{{NAME}}`": "", + "View Result from **{{NAME}}**": "", "Visibility": "Sichtbarkeit", "Voice": "Stimme", "Voice Input": "Spracheingabe", @@ -1177,9 +1187,9 @@ "Webhook URL": "Webhook URL", "WebUI Settings": "WebUI-Einstellungen", "WebUI URL": "WebUI-URL", + "WebUI will make requests to \"{{url}}{{path}}\"": "", "WebUI will make requests to \"{{url}}/api/chat\"": "WebUI wird Anfragen an \"{{url}}/api/chat\" senden", "WebUI will make requests to \"{{url}}/chat/completions\"": "WebUI wird Anfragen an \"{{url}}/chat/completions\" senden", - "WebUI will make requests to \"{{url}}/openapi.json\"": "", "What are you trying to achieve?": "Was versuchen Sie zu erreichen?", "What are you working on?": "Woran arbeiten Sie?", "What’s New in": "Neuigkeiten von", diff --git a/src/lib/i18n/locales/dg-DG/translation.json b/src/lib/i18n/locales/dg-DG/translation.json index 46d801188..831972946 100644 --- a/src/lib/i18n/locales/dg-DG/translation.json +++ b/src/lib/i18n/locales/dg-DG/translation.json @@ -6,7 +6,7 @@ "(latest)": "(much latest)", "(Ollama)": "", "{{ models }}": "", - "{{COUNT}} Available Tool Servers": "", + "{{COUNT}} Available Tools": "", "{{COUNT}} hidden lines": "", "{{COUNT}} Replies": "", "{{user}}'s Chats": "", @@ -108,6 +108,7 @@ "Attribute for Username": "", "Audio": "Audio", "August": "", + "Auth": "", "Authenticate": "", "Authentication": "", "Auto-Copy Response to Clipboard": "Copy Bark Auto Bark", @@ -119,7 +120,7 @@ "AUTOMATIC1111 Base URL": "AUTOMATIC1111 Base URL", "AUTOMATIC1111 Base URL is required.": "AUTOMATIC1111 Base URL is required.", "Available list": "", - "Available Tool Servers": "", + "Available Tools": "", "available!": "available! So excite!", "Awful": "", "Azure AI Speech": "", @@ -303,6 +304,7 @@ "Direct Connections": "", "Direct Connections allow users to connect to their own OpenAI compatible API endpoints.": "", "Direct Connections settings updated": "", + "Direct Tool Servers": "", "Disabled": "", "Discover a function": "", "Discover a model": "", @@ -412,6 +414,7 @@ "Enter Kagi Search API Key": "", "Enter Key Behavior": "", "Enter language codes": "", + "Enter Mistral API Key": "", "Enter Model ID": "", "Enter model tag (e.g. {{modelTag}})": "Enter model doge tag (e.g. {{modelTag}})", "Enter Mojeek Search API Key": "", @@ -436,6 +439,7 @@ "Enter server port": "", "Enter stop sequence": "Enter stop bark", "Enter system prompt": "", + "Enter system prompt here": "", "Enter Tavily API Key": "", "Enter the public URL of your WebUI. This URL will be used to generate links in the notifications.": "", "Enter Tika Server URL": "", @@ -449,6 +453,7 @@ "Enter Your Email": "Enter Your Dogemail", "Enter Your Full Name": "Enter Your Full Wow", "Enter your message": "", + "Enter your name": "", "Enter your new password": "", "Enter Your Password": "Enter Your Barkword", "Enter Your Role": "", @@ -468,7 +473,7 @@ "Exceeded the number of seats in your license. Please contact support to increase the number of seats.": "", "Exclude": "", "Execute code for analysis": "", - "Executing `{{NAME}}`...": "", + "Executing **{{NAME}}**...": "", "Expand": "", "Experimental": "Much Experiment", "Explain": "", @@ -525,6 +530,7 @@ "Forge new paths": "", "Form": "", "Format your variables using brackets like this:": "", + "Forwards system user session credentials to authenticate": "", "Frequency Penalty": "", "Full Context Mode": "", "Function": "", @@ -694,6 +700,8 @@ "Mirostat": "Mirostat", "Mirostat Eta": "Mirostat Eta", "Mirostat Tau": "Mirostat Tau", + "Mistral OCR": "", + "Mistral OCR API Key required.": "", "Model": "", "Model '{{modelName}}' has been successfully downloaded.": "Model '{{modelName}}' has been successfully downloaded.", "Model '{{modelTag}}' is already in queue for downloading.": "Model '{{modelTag}}' is already in queue for downloading.", @@ -789,6 +797,7 @@ "OpenAI API Key is required.": "OpenAI Bark Key is required.", "OpenAI API settings updated": "", "OpenAI URL/Key required.": "", + "openapi.json Path": "", "or": "or", "Organize your users": "", "Other": "", @@ -1042,6 +1051,7 @@ "Thinking...": "", "This action cannot be undone. Do you wish to continue?": "", "This channel was created on {{createdAt}}. This is the very beginning of the {{channelName}} channel.": "", + "This chat won’t appear in history and your messages will not be saved.": "", "This ensures that your valuable conversations are securely saved to your backend database. Thank you!": "This ensures that your valuable conversations are securely saved to your backend database. Thank you! Much secure!", "This is an experimental feature, it may not function as expected and is subject to change at any time.": "", "This option controls how many tokens are preserved when refreshing the context. For example, if set to 2, the last 2 tokens of the conversation context will be retained. Preserving context can help maintain the continuity of a conversation, but it may reduce the ability to respond to new topics.": "", @@ -1089,6 +1099,7 @@ "Tool ID": "", "Tool imported successfully": "", "Tool Name": "", + "Tool Servers": "", "Tool updated successfully": "", "Tools": "", "Tools Access": "", @@ -1158,7 +1169,7 @@ "Version": "Version much version", "Version {{selectedVersion}} of {{totalVersions}}": "", "View Replies": "", - "View Result from `{{NAME}}`": "", + "View Result from **{{NAME}}**": "", "Visibility": "", "Voice": "", "Voice Input": "", @@ -1176,9 +1187,9 @@ "Webhook URL": "", "WebUI Settings": "WebUI Settings much settings", "WebUI URL": "", + "WebUI will make requests to \"{{url}}{{path}}\"": "", "WebUI will make requests to \"{{url}}/api/chat\"": "", "WebUI will make requests to \"{{url}}/chat/completions\"": "", - "WebUI will make requests to \"{{url}}/openapi.json\"": "", "What are you trying to achieve?": "", "What are you working on?": "", "What’s New in": "What’s New in much new", diff --git a/src/lib/i18n/locales/el-GR/translation.json b/src/lib/i18n/locales/el-GR/translation.json index cdb982b7a..418a69427 100644 --- a/src/lib/i18n/locales/el-GR/translation.json +++ b/src/lib/i18n/locales/el-GR/translation.json @@ -6,7 +6,7 @@ "(latest)": "(τελευταίο)", "(Ollama)": "", "{{ models }}": "{{ models }}", - "{{COUNT}} Available Tool Servers": "", + "{{COUNT}} Available Tools": "", "{{COUNT}} hidden lines": "", "{{COUNT}} Replies": "", "{{user}}'s Chats": "Συνομιλίες του {{user}}", @@ -108,6 +108,7 @@ "Attribute for Username": "Ιδιότητα για Όνομα Χρήστη", "Audio": "Ήχος", "August": "Αύγουστος", + "Auth": "", "Authenticate": "Επαλήθευση", "Authentication": "", "Auto-Copy Response to Clipboard": "Αυτόματη Αντιγραφή Απάντησης στο Πρόχειρο", @@ -119,7 +120,7 @@ "AUTOMATIC1111 Base URL": "Βασικό URL AUTOMATIC1111", "AUTOMATIC1111 Base URL is required.": "Απαιτείται το Βασικό URL AUTOMATIC1111.", "Available list": "Διαθέσιμη λίστα", - "Available Tool Servers": "", + "Available Tools": "", "available!": "διαθέσιμο!", "Awful": "Ασχημο", "Azure AI Speech": "Ομιλία Azure AI", @@ -303,6 +304,7 @@ "Direct Connections": "", "Direct Connections allow users to connect to their own OpenAI compatible API endpoints.": "", "Direct Connections settings updated": "", + "Direct Tool Servers": "", "Disabled": "Απενεργοποιημένο", "Discover a function": "Ανακάλυψη λειτουργίας", "Discover a model": "Ανακάλυψη μοντέλου", @@ -412,6 +414,7 @@ "Enter Kagi Search API Key": "", "Enter Key Behavior": "", "Enter language codes": "Εισάγετε κωδικούς γλώσσας", + "Enter Mistral API Key": "", "Enter Model ID": "Εισάγετε το ID Μοντέλου", "Enter model tag (e.g. {{modelTag}})": "Εισάγετε την ετικέτα μοντέλου (π.χ. {{modelTag}})", "Enter Mojeek Search API Key": "Εισάγετε το Κλειδί API Mojeek Search", @@ -436,6 +439,7 @@ "Enter server port": "Εισάγετε την θύρα διακομιστή", "Enter stop sequence": "Εισάγετε τη σειρά παύσης", "Enter system prompt": "Εισάγετε την προτροπή συστήματος", + "Enter system prompt here": "", "Enter Tavily API Key": "Εισάγετε το Κλειδί API Tavily", "Enter the public URL of your WebUI. This URL will be used to generate links in the notifications.": "", "Enter Tika Server URL": "Εισάγετε το URL διακομιστή Tika", @@ -449,6 +453,7 @@ "Enter Your Email": "Εισάγετε το Email σας", "Enter Your Full Name": "Εισάγετε το Πλήρες Όνομά σας", "Enter your message": "Εισάγετε το μήνυμά σας", + "Enter your name": "", "Enter your new password": "", "Enter Your Password": "Εισάγετε τον Κωδικό σας", "Enter Your Role": "Εισάγετε τον Ρόλο σας", @@ -468,7 +473,7 @@ "Exceeded the number of seats in your license. Please contact support to increase the number of seats.": "", "Exclude": "Εξαίρεση", "Execute code for analysis": "", - "Executing `{{NAME}}`...": "", + "Executing **{{NAME}}**...": "", "Expand": "", "Experimental": "Πειραματικό", "Explain": "", @@ -525,6 +530,7 @@ "Forge new paths": "Δημιουργήστε νέες διαδρομές", "Form": "Φόρμα", "Format your variables using brackets like this:": "Μορφοποιήστε τις μεταβλητές σας χρησιμοποιώντας αγκύλες όπως αυτό:", + "Forwards system user session credentials to authenticate": "", "Frequency Penalty": "Ποινή Συχνότητας", "Full Context Mode": "", "Function": "Λειτουργία", @@ -694,6 +700,8 @@ "Mirostat": "Mirostat", "Mirostat Eta": "Mirostat Eta", "Mirostat Tau": "Mirostat Tau", + "Mistral OCR": "", + "Mistral OCR API Key required.": "", "Model": "Μοντέλο", "Model '{{modelName}}' has been successfully downloaded.": "Το μοντέλο '{{modelName}}' κατεβάστηκε με επιτυχία.", "Model '{{modelTag}}' is already in queue for downloading.": "Το μοντέλο '{{modelTag}}' βρίσκεται ήδη στην ουρά για λήψη.", @@ -789,6 +797,7 @@ "OpenAI API Key is required.": "Απαιτείται το Κλειδί API OpenAI.", "OpenAI API settings updated": "Οι ρυθμίσεις API OpenAI ενημερώθηκαν", "OpenAI URL/Key required.": "Απαιτείται URL/Kλειδί OpenAI.", + "openapi.json Path": "", "or": "ή", "Organize your users": "Οργανώστε τους χρήστες σας", "Other": "Άλλο", @@ -1042,6 +1051,7 @@ "Thinking...": "Σκέφτομαι...", "This action cannot be undone. Do you wish to continue?": "Αυτή η ενέργεια δεν μπορεί να αναιρεθεί. Θέλετε να συνεχίσετε;", "This channel was created on {{createdAt}}. This is the very beginning of the {{channelName}} channel.": "", + "This chat won’t appear in history and your messages will not be saved.": "", "This ensures that your valuable conversations are securely saved to your backend database. Thank you!": "Αυτό διασφαλίζει ότι οι πολύτιμες συνομιλίες σας αποθηκεύονται με ασφάλεια στη βάση δεδομένων backend σας. Ευχαριστούμε!", "This is an experimental feature, it may not function as expected and is subject to change at any time.": "Αυτή είναι μια πειραματική λειτουργία, μπορεί να μην λειτουργεί όπως αναμένεται και υπόκειται σε αλλαγές οποιαδήποτε στιγμή.", "This option controls how many tokens are preserved when refreshing the context. For example, if set to 2, the last 2 tokens of the conversation context will be retained. Preserving context can help maintain the continuity of a conversation, but it may reduce the ability to respond to new topics.": "", @@ -1089,6 +1099,7 @@ "Tool ID": "ID Εργαλείου", "Tool imported successfully": "Το εργαλείο εισήχθη με επιτυχία", "Tool Name": "Όνομα Εργαλείου", + "Tool Servers": "", "Tool updated successfully": "Το εργαλείο ενημερώθηκε με επιτυχία", "Tools": "Εργαλεία", "Tools Access": "Πρόσβαση Εργαλείων", @@ -1158,7 +1169,7 @@ "Version": "Έκδοση", "Version {{selectedVersion}} of {{totalVersions}}": "Έκδοση {{selectedVersion}} από {{totalVersions}}", "View Replies": "", - "View Result from `{{NAME}}`": "", + "View Result from **{{NAME}}**": "", "Visibility": "Ορατότητα", "Voice": "Φωνή", "Voice Input": "Εισαγωγή Φωνής", @@ -1176,9 +1187,9 @@ "Webhook URL": "URL Webhook", "WebUI Settings": "Ρυθμίσεις WebUI", "WebUI URL": "", + "WebUI will make requests to \"{{url}}{{path}}\"": "", "WebUI will make requests to \"{{url}}/api/chat\"": "Το WebUI θα κάνει αιτήματα στο \"{{url}}/api/chat\"", "WebUI will make requests to \"{{url}}/chat/completions\"": "Το WebUI θα κάνει αιτήματα στο \"{{url}}/chat/completions\"", - "WebUI will make requests to \"{{url}}/openapi.json\"": "", "What are you trying to achieve?": "Τι προσπαθείτε να πετύχετε?", "What are you working on?": "Τι εργάζεστε;", "What’s New in": "Τι νέο υπάρχει στο", diff --git a/src/lib/i18n/locales/en-GB/translation.json b/src/lib/i18n/locales/en-GB/translation.json index f5b2040cb..4249cc60b 100644 --- a/src/lib/i18n/locales/en-GB/translation.json +++ b/src/lib/i18n/locales/en-GB/translation.json @@ -6,7 +6,7 @@ "(latest)": "", "(Ollama)": "", "{{ models }}": "", - "{{COUNT}} Available Tool Servers": "", + "{{COUNT}} Available Tools": "", "{{COUNT}} hidden lines": "", "{{COUNT}} Replies": "", "{{user}}'s Chats": "", @@ -108,6 +108,7 @@ "Attribute for Username": "", "Audio": "", "August": "", + "Auth": "", "Authenticate": "", "Authentication": "", "Auto-Copy Response to Clipboard": "", @@ -119,7 +120,7 @@ "AUTOMATIC1111 Base URL": "", "AUTOMATIC1111 Base URL is required.": "", "Available list": "", - "Available Tool Servers": "", + "Available Tools": "", "available!": "", "Awful": "", "Azure AI Speech": "", @@ -303,6 +304,7 @@ "Direct Connections": "", "Direct Connections allow users to connect to their own OpenAI compatible API endpoints.": "", "Direct Connections settings updated": "", + "Direct Tool Servers": "", "Disabled": "", "Discover a function": "", "Discover a model": "", @@ -412,6 +414,7 @@ "Enter Kagi Search API Key": "", "Enter Key Behavior": "", "Enter language codes": "", + "Enter Mistral API Key": "", "Enter Model ID": "", "Enter model tag (e.g. {{modelTag}})": "", "Enter Mojeek Search API Key": "", @@ -436,6 +439,7 @@ "Enter server port": "", "Enter stop sequence": "", "Enter system prompt": "", + "Enter system prompt here": "", "Enter Tavily API Key": "", "Enter the public URL of your WebUI. This URL will be used to generate links in the notifications.": "", "Enter Tika Server URL": "", @@ -449,6 +453,7 @@ "Enter Your Email": "", "Enter Your Full Name": "", "Enter your message": "", + "Enter your name": "", "Enter your new password": "", "Enter Your Password": "", "Enter Your Role": "", @@ -468,7 +473,7 @@ "Exceeded the number of seats in your license. Please contact support to increase the number of seats.": "", "Exclude": "", "Execute code for analysis": "", - "Executing `{{NAME}}`...": "", + "Executing **{{NAME}}**...": "", "Expand": "", "Experimental": "", "Explain": "", @@ -525,6 +530,7 @@ "Forge new paths": "", "Form": "", "Format your variables using brackets like this:": "", + "Forwards system user session credentials to authenticate": "", "Frequency Penalty": "", "Full Context Mode": "", "Function": "", @@ -694,6 +700,8 @@ "Mirostat": "", "Mirostat Eta": "", "Mirostat Tau": "", + "Mistral OCR": "", + "Mistral OCR API Key required.": "", "Model": "", "Model '{{modelName}}' has been successfully downloaded.": "", "Model '{{modelTag}}' is already in queue for downloading.": "", @@ -789,6 +797,7 @@ "OpenAI API Key is required.": "", "OpenAI API settings updated": "", "OpenAI URL/Key required.": "", + "openapi.json Path": "", "or": "", "Organize your users": "", "Other": "", @@ -1022,7 +1031,6 @@ "Temperature": "", "Template": "", "Temporary Chat": "", - "This chat won’t appear in history and your messages will not be saved.": "", "Text Splitter": "", "Text-to-Speech Engine": "", "Tfs Z": "", @@ -1043,6 +1051,7 @@ "Thinking...": "", "This action cannot be undone. Do you wish to continue?": "", "This channel was created on {{createdAt}}. This is the very beginning of the {{channelName}} channel.": "", + "This chat won’t appear in history and your messages will not be saved.": "", "This ensures that your valuable conversations are securely saved to your backend database. Thank you!": "", "This is an experimental feature, it may not function as expected and is subject to change at any time.": "", "This option controls how many tokens are preserved when refreshing the context. For example, if set to 2, the last 2 tokens of the conversation context will be retained. Preserving context can help maintain the continuity of a conversation, but it may reduce the ability to respond to new topics.": "", @@ -1090,6 +1099,7 @@ "Tool ID": "", "Tool imported successfully": "", "Tool Name": "", + "Tool Servers": "", "Tool updated successfully": "", "Tools": "", "Tools Access": "", @@ -1159,7 +1169,7 @@ "Version": "", "Version {{selectedVersion}} of {{totalVersions}}": "", "View Replies": "", - "View Result from `{{NAME}}`": "", + "View Result from **{{NAME}}**": "", "Visibility": "", "Voice": "", "Voice Input": "", @@ -1177,9 +1187,9 @@ "Webhook URL": "", "WebUI Settings": "", "WebUI URL": "", + "WebUI will make requests to \"{{url}}{{path}}\"": "", "WebUI will make requests to \"{{url}}/api/chat\"": "", "WebUI will make requests to \"{{url}}/chat/completions\"": "", - "WebUI will make requests to \"{{url}}/openapi.json\"": "", "What are you trying to achieve?": "", "What are you working on?": "", "What’s New in": "", diff --git a/src/lib/i18n/locales/en-US/translation.json b/src/lib/i18n/locales/en-US/translation.json index f5b2040cb..4249cc60b 100644 --- a/src/lib/i18n/locales/en-US/translation.json +++ b/src/lib/i18n/locales/en-US/translation.json @@ -6,7 +6,7 @@ "(latest)": "", "(Ollama)": "", "{{ models }}": "", - "{{COUNT}} Available Tool Servers": "", + "{{COUNT}} Available Tools": "", "{{COUNT}} hidden lines": "", "{{COUNT}} Replies": "", "{{user}}'s Chats": "", @@ -108,6 +108,7 @@ "Attribute for Username": "", "Audio": "", "August": "", + "Auth": "", "Authenticate": "", "Authentication": "", "Auto-Copy Response to Clipboard": "", @@ -119,7 +120,7 @@ "AUTOMATIC1111 Base URL": "", "AUTOMATIC1111 Base URL is required.": "", "Available list": "", - "Available Tool Servers": "", + "Available Tools": "", "available!": "", "Awful": "", "Azure AI Speech": "", @@ -303,6 +304,7 @@ "Direct Connections": "", "Direct Connections allow users to connect to their own OpenAI compatible API endpoints.": "", "Direct Connections settings updated": "", + "Direct Tool Servers": "", "Disabled": "", "Discover a function": "", "Discover a model": "", @@ -412,6 +414,7 @@ "Enter Kagi Search API Key": "", "Enter Key Behavior": "", "Enter language codes": "", + "Enter Mistral API Key": "", "Enter Model ID": "", "Enter model tag (e.g. {{modelTag}})": "", "Enter Mojeek Search API Key": "", @@ -436,6 +439,7 @@ "Enter server port": "", "Enter stop sequence": "", "Enter system prompt": "", + "Enter system prompt here": "", "Enter Tavily API Key": "", "Enter the public URL of your WebUI. This URL will be used to generate links in the notifications.": "", "Enter Tika Server URL": "", @@ -449,6 +453,7 @@ "Enter Your Email": "", "Enter Your Full Name": "", "Enter your message": "", + "Enter your name": "", "Enter your new password": "", "Enter Your Password": "", "Enter Your Role": "", @@ -468,7 +473,7 @@ "Exceeded the number of seats in your license. Please contact support to increase the number of seats.": "", "Exclude": "", "Execute code for analysis": "", - "Executing `{{NAME}}`...": "", + "Executing **{{NAME}}**...": "", "Expand": "", "Experimental": "", "Explain": "", @@ -525,6 +530,7 @@ "Forge new paths": "", "Form": "", "Format your variables using brackets like this:": "", + "Forwards system user session credentials to authenticate": "", "Frequency Penalty": "", "Full Context Mode": "", "Function": "", @@ -694,6 +700,8 @@ "Mirostat": "", "Mirostat Eta": "", "Mirostat Tau": "", + "Mistral OCR": "", + "Mistral OCR API Key required.": "", "Model": "", "Model '{{modelName}}' has been successfully downloaded.": "", "Model '{{modelTag}}' is already in queue for downloading.": "", @@ -789,6 +797,7 @@ "OpenAI API Key is required.": "", "OpenAI API settings updated": "", "OpenAI URL/Key required.": "", + "openapi.json Path": "", "or": "", "Organize your users": "", "Other": "", @@ -1022,7 +1031,6 @@ "Temperature": "", "Template": "", "Temporary Chat": "", - "This chat won’t appear in history and your messages will not be saved.": "", "Text Splitter": "", "Text-to-Speech Engine": "", "Tfs Z": "", @@ -1043,6 +1051,7 @@ "Thinking...": "", "This action cannot be undone. Do you wish to continue?": "", "This channel was created on {{createdAt}}. This is the very beginning of the {{channelName}} channel.": "", + "This chat won’t appear in history and your messages will not be saved.": "", "This ensures that your valuable conversations are securely saved to your backend database. Thank you!": "", "This is an experimental feature, it may not function as expected and is subject to change at any time.": "", "This option controls how many tokens are preserved when refreshing the context. For example, if set to 2, the last 2 tokens of the conversation context will be retained. Preserving context can help maintain the continuity of a conversation, but it may reduce the ability to respond to new topics.": "", @@ -1090,6 +1099,7 @@ "Tool ID": "", "Tool imported successfully": "", "Tool Name": "", + "Tool Servers": "", "Tool updated successfully": "", "Tools": "", "Tools Access": "", @@ -1159,7 +1169,7 @@ "Version": "", "Version {{selectedVersion}} of {{totalVersions}}": "", "View Replies": "", - "View Result from `{{NAME}}`": "", + "View Result from **{{NAME}}**": "", "Visibility": "", "Voice": "", "Voice Input": "", @@ -1177,9 +1187,9 @@ "Webhook URL": "", "WebUI Settings": "", "WebUI URL": "", + "WebUI will make requests to \"{{url}}{{path}}\"": "", "WebUI will make requests to \"{{url}}/api/chat\"": "", "WebUI will make requests to \"{{url}}/chat/completions\"": "", - "WebUI will make requests to \"{{url}}/openapi.json\"": "", "What are you trying to achieve?": "", "What are you working on?": "", "What’s New in": "", diff --git a/src/lib/i18n/locales/es-ES/translation.json b/src/lib/i18n/locales/es-ES/translation.json index ecb76f49c..faae01cfe 100644 --- a/src/lib/i18n/locales/es-ES/translation.json +++ b/src/lib/i18n/locales/es-ES/translation.json @@ -6,7 +6,7 @@ "(latest)": "(último)", "(Ollama)": "(Ollama)", "{{ models }}": "{{ models }}", - "{{COUNT}} Available Tool Servers": "{{COUNT]] Servidores de Herramientas Disponibles", + "{{COUNT}} Available Tools": "", "{{COUNT}} hidden lines": "{{COUNT}} líneas ocultas", "{{COUNT}} Replies": "{{COUNT}} Respuestas", "{{user}}'s Chats": "Chats de {{user}}", @@ -108,6 +108,7 @@ "Attribute for Username": "Atributo para Nombre de Usuario", "Audio": "Audio", "August": "Agosto", + "Auth": "", "Authenticate": "Autentificar", "Authentication": "Autentificación", "Auto-Copy Response to Clipboard": "Auto-Copiar respuesta al Portapapeles", @@ -119,7 +120,7 @@ "AUTOMATIC1111 Base URL": "URL Base de AUTOMATIC1111", "AUTOMATIC1111 Base URL is required.": "la URL Base de AUTOMATIC1111 es necesaria.", "Available list": "Lista disponible", - "Available Tool Servers": "Servidores de Herramientas Disponible", + "Available Tools": "", "available!": "¡disponible!", "Awful": "Horrible", "Azure AI Speech": "Voz Azure AI", @@ -303,6 +304,7 @@ "Direct Connections": "Conexiones Directas", "Direct Connections allow users to connect to their own OpenAI compatible API endpoints.": "Las Conexiones Directas permiten a los usuarios conectar a sus propios endpoints compatibles API OpenAI.", "Direct Connections settings updated": "Se actualizaron las configuraciones de las Conexiones Directas", + "Direct Tool Servers": "", "Disabled": "Deshabilitado", "Discover a function": "Descubre una Función", "Discover a model": "Descubre un Modelo", @@ -412,6 +414,7 @@ "Enter Kagi Search API Key": "Ingresar Clave API de Kagi Search", "Enter Key Behavior": "Ingresar Clave de Comportamiento", "Enter language codes": "Ingresar Códigos de Idioma", + "Enter Mistral API Key": "", "Enter Model ID": "Ingresar ID del Modelo", "Enter model tag (e.g. {{modelTag}})": "Ingresar la etiqueta del modelo (p.ej. {{modelTag}})", "Enter Mojeek Search API Key": "Ingresar Clave API de Mojeek Search", @@ -436,6 +439,7 @@ "Enter server port": "Ingresar puerto del servidor", "Enter stop sequence": "Ingresar secuencia de parada", "Enter system prompt": "Ingresar Indicador(prompt) del sistema", + "Enter system prompt here": "", "Enter Tavily API Key": "Ingresar Clave API de Tavily", "Enter the public URL of your WebUI. This URL will be used to generate links in the notifications.": "Ingresar URL pública de su WebUI. Esta URL se usará para generar enlaces en las notificaciones.", "Enter Tika Server URL": "Ingresar URL del servidor Tika", @@ -449,6 +453,7 @@ "Enter Your Email": "Ingresa tu correo electrónico", "Enter Your Full Name": "Ingresa su nombre completo", "Enter your message": "Ingresa tu mensaje", + "Enter your name": "", "Enter your new password": "Ingresa tu contraseña nueva", "Enter Your Password": "Ingresa tu contraseña", "Enter Your Role": "Ingresa tu rol", @@ -468,7 +473,7 @@ "Exceeded the number of seats in your license. Please contact support to increase the number of seats.": "Excedido el número de accesos en su licencia. Por favor, contacte con soporte para aumentar el número de accesos.", "Exclude": "Excluir", "Execute code for analysis": "Ejecutar código para análisis", - "Executing `{{NAME}}`...": "Ejecutando `{{NAME}}`...", + "Executing **{{NAME}}**...": "", "Expand": "Expandir", "Experimental": "Experimental", "Explain": "Explicar", @@ -525,6 +530,7 @@ "Forge new paths": "Forjar nuevos caminos", "Form": "Formulario", "Format your variables using brackets like this:": "Formatea tus variables usando corchetes así:", + "Forwards system user session credentials to authenticate": "", "Frequency Penalty": "Penalización de Frecuencia", "Full Context Mode": "Modo Contexto Completo", "Function": "Función", @@ -694,6 +700,8 @@ "Mirostat": "Mirostat", "Mirostat Eta": "Mirostat Eta", "Mirostat Tau": "Mirostat Tau", + "Mistral OCR": "", + "Mistral OCR API Key required.": "", "Model": "Modelo", "Model '{{modelName}}' has been successfully downloaded.": "Modelo '{{modelName}}' se ha descargado correctamente.", "Model '{{modelTag}}' is already in queue for downloading.": "Modelo '{{modelTag}}' ya está en cola para descargar.", @@ -789,6 +797,7 @@ "OpenAI API Key is required.": "Clave API de OpenAI requerida.", "OpenAI API settings updated": "Ajustes de API OpenAI actualizados", "OpenAI URL/Key required.": "URL/Clave de OpenAI requerida.", + "openapi.json Path": "", "or": "o", "Organize your users": "Organiza tus usuarios", "Other": "Otro", @@ -1042,6 +1051,7 @@ "Thinking...": "Pensando...", "This action cannot be undone. Do you wish to continue?": "Esta acción no se puede deshacer. ¿Desea continuar?", "This channel was created on {{createdAt}}. This is the very beginning of the {{channelName}} channel.": "Este canal fue creado el {{createdAt}}. Este es el comienzo del canal {{channelName}}.", + "This chat won’t appear in history and your messages will not be saved.": "", "This ensures that your valuable conversations are securely saved to your backend database. Thank you!": "Esto garantiza que sus valiosas conversaciones se guardan de forma segura en tu base de datos del servidor trasero (backend). ¡Gracias!", "This is an experimental feature, it may not function as expected and is subject to change at any time.": "Esta es una característica experimental, por lo que puede no funcionar como se esperaba y está sujeta a cambios en cualquier momento.", "This option controls how many tokens are preserved when refreshing the context. For example, if set to 2, the last 2 tokens of the conversation context will be retained. Preserving context can help maintain the continuity of a conversation, but it may reduce the ability to respond to new topics.": "Esta opción controla cuántos tokens se conservan cuando se actualiza el contexto. Por ejemplo, si se establece en 2, se conservarán los últimos 2 tokens del contexto de la conversación. Conservar el contexto puede ayudar a mantener la continuidad de una conversación, pero puede reducir la habilidad para responder a nuevos temas.", @@ -1089,6 +1099,7 @@ "Tool ID": "ID de la Herramienta", "Tool imported successfully": "Herramienta importada correctamente", "Tool Name": "Nombre de la Herramienta", + "Tool Servers": "", "Tool updated successfully": "Herramienta actualizada correctamente", "Tools": "Herramientas", "Tools Access": "Acceso a Herramientas", @@ -1158,7 +1169,7 @@ "Version": "Versión", "Version {{selectedVersion}} of {{totalVersions}}": "Versión {{selectedVersion}} de {{totalVersions}}", "View Replies": "Ver Respuestas", - "View Result from `{{NAME}}`": "Ver Resultado desde `{{NAME}}`", + "View Result from **{{NAME}}**": "", "Visibility": "Visibilidad", "Voice": "Voz", "Voice Input": "Entrada de Voz", @@ -1176,9 +1187,9 @@ "Webhook URL": "URL EngancheWeb(Webhook)", "WebUI Settings": "WebUI Ajustes", "WebUI URL": "WebUI URL", + "WebUI will make requests to \"{{url}}{{path}}\"": "", "WebUI will make requests to \"{{url}}/api/chat\"": "WebUI hará solicitudes a \"{{url}}/api/chat\"", "WebUI will make requests to \"{{url}}/chat/completions\"": "WebUI hará solicitudes a \"{{url}}/chat/completions\"", - "WebUI will make requests to \"{{url}}/openapi.json\"": "WebUI hará solicitudes a \"{{url}}/openapi.json\"", "What are you trying to achieve?": "¿Qué estás tratando de conseguir?", "What are you working on?": "¿En qué estás trabajando?", "What’s New in": "Que hay de Nuevo en", diff --git a/src/lib/i18n/locales/et-EE/translation.json b/src/lib/i18n/locales/et-EE/translation.json index b8d3c7bbe..f650a2164 100644 --- a/src/lib/i18n/locales/et-EE/translation.json +++ b/src/lib/i18n/locales/et-EE/translation.json @@ -6,7 +6,7 @@ "(latest)": "(uusim)", "(Ollama)": "", "{{ models }}": "{{ mudelid }}", - "{{COUNT}} Available Tool Servers": "", + "{{COUNT}} Available Tools": "", "{{COUNT}} hidden lines": "{{COUNT}} peidetud rida", "{{COUNT}} Replies": "{{COUNT}} vastust", "{{user}}'s Chats": "{{user}} vestlused", @@ -108,6 +108,7 @@ "Attribute for Username": "Kasutajanime atribuut", "Audio": "Heli", "August": "August", + "Auth": "", "Authenticate": "Autendi", "Authentication": "Autentimine", "Auto-Copy Response to Clipboard": "Kopeeri vastus automaatselt lõikelauale", @@ -119,7 +120,7 @@ "AUTOMATIC1111 Base URL": "AUTOMATIC1111 baas-URL", "AUTOMATIC1111 Base URL is required.": "AUTOMATIC1111 baas-URL on nõutav.", "Available list": "Saadaolevate nimekiri", - "Available Tool Servers": "", + "Available Tools": "", "available!": "saadaval!", "Awful": "Kohutav", "Azure AI Speech": "Azure AI Kõne", @@ -303,6 +304,7 @@ "Direct Connections": "Otsesed ühendused", "Direct Connections allow users to connect to their own OpenAI compatible API endpoints.": "Otsesed ühendused võimaldavad kasutajatel ühenduda oma OpenAI-ga ühilduvate API lõpp-punktidega.", "Direct Connections settings updated": "Otseste ühenduste seaded uuendatud", + "Direct Tool Servers": "", "Disabled": "Keelatud", "Discover a function": "Avasta funktsioon", "Discover a model": "Avasta mudel", @@ -412,6 +414,7 @@ "Enter Kagi Search API Key": "Sisestage Kagi Search API võti", "Enter Key Behavior": "Sisestage võtme käitumine", "Enter language codes": "Sisestage keelekoodid", + "Enter Mistral API Key": "", "Enter Model ID": "Sisestage mudeli ID", "Enter model tag (e.g. {{modelTag}})": "Sisestage mudeli silt (nt {{modelTag}})", "Enter Mojeek Search API Key": "Sisestage Mojeek Search API võti", @@ -436,6 +439,7 @@ "Enter server port": "Sisestage serveri port", "Enter stop sequence": "Sisestage lõpetamise järjestus", "Enter system prompt": "Sisestage süsteemi vihjed", + "Enter system prompt here": "", "Enter Tavily API Key": "Sisestage Tavily API võti", "Enter the public URL of your WebUI. This URL will be used to generate links in the notifications.": "Sisestage oma WebUI avalik URL. Seda URL-i kasutatakse teadaannetes linkide genereerimiseks.", "Enter Tika Server URL": "Sisestage Tika serveri URL", @@ -449,6 +453,7 @@ "Enter Your Email": "Sisestage oma e-post", "Enter Your Full Name": "Sisestage oma täisnimi", "Enter your message": "Sisestage oma sõnum", + "Enter your name": "", "Enter your new password": "Sisestage oma uus parool", "Enter Your Password": "Sisestage oma parool", "Enter Your Role": "Sisestage oma roll", @@ -468,7 +473,7 @@ "Exceeded the number of seats in your license. Please contact support to increase the number of seats.": "Ületasite litsentsis määratud istekohtade arvu. Palun võtke ühendust toega, et suurendada istekohtade arvu.", "Exclude": "Välista", "Execute code for analysis": "Käivita kood analüüsimiseks", - "Executing `{{NAME}}`...": "", + "Executing **{{NAME}}**...": "", "Expand": "Laienda", "Experimental": "Katsetuslik", "Explain": "Selgita", @@ -525,6 +530,7 @@ "Forge new paths": "Loo uusi radu", "Form": "Vorm", "Format your variables using brackets like this:": "Vormindage oma muutujad sulgudega nagu siin:", + "Forwards system user session credentials to authenticate": "", "Frequency Penalty": "Sageduse karistus", "Full Context Mode": "Täiskonteksti režiim", "Function": "Funktsioon", @@ -694,6 +700,8 @@ "Mirostat": "Mirostat", "Mirostat Eta": "Mirostat Eta", "Mirostat Tau": "Mirostat Tau", + "Mistral OCR": "", + "Mistral OCR API Key required.": "", "Model": "Mudel", "Model '{{modelName}}' has been successfully downloaded.": "Mudel '{{modelName}}' on edukalt alla laaditud.", "Model '{{modelTag}}' is already in queue for downloading.": "Mudel '{{modelTag}}' on juba allalaadimise järjekorras.", @@ -789,6 +797,7 @@ "OpenAI API Key is required.": "OpenAI API võti on nõutav.", "OpenAI API settings updated": "OpenAI API seaded uuendatud", "OpenAI URL/Key required.": "OpenAI URL/võti on nõutav.", + "openapi.json Path": "", "or": "või", "Organize your users": "Korraldage oma kasutajad", "Other": "Muu", @@ -1042,6 +1051,7 @@ "Thinking...": "Mõtleb...", "This action cannot be undone. Do you wish to continue?": "Seda toimingut ei saa tagasi võtta. Kas soovite jätkata?", "This channel was created on {{createdAt}}. This is the very beginning of the {{channelName}} channel.": "", + "This chat won’t appear in history and your messages will not be saved.": "", "This ensures that your valuable conversations are securely saved to your backend database. Thank you!": "See tagab, et teie väärtuslikud vestlused salvestatakse turvaliselt teie tagarakenduse andmebaasi. Täname!", "This is an experimental feature, it may not function as expected and is subject to change at any time.": "See on katsetuslik funktsioon, see ei pruugi toimida ootuspäraselt ja võib igal ajal muutuda.", "This option controls how many tokens are preserved when refreshing the context. For example, if set to 2, the last 2 tokens of the conversation context will be retained. Preserving context can help maintain the continuity of a conversation, but it may reduce the ability to respond to new topics.": "See valik kontrollib, mitu tokenit säilitatakse konteksti värskendamisel. Näiteks kui see on määratud 2-le, säilitatakse vestluse konteksti viimased 2 tokenit. Konteksti säilitamine võib aidata säilitada vestluse järjepidevust, kuid võib vähendada võimet reageerida uutele teemadele.", @@ -1089,6 +1099,7 @@ "Tool ID": "Tööriista ID", "Tool imported successfully": "Tööriist edukalt imporditud", "Tool Name": "Tööriista nimi", + "Tool Servers": "", "Tool updated successfully": "Tööriist edukalt uuendatud", "Tools": "Tööriistad", "Tools Access": "Tööriistade juurdepääs", @@ -1158,7 +1169,7 @@ "Version": "Versioon", "Version {{selectedVersion}} of {{totalVersions}}": "Versioon {{selectedVersion}} / {{totalVersions}}", "View Replies": "Vaata vastuseid", - "View Result from `{{NAME}}`": "", + "View Result from **{{NAME}}**": "", "Visibility": "Nähtavus", "Voice": "Hääl", "Voice Input": "Hääle sisend", @@ -1176,9 +1187,9 @@ "Webhook URL": "Webhooki URL", "WebUI Settings": "WebUI seaded", "WebUI URL": "WebUI URL", + "WebUI will make requests to \"{{url}}{{path}}\"": "", "WebUI will make requests to \"{{url}}/api/chat\"": "WebUI teeb päringuid aadressile \"{{url}}/api/chat\"", "WebUI will make requests to \"{{url}}/chat/completions\"": "WebUI teeb päringuid aadressile \"{{url}}/chat/completions\"", - "WebUI will make requests to \"{{url}}/openapi.json\"": "", "What are you trying to achieve?": "Mida te püüate saavutada?", "What are you working on?": "Millega te tegelete?", "What’s New in": "Mis on uut", diff --git a/src/lib/i18n/locales/eu-ES/translation.json b/src/lib/i18n/locales/eu-ES/translation.json index a3f930a6b..5d28a8434 100644 --- a/src/lib/i18n/locales/eu-ES/translation.json +++ b/src/lib/i18n/locales/eu-ES/translation.json @@ -6,7 +6,7 @@ "(latest)": "(azkena)", "(Ollama)": "", "{{ models }}": "{{ models }}", - "{{COUNT}} Available Tool Servers": "", + "{{COUNT}} Available Tools": "", "{{COUNT}} hidden lines": "", "{{COUNT}} Replies": "", "{{user}}'s Chats": "{{user}}-ren Txatak", @@ -108,6 +108,7 @@ "Attribute for Username": "Erabiltzaile-izenerako atributua", "Audio": "Audioa", "August": "Abuztua", + "Auth": "", "Authenticate": "Autentifikatu", "Authentication": "", "Auto-Copy Response to Clipboard": "Automatikoki Kopiatu Erantzuna Arbelera", @@ -119,7 +120,7 @@ "AUTOMATIC1111 Base URL": "AUTOMATIC1111 Oinarri URLa", "AUTOMATIC1111 Base URL is required.": "AUTOMATIC1111 Oinarri URLa beharrezkoa da.", "Available list": "Zerrenda erabilgarria", - "Available Tool Servers": "", + "Available Tools": "", "available!": "eskuragarri!", "Awful": "Penagarria", "Azure AI Speech": "Azure AI Hizketa", @@ -303,6 +304,7 @@ "Direct Connections": "", "Direct Connections allow users to connect to their own OpenAI compatible API endpoints.": "", "Direct Connections settings updated": "", + "Direct Tool Servers": "", "Disabled": "Desgaituta", "Discover a function": "Aurkitu funtzio bat", "Discover a model": "Aurkitu eredu bat", @@ -412,6 +414,7 @@ "Enter Kagi Search API Key": "", "Enter Key Behavior": "", "Enter language codes": "Sartu hizkuntza kodeak", + "Enter Mistral API Key": "", "Enter Model ID": "Sartu Eredu IDa", "Enter model tag (e.g. {{modelTag}})": "Sartu eredu etiketa (adib. {{modelTag}})", "Enter Mojeek Search API Key": "Sartu Mojeek Bilaketa API Gakoa", @@ -436,6 +439,7 @@ "Enter server port": "Sartu zerbitzariaren portua", "Enter stop sequence": "Sartu gelditze sekuentzia", "Enter system prompt": "Sartu sistema prompta", + "Enter system prompt here": "", "Enter Tavily API Key": "Sartu Tavily API Gakoa", "Enter the public URL of your WebUI. This URL will be used to generate links in the notifications.": "", "Enter Tika Server URL": "Sartu Tika Zerbitzari URLa", @@ -449,6 +453,7 @@ "Enter Your Email": "Sartu Zure Posta Elektronikoa", "Enter Your Full Name": "Sartu Zure Izen-abizenak", "Enter your message": "Sartu zure mezua", + "Enter your name": "", "Enter your new password": "", "Enter Your Password": "Sartu Zure Pasahitza", "Enter Your Role": "Sartu Zure Rola", @@ -468,7 +473,7 @@ "Exceeded the number of seats in your license. Please contact support to increase the number of seats.": "", "Exclude": "Baztertu", "Execute code for analysis": "", - "Executing `{{NAME}}`...": "", + "Executing **{{NAME}}**...": "", "Expand": "", "Experimental": "Esperimentala", "Explain": "", @@ -525,6 +530,7 @@ "Forge new paths": "Sortu bide berriak", "Form": "Inprimakia", "Format your variables using brackets like this:": "Formateatu zure aldagaiak kortxeteak erabiliz honela:", + "Forwards system user session credentials to authenticate": "", "Frequency Penalty": "Maiztasun Zigorra", "Full Context Mode": "", "Function": "Funtzioa", @@ -694,6 +700,8 @@ "Mirostat": "Mirostat", "Mirostat Eta": "Mirostat Eta", "Mirostat Tau": "Mirostat Tau", + "Mistral OCR": "", + "Mistral OCR API Key required.": "", "Model": "Modeloa", "Model '{{modelName}}' has been successfully downloaded.": "'{{modelName}}' modeloa ongi deskargatu da.", "Model '{{modelTag}}' is already in queue for downloading.": "'{{modelTag}}' modeloa dagoeneko deskarga ilaran dago.", @@ -789,6 +797,7 @@ "OpenAI API Key is required.": "OpenAI API gakoa beharrezkoa da.", "OpenAI API settings updated": "OpenAI API ezarpenak eguneratu dira", "OpenAI URL/Key required.": "OpenAI URL/Gakoa beharrezkoa da.", + "openapi.json Path": "", "or": "edo", "Organize your users": "Antolatu zure erabiltzaileak", "Other": "Bestelakoa", @@ -1042,6 +1051,7 @@ "Thinking...": "Pentsatzen...", "This action cannot be undone. Do you wish to continue?": "Ekintza hau ezin da desegin. Jarraitu nahi duzu?", "This channel was created on {{createdAt}}. This is the very beginning of the {{channelName}} channel.": "", + "This chat won’t appear in history and your messages will not be saved.": "", "This ensures that your valuable conversations are securely saved to your backend database. Thank you!": "Honek zure elkarrizketa baliotsuak modu seguruan zure backend datu-basean gordeko direla ziurtatzen du. Eskerrik asko!", "This is an experimental feature, it may not function as expected and is subject to change at any time.": "Hau funtzionalitate esperimental bat da, baliteke espero bezala ez funtzionatzea eta edozein unetan aldaketak izatea.", "This option controls how many tokens are preserved when refreshing the context. For example, if set to 2, the last 2 tokens of the conversation context will be retained. Preserving context can help maintain the continuity of a conversation, but it may reduce the ability to respond to new topics.": "", @@ -1089,6 +1099,7 @@ "Tool ID": "Tresna ID", "Tool imported successfully": "Tresna ongi inportatu da", "Tool Name": "Tresnaren izena", + "Tool Servers": "", "Tool updated successfully": "Tresna ongi eguneratu da", "Tools": "Tresnak", "Tools Access": "Tresnen sarbidea", @@ -1158,7 +1169,7 @@ "Version": "Bertsioa", "Version {{selectedVersion}} of {{totalVersions}}": "{{totalVersions}}-tik {{selectedVersion}}. bertsioa", "View Replies": "", - "View Result from `{{NAME}}`": "", + "View Result from **{{NAME}}**": "", "Visibility": "Ikusgarritasuna", "Voice": "Ahotsa", "Voice Input": "Ahots sarrera", @@ -1176,9 +1187,9 @@ "Webhook URL": "Webhook URLa", "WebUI Settings": "WebUI ezarpenak", "WebUI URL": "", + "WebUI will make requests to \"{{url}}{{path}}\"": "", "WebUI will make requests to \"{{url}}/api/chat\"": "WebUI-k eskaerak egingo ditu \"{{url}}/api/chat\"-era", "WebUI will make requests to \"{{url}}/chat/completions\"": "WebUI-k eskaerak egingo ditu \"{{url}}/chat/completions\"-era", - "WebUI will make requests to \"{{url}}/openapi.json\"": "", "What are you trying to achieve?": "Zer lortu nahi duzu?", "What are you working on?": "Zertan ari zara lanean?", "What’s New in": "Zer berri honetan:", diff --git a/src/lib/i18n/locales/fa-IR/translation.json b/src/lib/i18n/locales/fa-IR/translation.json index 94ebb4548..a6625446a 100644 --- a/src/lib/i18n/locales/fa-IR/translation.json +++ b/src/lib/i18n/locales/fa-IR/translation.json @@ -6,7 +6,7 @@ "(latest)": "(آخرین)", "(Ollama)": "", "{{ models }}": "{{ models }}", - "{{COUNT}} Available Tool Servers": "", + "{{COUNT}} Available Tools": "", "{{COUNT}} hidden lines": "", "{{COUNT}} Replies": "", "{{user}}'s Chats": "{{user}} گفتگوهای", @@ -108,6 +108,7 @@ "Attribute for Username": "", "Audio": "صدا", "August": "آگوست", + "Auth": "", "Authenticate": "", "Authentication": "", "Auto-Copy Response to Clipboard": "کپی خودکار پاسخ به کلیپ بورد", @@ -119,7 +120,7 @@ "AUTOMATIC1111 Base URL": "پایه URL AUTOMATIC1111 ", "AUTOMATIC1111 Base URL is required.": "به URL پایه AUTOMATIC1111 مورد نیاز است.", "Available list": "فهرست دردسترس", - "Available Tool Servers": "", + "Available Tools": "", "available!": "در دسترس!", "Awful": "", "Azure AI Speech": "سخنگوی هوش\u200cمصنوعی Azure", @@ -303,6 +304,7 @@ "Direct Connections": "", "Direct Connections allow users to connect to their own OpenAI compatible API endpoints.": "", "Direct Connections settings updated": "", + "Direct Tool Servers": "", "Disabled": "", "Discover a function": "", "Discover a model": "کشف یک مدل", @@ -412,6 +414,7 @@ "Enter Kagi Search API Key": "", "Enter Key Behavior": "", "Enter language codes": "کد زبان را وارد کنید", + "Enter Mistral API Key": "", "Enter Model ID": "", "Enter model tag (e.g. {{modelTag}})": "تگ مدل را وارد کنید (مثلا {{modelTag}})", "Enter Mojeek Search API Key": "", @@ -436,6 +439,7 @@ "Enter server port": "", "Enter stop sequence": "توالی توقف را وارد کنید", "Enter system prompt": "", + "Enter system prompt here": "", "Enter Tavily API Key": "", "Enter the public URL of your WebUI. This URL will be used to generate links in the notifications.": "", "Enter Tika Server URL": "", @@ -449,6 +453,7 @@ "Enter Your Email": "ایمیل خود را وارد کنید", "Enter Your Full Name": "نام کامل خود را وارد کنید", "Enter your message": "", + "Enter your name": "", "Enter your new password": "", "Enter Your Password": "رمز عبور خود را وارد کنید", "Enter Your Role": "نقش خود را وارد کنید", @@ -468,7 +473,7 @@ "Exceeded the number of seats in your license. Please contact support to increase the number of seats.": "", "Exclude": "", "Execute code for analysis": "", - "Executing `{{NAME}}`...": "", + "Executing **{{NAME}}**...": "", "Expand": "", "Experimental": "آزمایشی", "Explain": "", @@ -525,6 +530,7 @@ "Forge new paths": "", "Form": "", "Format your variables using brackets like this:": "", + "Forwards system user session credentials to authenticate": "", "Frequency Penalty": "مجازات فرکانس", "Full Context Mode": "", "Function": "", @@ -694,6 +700,8 @@ "Mirostat": "Mirostat", "Mirostat Eta": "Mirostat Eta", "Mirostat Tau": "Mirostat Tau", + "Mistral OCR": "", + "Mistral OCR API Key required.": "", "Model": "", "Model '{{modelName}}' has been successfully downloaded.": "مدل '{{modelName}}' با موفقیت دانلود شد.", "Model '{{modelTag}}' is already in queue for downloading.": "مدل '{{modelTag}}' در حال حاضر در صف برای دانلود است.", @@ -789,6 +797,7 @@ "OpenAI API Key is required.": "مقدار کلید OpenAI API مورد نیاز است.", "OpenAI API settings updated": "", "OpenAI URL/Key required.": "URL/Key OpenAI مورد نیاز است.", + "openapi.json Path": "", "or": "یا", "Organize your users": "", "Other": "دیگر", @@ -1042,6 +1051,7 @@ "Thinking...": "در حال فکر...", "This action cannot be undone. Do you wish to continue?": "این اقدام قابل بازگردانی نیست. برای ادامه اطمینان دارید؟", "This channel was created on {{createdAt}}. This is the very beginning of the {{channelName}} channel.": "", + "This chat won’t appear in history and your messages will not be saved.": "", "This ensures that your valuable conversations are securely saved to your backend database. Thank you!": "این تضمین می کند که مکالمات ارزشمند شما به طور ایمن در پایگاه داده بکند ذخیره می شود. تشکر!", "This is an experimental feature, it may not function as expected and is subject to change at any time.": "", "This option controls how many tokens are preserved when refreshing the context. For example, if set to 2, the last 2 tokens of the conversation context will be retained. Preserving context can help maintain the continuity of a conversation, but it may reduce the ability to respond to new topics.": "", @@ -1089,6 +1099,7 @@ "Tool ID": "", "Tool imported successfully": "", "Tool Name": "", + "Tool Servers": "", "Tool updated successfully": "", "Tools": "", "Tools Access": "", @@ -1158,7 +1169,7 @@ "Version": "نسخه", "Version {{selectedVersion}} of {{totalVersions}}": "نسخهٔ {{selectedVersion}} از {{totalVersions}}", "View Replies": "", - "View Result from `{{NAME}}`": "", + "View Result from **{{NAME}}**": "", "Visibility": "", "Voice": "صوت", "Voice Input": "ورودی صوتی", @@ -1176,9 +1187,9 @@ "Webhook URL": "نشانی وب\u200cهوک", "WebUI Settings": "تنظیمات WebUI", "WebUI URL": "", + "WebUI will make requests to \"{{url}}{{path}}\"": "", "WebUI will make requests to \"{{url}}/api/chat\"": "", "WebUI will make requests to \"{{url}}/chat/completions\"": "", - "WebUI will make requests to \"{{url}}/openapi.json\"": "", "What are you trying to achieve?": "", "What are you working on?": "", "What’s New in": "موارد جدید در", diff --git a/src/lib/i18n/locales/fi-FI/translation.json b/src/lib/i18n/locales/fi-FI/translation.json index 1a9741dcd..1c1f22f44 100644 --- a/src/lib/i18n/locales/fi-FI/translation.json +++ b/src/lib/i18n/locales/fi-FI/translation.json @@ -6,7 +6,7 @@ "(latest)": "(uusin)", "(Ollama)": "", "{{ models }}": "{{ mallit }}", - "{{COUNT}} Available Tool Servers": "", + "{{COUNT}} Available Tools": "", "{{COUNT}} hidden lines": "{{COUNT}} piilotettua riviä", "{{COUNT}} Replies": "{{COUNT}} vastausta", "{{user}}'s Chats": "{{user}}:n keskustelut", @@ -108,6 +108,7 @@ "Attribute for Username": "Käyttäjänimi-määritämä", "Audio": "Ääni", "August": "elokuu", + "Auth": "", "Authenticate": "Todentaa", "Authentication": "Todennus", "Auto-Copy Response to Clipboard": "Kopioi vastaus automaattisesti leikepöydälle", @@ -119,7 +120,7 @@ "AUTOMATIC1111 Base URL": "AUTOMATIC1111-perus-URL", "AUTOMATIC1111 Base URL is required.": "AUTOMATIC1111-perus-URL vaaditaan.", "Available list": "Käytettävissä oleva luettelo", - "Available Tool Servers": "", + "Available Tools": "", "available!": "saatavilla!", "Awful": "Kauhea", "Azure AI Speech": "Azure AI Speech", @@ -303,6 +304,7 @@ "Direct Connections": "Suorat yhteydet", "Direct Connections allow users to connect to their own OpenAI compatible API endpoints.": "Suorat yhteydet mahdollistavat käyttäjien yhdistää omia OpenAI-yhteensopivia API-päätepisteitä.", "Direct Connections settings updated": "Suorien yhteyksien asetukset päivitetty", + "Direct Tool Servers": "", "Disabled": "Ei käytössä", "Discover a function": "Löydä toiminto", "Discover a model": "Tutustu malliin", @@ -412,6 +414,7 @@ "Enter Kagi Search API Key": "Kirjoita Kagi Search API -avain", "Enter Key Behavior": "Enter näppäimen käyttäytyminen", "Enter language codes": "Kirjoita kielikoodit", + "Enter Mistral API Key": "", "Enter Model ID": "Kirjoita mallitunnus", "Enter model tag (e.g. {{modelTag}})": "Kirjoita mallitagi (esim. {{modelTag}})", "Enter Mojeek Search API Key": "Kirjoita Mojeek Search API -avain", @@ -436,6 +439,7 @@ "Enter server port": "Kirjoita palvelimen portti", "Enter stop sequence": "Kirjoita lopetussekvenssi", "Enter system prompt": "Kirjoita järjestelmäkehote", + "Enter system prompt here": "", "Enter Tavily API Key": "Kirjoita Tavily API -avain", "Enter the public URL of your WebUI. This URL will be used to generate links in the notifications.": "Kirjoita julkinen WebUI verkko-osoitteesi. Verkko-osoitetta käytetään osoitteiden luontiin ilmoituksissa.", "Enter Tika Server URL": "Kirjoita Tika Server URL", @@ -449,6 +453,7 @@ "Enter Your Email": "Kirjoita sähköpostiosoitteesi", "Enter Your Full Name": "Kirjoita koko nimesi", "Enter your message": "Kirjoita viestisi", + "Enter your name": "", "Enter your new password": "Kirjoita uusi salasanasi", "Enter Your Password": "Kirjoita salasanasi", "Enter Your Role": "Kirjoita roolisi", @@ -468,7 +473,7 @@ "Exceeded the number of seats in your license. Please contact support to increase the number of seats.": "", "Exclude": "Jätä pois", "Execute code for analysis": "Suorita koodi analysointia varten", - "Executing `{{NAME}}`...": "", + "Executing **{{NAME}}**...": "", "Expand": "Laajenna", "Experimental": "Kokeellinen", "Explain": "Selitä", @@ -525,6 +530,7 @@ "Forge new paths": "Luo uusia polkuja", "Form": "Lomake", "Format your variables using brackets like this:": "Muotoile muuttujasi hakasulkeilla tällä tavalla:", + "Forwards system user session credentials to authenticate": "", "Frequency Penalty": "Taajuussakko", "Full Context Mode": "Koko kontekstitila", "Function": "Toiminto", @@ -694,6 +700,8 @@ "Mirostat": "Mirostat", "Mirostat Eta": "Mirostat Eta", "Mirostat Tau": "Mirostat Tau", + "Mistral OCR": "", + "Mistral OCR API Key required.": "", "Model": "Malli", "Model '{{modelName}}' has been successfully downloaded.": "Malli '{{modelName}}' ladattiin onnistuneesti.", "Model '{{modelTag}}' is already in queue for downloading.": "Malli '{{modelTag}}' on jo jonossa ladattavaksi.", @@ -789,6 +797,7 @@ "OpenAI API Key is required.": "OpenAI API -avain vaaditaan.", "OpenAI API settings updated": "OpenAI API -asetukset päivitetty", "OpenAI URL/Key required.": "OpenAI URL/avain vaaditaan.", + "openapi.json Path": "", "or": "tai", "Organize your users": "Järjestä käyttäjäsi", "Other": "Muu", @@ -1042,6 +1051,7 @@ "Thinking...": "Ajattelee...", "This action cannot be undone. Do you wish to continue?": "Tätä toimintoa ei voi peruuttaa. Haluatko jatkaa?", "This channel was created on {{createdAt}}. This is the very beginning of the {{channelName}} channel.": "", + "This chat won’t appear in history and your messages will not be saved.": "", "This ensures that your valuable conversations are securely saved to your backend database. Thank you!": "Tämä varmistaa, että arvokkaat keskustelusi tallennetaan turvallisesti backend-tietokantaasi. Kiitos!", "This is an experimental feature, it may not function as expected and is subject to change at any time.": "Tämä on kokeellinen ominaisuus, se ei välttämättä toimi odotetulla tavalla ja se voi muuttua milloin tahansa.", "This option controls how many tokens are preserved when refreshing the context. For example, if set to 2, the last 2 tokens of the conversation context will be retained. Preserving context can help maintain the continuity of a conversation, but it may reduce the ability to respond to new topics.": "", @@ -1089,6 +1099,7 @@ "Tool ID": "Työkalun tunnus", "Tool imported successfully": "Työkalu tuotu onnistuneesti", "Tool Name": "Työkalun nimi", + "Tool Servers": "", "Tool updated successfully": "Työkalu päivitetty onnistuneesti", "Tools": "Työkalut", "Tools Access": "Työkalujen käyttöoikeudet", @@ -1158,7 +1169,7 @@ "Version": "Versio", "Version {{selectedVersion}} of {{totalVersions}}": "Versio {{selectedVersion}} / {{totalVersions}}", "View Replies": "Näytä vastaukset", - "View Result from `{{NAME}}`": "", + "View Result from **{{NAME}}**": "", "Visibility": "Näkyvyys", "Voice": "Ääni", "Voice Input": "Äänitulolaitteen käyttö", @@ -1176,9 +1187,9 @@ "Webhook URL": "Webhook verkko-osoite", "WebUI Settings": "WebUI-asetukset", "WebUI URL": "WebUI-osoite", + "WebUI will make requests to \"{{url}}{{path}}\"": "", "WebUI will make requests to \"{{url}}/api/chat\"": "WebUI lähettää pyyntöjä osoitteeseen \"{{url}}/api/chat\"", "WebUI will make requests to \"{{url}}/chat/completions\"": "WebUI lähettää pyyntöjä osoitteeseen \"{{url}}/chat/completions\"", - "WebUI will make requests to \"{{url}}/openapi.json\"": "", "What are you trying to achieve?": "Mitä yrität saavuttaa?", "What are you working on?": "Mitä olet työskentelemässä?", "What’s New in": "Mitä uutta", diff --git a/src/lib/i18n/locales/fr-CA/translation.json b/src/lib/i18n/locales/fr-CA/translation.json index 844cef9ba..8c4a9e049 100644 --- a/src/lib/i18n/locales/fr-CA/translation.json +++ b/src/lib/i18n/locales/fr-CA/translation.json @@ -6,7 +6,7 @@ "(latest)": "(dernier)", "(Ollama)": "", "{{ models }}": "{{ modèles }}", - "{{COUNT}} Available Tool Servers": "", + "{{COUNT}} Available Tools": "", "{{COUNT}} hidden lines": "", "{{COUNT}} Replies": "", "{{user}}'s Chats": "Discussions de {{user}}", @@ -108,6 +108,7 @@ "Attribute for Username": "", "Audio": "Audio", "August": "Août", + "Auth": "", "Authenticate": "", "Authentication": "", "Auto-Copy Response to Clipboard": "Copie automatique de la réponse vers le presse-papiers", @@ -119,7 +120,7 @@ "AUTOMATIC1111 Base URL": "URL de base AUTOMATIC1111", "AUTOMATIC1111 Base URL is required.": "L'URL de base {AUTOMATIC1111} est requise.", "Available list": "", - "Available Tool Servers": "", + "Available Tools": "", "available!": "disponible !", "Awful": "", "Azure AI Speech": "", @@ -303,6 +304,7 @@ "Direct Connections": "", "Direct Connections allow users to connect to their own OpenAI compatible API endpoints.": "", "Direct Connections settings updated": "", + "Direct Tool Servers": "", "Disabled": "", "Discover a function": "Découvrez une fonction", "Discover a model": "Découvrir un modèle", @@ -412,6 +414,7 @@ "Enter Kagi Search API Key": "", "Enter Key Behavior": "", "Enter language codes": "Entrez les codes de langue", + "Enter Mistral API Key": "", "Enter Model ID": "", "Enter model tag (e.g. {{modelTag}})": "Entrez l'étiquette du modèle (par ex. {{modelTag}})", "Enter Mojeek Search API Key": "", @@ -436,6 +439,7 @@ "Enter server port": "", "Enter stop sequence": "Entrez la séquence d'arrêt", "Enter system prompt": "", + "Enter system prompt here": "", "Enter Tavily API Key": "Entrez la clé API Tavily", "Enter the public URL of your WebUI. This URL will be used to generate links in the notifications.": "", "Enter Tika Server URL": "", @@ -449,6 +453,7 @@ "Enter Your Email": "Entrez votre adresse e-mail", "Enter Your Full Name": "Entrez votre nom complet", "Enter your message": "", + "Enter your name": "", "Enter your new password": "", "Enter Your Password": "Entrez votre mot de passe", "Enter Your Role": "Entrez votre rôle", @@ -468,7 +473,7 @@ "Exceeded the number of seats in your license. Please contact support to increase the number of seats.": "", "Exclude": "", "Execute code for analysis": "", - "Executing `{{NAME}}`...": "", + "Executing **{{NAME}}**...": "", "Expand": "", "Experimental": "Expérimental", "Explain": "", @@ -525,6 +530,7 @@ "Forge new paths": "", "Form": "Formulaire", "Format your variables using brackets like this:": "", + "Forwards system user session credentials to authenticate": "", "Frequency Penalty": "Pénalité de fréquence", "Full Context Mode": "", "Function": "", @@ -694,6 +700,8 @@ "Mirostat": "Mirostat", "Mirostat Eta": "Mirostat Eta", "Mirostat Tau": "Mirostat Tau", + "Mistral OCR": "", + "Mistral OCR API Key required.": "", "Model": "", "Model '{{modelName}}' has been successfully downloaded.": "Le modèle '{{modelName}}' a été téléchargé avec succès.", "Model '{{modelTag}}' is already in queue for downloading.": "Le modèle '{{modelTag}}' est déjà dans la file d'attente pour le téléchargement.", @@ -789,6 +797,7 @@ "OpenAI API Key is required.": "Une clé API OpenAI est requise.", "OpenAI API settings updated": "", "OpenAI URL/Key required.": "URL/Clé OpenAI requise.", + "openapi.json Path": "", "or": "ou", "Organize your users": "", "Other": "Autre", @@ -1042,6 +1051,7 @@ "Thinking...": "En train de réfléchir...", "This action cannot be undone. Do you wish to continue?": "Cette action ne peut pas être annulée. Souhaitez-vous continuer ?", "This channel was created on {{createdAt}}. This is the very beginning of the {{channelName}} channel.": "", + "This chat won’t appear in history and your messages will not be saved.": "", "This ensures that your valuable conversations are securely saved to your backend database. Thank you!": "Cela garantit que vos conversations précieuses soient sauvegardées en toute sécurité dans votre base de données backend. Merci !", "This is an experimental feature, it may not function as expected and is subject to change at any time.": "Il s'agit d'une fonctionnalité expérimentale, elle peut ne pas fonctionner comme prévu et est sujette à modification à tout moment.", "This option controls how many tokens are preserved when refreshing the context. For example, if set to 2, the last 2 tokens of the conversation context will be retained. Preserving context can help maintain the continuity of a conversation, but it may reduce the ability to respond to new topics.": "", @@ -1089,6 +1099,7 @@ "Tool ID": "", "Tool imported successfully": "Outil importé avec succès", "Tool Name": "", + "Tool Servers": "", "Tool updated successfully": "L'outil a été mis à jour avec succès", "Tools": "Outils", "Tools Access": "", @@ -1158,7 +1169,7 @@ "Version": "Version améliorée", "Version {{selectedVersion}} of {{totalVersions}}": "", "View Replies": "", - "View Result from `{{NAME}}`": "", + "View Result from **{{NAME}}**": "", "Visibility": "", "Voice": "Voix", "Voice Input": "", @@ -1176,9 +1187,9 @@ "Webhook URL": "URL du webhook", "WebUI Settings": "Paramètres de WebUI", "WebUI URL": "", + "WebUI will make requests to \"{{url}}{{path}}\"": "", "WebUI will make requests to \"{{url}}/api/chat\"": "", "WebUI will make requests to \"{{url}}/chat/completions\"": "", - "WebUI will make requests to \"{{url}}/openapi.json\"": "", "What are you trying to achieve?": "", "What are you working on?": "", "What’s New in": "Quoi de neuf", diff --git a/src/lib/i18n/locales/fr-FR/translation.json b/src/lib/i18n/locales/fr-FR/translation.json index 1ce104c10..2c157fc09 100644 --- a/src/lib/i18n/locales/fr-FR/translation.json +++ b/src/lib/i18n/locales/fr-FR/translation.json @@ -6,7 +6,7 @@ "(latest)": "(dernière version)", "(Ollama)": "", "{{ models }}": "{{ models }}", - "{{COUNT}} Available Tool Servers": "", + "{{COUNT}} Available Tools": "", "{{COUNT}} hidden lines": "", "{{COUNT}} Replies": "{{COUNT}} réponses", "{{user}}'s Chats": "Conversations de {{user}}", @@ -108,6 +108,7 @@ "Attribute for Username": "Attribut pour le nom d'utilisateur", "Audio": "Audio", "August": "Août", + "Auth": "", "Authenticate": "Authentifier", "Authentication": "", "Auto-Copy Response to Clipboard": "Copie automatique de la réponse vers le presse-papiers", @@ -119,7 +120,7 @@ "AUTOMATIC1111 Base URL": "URL de base AUTOMATIC1111", "AUTOMATIC1111 Base URL is required.": "L'URL de base {AUTOMATIC1111} est requise.", "Available list": "Liste disponible", - "Available Tool Servers": "", + "Available Tools": "", "available!": "disponible !", "Awful": "Horrible", "Azure AI Speech": "Azure AI Speech", @@ -303,6 +304,7 @@ "Direct Connections": "", "Direct Connections allow users to connect to their own OpenAI compatible API endpoints.": "", "Direct Connections settings updated": "", + "Direct Tool Servers": "", "Disabled": "Désactivé", "Discover a function": "Trouvez une fonction", "Discover a model": "Trouvez un modèle", @@ -412,6 +414,7 @@ "Enter Kagi Search API Key": "Entrez la clé API Kagi Search", "Enter Key Behavior": "", "Enter language codes": "Entrez les codes de langue", + "Enter Mistral API Key": "", "Enter Model ID": "Entrez l'ID du modèle", "Enter model tag (e.g. {{modelTag}})": "Entrez le tag du modèle (par ex. {{modelTag}})", "Enter Mojeek Search API Key": "Entrez la clé API Mojeek", @@ -436,6 +439,7 @@ "Enter server port": "Entrez le port du serveur", "Enter stop sequence": "Entrez la séquence d'arrêt", "Enter system prompt": "Entrez le prompt système", + "Enter system prompt here": "", "Enter Tavily API Key": "Entrez la clé API Tavily", "Enter the public URL of your WebUI. This URL will be used to generate links in the notifications.": "Entrez l'URL publique de votre WebUI. Cette URL sera utilisée pour générer des liens dans les notifications.", "Enter Tika Server URL": "Entrez l'URL du serveur Tika", @@ -449,6 +453,7 @@ "Enter Your Email": "Entrez votre adresse e-mail", "Enter Your Full Name": "Entrez votre nom complet", "Enter your message": "Entrez votre message", + "Enter your name": "", "Enter your new password": "Entrez votre nouveau mot de passe", "Enter Your Password": "Entrez votre mot de passe", "Enter Your Role": "Entrez votre rôle", @@ -468,7 +473,7 @@ "Exceeded the number of seats in your license. Please contact support to increase the number of seats.": "", "Exclude": "Exclure", "Execute code for analysis": "", - "Executing `{{NAME}}`...": "", + "Executing **{{NAME}}**...": "", "Expand": "", "Experimental": "Expérimental", "Explain": "", @@ -525,6 +530,7 @@ "Forge new paths": "Créer de nouveaux chemins", "Form": "Formulaire", "Format your variables using brackets like this:": "Formatez vos variables en utilisant des parenthèses comme ceci :", + "Forwards system user session credentials to authenticate": "", "Frequency Penalty": "Pénalité de fréquence", "Full Context Mode": "", "Function": "Fonction", @@ -694,6 +700,8 @@ "Mirostat": "Mirostat", "Mirostat Eta": "Mirostat Eta", "Mirostat Tau": "Mirostat Tau", + "Mistral OCR": "", + "Mistral OCR API Key required.": "", "Model": "Modèle", "Model '{{modelName}}' has been successfully downloaded.": "Le modèle '{{modelName}}' a été téléchargé avec succès.", "Model '{{modelTag}}' is already in queue for downloading.": "Le modèle '{{modelTag}}' est déjà dans la file d'attente pour le téléchargement.", @@ -789,6 +797,7 @@ "OpenAI API Key is required.": "Une clé API OpenAI est requise.", "OpenAI API settings updated": "Paramètres de l'API OpenAI mis à jour", "OpenAI URL/Key required.": "URL/Clé OpenAI requise.", + "openapi.json Path": "", "or": "ou", "Organize your users": "Organisez vos utilisateurs", "Other": "Autre", @@ -1042,6 +1051,7 @@ "Thinking...": "En train de réfléchir...", "This action cannot be undone. Do you wish to continue?": "Cette action ne peut pas être annulée. Souhaitez-vous continuer ?", "This channel was created on {{createdAt}}. This is the very beginning of the {{channelName}} channel.": "", + "This chat won’t appear in history and your messages will not be saved.": "", "This ensures that your valuable conversations are securely saved to your backend database. Thank you!": "Cela garantit que vos conversations précieuses soient sauvegardées en toute sécurité dans votre base de données backend. Merci !", "This is an experimental feature, it may not function as expected and is subject to change at any time.": "Il s'agit d'une fonctionnalité expérimentale, elle peut ne pas fonctionner comme prévu et est sujette à modification à tout moment.", "This option controls how many tokens are preserved when refreshing the context. For example, if set to 2, the last 2 tokens of the conversation context will be retained. Preserving context can help maintain the continuity of a conversation, but it may reduce the ability to respond to new topics.": "", @@ -1089,6 +1099,7 @@ "Tool ID": "ID de l'outil", "Tool imported successfully": "Outil importé avec succès", "Tool Name": "Nom de l'outil", + "Tool Servers": "", "Tool updated successfully": "L'outil a été mis à jour avec succès", "Tools": "Outils", "Tools Access": "Accès aux outils", @@ -1158,7 +1169,7 @@ "Version": "Version:", "Version {{selectedVersion}} of {{totalVersions}}": "Version {{selectedVersion}} de {{totalVersions}}", "View Replies": "Voir les réponses", - "View Result from `{{NAME}}`": "", + "View Result from **{{NAME}}**": "", "Visibility": "Visibilité", "Voice": "Voix", "Voice Input": "Saisie vocale", @@ -1176,9 +1187,9 @@ "Webhook URL": "URL du webhook", "WebUI Settings": "Paramètres de WebUI", "WebUI URL": "URL de WebUI", + "WebUI will make requests to \"{{url}}{{path}}\"": "", "WebUI will make requests to \"{{url}}/api/chat\"": "WebUI fera des requêtes à \"{{url}}/api/chat\"", "WebUI will make requests to \"{{url}}/chat/completions\"": "WebUI fera des requêtes à \"{{url}}/chat/completions\"", - "WebUI will make requests to \"{{url}}/openapi.json\"": "", "What are you trying to achieve?": "Que cherchez-vous à accomplir ?", "What are you working on?": "Sur quoi travaillez-vous ?", "What’s New in": "Quoi de neuf dans", diff --git a/src/lib/i18n/locales/he-IL/translation.json b/src/lib/i18n/locales/he-IL/translation.json index 9ce4d61ae..e7ef7f8c1 100644 --- a/src/lib/i18n/locales/he-IL/translation.json +++ b/src/lib/i18n/locales/he-IL/translation.json @@ -6,7 +6,7 @@ "(latest)": "(האחרון)", "(Ollama)": "", "{{ models }}": "{{ דגמים }}", - "{{COUNT}} Available Tool Servers": "", + "{{COUNT}} Available Tools": "", "{{COUNT}} hidden lines": "", "{{COUNT}} Replies": "", "{{user}}'s Chats": "צ'אטים של {{user}}", @@ -108,6 +108,7 @@ "Attribute for Username": "", "Audio": "אודיו", "August": "אוגוסט", + "Auth": "", "Authenticate": "", "Authentication": "", "Auto-Copy Response to Clipboard": "העתקה אוטומטית של תגובה ללוח", @@ -119,7 +120,7 @@ "AUTOMATIC1111 Base URL": "כתובת URL בסיסית של AUTOMATIC1111", "AUTOMATIC1111 Base URL is required.": "נדרשת כתובת URL בסיסית של AUTOMATIC1111", "Available list": "", - "Available Tool Servers": "", + "Available Tools": "", "available!": "זמין!", "Awful": "", "Azure AI Speech": "", @@ -303,6 +304,7 @@ "Direct Connections": "", "Direct Connections allow users to connect to their own OpenAI compatible API endpoints.": "", "Direct Connections settings updated": "", + "Direct Tool Servers": "", "Disabled": "", "Discover a function": "", "Discover a model": "גלה מודל", @@ -412,6 +414,7 @@ "Enter Kagi Search API Key": "", "Enter Key Behavior": "", "Enter language codes": "הזן קודי שפה", + "Enter Mistral API Key": "", "Enter Model ID": "", "Enter model tag (e.g. {{modelTag}})": "הזן תג מודל (למשל {{modelTag}})", "Enter Mojeek Search API Key": "", @@ -436,6 +439,7 @@ "Enter server port": "", "Enter stop sequence": "הזן רצף עצירה", "Enter system prompt": "", + "Enter system prompt here": "", "Enter Tavily API Key": "", "Enter the public URL of your WebUI. This URL will be used to generate links in the notifications.": "", "Enter Tika Server URL": "", @@ -449,6 +453,7 @@ "Enter Your Email": "הזן את דוא\"ל שלך", "Enter Your Full Name": "הזן את שמך המלא", "Enter your message": "", + "Enter your name": "", "Enter your new password": "", "Enter Your Password": "הזן את הסיסמה שלך", "Enter Your Role": "הזן את התפקיד שלך", @@ -468,7 +473,7 @@ "Exceeded the number of seats in your license. Please contact support to increase the number of seats.": "", "Exclude": "", "Execute code for analysis": "", - "Executing `{{NAME}}`...": "", + "Executing **{{NAME}}**...": "", "Expand": "", "Experimental": "ניסיוני", "Explain": "", @@ -525,6 +530,7 @@ "Forge new paths": "", "Form": "", "Format your variables using brackets like this:": "", + "Forwards system user session credentials to authenticate": "", "Frequency Penalty": "עונש תדירות", "Full Context Mode": "", "Function": "", @@ -694,6 +700,8 @@ "Mirostat": "Mirostat", "Mirostat Eta": "Mirostat Eta", "Mirostat Tau": "Mirostat Tau", + "Mistral OCR": "", + "Mistral OCR API Key required.": "", "Model": "", "Model '{{modelName}}' has been successfully downloaded.": "המודל '{{modelName}}' הורד בהצלחה.", "Model '{{modelTag}}' is already in queue for downloading.": "המודל '{{modelTag}}' כבר בתור להורדה.", @@ -789,6 +797,7 @@ "OpenAI API Key is required.": "נדרש מפתח API של OpenAI.", "OpenAI API settings updated": "", "OpenAI URL/Key required.": "נדרשת כתובת URL/מפתח של OpenAI.", + "openapi.json Path": "", "or": "או", "Organize your users": "", "Other": "אחר", @@ -1042,6 +1051,7 @@ "Thinking...": "", "This action cannot be undone. Do you wish to continue?": "", "This channel was created on {{createdAt}}. This is the very beginning of the {{channelName}} channel.": "", + "This chat won’t appear in history and your messages will not be saved.": "", "This ensures that your valuable conversations are securely saved to your backend database. Thank you!": "פעולה זו מבטיחה שהשיחות בעלות הערך שלך יישמרו באופן מאובטח במסד הנתונים העורפי שלך. תודה!", "This is an experimental feature, it may not function as expected and is subject to change at any time.": "", "This option controls how many tokens are preserved when refreshing the context. For example, if set to 2, the last 2 tokens of the conversation context will be retained. Preserving context can help maintain the continuity of a conversation, but it may reduce the ability to respond to new topics.": "", @@ -1089,6 +1099,7 @@ "Tool ID": "", "Tool imported successfully": "", "Tool Name": "", + "Tool Servers": "", "Tool updated successfully": "", "Tools": "", "Tools Access": "", @@ -1158,7 +1169,7 @@ "Version": "גרסה", "Version {{selectedVersion}} of {{totalVersions}}": "", "View Replies": "", - "View Result from `{{NAME}}`": "", + "View Result from **{{NAME}}**": "", "Visibility": "", "Voice": "", "Voice Input": "", @@ -1176,9 +1187,9 @@ "Webhook URL": "URL Webhook", "WebUI Settings": "הגדרות WebUI", "WebUI URL": "", + "WebUI will make requests to \"{{url}}{{path}}\"": "", "WebUI will make requests to \"{{url}}/api/chat\"": "", "WebUI will make requests to \"{{url}}/chat/completions\"": "", - "WebUI will make requests to \"{{url}}/openapi.json\"": "", "What are you trying to achieve?": "", "What are you working on?": "", "What’s New in": "מה חדש ב", diff --git a/src/lib/i18n/locales/hi-IN/translation.json b/src/lib/i18n/locales/hi-IN/translation.json index 2ba22fc62..41ab29106 100644 --- a/src/lib/i18n/locales/hi-IN/translation.json +++ b/src/lib/i18n/locales/hi-IN/translation.json @@ -6,7 +6,7 @@ "(latest)": "(latest)", "(Ollama)": "", "{{ models }}": "{{ मॉडल }}", - "{{COUNT}} Available Tool Servers": "", + "{{COUNT}} Available Tools": "", "{{COUNT}} hidden lines": "", "{{COUNT}} Replies": "", "{{user}}'s Chats": "{{user}} की चैट", @@ -108,6 +108,7 @@ "Attribute for Username": "", "Audio": "ऑडियो", "August": "अगस्त", + "Auth": "", "Authenticate": "", "Authentication": "", "Auto-Copy Response to Clipboard": "क्लिपबोर्ड पर प्रतिक्रिया ऑटोकॉपी", @@ -119,7 +120,7 @@ "AUTOMATIC1111 Base URL": "AUTOMATIC1111 बेस यूआरएल", "AUTOMATIC1111 Base URL is required.": "AUTOMATIC1111 का बेस यूआरएल आवश्यक है।", "Available list": "", - "Available Tool Servers": "", + "Available Tools": "", "available!": "उपलब्ध!", "Awful": "", "Azure AI Speech": "", @@ -303,6 +304,7 @@ "Direct Connections": "", "Direct Connections allow users to connect to their own OpenAI compatible API endpoints.": "", "Direct Connections settings updated": "", + "Direct Tool Servers": "", "Disabled": "", "Discover a function": "", "Discover a model": "एक मॉडल की खोज करें", @@ -412,6 +414,7 @@ "Enter Kagi Search API Key": "", "Enter Key Behavior": "", "Enter language codes": "भाषा कोड दर्ज करें", + "Enter Mistral API Key": "", "Enter Model ID": "", "Enter model tag (e.g. {{modelTag}})": "Model tag दर्ज करें (उदा. {{modelTag}})", "Enter Mojeek Search API Key": "", @@ -436,6 +439,7 @@ "Enter server port": "", "Enter stop sequence": "स्टॉप अनुक्रम दर्ज करें", "Enter system prompt": "", + "Enter system prompt here": "", "Enter Tavily API Key": "", "Enter the public URL of your WebUI. This URL will be used to generate links in the notifications.": "", "Enter Tika Server URL": "", @@ -449,6 +453,7 @@ "Enter Your Email": "अपना ईमेल दर्ज करें", "Enter Your Full Name": "अपना पूरा नाम भरें", "Enter your message": "", + "Enter your name": "", "Enter your new password": "", "Enter Your Password": "अपना पासवर्ड भरें", "Enter Your Role": "अपनी भूमिका दर्ज करें", @@ -468,7 +473,7 @@ "Exceeded the number of seats in your license. Please contact support to increase the number of seats.": "", "Exclude": "", "Execute code for analysis": "", - "Executing `{{NAME}}`...": "", + "Executing **{{NAME}}**...": "", "Expand": "", "Experimental": "प्रयोगात्मक", "Explain": "", @@ -525,6 +530,7 @@ "Forge new paths": "", "Form": "", "Format your variables using brackets like this:": "", + "Forwards system user session credentials to authenticate": "", "Frequency Penalty": "फ्रीक्वेंसी पेनल्टी", "Full Context Mode": "", "Function": "", @@ -694,6 +700,8 @@ "Mirostat": "मिरोस्टा", "Mirostat Eta": "मिरोस्टा ईटा", "Mirostat Tau": "मिरोस्तात ताऊ", + "Mistral OCR": "", + "Mistral OCR API Key required.": "", "Model": "", "Model '{{modelName}}' has been successfully downloaded.": "मॉडल '{{modelName}}' सफलतापूर्वक डाउनलोड हो गया है।", "Model '{{modelTag}}' is already in queue for downloading.": "मॉडल '{{modelTag}}' पहले से ही डाउनलोड करने के लिए कतार में है।", @@ -789,6 +797,7 @@ "OpenAI API Key is required.": "OpenAI API कुंजी आवश्यक है", "OpenAI API settings updated": "", "OpenAI URL/Key required.": "OpenAI URL/Key आवश्यक है।", + "openapi.json Path": "", "or": "या", "Organize your users": "", "Other": "अन्य", @@ -1042,6 +1051,7 @@ "Thinking...": "", "This action cannot be undone. Do you wish to continue?": "", "This channel was created on {{createdAt}}. This is the very beginning of the {{channelName}} channel.": "", + "This chat won’t appear in history and your messages will not be saved.": "", "This ensures that your valuable conversations are securely saved to your backend database. Thank you!": "यह सुनिश्चित करता है कि आपकी मूल्यवान बातचीत आपके बैकएंड डेटाबेस में सुरक्षित रूप से सहेजी गई है। धन्यवाद!", "This is an experimental feature, it may not function as expected and is subject to change at any time.": "", "This option controls how many tokens are preserved when refreshing the context. For example, if set to 2, the last 2 tokens of the conversation context will be retained. Preserving context can help maintain the continuity of a conversation, but it may reduce the ability to respond to new topics.": "", @@ -1089,6 +1099,7 @@ "Tool ID": "", "Tool imported successfully": "", "Tool Name": "", + "Tool Servers": "", "Tool updated successfully": "", "Tools": "", "Tools Access": "", @@ -1158,7 +1169,7 @@ "Version": "संस्करण", "Version {{selectedVersion}} of {{totalVersions}}": "", "View Replies": "", - "View Result from `{{NAME}}`": "", + "View Result from **{{NAME}}**": "", "Visibility": "", "Voice": "", "Voice Input": "", @@ -1176,9 +1187,9 @@ "Webhook URL": "वेबहुक URL", "WebUI Settings": "WebUI सेटिंग्स", "WebUI URL": "", + "WebUI will make requests to \"{{url}}{{path}}\"": "", "WebUI will make requests to \"{{url}}/api/chat\"": "", "WebUI will make requests to \"{{url}}/chat/completions\"": "", - "WebUI will make requests to \"{{url}}/openapi.json\"": "", "What are you trying to achieve?": "", "What are you working on?": "", "What’s New in": "इसमें नया क्या है", diff --git a/src/lib/i18n/locales/hr-HR/translation.json b/src/lib/i18n/locales/hr-HR/translation.json index 5ec5454bd..b9a004305 100644 --- a/src/lib/i18n/locales/hr-HR/translation.json +++ b/src/lib/i18n/locales/hr-HR/translation.json @@ -6,7 +6,7 @@ "(latest)": "(najnovije)", "(Ollama)": "", "{{ models }}": "{{ modeli }}", - "{{COUNT}} Available Tool Servers": "", + "{{COUNT}} Available Tools": "", "{{COUNT}} hidden lines": "", "{{COUNT}} Replies": "", "{{user}}'s Chats": "Razgovori korisnika {{user}}", @@ -108,6 +108,7 @@ "Attribute for Username": "", "Audio": "Audio", "August": "Kolovoz", + "Auth": "", "Authenticate": "", "Authentication": "", "Auto-Copy Response to Clipboard": "Automatsko kopiranje odgovora u međuspremnik", @@ -119,7 +120,7 @@ "AUTOMATIC1111 Base URL": "AUTOMATIC1111 osnovni URL", "AUTOMATIC1111 Base URL is required.": "Potreban je AUTOMATIC1111 osnovni URL.", "Available list": "", - "Available Tool Servers": "", + "Available Tools": "", "available!": "dostupno!", "Awful": "", "Azure AI Speech": "", @@ -303,6 +304,7 @@ "Direct Connections": "", "Direct Connections allow users to connect to their own OpenAI compatible API endpoints.": "", "Direct Connections settings updated": "", + "Direct Tool Servers": "", "Disabled": "", "Discover a function": "", "Discover a model": "Otkrijte model", @@ -412,6 +414,7 @@ "Enter Kagi Search API Key": "", "Enter Key Behavior": "", "Enter language codes": "Unesite kodove jezika", + "Enter Mistral API Key": "", "Enter Model ID": "", "Enter model tag (e.g. {{modelTag}})": "Unesite oznaku modela (npr. {{modelTag}})", "Enter Mojeek Search API Key": "", @@ -436,6 +439,7 @@ "Enter server port": "", "Enter stop sequence": "Unesite sekvencu zaustavljanja", "Enter system prompt": "", + "Enter system prompt here": "", "Enter Tavily API Key": "", "Enter the public URL of your WebUI. This URL will be used to generate links in the notifications.": "", "Enter Tika Server URL": "", @@ -449,6 +453,7 @@ "Enter Your Email": "Unesite svoj email", "Enter Your Full Name": "Unesite svoje puno ime", "Enter your message": "", + "Enter your name": "", "Enter your new password": "", "Enter Your Password": "Unesite svoju lozinku", "Enter Your Role": "Unesite svoju ulogu", @@ -468,7 +473,7 @@ "Exceeded the number of seats in your license. Please contact support to increase the number of seats.": "", "Exclude": "", "Execute code for analysis": "", - "Executing `{{NAME}}`...": "", + "Executing **{{NAME}}**...": "", "Expand": "", "Experimental": "Eksperimentalno", "Explain": "", @@ -525,6 +530,7 @@ "Forge new paths": "", "Form": "", "Format your variables using brackets like this:": "", + "Forwards system user session credentials to authenticate": "", "Frequency Penalty": "Kazna za učestalost", "Full Context Mode": "", "Function": "", @@ -694,6 +700,8 @@ "Mirostat": "Mirostat", "Mirostat Eta": "Mirostat Eta", "Mirostat Tau": "Mirostat Tau", + "Mistral OCR": "", + "Mistral OCR API Key required.": "", "Model": "", "Model '{{modelName}}' has been successfully downloaded.": "Model '{{modelName}}' je uspješno preuzet.", "Model '{{modelTag}}' is already in queue for downloading.": "Model '{{modelTag}}' je već u redu za preuzimanje.", @@ -789,6 +797,7 @@ "OpenAI API Key is required.": "Potreban je OpenAI API ključ.", "OpenAI API settings updated": "", "OpenAI URL/Key required.": "Potreban je OpenAI URL/ključ.", + "openapi.json Path": "", "or": "ili", "Organize your users": "", "Other": "Ostalo", @@ -1042,6 +1051,7 @@ "Thinking...": "Razmišljam", "This action cannot be undone. Do you wish to continue?": "", "This channel was created on {{createdAt}}. This is the very beginning of the {{channelName}} channel.": "", + "This chat won’t appear in history and your messages will not be saved.": "", "This ensures that your valuable conversations are securely saved to your backend database. Thank you!": "Ovo osigurava da su vaši vrijedni razgovori sigurno spremljeni u bazu podataka. Hvala vam!", "This is an experimental feature, it may not function as expected and is subject to change at any time.": "Ovo je eksperimentalna značajka, možda neće funkcionirati prema očekivanjima i podložna je promjenama u bilo kojem trenutku.", "This option controls how many tokens are preserved when refreshing the context. For example, if set to 2, the last 2 tokens of the conversation context will be retained. Preserving context can help maintain the continuity of a conversation, but it may reduce the ability to respond to new topics.": "", @@ -1089,6 +1099,7 @@ "Tool ID": "", "Tool imported successfully": "", "Tool Name": "", + "Tool Servers": "", "Tool updated successfully": "", "Tools": "Alati", "Tools Access": "", @@ -1158,7 +1169,7 @@ "Version": "Verzija", "Version {{selectedVersion}} of {{totalVersions}}": "", "View Replies": "", - "View Result from `{{NAME}}`": "", + "View Result from **{{NAME}}**": "", "Visibility": "", "Voice": "", "Voice Input": "", @@ -1176,9 +1187,9 @@ "Webhook URL": "URL webkuke", "WebUI Settings": "WebUI postavke", "WebUI URL": "", + "WebUI will make requests to \"{{url}}{{path}}\"": "", "WebUI will make requests to \"{{url}}/api/chat\"": "", "WebUI will make requests to \"{{url}}/chat/completions\"": "", - "WebUI will make requests to \"{{url}}/openapi.json\"": "", "What are you trying to achieve?": "", "What are you working on?": "", "What’s New in": "Što je novo u", diff --git a/src/lib/i18n/locales/hu-HU/translation.json b/src/lib/i18n/locales/hu-HU/translation.json index 983f5a166..9f4d12554 100644 --- a/src/lib/i18n/locales/hu-HU/translation.json +++ b/src/lib/i18n/locales/hu-HU/translation.json @@ -6,7 +6,7 @@ "(latest)": "(legújabb)", "(Ollama)": "", "{{ models }}": "{{ modellek }}", - "{{COUNT}} Available Tool Servers": "", + "{{COUNT}} Available Tools": "", "{{COUNT}} hidden lines": "", "{{COUNT}} Replies": "", "{{user}}'s Chats": "{{user}} beszélgetései", @@ -108,6 +108,7 @@ "Attribute for Username": "", "Audio": "Hang", "August": "Augusztus", + "Auth": "", "Authenticate": "", "Authentication": "", "Auto-Copy Response to Clipboard": "Válasz automatikus másolása a vágólapra", @@ -119,7 +120,7 @@ "AUTOMATIC1111 Base URL": "AUTOMATIC1111 alap URL", "AUTOMATIC1111 Base URL is required.": "AUTOMATIC1111 alap URL szükséges.", "Available list": "Elérhető lista", - "Available Tool Servers": "", + "Available Tools": "", "available!": "elérhető!", "Awful": "", "Azure AI Speech": "Azure AI beszéd", @@ -303,6 +304,7 @@ "Direct Connections": "", "Direct Connections allow users to connect to their own OpenAI compatible API endpoints.": "", "Direct Connections settings updated": "", + "Direct Tool Servers": "", "Disabled": "Letiltva", "Discover a function": "Funkció felfedezése", "Discover a model": "Modell felfedezése", @@ -412,6 +414,7 @@ "Enter Kagi Search API Key": "", "Enter Key Behavior": "", "Enter language codes": "Add meg a nyelvi kódokat", + "Enter Mistral API Key": "", "Enter Model ID": "Add meg a modell azonosítót", "Enter model tag (e.g. {{modelTag}})": "Add meg a modell címkét (pl. {{modelTag}})", "Enter Mojeek Search API Key": "", @@ -436,6 +439,7 @@ "Enter server port": "", "Enter stop sequence": "Add meg a leállítási szekvenciát", "Enter system prompt": "Add meg a rendszer promptot", + "Enter system prompt here": "", "Enter Tavily API Key": "Add meg a Tavily API kulcsot", "Enter the public URL of your WebUI. This URL will be used to generate links in the notifications.": "", "Enter Tika Server URL": "Add meg a Tika szerver URL-t", @@ -449,6 +453,7 @@ "Enter Your Email": "Add meg az email címed", "Enter Your Full Name": "Add meg a teljes neved", "Enter your message": "Írd be az üzeneted", + "Enter your name": "", "Enter your new password": "", "Enter Your Password": "Add meg a jelszavad", "Enter Your Role": "Add meg a szereped", @@ -468,7 +473,7 @@ "Exceeded the number of seats in your license. Please contact support to increase the number of seats.": "", "Exclude": "Kizárás", "Execute code for analysis": "", - "Executing `{{NAME}}`...": "", + "Executing **{{NAME}}**...": "", "Expand": "", "Experimental": "Kísérleti", "Explain": "", @@ -525,6 +530,7 @@ "Forge new paths": "", "Form": "Űrlap", "Format your variables using brackets like this:": "Formázd a változóidat zárójelekkel így:", + "Forwards system user session credentials to authenticate": "", "Frequency Penalty": "Gyakorisági büntetés", "Full Context Mode": "", "Function": "Funkció", @@ -694,6 +700,8 @@ "Mirostat": "Mirostat", "Mirostat Eta": "Mirostat Eta", "Mirostat Tau": "Mirostat Tau", + "Mistral OCR": "", + "Mistral OCR API Key required.": "", "Model": "Modell", "Model '{{modelName}}' has been successfully downloaded.": "A '{{modelName}}' modell sikeresen letöltve.", "Model '{{modelTag}}' is already in queue for downloading.": "A '{{modelTag}}' modell már a letöltési sorban van.", @@ -789,6 +797,7 @@ "OpenAI API Key is required.": "OpenAI API kulcs szükséges.", "OpenAI API settings updated": "", "OpenAI URL/Key required.": "OpenAI URL/kulcs szükséges.", + "openapi.json Path": "", "or": "vagy", "Organize your users": "", "Other": "Egyéb", @@ -1042,6 +1051,7 @@ "Thinking...": "Gondolkodik...", "This action cannot be undone. Do you wish to continue?": "Ez a művelet nem vonható vissza. Szeretné folytatni?", "This channel was created on {{createdAt}}. This is the very beginning of the {{channelName}} channel.": "", + "This chat won’t appear in history and your messages will not be saved.": "", "This ensures that your valuable conversations are securely saved to your backend database. Thank you!": "Ez biztosítja, hogy értékes beszélgetései biztonságosan mentésre kerüljenek a backend adatbázisban. Köszönjük!", "This is an experimental feature, it may not function as expected and is subject to change at any time.": "Ez egy kísérleti funkció, lehet, hogy nem a várt módon működik és bármikor változhat.", "This option controls how many tokens are preserved when refreshing the context. For example, if set to 2, the last 2 tokens of the conversation context will be retained. Preserving context can help maintain the continuity of a conversation, but it may reduce the ability to respond to new topics.": "", @@ -1089,6 +1099,7 @@ "Tool ID": "", "Tool imported successfully": "Eszköz sikeresen importálva", "Tool Name": "", + "Tool Servers": "", "Tool updated successfully": "Eszköz sikeresen frissítve", "Tools": "Eszközök", "Tools Access": "", @@ -1158,7 +1169,7 @@ "Version": "Verzió", "Version {{selectedVersion}} of {{totalVersions}}": "{{selectedVersion}}. verzió a {{totalVersions}}-ból", "View Replies": "", - "View Result from `{{NAME}}`": "", + "View Result from **{{NAME}}**": "", "Visibility": "", "Voice": "Hang", "Voice Input": "Hangbevitel", @@ -1176,9 +1187,9 @@ "Webhook URL": "Webhook URL", "WebUI Settings": "WebUI beállítások", "WebUI URL": "", + "WebUI will make requests to \"{{url}}{{path}}\"": "", "WebUI will make requests to \"{{url}}/api/chat\"": "", "WebUI will make requests to \"{{url}}/chat/completions\"": "", - "WebUI will make requests to \"{{url}}/openapi.json\"": "", "What are you trying to achieve?": "", "What are you working on?": "", "What’s New in": "", diff --git a/src/lib/i18n/locales/id-ID/translation.json b/src/lib/i18n/locales/id-ID/translation.json index a0cd24501..d4a72b608 100644 --- a/src/lib/i18n/locales/id-ID/translation.json +++ b/src/lib/i18n/locales/id-ID/translation.json @@ -6,7 +6,7 @@ "(latest)": "(terbaru)", "(Ollama)": "", "{{ models }}": "{{ models }}", - "{{COUNT}} Available Tool Servers": "", + "{{COUNT}} Available Tools": "", "{{COUNT}} hidden lines": "", "{{COUNT}} Replies": "", "{{user}}'s Chats": "Obrolan {{user}}", @@ -108,6 +108,7 @@ "Attribute for Username": "", "Audio": "Audio", "August": "Agustus", + "Auth": "", "Authenticate": "", "Authentication": "", "Auto-Copy Response to Clipboard": "Tanggapan Salin Otomatis ke Papan Klip", @@ -119,7 +120,7 @@ "AUTOMATIC1111 Base URL": "URL Dasar AUTOMATIC1111", "AUTOMATIC1111 Base URL is required.": "AUTOMATIC1111 URL Dasar diperlukan.", "Available list": "", - "Available Tool Servers": "", + "Available Tools": "", "available!": "tersedia!", "Awful": "", "Azure AI Speech": "", @@ -303,6 +304,7 @@ "Direct Connections": "", "Direct Connections allow users to connect to their own OpenAI compatible API endpoints.": "", "Direct Connections settings updated": "", + "Direct Tool Servers": "", "Disabled": "", "Discover a function": "Menemukan sebuah fungsi", "Discover a model": "Menemukan sebuah model", @@ -412,6 +414,7 @@ "Enter Kagi Search API Key": "", "Enter Key Behavior": "", "Enter language codes": "Masukkan kode bahasa", + "Enter Mistral API Key": "", "Enter Model ID": "", "Enter model tag (e.g. {{modelTag}})": "Masukkan tag model (misalnya {{modelTag}})", "Enter Mojeek Search API Key": "", @@ -436,6 +439,7 @@ "Enter server port": "", "Enter stop sequence": "Masukkan urutan berhenti", "Enter system prompt": "", + "Enter system prompt here": "", "Enter Tavily API Key": "Masukkan Kunci API Tavily", "Enter the public URL of your WebUI. This URL will be used to generate links in the notifications.": "", "Enter Tika Server URL": "", @@ -449,6 +453,7 @@ "Enter Your Email": "Masukkan Email Anda", "Enter Your Full Name": "Masukkan Nama Lengkap Anda", "Enter your message": "", + "Enter your name": "", "Enter your new password": "", "Enter Your Password": "Masukkan Kata Sandi Anda", "Enter Your Role": "Masukkan Peran Anda", @@ -468,7 +473,7 @@ "Exceeded the number of seats in your license. Please contact support to increase the number of seats.": "", "Exclude": "", "Execute code for analysis": "", - "Executing `{{NAME}}`...": "", + "Executing **{{NAME}}**...": "", "Expand": "", "Experimental": "Percobaan", "Explain": "", @@ -525,6 +530,7 @@ "Forge new paths": "", "Form": "Formulir", "Format your variables using brackets like this:": "", + "Forwards system user session credentials to authenticate": "", "Frequency Penalty": "Penalti Frekuensi", "Full Context Mode": "", "Function": "", @@ -694,6 +700,8 @@ "Mirostat": "Mirostat", "Mirostat Eta": "Mirostat Eta", "Mirostat Tau": "Mirostat Tau", + "Mistral OCR": "", + "Mistral OCR API Key required.": "", "Model": "", "Model '{{modelName}}' has been successfully downloaded.": "Model '{{modelName}}' telah berhasil diunduh.", "Model '{{modelTag}}' is already in queue for downloading.": "Model '{{modelTag}}' sudah berada dalam antrean untuk diunduh.", @@ -789,6 +797,7 @@ "OpenAI API Key is required.": "Diperlukan Kunci API OpenAI.", "OpenAI API settings updated": "", "OpenAI URL/Key required.": "Diperlukan URL/Kunci OpenAI.", + "openapi.json Path": "", "or": "atau", "Organize your users": "", "Other": "Lainnya", @@ -1042,6 +1051,7 @@ "Thinking...": "Berpikir", "This action cannot be undone. Do you wish to continue?": "Tindakan ini tidak dapat dibatalkan. Apakah Anda ingin melanjutkan?", "This channel was created on {{createdAt}}. This is the very beginning of the {{channelName}} channel.": "", + "This chat won’t appear in history and your messages will not be saved.": "", "This ensures that your valuable conversations are securely saved to your backend database. Thank you!": "Ini akan memastikan bahwa percakapan Anda yang berharga disimpan dengan aman ke basis data backend. Terima kasih!", "This is an experimental feature, it may not function as expected and is subject to change at any time.": "Ini adalah fitur eksperimental, mungkin tidak berfungsi seperti yang diharapkan dan dapat berubah sewaktu-waktu.", "This option controls how many tokens are preserved when refreshing the context. For example, if set to 2, the last 2 tokens of the conversation context will be retained. Preserving context can help maintain the continuity of a conversation, but it may reduce the ability to respond to new topics.": "", @@ -1089,6 +1099,7 @@ "Tool ID": "", "Tool imported successfully": "Alat berhasil diimpor", "Tool Name": "", + "Tool Servers": "", "Tool updated successfully": "Alat berhasil diperbarui", "Tools": "Alat", "Tools Access": "", @@ -1158,7 +1169,7 @@ "Version": "Versi", "Version {{selectedVersion}} of {{totalVersions}}": "", "View Replies": "", - "View Result from `{{NAME}}`": "", + "View Result from **{{NAME}}**": "", "Visibility": "", "Voice": "Suara", "Voice Input": "", @@ -1176,9 +1187,9 @@ "Webhook URL": "URL pengait web", "WebUI Settings": "Pengaturan WebUI", "WebUI URL": "", + "WebUI will make requests to \"{{url}}{{path}}\"": "", "WebUI will make requests to \"{{url}}/api/chat\"": "", "WebUI will make requests to \"{{url}}/chat/completions\"": "", - "WebUI will make requests to \"{{url}}/openapi.json\"": "", "What are you trying to achieve?": "", "What are you working on?": "", "What’s New in": "Apa yang Baru di", diff --git a/src/lib/i18n/locales/ie-GA/translation.json b/src/lib/i18n/locales/ie-GA/translation.json index ed4430181..88f3520e1 100644 --- a/src/lib/i18n/locales/ie-GA/translation.json +++ b/src/lib/i18n/locales/ie-GA/translation.json @@ -6,7 +6,7 @@ "(latest)": "(is déanaí)", "(Ollama)": "", "{{ models }}": "{{ models }}", - "{{COUNT}} Available Tool Servers": "", + "{{COUNT}} Available Tools": "", "{{COUNT}} hidden lines": "", "{{COUNT}} Replies": "{{COUNT}} Freagra", "{{user}}'s Chats": "Comhráite {{user}}", @@ -108,6 +108,7 @@ "Attribute for Username": "Tréith don Ainm Úsáideora", "Audio": "Fuaim", "August": "Lúnasa", + "Auth": "", "Authenticate": "Fíordheimhnigh", "Authentication": "Fíordheimhniú", "Auto-Copy Response to Clipboard": "Freagra AutoCopy go Gearrthaisce", @@ -119,7 +120,7 @@ "AUTOMATIC1111 Base URL": "UATHOIBRÍOCH1111 Bun URL", "AUTOMATIC1111 Base URL is required.": "Tá URL bonn UATHOIBRÍOCH1111 ag teastáil.", "Available list": "Liosta atá ar fáil", - "Available Tool Servers": "", + "Available Tools": "", "available!": "ar fáil!", "Awful": "Uafásach", "Azure AI Speech": "Óráid Azure AI", @@ -303,6 +304,7 @@ "Direct Connections": "Naisc Dhíreacha", "Direct Connections allow users to connect to their own OpenAI compatible API endpoints.": "Ligeann Connections Direct d’úsáideoirí ceangal lena gcríochphointí API féin atá comhoiriúnach le OpenAI.", "Direct Connections settings updated": "Nuashonraíodh socruithe Connections Direct", + "Direct Tool Servers": "", "Disabled": "Díchumasaithe", "Discover a function": "Faigh amach feidhm", "Discover a model": "Faigh amach múnla", @@ -412,6 +414,7 @@ "Enter Kagi Search API Key": "Cuir isteach Eochair Kagi Cuardach API", "Enter Key Behavior": "", "Enter language codes": "Cuir isteach cóid teanga", + "Enter Mistral API Key": "", "Enter Model ID": "Iontráil ID Mhúnla", "Enter model tag (e.g. {{modelTag}})": "Cuir isteach chlib samhail (m.sh. {{modelTag}})", "Enter Mojeek Search API Key": "Cuir isteach Eochair API Cuardach Mojeek", @@ -436,6 +439,7 @@ "Enter server port": "Cuir isteach port freastalaí", "Enter stop sequence": "Cuir isteach seicheamh stad", "Enter system prompt": "Cuir isteach an chóras leid", + "Enter system prompt here": "", "Enter Tavily API Key": "Cuir isteach eochair API Tavily", "Enter the public URL of your WebUI. This URL will be used to generate links in the notifications.": "Cuir isteach URL poiblí do WebUI. Bainfear úsáid as an URL seo chun naisc a ghiniúint sna fógraí.", "Enter Tika Server URL": "Cuir isteach URL freastalaí Tika", @@ -449,6 +453,7 @@ "Enter Your Email": "Cuir isteach do Ríomhphost", "Enter Your Full Name": "Cuir isteach d'Ainm Iomlán", "Enter your message": "Cuir isteach do theachtaireacht", + "Enter your name": "", "Enter your new password": "Cuir isteach do phasfhocal nua", "Enter Your Password": "Cuir isteach do phasfhocal", "Enter Your Role": "Cuir isteach do Ról", @@ -468,7 +473,7 @@ "Exceeded the number of seats in your license. Please contact support to increase the number of seats.": "", "Exclude": "Eisigh", "Execute code for analysis": "Íosluchtaigh cód le haghaidh anailíse", - "Executing `{{NAME}}`...": "", + "Executing **{{NAME}}**...": "", "Expand": "", "Experimental": "Turgnamhach", "Explain": "", @@ -525,6 +530,7 @@ "Forge new paths": "Déan cosáin nua a chruthú", "Form": "Foirm", "Format your variables using brackets like this:": "Formáidigh na hathróga ag baint úsáide as lúibíní mar seo:", + "Forwards system user session credentials to authenticate": "", "Frequency Penalty": "Pionós Minicíochta", "Full Context Mode": "Mód Comhthéacs Iomlán", "Function": "Feidhm", @@ -694,6 +700,8 @@ "Mirostat": "Mirostat", "Mirostat Eta": "Mirostat Eta", "Mirostat Tau": "Mirostat Tau", + "Mistral OCR": "", + "Mistral OCR API Key required.": "", "Model": "Múnla", "Model '{{modelName}}' has been successfully downloaded.": "Rinneadh an tsamhail '{{modelName}}' a íoslódáil go rathúil.", "Model '{{modelTag}}' is already in queue for downloading.": "Tá múnla ‘{{modelTag}}’ sa scuaine cheana féin le híoslódáil.", @@ -789,6 +797,7 @@ "OpenAI API Key is required.": "Tá Eochair API OpenAI ag teastáil.", "OpenAI API settings updated": "Nuashonraíodh socruithe OpenAI API", "OpenAI URL/Key required.": "Teastaíonn URL/eochair OpenAI.", + "openapi.json Path": "", "or": "nó", "Organize your users": "Eagraigh do chuid úsáideoirí", "Other": "Eile", @@ -1042,6 +1051,7 @@ "Thinking...": "Ag smaoineamh...", "This action cannot be undone. Do you wish to continue?": "Ní féidir an gníomh seo a chur ar ais. Ar mhaith leat leanúint ar aghaidh?", "This channel was created on {{createdAt}}. This is the very beginning of the {{channelName}} channel.": "", + "This chat won’t appear in history and your messages will not be saved.": "", "This ensures that your valuable conversations are securely saved to your backend database. Thank you!": "Cinntíonn sé seo go sábhálfar do chomhráite luachmhara go daingean i do bhunachar sonraí cúltaca Go raibh maith agat!", "This is an experimental feature, it may not function as expected and is subject to change at any time.": "Is gné turgnamhach í seo, b'fhéidir nach bhfeidhmeoidh sé mar a bhíothas ag súil leis agus tá sé faoi réir athraithe ag am ar bith.", "This option controls how many tokens are preserved when refreshing the context. For example, if set to 2, the last 2 tokens of the conversation context will be retained. Preserving context can help maintain the continuity of a conversation, but it may reduce the ability to respond to new topics.": "", @@ -1089,6 +1099,7 @@ "Tool ID": "ID Uirlis", "Tool imported successfully": "Uirlis iompórtáilte", "Tool Name": "Ainm Uirlis", + "Tool Servers": "", "Tool updated successfully": "An uirlis nuashonraithe", "Tools": "Uirlisí", "Tools Access": "Rochtain Uirlisí", @@ -1158,7 +1169,7 @@ "Version": "Leagan", "Version {{selectedVersion}} of {{totalVersions}}": "Leagan {{selectedVersion}} de {{totalVersions}}", "View Replies": "Féach ar Fhreagraí", - "View Result from `{{NAME}}`": "", + "View Result from **{{NAME}}**": "", "Visibility": "Infheictheacht", "Voice": "Guth", "Voice Input": "Ionchur Gutha", @@ -1176,9 +1187,9 @@ "Webhook URL": "URL Webhook", "WebUI Settings": "Socruithe WebUI", "WebUI URL": "URL WebUI", + "WebUI will make requests to \"{{url}}{{path}}\"": "", "WebUI will make requests to \"{{url}}/api/chat\"": "Déanfaidh WebUI iarratais ar \"{{url}}/api/chat\"", "WebUI will make requests to \"{{url}}/chat/completions\"": "Déanfaidh WebUI iarratais ar \"{{url}}/chat/completions\"", - "WebUI will make requests to \"{{url}}/openapi.json\"": "", "What are you trying to achieve?": "Cad atá tú ag iarraidh a bhaint amach?", "What are you working on?": "Cad air a bhfuil tú ag obair?", "What’s New in": "Cad atá Nua i", diff --git a/src/lib/i18n/locales/it-IT/translation.json b/src/lib/i18n/locales/it-IT/translation.json index a08a790d5..1a93cc0f8 100644 --- a/src/lib/i18n/locales/it-IT/translation.json +++ b/src/lib/i18n/locales/it-IT/translation.json @@ -6,7 +6,7 @@ "(latest)": "(ultima)", "(Ollama)": "", "{{ models }}": "{{ modelli }}", - "{{COUNT}} Available Tool Servers": "", + "{{COUNT}} Available Tools": "", "{{COUNT}} hidden lines": "", "{{COUNT}} Replies": "", "{{user}}'s Chats": "{{user}} Chat", @@ -108,6 +108,7 @@ "Attribute for Username": "", "Audio": "Audio", "August": "Agosto", + "Auth": "", "Authenticate": "", "Authentication": "", "Auto-Copy Response to Clipboard": "Copia automatica della risposta negli appunti", @@ -119,7 +120,7 @@ "AUTOMATIC1111 Base URL": "URL base AUTOMATIC1111", "AUTOMATIC1111 Base URL is required.": "L'URL base AUTOMATIC1111 è obbligatorio.", "Available list": "", - "Available Tool Servers": "", + "Available Tools": "", "available!": "disponibile!", "Awful": "", "Azure AI Speech": "", @@ -303,6 +304,7 @@ "Direct Connections": "", "Direct Connections allow users to connect to their own OpenAI compatible API endpoints.": "", "Direct Connections settings updated": "", + "Direct Tool Servers": "", "Disabled": "", "Discover a function": "", "Discover a model": "Scopri un modello", @@ -412,6 +414,7 @@ "Enter Kagi Search API Key": "", "Enter Key Behavior": "", "Enter language codes": "Inserisci i codici lingua", + "Enter Mistral API Key": "", "Enter Model ID": "", "Enter model tag (e.g. {{modelTag}})": "Inserisci il tag del modello (ad esempio {{modelTag}})", "Enter Mojeek Search API Key": "", @@ -436,6 +439,7 @@ "Enter server port": "", "Enter stop sequence": "Inserisci la sequenza di arresto", "Enter system prompt": "", + "Enter system prompt here": "", "Enter Tavily API Key": "", "Enter the public URL of your WebUI. This URL will be used to generate links in the notifications.": "", "Enter Tika Server URL": "", @@ -449,6 +453,7 @@ "Enter Your Email": "Inserisci la tua email", "Enter Your Full Name": "Inserisci il tuo nome completo", "Enter your message": "", + "Enter your name": "", "Enter your new password": "", "Enter Your Password": "Inserisci la tua password", "Enter Your Role": "Inserisci il tuo ruolo", @@ -468,7 +473,7 @@ "Exceeded the number of seats in your license. Please contact support to increase the number of seats.": "", "Exclude": "", "Execute code for analysis": "", - "Executing `{{NAME}}`...": "", + "Executing **{{NAME}}**...": "", "Expand": "", "Experimental": "Sperimentale", "Explain": "", @@ -525,6 +530,7 @@ "Forge new paths": "", "Form": "", "Format your variables using brackets like this:": "", + "Forwards system user session credentials to authenticate": "", "Frequency Penalty": "Penalità di frequenza", "Full Context Mode": "", "Function": "", @@ -694,6 +700,8 @@ "Mirostat": "Mirostat", "Mirostat Eta": "Mirostat Eta", "Mirostat Tau": "Mirostat Tau", + "Mistral OCR": "", + "Mistral OCR API Key required.": "", "Model": "", "Model '{{modelName}}' has been successfully downloaded.": "Il modello '{{modelName}}' è stato scaricato con successo.", "Model '{{modelTag}}' is already in queue for downloading.": "Il modello '{{modelTag}}' è già in coda per il download.", @@ -789,6 +797,7 @@ "OpenAI API Key is required.": "La chiave API OpenAI è obbligatoria.", "OpenAI API settings updated": "", "OpenAI URL/Key required.": "URL/Chiave OpenAI obbligatori.", + "openapi.json Path": "", "or": "o", "Organize your users": "", "Other": "Altro", @@ -1042,6 +1051,7 @@ "Thinking...": "", "This action cannot be undone. Do you wish to continue?": "", "This channel was created on {{createdAt}}. This is the very beginning of the {{channelName}} channel.": "", + "This chat won’t appear in history and your messages will not be saved.": "", "This ensures that your valuable conversations are securely saved to your backend database. Thank you!": "Ciò garantisce che le tue preziose conversazioni siano salvate in modo sicuro nel tuo database backend. Grazie!", "This is an experimental feature, it may not function as expected and is subject to change at any time.": "", "This option controls how many tokens are preserved when refreshing the context. For example, if set to 2, the last 2 tokens of the conversation context will be retained. Preserving context can help maintain the continuity of a conversation, but it may reduce the ability to respond to new topics.": "", @@ -1089,6 +1099,7 @@ "Tool ID": "", "Tool imported successfully": "", "Tool Name": "", + "Tool Servers": "", "Tool updated successfully": "", "Tools": "", "Tools Access": "", @@ -1158,7 +1169,7 @@ "Version": "Versione", "Version {{selectedVersion}} of {{totalVersions}}": "", "View Replies": "", - "View Result from `{{NAME}}`": "", + "View Result from **{{NAME}}**": "", "Visibility": "", "Voice": "", "Voice Input": "", @@ -1176,9 +1187,9 @@ "Webhook URL": "URL webhook", "WebUI Settings": "Impostazioni WebUI", "WebUI URL": "", + "WebUI will make requests to \"{{url}}{{path}}\"": "", "WebUI will make requests to \"{{url}}/api/chat\"": "", "WebUI will make requests to \"{{url}}/chat/completions\"": "", - "WebUI will make requests to \"{{url}}/openapi.json\"": "", "What are you trying to achieve?": "", "What are you working on?": "", "What’s New in": "Novità in", diff --git a/src/lib/i18n/locales/ja-JP/translation.json b/src/lib/i18n/locales/ja-JP/translation.json index 93a225899..d1bcb26e5 100644 --- a/src/lib/i18n/locales/ja-JP/translation.json +++ b/src/lib/i18n/locales/ja-JP/translation.json @@ -6,7 +6,7 @@ "(latest)": "(最新)", "(Ollama)": "", "{{ models }}": "{{ モデル }}", - "{{COUNT}} Available Tool Servers": "", + "{{COUNT}} Available Tools": "", "{{COUNT}} hidden lines": "", "{{COUNT}} Replies": "", "{{user}}'s Chats": "{{user}} のチャット", @@ -108,6 +108,7 @@ "Attribute for Username": "", "Audio": "オーディオ", "August": "8月", + "Auth": "", "Authenticate": "", "Authentication": "", "Auto-Copy Response to Clipboard": "クリップボードへの応答の自動コピー", @@ -119,7 +120,7 @@ "AUTOMATIC1111 Base URL": "AUTOMATIC1111 ベース URL", "AUTOMATIC1111 Base URL is required.": "AUTOMATIC1111 ベース URL が必要です。", "Available list": "利用可能リスト", - "Available Tool Servers": "", + "Available Tools": "", "available!": "利用可能!", "Awful": "", "Azure AI Speech": "AzureAIスピーチ", @@ -303,6 +304,7 @@ "Direct Connections": "", "Direct Connections allow users to connect to their own OpenAI compatible API endpoints.": "", "Direct Connections settings updated": "", + "Direct Tool Servers": "", "Disabled": "無効", "Discover a function": "Functionを探す", "Discover a model": "モデルを探す", @@ -412,6 +414,7 @@ "Enter Kagi Search API Key": "", "Enter Key Behavior": "", "Enter language codes": "言語コードを入力してください", + "Enter Mistral API Key": "", "Enter Model ID": "モデルIDを入力してください。", "Enter model tag (e.g. {{modelTag}})": "モデルタグを入力してください (例: {{modelTag}})", "Enter Mojeek Search API Key": "", @@ -436,6 +439,7 @@ "Enter server port": "", "Enter stop sequence": "ストップシーケンスを入力してください", "Enter system prompt": "システムプロンプト入力", + "Enter system prompt here": "", "Enter Tavily API Key": "Tavily API Keyを入力してください。", "Enter the public URL of your WebUI. This URL will be used to generate links in the notifications.": "", "Enter Tika Server URL": "Tika Server URLを入力してください。", @@ -449,6 +453,7 @@ "Enter Your Email": "メールアドレスを入力してください", "Enter Your Full Name": "フルネームを入力してください", "Enter your message": "メッセージを入力してください", + "Enter your name": "", "Enter your new password": "", "Enter Your Password": "パスワードを入力してください", "Enter Your Role": "ロールを入力してください", @@ -468,7 +473,7 @@ "Exceeded the number of seats in your license. Please contact support to increase the number of seats.": "", "Exclude": "", "Execute code for analysis": "", - "Executing `{{NAME}}`...": "", + "Executing **{{NAME}}**...": "", "Expand": "", "Experimental": "実験的", "Explain": "", @@ -525,6 +530,7 @@ "Forge new paths": "", "Form": "フォーム", "Format your variables using brackets like this:": "", + "Forwards system user session credentials to authenticate": "", "Frequency Penalty": "頻度ペナルティ", "Full Context Mode": "", "Function": "", @@ -694,6 +700,8 @@ "Mirostat": "ミロスタット", "Mirostat Eta": "ミロスタット Eta", "Mirostat Tau": "ミロスタット Tau", + "Mistral OCR": "", + "Mistral OCR API Key required.": "", "Model": "", "Model '{{modelName}}' has been successfully downloaded.": "モデル '{{modelName}}' が正常にダウンロードされました。", "Model '{{modelTag}}' is already in queue for downloading.": "モデル '{{modelTag}}' はすでにダウンロード待ち行列に入っています。", @@ -789,6 +797,7 @@ "OpenAI API Key is required.": "OpenAI API キーが必要です。", "OpenAI API settings updated": "", "OpenAI URL/Key required.": "OpenAI URL/Key が必要です。", + "openapi.json Path": "", "or": "または", "Organize your users": "", "Other": "その他", @@ -1042,6 +1051,7 @@ "Thinking...": "思考中...", "This action cannot be undone. Do you wish to continue?": "このアクションは取り消し不可です。続けますか?", "This channel was created on {{createdAt}}. This is the very beginning of the {{channelName}} channel.": "", + "This chat won’t appear in history and your messages will not be saved.": "", "This ensures that your valuable conversations are securely saved to your backend database. Thank you!": "これは、貴重な会話がバックエンドデータベースに安全に保存されることを保証します。ありがとうございます!", "This is an experimental feature, it may not function as expected and is subject to change at any time.": "実験的機能であり正常動作しない場合があります。", "This option controls how many tokens are preserved when refreshing the context. For example, if set to 2, the last 2 tokens of the conversation context will be retained. Preserving context can help maintain the continuity of a conversation, but it may reduce the ability to respond to new topics.": "", @@ -1089,6 +1099,7 @@ "Tool ID": "", "Tool imported successfully": "", "Tool Name": "", + "Tool Servers": "", "Tool updated successfully": "", "Tools": "ツール", "Tools Access": "", @@ -1158,7 +1169,7 @@ "Version": "バージョン", "Version {{selectedVersion}} of {{totalVersions}}": "", "View Replies": "", - "View Result from `{{NAME}}`": "", + "View Result from **{{NAME}}**": "", "Visibility": "", "Voice": "ボイス", "Voice Input": "", @@ -1176,9 +1187,9 @@ "Webhook URL": "Webhook URL", "WebUI Settings": "WebUI 設定", "WebUI URL": "", + "WebUI will make requests to \"{{url}}{{path}}\"": "", "WebUI will make requests to \"{{url}}/api/chat\"": "", "WebUI will make requests to \"{{url}}/chat/completions\"": "", - "WebUI will make requests to \"{{url}}/openapi.json\"": "", "What are you trying to achieve?": "", "What are you working on?": "", "What’s New in": "新機能", diff --git a/src/lib/i18n/locales/ka-GE/translation.json b/src/lib/i18n/locales/ka-GE/translation.json index 947f8ebe6..100d4d329 100644 --- a/src/lib/i18n/locales/ka-GE/translation.json +++ b/src/lib/i18n/locales/ka-GE/translation.json @@ -6,7 +6,7 @@ "(latest)": "(უახლესი)", "(Ollama)": "", "{{ models }}": "{{ მოდელები }}", - "{{COUNT}} Available Tool Servers": "", + "{{COUNT}} Available Tools": "", "{{COUNT}} hidden lines": "", "{{COUNT}} Replies": "{{COUNT}} პასუხი", "{{user}}'s Chats": "{{user}}-ის ჩათები", @@ -108,6 +108,7 @@ "Attribute for Username": "ატრიბუტი მომხმარებლის სახელისთვის", "Audio": "აუდიო", "August": "აგვისტო", + "Auth": "", "Authenticate": "ავთენტიკაცია", "Authentication": "ავთენტიკაცია", "Auto-Copy Response to Clipboard": "პასუხის ავტომატური კოპირება ბუფერში", @@ -119,7 +120,7 @@ "AUTOMATIC1111 Base URL": "AUTOMATIC1111 საბაზისო მისამართი", "AUTOMATIC1111 Base URL is required.": "AUTOMATIC1111 საბაზისო მისამართი აუცილებელია.", "Available list": "ხელმისაწვდომი სია", - "Available Tool Servers": "", + "Available Tools": "", "available!": "ხელმისაწვდომია!", "Awful": "საშინელი", "Azure AI Speech": "", @@ -303,6 +304,7 @@ "Direct Connections": "პირდაპირი მიერთება", "Direct Connections allow users to connect to their own OpenAI compatible API endpoints.": "", "Direct Connections settings updated": "", + "Direct Tool Servers": "", "Disabled": "გამორთული", "Discover a function": "", "Discover a model": "აღმოაჩინეთ მოდელი", @@ -412,6 +414,7 @@ "Enter Kagi Search API Key": "", "Enter Key Behavior": "", "Enter language codes": "შეიყვანეთ ენის კოდები", + "Enter Mistral API Key": "", "Enter Model ID": "", "Enter model tag (e.g. {{modelTag}})": "შეიყვანეთ მოდელის ჭდე (მაგ: {{modelTag}})", "Enter Mojeek Search API Key": "", @@ -436,6 +439,7 @@ "Enter server port": "", "Enter stop sequence": "შეიყვანეთ გაჩერების მიმდევრობა", "Enter system prompt": "", + "Enter system prompt here": "", "Enter Tavily API Key": "", "Enter the public URL of your WebUI. This URL will be used to generate links in the notifications.": "", "Enter Tika Server URL": "", @@ -449,6 +453,7 @@ "Enter Your Email": "შეიყვანეთ თქვენი ელფოსტა", "Enter Your Full Name": "შეიყვანეთ თქვენი სრული სახელი", "Enter your message": "", + "Enter your name": "", "Enter your new password": "შეიყვანეთ თქვენი ახალი პაროლი", "Enter Your Password": "შეიყვანეთ თქვენი პაროლი", "Enter Your Role": "შეიყვანეთ თქვენი როლი", @@ -468,7 +473,7 @@ "Exceeded the number of seats in your license. Please contact support to increase the number of seats.": "", "Exclude": "გამორიცხვა", "Execute code for analysis": "", - "Executing `{{NAME}}`...": "", + "Executing **{{NAME}}**...": "", "Expand": "", "Experimental": "ექსპერიმენტული", "Explain": "", @@ -525,6 +530,7 @@ "Forge new paths": "", "Form": "ფორმა", "Format your variables using brackets like this:": "", + "Forwards system user session credentials to authenticate": "", "Frequency Penalty": "სიხშირის ჯარიმა", "Full Context Mode": "", "Function": "ფუნქცია", @@ -694,6 +700,8 @@ "Mirostat": "Mirostat", "Mirostat Eta": "Mirostat Eta", "Mirostat Tau": "Mirostat Tau", + "Mistral OCR": "", + "Mistral OCR API Key required.": "", "Model": "მოდელი", "Model '{{modelName}}' has been successfully downloaded.": "მოდელის „{{modelName}}“ გადმოწერა წარმატებით დასრულდა.", "Model '{{modelTag}}' is already in queue for downloading.": "მოდელი „{{modelTag}}“ უკვე გადმოწერის რიგშია.", @@ -789,6 +797,7 @@ "OpenAI API Key is required.": "OpenAI API გასაღები აუცილებელია.", "OpenAI API settings updated": "", "OpenAI URL/Key required.": "OpenAI URL/Key აუცილებელია.", + "openapi.json Path": "", "or": "ან", "Organize your users": "", "Other": "სხვა", @@ -1042,6 +1051,7 @@ "Thinking...": "", "This action cannot be undone. Do you wish to continue?": "", "This channel was created on {{createdAt}}. This is the very beginning of the {{channelName}} channel.": "", + "This chat won’t appear in history and your messages will not be saved.": "", "This ensures that your valuable conversations are securely saved to your backend database. Thank you!": "ეს უზრუნველყოფს, რომ თქვენი ღირებული საუბრები უსაფრთხოდ შეინახება თქვენს უკანაბოლო მონაცემთა ბაზაში. მადლობა!", "This is an experimental feature, it may not function as expected and is subject to change at any time.": "", "This option controls how many tokens are preserved when refreshing the context. For example, if set to 2, the last 2 tokens of the conversation context will be retained. Preserving context can help maintain the continuity of a conversation, but it may reduce the ability to respond to new topics.": "", @@ -1089,6 +1099,7 @@ "Tool ID": "", "Tool imported successfully": "", "Tool Name": "ხელსაწყოს სახელი", + "Tool Servers": "", "Tool updated successfully": "", "Tools": "ხელსაწყოები", "Tools Access": "", @@ -1158,7 +1169,7 @@ "Version": "ვერსია", "Version {{selectedVersion}} of {{totalVersions}}": "", "View Replies": "", - "View Result from `{{NAME}}`": "", + "View Result from **{{NAME}}**": "", "Visibility": "ხილვადობა", "Voice": "ხმა", "Voice Input": "", @@ -1176,9 +1187,9 @@ "Webhook URL": "Webhook URL", "WebUI Settings": "WebUI პარამეტრები", "WebUI URL": "", + "WebUI will make requests to \"{{url}}{{path}}\"": "", "WebUI will make requests to \"{{url}}/api/chat\"": "", "WebUI will make requests to \"{{url}}/chat/completions\"": "", - "WebUI will make requests to \"{{url}}/openapi.json\"": "", "What are you trying to achieve?": "", "What are you working on?": "", "What’s New in": "რა არის ახალი", diff --git a/src/lib/i18n/locales/ko-KR/translation.json b/src/lib/i18n/locales/ko-KR/translation.json index 4d4dec874..ec4319cb2 100644 --- a/src/lib/i18n/locales/ko-KR/translation.json +++ b/src/lib/i18n/locales/ko-KR/translation.json @@ -6,7 +6,7 @@ "(latest)": "(최근)", "(Ollama)": "", "{{ models }}": "{{ models }}", - "{{COUNT}} Available Tool Servers": "", + "{{COUNT}} Available Tools": "", "{{COUNT}} hidden lines": "", "{{COUNT}} Replies": "", "{{user}}'s Chats": "{{user}}의 채팅", @@ -108,6 +108,7 @@ "Attribute for Username": "", "Audio": "오디오", "August": "8월", + "Auth": "", "Authenticate": "", "Authentication": "", "Auto-Copy Response to Clipboard": "응답을 클립보드에 자동 복사", @@ -119,7 +120,7 @@ "AUTOMATIC1111 Base URL": "AUTOMATIC1111 기본 URL", "AUTOMATIC1111 Base URL is required.": "AUTOMATIC1111 기본 URL 설정이 필요합니다.", "Available list": "가능한 목록", - "Available Tool Servers": "", + "Available Tools": "", "available!": "사용 가능!", "Awful": "끔찍함", "Azure AI Speech": "Azure AI 음성", @@ -303,6 +304,7 @@ "Direct Connections": "", "Direct Connections allow users to connect to their own OpenAI compatible API endpoints.": "", "Direct Connections settings updated": "", + "Direct Tool Servers": "", "Disabled": "제한됨", "Discover a function": "함수 검색", "Discover a model": "모델 검색", @@ -412,6 +414,7 @@ "Enter Kagi Search API Key": "Kagi Search API 키 입력", "Enter Key Behavior": "", "Enter language codes": "언어 코드 입력", + "Enter Mistral API Key": "", "Enter Model ID": "모델 ID 입력", "Enter model tag (e.g. {{modelTag}})": "모델 태그 입력(예: {{modelTag}})", "Enter Mojeek Search API Key": "Mojeek Search API 키 입력", @@ -436,6 +439,7 @@ "Enter server port": "", "Enter stop sequence": "중지 시퀀스 입력", "Enter system prompt": "시스템 프롬프트 입력", + "Enter system prompt here": "", "Enter Tavily API Key": "Tavily API 키 입력", "Enter the public URL of your WebUI. This URL will be used to generate links in the notifications.": "WebUI의 공개 URL을 입력해 주세요. 이 URL은 알림에서 링크를 생성하는 데 사용합니다.", "Enter Tika Server URL": "Tika 서버 URL 입력", @@ -449,6 +453,7 @@ "Enter Your Email": "이메일 입력", "Enter Your Full Name": "이름 입력", "Enter your message": "메세지 입력", + "Enter your name": "", "Enter your new password": "새로운 비밀번호를 입력해 주세요", "Enter Your Password": "비밀번호 입력", "Enter Your Role": "역할 입력", @@ -468,7 +473,7 @@ "Exceeded the number of seats in your license. Please contact support to increase the number of seats.": "", "Exclude": "미포함", "Execute code for analysis": "", - "Executing `{{NAME}}`...": "", + "Executing **{{NAME}}**...": "", "Expand": "", "Experimental": "실험적", "Explain": "", @@ -525,6 +530,7 @@ "Forge new paths": "", "Form": "폼", "Format your variables using brackets like this:": "변수를 다음과 같이 괄호를 사용하여 생성하세요", + "Forwards system user session credentials to authenticate": "", "Frequency Penalty": "빈도 페널티", "Full Context Mode": "", "Function": "함수", @@ -694,6 +700,8 @@ "Mirostat": "Mirostat", "Mirostat Eta": "Mirostat Eta", "Mirostat Tau": "Mirostat Tau", + "Mistral OCR": "", + "Mistral OCR API Key required.": "", "Model": "모델", "Model '{{modelName}}' has been successfully downloaded.": "'{{modelName}}' 모델이 성공적으로 다운로드되었습니다.", "Model '{{modelTag}}' is already in queue for downloading.": "'{{modelTag}}' 모델은 이미 다운로드 대기열에 있습니다.", @@ -789,6 +797,7 @@ "OpenAI API Key is required.": "OpenAI API 키가 필요합니다.", "OpenAI API settings updated": "", "OpenAI URL/Key required.": "OpenAI URL/키가 필요합니다.", + "openapi.json Path": "", "or": "또는", "Organize your users": "사용자를 ", "Other": "기타", @@ -1042,6 +1051,7 @@ "Thinking...": "생각 중...", "This action cannot be undone. Do you wish to continue?": "이 액션은 되돌릴 수 없습니다. 계속 하시겠습니까?", "This channel was created on {{createdAt}}. This is the very beginning of the {{channelName}} channel.": "", + "This chat won’t appear in history and your messages will not be saved.": "", "This ensures that your valuable conversations are securely saved to your backend database. Thank you!": "이렇게 하면 소중한 대화 내용이 백엔드 데이터베이스에 안전하게 저장됩니다. 감사합니다!", "This is an experimental feature, it may not function as expected and is subject to change at any time.": "이것은 실험적 기능으로, 예상대로 작동하지 않을 수 있으며 언제든지 변경될 수 있습니다.", "This option controls how many tokens are preserved when refreshing the context. For example, if set to 2, the last 2 tokens of the conversation context will be retained. Preserving context can help maintain the continuity of a conversation, but it may reduce the ability to respond to new topics.": "", @@ -1089,6 +1099,7 @@ "Tool ID": "도구 ID", "Tool imported successfully": "성공적으로 도구를 가져왔습니다", "Tool Name": "도구 이름", + "Tool Servers": "", "Tool updated successfully": "성공적으로 도구가 업데이트되었습니다", "Tools": "도구", "Tools Access": "도구 접근", @@ -1158,7 +1169,7 @@ "Version": "버전", "Version {{selectedVersion}} of {{totalVersions}}": "버전 {{totalVersions}}의 {{selectedVersion}}", "View Replies": "", - "View Result from `{{NAME}}`": "", + "View Result from **{{NAME}}**": "", "Visibility": "공개 범위", "Voice": "음성", "Voice Input": "음성 입력", @@ -1176,9 +1187,9 @@ "Webhook URL": "웹훅 URL", "WebUI Settings": "WebUI 설정", "WebUI URL": "", + "WebUI will make requests to \"{{url}}{{path}}\"": "", "WebUI will make requests to \"{{url}}/api/chat\"": "WebUI가 \"{{url}}/api/chat\"로 요청을 보냅니다", "WebUI will make requests to \"{{url}}/chat/completions\"": "WebUI가 \"{{url}}/chat/completions\"로 요청을 보냅니다", - "WebUI will make requests to \"{{url}}/openapi.json\"": "", "What are you trying to achieve?": "무엇을 성취하고 싶으신가요?", "What are you working on?": "어떤 작업을 하고 계신가요?", "What’s New in": "새로운 기능:", diff --git a/src/lib/i18n/locales/languages.json b/src/lib/i18n/locales/languages.json index 1568bee98..29bbfa199 100644 --- a/src/lib/i18n/locales/languages.json +++ b/src/lib/i18n/locales/languages.json @@ -23,9 +23,9 @@ "code": "bn-BD", "title": "Bengali (বাংলা)" }, - { - "code": "bo-TB", - "title": "Tibetan (བོད)" + { + "code": "bo-TB", + "title": "Tibetan (བོད)" }, { "code": "bg-BG", diff --git a/src/lib/i18n/locales/lt-LT/translation.json b/src/lib/i18n/locales/lt-LT/translation.json index 8b0f53d2d..4c850704a 100644 --- a/src/lib/i18n/locales/lt-LT/translation.json +++ b/src/lib/i18n/locales/lt-LT/translation.json @@ -6,7 +6,7 @@ "(latest)": "(naujausias)", "(Ollama)": "", "{{ models }}": "{{ models }}", - "{{COUNT}} Available Tool Servers": "", + "{{COUNT}} Available Tools": "", "{{COUNT}} hidden lines": "", "{{COUNT}} Replies": "", "{{user}}'s Chats": "{{user}} susirašinėjimai", @@ -108,6 +108,7 @@ "Attribute for Username": "", "Audio": "Audio įrašas", "August": "Rugpjūtis", + "Auth": "", "Authenticate": "", "Authentication": "", "Auto-Copy Response to Clipboard": "Automatiškai nukopijuoti atsakymą", @@ -119,7 +120,7 @@ "AUTOMATIC1111 Base URL": "AUTOMATIC1111 bazės nuoroda", "AUTOMATIC1111 Base URL is required.": "AUTOMATIC1111 bazės nuoroda reikalinga.", "Available list": "", - "Available Tool Servers": "", + "Available Tools": "", "available!": "prieinama!", "Awful": "", "Azure AI Speech": "", @@ -303,6 +304,7 @@ "Direct Connections": "", "Direct Connections allow users to connect to their own OpenAI compatible API endpoints.": "", "Direct Connections settings updated": "", + "Direct Tool Servers": "", "Disabled": "Išjungta", "Discover a function": "Atrasti funkciją", "Discover a model": "Atrasti modelį", @@ -412,6 +414,7 @@ "Enter Kagi Search API Key": "", "Enter Key Behavior": "", "Enter language codes": "Įveskite kalbos kodus", + "Enter Mistral API Key": "", "Enter Model ID": "", "Enter model tag (e.g. {{modelTag}})": "Įveskite modelio žymą (pvz. {{modelTag}})", "Enter Mojeek Search API Key": "", @@ -436,6 +439,7 @@ "Enter server port": "", "Enter stop sequence": "Įveskite pabaigos sekvenciją", "Enter system prompt": "Įveskite sistemos užklausą", + "Enter system prompt here": "", "Enter Tavily API Key": "Įveskite Tavily API raktą", "Enter the public URL of your WebUI. This URL will be used to generate links in the notifications.": "", "Enter Tika Server URL": "Įveskite Tika serverio nuorodą", @@ -449,6 +453,7 @@ "Enter Your Email": "Įveskite el. pašto adresą", "Enter Your Full Name": "Įveskite vardą bei pavardę", "Enter your message": "Įveskite žinutę", + "Enter your name": "", "Enter your new password": "", "Enter Your Password": "Įveskite slaptažodį", "Enter Your Role": "Įveskite savo rolę", @@ -468,7 +473,7 @@ "Exceeded the number of seats in your license. Please contact support to increase the number of seats.": "", "Exclude": "", "Execute code for analysis": "", - "Executing `{{NAME}}`...": "", + "Executing **{{NAME}}**...": "", "Expand": "", "Experimental": "Eksperimentinis", "Explain": "", @@ -525,6 +530,7 @@ "Forge new paths": "", "Form": "Forma", "Format your variables using brackets like this:": "", + "Forwards system user session credentials to authenticate": "", "Frequency Penalty": "Dažnumo bauda", "Full Context Mode": "", "Function": "", @@ -694,6 +700,8 @@ "Mirostat": "Mirostat", "Mirostat Eta": "Mirostat Eta", "Mirostat Tau": "Mirostat Tau", + "Mistral OCR": "", + "Mistral OCR API Key required.": "", "Model": "", "Model '{{modelName}}' has been successfully downloaded.": "'{{modelName}}' modelis sėkmingai atsisiųstas.", "Model '{{modelTag}}' is already in queue for downloading.": "Modelis '{{modelTag}}' jau atsisiuntimų eilėje.", @@ -789,6 +797,7 @@ "OpenAI API Key is required.": "OpenAI API raktas būtinas.", "OpenAI API settings updated": "", "OpenAI URL/Key required.": "OpenAI API nuoroda ir raktas būtini", + "openapi.json Path": "", "or": "arba", "Organize your users": "", "Other": "Kita", @@ -1042,6 +1051,7 @@ "Thinking...": "Mąsto...", "This action cannot be undone. Do you wish to continue?": "Šis veiksmas negali būti atšauktas. Ar norite tęsti?", "This channel was created on {{createdAt}}. This is the very beginning of the {{channelName}} channel.": "", + "This chat won’t appear in history and your messages will not be saved.": "", "This ensures that your valuable conversations are securely saved to your backend database. Thank you!": "Tai užtikrina, kad Jūsų pokalbiai saugiai saugojami duomenų bazėje. Ačiū!", "This is an experimental feature, it may not function as expected and is subject to change at any time.": "Tai eksperimentinė funkcija ir gali veikti nevisada.", "This option controls how many tokens are preserved when refreshing the context. For example, if set to 2, the last 2 tokens of the conversation context will be retained. Preserving context can help maintain the continuity of a conversation, but it may reduce the ability to respond to new topics.": "", @@ -1089,6 +1099,7 @@ "Tool ID": "", "Tool imported successfully": "Įrankis importuotas sėkmingai", "Tool Name": "", + "Tool Servers": "", "Tool updated successfully": "Įrankis atnaujintas sėkmingai", "Tools": "Įrankiai", "Tools Access": "", @@ -1158,7 +1169,7 @@ "Version": "Versija", "Version {{selectedVersion}} of {{totalVersions}}": "", "View Replies": "", - "View Result from `{{NAME}}`": "", + "View Result from **{{NAME}}**": "", "Visibility": "", "Voice": "Balsas", "Voice Input": "", @@ -1176,9 +1187,9 @@ "Webhook URL": "Webhook nuoroda", "WebUI Settings": "WebUI parametrai", "WebUI URL": "", + "WebUI will make requests to \"{{url}}{{path}}\"": "", "WebUI will make requests to \"{{url}}/api/chat\"": "", "WebUI will make requests to \"{{url}}/chat/completions\"": "", - "WebUI will make requests to \"{{url}}/openapi.json\"": "", "What are you trying to achieve?": "", "What are you working on?": "", "What’s New in": "Kas naujo", diff --git a/src/lib/i18n/locales/ms-MY/translation.json b/src/lib/i18n/locales/ms-MY/translation.json index 4ec87734f..3dc2045fd 100644 --- a/src/lib/i18n/locales/ms-MY/translation.json +++ b/src/lib/i18n/locales/ms-MY/translation.json @@ -6,7 +6,7 @@ "(latest)": "(terkini)", "(Ollama)": "", "{{ models }}": "{{ models }}", - "{{COUNT}} Available Tool Servers": "", + "{{COUNT}} Available Tools": "", "{{COUNT}} hidden lines": "", "{{COUNT}} Replies": "", "{{user}}'s Chats": "Perbualan {{user}}", @@ -108,6 +108,7 @@ "Attribute for Username": "", "Audio": "Audio", "August": "Ogos", + "Auth": "", "Authenticate": "", "Authentication": "", "Auto-Copy Response to Clipboard": "Salin Response secara Automatik ke Papan Klip", @@ -119,7 +120,7 @@ "AUTOMATIC1111 Base URL": "URL Asas AUTOMATIC1111", "AUTOMATIC1111 Base URL is required.": "URL Asas AUTOMATIC1111 diperlukan.", "Available list": "", - "Available Tool Servers": "", + "Available Tools": "", "available!": "tersedia!", "Awful": "", "Azure AI Speech": "", @@ -303,6 +304,7 @@ "Direct Connections": "", "Direct Connections allow users to connect to their own OpenAI compatible API endpoints.": "", "Direct Connections settings updated": "", + "Direct Tool Servers": "", "Disabled": "Dilumpuhkan", "Discover a function": "Temui fungsi", "Discover a model": "Temui model", @@ -412,6 +414,7 @@ "Enter Kagi Search API Key": "", "Enter Key Behavior": "", "Enter language codes": "Masukkan kod bahasa", + "Enter Mistral API Key": "", "Enter Model ID": "", "Enter model tag (e.g. {{modelTag}})": "Masukkan tag model (cth {{ modelTag }})", "Enter Mojeek Search API Key": "", @@ -436,6 +439,7 @@ "Enter server port": "", "Enter stop sequence": "Masukkan urutan hentian", "Enter system prompt": "Masukkan gesaan sistem", + "Enter system prompt here": "", "Enter Tavily API Key": "Masukkan Kunci API Tavily", "Enter the public URL of your WebUI. This URL will be used to generate links in the notifications.": "", "Enter Tika Server URL": "Masukkan URL Pelayan Tika", @@ -449,6 +453,7 @@ "Enter Your Email": "Masukkan E-mel Anda", "Enter Your Full Name": "Masukkan Nama Penuh Anda", "Enter your message": "Masukkan mesej anda", + "Enter your name": "", "Enter your new password": "", "Enter Your Password": "Masukkan Kata Laluan Anda", "Enter Your Role": "Masukkan Peranan Anda", @@ -468,7 +473,7 @@ "Exceeded the number of seats in your license. Please contact support to increase the number of seats.": "", "Exclude": "", "Execute code for analysis": "", - "Executing `{{NAME}}`...": "", + "Executing **{{NAME}}**...": "", "Expand": "", "Experimental": "Percubaan", "Explain": "", @@ -525,6 +530,7 @@ "Forge new paths": "", "Form": "Borang", "Format your variables using brackets like this:": "", + "Forwards system user session credentials to authenticate": "", "Frequency Penalty": "Penalti Kekerapan", "Full Context Mode": "", "Function": "", @@ -694,6 +700,8 @@ "Mirostat": "Mirostat", "Mirostat Eta": "Mirostat Eta", "Mirostat Tau": "Mirostat Tau", + "Mistral OCR": "", + "Mistral OCR API Key required.": "", "Model": "", "Model '{{modelName}}' has been successfully downloaded.": "Model '{{ modelName }}' telah berjaya dimuat turun.", "Model '{{modelTag}}' is already in queue for downloading.": "Model '{{ modelTag }}' sudah dalam baris gilir untuk dimuat turun.", @@ -789,6 +797,7 @@ "OpenAI API Key is required.": "Kekunci API OpenAI diperlukan", "OpenAI API settings updated": "", "OpenAI URL/Key required.": "URL/Kekunci OpenAI diperlukan", + "openapi.json Path": "", "or": "atau", "Organize your users": "", "Other": "Lain-lain", @@ -1042,6 +1051,7 @@ "Thinking...": "Berfikir...", "This action cannot be undone. Do you wish to continue?": "Tindakan ini tidak boleh diubah semula kepada asal. Adakah anda ingin teruskan", "This channel was created on {{createdAt}}. This is the very beginning of the {{channelName}} channel.": "", + "This chat won’t appear in history and your messages will not be saved.": "", "This ensures that your valuable conversations are securely saved to your backend database. Thank you!": "Ini akan memastikan bahawa perbualan berharga anda disimpan dengan selamat ke pangkalan data 'backend' anda. Terima kasih!", "This is an experimental feature, it may not function as expected and is subject to change at any time.": "ni adalah ciri percubaan, ia mungkin tidak berfungsi seperti yang diharapkan dan tertakluk kepada perubahan pada bila-bila masa.", "This option controls how many tokens are preserved when refreshing the context. For example, if set to 2, the last 2 tokens of the conversation context will be retained. Preserving context can help maintain the continuity of a conversation, but it may reduce the ability to respond to new topics.": "", @@ -1089,6 +1099,7 @@ "Tool ID": "", "Tool imported successfully": "Alat berjaya diimport", "Tool Name": "", + "Tool Servers": "", "Tool updated successfully": "Alat berjaya dikemas kini", "Tools": "Alatan", "Tools Access": "", @@ -1158,7 +1169,7 @@ "Version": "Versi", "Version {{selectedVersion}} of {{totalVersions}}": "", "View Replies": "", - "View Result from `{{NAME}}`": "", + "View Result from **{{NAME}}**": "", "Visibility": "", "Voice": "Suara", "Voice Input": "", @@ -1176,9 +1187,9 @@ "Webhook URL": "URL 'Webhook'", "WebUI Settings": "Tetapan WebUI", "WebUI URL": "", + "WebUI will make requests to \"{{url}}{{path}}\"": "", "WebUI will make requests to \"{{url}}/api/chat\"": "", "WebUI will make requests to \"{{url}}/chat/completions\"": "", - "WebUI will make requests to \"{{url}}/openapi.json\"": "", "What are you trying to achieve?": "", "What are you working on?": "", "What’s New in": "Apakah yang terbaru dalam", diff --git a/src/lib/i18n/locales/nb-NO/translation.json b/src/lib/i18n/locales/nb-NO/translation.json index 59a45be71..c456b184c 100644 --- a/src/lib/i18n/locales/nb-NO/translation.json +++ b/src/lib/i18n/locales/nb-NO/translation.json @@ -6,7 +6,7 @@ "(latest)": "(siste)", "(Ollama)": "", "{{ models }}": "{{ modeller }}", - "{{COUNT}} Available Tool Servers": "", + "{{COUNT}} Available Tools": "", "{{COUNT}} hidden lines": "", "{{COUNT}} Replies": "{{COUNT}} svar", "{{user}}'s Chats": "{{user}} sine samtaler", @@ -108,6 +108,7 @@ "Attribute for Username": "Attributt for brukernavn", "Audio": "Lyd", "August": "august", + "Auth": "", "Authenticate": "Godkjenn", "Authentication": "Godkjenning", "Auto-Copy Response to Clipboard": "Kopier svar automatisk til utklippstavlen", @@ -119,7 +120,7 @@ "AUTOMATIC1111 Base URL": "Absolutt URL for AUTOMATIC1111", "AUTOMATIC1111 Base URL is required.": "Absolutt URL for AUTOMATIC1111 kreves.", "Available list": "Tilgjengelig liste", - "Available Tool Servers": "", + "Available Tools": "", "available!": "tilgjengelig!", "Awful": "Fælt", "Azure AI Speech": "Azure AI-tale", @@ -303,6 +304,7 @@ "Direct Connections": "Direkte koblinger", "Direct Connections allow users to connect to their own OpenAI compatible API endpoints.": "Med direkte koblinger kan brukerne koble til egne OpenAI-kompatible API-endepunkter.", "Direct Connections settings updated": "Innstillinger for direkte koblinger er oppdatert", + "Direct Tool Servers": "", "Disabled": "Deaktivert", "Discover a function": "Oppdag en funksjon", "Discover a model": "Oppdag en modell", @@ -412,6 +414,7 @@ "Enter Kagi Search API Key": "Angi API-nøkkel for Kagi Search", "Enter Key Behavior": "", "Enter language codes": "Angi språkkoder", + "Enter Mistral API Key": "", "Enter Model ID": "Angi modellens ID", "Enter model tag (e.g. {{modelTag}})": "Angi modellens etikett (f.eks. {{modelTag}})", "Enter Mojeek Search API Key": "Angi API-nøkkel for Mojeek-søk", @@ -436,6 +439,7 @@ "Enter server port": "Angi server port", "Enter stop sequence": "Angi stoppsekvens", "Enter system prompt": "Angi systemledetekst", + "Enter system prompt here": "", "Enter Tavily API Key": "Angi API-nøkkel for Tavily", "Enter the public URL of your WebUI. This URL will be used to generate links in the notifications.": "Angi den offentlige URL-adressen til WebUI. Denne URL-adressen vil bli brukt til å generere koblinger i varslene.", "Enter Tika Server URL": "Angi server-URL for Tika", @@ -449,6 +453,7 @@ "Enter Your Email": "Skriv inn e-postadressen din", "Enter Your Full Name": "Skriv inn det fulle navnet ditt", "Enter your message": "Skriv inn din melding", + "Enter your name": "", "Enter your new password": "Angi ditt nye passord", "Enter Your Password": "Skriv inn passordet ditt", "Enter Your Role": "Skriv inn rollen din", @@ -468,7 +473,7 @@ "Exceeded the number of seats in your license. Please contact support to increase the number of seats.": "", "Exclude": "Utelukk", "Execute code for analysis": "Kjør kode for analyse", - "Executing `{{NAME}}`...": "", + "Executing **{{NAME}}**...": "", "Expand": "", "Experimental": "Eksperimentell", "Explain": "", @@ -525,6 +530,7 @@ "Forge new paths": "Glem nye baner", "Form": "Form", "Format your variables using brackets like this:": "Formatér variablene dine med klammer som disse:", + "Forwards system user session credentials to authenticate": "", "Frequency Penalty": "Frekvensstraff", "Full Context Mode": "Modus for full kontekst", "Function": "Funksjon", @@ -694,6 +700,8 @@ "Mirostat": "Mirostat", "Mirostat Eta": "Mirostat Eta", "Mirostat Tau": "Mirostat Tau", + "Mistral OCR": "", + "Mistral OCR API Key required.": "", "Model": "Modell", "Model '{{modelName}}' has been successfully downloaded.": "Modellen {{modelName}} er lastet ned.", "Model '{{modelTag}}' is already in queue for downloading.": "Modellen {{modelTag}} er allerede i nedlastingskøen.", @@ -789,6 +797,7 @@ "OpenAI API Key is required.": "API-nøkkel for OpenAI kreves.", "OpenAI API settings updated": "API-innstillinger for OpenAI er oppdatert", "OpenAI URL/Key required.": "URL/nøkkel for OpenAI kreves.", + "openapi.json Path": "", "or": "eller", "Organize your users": "Organisere brukerne dine", "Other": "Annet", @@ -1042,6 +1051,7 @@ "Thinking...": "Tenker ...", "This action cannot be undone. Do you wish to continue?": "Denne handlingen kan ikke angres. Vil du fortsette?", "This channel was created on {{createdAt}}. This is the very beginning of the {{channelName}} channel.": "", + "This chat won’t appear in history and your messages will not be saved.": "", "This ensures that your valuable conversations are securely saved to your backend database. Thank you!": "Dette sikrer at de verdifulle samtalene dine lagres sikkert i backend-databasen din. Takk!", "This is an experimental feature, it may not function as expected and is subject to change at any time.": "Dette er en eksperimentell funksjon. Det er mulig den ikke fungerer som forventet, og den kan endres når som helst.", "This option controls how many tokens are preserved when refreshing the context. For example, if set to 2, the last 2 tokens of the conversation context will be retained. Preserving context can help maintain the continuity of a conversation, but it may reduce the ability to respond to new topics.": "", @@ -1089,6 +1099,7 @@ "Tool ID": "Verktøyets ID", "Tool imported successfully": "Verktøy importert", "Tool Name": "Verktøyets navn", + "Tool Servers": "", "Tool updated successfully": "Verktøy oppdatert", "Tools": "Verktøy", "Tools Access": "Verktøyets tilgang", @@ -1158,7 +1169,7 @@ "Version": "Versjon", "Version {{selectedVersion}} of {{totalVersions}}": "Version {{selectedVersion}} av {{totalVersions}}", "View Replies": "Vis svar", - "View Result from `{{NAME}}`": "", + "View Result from **{{NAME}}**": "", "Visibility": "Synlighet", "Voice": "Stemme", "Voice Input": "Taleinndata", @@ -1176,9 +1187,9 @@ "Webhook URL": "Webhook URL", "WebUI Settings": "Innstillinger for WebUI", "WebUI URL": "URL for WebUI", + "WebUI will make requests to \"{{url}}{{path}}\"": "", "WebUI will make requests to \"{{url}}/api/chat\"": "WebUI vil rette forespørsler til \"{{url}}/api/chat\"", "WebUI will make requests to \"{{url}}/chat/completions\"": "WebUI vil rette forespørsler til \"{{url}}/chat/completions\"", - "WebUI will make requests to \"{{url}}/openapi.json\"": "", "What are you trying to achieve?": "Hva prøver du å oppnå?", "What are you working on?": "Hva jobber du på nå?", "What’s New in": "Hva er nytt i", diff --git a/src/lib/i18n/locales/nl-NL/translation.json b/src/lib/i18n/locales/nl-NL/translation.json index b8be53549..8a6832240 100644 --- a/src/lib/i18n/locales/nl-NL/translation.json +++ b/src/lib/i18n/locales/nl-NL/translation.json @@ -6,7 +6,7 @@ "(latest)": "(nieuwste)", "(Ollama)": "(Ollama)", "{{ models }}": "{{ modellen }}", - "{{COUNT}} Available Tool Servers": "{{COUNT}} beschikbare gereedschapservers", + "{{COUNT}} Available Tools": "", "{{COUNT}} hidden lines": "{{COUNT}} verborgen regels", "{{COUNT}} Replies": "{{COUNT}} antwoorden", "{{user}}'s Chats": "{{user}}'s chats", @@ -108,6 +108,7 @@ "Attribute for Username": "Attribuut voor gebruikersnaam", "Audio": "Audio", "August": "Augustus", + "Auth": "", "Authenticate": "Authenticeer", "Authentication": "Authenticatie", "Auto-Copy Response to Clipboard": "Antwoord automatisch kopiëren naar klembord", @@ -119,7 +120,7 @@ "AUTOMATIC1111 Base URL": "AUTOMATIC1111 Basis-URL", "AUTOMATIC1111 Base URL is required.": "AUTOMATIC1111 Basis-URL is verplicht", "Available list": "Beschikbare lijst", - "Available Tool Servers": "Beschikbare gereedschapservers", + "Available Tools": "", "available!": "beschikbaar!", "Awful": "Verschrikkelijk", "Azure AI Speech": "Azure AI-spraak", @@ -231,7 +232,7 @@ "Control how message text is split for TTS requests. 'Punctuation' splits into sentences, 'paragraphs' splits into paragraphs, and 'none' keeps the message as a single string.": "Bepaal hoe berichttekst wordt opgesplitst voor TTS-verzoeken. 'Leestekens' splitst op in zinnen, 'alinea's' splitst op in paragrafen en 'geen' houdt het bericht als een enkele string.", "Control the repetition of token sequences in the generated text. A higher value (e.g., 1.5) will penalize repetitions more strongly, while a lower value (e.g., 1.1) will be more lenient. At 1, it is disabled.": "Controleer de herhaling van tokenreeksen in de gegenereerde tekst. Een hogere waarde (bijv. 1,5) zal herhalingen sterker bestraffen, terwijl een lagere waarde (bijv. 1,1) milder zal zijn. Bij 1 is het uitgeschakeld.", "Controls": "Besturingselementen", - "Controls the balance between coherence and diversity of thEnable Mirostat sampling for controlling perplexity.e output. A lower value will result in more focused and coherent text.": "Regelt de balans tussen coherentie en diversiteit van de uitvoer. Een lagere waarde resulteert in een meer gerichte en coherente tekst.", + "Controls the balance between coherence and diversity of the output. A lower value will result in more focused and coherent text.": "", "Copied": "Gekopieerd", "Copied shared chat URL to clipboard!": "URL van gedeelde gesprekspagina gekopieerd naar klembord!", "Copied to clipboard": "Gekopieerd naar klembord", @@ -303,6 +304,7 @@ "Direct Connections": "Directe verbindingen", "Direct Connections allow users to connect to their own OpenAI compatible API endpoints.": "Directe verbindingen stellen gebruikers in staat om met hun eigen OpenAI compatibele API-endpoints te verbinden.", "Direct Connections settings updated": "Directe verbindingsopties bijgewerkt", + "Direct Tool Servers": "", "Disabled": "Uitgeschakeld", "Discover a function": "Ontdek een functie", "Discover a model": "Ontdek een model", @@ -412,6 +414,7 @@ "Enter Kagi Search API Key": "Voer Kagi Search API-sleutel in", "Enter Key Behavior": "Voer sleutelgedrag in", "Enter language codes": "Voeg taalcodes toe", + "Enter Mistral API Key": "", "Enter Model ID": "Voer model-ID in", "Enter model tag (e.g. {{modelTag}})": "Voeg model-tag toe (Bijv. {{modelTag}})", "Enter Mojeek Search API Key": "Voer Mojeek Search API-sleutel in", @@ -436,6 +439,7 @@ "Enter server port": "Voer serverpoort in", "Enter stop sequence": "Voer stopsequentie in", "Enter system prompt": "Voer systeem prompt in", + "Enter system prompt here": "", "Enter Tavily API Key": "Voer Tavily API-sleutel in", "Enter the public URL of your WebUI. This URL will be used to generate links in the notifications.": "Voer de publieke URL van je WebUI in. Deze URL wordt gebruikt om links in de notificaties te maken.", "Enter Tika Server URL": "Voer Tika Server URL in", @@ -449,6 +453,7 @@ "Enter Your Email": "Voer je Email in", "Enter Your Full Name": "Voer je Volledige Naam in", "Enter your message": "Voer je bericht in", + "Enter your name": "", "Enter your new password": "Voer je nieuwe wachtwoord in", "Enter Your Password": "Voer je wachtwoord in", "Enter Your Role": "Voer je rol in", @@ -468,7 +473,7 @@ "Exceeded the number of seats in your license. Please contact support to increase the number of seats.": "Het aantal seats in uw licentie is overschreden. Neem contact op met support om het aantal seats te verhogen.", "Exclude": "Sluit uit", "Execute code for analysis": "Voer code uit voor analyse", - "Executing `{{NAME}}`...": "`{{NAME}}`... aan het uitvoeren", + "Executing **{{NAME}}**...": "", "Expand": "Uitbreiden", "Experimental": "Experimenteel", "Explain": "Leg uit", @@ -525,6 +530,7 @@ "Forge new paths": "Smeed nieuwe paden", "Form": "Formulier", "Format your variables using brackets like this:": "Formateer je variabelen met haken zoals dit:", + "Forwards system user session credentials to authenticate": "", "Frequency Penalty": "Frequentiestraf", "Full Context Mode": "Volledige contextmodus", "Function": "Functie", @@ -694,6 +700,8 @@ "Mirostat": "Mirostat", "Mirostat Eta": "Mirostat Eta", "Mirostat Tau": "Mirostat Tau", + "Mistral OCR": "", + "Mistral OCR API Key required.": "", "Model": "Model", "Model '{{modelName}}' has been successfully downloaded.": "Model '{{modelName}}' is succesvol gedownload.", "Model '{{modelTag}}' is already in queue for downloading.": "Model '{{modelTag}}' staat al in de wachtrij voor downloaden.", @@ -789,6 +797,7 @@ "OpenAI API Key is required.": "OpenAI API-sleutel is verplicht", "OpenAI API settings updated": "OpenAI API-sleutel bijgewerkt", "OpenAI URL/Key required.": "OpenAI URL/Sleutel vereist.", + "openapi.json Path": "", "or": "of", "Organize your users": "Orden je gebruikers", "Other": "Andere", @@ -1042,6 +1051,7 @@ "Thinking...": "Aan het denken...", "This action cannot be undone. Do you wish to continue?": "Deze actie kan niet ongedaan worden gemaakt. Wilt u doorgaan?", "This channel was created on {{createdAt}}. This is the very beginning of the {{channelName}} channel.": "Dit kanaal was gecreëerd op {{createdAt}}. Dit het begin van het {{channelName}} kanaal.", + "This chat won’t appear in history and your messages will not be saved.": "", "This ensures that your valuable conversations are securely saved to your backend database. Thank you!": "Dit zorgt ervoor dat je waardevolle gesprekken veilig worden opgeslagen in je backend database. Dank je wel!", "This is an experimental feature, it may not function as expected and is subject to change at any time.": "Dit is een experimentele functie, het kan functioneren zoals verwacht en kan op elk moment veranderen.", "This option controls how many tokens are preserved when refreshing the context. For example, if set to 2, the last 2 tokens of the conversation context will be retained. Preserving context can help maintain the continuity of a conversation, but it may reduce the ability to respond to new topics.": "Deze optie bepaalt hoeveel tokens bewaard blijven bij het verversen van de context. Als deze bijvoorbeeld op 2 staat, worden de laatste 2 tekens van de context van het gesprek bewaard. Het behouden van de context kan helpen om de continuïteit van een gesprek te behouden, maar het kan de mogelijkheid om te reageren op nieuwe onderwerpen verminderen.", @@ -1089,6 +1099,7 @@ "Tool ID": "Gereedschaps-ID", "Tool imported successfully": "Gereedschap succesvol geïmporteerd", "Tool Name": "Gereedschapsnaam", + "Tool Servers": "", "Tool updated successfully": "Gereedschap succesvol bijgewerkt", "Tools": "Gereedschappen", "Tools Access": "Gereedschaptoegang", @@ -1158,7 +1169,7 @@ "Version": "Versie", "Version {{selectedVersion}} of {{totalVersions}}": "Versie {{selectedVersion}} van {{totalVersions}}", "View Replies": "Bekijke resultaten", - "View Result from `{{NAME}}`": "Bekijk resultaten van `{{NAME}}`", + "View Result from **{{NAME}}**": "", "Visibility": "Zichtbaarheid", "Voice": "Stem", "Voice Input": "Steminvoer", @@ -1176,9 +1187,9 @@ "Webhook URL": "Webhook URL", "WebUI Settings": "WebUI Instellingen", "WebUI URL": "WebUI-URL", + "WebUI will make requests to \"{{url}}{{path}}\"": "", "WebUI will make requests to \"{{url}}/api/chat\"": "WebUI zal verzoeken doen aan \"{{url}}/api/chat\"", "WebUI will make requests to \"{{url}}/chat/completions\"": "WebUI zal verzoeken doen aan \"{{url}}/chat/completions\"", - "WebUI will make requests to \"{{url}}/openapi.json\"": "WebUI zal verzoeken doen aan \"{{url}}/openapi.json\"", "What are you trying to achieve?": "Wat probeer je te bereiken?", "What are you working on?": "Waar werk je aan?", "What’s New in": "Wat is nieuw in", diff --git a/src/lib/i18n/locales/pa-IN/translation.json b/src/lib/i18n/locales/pa-IN/translation.json index c0148a70d..f6c058953 100644 --- a/src/lib/i18n/locales/pa-IN/translation.json +++ b/src/lib/i18n/locales/pa-IN/translation.json @@ -6,7 +6,7 @@ "(latest)": "(ਤਾਜ਼ਾ)", "(Ollama)": "", "{{ models }}": "{{ ਮਾਡਲ }}", - "{{COUNT}} Available Tool Servers": "", + "{{COUNT}} Available Tools": "", "{{COUNT}} hidden lines": "", "{{COUNT}} Replies": "", "{{user}}'s Chats": "{{user}} ਦੀਆਂ ਗੱਲਾਂ", @@ -108,6 +108,7 @@ "Attribute for Username": "", "Audio": "ਆਡੀਓ", "August": "ਅਗਸਤ", + "Auth": "", "Authenticate": "", "Authentication": "", "Auto-Copy Response to Clipboard": "ਜਵਾਬ ਆਟੋ ਕਾਪੀ ਕਲਿੱਪਬੋਰਡ 'ਤੇ", @@ -119,7 +120,7 @@ "AUTOMATIC1111 Base URL": "AUTOMATIC1111 ਬੇਸ URL", "AUTOMATIC1111 Base URL is required.": "AUTOMATIC1111 ਬੇਸ URL ਦੀ ਲੋੜ ਹੈ।", "Available list": "", - "Available Tool Servers": "", + "Available Tools": "", "available!": "ਉਪਲਬਧ ਹੈ!", "Awful": "", "Azure AI Speech": "", @@ -303,6 +304,7 @@ "Direct Connections": "", "Direct Connections allow users to connect to their own OpenAI compatible API endpoints.": "", "Direct Connections settings updated": "", + "Direct Tool Servers": "", "Disabled": "", "Discover a function": "", "Discover a model": "ਇੱਕ ਮਾਡਲ ਲੱਭੋ", @@ -412,6 +414,7 @@ "Enter Kagi Search API Key": "", "Enter Key Behavior": "", "Enter language codes": "ਭਾਸ਼ਾ ਕੋਡ ਦਰਜ ਕਰੋ", + "Enter Mistral API Key": "", "Enter Model ID": "", "Enter model tag (e.g. {{modelTag}})": "ਮਾਡਲ ਟੈਗ ਦਰਜ ਕਰੋ (ਉਦਾਹਰਣ ਲਈ {{modelTag}})", "Enter Mojeek Search API Key": "", @@ -436,6 +439,7 @@ "Enter server port": "", "Enter stop sequence": "ਰੋਕਣ ਦਾ ਕ੍ਰਮ ਦਰਜ ਕਰੋ", "Enter system prompt": "", + "Enter system prompt here": "", "Enter Tavily API Key": "", "Enter the public URL of your WebUI. This URL will be used to generate links in the notifications.": "", "Enter Tika Server URL": "", @@ -449,6 +453,7 @@ "Enter Your Email": "ਆਪਣੀ ਈਮੇਲ ਦਰਜ ਕਰੋ", "Enter Your Full Name": "ਆਪਣਾ ਪੂਰਾ ਨਾਮ ਦਰਜ ਕਰੋ", "Enter your message": "", + "Enter your name": "", "Enter your new password": "", "Enter Your Password": "ਆਪਣਾ ਪਾਸਵਰਡ ਦਰਜ ਕਰੋ", "Enter Your Role": "ਆਪਣੀ ਭੂਮਿਕਾ ਦਰਜ ਕਰੋ", @@ -468,7 +473,7 @@ "Exceeded the number of seats in your license. Please contact support to increase the number of seats.": "", "Exclude": "", "Execute code for analysis": "", - "Executing `{{NAME}}`...": "", + "Executing **{{NAME}}**...": "", "Expand": "", "Experimental": "ਪਰਮਾਣੂਕ੍ਰਿਤ", "Explain": "", @@ -525,6 +530,7 @@ "Forge new paths": "", "Form": "", "Format your variables using brackets like this:": "", + "Forwards system user session credentials to authenticate": "", "Frequency Penalty": "ਬਾਰੰਬਾਰਤਾ ਜੁਰਮਾਨਾ", "Full Context Mode": "", "Function": "", @@ -694,6 +700,8 @@ "Mirostat": "ਮਿਰੋਸਟੈਟ", "Mirostat Eta": "ਮਿਰੋਸਟੈਟ ਈਟਾ", "Mirostat Tau": "ਮਿਰੋਸਟੈਟ ਟਾਉ", + "Mistral OCR": "", + "Mistral OCR API Key required.": "", "Model": "", "Model '{{modelName}}' has been successfully downloaded.": "ਮਾਡਲ '{{modelName}}' ਸਫਲਤਾਪੂਰਵਕ ਡਾਊਨਲੋਡ ਕੀਤਾ ਗਿਆ ਹੈ।", "Model '{{modelTag}}' is already in queue for downloading.": "ਮਾਡਲ '{{modelTag}}' ਪਹਿਲਾਂ ਹੀ ਡਾਊਨਲੋਡ ਲਈ ਕਤਾਰ ਵਿੱਚ ਹੈ।", @@ -789,6 +797,7 @@ "OpenAI API Key is required.": "ਓਪਨਏਆਈ API ਕੁੰਜੀ ਦੀ ਲੋੜ ਹੈ।", "OpenAI API settings updated": "", "OpenAI URL/Key required.": "ਓਪਨਏਆਈ URL/ਕੁੰਜੀ ਦੀ ਲੋੜ ਹੈ।", + "openapi.json Path": "", "or": "ਜਾਂ", "Organize your users": "", "Other": "ਹੋਰ", @@ -1042,6 +1051,7 @@ "Thinking...": "", "This action cannot be undone. Do you wish to continue?": "", "This channel was created on {{createdAt}}. This is the very beginning of the {{channelName}} channel.": "", + "This chat won’t appear in history and your messages will not be saved.": "", "This ensures that your valuable conversations are securely saved to your backend database. Thank you!": "ਇਹ ਯਕੀਨੀ ਬਣਾਉਂਦਾ ਹੈ ਕਿ ਤੁਹਾਡੀਆਂ ਕੀਮਤੀ ਗੱਲਾਂ ਤੁਹਾਡੇ ਬੈਕਐਂਡ ਡਾਟਾਬੇਸ ਵਿੱਚ ਸੁਰੱਖਿਅਤ ਤੌਰ 'ਤੇ ਸੰਭਾਲੀਆਂ ਗਈਆਂ ਹਨ। ਧੰਨਵਾਦ!", "This is an experimental feature, it may not function as expected and is subject to change at any time.": "", "This option controls how many tokens are preserved when refreshing the context. For example, if set to 2, the last 2 tokens of the conversation context will be retained. Preserving context can help maintain the continuity of a conversation, but it may reduce the ability to respond to new topics.": "", @@ -1089,6 +1099,7 @@ "Tool ID": "", "Tool imported successfully": "", "Tool Name": "", + "Tool Servers": "", "Tool updated successfully": "", "Tools": "", "Tools Access": "", @@ -1158,7 +1169,7 @@ "Version": "ਵਰਜਨ", "Version {{selectedVersion}} of {{totalVersions}}": "", "View Replies": "", - "View Result from `{{NAME}}`": "", + "View Result from **{{NAME}}**": "", "Visibility": "", "Voice": "", "Voice Input": "", @@ -1176,9 +1187,9 @@ "Webhook URL": "ਵੈਬਹੁੱਕ URL", "WebUI Settings": "ਵੈਬਯੂਆਈ ਸੈਟਿੰਗਾਂ", "WebUI URL": "", + "WebUI will make requests to \"{{url}}{{path}}\"": "", "WebUI will make requests to \"{{url}}/api/chat\"": "", "WebUI will make requests to \"{{url}}/chat/completions\"": "", - "WebUI will make requests to \"{{url}}/openapi.json\"": "", "What are you trying to achieve?": "", "What are you working on?": "", "What’s New in": "ਨਵਾਂ ਕੀ ਹੈ", diff --git a/src/lib/i18n/locales/pl-PL/translation.json b/src/lib/i18n/locales/pl-PL/translation.json index 66793362e..e04f4c56c 100644 --- a/src/lib/i18n/locales/pl-PL/translation.json +++ b/src/lib/i18n/locales/pl-PL/translation.json @@ -6,7 +6,7 @@ "(latest)": "(najnowszy)", "(Ollama)": "", "{{ models }}": "{{ modele }}", - "{{COUNT}} Available Tool Servers": "", + "{{COUNT}} Available Tools": "", "{{COUNT}} hidden lines": "", "{{COUNT}} Replies": "{{COUNT}} odpowiedzi", "{{user}}'s Chats": "Czaty użytkownika {{user}}", @@ -108,6 +108,7 @@ "Attribute for Username": "Atrybut dla nazwy użytkownika", "Audio": "Dźwięk", "August": "Sierpień", + "Auth": "", "Authenticate": "Zaloguj się", "Authentication": "Uwierzytelnianie", "Auto-Copy Response to Clipboard": "Automatyczne kopiowanie odpowiedzi do schowka", @@ -119,7 +120,7 @@ "AUTOMATIC1111 Base URL": "Automatic1111 - Domyślny adres URL", "AUTOMATIC1111 Base URL is required.": "Automatic1111 - Adres podstawowy jest wymagany.", "Available list": "Dostępna lista", - "Available Tool Servers": "", + "Available Tools": "", "available!": "dostępny!", "Awful": "Okropne", "Azure AI Speech": "Azure AI Speech", @@ -303,6 +304,7 @@ "Direct Connections": "Połączenia bezpośrednie", "Direct Connections allow users to connect to their own OpenAI compatible API endpoints.": "Połączenia bezpośrednie umożliwiają użytkownikom łączenie się z własnymi końcówkami API kompatybilnymi z OpenAI.", "Direct Connections settings updated": "Ustawienia połączeń bezpośrednich zaktualizowane", + "Direct Tool Servers": "", "Disabled": "Wyłączony", "Discover a function": "Odkryj funkcję", "Discover a model": "Odkryj model", @@ -412,6 +414,7 @@ "Enter Kagi Search API Key": "Wprowadź klucz wyszukiwania Kagi", "Enter Key Behavior": "", "Enter language codes": "Wprowadź kody języków", + "Enter Mistral API Key": "", "Enter Model ID": "Wprowadź ID modelu", "Enter model tag (e.g. {{modelTag}})": "Wprowadź znacznik modelu (np. {{modelTag}})", "Enter Mojeek Search API Key": "Wprowadź klucz API Mojeek Search", @@ -436,6 +439,7 @@ "Enter server port": "Wprowadź numer portu serwera", "Enter stop sequence": "Wprowadź sekwencję stop", "Enter system prompt": "Wprowadź polecenie systemowe", + "Enter system prompt here": "", "Enter Tavily API Key": "Wprowadź klucz API Tavily", "Enter the public URL of your WebUI. This URL will be used to generate links in the notifications.": "Wprowadź publiczny adres URL Twojego WebUI. Ten adres URL zostanie użyty do generowania linków w powiadomieniach.", "Enter Tika Server URL": "Wprowadź adres URL serwera Tika", @@ -449,6 +453,7 @@ "Enter Your Email": "Podaj swój adres e-mail", "Enter Your Full Name": "Podaj swoje pełne imię i nazwisko", "Enter your message": "Wprowadź swój komunikat", + "Enter your name": "", "Enter your new password": "Wprowadź nowe hasło", "Enter Your Password": "Wprowadź swoje hasło", "Enter Your Role": "Podaj swoją rolę", @@ -468,7 +473,7 @@ "Exceeded the number of seats in your license. Please contact support to increase the number of seats.": "Przekroczono liczbę stanowisk w licencji. Skontaktuj się z pomocą techniczną, aby zwiększyć liczbę stanowisk.", "Exclude": "Wykluczyć", "Execute code for analysis": "Wykonaj kod do analizy", - "Executing `{{NAME}}`...": "Wykonywanie `{{NAME}}`...", + "Executing **{{NAME}}**...": "", "Expand": "", "Experimental": "Eksperymentalne", "Explain": "Wyjaśnij", @@ -525,6 +530,7 @@ "Forge new paths": "Wytyczaj nowe ścieżki", "Form": "Formularz", "Format your variables using brackets like this:": "Sformatuj swoje zmienne, używając nawiasów w następujący sposób:", + "Forwards system user session credentials to authenticate": "", "Frequency Penalty": "Kara za częstotliwość", "Full Context Mode": "Tryb pełnego kontekstu", "Function": "Funkcja", @@ -694,6 +700,8 @@ "Mirostat": "Mirostat", "Mirostat Eta": "Mirostat Eta", "Mirostat Tau": "Mirostat Tau", + "Mistral OCR": "", + "Mistral OCR API Key required.": "", "Model": "Model", "Model '{{modelName}}' has been successfully downloaded.": "Model '{{modelName}}' został pomyślnie pobrany.", "Model '{{modelTag}}' is already in queue for downloading.": "Model '{{modelTag}}' jest już w kolejce do pobrania.", @@ -789,6 +797,7 @@ "OpenAI API Key is required.": "Klucz API OpenAI jest niezbędny.", "OpenAI API settings updated": "Ustawienia API OpenAI zostały zaktualizowane", "OpenAI URL/Key required.": "Wymagany jest URL/klucz OpenAI.", + "openapi.json Path": "", "or": "lub", "Organize your users": "Zorganizuj swoich użytkowników", "Other": "Pozostałe", @@ -1042,6 +1051,7 @@ "Thinking...": "Myślę...", "This action cannot be undone. Do you wish to continue?": "Czy na pewno chcesz kontynuować? Ta akcja nie może zostać cofnięta.", "This channel was created on {{createdAt}}. This is the very beginning of the {{channelName}} channel.": "", + "This chat won’t appear in history and your messages will not be saved.": "", "This ensures that your valuable conversations are securely saved to your backend database. Thank you!": "To gwarantuje, że Twoje wartościowe rozmowy są bezpiecznie zapisywane w bazie danych backendowej. Dziękujemy!", "This is an experimental feature, it may not function as expected and is subject to change at any time.": "To jest funkcja eksperymentalna, może nie działać zgodnie z oczekiwaniami i jest podatna na zmiany w dowolnym momencie.", "This option controls how many tokens are preserved when refreshing the context. For example, if set to 2, the last 2 tokens of the conversation context will be retained. Preserving context can help maintain the continuity of a conversation, but it may reduce the ability to respond to new topics.": "", @@ -1089,6 +1099,7 @@ "Tool ID": "ID narzędzia", "Tool imported successfully": "Narzędzie zostało pomyślnie zaimportowane", "Tool Name": "Nazwa narzędzia", + "Tool Servers": "", "Tool updated successfully": "Narzędzie zaktualizowane pomyślnie", "Tools": "Narzędzia", "Tools Access": "Narzędzia Dostępu", @@ -1158,7 +1169,7 @@ "Version": "Wersja", "Version {{selectedVersion}} of {{totalVersions}}": "Wersja {{selectedVersion}} z {{totalVersions}}", "View Replies": "Wyświetl odpowiedzi", - "View Result from `{{NAME}}`": "", + "View Result from **{{NAME}}**": "", "Visibility": "Widoczność", "Voice": "Głos", "Voice Input": "Wprowadzanie głosowe", @@ -1176,9 +1187,9 @@ "Webhook URL": "Adres URL webhooka", "WebUI Settings": "Ustawienia interfejsu WebUI", "WebUI URL": "Adres URL interfejsu internetowego", + "WebUI will make requests to \"{{url}}{{path}}\"": "", "WebUI will make requests to \"{{url}}/api/chat\"": "WebUI będzie wysyłać żądania do \"{{url}}/api/chat\".", "WebUI will make requests to \"{{url}}/chat/completions\"": "WebUI będzie wysyłać żądania do \"{{url}}/chat/completions\".", - "WebUI will make requests to \"{{url}}/openapi.json\"": "WebUI będzie wysyłać żądania do \"{{url}}/openapi.json\"", "What are you trying to achieve?": "Do czego dążysz?", "What are you working on?": "Nad czym pracujesz?", "What’s New in": "Co nowego w", diff --git a/src/lib/i18n/locales/pt-BR/translation.json b/src/lib/i18n/locales/pt-BR/translation.json index ee62030b4..094f6c15a 100644 --- a/src/lib/i18n/locales/pt-BR/translation.json +++ b/src/lib/i18n/locales/pt-BR/translation.json @@ -6,7 +6,7 @@ "(latest)": "(último)", "(Ollama)": "", "{{ models }}": "{{ models }}", - "{{COUNT}} Available Tool Servers": "", + "{{COUNT}} Available Tools": "", "{{COUNT}} hidden lines": "", "{{COUNT}} Replies": "", "{{user}}'s Chats": "Chats de {{user}}", @@ -108,6 +108,7 @@ "Attribute for Username": "Atribuir para nome de usuário", "Audio": "Áudio", "August": "Agosto", + "Auth": "", "Authenticate": "Autenticar", "Authentication": "", "Auto-Copy Response to Clipboard": "Cópia Automática da Resposta para a Área de Transferência", @@ -119,7 +120,7 @@ "AUTOMATIC1111 Base URL": "URL Base AUTOMATIC1111", "AUTOMATIC1111 Base URL is required.": "URL Base AUTOMATIC1111 é necessária.", "Available list": "Lista disponível", - "Available Tool Servers": "", + "Available Tools": "", "available!": "disponível!", "Awful": "Horrível", "Azure AI Speech": "", @@ -303,6 +304,7 @@ "Direct Connections": "", "Direct Connections allow users to connect to their own OpenAI compatible API endpoints.": "", "Direct Connections settings updated": "", + "Direct Tool Servers": "", "Disabled": "Desativado", "Discover a function": "Descubra uma função", "Discover a model": "Descubra um modelo", @@ -412,6 +414,7 @@ "Enter Kagi Search API Key": "", "Enter Key Behavior": "", "Enter language codes": "Digite os códigos de idioma", + "Enter Mistral API Key": "", "Enter Model ID": "Digite o ID do modelo", "Enter model tag (e.g. {{modelTag}})": "Digite a tag do modelo (por exemplo, {{modelTag}})", "Enter Mojeek Search API Key": "Digite a Chave API do Mojeek Search", @@ -436,6 +439,7 @@ "Enter server port": "Digite a porta do servidor", "Enter stop sequence": "Digite a sequência de parada", "Enter system prompt": "Digite o prompt do sistema", + "Enter system prompt here": "", "Enter Tavily API Key": "Digite a Chave API do Tavily", "Enter the public URL of your WebUI. This URL will be used to generate links in the notifications.": "", "Enter Tika Server URL": "Digite a URL do Servidor Tika", @@ -449,6 +453,7 @@ "Enter Your Email": "Digite Seu Email", "Enter Your Full Name": "Digite Seu Nome Completo", "Enter your message": "Digite sua mensagem", + "Enter your name": "", "Enter your new password": "", "Enter Your Password": "Digite Sua Senha", "Enter Your Role": "Digite Sua Função", @@ -468,7 +473,7 @@ "Exceeded the number of seats in your license. Please contact support to increase the number of seats.": "", "Exclude": "Excluir", "Execute code for analysis": "", - "Executing `{{NAME}}`...": "", + "Executing **{{NAME}}**...": "", "Expand": "", "Experimental": "Experimental", "Explain": "Explicar", @@ -525,6 +530,7 @@ "Forge new paths": "Trilhar novos caminhos", "Form": "Formulário", "Format your variables using brackets like this:": "Formate suas variáveis usando colchetes como este:", + "Forwards system user session credentials to authenticate": "", "Frequency Penalty": "Penalização por Frequência", "Full Context Mode": "", "Function": "Função", @@ -694,6 +700,8 @@ "Mirostat": "Mirostat", "Mirostat Eta": "Mirostat Eta", "Mirostat Tau": "Mirostat Tau", + "Mistral OCR": "", + "Mistral OCR API Key required.": "", "Model": "Modelo", "Model '{{modelName}}' has been successfully downloaded.": "Modelo '{{modelName}}' foi baixado com sucesso.", "Model '{{modelTag}}' is already in queue for downloading.": "Modelo '{{modelTag}}' já está na fila para download.", @@ -789,6 +797,7 @@ "OpenAI API Key is required.": "Chave API OpenAI é necessária.", "OpenAI API settings updated": "Configurações OpenAI atualizadas", "OpenAI URL/Key required.": "URL/Chave OpenAI necessária.", + "openapi.json Path": "", "or": "ou", "Organize your users": "Organizar seus usuários", "Other": "Outro", @@ -1042,6 +1051,7 @@ "Thinking...": "Pensando...", "This action cannot be undone. Do you wish to continue?": "Esta ação não pode ser desfeita. Você deseja continuar?", "This channel was created on {{createdAt}}. This is the very beginning of the {{channelName}} channel.": "", + "This chat won’t appear in history and your messages will not be saved.": "", "This ensures that your valuable conversations are securely saved to your backend database. Thank you!": "Isso garante que suas conversas valiosas sejam salvas com segurança no banco de dados do backend. Obrigado!", "This is an experimental feature, it may not function as expected and is subject to change at any time.": "Esta é uma funcionalidade experimental, pode não funcionar como esperado e está sujeita a alterações a qualquer momento.", "This option controls how many tokens are preserved when refreshing the context. For example, if set to 2, the last 2 tokens of the conversation context will be retained. Preserving context can help maintain the continuity of a conversation, but it may reduce the ability to respond to new topics.": "", @@ -1089,6 +1099,7 @@ "Tool ID": "ID da ferramenta", "Tool imported successfully": "Ferramenta importada com sucesso", "Tool Name": "Nome da ferramenta", + "Tool Servers": "", "Tool updated successfully": "Ferramenta atualizada com sucesso", "Tools": "Ferramentas", "Tools Access": "Acesso as Ferramentas", @@ -1158,7 +1169,7 @@ "Version": "Versão", "Version {{selectedVersion}} of {{totalVersions}}": "Versão {{selectedVersion}} de {{totalVersions}}", "View Replies": "", - "View Result from `{{NAME}}`": "", + "View Result from **{{NAME}}**": "", "Visibility": "Visibilidade", "Voice": "Voz", "Voice Input": "Entrada de voz", @@ -1176,9 +1187,9 @@ "Webhook URL": "URL do Webhook", "WebUI Settings": "Configurações da WebUI", "WebUI URL": "", + "WebUI will make requests to \"{{url}}{{path}}\"": "", "WebUI will make requests to \"{{url}}/api/chat\"": "A WebUI fará requisições para \"{{url}}/api/chat\".", "WebUI will make requests to \"{{url}}/chat/completions\"": "A WebUI fará requisições para \"{{url}}/chat/completions\".", - "WebUI will make requests to \"{{url}}/openapi.json\"": "", "What are you trying to achieve?": "O que está tentando alcançar?", "What are you working on?": "No que está trabalhando?", "What’s New in": "O que há de novo em", diff --git a/src/lib/i18n/locales/pt-PT/translation.json b/src/lib/i18n/locales/pt-PT/translation.json index 11f3831e1..ddfe61860 100644 --- a/src/lib/i18n/locales/pt-PT/translation.json +++ b/src/lib/i18n/locales/pt-PT/translation.json @@ -6,7 +6,7 @@ "(latest)": "(mais recente)", "(Ollama)": "", "{{ models }}": "{{ modelos }}", - "{{COUNT}} Available Tool Servers": "", + "{{COUNT}} Available Tools": "", "{{COUNT}} hidden lines": "", "{{COUNT}} Replies": "", "{{user}}'s Chats": "{{user}}'s Chats", @@ -108,6 +108,7 @@ "Attribute for Username": "", "Audio": "Áudio", "August": "Agosto", + "Auth": "", "Authenticate": "", "Authentication": "", "Auto-Copy Response to Clipboard": "Cópia Automática da Resposta para a Área de Transferência", @@ -119,7 +120,7 @@ "AUTOMATIC1111 Base URL": "URL Base do AUTOMATIC1111", "AUTOMATIC1111 Base URL is required.": "O URL Base do AUTOMATIC1111 é obrigatório.", "Available list": "", - "Available Tool Servers": "", + "Available Tools": "", "available!": "disponível!", "Awful": "", "Azure AI Speech": "", @@ -303,6 +304,7 @@ "Direct Connections": "", "Direct Connections allow users to connect to their own OpenAI compatible API endpoints.": "", "Direct Connections settings updated": "", + "Direct Tool Servers": "", "Disabled": "", "Discover a function": "", "Discover a model": "Descubra um modelo", @@ -412,6 +414,7 @@ "Enter Kagi Search API Key": "", "Enter Key Behavior": "", "Enter language codes": "Escreva os códigos de idioma", + "Enter Mistral API Key": "", "Enter Model ID": "", "Enter model tag (e.g. {{modelTag}})": "Escreva a tag do modelo (por exemplo, {{modelTag}})", "Enter Mojeek Search API Key": "", @@ -436,6 +439,7 @@ "Enter server port": "", "Enter stop sequence": "Escreva a sequência de paragem", "Enter system prompt": "", + "Enter system prompt here": "", "Enter Tavily API Key": "", "Enter the public URL of your WebUI. This URL will be used to generate links in the notifications.": "", "Enter Tika Server URL": "", @@ -449,6 +453,7 @@ "Enter Your Email": "Escreva o seu E-mail", "Enter Your Full Name": "Escreva o seu Nome Completo", "Enter your message": "", + "Enter your name": "", "Enter your new password": "", "Enter Your Password": "Escreva a sua Senha", "Enter Your Role": "Escreva a sua Função", @@ -468,7 +473,7 @@ "Exceeded the number of seats in your license. Please contact support to increase the number of seats.": "", "Exclude": "", "Execute code for analysis": "", - "Executing `{{NAME}}`...": "", + "Executing **{{NAME}}**...": "", "Expand": "", "Experimental": "Experimental", "Explain": "", @@ -525,6 +530,7 @@ "Forge new paths": "", "Form": "", "Format your variables using brackets like this:": "", + "Forwards system user session credentials to authenticate": "", "Frequency Penalty": "Penalidade de Frequência", "Full Context Mode": "", "Function": "", @@ -694,6 +700,8 @@ "Mirostat": "Mirostat", "Mirostat Eta": "Mirostat Eta", "Mirostat Tau": "Mirostat Tau", + "Mistral OCR": "", + "Mistral OCR API Key required.": "", "Model": "", "Model '{{modelName}}' has been successfully downloaded.": "O modelo '{{modelName}}' foi descarregado com sucesso.", "Model '{{modelTag}}' is already in queue for downloading.": "O modelo '{{modelTag}}' já está na fila para descarregar.", @@ -789,6 +797,7 @@ "OpenAI API Key is required.": "A Chave da API OpenAI é obrigatória.", "OpenAI API settings updated": "", "OpenAI URL/Key required.": "URL/Chave da API OpenAI é necessária.", + "openapi.json Path": "", "or": "ou", "Organize your users": "", "Other": "Outro", @@ -1042,6 +1051,7 @@ "Thinking...": "A pensar...", "This action cannot be undone. Do you wish to continue?": "", "This channel was created on {{createdAt}}. This is the very beginning of the {{channelName}} channel.": "", + "This chat won’t appear in history and your messages will not be saved.": "", "This ensures that your valuable conversations are securely saved to your backend database. Thank you!": "Isto garante que suas conversas valiosas sejam guardadas com segurança na sua base de dados de backend. Obrigado!", "This is an experimental feature, it may not function as expected and is subject to change at any time.": "Isto é um recurso experimental, pode não funcionar conforme o esperado e está sujeito a alterações a qualquer momento.", "This option controls how many tokens are preserved when refreshing the context. For example, if set to 2, the last 2 tokens of the conversation context will be retained. Preserving context can help maintain the continuity of a conversation, but it may reduce the ability to respond to new topics.": "", @@ -1089,6 +1099,7 @@ "Tool ID": "", "Tool imported successfully": "", "Tool Name": "", + "Tool Servers": "", "Tool updated successfully": "", "Tools": "", "Tools Access": "", @@ -1158,7 +1169,7 @@ "Version": "Versão", "Version {{selectedVersion}} of {{totalVersions}}": "", "View Replies": "", - "View Result from `{{NAME}}`": "", + "View Result from **{{NAME}}**": "", "Visibility": "", "Voice": "", "Voice Input": "", @@ -1176,9 +1187,9 @@ "Webhook URL": "URL do Webhook", "WebUI Settings": "Configurações WebUI", "WebUI URL": "", + "WebUI will make requests to \"{{url}}{{path}}\"": "", "WebUI will make requests to \"{{url}}/api/chat\"": "", "WebUI will make requests to \"{{url}}/chat/completions\"": "", - "WebUI will make requests to \"{{url}}/openapi.json\"": "", "What are you trying to achieve?": "", "What are you working on?": "", "What’s New in": "O que há de novo em", diff --git a/src/lib/i18n/locales/ro-RO/translation.json b/src/lib/i18n/locales/ro-RO/translation.json index cc89298bd..86b94cc42 100644 --- a/src/lib/i18n/locales/ro-RO/translation.json +++ b/src/lib/i18n/locales/ro-RO/translation.json @@ -6,7 +6,7 @@ "(latest)": "(ultimul)", "(Ollama)": "", "{{ models }}": "{{ modele }}", - "{{COUNT}} Available Tool Servers": "", + "{{COUNT}} Available Tools": "", "{{COUNT}} hidden lines": "", "{{COUNT}} Replies": "", "{{user}}'s Chats": "Conversațiile lui {{user}}", @@ -108,6 +108,7 @@ "Attribute for Username": "", "Audio": "Audio", "August": "August", + "Auth": "", "Authenticate": "Autentificare", "Authentication": "", "Auto-Copy Response to Clipboard": "Copiere Automată a Răspunsului în Clipboard", @@ -119,7 +120,7 @@ "AUTOMATIC1111 Base URL": "URL Bază AUTOMATIC1111", "AUTOMATIC1111 Base URL is required.": "Este necesar URL-ul Bază AUTOMATIC1111.", "Available list": "Listă disponibilă", - "Available Tool Servers": "", + "Available Tools": "", "available!": "disponibil!", "Awful": "", "Azure AI Speech": "Azure AI Speech este un serviciu care face parte din suita de servicii cognitive oferite de Microsoft Azure. Acesta permite integrarea capabilităților de recunoaștere vocală, generare a vorbirii și transcriere automată în aplicații. Serviciul oferă dezvoltatorilor posibilitatea de a crea aplicații care pot converti vorbirea în text, genera vorbire naturală din text sau traduce între limbi. Azure AI Speech este util în diverse scenarii, cum ar fi asistenți vocali, aplicații de servicii pentru clienți sau instrumente de accesibilitate, facilitând o interacțiune mai naturală între utilizatori și tehnologie.", @@ -303,6 +304,7 @@ "Direct Connections": "", "Direct Connections allow users to connect to their own OpenAI compatible API endpoints.": "", "Direct Connections settings updated": "", + "Direct Tool Servers": "", "Disabled": "Dezactivat", "Discover a function": "Descoperă o funcție", "Discover a model": "Descoperă un model", @@ -412,6 +414,7 @@ "Enter Kagi Search API Key": "", "Enter Key Behavior": "", "Enter language codes": "Introduceți codurile limbilor", + "Enter Mistral API Key": "", "Enter Model ID": "Introdu codul modelului", "Enter model tag (e.g. {{modelTag}})": "Introduceți eticheta modelului (de ex. {{modelTag}})", "Enter Mojeek Search API Key": "", @@ -436,6 +439,7 @@ "Enter server port": "", "Enter stop sequence": "Introduceți secvența de oprire", "Enter system prompt": "Introduceți promptul de sistem", + "Enter system prompt here": "", "Enter Tavily API Key": "Introduceți Cheia API Tavily", "Enter the public URL of your WebUI. This URL will be used to generate links in the notifications.": "", "Enter Tika Server URL": "Introduceți URL-ul Serverului Tika", @@ -449,6 +453,7 @@ "Enter Your Email": "Introduceți Email-ul Dvs.", "Enter Your Full Name": "Introduceți Numele Dvs. Complet", "Enter your message": "Introduceți mesajul dvs.", + "Enter your name": "", "Enter your new password": "", "Enter Your Password": "Introduceți Parola Dvs.", "Enter Your Role": "Introduceți Rolul Dvs.", @@ -468,7 +473,7 @@ "Exceeded the number of seats in your license. Please contact support to increase the number of seats.": "", "Exclude": "Exclude", "Execute code for analysis": "", - "Executing `{{NAME}}`...": "", + "Executing **{{NAME}}**...": "", "Expand": "", "Experimental": "Experimental", "Explain": "", @@ -525,6 +530,7 @@ "Forge new paths": "", "Form": "Formular", "Format your variables using brackets like this:": "Formatează variabilele folosind acolade așa:", + "Forwards system user session credentials to authenticate": "", "Frequency Penalty": "Penalizare de Frecvență", "Full Context Mode": "", "Function": "Funcție", @@ -694,6 +700,8 @@ "Mirostat": "Mirostat", "Mirostat Eta": "Mirostat Eta", "Mirostat Tau": "Mirostat Tau", + "Mistral OCR": "", + "Mistral OCR API Key required.": "", "Model": "Model", "Model '{{modelName}}' has been successfully downloaded.": "Modelul '{{modelName}}' a fost descărcat cu succes.", "Model '{{modelTag}}' is already in queue for downloading.": "Modelul '{{modelTag}}' este deja în coada de descărcare.", @@ -789,6 +797,7 @@ "OpenAI API Key is required.": "Este necesară cheia API OpenAI.", "OpenAI API settings updated": "", "OpenAI URL/Key required.": "Este necesar URL-ul/Cheia OpenAI.", + "openapi.json Path": "", "or": "sau", "Organize your users": "", "Other": "Altele", @@ -1042,6 +1051,7 @@ "Thinking...": "Gândește...", "This action cannot be undone. Do you wish to continue?": "Această acțiune nu poate fi anulată. Doriți să continuați?", "This channel was created on {{createdAt}}. This is the very beginning of the {{channelName}} channel.": "", + "This chat won’t appear in history and your messages will not be saved.": "", "This ensures that your valuable conversations are securely saved to your backend database. Thank you!": "Acest lucru asigură că conversațiile dvs. valoroase sunt salvate în siguranță în baza de date a backend-ului dvs. Mulțumim!", "This is an experimental feature, it may not function as expected and is subject to change at any time.": "Aceasta este o funcție experimentală, poate să nu funcționeze așa cum vă așteptați și este supusă schimbării în orice moment.", "This option controls how many tokens are preserved when refreshing the context. For example, if set to 2, the last 2 tokens of the conversation context will be retained. Preserving context can help maintain the continuity of a conversation, but it may reduce the ability to respond to new topics.": "", @@ -1089,6 +1099,7 @@ "Tool ID": "", "Tool imported successfully": "Instrumentul a fost importat cu succes", "Tool Name": "", + "Tool Servers": "", "Tool updated successfully": "Instrumentul a fost actualizat cu succes", "Tools": "Instrumente", "Tools Access": "", @@ -1158,7 +1169,7 @@ "Version": "Versiune", "Version {{selectedVersion}} of {{totalVersions}}": "Versiunea {{selectedVersion}} din {{totalVersions}}", "View Replies": "Vezi răspunsurile", - "View Result from `{{NAME}}`": "", + "View Result from **{{NAME}}**": "", "Visibility": "Vizibilitate", "Voice": "Voce", "Voice Input": "Intrare vocală", @@ -1176,9 +1187,9 @@ "Webhook URL": "URL Webhook", "WebUI Settings": "Setări WebUI", "WebUI URL": "", + "WebUI will make requests to \"{{url}}{{path}}\"": "", "WebUI will make requests to \"{{url}}/api/chat\"": "", "WebUI will make requests to \"{{url}}/chat/completions\"": "", - "WebUI will make requests to \"{{url}}/openapi.json\"": "", "What are you trying to achieve?": "", "What are you working on?": "", "What’s New in": "Ce e Nou în", diff --git a/src/lib/i18n/locales/ru-RU/translation.json b/src/lib/i18n/locales/ru-RU/translation.json index 50c470344..feb1fde64 100644 --- a/src/lib/i18n/locales/ru-RU/translation.json +++ b/src/lib/i18n/locales/ru-RU/translation.json @@ -6,7 +6,7 @@ "(latest)": "(последняя)", "(Ollama)": "", "{{ models }}": "{{ модели }}", - "{{COUNT}} Available Tool Servers": "", + "{{COUNT}} Available Tools": "", "{{COUNT}} hidden lines": "{{COUNT}} скрытых строк", "{{COUNT}} Replies": "{{COUNT}} Ответов", "{{user}}'s Chats": "Чаты {{user}}'а", @@ -108,6 +108,7 @@ "Attribute for Username": "Атрибут для имени пользователя", "Audio": "Аудио", "August": "Август", + "Auth": "", "Authenticate": "Аутентификация", "Authentication": "Аутентификация", "Auto-Copy Response to Clipboard": "Автоматическое копирование ответа в буфер обмена", @@ -119,7 +120,7 @@ "AUTOMATIC1111 Base URL": "Базовый URL адрес AUTOMATIC1111", "AUTOMATIC1111 Base URL is required.": "Необходим базовый адрес URL AUTOMATIC1111.", "Available list": "Список доступных", - "Available Tool Servers": "", + "Available Tools": "", "available!": "доступно!", "Awful": "Ужасно", "Azure AI Speech": "Azure AI Speech", @@ -303,6 +304,7 @@ "Direct Connections": "Прямые подключения", "Direct Connections allow users to connect to their own OpenAI compatible API endpoints.": "Прямые подключения позволяют пользователям подключаться к своим собственным конечным точкам API, совместимым с OpenAI.", "Direct Connections settings updated": "Настройки прямых подключений обновлены", + "Direct Tool Servers": "", "Disabled": "Отключено", "Discover a function": "Найти функцию", "Discover a model": "Найти модель", @@ -412,6 +414,7 @@ "Enter Kagi Search API Key": "Введите ключ API поиска Kagi", "Enter Key Behavior": "Введите ключ поведения", "Enter language codes": "Введите коды языков", + "Enter Mistral API Key": "", "Enter Model ID": "Введите ID модели", "Enter model tag (e.g. {{modelTag}})": "Введите тег модели (например, {{modelTag}})", "Enter Mojeek Search API Key": "Введите ключ API поиска Mojeek", @@ -436,6 +439,7 @@ "Enter server port": "Введите порт сервера", "Enter stop sequence": "Введите последовательность остановки", "Enter system prompt": "Введите системный промпт", + "Enter system prompt here": "", "Enter Tavily API Key": "Введите ключ API Tavily", "Enter the public URL of your WebUI. This URL will be used to generate links in the notifications.": "Введите общедоступный URL вашего WebUI. Этот URL будет использоваться для создания ссылок в уведомлениях.", "Enter Tika Server URL": "Введите URL-адрес сервера Tika", @@ -449,6 +453,7 @@ "Enter Your Email": "Введите вашу электронную почту", "Enter Your Full Name": "Введите ваше полное имя", "Enter your message": "Введите ваше сообщение", + "Enter your name": "", "Enter your new password": "Введите свой новый пароль", "Enter Your Password": "Введите ваш пароль", "Enter Your Role": "Введите вашу роль", @@ -468,7 +473,7 @@ "Exceeded the number of seats in your license. Please contact support to increase the number of seats.": "Превышено количество мест в вашей лицензии. Пожалуйста, свяжитесь со службой поддержки, чтобы увеличить количество мест.", "Exclude": "Исключать", "Execute code for analysis": "Выполнить код для анализа", - "Executing `{{NAME}}`...": "", + "Executing **{{NAME}}**...": "", "Expand": "Расширить", "Experimental": "Экспериментальное", "Explain": "Объяснить", @@ -525,6 +530,7 @@ "Forge new paths": "Прокладывайте новые пути", "Form": "Форма", "Format your variables using brackets like this:": "Отформатируйте переменные, используя такие : скобки", + "Forwards system user session credentials to authenticate": "", "Frequency Penalty": "Штраф за частоту", "Full Context Mode": "Режим полного контекста", "Function": "Функция", @@ -694,6 +700,8 @@ "Mirostat": "Mirostat", "Mirostat Eta": "Mirostat Eta", "Mirostat Tau": "Mirostat Tau", + "Mistral OCR": "", + "Mistral OCR API Key required.": "", "Model": "Модель", "Model '{{modelName}}' has been successfully downloaded.": "Модель '{{modelName}}' успешно загружена.", "Model '{{modelTag}}' is already in queue for downloading.": "Модель '{{modelTag}}' уже находится в очереди на загрузку.", @@ -789,6 +797,7 @@ "OpenAI API Key is required.": "Требуется ключ API OpenAI.", "OpenAI API settings updated": "Настройки OpenAI API обновлены", "OpenAI URL/Key required.": "Требуется URL-адрес API OpenAI или ключ API.", + "openapi.json Path": "", "or": "или", "Organize your users": "Организуйте своих пользователей", "Other": "Прочее", @@ -1042,6 +1051,7 @@ "Thinking...": "Думаю...", "This action cannot be undone. Do you wish to continue?": "Это действие нельзя отменить. Вы хотите продолжить?", "This channel was created on {{createdAt}}. This is the very beginning of the {{channelName}} channel.": "", + "This chat won’t appear in history and your messages will not be saved.": "", "This ensures that your valuable conversations are securely saved to your backend database. Thank you!": "Это обеспечивает сохранение ваших ценных разговоров в безопасной базе данных на вашем сервере. Спасибо!", "This is an experimental feature, it may not function as expected and is subject to change at any time.": "Это экспериментальная функция, она может работать не так, как ожидалось, и может быть изменена в любое время.", "This option controls how many tokens are preserved when refreshing the context. For example, if set to 2, the last 2 tokens of the conversation context will be retained. Preserving context can help maintain the continuity of a conversation, but it may reduce the ability to respond to new topics.": "Этот параметр определяет, сколько токенов сохраняется при обновлении контекста. Например, если задано значение 2, будут сохранены последние 2 токена контекста беседы. Сохранение контекста может помочь сохранить непрерывность беседы, но может уменьшить возможность отвечать на новые темы.", @@ -1089,6 +1099,7 @@ "Tool ID": "ID Инструмента", "Tool imported successfully": "Инструмент успешно импортирован", "Tool Name": "Имя Инструмента", + "Tool Servers": "", "Tool updated successfully": "Инструмент успешно обновлен", "Tools": "Инструменты", "Tools Access": "Доступ к инструментам", @@ -1158,7 +1169,7 @@ "Version": "Версия", "Version {{selectedVersion}} of {{totalVersions}}": "Версия {{selectedVersion}} из {{totalVersions}}", "View Replies": "С ответами", - "View Result from `{{NAME}}`": "", + "View Result from **{{NAME}}**": "", "Visibility": "Видимость", "Voice": "Голос", "Voice Input": "Ввод голоса", @@ -1176,9 +1187,9 @@ "Webhook URL": "URL-адрес веб-хука", "WebUI Settings": "Настройки WebUI", "WebUI URL": "", + "WebUI will make requests to \"{{url}}{{path}}\"": "", "WebUI will make requests to \"{{url}}/api/chat\"": "WebUI будет отправлять запросы к \"{{url}}/api/chat\"", "WebUI will make requests to \"{{url}}/chat/completions\"": "WebUI будет отправлять запросы к \"{{url}}/chat/completions\"", - "WebUI will make requests to \"{{url}}/openapi.json\"": "", "What are you trying to achieve?": "Чего вы пытаетесь достичь?", "What are you working on?": "Над чем вы работаете?", "What’s New in": "Что нового в", diff --git a/src/lib/i18n/locales/sk-SK/translation.json b/src/lib/i18n/locales/sk-SK/translation.json index 95f488fc1..7f382e67e 100644 --- a/src/lib/i18n/locales/sk-SK/translation.json +++ b/src/lib/i18n/locales/sk-SK/translation.json @@ -6,7 +6,7 @@ "(latest)": "Najnovšie", "(Ollama)": "", "{{ models }}": "{{ models }}", - "{{COUNT}} Available Tool Servers": "", + "{{COUNT}} Available Tools": "", "{{COUNT}} hidden lines": "", "{{COUNT}} Replies": "", "{{user}}'s Chats": "{{user}}'s konverzácie", @@ -108,6 +108,7 @@ "Attribute for Username": "", "Audio": "Zvuk", "August": "August", + "Auth": "", "Authenticate": "Autentifikovať", "Authentication": "", "Auto-Copy Response to Clipboard": "Automatické kopírovanie odpovede do schránky", @@ -119,7 +120,7 @@ "AUTOMATIC1111 Base URL": "Základná URL pre AUTOMATIC1111", "AUTOMATIC1111 Base URL is required.": "Vyžaduje sa základná URL pre AUTOMATIC1111.", "Available list": "Dostupný zoznam", - "Available Tool Servers": "", + "Available Tools": "", "available!": "k dispozícii!", "Awful": "", "Azure AI Speech": "Azure AI syntéza reči", @@ -303,6 +304,7 @@ "Direct Connections": "", "Direct Connections allow users to connect to their own OpenAI compatible API endpoints.": "", "Direct Connections settings updated": "", + "Direct Tool Servers": "", "Disabled": "Zakázané", "Discover a function": "Objaviť funkciu", "Discover a model": "Objaviť model", @@ -412,6 +414,7 @@ "Enter Kagi Search API Key": "", "Enter Key Behavior": "", "Enter language codes": "Zadajte kódy jazykov", + "Enter Mistral API Key": "", "Enter Model ID": "Zadajte ID modelu", "Enter model tag (e.g. {{modelTag}})": "Zadajte označenie modelu (napr. {{modelTag}})", "Enter Mojeek Search API Key": "", @@ -436,6 +439,7 @@ "Enter server port": "", "Enter stop sequence": "Zadajte ukončovaciu sekvenciu", "Enter system prompt": "Vložte systémový prompt", + "Enter system prompt here": "", "Enter Tavily API Key": "Zadajte API kľúč Tavily", "Enter the public URL of your WebUI. This URL will be used to generate links in the notifications.": "", "Enter Tika Server URL": "Zadajte URL servera Tika", @@ -449,6 +453,7 @@ "Enter Your Email": "Zadajte svoj email", "Enter Your Full Name": "Zadajte svoje celé meno", "Enter your message": "Zadajte svoju správu", + "Enter your name": "", "Enter your new password": "", "Enter Your Password": "Zadajte svoje heslo", "Enter Your Role": "Zadajte svoju rolu", @@ -468,7 +473,7 @@ "Exceeded the number of seats in your license. Please contact support to increase the number of seats.": "", "Exclude": "Vylúčiť", "Execute code for analysis": "", - "Executing `{{NAME}}`...": "", + "Executing **{{NAME}}**...": "", "Expand": "", "Experimental": "Experimentálne", "Explain": "", @@ -525,6 +530,7 @@ "Forge new paths": "", "Form": "Formulár", "Format your variables using brackets like this:": "Formátujte svoje premenné pomocou zátvoriek takto:", + "Forwards system user session credentials to authenticate": "", "Frequency Penalty": "Penalizácia frekvencie", "Full Context Mode": "", "Function": "Funkcia", @@ -694,6 +700,8 @@ "Mirostat": "Mirostat", "Mirostat Eta": "Mirostat Eta", "Mirostat Tau": "Mirostat Tau", + "Mistral OCR": "", + "Mistral OCR API Key required.": "", "Model": "Model", "Model '{{modelName}}' has been successfully downloaded.": "Model „{{modelName}}“ bol úspešne stiahnutý.", "Model '{{modelTag}}' is already in queue for downloading.": "Model '{{modelTag}}' je už zaradený do fronty na sťahovanie.", @@ -789,6 +797,7 @@ "OpenAI API Key is required.": "Je vyžadovaný kľúč OpenAI API.", "OpenAI API settings updated": "", "OpenAI URL/Key required.": "Je vyžadovaný odkaz/adresa URL alebo kľúč OpenAI.", + "openapi.json Path": "", "or": "alebo", "Organize your users": "", "Other": "Iné", @@ -1042,6 +1051,7 @@ "Thinking...": "Premýšľam...", "This action cannot be undone. Do you wish to continue?": "Túto akciu nie je možné vrátiť späť. Prajete si pokračovať?", "This channel was created on {{createdAt}}. This is the very beginning of the {{channelName}} channel.": "", + "This chat won’t appear in history and your messages will not be saved.": "", "This ensures that your valuable conversations are securely saved to your backend database. Thank you!": "Týmto je zaistené, že vaše cenné konverzácie sú bezpečne uložené vo vašej backendovej databáze. Ďakujeme!", "This is an experimental feature, it may not function as expected and is subject to change at any time.": "Toto je experimentálna funkcia, nemusí fungovať podľa očakávania a môže byť kedykoľvek zmenená.", "This option controls how many tokens are preserved when refreshing the context. For example, if set to 2, the last 2 tokens of the conversation context will be retained. Preserving context can help maintain the continuity of a conversation, but it may reduce the ability to respond to new topics.": "", @@ -1089,6 +1099,7 @@ "Tool ID": "ID nástroja", "Tool imported successfully": "Nástroj bol úspešne importovaný", "Tool Name": "", + "Tool Servers": "", "Tool updated successfully": "Nástroj bol úspešne aktualizovaný.", "Tools": "Nástroje", "Tools Access": "", @@ -1158,7 +1169,7 @@ "Version": "Verzia", "Version {{selectedVersion}} of {{totalVersions}}": "Verzia {{selectedVersion}} z {{totalVersions}}", "View Replies": "", - "View Result from `{{NAME}}`": "", + "View Result from **{{NAME}}**": "", "Visibility": "Viditeľnosť", "Voice": "Hlas", "Voice Input": "Hlasový vstup", @@ -1176,9 +1187,9 @@ "Webhook URL": "Webhook URL", "WebUI Settings": "Nastavenia WebUI", "WebUI URL": "", + "WebUI will make requests to \"{{url}}{{path}}\"": "", "WebUI will make requests to \"{{url}}/api/chat\"": "", "WebUI will make requests to \"{{url}}/chat/completions\"": "", - "WebUI will make requests to \"{{url}}/openapi.json\"": "", "What are you trying to achieve?": "", "What are you working on?": "", "What’s New in": "Čo je nové v", diff --git a/src/lib/i18n/locales/sr-RS/translation.json b/src/lib/i18n/locales/sr-RS/translation.json index 60f2a3c20..3b5b7b55e 100644 --- a/src/lib/i18n/locales/sr-RS/translation.json +++ b/src/lib/i18n/locales/sr-RS/translation.json @@ -6,7 +6,7 @@ "(latest)": "(најновије)", "(Ollama)": "", "{{ models }}": "{{ модели }}", - "{{COUNT}} Available Tool Servers": "", + "{{COUNT}} Available Tools": "", "{{COUNT}} hidden lines": "", "{{COUNT}} Replies": "{{COUNT}} одговора", "{{user}}'s Chats": "Ћаскања корисника {{user}}", @@ -108,6 +108,7 @@ "Attribute for Username": "Особина корисника", "Audio": "Звук", "August": "Август", + "Auth": "", "Authenticate": "Идентификација", "Authentication": "", "Auto-Copy Response to Clipboard": "Самостално копирање одговора у оставу", @@ -119,7 +120,7 @@ "AUTOMATIC1111 Base URL": "Основна адреса за AUTOMATIC1111", "AUTOMATIC1111 Base URL is required.": "Потребна је основна адреса за AUTOMATIC1111.", "Available list": "Списак доступног", - "Available Tool Servers": "", + "Available Tools": "", "available!": "доступно!", "Awful": "Грозно", "Azure AI Speech": "Azure AI говор", @@ -303,6 +304,7 @@ "Direct Connections": "", "Direct Connections allow users to connect to their own OpenAI compatible API endpoints.": "", "Direct Connections settings updated": "", + "Direct Tool Servers": "", "Disabled": "Онемогућено", "Discover a function": "Откријте функцију", "Discover a model": "Откријте модел", @@ -412,6 +414,7 @@ "Enter Kagi Search API Key": "", "Enter Key Behavior": "", "Enter language codes": "Унесите кодове језика", + "Enter Mistral API Key": "", "Enter Model ID": "", "Enter model tag (e.g. {{modelTag}})": "Унесите ознаку модела (нпр. {{modelTag}})", "Enter Mojeek Search API Key": "", @@ -436,6 +439,7 @@ "Enter server port": "", "Enter stop sequence": "Унесите секвенцу заустављања", "Enter system prompt": "Унеси системски упит", + "Enter system prompt here": "", "Enter Tavily API Key": "", "Enter the public URL of your WebUI. This URL will be used to generate links in the notifications.": "", "Enter Tika Server URL": "", @@ -449,6 +453,7 @@ "Enter Your Email": "Унесите вашу е-пошту", "Enter Your Full Name": "Унесите ваше име и презиме", "Enter your message": "", + "Enter your name": "", "Enter your new password": "", "Enter Your Password": "Унесите вашу лозинку", "Enter Your Role": "Унесите вашу улогу", @@ -468,7 +473,7 @@ "Exceeded the number of seats in your license. Please contact support to increase the number of seats.": "", "Exclude": "", "Execute code for analysis": "", - "Executing `{{NAME}}`...": "", + "Executing **{{NAME}}**...": "", "Expand": "", "Experimental": "Експериментално", "Explain": "", @@ -525,6 +530,7 @@ "Forge new paths": "", "Form": "", "Format your variables using brackets like this:": "", + "Forwards system user session credentials to authenticate": "", "Frequency Penalty": "Фреквентна казна", "Full Context Mode": "", "Function": "", @@ -694,6 +700,8 @@ "Mirostat": "Миростат", "Mirostat Eta": "Миростат Ета", "Mirostat Tau": "Миростат Тау", + "Mistral OCR": "", + "Mistral OCR API Key required.": "", "Model": "Модел", "Model '{{modelName}}' has been successfully downloaded.": "Модел „{{modelName}}“ је успешно преузет.", "Model '{{modelTag}}' is already in queue for downloading.": "Модел „{{modelTag}}“ је већ у реду за преузимање.", @@ -789,6 +797,7 @@ "OpenAI API Key is required.": "Потребан је OpenAI API кључ.", "OpenAI API settings updated": "", "OpenAI URL/Key required.": "Потребан је OpenAI URL/кључ.", + "openapi.json Path": "", "or": "или", "Organize your users": "Организујте ваше кориснике", "Other": "Остало", @@ -1042,6 +1051,7 @@ "Thinking...": "Размишљам...", "This action cannot be undone. Do you wish to continue?": "Ова радња се не може опозвати. Да ли желите наставити?", "This channel was created on {{createdAt}}. This is the very beginning of the {{channelName}} channel.": "", + "This chat won’t appear in history and your messages will not be saved.": "", "This ensures that your valuable conversations are securely saved to your backend database. Thank you!": "Ово осигурава да су ваши вредни разговори безбедно сачувани у вашој бекенд бази података. Хвала вам!", "This is an experimental feature, it may not function as expected and is subject to change at any time.": "", "This option controls how many tokens are preserved when refreshing the context. For example, if set to 2, the last 2 tokens of the conversation context will be retained. Preserving context can help maintain the continuity of a conversation, but it may reduce the ability to respond to new topics.": "", @@ -1089,6 +1099,7 @@ "Tool ID": "ИБ алата", "Tool imported successfully": "Алат увезен успешно", "Tool Name": "Назив алата", + "Tool Servers": "", "Tool updated successfully": "Алат ажуриран успешно", "Tools": "Алати", "Tools Access": "Приступ алатима", @@ -1158,7 +1169,7 @@ "Version": "Издање", "Version {{selectedVersion}} of {{totalVersions}}": "", "View Replies": "Погледај одговоре", - "View Result from `{{NAME}}`": "", + "View Result from **{{NAME}}**": "", "Visibility": "Видљивост", "Voice": "Глас", "Voice Input": "Гласовни унос", @@ -1176,9 +1187,9 @@ "Webhook URL": "Адреса веб-куке", "WebUI Settings": "Подешавања веб интерфејса", "WebUI URL": "WebUI адреса", + "WebUI will make requests to \"{{url}}{{path}}\"": "", "WebUI will make requests to \"{{url}}/api/chat\"": "", "WebUI will make requests to \"{{url}}/chat/completions\"": "", - "WebUI will make requests to \"{{url}}/openapi.json\"": "", "What are you trying to achieve?": "", "What are you working on?": "", "What’s New in": "Шта је ново у", diff --git a/src/lib/i18n/locales/sv-SE/translation.json b/src/lib/i18n/locales/sv-SE/translation.json index b98339297..837b1dee5 100644 --- a/src/lib/i18n/locales/sv-SE/translation.json +++ b/src/lib/i18n/locales/sv-SE/translation.json @@ -6,7 +6,7 @@ "(latest)": "(senaste)", "(Ollama)": "", "{{ models }}": "{{ modeller }}", - "{{COUNT}} Available Tool Servers": "", + "{{COUNT}} Available Tools": "", "{{COUNT}} hidden lines": "", "{{COUNT}} Replies": "{{COUNT}} Svar", "{{user}}'s Chats": "{{user}}s Chats", @@ -108,6 +108,7 @@ "Attribute for Username": "Attribut för användarnamn", "Audio": "Ljud", "August": "augusti", + "Auth": "", "Authenticate": "Autentisera", "Authentication": "Autentisering", "Auto-Copy Response to Clipboard": "Automatisk kopiering av svar till urklipp", @@ -119,7 +120,7 @@ "AUTOMATIC1111 Base URL": "AUTOMATIC1111 bas-URL", "AUTOMATIC1111 Base URL is required.": "AUTOMATIC1111 bas-URL krävs.", "Available list": "Tillgänglig lista", - "Available Tool Servers": "", + "Available Tools": "", "available!": "tillgänglig!", "Awful": "Hemsk", "Azure AI Speech": "", @@ -303,6 +304,7 @@ "Direct Connections": "", "Direct Connections allow users to connect to their own OpenAI compatible API endpoints.": "", "Direct Connections settings updated": "", + "Direct Tool Servers": "", "Disabled": "", "Discover a function": "", "Discover a model": "Upptäck en modell", @@ -412,6 +414,7 @@ "Enter Kagi Search API Key": "", "Enter Key Behavior": "", "Enter language codes": "Skriv språkkoder", + "Enter Mistral API Key": "", "Enter Model ID": "", "Enter model tag (e.g. {{modelTag}})": "Ange modelltagg (t.ex. {{modelTag}})", "Enter Mojeek Search API Key": "", @@ -436,6 +439,7 @@ "Enter server port": "", "Enter stop sequence": "Ange stoppsekvens", "Enter system prompt": "", + "Enter system prompt here": "", "Enter Tavily API Key": "", "Enter the public URL of your WebUI. This URL will be used to generate links in the notifications.": "", "Enter Tika Server URL": "", @@ -449,6 +453,7 @@ "Enter Your Email": "Ange din e-post", "Enter Your Full Name": "Ange ditt fullständiga namn", "Enter your message": "", + "Enter your name": "", "Enter your new password": "", "Enter Your Password": "Ange ditt lösenord", "Enter Your Role": "Ange din roll", @@ -468,7 +473,7 @@ "Exceeded the number of seats in your license. Please contact support to increase the number of seats.": "", "Exclude": "", "Execute code for analysis": "", - "Executing `{{NAME}}`...": "", + "Executing **{{NAME}}**...": "", "Expand": "", "Experimental": "Experimentell", "Explain": "", @@ -525,6 +530,7 @@ "Forge new paths": "", "Form": "", "Format your variables using brackets like this:": "", + "Forwards system user session credentials to authenticate": "", "Frequency Penalty": "Straff för frekvens", "Full Context Mode": "", "Function": "", @@ -694,6 +700,8 @@ "Mirostat": "Mirostat", "Mirostat Eta": "Mirostat Eta", "Mirostat Tau": "Mirostat Tau", + "Mistral OCR": "", + "Mistral OCR API Key required.": "", "Model": "", "Model '{{modelName}}' has been successfully downloaded.": "Modellen '{{modelName}}' har laddats ner framgångsrikt.", "Model '{{modelTag}}' is already in queue for downloading.": "Modellen '{{modelTag}}' är redan i kö för nedladdning.", @@ -789,6 +797,7 @@ "OpenAI API Key is required.": "OpenAI API-nyckel krävs.", "OpenAI API settings updated": "", "OpenAI URL/Key required.": "OpenAI-URL/nyckel krävs.", + "openapi.json Path": "", "or": "eller", "Organize your users": "", "Other": "Andra", @@ -1042,6 +1051,7 @@ "Thinking...": "Tänker...", "This action cannot be undone. Do you wish to continue?": "Denna åtgärd kan inte ångras. Vill du fortsätta?", "This channel was created on {{createdAt}}. This is the very beginning of the {{channelName}} channel.": "", + "This chat won’t appear in history and your messages will not be saved.": "", "This ensures that your valuable conversations are securely saved to your backend database. Thank you!": "Detta säkerställer att dina värdefulla samtal sparas säkert till din backend-databas. Tack!", "This is an experimental feature, it may not function as expected and is subject to change at any time.": "Detta är en experimentell funktion som kanske inte fungerar som förväntat och som kan komma att ändras när som helst.", "This option controls how many tokens are preserved when refreshing the context. For example, if set to 2, the last 2 tokens of the conversation context will be retained. Preserving context can help maintain the continuity of a conversation, but it may reduce the ability to respond to new topics.": "", @@ -1089,6 +1099,7 @@ "Tool ID": "", "Tool imported successfully": "Verktyget importerades framgångsrikt", "Tool Name": "Verktygets namn", + "Tool Servers": "", "Tool updated successfully": "Verktyget uppdaterades framgångsrikt", "Tools": "Verktyg", "Tools Access": "", @@ -1158,7 +1169,7 @@ "Version": "Version", "Version {{selectedVersion}} of {{totalVersions}}": "Version {{selectedVersion}} av {{totalVersions}}", "View Replies": "Se svar", - "View Result from `{{NAME}}`": "", + "View Result from **{{NAME}}**": "", "Visibility": "Synlighet", "Voice": "Röst", "Voice Input": "Röstinmatning", @@ -1176,9 +1187,9 @@ "Webhook URL": "Webhook-URL", "WebUI Settings": "WebUI-inställningar", "WebUI URL": "", + "WebUI will make requests to \"{{url}}{{path}}\"": "", "WebUI will make requests to \"{{url}}/api/chat\"": "", "WebUI will make requests to \"{{url}}/chat/completions\"": "", - "WebUI will make requests to \"{{url}}/openapi.json\"": "", "What are you trying to achieve?": "Vad försöker du uppnå?", "What are you working on?": "Var arbetar du med?", "What’s New in": "Vad är nytt i", diff --git a/src/lib/i18n/locales/th-TH/translation.json b/src/lib/i18n/locales/th-TH/translation.json index 856071a35..2d7e85371 100644 --- a/src/lib/i18n/locales/th-TH/translation.json +++ b/src/lib/i18n/locales/th-TH/translation.json @@ -6,7 +6,7 @@ "(latest)": "(ล่าสุด)", "(Ollama)": "", "{{ models }}": "{{ models }}", - "{{COUNT}} Available Tool Servers": "", + "{{COUNT}} Available Tools": "", "{{COUNT}} hidden lines": "", "{{COUNT}} Replies": "", "{{user}}'s Chats": "การสนทนาของ {{user}}", @@ -108,6 +108,7 @@ "Attribute for Username": "", "Audio": "เสียง", "August": "สิงหาคม", + "Auth": "", "Authenticate": "", "Authentication": "", "Auto-Copy Response to Clipboard": "ตอบสนองการคัดลอกอัตโนมัติไปยังคลิปบอร์ด", @@ -119,7 +120,7 @@ "AUTOMATIC1111 Base URL": "URL ฐานของ AUTOMATIC1111", "AUTOMATIC1111 Base URL is required.": "ต้องการ URL ฐานของ AUTOMATIC1111", "Available list": "", - "Available Tool Servers": "", + "Available Tools": "", "available!": "พร้อมใช้งาน!", "Awful": "", "Azure AI Speech": "", @@ -303,6 +304,7 @@ "Direct Connections": "", "Direct Connections allow users to connect to their own OpenAI compatible API endpoints.": "", "Direct Connections settings updated": "", + "Direct Tool Servers": "", "Disabled": "ปิดใช้งาน", "Discover a function": "ค้นหาฟังก์ชัน", "Discover a model": "ค้นหาโมเดล", @@ -412,6 +414,7 @@ "Enter Kagi Search API Key": "", "Enter Key Behavior": "", "Enter language codes": "ใส่รหัสภาษา", + "Enter Mistral API Key": "", "Enter Model ID": "", "Enter model tag (e.g. {{modelTag}})": "ใส่แท็กโมเดล (เช่น {{modelTag}})", "Enter Mojeek Search API Key": "", @@ -436,6 +439,7 @@ "Enter server port": "", "Enter stop sequence": "ใส่ลำดับหยุด", "Enter system prompt": "ใส่พรอมต์ระบบ", + "Enter system prompt here": "", "Enter Tavily API Key": "ใส่คีย์ API ของ Tavily", "Enter the public URL of your WebUI. This URL will be used to generate links in the notifications.": "", "Enter Tika Server URL": "ใส่ URL เซิร์ฟเวอร์ของ Tika", @@ -449,6 +453,7 @@ "Enter Your Email": "ใส่อีเมลของคุณ", "Enter Your Full Name": "ใส่ชื่อเต็มของคุณ", "Enter your message": "ใส่ข้อความของคุณ", + "Enter your name": "", "Enter your new password": "", "Enter Your Password": "ใส่รหัสผ่านของคุณ", "Enter Your Role": "ใส่บทบาทของคุณ", @@ -468,7 +473,7 @@ "Exceeded the number of seats in your license. Please contact support to increase the number of seats.": "", "Exclude": "", "Execute code for analysis": "", - "Executing `{{NAME}}`...": "", + "Executing **{{NAME}}**...": "", "Expand": "", "Experimental": "การทดลอง", "Explain": "", @@ -525,6 +530,7 @@ "Forge new paths": "", "Form": "ฟอร์ม", "Format your variables using brackets like this:": "", + "Forwards system user session credentials to authenticate": "", "Frequency Penalty": "การลงโทษความถี่", "Full Context Mode": "", "Function": "", @@ -694,6 +700,8 @@ "Mirostat": "Mirostat", "Mirostat Eta": "Mirostat Eta", "Mirostat Tau": "Mirostat Tau", + "Mistral OCR": "", + "Mistral OCR API Key required.": "", "Model": "", "Model '{{modelName}}' has been successfully downloaded.": "โมเดล '{{modelName}}' ถูกดาวน์โหลดเรียบร้อยแล้ว", "Model '{{modelTag}}' is already in queue for downloading.": "โมเดล '{{modelTag}}' กำลังอยู่ในคิวสำหรับการดาวน์โหลด", @@ -789,6 +797,7 @@ "OpenAI API Key is required.": "จำเป็นต้องใช้คีย์ OpenAI API", "OpenAI API settings updated": "", "OpenAI URL/Key required.": "จำเป็นต้องใช้ URL/คีย์ OpenAI", + "openapi.json Path": "", "or": "หรือ", "Organize your users": "", "Other": "อื่น ๆ", @@ -1042,6 +1051,7 @@ "Thinking...": "กำลังคิด...", "This action cannot be undone. Do you wish to continue?": "การกระทำนี้ไม่สามารถย้อนกลับได้ คุณต้องการดำเนินการต่อหรือไม่?", "This channel was created on {{createdAt}}. This is the very beginning of the {{channelName}} channel.": "", + "This chat won’t appear in history and your messages will not be saved.": "", "This ensures that your valuable conversations are securely saved to your backend database. Thank you!": "สิ่งนี้ทำให้มั่นใจได้ว่าการสนทนาที่มีค่าของคุณจะถูกบันทึกอย่างปลอดภัยในฐานข้อมูลแบ็กเอนด์ของคุณ ขอบคุณ!", "This is an experimental feature, it may not function as expected and is subject to change at any time.": "นี่เป็นฟีเจอร์ทดลอง อาจไม่ทำงานตามที่คาดไว้และอาจมีการเปลี่ยนแปลงได้ตลอดเวลา", "This option controls how many tokens are preserved when refreshing the context. For example, if set to 2, the last 2 tokens of the conversation context will be retained. Preserving context can help maintain the continuity of a conversation, but it may reduce the ability to respond to new topics.": "", @@ -1089,6 +1099,7 @@ "Tool ID": "", "Tool imported successfully": "นำเข้าเครื่องมือเรียบร้อยแล้ว", "Tool Name": "", + "Tool Servers": "", "Tool updated successfully": "อัปเดตเครื่องมือเรียบร้อยแล้ว", "Tools": "เครื่องมือ", "Tools Access": "", @@ -1158,7 +1169,7 @@ "Version": "เวอร์ชัน", "Version {{selectedVersion}} of {{totalVersions}}": "", "View Replies": "", - "View Result from `{{NAME}}`": "", + "View Result from **{{NAME}}**": "", "Visibility": "", "Voice": "เสียง", "Voice Input": "", @@ -1176,9 +1187,9 @@ "Webhook URL": "URL ของ Webhook", "WebUI Settings": "การตั้งค่า WebUI", "WebUI URL": "", + "WebUI will make requests to \"{{url}}{{path}}\"": "", "WebUI will make requests to \"{{url}}/api/chat\"": "", "WebUI will make requests to \"{{url}}/chat/completions\"": "", - "WebUI will make requests to \"{{url}}/openapi.json\"": "", "What are you trying to achieve?": "", "What are you working on?": "", "What’s New in": "มีอะไรใหม่ใน", diff --git a/src/lib/i18n/locales/tk-TW/translation.json b/src/lib/i18n/locales/tk-TW/translation.json index d02bdaba7..4249cc60b 100644 --- a/src/lib/i18n/locales/tk-TW/translation.json +++ b/src/lib/i18n/locales/tk-TW/translation.json @@ -6,7 +6,7 @@ "(latest)": "", "(Ollama)": "", "{{ models }}": "", - "{{COUNT}} Available Tool Servers": "", + "{{COUNT}} Available Tools": "", "{{COUNT}} hidden lines": "", "{{COUNT}} Replies": "", "{{user}}'s Chats": "", @@ -108,6 +108,7 @@ "Attribute for Username": "", "Audio": "", "August": "", + "Auth": "", "Authenticate": "", "Authentication": "", "Auto-Copy Response to Clipboard": "", @@ -119,7 +120,7 @@ "AUTOMATIC1111 Base URL": "", "AUTOMATIC1111 Base URL is required.": "", "Available list": "", - "Available Tool Servers": "", + "Available Tools": "", "available!": "", "Awful": "", "Azure AI Speech": "", @@ -303,6 +304,7 @@ "Direct Connections": "", "Direct Connections allow users to connect to their own OpenAI compatible API endpoints.": "", "Direct Connections settings updated": "", + "Direct Tool Servers": "", "Disabled": "", "Discover a function": "", "Discover a model": "", @@ -412,6 +414,7 @@ "Enter Kagi Search API Key": "", "Enter Key Behavior": "", "Enter language codes": "", + "Enter Mistral API Key": "", "Enter Model ID": "", "Enter model tag (e.g. {{modelTag}})": "", "Enter Mojeek Search API Key": "", @@ -436,6 +439,7 @@ "Enter server port": "", "Enter stop sequence": "", "Enter system prompt": "", + "Enter system prompt here": "", "Enter Tavily API Key": "", "Enter the public URL of your WebUI. This URL will be used to generate links in the notifications.": "", "Enter Tika Server URL": "", @@ -449,6 +453,7 @@ "Enter Your Email": "", "Enter Your Full Name": "", "Enter your message": "", + "Enter your name": "", "Enter your new password": "", "Enter Your Password": "", "Enter Your Role": "", @@ -468,7 +473,7 @@ "Exceeded the number of seats in your license. Please contact support to increase the number of seats.": "", "Exclude": "", "Execute code for analysis": "", - "Executing `{{NAME}}`...": "", + "Executing **{{NAME}}**...": "", "Expand": "", "Experimental": "", "Explain": "", @@ -525,6 +530,7 @@ "Forge new paths": "", "Form": "", "Format your variables using brackets like this:": "", + "Forwards system user session credentials to authenticate": "", "Frequency Penalty": "", "Full Context Mode": "", "Function": "", @@ -694,6 +700,8 @@ "Mirostat": "", "Mirostat Eta": "", "Mirostat Tau": "", + "Mistral OCR": "", + "Mistral OCR API Key required.": "", "Model": "", "Model '{{modelName}}' has been successfully downloaded.": "", "Model '{{modelTag}}' is already in queue for downloading.": "", @@ -789,6 +797,7 @@ "OpenAI API Key is required.": "", "OpenAI API settings updated": "", "OpenAI URL/Key required.": "", + "openapi.json Path": "", "or": "", "Organize your users": "", "Other": "", @@ -1042,6 +1051,7 @@ "Thinking...": "", "This action cannot be undone. Do you wish to continue?": "", "This channel was created on {{createdAt}}. This is the very beginning of the {{channelName}} channel.": "", + "This chat won’t appear in history and your messages will not be saved.": "", "This ensures that your valuable conversations are securely saved to your backend database. Thank you!": "", "This is an experimental feature, it may not function as expected and is subject to change at any time.": "", "This option controls how many tokens are preserved when refreshing the context. For example, if set to 2, the last 2 tokens of the conversation context will be retained. Preserving context can help maintain the continuity of a conversation, but it may reduce the ability to respond to new topics.": "", @@ -1089,6 +1099,7 @@ "Tool ID": "", "Tool imported successfully": "", "Tool Name": "", + "Tool Servers": "", "Tool updated successfully": "", "Tools": "", "Tools Access": "", @@ -1158,7 +1169,7 @@ "Version": "", "Version {{selectedVersion}} of {{totalVersions}}": "", "View Replies": "", - "View Result from `{{NAME}}`": "", + "View Result from **{{NAME}}**": "", "Visibility": "", "Voice": "", "Voice Input": "", @@ -1176,9 +1187,9 @@ "Webhook URL": "", "WebUI Settings": "", "WebUI URL": "", + "WebUI will make requests to \"{{url}}{{path}}\"": "", "WebUI will make requests to \"{{url}}/api/chat\"": "", "WebUI will make requests to \"{{url}}/chat/completions\"": "", - "WebUI will make requests to \"{{url}}/openapi.json\"": "", "What are you trying to achieve?": "", "What are you working on?": "", "What’s New in": "", diff --git a/src/lib/i18n/locales/tr-TR/translation.json b/src/lib/i18n/locales/tr-TR/translation.json index a1cb0e9d3..2ba3584de 100644 --- a/src/lib/i18n/locales/tr-TR/translation.json +++ b/src/lib/i18n/locales/tr-TR/translation.json @@ -6,7 +6,7 @@ "(latest)": "(en son)", "(Ollama)": "", "{{ models }}": "{{ models }}", - "{{COUNT}} Available Tool Servers": "", + "{{COUNT}} Available Tools": "", "{{COUNT}} hidden lines": "", "{{COUNT}} Replies": "{{COUNT}} Yanıt", "{{user}}'s Chats": "{{user}}'ın Sohbetleri", @@ -108,6 +108,7 @@ "Attribute for Username": "Kullanıcı Adı için Özellik", "Audio": "Ses", "August": "Ağustos", + "Auth": "", "Authenticate": "Kimlik Doğrulama", "Authentication": "Kimlik Doğrulama", "Auto-Copy Response to Clipboard": "Yanıtı Panoya Otomatik Kopyala", @@ -119,7 +120,7 @@ "AUTOMATIC1111 Base URL": "AUTOMATIC1111 Temel URL", "AUTOMATIC1111 Base URL is required.": "AUTOMATIC1111 Temel URL gereklidir.", "Available list": "Mevcut liste", - "Available Tool Servers": "", + "Available Tools": "", "available!": "mevcut!", "Awful": "Berbat", "Azure AI Speech": "Azure AI Konuşma", @@ -303,6 +304,7 @@ "Direct Connections": "", "Direct Connections allow users to connect to their own OpenAI compatible API endpoints.": "", "Direct Connections settings updated": "", + "Direct Tool Servers": "", "Disabled": "Devre Dışı", "Discover a function": "Bir fonksiyon keşfedin", "Discover a model": "Bir model keşfedin", @@ -412,6 +414,7 @@ "Enter Kagi Search API Key": "Kagi Search API Anahtarını Girin", "Enter Key Behavior": "", "Enter language codes": "Dil kodlarını girin", + "Enter Mistral API Key": "", "Enter Model ID": "Model ID'sini Girin", "Enter model tag (e.g. {{modelTag}})": "Model etiketini girin (örn. {{modelTag}})", "Enter Mojeek Search API Key": "Mojeek Search API Anahtarını Girin", @@ -436,6 +439,7 @@ "Enter server port": "Sunucu bağlantı noktasını girin", "Enter stop sequence": "Durdurma dizisini girin", "Enter system prompt": "Sistem promptunu girin", + "Enter system prompt here": "", "Enter Tavily API Key": "Tavily API Anahtarını Girin", "Enter the public URL of your WebUI. This URL will be used to generate links in the notifications.": "", "Enter Tika Server URL": "Tika Sunucu URL'sini Girin", @@ -449,6 +453,7 @@ "Enter Your Email": "E-postanızı Girin", "Enter Your Full Name": "Tam Adınızı Girin", "Enter your message": "Mesajınızı girin", + "Enter your name": "", "Enter your new password": "Yeni parolanızı girin", "Enter Your Password": "Parolanızı Girin", "Enter Your Role": "Rolünüzü Girin", @@ -468,7 +473,7 @@ "Exceeded the number of seats in your license. Please contact support to increase the number of seats.": "", "Exclude": "Hariç tut", "Execute code for analysis": "", - "Executing `{{NAME}}`...": "", + "Executing **{{NAME}}**...": "", "Expand": "Genişlet", "Experimental": "Deneysel", "Explain": "Açıkla", @@ -525,6 +530,7 @@ "Forge new paths": "Yeni yollar açın", "Form": "Form", "Format your variables using brackets like this:": "Değişkenlerinizi şu şekilde parantez kullanarak biçimlendirin:", + "Forwards system user session credentials to authenticate": "", "Frequency Penalty": "Frekans Cezası", "Full Context Mode": "", "Function": "Fonksiyon", @@ -694,6 +700,8 @@ "Mirostat": "Mirostat", "Mirostat Eta": "Mirostat Eta", "Mirostat Tau": "Mirostat Tau", + "Mistral OCR": "", + "Mistral OCR API Key required.": "", "Model": "Model", "Model '{{modelName}}' has been successfully downloaded.": "'{{modelName}}' başarıyla indirildi.", "Model '{{modelTag}}' is already in queue for downloading.": "'{{modelTag}}' zaten indirme sırasında.", @@ -789,6 +797,7 @@ "OpenAI API Key is required.": "OpenAI API Anahtarı gereklidir.", "OpenAI API settings updated": "OpenAI API ayarları güncellendi", "OpenAI URL/Key required.": "OpenAI URL/Anahtar gereklidir.", + "openapi.json Path": "", "or": "veya", "Organize your users": "Kullanıcılarınızı düzenleyin", "Other": "Diğer", @@ -1042,6 +1051,7 @@ "Thinking...": "Düşünüyor...", "This action cannot be undone. Do you wish to continue?": "Bu eylem geri alınamaz. Devam etmek istiyor musunuz?", "This channel was created on {{createdAt}}. This is the very beginning of the {{channelName}} channel.": "", + "This chat won’t appear in history and your messages will not be saved.": "", "This ensures that your valuable conversations are securely saved to your backend database. Thank you!": "Bu, önemli konuşmalarınızın güvenli bir şekilde arkayüz veritabanınıza kaydedildiğini garantiler. Teşekkür ederiz!", "This is an experimental feature, it may not function as expected and is subject to change at any time.": "Bu deneysel bir özelliktir, beklendiği gibi çalışmayabilir ve her an değişiklik yapılabilir.", "This option controls how many tokens are preserved when refreshing the context. For example, if set to 2, the last 2 tokens of the conversation context will be retained. Preserving context can help maintain the continuity of a conversation, but it may reduce the ability to respond to new topics.": "", @@ -1089,6 +1099,7 @@ "Tool ID": "", "Tool imported successfully": "Araç başarıyla içe aktarıldı", "Tool Name": "Araç Adı", + "Tool Servers": "", "Tool updated successfully": "Araç başarıyla güncellendi", "Tools": "Araçlar", "Tools Access": "Araçlara Erişim", @@ -1158,7 +1169,7 @@ "Version": "Sürüm", "Version {{selectedVersion}} of {{totalVersions}}": "Sürüm {{selectedVersion}} / {{totalVersions}}", "View Replies": "Yanıtları Görüntüle", - "View Result from `{{NAME}}`": "", + "View Result from **{{NAME}}**": "", "Visibility": "Görünürlük", "Voice": "Ses", "Voice Input": "Ses Girişi", @@ -1176,9 +1187,9 @@ "Webhook URL": "Webhook URL", "WebUI Settings": "WebUI Ayarları", "WebUI URL": "WebUI URL'si", + "WebUI will make requests to \"{{url}}{{path}}\"": "", "WebUI will make requests to \"{{url}}/api/chat\"": "WebUI, \"{{url}}/api/chat\" adresine istek yapacak", "WebUI will make requests to \"{{url}}/chat/completions\"": "WebUI, \"{{url}}/chat/completions\" adresine istek yapacak", - "WebUI will make requests to \"{{url}}/openapi.json\"": "", "What are you trying to achieve?": "Ne yapmaya çalışıyorsunuz?", "What are you working on?": "Üzerinde çalıştığınız nedir?", "What’s New in": "Yenilikler:", diff --git a/src/lib/i18n/locales/uk-UA/translation.json b/src/lib/i18n/locales/uk-UA/translation.json index d1ec07fea..7a1f7b34e 100644 --- a/src/lib/i18n/locales/uk-UA/translation.json +++ b/src/lib/i18n/locales/uk-UA/translation.json @@ -6,7 +6,7 @@ "(latest)": "(остання)", "(Ollama)": "(Ollama)", "{{ models }}": "{{ models }}", - "{{COUNT}} Available Tool Servers": "{{COUNT}} Доступні інструменти на серверах", + "{{COUNT}} Available Tools": "", "{{COUNT}} hidden lines": "{{COUNT}} прихованих рядків", "{{COUNT}} Replies": "{{COUNT}} Відповіді", "{{user}}'s Chats": "Чати {{user}}а", @@ -108,6 +108,7 @@ "Attribute for Username": "Атрибут для імені користувача", "Audio": "Аудіо", "August": "Серпень", + "Auth": "", "Authenticate": "Автентифікувати", "Authentication": "Аутентифікація", "Auto-Copy Response to Clipboard": "Автокопіювання відповіді в буфер обміну", @@ -119,7 +120,7 @@ "AUTOMATIC1111 Base URL": "URL-адреса AUTOMATIC1111", "AUTOMATIC1111 Base URL is required.": "Необхідна URL-адреса AUTOMATIC1111.", "Available list": "Список доступності", - "Available Tool Servers": "Доступні сервери інструментів", + "Available Tools": "", "available!": "доступно!", "Awful": "Жахливо", "Azure AI Speech": "Мовлення Azure AI", @@ -303,6 +304,7 @@ "Direct Connections": "Прямі з'єднання", "Direct Connections allow users to connect to their own OpenAI compatible API endpoints.": "Прямі з'єднання дозволяють користувачам підключатися до своїх власних API-кінцевих точок, сумісних з OpenAI.", "Direct Connections settings updated": "Налаштування прямих з'єднань оновлено", + "Direct Tool Servers": "", "Disabled": "Вимкнено", "Discover a function": "Знайдіть функцію", "Discover a model": "Знайдіть модель", @@ -412,6 +414,7 @@ "Enter Kagi Search API Key": "Введіть ключ API Kagi Search", "Enter Key Behavior": "Введіть поведінку клавіші", "Enter language codes": "Введіть мовні коди", + "Enter Mistral API Key": "", "Enter Model ID": "Введіть ID моделі", "Enter model tag (e.g. {{modelTag}})": "Введіть тег моделі (напр., {{modelTag}})", "Enter Mojeek Search API Key": "Введіть API ключ для пошуку Mojeek", @@ -436,6 +439,7 @@ "Enter server port": "Введіть порт сервера", "Enter stop sequence": "Введіть символ зупинки", "Enter system prompt": "Введіть системний промт", + "Enter system prompt here": "", "Enter Tavily API Key": "Введіть ключ API Tavily", "Enter the public URL of your WebUI. This URL will be used to generate links in the notifications.": "Введіть публічний URL вашого WebUI. Цей URL буде використовуватися для генерування посилань у сповіщеннях.", "Enter Tika Server URL": "Введіть URL-адресу сервера Tika", @@ -449,6 +453,7 @@ "Enter Your Email": "Введіть вашу ел. пошту", "Enter Your Full Name": "Введіть ваше ім'я", "Enter your message": "Введіть повідомлення ", + "Enter your name": "", "Enter your new password": "Введіть ваш новий пароль", "Enter Your Password": "Введіть ваш пароль", "Enter Your Role": "Введіть вашу роль", @@ -468,7 +473,7 @@ "Exceeded the number of seats in your license. Please contact support to increase the number of seats.": "Перевищено кількість місць у вашій ліцензії. Будь ласка, зверніться до підтримки для збільшення кількості місць.", "Exclude": "Виключити", "Execute code for analysis": "Виконати код для аналізу", - "Executing `{{NAME}}`...": "Виконання `{{NAME}}`...", + "Executing **{{NAME}}**...": "", "Expand": "Розгорнути", "Experimental": "Експериментальне", "Explain": "Пояснити", @@ -525,6 +530,7 @@ "Forge new paths": "Прокладайте нові шляхи", "Form": "Форма", "Format your variables using brackets like this:": "Форматуйте свої змінні, використовуючи фігурні дужки таким чином:", + "Forwards system user session credentials to authenticate": "", "Frequency Penalty": "Штраф за частоту", "Full Context Mode": "Режим повного контексту", "Function": "Функція", @@ -694,6 +700,8 @@ "Mirostat": "Mirostat", "Mirostat Eta": "Mirostat Eta", "Mirostat Tau": "Mirostat Tau", + "Mistral OCR": "", + "Mistral OCR API Key required.": "", "Model": "Модель", "Model '{{modelName}}' has been successfully downloaded.": "Модель '{{modelName}}' успішно завантажено.", "Model '{{modelTag}}' is already in queue for downloading.": "Модель '{{modelTag}}' вже знаходиться в черзі на завантаження.", @@ -789,6 +797,7 @@ "OpenAI API Key is required.": "Потрібен ключ OpenAI API.", "OpenAI API settings updated": "Налаштування OpenAI API оновлено", "OpenAI URL/Key required.": "Потрібен OpenAI URL/ключ.", + "openapi.json Path": "", "or": "або", "Organize your users": "Організуйте своїх користувачів", "Other": "Інше", @@ -1042,6 +1051,7 @@ "Thinking...": "Думаю...", "This action cannot be undone. Do you wish to continue?": "Цю дію не можна скасувати. Ви бажаєте продовжити?", "This channel was created on {{createdAt}}. This is the very beginning of the {{channelName}} channel.": "Цей канал був створений {{createdAt}}. Це самий початок каналу {{channelName}}.", + "This chat won’t appear in history and your messages will not be saved.": "", "This ensures that your valuable conversations are securely saved to your backend database. Thank you!": "Це забезпечує збереження ваших цінних розмов у безпечному бекенд-сховищі. Дякуємо!", "This is an experimental feature, it may not function as expected and is subject to change at any time.": "Це експериментальна функція, вона може працювати не так, як очікувалося, і може бути змінена в будь-який час.", "This option controls how many tokens are preserved when refreshing the context. For example, if set to 2, the last 2 tokens of the conversation context will be retained. Preserving context can help maintain the continuity of a conversation, but it may reduce the ability to respond to new topics.": "Ця опція контролює, скільки токенів зберігається при оновленні контексту. Наприклад, якщо встановити значення 2, останні 2 токени контексту розмови будуть збережені. Збереження контексту допомагає підтримувати послідовність розмови, але може зменшити здатність реагувати на нові теми.", @@ -1089,6 +1099,7 @@ "Tool ID": "ID інструменту", "Tool imported successfully": "Інструмент успішно імпортовано", "Tool Name": "Назва інструменту", + "Tool Servers": "", "Tool updated successfully": "Інструмент успішно оновлено", "Tools": "Інструменти", "Tools Access": "Доступ до інструментів", @@ -1158,7 +1169,7 @@ "Version": "Версія", "Version {{selectedVersion}} of {{totalVersions}}": "Версія {{selectedVersion}} з {{totalVersions}}", "View Replies": "Переглянути відповіді", - "View Result from `{{NAME}}`": "Переглянути результат з `{{NAME}}`", + "View Result from **{{NAME}}**": "", "Visibility": "Видимість", "Voice": "Голос", "Voice Input": "Голосове введення", @@ -1176,9 +1187,9 @@ "Webhook URL": "Webhook URL", "WebUI Settings": "Налаштування WebUI", "WebUI URL": "WebUI URL", + "WebUI will make requests to \"{{url}}{{path}}\"": "", "WebUI will make requests to \"{{url}}/api/chat\"": "WebUI надсилатиме запити до \"{{url}}/api/chat\"", "WebUI will make requests to \"{{url}}/chat/completions\"": "WebUI надсилатиме запити до \"{{url}}/chat/completions\"", - "WebUI will make requests to \"{{url}}/openapi.json\"": "WebUI буде здійснювати запити до \"{{url}}/openapi.json\"", "What are you trying to achieve?": "Чого ви прагнете досягти?", "What are you working on?": "Над чим ти працюєш?", "What’s New in": "Що нового в", diff --git a/src/lib/i18n/locales/ur-PK/translation.json b/src/lib/i18n/locales/ur-PK/translation.json index 061512352..1099eef74 100644 --- a/src/lib/i18n/locales/ur-PK/translation.json +++ b/src/lib/i18n/locales/ur-PK/translation.json @@ -6,7 +6,7 @@ "(latest)": "(تازہ ترین)", "(Ollama)": "", "{{ models }}": "{{ ماڈلز }}", - "{{COUNT}} Available Tool Servers": "", + "{{COUNT}} Available Tools": "", "{{COUNT}} hidden lines": "", "{{COUNT}} Replies": "", "{{user}}'s Chats": "{{ صارف }} کی بات چیت", @@ -108,6 +108,7 @@ "Attribute for Username": "", "Audio": "آڈیو", "August": "اگست", + "Auth": "", "Authenticate": "", "Authentication": "", "Auto-Copy Response to Clipboard": "جواب خودکار طور پر کلپ بورڈ پر کاپی ہو گیا", @@ -119,7 +120,7 @@ "AUTOMATIC1111 Base URL": "AUTOMATIC1111 بنیادی URL", "AUTOMATIC1111 Base URL is required.": "AUTOMATIC1111 بنیادی URL درکار ہے", "Available list": "دستیاب فہرست", - "Available Tool Servers": "", + "Available Tools": "", "available!": "دستیاب!", "Awful": "", "Azure AI Speech": "ایژور اے آئی اسپیچ", @@ -303,6 +304,7 @@ "Direct Connections": "", "Direct Connections allow users to connect to their own OpenAI compatible API endpoints.": "", "Direct Connections settings updated": "", + "Direct Tool Servers": "", "Disabled": "غیر فعال", "Discover a function": "ایک فنکشن دریافت کریں", "Discover a model": "ایک ماڈل دریافت کریں", @@ -412,6 +414,7 @@ "Enter Kagi Search API Key": "", "Enter Key Behavior": "", "Enter language codes": "زبان کے کوڈ درج کریں", + "Enter Mistral API Key": "", "Enter Model ID": "ماڈل آئی ڈی درج کریں", "Enter model tag (e.g. {{modelTag}})": "ماڈل ٹیگ داخل کریں (مثال کے طور پر {{modelTag}})", "Enter Mojeek Search API Key": "", @@ -436,6 +439,7 @@ "Enter server port": "", "Enter stop sequence": "اسٹاپ ترتیب درج کریں", "Enter system prompt": "سسٹم پرامپٹ درج کریں", + "Enter system prompt here": "", "Enter Tavily API Key": "Tavily API کلید درج کریں", "Enter the public URL of your WebUI. This URL will be used to generate links in the notifications.": "", "Enter Tika Server URL": "ٹیکا سرور یو آر ایل درج کریں", @@ -449,6 +453,7 @@ "Enter Your Email": "اپنا ای میل درج کریں", "Enter Your Full Name": "اپنا مکمل نام درج کریں", "Enter your message": "اپنا پیغام درج کریں", + "Enter your name": "", "Enter your new password": "", "Enter Your Password": "اپنا پاس ورڈ درج کریں", "Enter Your Role": "اپنا کردار درج کریں", @@ -468,7 +473,7 @@ "Exceeded the number of seats in your license. Please contact support to increase the number of seats.": "", "Exclude": "خارج کریں", "Execute code for analysis": "", - "Executing `{{NAME}}`...": "", + "Executing **{{NAME}}**...": "", "Expand": "", "Experimental": "تجرباتی", "Explain": "", @@ -525,6 +530,7 @@ "Forge new paths": "", "Form": "فارم", "Format your variables using brackets like this:": "اپنے متغیرات کو اس طرح بریکٹس میں فارمیٹ کریں:", + "Forwards system user session credentials to authenticate": "", "Frequency Penalty": "کثرت کی پابندی", "Full Context Mode": "", "Function": "فنکشن", @@ -694,6 +700,8 @@ "Mirostat": "میروسٹیٹ", "Mirostat Eta": "میروسٹیٹ ایٹا", "Mirostat Tau": "میروسٹیٹ ٹاؤ", + "Mistral OCR": "", + "Mistral OCR API Key required.": "", "Model": "ماڈل", "Model '{{modelName}}' has been successfully downloaded.": "ماڈل '{{modelName}}' کامیابی سے ڈاؤن لوڈ ہو گیا ہے", "Model '{{modelTag}}' is already in queue for downloading.": "ماڈل '{{modelTag}}' پہلے ہی ڈاؤن لوڈ کے لیے قطار میں ہے", @@ -789,6 +797,7 @@ "OpenAI API Key is required.": "اوپن اے آئی API کلید درکار ہے", "OpenAI API settings updated": "", "OpenAI URL/Key required.": "اوپن اے آئی یو آر ایل/کلید درکار ہے", + "openapi.json Path": "", "or": "یا", "Organize your users": "", "Other": "دیگر", @@ -1042,6 +1051,7 @@ "Thinking...": "سوچ رہا ہے...", "This action cannot be undone. Do you wish to continue?": "یہ عمل واپس نہیں کیا جا سکتا کیا آپ جاری رکھنا چاہتے ہیں؟", "This channel was created on {{createdAt}}. This is the very beginning of the {{channelName}} channel.": "", + "This chat won’t appear in history and your messages will not be saved.": "", "This ensures that your valuable conversations are securely saved to your backend database. Thank you!": "یہ یقینی بناتا ہے کہ آپ کی قیمتی گفتگو محفوظ طریقے سے آپ کے بیک اینڈ ڈیٹا بیس میں محفوظ کی گئی ہیں شکریہ!", "This is an experimental feature, it may not function as expected and is subject to change at any time.": "یہ ایک تجرباتی خصوصیت ہے، یہ متوقع طور پر کام نہ کر سکتی ہو اور کسی بھی وقت تبدیل کی جا سکتی ہے", "This option controls how many tokens are preserved when refreshing the context. For example, if set to 2, the last 2 tokens of the conversation context will be retained. Preserving context can help maintain the continuity of a conversation, but it may reduce the ability to respond to new topics.": "", @@ -1089,6 +1099,7 @@ "Tool ID": "", "Tool imported successfully": "اوزار کامیابی کے ساتھ درآمد ہوا", "Tool Name": "", + "Tool Servers": "", "Tool updated successfully": "ٹول کامیابی سے اپ ڈیٹ ہو گیا ہے", "Tools": "اوزار", "Tools Access": "", @@ -1158,7 +1169,7 @@ "Version": "ورژن", "Version {{selectedVersion}} of {{totalVersions}}": "ورژن {{selectedVersion}} کا {{totalVersions}} میں سے", "View Replies": "", - "View Result from `{{NAME}}`": "", + "View Result from **{{NAME}}**": "", "Visibility": "", "Voice": "آواز", "Voice Input": "آواز داخل کریں", @@ -1176,9 +1187,9 @@ "Webhook URL": "ویب ہُک یو آر ایل", "WebUI Settings": "ویب UI ترتیبات", "WebUI URL": "", + "WebUI will make requests to \"{{url}}{{path}}\"": "", "WebUI will make requests to \"{{url}}/api/chat\"": "", "WebUI will make requests to \"{{url}}/chat/completions\"": "", - "WebUI will make requests to \"{{url}}/openapi.json\"": "", "What are you trying to achieve?": "", "What are you working on?": "", "What’s New in": "میں نیا کیا ہے", diff --git a/src/lib/i18n/locales/vi-VN/translation.json b/src/lib/i18n/locales/vi-VN/translation.json index c8aaf5e39..5d1934661 100644 --- a/src/lib/i18n/locales/vi-VN/translation.json +++ b/src/lib/i18n/locales/vi-VN/translation.json @@ -6,7 +6,7 @@ "(latest)": "(mới nhất)", "(Ollama)": "", "{{ models }}": "{{ mô hình }}", - "{{COUNT}} Available Tool Servers": "", + "{{COUNT}} Available Tools": "", "{{COUNT}} hidden lines": "", "{{COUNT}} Replies": "", "{{user}}'s Chats": "{{user}}'s Chats", @@ -108,6 +108,7 @@ "Attribute for Username": "", "Audio": "Âm thanh", "August": "Tháng 8", + "Auth": "", "Authenticate": "", "Authentication": "", "Auto-Copy Response to Clipboard": "Tự động Sao chép Phản hồi vào clipboard", @@ -119,7 +120,7 @@ "AUTOMATIC1111 Base URL": "Đường dẫn kết nối tới AUTOMATIC1111 (Base URL)", "AUTOMATIC1111 Base URL is required.": "Base URL của AUTOMATIC1111 là bắt buộc.", "Available list": "", - "Available Tool Servers": "", + "Available Tools": "", "available!": "có sẵn!", "Awful": "", "Azure AI Speech": "", @@ -303,6 +304,7 @@ "Direct Connections": "", "Direct Connections allow users to connect to their own OpenAI compatible API endpoints.": "", "Direct Connections settings updated": "", + "Direct Tool Servers": "", "Disabled": "Đã tắt", "Discover a function": "Khám phá function", "Discover a model": "Khám phá model", @@ -412,6 +414,7 @@ "Enter Kagi Search API Key": "", "Enter Key Behavior": "", "Enter language codes": "Nhập mã ngôn ngữ", + "Enter Mistral API Key": "", "Enter Model ID": "", "Enter model tag (e.g. {{modelTag}})": "Nhập thẻ mô hình (vd: {{modelTag}})", "Enter Mojeek Search API Key": "", @@ -436,6 +439,7 @@ "Enter server port": "", "Enter stop sequence": "Nhập stop sequence", "Enter system prompt": "Nhập system prompt", + "Enter system prompt here": "", "Enter Tavily API Key": "Nhập Tavily API Key", "Enter the public URL of your WebUI. This URL will be used to generate links in the notifications.": "", "Enter Tika Server URL": "Nhập URL cho Tika Server", @@ -449,6 +453,7 @@ "Enter Your Email": "Nhập Email của bạn", "Enter Your Full Name": "Nhập Họ và Tên của bạn", "Enter your message": "Nhập tin nhắn của bạn", + "Enter your name": "", "Enter your new password": "", "Enter Your Password": "Nhập Mật khẩu của bạn", "Enter Your Role": "Nhập vai trò của bạn", @@ -468,7 +473,7 @@ "Exceeded the number of seats in your license. Please contact support to increase the number of seats.": "", "Exclude": "", "Execute code for analysis": "", - "Executing `{{NAME}}`...": "", + "Executing **{{NAME}}**...": "", "Expand": "", "Experimental": "Thử nghiệm", "Explain": "", @@ -525,6 +530,7 @@ "Forge new paths": "", "Form": "", "Format your variables using brackets like this:": "", + "Forwards system user session credentials to authenticate": "", "Frequency Penalty": "Hình phạt tần số", "Full Context Mode": "", "Function": "", @@ -694,6 +700,8 @@ "Mirostat": "Mirostat", "Mirostat Eta": "Mirostat Eta", "Mirostat Tau": "Mirostat Tau", + "Mistral OCR": "", + "Mistral OCR API Key required.": "", "Model": "", "Model '{{modelName}}' has been successfully downloaded.": "Mô hình '{{modelName}}' đã được tải xuống thành công.", "Model '{{modelTag}}' is already in queue for downloading.": "Mô hình '{{modelTag}}' đã có trong hàng đợi để tải xuống.", @@ -789,6 +797,7 @@ "OpenAI API Key is required.": "Bắt buộc nhập API OpenAI Key.", "OpenAI API settings updated": "", "OpenAI URL/Key required.": "Yêu cầu URL/Key API OpenAI.", + "openapi.json Path": "", "or": "hoặc", "Organize your users": "", "Other": "Khác", @@ -1042,6 +1051,7 @@ "Thinking...": "Đang suy luận...", "This action cannot be undone. Do you wish to continue?": "Hành động này không thể được hoàn tác. Bạn có muốn tiếp tục không?", "This channel was created on {{createdAt}}. This is the very beginning of the {{channelName}} channel.": "", + "This chat won’t appear in history and your messages will not be saved.": "", "This ensures that your valuable conversations are securely saved to your backend database. Thank you!": "Điều này đảm bảo rằng các nội dung chat có giá trị của bạn được lưu an toàn vào cơ sở dữ liệu backend của bạn. Cảm ơn bạn!", "This is an experimental feature, it may not function as expected and is subject to change at any time.": "Đây là tính năng thử nghiệm, có thể không hoạt động như mong đợi và có thể thay đổi bất kỳ lúc nào.", "This option controls how many tokens are preserved when refreshing the context. For example, if set to 2, the last 2 tokens of the conversation context will be retained. Preserving context can help maintain the continuity of a conversation, but it may reduce the ability to respond to new topics.": "", @@ -1089,6 +1099,7 @@ "Tool ID": "", "Tool imported successfully": "Tool đã được nạp thành công", "Tool Name": "", + "Tool Servers": "", "Tool updated successfully": "Tool đã được cập nhật thành công", "Tools": "", "Tools Access": "", @@ -1158,7 +1169,7 @@ "Version": "Version", "Version {{selectedVersion}} of {{totalVersions}}": "", "View Replies": "", - "View Result from `{{NAME}}`": "", + "View Result from **{{NAME}}**": "", "Visibility": "", "Voice": "Giọng nói", "Voice Input": "", @@ -1176,9 +1187,9 @@ "Webhook URL": "Webhook URL", "WebUI Settings": "Cài đặt WebUI", "WebUI URL": "", + "WebUI will make requests to \"{{url}}{{path}}\"": "", "WebUI will make requests to \"{{url}}/api/chat\"": "", "WebUI will make requests to \"{{url}}/chat/completions\"": "", - "WebUI will make requests to \"{{url}}/openapi.json\"": "", "What are you trying to achieve?": "", "What are you working on?": "", "What’s New in": "Thông tin mới về", diff --git a/src/lib/i18n/locales/zh-CN/translation.json b/src/lib/i18n/locales/zh-CN/translation.json index 35ffc2e0e..70ac0925d 100644 --- a/src/lib/i18n/locales/zh-CN/translation.json +++ b/src/lib/i18n/locales/zh-CN/translation.json @@ -6,7 +6,7 @@ "(latest)": "(最新版)", "(Ollama)": "(Ollama)", "{{ models }}": "{{ models }}", - "{{COUNT}} Available Tool Servers": "{{COUNT}} 个可用工具服务器", + "{{COUNT}} Available Tools": "", "{{COUNT}} hidden lines": "{{COUNT}} 行被隐藏", "{{COUNT}} Replies": "{{COUNT}} 回复", "{{user}}'s Chats": "{{user}} 的对话记录", @@ -108,6 +108,7 @@ "Attribute for Username": "用户名属性", "Audio": "语音", "August": "八月", + "Auth": "", "Authenticate": "认证", "Authentication": "身份验证", "Auto-Copy Response to Clipboard": "自动复制回复到剪贴板", @@ -119,7 +120,7 @@ "AUTOMATIC1111 Base URL": "AUTOMATIC1111 基础地址", "AUTOMATIC1111 Base URL is required.": "需要 AUTOMATIC1111 基础地址。", "Available list": "可用列表", - "Available Tool Servers": "可用的工具服务器", + "Available Tools": "", "available!": "版本可用!", "Awful": "糟糕", "Azure AI Speech": "Azure AI 语音", @@ -303,6 +304,7 @@ "Direct Connections": "直接连接", "Direct Connections allow users to connect to their own OpenAI compatible API endpoints.": "直接连接功能允许用户连接至其自有的、兼容 OpenAI 的 API 端点。", "Direct Connections settings updated": "直接连接设置已更新", + "Direct Tool Servers": "", "Disabled": "禁用", "Discover a function": "发现更多函数", "Discover a model": "发现更多模型", @@ -412,6 +414,7 @@ "Enter Kagi Search API Key": "输入 Kagi Search API 密钥", "Enter Key Behavior": "Enter 键行为", "Enter language codes": "输入语言代码", + "Enter Mistral API Key": "", "Enter Model ID": "输入模型 ID", "Enter model tag (e.g. {{modelTag}})": "输入模型标签 (例如:{{modelTag}})", "Enter Mojeek Search API Key": "输入 Mojeek Search API 密钥", @@ -436,6 +439,7 @@ "Enter server port": "输入服务器端口", "Enter stop sequence": "输入停止序列 (Stop Sequence)", "Enter system prompt": "输入系统提示词 (Prompt)", + "Enter system prompt here": "", "Enter Tavily API Key": "输入 Tavily API 密钥", "Enter the public URL of your WebUI. This URL will be used to generate links in the notifications.": "输入 WebUI 的公共 URL。此 URL 将用于在通知中生成链接。", "Enter Tika Server URL": "输入 Tika 服务器地址", @@ -449,6 +453,7 @@ "Enter Your Email": "输入您的电子邮箱", "Enter Your Full Name": "输入您的名称", "Enter your message": "输入您的消息", + "Enter your name": "", "Enter your new password": "输入新的密码", "Enter Your Password": "输入您的密码", "Enter Your Role": "输入您的权限组", @@ -468,7 +473,7 @@ "Exceeded the number of seats in your license. Please contact support to increase the number of seats.": "已达到最大授权人数,请联系支持人员提升授权人数。", "Exclude": "排除", "Execute code for analysis": "执行代码进行分析", - "Executing `{{NAME}}`...": "正在执行 `{{NAME}}`...", + "Executing **{{NAME}}**...": "", "Expand": "展开", "Experimental": "实验性", "Explain": "解释", @@ -525,6 +530,7 @@ "Forge new paths": "开拓新道路", "Form": "手动创建", "Format your variables using brackets like this:": "使用括号格式化你的变量,如下所示:", + "Forwards system user session credentials to authenticate": "", "Frequency Penalty": "频率惩罚", "Full Context Mode": "完整上下文模式", "Function": "函数", @@ -694,6 +700,8 @@ "Mirostat": "Mirostat", "Mirostat Eta": "Mirostat Eta", "Mirostat Tau": "Mirostat Tau", + "Mistral OCR": "", + "Mistral OCR API Key required.": "", "Model": "模型", "Model '{{modelName}}' has been successfully downloaded.": "模型'{{modelName}}'已成功下载。", "Model '{{modelTag}}' is already in queue for downloading.": "模型'{{modelTag}}'已在下载队列中。", @@ -789,6 +797,7 @@ "OpenAI API Key is required.": "需要 OpenAI API 密钥。", "OpenAI API settings updated": "OpenAI API 设置已更新", "OpenAI URL/Key required.": "需要 OpenAI URL/Key", + "openapi.json Path": "", "or": "或", "Organize your users": "组织用户", "Other": "其他", @@ -1042,6 +1051,7 @@ "Thinking...": "正在思考...", "This action cannot be undone. Do you wish to continue?": "此操作无法撤销。是否确认继续?", "This channel was created on {{createdAt}}. This is the very beginning of the {{channelName}} channel.": "此频道创建于{{createdAt}},这里是{{channelName}}频道的开始", + "This chat won’t appear in history and your messages will not be saved.": "", "This ensures that your valuable conversations are securely saved to your backend database. Thank you!": "这将确保您的宝贵对话被安全地保存到后台数据库中。感谢!", "This is an experimental feature, it may not function as expected and is subject to change at any time.": "这是一个实验功能,可能不会如预期那样工作,而且可能随时发生变化。", "This option controls how many tokens are preserved when refreshing the context. For example, if set to 2, the last 2 tokens of the conversation context will be retained. Preserving context can help maintain the continuity of a conversation, but it may reduce the ability to respond to new topics.": "此选项控制刷新上下文时保留多少 Token。例如,如果设置为 2,则将保留对话上下文的最后 2 个 Token。保留上下文有助于保持对话的连续性,但可能会降低响应新主题的能力。", @@ -1089,6 +1099,7 @@ "Tool ID": "工具 ID", "Tool imported successfully": "工具导入成功", "Tool Name": "工具名称", + "Tool Servers": "", "Tool updated successfully": "工具更新成功", "Tools": "工具", "Tools Access": "访问工具", @@ -1158,7 +1169,7 @@ "Version": "版本", "Version {{selectedVersion}} of {{totalVersions}}": "版本 {{selectedVersion}}/{{totalVersions}}", "View Replies": "查看回复", - "View Result from `{{NAME}}`": "查看 `{{NAME}}` 的结果", + "View Result from **{{NAME}}**": "", "Visibility": "可见性", "Voice": "语音", "Voice Input": "语音输入", @@ -1176,9 +1187,9 @@ "Webhook URL": "Webhook URL", "WebUI Settings": "WebUI 设置", "WebUI URL": "WebUI URL", + "WebUI will make requests to \"{{url}}{{path}}\"": "", "WebUI will make requests to \"{{url}}/api/chat\"": "WebUI 将向 \"{{url}}/api/chat\" 发出请求", "WebUI will make requests to \"{{url}}/chat/completions\"": "WebUI 将向 \"{{url}}/chat/completions\" 发出请求", - "WebUI will make requests to \"{{url}}/openapi.json\"": "WebUI 将向 \"{{url}}/openapi.json\" 发出请求", "What are you trying to achieve?": "你想要达到什么目标?", "What are you working on?": "你在忙于什么?", "What’s New in": "最近更新内容于", diff --git a/src/lib/i18n/locales/zh-TW/translation.json b/src/lib/i18n/locales/zh-TW/translation.json index b1f252cf8..e3df529ae 100644 --- a/src/lib/i18n/locales/zh-TW/translation.json +++ b/src/lib/i18n/locales/zh-TW/translation.json @@ -6,7 +6,7 @@ "(latest)": "(最新版)", "(Ollama)": "(Ollama)", "{{ models }}": "{{ models }}", - "{{COUNT}} Available Tool Servers": "{{COUNT}} 個可用的工具伺服器", + "{{COUNT}} Available Tools": "", "{{COUNT}} hidden lines": "已隱藏 {{COUNT}} 行", "{{COUNT}} Replies": "{{COUNT}} 回覆", "{{user}}'s Chats": "{{user}} 的對話", @@ -108,6 +108,7 @@ "Attribute for Username": "使用者名稱屬性", "Audio": "音訊", "August": "8 月", + "Auth": "", "Authenticate": "驗證", "Authentication": "驗證", "Auto-Copy Response to Clipboard": "自動將回應複製到剪貼簿", @@ -119,7 +120,7 @@ "AUTOMATIC1111 Base URL": "AUTOMATIC1111 基礎 URL", "AUTOMATIC1111 Base URL is required.": "需要 AUTOMATIC1111 基礎 URL。", "Available list": "可用清單", - "Available Tool Servers": "可用的工具伺服器", + "Available Tools": "", "available!": "可用!", "Awful": "糟糕", "Azure AI Speech": "Azure AI 語音", @@ -303,6 +304,7 @@ "Direct Connections": "直接連線", "Direct Connections allow users to connect to their own OpenAI compatible API endpoints.": "直接連線允許使用者連接到自己的 OpenAI 相容 API 端點。", "Direct Connections settings updated": "直接連線設定已更新。", + "Direct Tool Servers": "", "Disabled": "已停用", "Discover a function": "發掘函式", "Discover a model": "發掘模型", @@ -412,6 +414,7 @@ "Enter Kagi Search API Key": "輸入 Kagi 搜尋 API 金鑰", "Enter Key Behavior": "Enter 鍵行為", "Enter language codes": "輸入語言代碼", + "Enter Mistral API Key": "", "Enter Model ID": "輸入模型 ID", "Enter model tag (e.g. {{modelTag}})": "輸入模型標籤(例如:{{modelTag}})", "Enter Mojeek Search API Key": "輸入 Mojeek 搜尋 API 金鑰", @@ -436,6 +439,7 @@ "Enter server port": "輸入伺服器連接埠", "Enter stop sequence": "輸入停止序列", "Enter system prompt": "輸入系統提示詞", + "Enter system prompt here": "", "Enter Tavily API Key": "輸入 Tavily API 金鑰", "Enter the public URL of your WebUI. This URL will be used to generate links in the notifications.": "請輸入您 WebUI 的公開 URL。此 URL 將用於在通知中產生連結。", "Enter Tika Server URL": "輸入 Tika 伺服器 URL", @@ -449,6 +453,7 @@ "Enter Your Email": "輸入您的電子郵件", "Enter Your Full Name": "輸入您的全名", "Enter your message": "輸入您的訊息", + "Enter your name": "", "Enter your new password": "輸入您的新密碼", "Enter Your Password": "輸入您的密碼", "Enter Your Role": "輸入您的角色", @@ -468,7 +473,7 @@ "Exceeded the number of seats in your license. Please contact support to increase the number of seats.": "您的授權名額已超過上限。請聯絡支援以增加授權名額。", "Exclude": "排除", "Execute code for analysis": "執行程式碼以進行分析", - "Executing `{{NAME}}`...": "正在執行 `{{NAME}}` …", + "Executing **{{NAME}}**...": "", "Expand": "展開", "Experimental": "實驗性功能", "Explain": "解釋", @@ -525,6 +530,7 @@ "Forge new paths": "開創新路徑", "Form": "表單", "Format your variables using brackets like this:": "使用方括號格式化您的變數,如下所示:", + "Forwards system user session credentials to authenticate": "", "Frequency Penalty": "頻率懲罰", "Full Context Mode": "完整上下文模式", "Function": "函式", @@ -694,6 +700,8 @@ "Mirostat": "Mirostat", "Mirostat Eta": "Mirostat Eta", "Mirostat Tau": "Mirostat Tau", + "Mistral OCR": "", + "Mistral OCR API Key required.": "", "Model": "模型", "Model '{{modelName}}' has been successfully downloaded.": "模型「{{modelName}}」已成功下載。", "Model '{{modelTag}}' is already in queue for downloading.": "模型「{{modelTag}}」已在下載佇列中。", @@ -789,6 +797,7 @@ "OpenAI API Key is required.": "需要 OpenAI API 金鑰。", "OpenAI API settings updated": "OpenAI API 設定已更新", "OpenAI URL/Key required.": "需要 OpenAI URL 或金鑰。", + "openapi.json Path": "", "or": "或", "Organize your users": "組織您的使用者", "Other": "其他", @@ -1042,6 +1051,7 @@ "Thinking...": "正在思考...", "This action cannot be undone. Do you wish to continue?": "此操作無法復原。您確定要繼續進行嗎?", "This channel was created on {{createdAt}}. This is the very beginning of the {{channelName}} channel.": "此頻道建立於 {{createdAt}}。這是 {{channelName}} 頻道的起點。", + "This chat won’t appear in history and your messages will not be saved.": "", "This ensures that your valuable conversations are securely saved to your backend database. Thank you!": "這確保您寶貴的對話會安全地儲存到您的後端資料庫。謝謝!", "This is an experimental feature, it may not function as expected and is subject to change at any time.": "這是一個實驗性功能,它可能無法如預期運作,並且可能會隨時變更。", "This option controls how many tokens are preserved when refreshing the context. For example, if set to 2, the last 2 tokens of the conversation context will be retained. Preserving context can help maintain the continuity of a conversation, but it may reduce the ability to respond to new topics.": "此選項控制在重新整理上下文時保留多少 token。例如,如果設定為 2,則會保留對話上下文的最後 2 個 token。保留上下文有助於保持對話的連貫性,但也可能降低對新主題的回應能力。", @@ -1089,6 +1099,7 @@ "Tool ID": "工具 ID", "Tool imported successfully": "成功匯入工具", "Tool Name": "工具名稱", + "Tool Servers": "", "Tool updated successfully": "成功更新工具", "Tools": "工具", "Tools Access": "工具存取", @@ -1158,7 +1169,7 @@ "Version": "版本", "Version {{selectedVersion}} of {{totalVersions}}": "第 {{selectedVersion}} 版,共 {{totalVersions}} 版", "View Replies": "檢視回覆", - "View Result from `{{NAME}}`": "檢視 `{{NAME}}` 的結果", + "View Result from **{{NAME}}**": "", "Visibility": "可見性", "Voice": "語音", "Voice Input": "語音輸入", @@ -1176,9 +1187,9 @@ "Webhook URL": "Webhook URL", "WebUI Settings": "WebUI 設定", "WebUI URL": "WebUI URL", + "WebUI will make requests to \"{{url}}{{path}}\"": "", "WebUI will make requests to \"{{url}}/api/chat\"": "WebUI 將向 \"{{url}}/api/chat\" 傳送請求", "WebUI will make requests to \"{{url}}/chat/completions\"": "WebUI 將向 \"{{url}}/chat/completions\" 傳送請求", - "WebUI will make requests to \"{{url}}/openapi.json\"": "WebUI 將向 \"{{url}}/openapi.json\" 傳送請求。", "What are you trying to achieve?": "您正在試圖完成什麼?", "What are you working on?": "您現在的工作是什麼?", "What’s New in": "新功能", From 193a927aba75fc5efae1ed8f1da3ef0c9076190f Mon Sep 17 00:00:00 2001 From: Timothy Jaeryang Baek Date: Sat, 5 Apr 2025 02:16:35 -0600 Subject: [PATCH 14/37] fix: temp chat --- src/routes/(app)/+layout.svelte | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/src/routes/(app)/+layout.svelte b/src/routes/(app)/+layout.svelte index 709813ef1..da38e522d 100644 --- a/src/routes/(app)/+layout.svelte +++ b/src/routes/(app)/+layout.svelte @@ -195,14 +195,14 @@ showChangelog.set($settings?.version !== $config.version); } - if ($page.url.searchParams.get('temporary-chat') === 'true') { - temporaryChatEnabled.set(true); - } + if ($user?.permissions?.chat?.temporary ?? true) { + if ($page.url.searchParams.get('temporary-chat') === 'true') { + temporaryChatEnabled.set(true); + } - console.log($user?.permissions); - - if ($user?.permissions?.chat?.temporary_enforced) { - temporaryChatEnabled.set(true); + if ($user?.permissions?.chat?.temporary_enforced) { + temporaryChatEnabled.set(true); + } } // Check for version updates From 8cf8121812b8c921ae99f0e9973cdd028c0b800f Mon Sep 17 00:00:00 2001 From: Phlogi Date: Sat, 5 Apr 2025 10:41:21 +0200 Subject: [PATCH 15/37] Update utils.py Avoid running any tasks for collections that failed to fetch data (have assigned None) --- backend/open_webui/retrieval/utils.py | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/backend/open_webui/retrieval/utils.py b/backend/open_webui/retrieval/utils.py index 518a12136..b600080cf 100644 --- a/backend/open_webui/retrieval/utils.py +++ b/backend/open_webui/retrieval/utils.py @@ -320,11 +320,9 @@ def query_collection_with_hybrid_search( log.exception(f"Error when querying the collection with hybrid_search: {e}") return None, e - tasks = [ - (collection_name, query) - for collection_name in collection_names - for query in queries - ] + # Prepare tasks for all collections and queries + # Avoid running any tasks for collections that failed to fetch data (have assigned None) + tasks = [(cn, q) for cn in collection_names if collection_results[cn] is not None for q in queries] with ThreadPoolExecutor() as executor: future_results = [executor.submit(process_query, cn, q) for cn, q in tasks] From e0da6003f14043a98fe99adbf8961626d0944e9a Mon Sep 17 00:00:00 2001 From: Jan Kessler Date: Sat, 5 Apr 2025 11:40:48 +0200 Subject: [PATCH 16/37] tweak default rag template to be more coherent and improve consistency with citations --- backend/open_webui/config.py | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/backend/open_webui/config.py b/backend/open_webui/config.py index 0a33c68b1..14910425e 100644 --- a/backend/open_webui/config.py +++ b/backend/open_webui/config.py @@ -1889,7 +1889,7 @@ CHUNK_OVERLAP = PersistentConfig( ) DEFAULT_RAG_TEMPLATE = """### Task: -Respond to the user query using the provided context, incorporating inline citations in the format [source_id] **only when the tag includes an explicit id attribute** (e.g., ). +Respond to the user query using the provided context, incorporating inline citations in the format [id] **only when the tag includes an explicit id attribute** (e.g., ). ### Guidelines: - If you don't know the answer, clearly state that. @@ -1897,17 +1897,17 @@ Respond to the user query using the provided context, incorporating inline citat - Respond in the same language as the user's query. - If the context is unreadable or of poor quality, inform the user and provide the best possible answer. - If the answer isn't present in the context but you possess the knowledge, explain this to the user and provide the answer using your own understanding. -- **Only include inline citations using [source_id] (e.g., [1], [2]) when the tag includes an id attribute.** -- Do not cite if the tag does not contain an id attribute. +- **Only include inline citations using [id] (e.g., [1], [2]) when the tag includes an id attribute.** +- Do not cite if the tag does not contain an id attribute. - Do not use XML tags in your response. - Ensure citations are concise and directly related to the information provided. ### Example of Citation: -If the user asks about a specific topic and the information is found in a source with a provided id attribute, the response should include the citation like so: +If the user asks about a specific topic and the information is found in a source with a provided id attribute, the response should include the citation like in the following example: * "According to the study, the proposed method increases efficiency by 20% [1]." ### Output: -Provide a clear and direct response to the user's query, including inline citations in the format [source_id] only when the tag is present in the context. +Provide a clear and direct response to the user's query, including inline citations in the format [id] only when the tag with id attribute is present in the context. {{CONTEXT}} From 1b8557ce8652a9dcb85acb11775975c012865ca6 Mon Sep 17 00:00:00 2001 From: Nathan DELHAYE Date: Sat, 5 Apr 2025 12:04:12 +0200 Subject: [PATCH 17/37] i18n: improve fr translation --- src/lib/i18n/locales/fr-CA/translation.json | 20 ++++++++++---------- src/lib/i18n/locales/fr-FR/translation.json | 10 +++++----- 2 files changed, 15 insertions(+), 15 deletions(-) diff --git a/src/lib/i18n/locales/fr-CA/translation.json b/src/lib/i18n/locales/fr-CA/translation.json index 844cef9ba..35cbe56cc 100644 --- a/src/lib/i18n/locales/fr-CA/translation.json +++ b/src/lib/i18n/locales/fr-CA/translation.json @@ -531,15 +531,15 @@ "Function Calling": "", "Function created successfully": "La fonction a été créée avec succès", "Function deleted successfully": "Fonction supprimée avec succès", - "Function Description": "", - "Function ID": "", - "Function is now globally disabled": "", - "Function is now globally enabled": "", - "Function Name": "", + "Function Description": "Description de la fonction", + "Function ID": "ID de la fonction", + "Function is now globally disabled": "La fonction est désormais globalement désactivée", + "Function is now globally enabled": "La fonction est désormais globalement activée", + "Function Name": "Nom de la fonction", "Function updated successfully": "La fonction a été mise à jour avec succès", "Functions": "Fonctions", - "Functions allow arbitrary code execution": "", - "Functions allow arbitrary code execution.": "", + "Functions allow arbitrary code execution": "Les fonctions permettent l'exécution de code arbitraire", + "Functions allow arbitrary code execution.": "Les fonctions permettent l'exécution de code arbitraire.", "Functions imported successfully": "Fonctions importées avec succès", "Gemini": "", "Gemini API Config": "", @@ -549,9 +549,9 @@ "Generate Image": "Générer une image", "Generate prompt pair": "", "Generating search query": "Génération d'une requête de recherche", - "Get started": "", - "Get started with {{WEBUI_NAME}}": "", - "Global": "Mondial", + "Get started": "Démarrer", + "Get started with {{WEBUI_NAME}}": "Démarrez avec {{WEBUI_NAME}}", + "Global": "Global", "Good Response": "Bonne réponse", "Google Drive": "", "Google PSE API Key": "Clé API Google PSE", diff --git a/src/lib/i18n/locales/fr-FR/translation.json b/src/lib/i18n/locales/fr-FR/translation.json index 1ce104c10..7807c4dbd 100644 --- a/src/lib/i18n/locales/fr-FR/translation.json +++ b/src/lib/i18n/locales/fr-FR/translation.json @@ -533,8 +533,8 @@ "Function deleted successfully": "Fonction supprimée avec succès", "Function Description": "Description de la fonction", "Function ID": "ID de la fonction", - "Function is now globally disabled": "La fonction est désormais désactivée globalement", - "Function is now globally enabled": "La fonction est désormais activée globalement", + "Function is now globally disabled": "La fonction est désormais globalement désactivée", + "Function is now globally enabled": "La fonction est désormais globalement activée", "Function Name": "Nom de la fonction", "Function updated successfully": "La fonction a été mise à jour avec succès", "Functions": "Fonctions", @@ -549,9 +549,9 @@ "Generate Image": "Générer une image", "Generate prompt pair": "", "Generating search query": "Génération d'une requête de recherche", - "Get started": "Commencer", - "Get started with {{WEBUI_NAME}}": "Commencez avec {{WEBUI_NAME}}", - "Global": "Mondial", + "Get started": "Démarrer", + "Get started with {{WEBUI_NAME}}": "Démarrez avec {{WEBUI_NAME}}", + "Global": "Globale", "Good Response": "Bonne réponse", "Google Drive": "Google Drive", "Google PSE API Key": "Clé API Google PSE", From 0c0505e1cd0e0fb5edb41ea775bc0b3902f9e4eb Mon Sep 17 00:00:00 2001 From: Timothy Jaeryang Baek Date: Sat, 5 Apr 2025 04:05:52 -0600 Subject: [PATCH 18/37] refac --- backend/open_webui/config.py | 11 + backend/open_webui/main.py | 16 + backend/open_webui/routers/configs.py | 73 +++- backend/open_webui/routers/tools.py | 14 +- backend/open_webui/utils/auth.py | 6 +- backend/open_webui/utils/tools.py | 262 +++++++++++- src/lib/apis/configs/index.ts | 87 ++++ src/lib/apis/index.ts | 4 +- src/lib/components/AddServerModal.svelte | 105 ++++- .../components/admin/Settings/Tools.svelte | 394 +++--------------- src/lib/components/chat/Settings/Tools.svelte | 3 +- .../chat/Settings/Tools/Connection.svelte | 6 +- 12 files changed, 613 insertions(+), 368 deletions(-) diff --git a/backend/open_webui/config.py b/backend/open_webui/config.py index 0a33c68b1..50898800a 100644 --- a/backend/open_webui/config.py +++ b/backend/open_webui/config.py @@ -881,6 +881,17 @@ except Exception: pass OPENAI_API_BASE_URL = "https://api.openai.com/v1" +#################################### +# TOOL_SERVERS +#################################### + + +TOOL_SERVER_CONNECTIONS = PersistentConfig( + "TOOL_SERVER_CONNECTIONS", + "tool_server.connections", + [], +) + #################################### # WEBUI #################################### diff --git a/backend/open_webui/main.py b/backend/open_webui/main.py index 383523174..c9ca059c2 100644 --- a/backend/open_webui/main.py +++ b/backend/open_webui/main.py @@ -105,6 +105,8 @@ from open_webui.config import ( OPENAI_API_CONFIGS, # Direct Connections ENABLE_DIRECT_CONNECTIONS, + # Tool Server Configs + TOOL_SERVER_CONNECTIONS, # Code Execution ENABLE_CODE_EXECUTION, CODE_EXECUTION_ENGINE, @@ -356,6 +358,7 @@ from open_webui.utils.access_control import has_access from open_webui.utils.auth import ( get_license_data, + get_http_authorization_cred, decode_token, get_admin_user, get_verified_user, @@ -478,6 +481,15 @@ app.state.config.OPENAI_API_CONFIGS = OPENAI_API_CONFIGS app.state.OPENAI_MODELS = {} +######################################## +# +# TOOL SERVERS +# +######################################## + +app.state.config.TOOL_SERVER_CONNECTIONS = TOOL_SERVER_CONNECTIONS +app.state.TOOL_SERVERS = [] + ######################################## # # DIRECT CONNECTIONS @@ -864,6 +876,10 @@ async def commit_session_after_request(request: Request, call_next): @app.middleware("http") async def check_url(request: Request, call_next): start_time = int(time.time()) + request.state.token = get_http_authorization_cred( + request.headers.get("Authorization") + ) + request.state.enable_api_key = app.state.config.ENABLE_API_KEY response = await call_next(request) process_time = int(time.time()) - start_time diff --git a/backend/open_webui/routers/configs.py b/backend/open_webui/routers/configs.py index 2a4c651f2..e891b7aa8 100644 --- a/backend/open_webui/routers/configs.py +++ b/backend/open_webui/routers/configs.py @@ -1,5 +1,5 @@ -from fastapi import APIRouter, Depends, Request -from pydantic import BaseModel +from fastapi import APIRouter, Depends, Request, HTTPException +from pydantic import BaseModel, ConfigDict from typing import Optional @@ -7,6 +7,8 @@ from open_webui.utils.auth import get_admin_user, get_verified_user from open_webui.config import get_config, save_config from open_webui.config import BannerModel +from open_webui.utils.tools import get_tool_server_data, get_tool_servers_data + router = APIRouter() @@ -66,6 +68,73 @@ async def set_direct_connections_config( } +############################ +# ToolServers Config +############################ + + +class ToolServerConnection(BaseModel): + url: str + path: str + auth_type: Optional[str] + key: Optional[str] + config: Optional[dict] + + model_config = ConfigDict(extra="allow") + + +class ToolServersConfigForm(BaseModel): + TOOL_SERVER_CONNECTIONS: list[ToolServerConnection] + + +@router.get("/tool_servers", response_model=ToolServersConfigForm) +async def get_tool_servers_config(request: Request, user=Depends(get_admin_user)): + return { + "TOOL_SERVER_CONNECTIONS": request.app.state.config.TOOL_SERVER_CONNECTIONS, + } + + +@router.post("/tool_servers", response_model=ToolServersConfigForm) +async def set_tool_servers_config( + request: Request, + form_data: ToolServersConfigForm, + user=Depends(get_admin_user), +): + request.app.state.config.TOOL_SERVER_CONNECTIONS = form_data.TOOL_SERVER_CONNECTIONS + + request.app.state.TOOL_SERVERS = await get_tool_servers_data( + request.app.state.config.TOOL_SERVER_CONNECTIONS + ) + + return { + "TOOL_SERVER_CONNECTIONS": request.app.state.config.TOOL_SERVER_CONNECTIONS, + } + + +@router.post("/tool_servers/verify") +async def verify_tool_servers_config( + request: Request, form_data: ToolServerConnection, user=Depends(get_admin_user) +): + """ + Verify the connection to the tool server. + """ + try: + + token = None + if form_data.auth_type == "bearer": + token = form_data.key + elif form_data.auth_type == "session": + token = request.state.token.credentials + + url = f"{form_data.url}/{form_data.path}" + return await get_tool_server_data(token, url) + except Exception as e: + raise HTTPException( + status_code=400, + detail=f"Failed to connect to the tool server: {str(e)}", + ) + + ############################ # CodeInterpreterConfig ############################ diff --git a/backend/open_webui/routers/tools.py b/backend/open_webui/routers/tools.py index 211264cde..ace517daa 100644 --- a/backend/open_webui/routers/tools.py +++ b/backend/open_webui/routers/tools.py @@ -18,6 +18,8 @@ from open_webui.utils.auth import get_admin_user, get_verified_user from open_webui.utils.access_control import has_access, has_permission from open_webui.env import SRC_LOG_LEVELS +from open_webui.utils.tools import get_tool_servers_data + log = logging.getLogger(__name__) log.setLevel(SRC_LOG_LEVELS["MAIN"]) @@ -30,7 +32,17 @@ router = APIRouter() @router.get("/", response_model=list[ToolUserResponse]) -async def get_tools(user=Depends(get_verified_user)): +async def get_tools(request: Request, user=Depends(get_verified_user)): + + if not request.app.state.TOOL_SERVERS: + # If the tool servers are not set, we need to set them + # This is done only once when the server starts + # This is done to avoid loading the tool servers every time + + request.app.state.TOOL_SERVERS = await get_tool_servers_data( + request.app.state.config.TOOL_SERVER_CONNECTIONS + ) + if user.role == "admin": tools = Tools.get_tools() else: diff --git a/backend/open_webui/utils/auth.py b/backend/open_webui/utils/auth.py index 6af99f164..118ac049e 100644 --- a/backend/open_webui/utils/auth.py +++ b/backend/open_webui/utils/auth.py @@ -143,12 +143,14 @@ def create_api_key(): return f"sk-{key}" -def get_http_authorization_cred(auth_header: str): +def get_http_authorization_cred(auth_header: Optional[str]): + if not auth_header: + return None try: scheme, credentials = auth_header.split(" ") return HTTPAuthorizationCredentials(scheme=scheme, credentials=credentials) except Exception: - raise ValueError(ERROR_MESSAGES.INVALID_TOKEN) + return None def get_current_user( diff --git a/backend/open_webui/utils/tools.py b/backend/open_webui/utils/tools.py index bd2a731e6..425a95081 100644 --- a/backend/open_webui/utils/tools.py +++ b/backend/open_webui/utils/tools.py @@ -2,9 +2,10 @@ import inspect import logging import re import inspect -import uuid +import aiohttp +import asyncio -from typing import Any, Awaitable, Callable, get_type_hints +from typing import Any, Awaitable, Callable, get_type_hints, Dict, List, Union from functools import update_wrapper, partial @@ -217,3 +218,260 @@ def get_tools_specs(tool_class: object) -> list[dict]: function_list = get_callable_attributes(tool_class) models = map(function_to_pydantic_model, function_list) return [convert_to_openai_function(tool) for tool in models] + + +import copy + + +def resolve_schema(schema, components): + """ + Recursively resolves a JSON schema using OpenAPI components. + """ + if not schema: + return {} + + if "$ref" in schema: + ref_path = schema["$ref"] + ref_parts = ref_path.strip("#/").split("/") + resolved = components + for part in ref_parts[1:]: # Skip the initial 'components' + resolved = resolved.get(part, {}) + return resolve_schema(resolved, components) + + resolved_schema = copy.deepcopy(schema) + + # Recursively resolve inner schemas + if "properties" in resolved_schema: + for prop, prop_schema in resolved_schema["properties"].items(): + resolved_schema["properties"][prop] = resolve_schema( + prop_schema, components + ) + + if "items" in resolved_schema: + resolved_schema["items"] = resolve_schema(resolved_schema["items"], components) + + return resolved_schema + + +def convert_openapi_to_tool_payload(openapi_spec): + """ + Converts an OpenAPI specification into a custom tool payload structure. + + Args: + openapi_spec (dict): The OpenAPI specification as a Python dict. + + Returns: + list: A list of tool payloads. + """ + tool_payload = [] + + for path, methods in openapi_spec.get("paths", {}).items(): + for method, operation in methods.items(): + tool = { + "type": "function", + "name": operation.get("operationId"), + "description": operation.get("summary", "No description available."), + "parameters": {"type": "object", "properties": {}, "required": []}, + } + + # Extract path and query parameters + for param in operation.get("parameters", []): + param_name = param["name"] + param_schema = param.get("schema", {}) + tool["parameters"]["properties"][param_name] = { + "type": param_schema.get("type"), + "description": param_schema.get("description", ""), + } + if param.get("required"): + tool["parameters"]["required"].append(param_name) + + # Extract and resolve requestBody if available + request_body = operation.get("requestBody") + if request_body: + content = request_body.get("content", {}) + json_schema = content.get("application/json", {}).get("schema") + if json_schema: + resolved_schema = resolve_schema( + json_schema, openapi_spec.get("components", {}) + ) + + if resolved_schema.get("properties"): + tool["parameters"]["properties"].update( + resolved_schema["properties"] + ) + if "required" in resolved_schema: + tool["parameters"]["required"] = list( + set( + tool["parameters"]["required"] + + resolved_schema["required"] + ) + ) + elif resolved_schema.get("type") == "array": + tool["parameters"] = resolved_schema # special case for array + + tool_payload.append(tool) + + return tool_payload + + +async def get_tool_server_data(token: str, url: str) -> Dict[str, Any]: + headers = { + "Accept": "application/json", + "Content-Type": "application/json", + } + if token: + headers["Authorization"] = f"Bearer {token}" + + error = None + try: + async with aiohttp.ClientSession() as session: + async with session.get(url, headers=headers) as response: + if response.status != 200: + error_body = await response.json() + raise Exception(error_body) + res = await response.json() + except Exception as err: + print("Error:", err) + if isinstance(err, dict) and "detail" in err: + error = err["detail"] + else: + error = str(err) + raise Exception(error) + + data = { + "openapi": res, + "info": res.get("info", {}), + "specs": convert_openapi_to_tool_payload(res), + } + + print("Fetched data:", data) + return data + + +async def get_tool_servers_data(servers: List[Dict[str, Any]]) -> List[Dict[str, Any]]: + enabled_servers = [ + server for server in servers if server.get("config", {}).get("enable") + ] + + urls = [ + ( + server, + f"{server.get('url')}/{server.get('path', 'openapi.json')}", + server.get("key", ""), + ) + for server in enabled_servers + ] + + tasks = [get_tool_server_data(token, url) for _, url, token in urls] + + results: List[Dict[str, Any]] = [] + + responses = await asyncio.gather(*tasks, return_exceptions=True) + + for (server, _, _), response in zip(urls, responses): + if isinstance(response, Exception): + url_path = server.get("path", "openapi.json") + full_url = f"{server.get('url')}/{url_path}" + print(f"Failed to connect to {full_url} OpenAPI tool server") + else: + results.append( + { + "url": server.get("url"), + "openapi": response["openapi"], + "info": response["info"], + "specs": response["specs"], + } + ) + + return results + + +async def execute_tool_server( + token: str, url: str, name: str, params: Dict[str, Any], server_data: Dict[str, Any] +) -> Any: + error = None + try: + openapi = server_data.get("openapi", {}) + paths = openapi.get("paths", {}) + + matching_route = None + for route_path, methods in paths.items(): + for http_method, operation in methods.items(): + if isinstance(operation, dict) and operation.get("operationId") == name: + matching_route = (route_path, methods) + break + if matching_route: + break + + if not matching_route: + raise Exception(f"No matching route found for operationId: {name}") + + route_path, methods = matching_route + + method_entry = None + for http_method, operation in methods.items(): + if operation.get("operationId") == name: + method_entry = (http_method.lower(), operation) + break + + if not method_entry: + raise Exception(f"No matching method found for operationId: {name}") + + http_method, operation = method_entry + + path_params = {} + query_params = {} + body_params = {} + + for param in operation.get("parameters", []): + param_name = param["name"] + param_in = param["in"] + if param_name in params: + if param_in == "path": + path_params[param_name] = params[param_name] + elif param_in == "query": + query_params[param_name] = params[param_name] + + final_url = f"{url}{route_path}" + for key, value in path_params.items(): + final_url = final_url.replace(f"{{{key}}}", str(value)) + + if query_params: + query_string = "&".join(f"{k}={v}" for k, v in query_params.items()) + final_url = f"{final_url}?{query_string}" + + if operation.get("requestBody", {}).get("content"): + if params: + body_params = params + else: + raise Exception( + f"Request body expected for operation '{name}' but none found." + ) + + headers = {"Content-Type": "application/json"} + + if token: + headers["Authorization"] = f"Bearer {token}" + + async with aiohttp.ClientSession() as session: + request_method = getattr(session, http_method.lower()) + + if http_method in ["post", "put", "patch"]: + async with request_method( + final_url, json=body_params, headers=headers + ) as response: + if response.status >= 400: + text = await response.text() + raise Exception(f"HTTP error {response.status}: {text}") + return await response.json() + else: + async with request_method(final_url, headers=headers) as response: + if response.status >= 400: + text = await response.text() + raise Exception(f"HTTP error {response.status}: {text}") + return await response.json() + + except Exception as err: + error = str(err) + print("API Request Error:", error) + return {"error": error} diff --git a/src/lib/apis/configs/index.ts b/src/lib/apis/configs/index.ts index f7f02c740..5872303f6 100644 --- a/src/lib/apis/configs/index.ts +++ b/src/lib/apis/configs/index.ts @@ -115,6 +115,93 @@ export const setDirectConnectionsConfig = async (token: string, config: object) return res; }; +export const getToolServerConnections = async (token: string) => { + let error = null; + + const res = await fetch(`${WEBUI_API_BASE_URL}/configs/tool_servers`, { + method: 'GET', + headers: { + 'Content-Type': 'application/json', + Authorization: `Bearer ${token}` + } + }) + .then(async (res) => { + if (!res.ok) throw await res.json(); + return res.json(); + }) + .catch((err) => { + console.log(err); + error = err.detail; + return null; + }); + + if (error) { + throw error; + } + + return res; +}; + +export const setToolServerConnections = async (token: string, connections: object) => { + let error = null; + + const res = await fetch(`${WEBUI_API_BASE_URL}/configs/tool_servers`, { + method: 'POST', + headers: { + 'Content-Type': 'application/json', + Authorization: `Bearer ${token}` + }, + body: JSON.stringify({ + ...connections + }) + }) + .then(async (res) => { + if (!res.ok) throw await res.json(); + return res.json(); + }) + .catch((err) => { + console.log(err); + error = err.detail; + return null; + }); + + if (error) { + throw error; + } + + return res; +}; + +export const verifyToolServerConnection = async (token: string, connection: object) => { + let error = null; + + const res = await fetch(`${WEBUI_API_BASE_URL}/configs/tool_servers/verify`, { + method: 'POST', + headers: { + 'Content-Type': 'application/json', + Authorization: `Bearer ${token}` + }, + body: JSON.stringify({ + ...connection + }) + }) + .then(async (res) => { + if (!res.ok) throw await res.json(); + return res.json(); + }) + .catch((err) => { + console.log(err); + error = err.detail; + return null; + }); + + if (error) { + throw error; + } + + return res; +}; + export const getCodeExecutionConfig = async (token: string) => { let error = null; diff --git a/src/lib/apis/index.ts b/src/lib/apis/index.ts index b6d4d10d2..cdd6887b2 100644 --- a/src/lib/apis/index.ts +++ b/src/lib/apis/index.ts @@ -306,11 +306,11 @@ export const getToolServersData = async (i18n, servers: object[]) => { .map(async (server) => { const data = await getToolServerData( server?.key, - server?.url + (server?.path ?? '/openapi.json') + server?.url + '/' + (server?.path ?? 'openapi.json') ).catch((err) => { toast.error( i18n.t(`Failed to connect to {{URL}} OpenAPI tool server`, { - URL: server?.url + (server?.path ?? '/openapi.json') + URL: server?.url + '/' + (server?.path ?? 'openapi.json') }) ); return null; diff --git a/src/lib/components/AddServerModal.svelte b/src/lib/components/AddServerModal.svelte index 500032ba1..4e8747da9 100644 --- a/src/lib/components/AddServerModal.svelte +++ b/src/lib/components/AddServerModal.svelte @@ -15,6 +15,8 @@ import Tooltip from '$lib/components/common/Tooltip.svelte'; import Switch from '$lib/components/common/Switch.svelte'; import Tags from './common/Tags.svelte'; + import { getToolServerData } from '$lib/apis'; + import { verifyToolServerConnection } from '$lib/apis/configs'; export let onSubmit: Function = () => {}; export let onDelete: Function = () => {}; @@ -22,10 +24,12 @@ export let show = false; export let edit = false; + export let direct = false; + export let connection = null; let url = ''; - let path = '/openapi.json'; + let path = 'openapi.json'; let auth_type = 'bearer'; let key = ''; @@ -34,6 +38,49 @@ let loading = false; + const verifyHandler = async () => { + if (url === '') { + toast.error($i18n.t('Please enter a valid URL')); + return; + } + + if (path === '') { + toast.error($i18n.t('Please enter a valid path')); + return; + } + + if (direct) { + const res = await getToolServerData( + auth_type === 'bearer' ? key : localStorage.token, + `${url}/${path}` + ).catch((err) => { + toast.error($i18n.t('Connection failed')); + }); + + if (res) { + toast.success($i18n.t('Connection successful')); + console.debug('Connection successful', res); + } + } else { + const res = await verifyToolServerConnection(localStorage.token, { + url, + path, + auth_type, + key, + config: { + enable: enable + } + }).catch((err) => { + toast.error($i18n.t('Connection failed')); + }); + + if (res) { + toast.success($i18n.t('Connection successful')); + console.debug('Connection successful', res); + } + } + }; + const submitHandler = async () => { loading = true; @@ -56,7 +103,7 @@ show = false; url = ''; - path = '/openapi.json'; + path = 'openapi.json'; key = ''; auth_type = 'bearer'; @@ -66,7 +113,7 @@ const init = () => { if (connection) { url = connection.url; - path = connection?.path ?? '/openapi.json'; + path = connection?.path ?? 'openapi.json'; auth_type = connection?.auth_type ?? 'bearer'; key = connection?.key ?? ''; @@ -125,20 +172,53 @@
-
{$i18n.t('URL')}
+
+
{$i18n.t('URL')}
+
-
+
+ + + + + + + +
-
+
+
/
- -
- - - -
- {$i18n.t(`WebUI will make requests to "{{url}}{{path}}"`, { - url: url, - path: path + {$i18n.t(`WebUI will make requests to "{{url}}"`, { + url: `${url}/${path}` })}
diff --git a/src/lib/components/admin/Settings/Tools.svelte b/src/lib/components/admin/Settings/Tools.svelte index ac0566f22..7e1c6b03e 100644 --- a/src/lib/components/admin/Settings/Tools.svelte +++ b/src/lib/components/admin/Settings/Tools.svelte @@ -1,317 +1,66 @@ - + - - -
+ { + updateHandler(); + }} +>
- {#if ENABLE_OPENAI_API !== null && ENABLE_OLLAMA_API !== null && directConnectionsConfig !== null} -
-
-
-
{$i18n.t('OpenAI API')}
+ {#if servers !== null} +
+
+
{$i18n.t('General')}
-
-
- { - updateOpenAIHandler(); - }} - /> -
-
-
- - {#if ENABLE_OPENAI_API} -
- -
-
-
{$i18n.t('Manage OpenAI API Connections')}
- - - - -
- -
- {#each OPENAI_API_BASE_URLS as url, idx} - { - updateOpenAIHandler(); - }} - onDelete={() => { - OPENAI_API_BASE_URLS = OPENAI_API_BASE_URLS.filter( - (url, urlIdx) => idx !== urlIdx - ); - OPENAI_API_KEYS = OPENAI_API_KEYS.filter((key, keyIdx) => idx !== keyIdx); - - let newConfig = {}; - OPENAI_API_BASE_URLS.forEach((url, newIdx) => { - newConfig[newIdx] = OPENAI_API_CONFIGS[newIdx < idx ? newIdx : newIdx + 1]; - }); - OPENAI_API_CONFIGS = newConfig; - updateOpenAIHandler(); - }} - /> - {/each} -
-
- {/if} -
-
- -
- -
-
-
{$i18n.t('Ollama API')}
- -
- { - updateOllamaHandler(); - }} - /> -
-
- - {#if ENABLE_OLLAMA_API}
-
-
-
{$i18n.t('Manage Ollama API Connections')}
+
+ +
+
{$i18n.t('Manage Tool Servers')}
-
-
- {#each OLLAMA_BASE_URLS as url, idx} - { - updateOllamaHandler(); - }} - onDelete={() => { - OLLAMA_BASE_URLS = OLLAMA_BASE_URLS.filter((url, urlIdx) => idx !== urlIdx); +
+ {#each servers as server, idx} + { + updateHandler(); + }} + onDelete={() => { + servers = servers.filter((_, i) => i !== idx); + updateHandler(); + }} + /> + {/each} +
- let newConfig = {}; - OLLAMA_BASE_URLS.forEach((url, newIdx) => { - newConfig[newIdx] = OLLAMA_API_CONFIGS[newIdx < idx ? newIdx : newIdx + 1]; - }); - OLLAMA_API_CONFIGS = newConfig; - }} - /> - {/each} +
+
+ {$i18n.t('Connect to your own OpenAPI compatible external tool servers.')}
- -
- {$i18n.t('Trouble accessing Ollama?')} - - {$i18n.t('Click here for help.')} - -
- {/if} -
-
+
{:else} diff --git a/src/lib/components/chat/Settings/Tools.svelte b/src/lib/components/chat/Settings/Tools.svelte index bb207ce7f..86a9abbd2 100644 --- a/src/lib/components/chat/Settings/Tools.svelte +++ b/src/lib/components/chat/Settings/Tools.svelte @@ -39,7 +39,7 @@ }); - + { updateHandler(); }} diff --git a/src/lib/components/chat/Settings/Tools/Connection.svelte b/src/lib/components/chat/Settings/Tools/Connection.svelte index 27dd1758c..4f9f7f1a2 100644 --- a/src/lib/components/chat/Settings/Tools/Connection.svelte +++ b/src/lib/components/chat/Settings/Tools/Connection.svelte @@ -12,6 +12,7 @@ export let onSubmit = () => {}; export let connection = null; + export let direct = false; let showConfigModal = false; let showDeleteConfirmDialog = false; @@ -42,9 +43,8 @@
From ee44383c839924797923b1cbfe58a6051ea7a694 Mon Sep 17 00:00:00 2001 From: Timothy Jaeryang Baek Date: Sat, 5 Apr 2025 04:12:57 -0600 Subject: [PATCH 19/37] refac --- backend/open_webui/routers/configs.py | 4 +++- src/lib/components/admin/Settings/Tools.svelte | 18 ++++++++++++++++-- 2 files changed, 19 insertions(+), 3 deletions(-) diff --git a/backend/open_webui/routers/configs.py b/backend/open_webui/routers/configs.py index e891b7aa8..44b2ef40c 100644 --- a/backend/open_webui/routers/configs.py +++ b/backend/open_webui/routers/configs.py @@ -100,7 +100,9 @@ async def set_tool_servers_config( form_data: ToolServersConfigForm, user=Depends(get_admin_user), ): - request.app.state.config.TOOL_SERVER_CONNECTIONS = form_data.TOOL_SERVER_CONNECTIONS + request.app.state.config.TOOL_SERVER_CONNECTIONS = [ + connection.model_dump() for connection in form_data.TOOL_SERVER_CONNECTIONS + ] request.app.state.TOOL_SERVERS = await get_tool_servers_data( request.app.state.config.TOOL_SERVER_CONNECTIONS diff --git a/src/lib/components/admin/Settings/Tools.svelte b/src/lib/components/admin/Settings/Tools.svelte index 7e1c6b03e..d59621be5 100644 --- a/src/lib/components/admin/Settings/Tools.svelte +++ b/src/lib/components/admin/Settings/Tools.svelte @@ -15,6 +15,7 @@ import Connection from '$lib/components/chat/Settings/Tools/Connection.svelte'; import AddServerModal from '$lib/components/AddServerModal.svelte'; + import { getToolServerConnections, setToolServerConnections } from '$lib/apis/configs'; export let saveSettings: Function; @@ -26,10 +27,23 @@ await updateHandler(); }; - const updateHandler = async () => {}; + const updateHandler = async () => { + const res = await setToolServerConnections(localStorage.token, { + TOOL_SERVER_CONNECTIONS: servers + }).catch((err) => { + toast.error($i18n.t('Failed to save connections')); + + return null; + }); + + if (res) { + toast.success($i18n.t('Connections saved successfully')); + } + }; onMount(async () => { - servers = []; + const res = await getToolServerConnections(localStorage.token); + servers = res.TOOL_SERVER_CONNECTIONS; }); From 9747a0e1f1d3612dd42ac0c50597760bc733b19e Mon Sep 17 00:00:00 2001 From: Timothy Jaeryang Baek Date: Sat, 5 Apr 2025 04:40:01 -0600 Subject: [PATCH 20/37] refac: tool servers --- backend/open_webui/routers/tools.py | 39 +++++++++- backend/open_webui/utils/tools.py | 73 ++++++++++--------- src/lib/components/AddServerModal.svelte | 21 +++++- .../chat/Settings/Tools/Connection.svelte | 2 +- 4 files changed, 95 insertions(+), 40 deletions(-) diff --git a/backend/open_webui/routers/tools.py b/backend/open_webui/routers/tools.py index ace517daa..8a98b4e20 100644 --- a/backend/open_webui/routers/tools.py +++ b/backend/open_webui/routers/tools.py @@ -1,6 +1,7 @@ import logging from pathlib import Path from typing import Optional +import time from open_webui.models.tools import ( ToolForm, @@ -43,10 +44,40 @@ async def get_tools(request: Request, user=Depends(get_verified_user)): request.app.state.config.TOOL_SERVER_CONNECTIONS ) - if user.role == "admin": - tools = Tools.get_tools() - else: - tools = Tools.get_tools_by_user_id(user.id, "read") + tools = Tools.get_tools() + for idx, server in enumerate(request.app.state.TOOL_SERVERS): + tools.append( + ToolUserResponse( + **{ + "id": f"server:{server['idx']}", + "user_id": f"server:{server['idx']}", + "name": server["openapi"] + .get("info", {}) + .get("title", "Tool Server"), + "meta": { + "description": server["openapi"] + .get("info", {}) + .get("description", ""), + }, + "access_control": request.app.state.config.TOOL_SERVER_CONNECTIONS[ + idx + ] + .get("config", {}) + .get("access_control", None), + "updated_at": int(time.time()), + "created_at": int(time.time()), + } + ) + ) + + if user.role != "admin": + tools = [ + tool + for tool in tools + if tool.user_id == user.id + or has_access(user.id, "read", tool.access_control) + ] + return tools diff --git a/backend/open_webui/utils/tools.py b/backend/open_webui/utils/tools.py index 425a95081..84def7060 100644 --- a/backend/open_webui/utils/tools.py +++ b/backend/open_webui/utils/tools.py @@ -5,7 +5,7 @@ import inspect import aiohttp import asyncio -from typing import Any, Awaitable, Callable, get_type_hints, Dict, List, Union +from typing import Any, Awaitable, Callable, get_type_hints, Dict, List, Union, Optional from functools import update_wrapper, partial @@ -348,40 +348,47 @@ async def get_tool_server_data(token: str, url: str) -> Dict[str, Any]: return data -async def get_tool_servers_data(servers: List[Dict[str, Any]]) -> List[Dict[str, Any]]: - enabled_servers = [ - server for server in servers if server.get("config", {}).get("enable") - ] - - urls = [ - ( - server, - f"{server.get('url')}/{server.get('path', 'openapi.json')}", - server.get("key", ""), - ) - for server in enabled_servers - ] - - tasks = [get_tool_server_data(token, url) for _, url, token in urls] - - results: List[Dict[str, Any]] = [] - - responses = await asyncio.gather(*tasks, return_exceptions=True) - - for (server, _, _), response in zip(urls, responses): - if isinstance(response, Exception): +async def get_tool_servers_data( + servers: List[Dict[str, Any]], session_token: Optional[str] = None +) -> List[Dict[str, Any]]: + # Prepare list of enabled servers along with their original index + server_entries = [] + for idx, server in enumerate(servers): + if server.get("config", {}).get("enable"): url_path = server.get("path", "openapi.json") full_url = f"{server.get('url')}/{url_path}" - print(f"Failed to connect to {full_url} OpenAPI tool server") - else: - results.append( - { - "url": server.get("url"), - "openapi": response["openapi"], - "info": response["info"], - "specs": response["specs"], - } - ) + + auth_type = server.get("auth_type", "bearer") + token = None + + if auth_type == "bearer": + token = server.get("key", "") + elif auth_type == "session": + token = session_token + server_entries.append((idx, server, full_url, token)) + + # Create async tasks to fetch data + tasks = [get_tool_server_data(token, url) for (_, _, url, token) in server_entries] + + # Execute tasks concurrently + responses = await asyncio.gather(*tasks, return_exceptions=True) + + # Build final results with index and server metadata + results = [] + for (idx, server, url, _), response in zip(server_entries, responses): + if isinstance(response, Exception): + print(f"Failed to connect to {url} OpenAPI tool server") + continue + + results.append( + { + "idx": idx, + "url": server.get("url"), + "openapi": response.get("openapi"), + "info": response.get("info"), + "specs": response.get("specs"), + } + ) return results diff --git a/src/lib/components/AddServerModal.svelte b/src/lib/components/AddServerModal.svelte index 4e8747da9..0ca1063d8 100644 --- a/src/lib/components/AddServerModal.svelte +++ b/src/lib/components/AddServerModal.svelte @@ -17,6 +17,7 @@ import Tags from './common/Tags.svelte'; import { getToolServerData } from '$lib/apis'; import { verifyToolServerConnection } from '$lib/apis/configs'; + import AccessControl from './workspace/common/AccessControl.svelte'; export let onSubmit: Function = () => {}; export let onDelete: Function = () => {}; @@ -34,6 +35,8 @@ let auth_type = 'bearer'; let key = ''; + let accessControl = null; + let enable = true; let loading = false; @@ -68,7 +71,8 @@ auth_type, key, config: { - enable: enable + enable: enable, + access_control: accessControl } }).catch((err) => { toast.error($i18n.t('Connection failed')); @@ -93,7 +97,8 @@ auth_type, key, config: { - enable: enable + enable: enable, + access_control: accessControl } }; @@ -108,6 +113,7 @@ auth_type = 'bearer'; enable = true; + accessControl = null; }; const init = () => { @@ -119,6 +125,7 @@ key = connection?.key ?? ''; enable = connection.config?.enable ?? true; + accessControl = connection.config?.access_control ?? null; } }; @@ -269,6 +276,16 @@
+ + {#if !direct} +
+ +
+
+ +
+
+ {/if}
diff --git a/src/lib/components/chat/Settings/Tools/Connection.svelte b/src/lib/components/chat/Settings/Tools/Connection.svelte index 4f9f7f1a2..5ca5a4521 100644 --- a/src/lib/components/chat/Settings/Tools/Connection.svelte +++ b/src/lib/components/chat/Settings/Tools/Connection.svelte @@ -20,7 +20,7 @@ { From c9e9ce931bb5af4c3945cd4b1841c762dcc3905e Mon Sep 17 00:00:00 2001 From: Timothy Jaeryang Baek Date: Sat, 5 Apr 2025 04:49:07 -0600 Subject: [PATCH 21/37] refac --- backend/open_webui/utils/middleware.py | 10 ++++++++-- backend/open_webui/utils/tools.py | 21 +++++++++++++++++++-- 2 files changed, 27 insertions(+), 4 deletions(-) diff --git a/backend/open_webui/utils/middleware.py b/backend/open_webui/utils/middleware.py index 72f1f30ce..93c8a5644 100644 --- a/backend/open_webui/utils/middleware.py +++ b/backend/open_webui/utils/middleware.py @@ -227,7 +227,9 @@ async def chat_completion_tools_handler( if isinstance(tool_result, str): tool = tools[tool_function_name] tool_id = tool.get("toolkit_id", "") - if tool.get("citation", False) or tool.get("direct", False): + if tool.get("metadata", {}).get("citation", False) or tool.get( + "direct", False + ): sources.append( { @@ -267,7 +269,11 @@ async def chat_completion_tools_handler( } ) - if tools[tool_function_name].get("file_handler", False): + if ( + tools[tool_function_name] + .get("metadata", {}) + .get("file_handler", False) + ): skip_files = True # check if "tool_calls" in result diff --git a/backend/open_webui/utils/tools.py b/backend/open_webui/utils/tools.py index 84def7060..842b9a1b5 100644 --- a/backend/open_webui/utils/tools.py +++ b/backend/open_webui/utils/tools.py @@ -47,6 +47,20 @@ def get_tools( for tool_id in tool_ids: tools = Tools.get_tool_by_id(tool_id) if tools is None: + + tool_dict = { + "spec": spec, + "callable": callable, + "toolkit_id": tool_id, + "pydantic_model": function_to_pydantic_model(callable), + # Misc info + "metadata": { + "file_handler": hasattr(module, "file_handler") + and module.file_handler, + "citation": hasattr(module, "citation") and module.citation, + }, + } + continue module = request.app.state.TOOLS.get(tool_id, None) @@ -97,8 +111,11 @@ def get_tools( "toolkit_id": tool_id, "pydantic_model": function_to_pydantic_model(callable), # Misc info - "file_handler": hasattr(module, "file_handler") and module.file_handler, - "citation": hasattr(module, "citation") and module.citation, + "metadata": { + "file_handler": hasattr(module, "file_handler") + and module.file_handler, + "citation": hasattr(module, "citation") and module.citation, + }, } # TODO: if collision, prepend toolkit name From 66db2e15154ec25d21b56ce16430714d8d91f8fd Mon Sep 17 00:00:00 2001 From: Timothy Jaeryang Baek Date: Sat, 5 Apr 2025 04:59:11 -0600 Subject: [PATCH 22/37] refac: tools removed UNNECESSARY CODE --- backend/open_webui/utils/tools.py | 149 ++++++++++++++++-------------- 1 file changed, 78 insertions(+), 71 deletions(-) diff --git a/backend/open_webui/utils/tools.py b/backend/open_webui/utils/tools.py index 842b9a1b5..c6d494e69 100644 --- a/backend/open_webui/utils/tools.py +++ b/backend/open_webui/utils/tools.py @@ -18,6 +18,8 @@ from open_webui.models.tools import Tools from open_webui.models.users import UserModel from open_webui.utils.plugin import load_tools_module_by_id +import copy + log = logging.getLogger(__name__) @@ -48,83 +50,88 @@ def get_tools( tools = Tools.get_tool_by_id(tool_id) if tools is None: - tool_dict = { - "spec": spec, - "callable": callable, - "toolkit_id": tool_id, - "pydantic_model": function_to_pydantic_model(callable), - # Misc info - "metadata": { - "file_handler": hasattr(module, "file_handler") - and module.file_handler, - "citation": hasattr(module, "citation") and module.citation, - }, - } + if tool_id.startswith("server:"): + server_idx = int(tool_id.split(":")[1]) + tool_server_data = request.app.state.TOOL_SERVERS[server_idx] - continue + tool_dict = { + "spec": spec, + "callable": callable, + "toolkit_id": tool_id, + # Misc info + "metadata": { + "file_handler": hasattr(module, "file_handler") + and module.file_handler, + "citation": hasattr(module, "citation") and module.citation, + }, + } - module = request.app.state.TOOLS.get(tool_id, None) - if module is None: - module, _ = load_tools_module_by_id(tool_id) - request.app.state.TOOLS[tool_id] = module + else: - extra_params["__id__"] = tool_id - if hasattr(module, "valves") and hasattr(module, "Valves"): - valves = Tools.get_tool_valves_by_id(tool_id) or {} - module.valves = module.Valves(**valves) + module = request.app.state.TOOLS.get(tool_id, None) + if module is None: + module, _ = load_tools_module_by_id(tool_id) + request.app.state.TOOLS[tool_id] = module - if hasattr(module, "UserValves"): - extra_params["__user__"]["valves"] = module.UserValves( # type: ignore - **Tools.get_user_valves_by_id_and_user_id(tool_id, user.id) - ) + extra_params["__id__"] = tool_id + if hasattr(module, "valves") and hasattr(module, "Valves"): + valves = Tools.get_tool_valves_by_id(tool_id) or {} + module.valves = module.Valves(**valves) - for spec in tools.specs: - # TODO: Fix hack for OpenAI API - # Some times breaks OpenAI but others don't. Leaving the comment - for val in spec.get("parameters", {}).get("properties", {}).values(): - if val["type"] == "str": - val["type"] = "string" + if hasattr(module, "UserValves"): + extra_params["__user__"]["valves"] = module.UserValves( # type: ignore + **Tools.get_user_valves_by_id_and_user_id(tool_id, user.id) + ) - # Remove internal parameters - spec["parameters"]["properties"] = { - key: val - for key, val in spec["parameters"]["properties"].items() - if not key.startswith("__") - } + for spec in tools.specs: + # TODO: Fix hack for OpenAI API + # Some times breaks OpenAI but others don't. Leaving the comment + for val in spec.get("parameters", {}).get("properties", {}).values(): + if val["type"] == "str": + val["type"] = "string" - function_name = spec["name"] + # Remove internal parameters + spec["parameters"]["properties"] = { + key: val + for key, val in spec["parameters"]["properties"].items() + if not key.startswith("__") + } - # convert to function that takes only model params and inserts custom params - original_func = getattr(module, function_name) - callable = apply_extra_params_to_tool_function(original_func, extra_params) + function_name = spec["name"] - if callable.__doc__ and callable.__doc__.strip() != "": - s = re.split(":(param|return)", callable.__doc__, 1) - spec["description"] = s[0] - else: - spec["description"] = function_name + # convert to function that takes only model params and inserts custom params + original_func = getattr(module, function_name) + callable = apply_extra_params_to_tool_function( + original_func, extra_params + ) - # TODO: This needs to be a pydantic model - tool_dict = { - "spec": spec, - "callable": callable, - "toolkit_id": tool_id, - "pydantic_model": function_to_pydantic_model(callable), - # Misc info - "metadata": { - "file_handler": hasattr(module, "file_handler") - and module.file_handler, - "citation": hasattr(module, "citation") and module.citation, - }, - } + if callable.__doc__ and callable.__doc__.strip() != "": + s = re.split(":(param|return)", callable.__doc__, 1) + spec["description"] = s[0] + else: + spec["description"] = function_name - # TODO: if collision, prepend toolkit name - if function_name in tools_dict: - log.warning(f"Tool {function_name} already exists in another tools!") - log.warning(f"Collision between {tools} and {tool_id}.") - log.warning(f"Discarding {tools}.{function_name}") - else: - tools_dict[function_name] = tool_dict + tool_dict = { + "spec": spec, + "callable": callable, + "toolkit_id": tool_id, + # Misc info + "metadata": { + "file_handler": hasattr(module, "file_handler") + and module.file_handler, + "citation": hasattr(module, "citation") and module.citation, + }, + } + + # TODO: if collision, prepend toolkit name + if function_name in tools_dict: + log.warning( + f"Tool {function_name} already exists in another tools!" + ) + log.warning(f"Collision between {tools} and {tool_id}.") + log.warning(f"Discarding {tools}.{function_name}") + else: + tools_dict[function_name] = tool_dict return tools_dict @@ -233,11 +240,11 @@ def get_callable_attributes(tool: object) -> list[Callable]: def get_tools_specs(tool_class: object) -> list[dict]: function_list = get_callable_attributes(tool_class) - models = map(function_to_pydantic_model, function_list) - return [convert_to_openai_function(tool) for tool in models] - - -import copy + function_model_list = map(function_to_pydantic_model, function_list) + return [ + convert_to_openai_function(function_model) + for function_model in function_model_list + ] def resolve_schema(schema, components): From 93bb77ede321f64a87135e01ddcd292ff6156910 Mon Sep 17 00:00:00 2001 From: Timothy Jaeryang Baek Date: Sat, 5 Apr 2025 05:03:15 -0600 Subject: [PATCH 23/37] refac --- backend/open_webui/utils/middleware.py | 2 +- backend/open_webui/utils/plugin.py | 12 ++++++------ backend/open_webui/utils/tools.py | 24 ++++++++++++------------ 3 files changed, 19 insertions(+), 19 deletions(-) diff --git a/backend/open_webui/utils/middleware.py b/backend/open_webui/utils/middleware.py index 93c8a5644..c0ab41828 100644 --- a/backend/open_webui/utils/middleware.py +++ b/backend/open_webui/utils/middleware.py @@ -226,7 +226,7 @@ async def chat_completion_tools_handler( if isinstance(tool_result, str): tool = tools[tool_function_name] - tool_id = tool.get("toolkit_id", "") + tool_id = tool.get("tool_id", "") if tool.get("metadata", {}).get("citation", False) or tool.get( "direct", False ): diff --git a/backend/open_webui/utils/plugin.py b/backend/open_webui/utils/plugin.py index 29a4d0cce..f0746da77 100644 --- a/backend/open_webui/utils/plugin.py +++ b/backend/open_webui/utils/plugin.py @@ -68,23 +68,23 @@ def replace_imports(content): return content -def load_tools_module_by_id(toolkit_id, content=None): +def load_tools_module_by_id(tool_id, content=None): if content is None: - tool = Tools.get_tool_by_id(toolkit_id) + tool = Tools.get_tool_by_id(tool_id) if not tool: - raise Exception(f"Toolkit not found: {toolkit_id}") + raise Exception(f"Toolkit not found: {tool_id}") content = tool.content content = replace_imports(content) - Tools.update_tool_by_id(toolkit_id, {"content": content}) + Tools.update_tool_by_id(tool_id, {"content": content}) else: frontmatter = extract_frontmatter(content) # Install required packages found within the frontmatter install_frontmatter_requirements(frontmatter.get("requirements", "")) - module_name = f"tool_{toolkit_id}" + module_name = f"tool_{tool_id}" module = types.ModuleType(module_name) sys.modules[module_name] = module @@ -108,7 +108,7 @@ def load_tools_module_by_id(toolkit_id, content=None): else: raise Exception("No Tools class found in the module") except Exception as e: - log.error(f"Error loading module: {toolkit_id}: {e}") + log.error(f"Error loading module: {tool_id}: {e}") del sys.modules[module_name] # Clean up raise e finally: diff --git a/backend/open_webui/utils/tools.py b/backend/open_webui/utils/tools.py index c6d494e69..c824ceec6 100644 --- a/backend/open_webui/utils/tools.py +++ b/backend/open_webui/utils/tools.py @@ -40,15 +40,14 @@ def apply_extra_params_to_tool_function( return new_function -# Mutation on extra_params def get_tools( request: Request, tool_ids: list[str], user: UserModel, extra_params: dict ) -> dict[str, dict]: tools_dict = {} for tool_id in tool_ids: - tools = Tools.get_tool_by_id(tool_id) - if tools is None: + tool = Tools.get_tool_by_id(tool_id) + if tool is None: if tool_id.startswith("server:"): server_idx = int(tool_id.split(":")[1]) @@ -57,7 +56,7 @@ def get_tools( tool_dict = { "spec": spec, "callable": callable, - "toolkit_id": tool_id, + "tool_id": tool_id, # Misc info "metadata": { "file_handler": hasattr(module, "file_handler") @@ -65,9 +64,9 @@ def get_tools( "citation": hasattr(module, "citation") and module.citation, }, } - + else: + continue else: - module = request.app.state.TOOLS.get(tool_id, None) if module is None: module, _ = load_tools_module_by_id(tool_id) @@ -83,7 +82,7 @@ def get_tools( **Tools.get_user_valves_by_id_and_user_id(tool_id, user.id) ) - for spec in tools.specs: + for spec in tool.specs: # TODO: Fix hack for OpenAI API # Some times breaks OpenAI but others don't. Leaving the comment for val in spec.get("parameters", {}).get("properties", {}).values(): @@ -114,7 +113,7 @@ def get_tools( tool_dict = { "spec": spec, "callable": callable, - "toolkit_id": tool_id, + "tool_id": tool_id, # Misc info "metadata": { "file_handler": hasattr(module, "file_handler") @@ -128,8 +127,8 @@ def get_tools( log.warning( f"Tool {function_name} already exists in another tools!" ) - log.warning(f"Collision between {tools} and {tool_id}.") - log.warning(f"Discarding {tools}.{function_name}") + log.warning(f"Collision between {tool} and {tool_id}.") + log.warning(f"Discarding {tool}.{function_name}") else: tools_dict[function_name] = tool_dict @@ -239,8 +238,9 @@ def get_callable_attributes(tool: object) -> list[Callable]: def get_tools_specs(tool_class: object) -> list[dict]: - function_list = get_callable_attributes(tool_class) - function_model_list = map(function_to_pydantic_model, function_list) + function_model_list = map( + function_to_pydantic_model, get_callable_attributes(tool_class) + ) return [ convert_to_openai_function(function_model) for function_model in function_model_list From e570a98bf76288c09d51be3d684b26ed455d4287 Mon Sep 17 00:00:00 2001 From: Timothy Jaeryang Baek Date: Sat, 5 Apr 2025 05:31:22 -0600 Subject: [PATCH 24/37] refac: substandard codebase overhauled --- backend/open_webui/utils/tools.py | 87 ++++++++++++++++++++----------- 1 file changed, 58 insertions(+), 29 deletions(-) diff --git a/backend/open_webui/utils/tools.py b/backend/open_webui/utils/tools.py index c824ceec6..ffaa59bfd 100644 --- a/backend/open_webui/utils/tools.py +++ b/backend/open_webui/utils/tools.py @@ -23,21 +23,23 @@ import copy log = logging.getLogger(__name__) -def apply_extra_params_to_tool_function( +def get_async_tool_function_and_apply_extra_params( function: Callable, extra_params: dict ) -> Callable[..., Awaitable]: sig = inspect.signature(function) extra_params = {k: v for k, v in extra_params.items() if k in sig.parameters} partial_func = partial(function, **extra_params) + if inspect.iscoroutinefunction(function): update_wrapper(partial_func, function) return partial_func + else: + # Make it a coroutine function + async def new_function(*args, **kwargs): + return partial_func(*args, **kwargs) - async def new_function(*args, **kwargs): - return partial_func(*args, **kwargs) - - update_wrapper(new_function, function) - return new_function + update_wrapper(new_function, function) + return new_function def get_tools( @@ -48,22 +50,49 @@ def get_tools( for tool_id in tool_ids: tool = Tools.get_tool_by_id(tool_id) if tool is None: - if tool_id.startswith("server:"): server_idx = int(tool_id.split(":")[1]) + tool_server_connection = ( + request.app.state.config.TOOL_SERVER_CONNECTIONS[server_idx] + ) tool_server_data = request.app.state.TOOL_SERVERS[server_idx] + specs = tool_server_data.get("specs", []) - tool_dict = { - "spec": spec, - "callable": callable, - "tool_id": tool_id, - # Misc info - "metadata": { - "file_handler": hasattr(module, "file_handler") - and module.file_handler, - "citation": hasattr(module, "citation") and module.citation, - }, - } + for spec in specs: + function_name = spec["name"] + + auth_type = tool_server_connection.get("auth_type", "bearer") + token = None + + if auth_type == "bearer": + token = tool_server_connection.get("key", "") + elif auth_type == "session": + token = request.state.token.credentials + + callable = get_async_tool_function_and_apply_extra_params( + execute_tool_server, + { + "token": token, + "url": tool_server_data["url"], + "name": function_name, + "server_data": tool_server_data, + }, + ) + + tool_dict = { + "tool_id": tool_id, + "callable": callable, + "spec": spec, + } + + # TODO: if collision, prepend toolkit name + if function_name in tools_dict: + log.warning( + f"Tool {function_name} already exists in another tools!" + ) + log.warning(f"Discarding {tool_id}.{function_name}") + else: + tools_dict[function_name] = tool_dict else: continue else: @@ -73,10 +102,11 @@ def get_tools( request.app.state.TOOLS[tool_id] = module extra_params["__id__"] = tool_id + + # Set valves for the tool if hasattr(module, "valves") and hasattr(module, "Valves"): valves = Tools.get_tool_valves_by_id(tool_id) or {} module.valves = module.Valves(**valves) - if hasattr(module, "UserValves"): extra_params["__user__"]["valves"] = module.UserValves( # type: ignore **Tools.get_user_valves_by_id_and_user_id(tool_id, user.id) @@ -89,21 +119,21 @@ def get_tools( if val["type"] == "str": val["type"] = "string" - # Remove internal parameters + # Remove internal reserved parameters (e.g. __id__, __user__) spec["parameters"]["properties"] = { key: val for key, val in spec["parameters"]["properties"].items() if not key.startswith("__") } - function_name = spec["name"] - # convert to function that takes only model params and inserts custom params - original_func = getattr(module, function_name) - callable = apply_extra_params_to_tool_function( - original_func, extra_params + function_name = spec["name"] + tool_function = getattr(module, function_name) + callable = get_async_tool_function_and_apply_extra_params( + tool_function, extra_params ) + # TODO: Support Pydantic models as parameters if callable.__doc__ and callable.__doc__.strip() != "": s = re.split(":(param|return)", callable.__doc__, 1) spec["description"] = s[0] @@ -111,9 +141,9 @@ def get_tools( spec["description"] = function_name tool_dict = { - "spec": spec, - "callable": callable, "tool_id": tool_id, + "callable": callable, + "spec": spec, # Misc info "metadata": { "file_handler": hasattr(module, "file_handler") @@ -127,8 +157,7 @@ def get_tools( log.warning( f"Tool {function_name} already exists in another tools!" ) - log.warning(f"Collision between {tool} and {tool_id}.") - log.warning(f"Discarding {tool}.{function_name}") + log.warning(f"Discarding {tool_id}.{function_name}") else: tools_dict[function_name] = tool_dict From 56dc7c5640d5c7cbb48a047a50df7ab8d8c2e762 Mon Sep 17 00:00:00 2001 From: Timothy Jaeryang Baek Date: Sat, 5 Apr 2025 05:38:46 -0600 Subject: [PATCH 25/37] refac --- backend/open_webui/utils/middleware.py | 3 ++- backend/open_webui/utils/tools.py | 18 +++++++++++------- 2 files changed, 13 insertions(+), 8 deletions(-) diff --git a/backend/open_webui/utils/middleware.py b/backend/open_webui/utils/middleware.py index c0ab41828..17037083f 100644 --- a/backend/open_webui/utils/middleware.py +++ b/backend/open_webui/utils/middleware.py @@ -1912,7 +1912,8 @@ async def process_chat_response( tool_result_files = [] if isinstance(tool_result, list): for item in tool_result: - if item.startswith("data:"): + # check if string + if isinstance(item, str) and item.startswith("data:"): tool_result_files.append(item) tool_result.remove(item) diff --git a/backend/open_webui/utils/tools.py b/backend/open_webui/utils/tools.py index ffaa59bfd..4746450f5 100644 --- a/backend/open_webui/utils/tools.py +++ b/backend/open_webui/utils/tools.py @@ -69,14 +69,18 @@ def get_tools( elif auth_type == "session": token = request.state.token.credentials + async def tool_function(**args): + return await execute_tool_server( + token=token, + url=tool_server_data["url"], + name=function_name, + params=args, + server_data=tool_server_data, + ) + callable = get_async_tool_function_and_apply_extra_params( - execute_tool_server, - { - "token": token, - "url": tool_server_data["url"], - "name": function_name, - "server_data": tool_server_data, - }, + tool_function, + {}, ) tool_dict = { From ae484e8edf9f77e021ab501861b0d21a565a663c Mon Sep 17 00:00:00 2001 From: Timothy Jaeryang Baek Date: Sat, 5 Apr 2025 05:45:32 -0600 Subject: [PATCH 26/37] refac --- backend/open_webui/utils/tools.py | 26 ++++++++++++++++++-------- 1 file changed, 18 insertions(+), 8 deletions(-) diff --git a/backend/open_webui/utils/tools.py b/backend/open_webui/utils/tools.py index 4746450f5..60311a690 100644 --- a/backend/open_webui/utils/tools.py +++ b/backend/open_webui/utils/tools.py @@ -69,14 +69,24 @@ def get_tools( elif auth_type == "session": token = request.state.token.credentials - async def tool_function(**args): - return await execute_tool_server( - token=token, - url=tool_server_data["url"], - name=function_name, - params=args, - server_data=tool_server_data, - ) + def make_tool_function(function_name, token, tool_server_data): + async def tool_function(**kwargs): + print( + f"Executing tool function {function_name} with params: {kwargs}" + ) + return await execute_tool_server( + token=token, + url=tool_server_data["url"], + name=function_name, + params=kwargs, + server_data=tool_server_data, + ) + + return tool_function + + tool_function = make_tool_function( + function_name, token, tool_server_data + ) callable = get_async_tool_function_and_apply_extra_params( tool_function, From 807b2084182662a9d42840d3f2fdbaf314405edb Mon Sep 17 00:00:00 2001 From: Timothy Jaeryang Baek Date: Sat, 5 Apr 2025 05:55:56 -0600 Subject: [PATCH 27/37] refac --- backend/open_webui/utils/middleware.py | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/backend/open_webui/utils/middleware.py b/backend/open_webui/utils/middleware.py index 17037083f..62f43a702 100644 --- a/backend/open_webui/utils/middleware.py +++ b/backend/open_webui/utils/middleware.py @@ -221,6 +221,14 @@ async def chat_completion_tools_handler( except Exception as e: tool_result = str(e) + tool_result_files = [] + if isinstance(tool_result, list): + for item in tool_result: + # check if string + if isinstance(item, str) and item.startswith("data:"): + tool_result_files.append(item) + tool_result.remove(item) + if isinstance(tool_result, dict) or isinstance(tool_result, list): tool_result = json.dumps(tool_result, indent=2) @@ -240,7 +248,7 @@ async def chat_completion_tools_handler( else f"{tool_function_name}" ), }, - "document": [tool_result], + "document": [tool_result, *tool_result_files], "metadata": [ { "source": ( @@ -256,7 +264,7 @@ async def chat_completion_tools_handler( sources.append( { "source": {}, - "document": [tool_result], + "document": [tool_result, *tool_result_files], "metadata": [ { "source": ( From fe4f760b4a3aea8184ee7d397c52d267b19cb22d Mon Sep 17 00:00:00 2001 From: Timothy Jaeryang Baek Date: Sat, 5 Apr 2025 05:57:25 -0600 Subject: [PATCH 28/37] refac --- src/lib/components/chat/Chat.svelte | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/lib/components/chat/Chat.svelte b/src/lib/components/chat/Chat.svelte index 5d7a98866..2b378271d 100644 --- a/src/lib/components/chat/Chat.svelte +++ b/src/lib/components/chat/Chat.svelte @@ -1322,6 +1322,10 @@ history.messages[messages.at(-1).id].childrenIds.push(userMessageId); } + if (autoScroll) { + scrollToBottom(); + } + // focus on chat input const chatInput = document.getElementById('chat-input'); chatInput?.focus(); From 84788b73ce99543513fea3c8021f7eb0db6a94e1 Mon Sep 17 00:00:00 2001 From: Kylapaallikko Date: Sat, 5 Apr 2025 16:37:54 +0300 Subject: [PATCH 29/37] Update translation.json --- src/lib/i18n/locales/fi-FI/translation.json | 140 ++++++++++---------- 1 file changed, 70 insertions(+), 70 deletions(-) diff --git a/src/lib/i18n/locales/fi-FI/translation.json b/src/lib/i18n/locales/fi-FI/translation.json index 1c1f22f44..9a04aa0ea 100644 --- a/src/lib/i18n/locales/fi-FI/translation.json +++ b/src/lib/i18n/locales/fi-FI/translation.json @@ -4,9 +4,9 @@ "(e.g. `sh webui.sh --api --api-auth username_password`)": "(esim. `sh webui.sh --api --api-auth username_password`)", "(e.g. `sh webui.sh --api`)": "(esim. `sh webui.sh --api`)", "(latest)": "(uusin)", - "(Ollama)": "", + "(Ollama)": "(Ollama)", "{{ models }}": "{{ mallit }}", - "{{COUNT}} Available Tools": "", + "{{COUNT}} Available Tools": "{{COUNT}} työkalua saatavilla", "{{COUNT}} hidden lines": "{{COUNT}} piilotettua riviä", "{{COUNT}} Replies": "{{COUNT}} vastausta", "{{user}}'s Chats": "{{user}}:n keskustelut", @@ -16,7 +16,7 @@ "A task model is used when performing tasks such as generating titles for chats and web search queries": "Tehtävämallia käytetään tehtävien suorittamiseen, kuten otsikoiden luomiseen keskusteluille ja verkkohakukyselyille", "a user": "käyttäjä", "About": "Tietoja", - "Accept autocomplete generation / Jump to prompt variable": "", + "Accept autocomplete generation / Jump to prompt variable": "Hyväksy automaattinen täyttö / Siirry kehotteen muuttujaan", "Access": "Pääsy", "Access Control": "Käyttöoikeuksien hallinta", "Accessible to all users": "Käytettävissä kaikille käyttäjille", @@ -31,7 +31,7 @@ "Add a model ID": "Lisää mallitunnus", "Add a short description about what this model does": "Lisää lyhyt kuvaus siitä, mitä tämä malli tekee", "Add a tag": "Lisää tagi", - "Add Arena Model": "Lisää Arena-malli", + "Add Arena Model": "Lisää Areena-malli", "Add Connection": "Lisää yhteys", "Add Content": "Lisää sisältöä", "Add content here": "Lisää sisältöä tähän", @@ -70,8 +70,8 @@ "Already have an account?": "Onko sinulla jo tili?", "Alternative to the top_p, and aims to ensure a balance of quality and variety. The parameter p represents the minimum probability for a token to be considered, relative to the probability of the most likely token. For example, with p=0.05 and the most likely token having a probability of 0.9, logits with a value less than 0.045 are filtered out.": "", "Always": "Aina", - "Always Collapse Code Blocks": "", - "Always Expand Details": "", + "Always Collapse Code Blocks": "Pienennä aina koodilohkot", + "Always Expand Details": "Laajenna aina tiedot", "Amazing": "Hämmästyttävä", "an assistant": "avustaja", "Analyzed": "Analysoitu", @@ -79,7 +79,7 @@ "and": "ja", "and {{COUNT}} more": "ja {{COUNT}} muuta", "and create a new shared link.": "ja luo uusi jaettu linkki.", - "API Base URL": "APIn perus-URL", + "API Base URL": "API:n verkko-osoite", "API Key": "API-avain", "API Key created.": "API-avain luotu.", "API Key Endpoint Restrictions": "API-avaimen päätepiste rajoitukset", @@ -92,7 +92,7 @@ "Archive All Chats": "Arkistoi kaikki keskustelut", "Archived Chats": "Arkistoidut keskustelut", "archived-chat-export": "arkistoitu-keskustelu-vienti", - "Are you sure you want to clear all memories? This action cannot be undone.": "", + "Are you sure you want to clear all memories? This action cannot be undone.": "Haluatko varmasti tyhjentää kaikki muistot? Tätä toimintoa ei voi peruuttaa.", "Are you sure you want to delete this channel?": "Haluatko varmasti poistaa tämän kanavan?", "Are you sure you want to delete this message?": "Haluatko varmasti poistaa tämän viestin?", "Are you sure you want to unarchive all archived chats?": "Haluatko varmasti purkaa kaikkien arkistoitujen keskustelujen arkistoinnin?", @@ -108,7 +108,7 @@ "Attribute for Username": "Käyttäjänimi-määritämä", "Audio": "Ääni", "August": "elokuu", - "Auth": "", + "Auth": "Todennus", "Authenticate": "Todentaa", "Authentication": "Todennus", "Auto-Copy Response to Clipboard": "Kopioi vastaus automaattisesti leikepöydälle", @@ -117,10 +117,10 @@ "Autocomplete Generation Input Max Length": "Automaattisen täydennyksen syötteen enimmäispituus", "Automatic1111": "Automatic1111", "AUTOMATIC1111 Api Auth String": "AUTOMATIC1111 API:n todennusmerkkijono", - "AUTOMATIC1111 Base URL": "AUTOMATIC1111-perus-URL", - "AUTOMATIC1111 Base URL is required.": "AUTOMATIC1111-perus-URL vaaditaan.", + "AUTOMATIC1111 Base URL": "AUTOMATIC1111 verkko-osoite", + "AUTOMATIC1111 Base URL is required.": "AUTOMATIC1111 verkko-osoite vaaditaan.", "Available list": "Käytettävissä oleva luettelo", - "Available Tools": "", + "Available Tools": "Käytettävissä olevat työkalut", "available!": "saatavilla!", "Awful": "Kauhea", "Azure AI Speech": "Azure AI Speech", @@ -205,8 +205,8 @@ "Color": "Väri", "ComfyUI": "ComfyUI", "ComfyUI API Key": "ComfyUI API -avain", - "ComfyUI Base URL": "ComfyUI-perus-URL", - "ComfyUI Base URL is required.": "ComfyUI-perus-URL vaaditaan.", + "ComfyUI Base URL": "ComfyUI verkko-osoite", + "ComfyUI Base URL is required.": "ComfyUI verkko-osoite vaaditaan.", "ComfyUI Workflow": "ComfyUI-työnkulku", "ComfyUI Workflow Nodes": "ComfyUI-työnkulun solmut", "Command": "Komento", @@ -217,8 +217,8 @@ "Confirm Password": "Vahvista salasana", "Confirm your action": "Vahvista toimintasi", "Confirm your new password": "Vahvista uusi salasanasi", - "Connect to your own OpenAI compatible API endpoints.": "Yhdistä oma OpenAI yhteensopiva API päätepiste.", - "Connect to your own OpenAPI compatible external tool servers.": "", + "Connect to your own OpenAI compatible API endpoints.": "Yhdistä omat OpenAI yhteensopivat API päätepisteet.", + "Connect to your own OpenAPI compatible external tool servers.": "Yhdistä omat ulkopuoliset OpenAPI yhteensopivat työkalu palvelimet.", "Connections": "Yhteydet", "Constrains effort on reasoning for reasoning models. Only applicable to reasoning models from specific providers that support reasoning effort.": "", "Contact Admin for WebUI Access": "Ota yhteyttä ylläpitäjään WebUI-käyttöä varten", @@ -232,7 +232,7 @@ "Control how message text is split for TTS requests. 'Punctuation' splits into sentences, 'paragraphs' splits into paragraphs, and 'none' keeps the message as a single string.": "Säädä, miten viestin teksti jaetaan puhesynteesipyyntöjä varten. 'Välimerkit' jakaa lauseisiin, 'kappaleet' jakaa kappaleisiin ja 'ei mitään' pitää viestin yhtenä merkkijonona.", "Control the repetition of token sequences in the generated text. A higher value (e.g., 1.5) will penalize repetitions more strongly, while a lower value (e.g., 1.1) will be more lenient. At 1, it is disabled.": "", "Controls": "Ohjaimet", - "Controls the balance between coherence and diversity of the output. A lower value will result in more focused and coherent text.": "", + "Controls the balance between coherence and diversity of the output. A lower value will result in more focused and coherent text.": "Kontrolloi yhtenäisyyden ja monimuotoisuuden tasapainoa tuloksessa. Pienempi arvo tuottaa kohdennetumman ja johdonmukaisemman tekstin.", "Copied": "Kopioitu", "Copied shared chat URL to clipboard!": "Jaettu keskustelulinkki kopioitu leikepöydälle!", "Copied to clipboard": "Kopioitu leikepöydälle", @@ -277,7 +277,7 @@ "Default Prompt Suggestions": "Oletuskehotteiden ehdotukset", "Default to 389 or 636 if TLS is enabled": "Oletus 389 tai 636, jos TLS on käytössä", "Default to ALL": "Oletus KAIKKI", - "Default to segmented retrieval for focused and relevant content extraction, this is recommended for most cases.": "", + "Default to segmented retrieval for focused and relevant content extraction, this is recommended for most cases.": "Segmentoitu haku on oletuksena kohdennettua ja relevanttia sisällön poimimista varten. Tätä suositellaan useimmissa tapauksissa.", "Default User Role": "Oletuskäyttäjärooli", "Delete": "Poista", "Delete a model": "Poista malli", @@ -300,11 +300,11 @@ "Describe your knowledge base and objectives": "Kuvaa tietokantasi ja tavoitteesi", "Description": "Kuvaus", "Didn't fully follow instructions": "Ei noudattanut ohjeita täysin", - "Direct": "", + "Direct": "Suora", "Direct Connections": "Suorat yhteydet", "Direct Connections allow users to connect to their own OpenAI compatible API endpoints.": "Suorat yhteydet mahdollistavat käyttäjien yhdistää omia OpenAI-yhteensopivia API-päätepisteitä.", "Direct Connections settings updated": "Suorien yhteyksien asetukset päivitetty", - "Direct Tool Servers": "", + "Direct Tool Servers": "Suorat työkalu palvelimet", "Disabled": "Ei käytössä", "Discover a function": "Löydä toiminto", "Discover a model": "Tutustu malliin", @@ -324,11 +324,11 @@ "Dive into knowledge": "Uppoudu tietoon", "Do not install functions from sources you do not fully trust.": "Älä asenna toimintoja lähteistä, joihin et luota täysin.", "Do not install tools from sources you do not fully trust.": "Älä asenna työkaluja lähteistä, joihin et luota täysin.", - "Docling": "", - "Docling Server URL required.": "", + "Docling": "Docling", + "Docling Server URL required.": "Docling palvelimen verkko-osoite vaaditaan.", "Document": "Asiakirja", - "Document Intelligence": "", - "Document Intelligence endpoint and key required.": "", + "Document Intelligence": "Asiakirja tiedustelu", + "Document Intelligence endpoint and key required.": "Asiakirja tiedustelun päätepiste ja avain vaaditaan.", "Documentation": "Dokumentaatio", "Documents": "Asiakirjat", "does not make any external connections, and your data stays securely on your locally hosted server.": "ei tee ulkoisia yhteyksiä, ja tietosi pysyvät turvallisesti paikallisesti isännöidyllä palvelimellasi.", @@ -346,7 +346,7 @@ "Draw": "Piirros", "Drop any files here to add to the conversation": "Pudota tiedostoja tähän lisätäksesi ne keskusteluun", "e.g. '30s','10m'. Valid time units are 's', 'm', 'h'.": "esim. '30s', '10m'. Kelpoiset aikayksiköt ovat 's', 'm', 'h'.", - "e.g. \"json\" or a JSON schema": "", + "e.g. \"json\" or a JSON schema": "esim. \"json\" tai JSON kaava", "e.g. 60": "esim. 60", "e.g. A filter to remove profanity from text": "esim. suodatin, joka poistaa kirosanoja tekstistä", "e.g. My Filter": "esim. Oma suodatin", @@ -381,7 +381,7 @@ "Enable Mirostat sampling for controlling perplexity.": "", "Enable New Sign Ups": "Salli uudet rekisteröitymiset", "Enabled": "Käytössä", - "Enforce Temporary Chat": "", + "Enforce Temporary Chat": "Pakota väliaikaiset keskustelut", "Ensure your CSV file includes 4 columns in this order: Name, Email, Password, Role.": "Varmista, että CSV-tiedostossasi on 4 saraketta tässä järjestyksessä: Nimi, Sähköposti, Salasana, Rooli.", "Enter {{role}} message here": "Kirjoita {{role}}-viesti tähän", "Enter a detail about yourself for your LLMs to recall": "Kirjoita yksityiskohta itsestäsi, jonka LLM-ohjelmat voivat muistaa", @@ -398,9 +398,9 @@ "Enter Chunk Size": "Syötä osien koko", "Enter comma-seperated \"token:bias_value\" pairs (example: 5432:100, 413:-100)": "", "Enter description": "Kirjoita kuvaus", - "Enter Docling Server URL": "", - "Enter Document Intelligence Endpoint": "", - "Enter Document Intelligence Key": "", + "Enter Docling Server URL": "Kirjoita Docling palvelimen verkko-osoite", + "Enter Document Intelligence Endpoint": "Kirjoita asiakirja tiedustelun päätepiste", + "Enter Document Intelligence Key": "Kirjoiuta asiakirja tiedustelun avain", "Enter domains separated by commas (e.g., example.com,site.org)": "Verkko-osoitteet erotetaan pilkulla (esim. esimerkki.com,sivu.org)", "Enter Exa API Key": "Kirjoita Exa API -avain", "Enter Github Raw URL": "Kirjoita Github Raw -verkko-osoite", @@ -414,7 +414,7 @@ "Enter Kagi Search API Key": "Kirjoita Kagi Search API -avain", "Enter Key Behavior": "Enter näppäimen käyttäytyminen", "Enter language codes": "Kirjoita kielikoodit", - "Enter Mistral API Key": "", + "Enter Mistral API Key": "Kirjoita Mistral API-avain", "Enter Model ID": "Kirjoita mallitunnus", "Enter model tag (e.g. {{modelTag}})": "Kirjoita mallitagi (esim. {{modelTag}})", "Enter Mojeek Search API Key": "Kirjoita Mojeek Search API -avain", @@ -439,21 +439,21 @@ "Enter server port": "Kirjoita palvelimen portti", "Enter stop sequence": "Kirjoita lopetussekvenssi", "Enter system prompt": "Kirjoita järjestelmäkehote", - "Enter system prompt here": "", + "Enter system prompt here": "Kirjoita järjestelmäkehote tähän", "Enter Tavily API Key": "Kirjoita Tavily API -avain", "Enter the public URL of your WebUI. This URL will be used to generate links in the notifications.": "Kirjoita julkinen WebUI verkko-osoitteesi. Verkko-osoitetta käytetään osoitteiden luontiin ilmoituksissa.", "Enter Tika Server URL": "Kirjoita Tika Server URL", "Enter timeout in seconds": "Aseta aikakatkaisu sekunneissa", "Enter to Send": "Enter lähettääksesi", "Enter Top K": "Kirjoita Top K", - "Enter Top K Reranker": "", + "Enter Top K Reranker": "Kirjoita Top K uudelleen sijoittaja", "Enter URL (e.g. http://127.0.0.1:7860/)": "Kirjoita verkko-osoite (esim. http://127.0.0.1:7860/)", "Enter URL (e.g. http://localhost:11434)": "Kirjoita verkko-osoite (esim. http://localhost:11434)", "Enter your current password": "Kirjoita nykyinen salasanasi", "Enter Your Email": "Kirjoita sähköpostiosoitteesi", "Enter Your Full Name": "Kirjoita koko nimesi", "Enter your message": "Kirjoita viestisi", - "Enter your name": "", + "Enter your name": "Kirjoita nimesi tähän", "Enter your new password": "Kirjoita uusi salasanasi", "Enter Your Password": "Kirjoita salasanasi", "Enter Your Role": "Kirjoita roolisi", @@ -473,7 +473,7 @@ "Exceeded the number of seats in your license. Please contact support to increase the number of seats.": "", "Exclude": "Jätä pois", "Execute code for analysis": "Suorita koodi analysointia varten", - "Executing **{{NAME}}**...": "", + "Executing **{{NAME}}**...": "Suoritetaan **{{NAME}}**...", "Expand": "Laajenna", "Experimental": "Kokeellinen", "Explain": "Selitä", @@ -491,10 +491,10 @@ "Export Prompts": "Vie kehotteet", "Export to CSV": "Vie CSV-tiedostoon", "Export Tools": "Vie työkalut", - "External": "", + "External": "Ulkoiset", "External Models": "Ulkoiset mallit", "Failed to add file.": "Tiedoston lisääminen epäonnistui.", - "Failed to connect to {{URL}} OpenAPI tool server": "", + "Failed to connect to {{URL}} OpenAPI tool server": "Yhdistäminen {{URL}} OpenAPI työkalu palvelimeen epäonnistui", "Failed to create API Key.": "API-avaimen luonti epäonnistui.", "Failed to fetch models": "Mallien hakeminen epäonnistui", "Failed to read clipboard contents": "Leikepöydän sisällön lukeminen epäonnistui", @@ -530,7 +530,7 @@ "Forge new paths": "Luo uusia polkuja", "Form": "Lomake", "Format your variables using brackets like this:": "Muotoile muuttujasi hakasulkeilla tällä tavalla:", - "Forwards system user session credentials to authenticate": "", + "Forwards system user session credentials to authenticate": "Välittää järjestelmän käyttäjän istunnon tunnistetiedot todennusta varten", "Frequency Penalty": "Taajuussakko", "Full Context Mode": "Koko kontekstitila", "Function": "Toiminto", @@ -576,7 +576,7 @@ "Hex Color": "Heksadesimaaliväri", "Hex Color - Leave empty for default color": "Heksadesimaaliväri - Jätä tyhjäksi, jos haluat oletusvärin", "Hide": "Piilota", - "Hide Model": "", + "Hide Model": "Piilota malli", "Home": "Koti", "Host": "Palvelin", "How can I help you today?": "Miten voin auttaa sinua tänään?", @@ -607,14 +607,14 @@ "Include `--api` flag when running stable-diffusion-webui": "Sisällytä `--api`-lippu ajettaessa stable-diffusion-webui", "Influences how quickly the algorithm responds to feedback from the generated text. A lower learning rate will result in slower adjustments, while a higher learning rate will make the algorithm more responsive.": "", "Info": "Tiedot", - "Inject the entire content as context for comprehensive processing, this is recommended for complex queries.": "", + "Inject the entire content as context for comprehensive processing, this is recommended for complex queries.": "Upota koko sisältö kontekstiin kattavaa käsittelyä varten. Tätä suositellaan monimutkaisille kyselyille.", "Input commands": "Syötekäskyt", "Install from Github URL": "Asenna Github-URL:stä", "Instant Auto-Send After Voice Transcription": "Heti automaattinen lähetys äänitunnistuksen jälkeen", "Integration": "Integrointi", "Interface": "Käyttöliittymä", "Invalid file format.": "Virheellinen tiedostomuoto.", - "Invalid JSON schema": "", + "Invalid JSON schema": "Virheellinen JSON kaava", "Invalid Tag": "Virheellinen tagi", "is typing...": "Kirjoittaa...", "January": "tammikuu", @@ -636,7 +636,7 @@ "Knowledge Access": "Tiedon käyttöoikeus", "Knowledge created successfully.": "Tietokanta luotu onnistuneesti.", "Knowledge deleted successfully.": "Tietokanta poistettu onnistuneesti.", - "Knowledge Public Sharing": "", + "Knowledge Public Sharing": "Tietokannan julkinen jakaminen", "Knowledge reset successfully.": "Tietokanta nollattu onnistuneesti.", "Knowledge updated successfully": "Tietokanta päivitetty onnistuneesti", "Kokoro.js (Browser)": "Kokoro.js (selain)", @@ -650,9 +650,9 @@ "LDAP": "LDAP", "LDAP server updated": "LDAP-palvelin päivitetty", "Leaderboard": "Tulosluettelo", - "Leave empty for unlimited": "Jätä tyhjäksi rajattomaksi", - "Leave empty to include all models from \"{{url}}/api/tags\" endpoint": "", - "Leave empty to include all models from \"{{url}}/models\" endpoint": "", + "Leave empty for unlimited": "Rajaton tyhjäksi jättämällä", + "Leave empty to include all models from \"{{url}}/api/tags\" endpoint": "Jätä tyhjäksi sisällyttääksesi \"{{url}}/api/tags\" päätepisteen mallit", + "Leave empty to include all models from \"{{url}}/models\" endpoint": "Jätä tyhjäksi sisällyttääksesi \"{{url}}/models\" päätepisteen mallit", "Leave empty to include all models or select specific models": "Jätä tyhjäksi, jos haluat sisällyttää kaikki mallit tai valitse tietyt mallit", "Leave empty to use the default prompt, or enter a custom prompt": "Jätä tyhjäksi käyttääksesi oletuskehotetta tai kirjoita mukautettu kehote", "Leave model field empty to use the default model.": "Jätä malli kenttä tyhjäksi käyttääksesi oletus mallia.", @@ -679,7 +679,7 @@ "Manage Ollama API Connections": "Hallitse Ollama API -yhteyksiä", "Manage OpenAI API Connections": "Hallitse OpenAI API -yhteyksiä", "Manage Pipelines": "Hallitse putkia", - "Manage Tool Servers": "", + "Manage Tool Servers": "Hallitse työkalu palvelimia", "March": "maaliskuu", "Max Tokens (num_predict)": "Tokenien enimmäismäärä (num_predict)", "Max Upload Count": "Latausten enimmäismäärä", @@ -700,16 +700,16 @@ "Mirostat": "Mirostat", "Mirostat Eta": "Mirostat Eta", "Mirostat Tau": "Mirostat Tau", - "Mistral OCR": "", - "Mistral OCR API Key required.": "", + "Mistral OCR": "Mistral OCR", + "Mistral OCR API Key required.": "Mistral OCR api-avain vaaditaan", "Model": "Malli", "Model '{{modelName}}' has been successfully downloaded.": "Malli '{{modelName}}' ladattiin onnistuneesti.", "Model '{{modelTag}}' is already in queue for downloading.": "Malli '{{modelTag}}' on jo jonossa ladattavaksi.", "Model {{modelId}} not found": "Mallia {{modelId}} ei löytynyt", "Model {{modelName}} is not vision capable": "Malli {{modelName}} ei kykene näkökykyyn", "Model {{name}} is now {{status}}": "Malli {{name}} on nyt {{status}}", - "Model {{name}} is now hidden": "", - "Model {{name}} is now visible": "", + "Model {{name}} is now hidden": "Malli {{name}} on nyt piilotettu", + "Model {{name}} is now visible": "Malli {{name}} on nyt näkyvissä", "Model accepts image inputs": "Malli hyväksyy kuvasyötteitä", "Model created successfully!": "Malli luotu onnistuneesti!", "Model filesystem path detected. Model shortname is required for update, cannot continue.": "Mallin tiedostojärjestelmäpolku havaittu. Mallin lyhytnimi vaaditaan päivitykseen, ei voida jatkaa.", @@ -725,7 +725,7 @@ "Models": "Mallit", "Models Access": "Mallien käyttöoikeudet", "Models configuration saved successfully": "Mallien määritykset tallennettu onnistuneesti", - "Models Public Sharing": "", + "Models Public Sharing": "Mallin julkinen jakaminen", "Mojeek Search API Key": "Mojeek Search API -avain", "more": "lisää", "More": "Lisää", @@ -797,7 +797,7 @@ "OpenAI API Key is required.": "OpenAI API -avain vaaditaan.", "OpenAI API settings updated": "OpenAI API -asetukset päivitetty", "OpenAI URL/Key required.": "OpenAI URL/avain vaaditaan.", - "openapi.json Path": "", + "openapi.json Path": "openapi.json polku", "or": "tai", "Organize your users": "Järjestä käyttäjäsi", "Other": "Muu", @@ -840,19 +840,19 @@ "Presence Penalty": "", "Previous 30 days": "Edelliset 30 päivää", "Previous 7 days": "Edelliset 7 päivää", - "Private": "", + "Private": "Yksityinen", "Profile Image": "Profiilikuva", "Prompt": "Kehote", "Prompt (e.g. Tell me a fun fact about the Roman Empire)": "Kehote (esim. Kerro hauska fakta Rooman valtakunnasta)", - "Prompt Autocompletion": "", + "Prompt Autocompletion": "Kehotteen automaattinen täydennys", "Prompt Content": "Kehotteen sisältö", "Prompt created successfully": "Kehote luotu onnistuneesti", "Prompt suggestions": "Kehotteen ehdotukset", "Prompt updated successfully": "Kehote päivitetty onnistuneesti", "Prompts": "Kehotteet", "Prompts Access": "Kehoitteiden käyttöoikeudet", - "Prompts Public Sharing": "", - "Public": "", + "Prompts Public Sharing": "Kehoitteiden julkinen jakaminen", + "Public": "Julkinen", "Pull \"{{searchValue}}\" from Ollama.com": "Lataa \"{{searchValue}}\" Ollama.comista", "Pull a model from Ollama.com": "Lataa malli Ollama.comista", "Query Generation Prompt": "Kyselytulosten luontikehote", @@ -876,7 +876,7 @@ "Rename": "Nimeä uudelleen", "Reorder Models": "Uudelleenjärjestä malleja", "Repeat Last N": "Toista viimeiset N", - "Repeat Penalty (Ollama)": "", + "Repeat Penalty (Ollama)": "Toisto rangaistus (Ollama)", "Reply in Thread": "Vastauksia ", "Request Mode": "Pyyntötila", "Reranking Model": "Uudelleenpisteytymismalli", @@ -975,20 +975,20 @@ "Set whisper model": "Aseta whisper-malli", "Sets a flat bias against tokens that have appeared at least once. A higher value (e.g., 1.5) will penalize repetitions more strongly, while a lower value (e.g., 0.9) will be more lenient. At 0, it is disabled.": "", "Sets a scaling bias against tokens to penalize repetitions, based on how many times they have appeared. A higher value (e.g., 1.5) will penalize repetitions more strongly, while a lower value (e.g., 0.9) will be more lenient. At 0, it is disabled.": "", - "Sets how far back for the model to look back to prevent repetition.": "", - "Sets the random number seed to use for generation. Setting this to a specific number will make the model generate the same text for the same prompt.": "", - "Sets the size of the context window used to generate the next token.": "", + "Sets how far back for the model to look back to prevent repetition.": "Määrittää kuinka kauas taaksepäin malli katsoo toistumisen estämiseksi.", + "Sets the random number seed to use for generation. Setting this to a specific number will make the model generate the same text for the same prompt.": "Määrittä satunnainen siemenluku luomista varten. Jos asetat siemenluvun, malli tuottaa saman vastauksen samalle kehotteelle.", + "Sets the size of the context window used to generate the next token.": "Määrittää konteksti-ikkunan koon seuraavaksi luotavalle tokenille.", "Sets the stop sequences to use. When this pattern is encountered, the LLM will stop generating text and return. Multiple stop patterns may be set by specifying multiple separate stop parameters in a modelfile.": "Määrittää käytettävät lopetussekvenssit. Kun tämä kuvio havaitaan, LLM lopettaa tekstin tuottamisen ja palauttaa. Useita lopetuskuvioita voidaan asettaa määrittämällä useita erillisiä lopetusparametreja mallitiedostoon.", "Settings": "Asetukset", "Settings saved successfully!": "Asetukset tallennettu onnistuneesti!", "Share": "Jaa", "Share Chat": "Jaa keskustelu", "Share to Open WebUI Community": "Jaa OpenWebUI-yhteisöön", - "Sharing Permissions": "", + "Sharing Permissions": "Jako oikeudet", "Show": "Näytä", "Show \"What's New\" modal on login": "Näytä \"Mitä uutta\" -modaali kirjautumisen yhteydessä", "Show Admin Details in Account Pending Overlay": "Näytä ylläpitäjän tiedot odottavan tilin päällä", - "Show Model": "", + "Show Model": "Näytä malli", "Show shortcuts": "Näytä pikanäppäimet", "Show your support!": "Osoita tukesi!", "Showcased creativity": "Osoitti luovuutta", @@ -1019,7 +1019,7 @@ "System": "Järjestelmä", "System Instructions": "Järjestelmäohjeet", "System Prompt": "Järjestelmäkehote", - "Tags": "", + "Tags": "Tagit", "Tags Generation": "Tagien luonti", "Tags Generation Prompt": "Tagien luontikehote", "Tail free sampling is used to reduce the impact of less probable tokens from the output. A higher value (e.g., 2.0) will reduce the impact more, while a value of 1.0 disables this setting.": "", @@ -1046,12 +1046,12 @@ "The maximum file size in MB. If the file size exceeds this limit, the file will not be uploaded.": "Enimmäistiedostokoko megatavuissa. Jos tiedoston koko ylittää tämän rajan, tiedostoa ei ladata.", "The maximum number of files that can be used at once in chat. If the number of files exceeds this limit, the files will not be uploaded.": "Suurin sallittu tiedostojen määrä käytettäväksi kerralla chatissa. Jos tiedostojen määrä ylittää tämän rajan, niitä ei ladata.", "The score should be a value between 0.0 (0%) and 1.0 (100%).": "Pisteytyksen tulee olla arvo välillä 0,0 (0 %) ja 1,0 (100 %).", - "The temperature of the model. Increasing the temperature will make the model answer more creatively.": "", + "The temperature of the model. Increasing the temperature will make the model answer more creatively.": "Mallin lämpötila. Lisäämällä lämpötilaa mallin vastaukset ovat luovempia.", "Theme": "Teema", "Thinking...": "Ajattelee...", "This action cannot be undone. Do you wish to continue?": "Tätä toimintoa ei voi peruuttaa. Haluatko jatkaa?", "This channel was created on {{createdAt}}. This is the very beginning of the {{channelName}} channel.": "", - "This chat won’t appear in history and your messages will not be saved.": "", + "This chat won’t appear in history and your messages will not be saved.": "Tämä keskustelu ei näy historiassa, eikä viestejäsi tallenneta.", "This ensures that your valuable conversations are securely saved to your backend database. Thank you!": "Tämä varmistaa, että arvokkaat keskustelusi tallennetaan turvallisesti backend-tietokantaasi. Kiitos!", "This is an experimental feature, it may not function as expected and is subject to change at any time.": "Tämä on kokeellinen ominaisuus, se ei välttämättä toimi odotetulla tavalla ja se voi muuttua milloin tahansa.", "This option controls how many tokens are preserved when refreshing the context. For example, if set to 2, the last 2 tokens of the conversation context will be retained. Preserving context can help maintain the continuity of a conversation, but it may reduce the ability to respond to new topics.": "", @@ -1099,7 +1099,7 @@ "Tool ID": "Työkalun tunnus", "Tool imported successfully": "Työkalu tuotu onnistuneesti", "Tool Name": "Työkalun nimi", - "Tool Servers": "", + "Tool Servers": "Työkalu palvelin", "Tool updated successfully": "Työkalu päivitetty onnistuneesti", "Tools": "Työkalut", "Tools Access": "Työkalujen käyttöoikeudet", @@ -1107,7 +1107,7 @@ "Tools Function Calling Prompt": "Työkalujen kutsukehote", "Tools have a function calling system that allows arbitrary code execution": "Työkaluilla on toimintokutsuihin perustuva järjestelmä, joka sallii mielivaltaisen koodin suorittamisen", "Tools have a function calling system that allows arbitrary code execution.": "Työkalut sallivat mielivaltaisen koodin suorittamisen toimintokutsuilla.", - "Tools Public Sharing": "", + "Tools Public Sharing": "Työkalujen julkinen jakaminen", "Top K": "Top K", "Top K Reranker": "", "Top P": "Top P", @@ -1154,7 +1154,7 @@ "user": "käyttäjä", "User": "Käyttäjä", "User location successfully retrieved.": "Käyttäjän sijainti haettu onnistuneesti.", - "User Webhooks": "", + "User Webhooks": "Käyttäjän Webhook:it", "Username": "Käyttäjätunnus", "Users": "Käyttäjät", "Using the default arena model with all models. Click the plus button to add custom models.": "Käytetään oletusarena-mallia kaikkien mallien kanssa. Napsauta plus-painiketta lisätäksesi mukautettuja malleja.", @@ -1165,11 +1165,11 @@ "Valves updated successfully": "Venttiilit päivitetty onnistuneesti", "variable": "muuttuja", "variable to have them replaced with clipboard content.": "muuttuja korvataan leikepöydän sisällöllä.", - "Verify Connection": "", + "Verify Connection": "Tarkista yhteys", "Version": "Versio", "Version {{selectedVersion}} of {{totalVersions}}": "Versio {{selectedVersion}} / {{totalVersions}}", "View Replies": "Näytä vastaukset", - "View Result from **{{NAME}}**": "", + "View Result from **{{NAME}}**": "Näytä **{{NAME}}** tulokset", "Visibility": "Näkyvyys", "Voice": "Ääni", "Voice Input": "Äänitulolaitteen käyttö", @@ -1187,7 +1187,7 @@ "Webhook URL": "Webhook verkko-osoite", "WebUI Settings": "WebUI-asetukset", "WebUI URL": "WebUI-osoite", - "WebUI will make requests to \"{{url}}{{path}}\"": "", + "WebUI will make requests to \"{{url}}{{path}}\"": "WebUI lähettää pyyntöjä osoitteeseen \"{{url}}{{path}}\"", "WebUI will make requests to \"{{url}}/api/chat\"": "WebUI lähettää pyyntöjä osoitteeseen \"{{url}}/api/chat\"", "WebUI will make requests to \"{{url}}/chat/completions\"": "WebUI lähettää pyyntöjä osoitteeseen \"{{url}}/chat/completions\"", "What are you trying to achieve?": "Mitä yrität saavuttaa?", From b4277c7d2e0f482defc8af14b6d22055faca97ab Mon Sep 17 00:00:00 2001 From: Juan Calderon-Perez <835733+gaby@users.noreply.github.com> Date: Sat, 5 Apr 2025 09:56:11 -0400 Subject: [PATCH 30/37] Make auth error messages generic --- backend/open_webui/routers/auths.py | 28 +++++++++++++++------------- 1 file changed, 15 insertions(+), 13 deletions(-) diff --git a/backend/open_webui/routers/auths.py b/backend/open_webui/routers/auths.py index 07804f9ea..12499ca70 100644 --- a/backend/open_webui/routers/auths.py +++ b/backend/open_webui/routers/auths.py @@ -194,8 +194,8 @@ async def ldap_auth(request: Request, response: Response, form_data: LdapForm): ciphers=LDAP_CIPHERS, ) except Exception as e: - log.error(f"An error occurred on TLS: {str(e)}") - raise HTTPException(400, detail=str(e)) + log.error(f"TLS configuration error: {str(e)}") + raise HTTPException(400, detail="Failed to configure TLS for LDAP connection.") try: server = Server( @@ -232,7 +232,7 @@ async def ldap_auth(request: Request, response: Response, form_data: LdapForm): username = str(entry[f"{LDAP_ATTRIBUTE_FOR_USERNAME}"]).lower() email = str(entry[f"{LDAP_ATTRIBUTE_FOR_MAIL}"]) if not email or email == "" or email == "[]": - raise HTTPException(400, f"User {form_data.user} does not have email.") + raise HTTPException(400, "User does not have a valid email address.") else: email = email.lower() @@ -248,7 +248,7 @@ async def ldap_auth(request: Request, response: Response, form_data: LdapForm): authentication="SIMPLE", ) if not connection_user.bind(): - raise HTTPException(400, f"Authentication failed for {form_data.user}") + raise HTTPException(400, "Authentication failed.") user = Users.get_user_by_email(email) if not user: @@ -276,7 +276,8 @@ async def ldap_auth(request: Request, response: Response, form_data: LdapForm): except HTTPException: raise except Exception as err: - raise HTTPException(500, detail=ERROR_MESSAGES.DEFAULT(err)) + log.error(f"LDAP user creation error: {str(err)}") + raise HTTPException(500, detail="Internal error occurred during LDAP user creation.") user = Auths.authenticate_user_by_trusted_header(email) @@ -312,12 +313,10 @@ async def ldap_auth(request: Request, response: Response, form_data: LdapForm): else: raise HTTPException(400, detail=ERROR_MESSAGES.INVALID_CRED) else: - raise HTTPException( - 400, - f"User {form_data.user} does not match the record. Search result: {str(entry[f'{LDAP_ATTRIBUTE_FOR_USERNAME}'])}", - ) + raise HTTPException(400, "User record mismatch.") except Exception as e: - raise HTTPException(400, detail=str(e)) + log.error(f"LDAP authentication error: {str(e)}") + raise HTTPException(400, detail="LDAP authentication failed.") ############################ @@ -519,7 +518,8 @@ async def signup(request: Request, response: Response, form_data: SignupForm): else: raise HTTPException(500, detail=ERROR_MESSAGES.CREATE_USER_ERROR) except Exception as err: - raise HTTPException(500, detail=ERROR_MESSAGES.DEFAULT(err)) + log.error(f"Signup error: {str(err)}") + raise HTTPException(500, detail="An internal error occurred during signup.") @router.get("/signout") @@ -547,7 +547,8 @@ async def signout(request: Request, response: Response): detail="Failed to fetch OpenID configuration", ) except Exception as e: - raise HTTPException(status_code=500, detail=str(e)) + log.error(f"OpenID signout error: {str(e)}") + raise HTTPException(status_code=500, detail="Failed to sign out from the OpenID provider.") return {"status": True} @@ -591,7 +592,8 @@ async def add_user(form_data: AddUserForm, user=Depends(get_admin_user)): else: raise HTTPException(500, detail=ERROR_MESSAGES.CREATE_USER_ERROR) except Exception as err: - raise HTTPException(500, detail=ERROR_MESSAGES.DEFAULT(err)) + log.error(f"Add user error: {str(err)}") + raise HTTPException(500, detail="An internal error occurred while adding the user.") ############################ From 324550423c5bce26080751ba8f3ef7fc2e8cb490 Mon Sep 17 00:00:00 2001 From: Juan Calderon-Perez <835733+gaby@users.noreply.github.com> Date: Sat, 5 Apr 2025 10:03:24 -0400 Subject: [PATCH 31/37] Fix formatting issues --- backend/open_webui/retrieval/utils.py | 7 ++++++- backend/open_webui/routers/auths.py | 13 ++++++++++--- 2 files changed, 16 insertions(+), 4 deletions(-) diff --git a/backend/open_webui/retrieval/utils.py b/backend/open_webui/retrieval/utils.py index b600080cf..f2d2c61de 100644 --- a/backend/open_webui/retrieval/utils.py +++ b/backend/open_webui/retrieval/utils.py @@ -322,7 +322,12 @@ def query_collection_with_hybrid_search( # Prepare tasks for all collections and queries # Avoid running any tasks for collections that failed to fetch data (have assigned None) - tasks = [(cn, q) for cn in collection_names if collection_results[cn] is not None for q in queries] + tasks = [ + (cn, q) + for cn in collection_names + if collection_results[cn] is not None + for q in queries + ] with ThreadPoolExecutor() as executor: future_results = [executor.submit(process_query, cn, q) for cn, q in tasks] diff --git a/backend/open_webui/routers/auths.py b/backend/open_webui/routers/auths.py index 12499ca70..67c2e9f2a 100644 --- a/backend/open_webui/routers/auths.py +++ b/backend/open_webui/routers/auths.py @@ -277,7 +277,9 @@ async def ldap_auth(request: Request, response: Response, form_data: LdapForm): raise except Exception as err: log.error(f"LDAP user creation error: {str(err)}") - raise HTTPException(500, detail="Internal error occurred during LDAP user creation.") + raise HTTPException( + 500, detail="Internal error occurred during LDAP user creation." + ) user = Auths.authenticate_user_by_trusted_header(email) @@ -548,7 +550,10 @@ async def signout(request: Request, response: Response): ) except Exception as e: log.error(f"OpenID signout error: {str(e)}") - raise HTTPException(status_code=500, detail="Failed to sign out from the OpenID provider.") + raise HTTPException( + status_code=500, + detail="Failed to sign out from the OpenID provider.", + ) return {"status": True} @@ -593,7 +598,9 @@ async def add_user(form_data: AddUserForm, user=Depends(get_admin_user)): raise HTTPException(500, detail=ERROR_MESSAGES.CREATE_USER_ERROR) except Exception as err: log.error(f"Add user error: {str(err)}") - raise HTTPException(500, detail="An internal error occurred while adding the user.") + raise HTTPException( + 500, detail="An internal error occurred while adding the user." + ) ############################ From d23f757c1f8b4ce9e6ebcebcbbd48d2f9e1ed842 Mon Sep 17 00:00:00 2001 From: Timothy Jaeryang Baek Date: Sat, 5 Apr 2025 10:41:46 -0600 Subject: [PATCH 32/37] refac --- src/lib/components/AddServerModal.svelte | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/lib/components/AddServerModal.svelte b/src/lib/components/AddServerModal.svelte index 0ca1063d8..1ce7369e4 100644 --- a/src/lib/components/AddServerModal.svelte +++ b/src/lib/components/AddServerModal.svelte @@ -251,7 +251,7 @@