Browse Source

Merge branch 'dev' into patch-1

James Beeching 6 days ago
parent
commit
2df1f83e79
95 changed files with 3018 additions and 1414 deletions
  1. 13 5
      backend/open_webui/env.py
  2. 19 13
      backend/open_webui/internal/db.py
  3. 4 1
      backend/open_webui/main.py
  4. 3 1
      backend/open_webui/retrieval/loaders/main.py
  5. 13 12
      backend/open_webui/retrieval/utils.py
  6. 14 9
      backend/open_webui/routers/audio.py
  7. 1 0
      backend/open_webui/routers/auths.py
  8. 8 7
      backend/open_webui/routers/files.py
  9. 5 4
      backend/open_webui/routers/images.py
  10. 37 36
      backend/open_webui/routers/ollama.py
  11. 53 43
      backend/open_webui/routers/openai.py
  12. 10 0
      backend/open_webui/routers/retrieval.py
  13. 1 1
      backend/open_webui/utils/chat.py
  14. 17 1
      backend/open_webui/utils/telemetry/setup.py
  15. 1 1
      pyproject.toml
  16. 2 0
      src/lib/apis/auths/index.ts
  17. 1 0
      src/lib/apis/index.ts
  18. 47 14
      src/lib/components/AddServerModal.svelte
  19. 17 15
      src/lib/components/admin/Evaluations/FeedbackModal.svelte
  20. 1 1
      src/lib/components/admin/Evaluations/Feedbacks.svelte
  21. 1 1
      src/lib/components/admin/Evaluations/Leaderboard.svelte
  22. 4 4
      src/lib/components/admin/Evaluations/LeaderboardModal.svelte
  23. 6 6
      src/lib/components/chat/Chat.svelte
  24. 7 3
      src/lib/components/chat/ChatPlaceholder.svelte
  25. 4 2
      src/lib/components/chat/Controls/Controls.svelte
  26. 2 1
      src/lib/components/chat/Messages/Markdown.svelte
  27. 8 4
      src/lib/components/chat/Placeholder.svelte
  28. 4 1
      src/lib/components/chat/Settings/General.svelte
  29. 2 4
      src/lib/components/chat/SettingsModal.svelte
  30. 8 0
      src/lib/components/common/ConfirmDialog.svelte
  31. 17 7
      src/lib/components/common/Folder.svelte
  32. 2 3
      src/lib/components/common/SensitiveInput.svelte
  33. 6 2
      src/lib/components/common/Switch.svelte
  34. 12 10
      src/lib/components/layout/Sidebar/UserMenu.svelte
  35. 1 0
      src/lib/dayjs.js
  36. 1 1
      src/lib/i18n/locales/ar-BH/translation.json
  37. 1 1
      src/lib/i18n/locales/ar/translation.json
  38. 1 1
      src/lib/i18n/locales/bg-BG/translation.json
  39. 1 1
      src/lib/i18n/locales/bn-BD/translation.json
  40. 1 1
      src/lib/i18n/locales/bo-TB/translation.json
  41. 134 134
      src/lib/i18n/locales/ca-ES/translation.json
  42. 1 1
      src/lib/i18n/locales/ceb-PH/translation.json
  43. 1 1
      src/lib/i18n/locales/cs-CZ/translation.json
  44. 1 1
      src/lib/i18n/locales/da-DK/translation.json
  45. 31 31
      src/lib/i18n/locales/de-DE/translation.json
  46. 1 1
      src/lib/i18n/locales/dg-DG/translation.json
  47. 1 1
      src/lib/i18n/locales/el-GR/translation.json
  48. 1 1
      src/lib/i18n/locales/en-GB/translation.json
  49. 2 2
      src/lib/i18n/locales/en-US/translation.json
  50. 1 1
      src/lib/i18n/locales/es-ES/translation.json
  51. 1 1
      src/lib/i18n/locales/et-EE/translation.json
  52. 1 1
      src/lib/i18n/locales/eu-ES/translation.json
  53. 1 1
      src/lib/i18n/locales/fa-IR/translation.json
  54. 1 1
      src/lib/i18n/locales/fi-FI/translation.json
  55. 1 1
      src/lib/i18n/locales/fr-CA/translation.json
  56. 1 1
      src/lib/i18n/locales/fr-FR/translation.json
  57. 1 1
      src/lib/i18n/locales/gl-ES/translation.json
  58. 1 1
      src/lib/i18n/locales/he-IL/translation.json
  59. 1 1
      src/lib/i18n/locales/hi-IN/translation.json
  60. 1 1
      src/lib/i18n/locales/hr-HR/translation.json
  61. 1 1
      src/lib/i18n/locales/hu-HU/translation.json
  62. 2 2
      src/lib/i18n/locales/id-ID/translation.json
  63. 1 1
      src/lib/i18n/locales/ie-GA/translation.json
  64. 165 165
      src/lib/i18n/locales/it-IT/translation.json
  65. 1 1
      src/lib/i18n/locales/ja-JP/translation.json
  66. 1 1
      src/lib/i18n/locales/ka-GE/translation.json
  67. 1 1
      src/lib/i18n/locales/ko-KR/translation.json
  68. 4 0
      src/lib/i18n/locales/languages.json
  69. 1 1
      src/lib/i18n/locales/lt-LT/translation.json
  70. 1 1
      src/lib/i18n/locales/ms-MY/translation.json
  71. 1 1
      src/lib/i18n/locales/nb-NO/translation.json
  72. 14 14
      src/lib/i18n/locales/nl-NL/translation.json
  73. 1 1
      src/lib/i18n/locales/pa-IN/translation.json
  74. 1 1
      src/lib/i18n/locales/pl-PL/translation.json
  75. 1 1
      src/lib/i18n/locales/pt-BR/translation.json
  76. 1 1
      src/lib/i18n/locales/pt-PT/translation.json
  77. 48 48
      src/lib/i18n/locales/ro-RO/translation.json
  78. 1 1
      src/lib/i18n/locales/ru-RU/translation.json
  79. 1 1
      src/lib/i18n/locales/sk-SK/translation.json
  80. 1 1
      src/lib/i18n/locales/sr-RS/translation.json
  81. 708 707
      src/lib/i18n/locales/sv-SE/translation.json
  82. 1 1
      src/lib/i18n/locales/th-TH/translation.json
  83. 1 1
      src/lib/i18n/locales/tk-TM/translation.json
  84. 1 1
      src/lib/i18n/locales/tr-TR/translation.json
  85. 1422 0
      src/lib/i18n/locales/ug-CN/translation.json
  86. 1 1
      src/lib/i18n/locales/uk-UA/translation.json
  87. 1 1
      src/lib/i18n/locales/ur-PK/translation.json
  88. 1 1
      src/lib/i18n/locales/uz-Cyrl-UZ/translation.json
  89. 1 1
      src/lib/i18n/locales/uz-Latn-Uz/translation.json
  90. 1 1
      src/lib/i18n/locales/vi-VN/translation.json
  91. 48 48
      src/lib/i18n/locales/zh-CN/translation.json
  92. 1 1
      src/lib/i18n/locales/zh-TW/translation.json
  93. 41 1
      src/lib/stores/index.ts
  94. 1 1
      src/lib/utils/index.ts
  95. 1 3
      src/routes/(app)/+layout.svelte

+ 13 - 5
backend/open_webui/env.py

@@ -199,6 +199,7 @@ CHANGELOG = changelog_json
 
 SAFE_MODE = os.environ.get("SAFE_MODE", "false").lower() == "true"
 
+
 ####################################
 # ENABLE_FORWARD_USER_INFO_HEADERS
 ####################################
@@ -272,15 +273,13 @@ if "postgres://" in DATABASE_URL:
 
 DATABASE_SCHEMA = os.environ.get("DATABASE_SCHEMA", None)
 
-DATABASE_POOL_SIZE = os.environ.get("DATABASE_POOL_SIZE", 0)
+DATABASE_POOL_SIZE = os.environ.get("DATABASE_POOL_SIZE", None)
 
-if DATABASE_POOL_SIZE == "":
-    DATABASE_POOL_SIZE = 0
-else:
+if DATABASE_POOL_SIZE != None:
     try:
         DATABASE_POOL_SIZE = int(DATABASE_POOL_SIZE)
     except Exception:
-        DATABASE_POOL_SIZE = 0
+        DATABASE_POOL_SIZE = None
 
 DATABASE_POOL_MAX_OVERFLOW = os.environ.get("DATABASE_POOL_MAX_OVERFLOW", 0)
 
@@ -396,6 +395,10 @@ WEBUI_AUTH_COOKIE_SECURE = (
 if WEBUI_AUTH and WEBUI_SECRET_KEY == "":
     raise ValueError(ERROR_MESSAGES.ENV_VAR_NOT_FOUND)
 
+ENABLE_COMPRESSION_MIDDLEWARE = (
+    os.environ.get("ENABLE_COMPRESSION_MIDDLEWARE", "True").lower() == "true"
+)
+
 ENABLE_WEBSOCKET_SUPPORT = (
     os.environ.get("ENABLE_WEBSOCKET_SUPPORT", "True").lower() == "true"
 )
@@ -543,6 +546,9 @@ ENABLE_OTEL_METRICS = os.environ.get("ENABLE_OTEL_METRICS", "False").lower() ==
 OTEL_EXPORTER_OTLP_ENDPOINT = os.environ.get(
     "OTEL_EXPORTER_OTLP_ENDPOINT", "http://localhost:4317"
 )
+OTEL_EXPORTER_OTLP_INSECURE = (
+    os.environ.get("OTEL_EXPORTER_OTLP_INSECURE", "False").lower() == "true"
+)
 OTEL_SERVICE_NAME = os.environ.get("OTEL_SERVICE_NAME", "open-webui")
 OTEL_RESOURCE_ATTRIBUTES = os.environ.get(
     "OTEL_RESOURCE_ATTRIBUTES", ""
@@ -550,6 +556,8 @@ OTEL_RESOURCE_ATTRIBUTES = os.environ.get(
 OTEL_TRACES_SAMPLER = os.environ.get(
     "OTEL_TRACES_SAMPLER", "parentbased_always_on"
 ).lower()
+OTEL_BASIC_AUTH_USERNAME = os.environ.get("OTEL_BASIC_AUTH_USERNAME", "")
+OTEL_BASIC_AUTH_PASSWORD = os.environ.get("OTEL_BASIC_AUTH_PASSWORD", "")
 
 ####################################
 # TOOLS/FUNCTIONS PIP OPTIONS

+ 19 - 13
backend/open_webui/internal/db.py

@@ -62,6 +62,9 @@ def handle_peewee_migration(DATABASE_URL):
 
     except Exception as e:
         log.error(f"Failed to initialize the database connection: {e}")
+        log.warning(
+            "Hint: If your database password contains special characters, you may need to URL-encode it."
+        )
         raise
     finally:
         # Properly closing the database connection
@@ -81,20 +84,23 @@ if "sqlite" in SQLALCHEMY_DATABASE_URL:
         SQLALCHEMY_DATABASE_URL, connect_args={"check_same_thread": False}
     )
 else:
-    if DATABASE_POOL_SIZE > 0:
-        engine = create_engine(
-            SQLALCHEMY_DATABASE_URL,
-            pool_size=DATABASE_POOL_SIZE,
-            max_overflow=DATABASE_POOL_MAX_OVERFLOW,
-            pool_timeout=DATABASE_POOL_TIMEOUT,
-            pool_recycle=DATABASE_POOL_RECYCLE,
-            pool_pre_ping=True,
-            poolclass=QueuePool,
-        )
+    if isinstance(DATABASE_POOL_SIZE, int):
+        if DATABASE_POOL_SIZE > 0:
+            engine = create_engine(
+                SQLALCHEMY_DATABASE_URL,
+                pool_size=DATABASE_POOL_SIZE,
+                max_overflow=DATABASE_POOL_MAX_OVERFLOW,
+                pool_timeout=DATABASE_POOL_TIMEOUT,
+                pool_recycle=DATABASE_POOL_RECYCLE,
+                pool_pre_ping=True,
+                poolclass=QueuePool,
+            )
+        else:
+            engine = create_engine(
+                SQLALCHEMY_DATABASE_URL, pool_pre_ping=True, poolclass=NullPool
+            )
     else:
-        engine = create_engine(
-            SQLALCHEMY_DATABASE_URL, pool_pre_ping=True, poolclass=NullPool
-        )
+        engine = create_engine(SQLALCHEMY_DATABASE_URL, pool_pre_ping=True)
 
 
 SessionLocal = sessionmaker(

+ 4 - 1
backend/open_webui/main.py

@@ -411,6 +411,7 @@ from open_webui.env import (
     WEBUI_AUTH_TRUSTED_EMAIL_HEADER,
     WEBUI_AUTH_TRUSTED_NAME_HEADER,
     WEBUI_AUTH_SIGNOUT_REDIRECT_URL,
+    ENABLE_COMPRESSION_MIDDLEWARE,
     ENABLE_WEBSOCKET_SUPPORT,
     BYPASS_MODEL_ACCESS_CONTROL,
     RESET_CONFIG_ON_START,
@@ -1072,7 +1073,9 @@ class RedirectMiddleware(BaseHTTPMiddleware):
 
 
 # Add the middleware to the app
-app.add_middleware(CompressMiddleware)
+if ENABLE_COMPRESSION_MIDDLEWARE:
+    app.add_middleware(CompressMiddleware)
+
 app.add_middleware(RedirectMiddleware)
 app.add_middleware(SecurityHeadersMiddleware)
 

+ 3 - 1
backend/open_webui/retrieval/loaders/main.py

@@ -14,7 +14,7 @@ from langchain_community.document_loaders import (
     TextLoader,
     UnstructuredEPubLoader,
     UnstructuredExcelLoader,
-    UnstructuredMarkdownLoader,
+    UnstructuredODTLoader,
     UnstructuredPowerPointLoader,
     UnstructuredRSTLoader,
     UnstructuredXMLLoader,
@@ -389,6 +389,8 @@ class Loader:
                 loader = UnstructuredPowerPointLoader(file_path)
             elif file_ext == "msg":
                 loader = OutlookMessageLoader(file_path)
+            elif file_ext == "odt":
+                loader = UnstructuredODTLoader(file_path)
             elif self._is_text_file(file_ext, file_content_type):
                 loader = TextLoader(file_path, autodetect_encoding=True)
             else:

+ 13 - 12
backend/open_webui/retrieval/utils.py

@@ -7,6 +7,7 @@ import hashlib
 from concurrent.futures import ThreadPoolExecutor
 import time
 
+from urllib.parse import quote
 from huggingface_hub import snapshot_download
 from langchain.retrievers import ContextualCompressionRetriever, EnsembleRetriever
 from langchain_community.retrievers import BM25Retriever
@@ -678,10 +679,10 @@ def generate_openai_batch_embeddings(
                 "Authorization": f"Bearer {key}",
                 **(
                     {
-                        "X-OpenWebUI-User-Name": user.name,
-                        "X-OpenWebUI-User-Id": user.id,
-                        "X-OpenWebUI-User-Email": user.email,
-                        "X-OpenWebUI-User-Role": user.role,
+                        "X-OpenWebUI-User-Name": quote(user.name),
+                        "X-OpenWebUI-User-Id": quote(user.id),
+                        "X-OpenWebUI-User-Email": quote(user.email),
+                        "X-OpenWebUI-User-Role": quote(user.role),
                     }
                     if ENABLE_FORWARD_USER_INFO_HEADERS and user
                     else {}
@@ -727,10 +728,10 @@ def generate_azure_openai_batch_embeddings(
                     "api-key": key,
                     **(
                         {
-                            "X-OpenWebUI-User-Name": user.name,
-                            "X-OpenWebUI-User-Id": user.id,
-                            "X-OpenWebUI-User-Email": user.email,
-                            "X-OpenWebUI-User-Role": user.role,
+                            "X-OpenWebUI-User-Name": quote(user.name),
+                            "X-OpenWebUI-User-Id": quote(user.id),
+                            "X-OpenWebUI-User-Email": quote(user.email),
+                            "X-OpenWebUI-User-Role": quote(user.role),
                         }
                         if ENABLE_FORWARD_USER_INFO_HEADERS and user
                         else {}
@@ -777,10 +778,10 @@ def generate_ollama_batch_embeddings(
                 "Authorization": f"Bearer {key}",
                 **(
                     {
-                        "X-OpenWebUI-User-Name": user.name,
-                        "X-OpenWebUI-User-Id": user.id,
-                        "X-OpenWebUI-User-Email": user.email,
-                        "X-OpenWebUI-User-Role": user.role,
+                        "X-OpenWebUI-User-Name": quote(user.name),
+                        "X-OpenWebUI-User-Id": quote(user.id),
+                        "X-OpenWebUI-User-Email": quote(user.email),
+                        "X-OpenWebUI-User-Role": quote(user.role),
                     }
                     if ENABLE_FORWARD_USER_INFO_HEADERS
                     else {}

+ 14 - 9
backend/open_webui/routers/audio.py

@@ -15,6 +15,7 @@ import aiohttp
 import aiofiles
 import requests
 import mimetypes
+from urllib.parse import quote
 
 from fastapi import (
     Depends,
@@ -343,10 +344,10 @@ async def speech(request: Request, user=Depends(get_verified_user)):
                         "Authorization": f"Bearer {request.app.state.config.TTS_OPENAI_API_KEY}",
                         **(
                             {
-                                "X-OpenWebUI-User-Name": user.name,
-                                "X-OpenWebUI-User-Id": user.id,
-                                "X-OpenWebUI-User-Email": user.email,
-                                "X-OpenWebUI-User-Role": user.role,
+                                "X-OpenWebUI-User-Name": quote(user.name),
+                                "X-OpenWebUI-User-Id": quote(user.id),
+                                "X-OpenWebUI-User-Email": quote(user.email),
+                                "X-OpenWebUI-User-Role": quote(user.role),
                             }
                             if ENABLE_FORWARD_USER_INFO_HEADERS
                             else {}
@@ -919,14 +920,18 @@ def transcription(
 ):
     log.info(f"file.content_type: {file.content_type}")
 
-    supported_content_types = request.app.state.config.STT_SUPPORTED_CONTENT_TYPES or [
-        "audio/*",
-        "video/webm",
-    ]
+    stt_supported_content_types = getattr(
+        request.app.state.config, "STT_SUPPORTED_CONTENT_TYPES", []
+    )
 
     if not any(
         fnmatch(file.content_type, content_type)
-        for content_type in supported_content_types
+        for content_type in (
+            stt_supported_content_types
+            if stt_supported_content_types
+            and any(t.strip() for t in stt_supported_content_types)
+            else ["audio/*", "video/webm"]
+        )
     ):
         raise HTTPException(
             status_code=status.HTTP_400_BAD_REQUEST,

+ 1 - 0
backend/open_webui/routers/auths.py

@@ -669,6 +669,7 @@ async def signup(request: Request, response: Response, form_data: SignupForm):
 @router.get("/signout")
 async def signout(request: Request, response: Response):
     response.delete_cookie("token")
+    response.delete_cookie("oui-session")
 
     if ENABLE_OAUTH_SIGNUP.value:
         oauth_id_token = request.cookies.get("oauth_id_token")

+ 8 - 7
backend/open_webui/routers/files.py

@@ -155,17 +155,18 @@ def upload_file(
         if process:
             try:
                 if file.content_type:
-                    stt_supported_content_types = (
-                        request.app.state.config.STT_SUPPORTED_CONTENT_TYPES
-                        or [
-                            "audio/*",
-                            "video/webm",
-                        ]
+                    stt_supported_content_types = getattr(
+                        request.app.state.config, "STT_SUPPORTED_CONTENT_TYPES", []
                     )
 
                     if any(
                         fnmatch(file.content_type, content_type)
-                        for content_type in stt_supported_content_types
+                        for content_type in (
+                            stt_supported_content_types
+                            if stt_supported_content_types
+                            and any(t.strip() for t in stt_supported_content_types)
+                            else ["audio/*", "video/webm"]
+                        )
                     ):
                         file_path = Storage.get_file(file_path)
                         result = transcribe(request, file_path, file_metadata)

+ 5 - 4
backend/open_webui/routers/images.py

@@ -8,6 +8,7 @@ import re
 from pathlib import Path
 from typing import Optional
 
+from urllib.parse import quote
 import requests
 from fastapi import APIRouter, Depends, HTTPException, Request, UploadFile
 from open_webui.config import CACHE_DIR
@@ -483,10 +484,10 @@ async def image_generations(
             headers["Content-Type"] = "application/json"
 
             if ENABLE_FORWARD_USER_INFO_HEADERS:
-                headers["X-OpenWebUI-User-Name"] = user.name
-                headers["X-OpenWebUI-User-Id"] = user.id
-                headers["X-OpenWebUI-User-Email"] = user.email
-                headers["X-OpenWebUI-User-Role"] = user.role
+                headers["X-OpenWebUI-User-Name"] = quote(user.name)
+                headers["X-OpenWebUI-User-Id"] = quote(user.id)
+                headers["X-OpenWebUI-User-Email"] = quote(user.email)
+                headers["X-OpenWebUI-User-Role"] = quote(user.role)
 
             data = {
                 "model": (

+ 37 - 36
backend/open_webui/routers/ollama.py

@@ -16,6 +16,7 @@ from urllib.parse import urlparse
 import aiohttp
 from aiocache import cached
 import requests
+from urllib.parse import quote
 
 from open_webui.models.chats import Chats
 from open_webui.models.users import UserModel
@@ -87,10 +88,10 @@ async def send_get_request(url, key=None, user: UserModel = None):
                     **({"Authorization": f"Bearer {key}"} if key else {}),
                     **(
                         {
-                            "X-OpenWebUI-User-Name": user.name,
-                            "X-OpenWebUI-User-Id": user.id,
-                            "X-OpenWebUI-User-Email": user.email,
-                            "X-OpenWebUI-User-Role": user.role,
+                            "X-OpenWebUI-User-Name": quote(user.name),
+                            "X-OpenWebUI-User-Id": quote(user.id),
+                            "X-OpenWebUI-User-Email": quote(user.email),
+                            "X-OpenWebUI-User-Role": quote(user.role),
                         }
                         if ENABLE_FORWARD_USER_INFO_HEADERS and user
                         else {}
@@ -138,10 +139,10 @@ async def send_post_request(
                 **({"Authorization": f"Bearer {key}"} if key else {}),
                 **(
                     {
-                        "X-OpenWebUI-User-Name": user.name,
-                        "X-OpenWebUI-User-Id": user.id,
-                        "X-OpenWebUI-User-Email": user.email,
-                        "X-OpenWebUI-User-Role": user.role,
+                        "X-OpenWebUI-User-Name": quote(user.name),
+                        "X-OpenWebUI-User-Id": quote(user.id),
+                        "X-OpenWebUI-User-Email": quote(user.email),
+                        "X-OpenWebUI-User-Role": quote(user.role),
                     }
                     if ENABLE_FORWARD_USER_INFO_HEADERS and user
                     else {}
@@ -242,10 +243,10 @@ async def verify_connection(
                     **({"Authorization": f"Bearer {key}"} if key else {}),
                     **(
                         {
-                            "X-OpenWebUI-User-Name": user.name,
-                            "X-OpenWebUI-User-Id": user.id,
-                            "X-OpenWebUI-User-Email": user.email,
-                            "X-OpenWebUI-User-Role": user.role,
+                            "X-OpenWebUI-User-Name": quote(user.name),
+                            "X-OpenWebUI-User-Id": quote(user.id),
+                            "X-OpenWebUI-User-Email": quote(user.email),
+                            "X-OpenWebUI-User-Role": quote(user.role),
                         }
                         if ENABLE_FORWARD_USER_INFO_HEADERS and user
                         else {}
@@ -462,10 +463,10 @@ async def get_ollama_tags(
                     **({"Authorization": f"Bearer {key}"} if key else {}),
                     **(
                         {
-                            "X-OpenWebUI-User-Name": user.name,
-                            "X-OpenWebUI-User-Id": user.id,
-                            "X-OpenWebUI-User-Email": user.email,
-                            "X-OpenWebUI-User-Role": user.role,
+                            "X-OpenWebUI-User-Name": quote(user.name),
+                            "X-OpenWebUI-User-Id": quote(user.id),
+                            "X-OpenWebUI-User-Email": quote(user.email),
+                            "X-OpenWebUI-User-Role": quote(user.role),
                         }
                         if ENABLE_FORWARD_USER_INFO_HEADERS and user
                         else {}
@@ -824,10 +825,10 @@ async def copy_model(
                 **({"Authorization": f"Bearer {key}"} if key else {}),
                 **(
                     {
-                        "X-OpenWebUI-User-Name": user.name,
-                        "X-OpenWebUI-User-Id": user.id,
-                        "X-OpenWebUI-User-Email": user.email,
-                        "X-OpenWebUI-User-Role": user.role,
+                        "X-OpenWebUI-User-Name": quote(user.name),
+                        "X-OpenWebUI-User-Id": quote(user.id),
+                        "X-OpenWebUI-User-Email": quote(user.email),
+                        "X-OpenWebUI-User-Role": quote(user.role),
                     }
                     if ENABLE_FORWARD_USER_INFO_HEADERS and user
                     else {}
@@ -890,10 +891,10 @@ async def delete_model(
                 **({"Authorization": f"Bearer {key}"} if key else {}),
                 **(
                     {
-                        "X-OpenWebUI-User-Name": user.name,
-                        "X-OpenWebUI-User-Id": user.id,
-                        "X-OpenWebUI-User-Email": user.email,
-                        "X-OpenWebUI-User-Role": user.role,
+                        "X-OpenWebUI-User-Name": quote(user.name),
+                        "X-OpenWebUI-User-Id": quote(user.id),
+                        "X-OpenWebUI-User-Email": quote(user.email),
+                        "X-OpenWebUI-User-Role": quote(user.role),
                     }
                     if ENABLE_FORWARD_USER_INFO_HEADERS and user
                     else {}
@@ -949,10 +950,10 @@ async def show_model_info(
                 **({"Authorization": f"Bearer {key}"} if key else {}),
                 **(
                     {
-                        "X-OpenWebUI-User-Name": user.name,
-                        "X-OpenWebUI-User-Id": user.id,
-                        "X-OpenWebUI-User-Email": user.email,
-                        "X-OpenWebUI-User-Role": user.role,
+                        "X-OpenWebUI-User-Name": quote(user.name),
+                        "X-OpenWebUI-User-Id": quote(user.id),
+                        "X-OpenWebUI-User-Email": quote(user.email),
+                        "X-OpenWebUI-User-Role": quote(user.role),
                     }
                     if ENABLE_FORWARD_USER_INFO_HEADERS and user
                     else {}
@@ -1036,10 +1037,10 @@ async def embed(
                 **({"Authorization": f"Bearer {key}"} if key else {}),
                 **(
                     {
-                        "X-OpenWebUI-User-Name": user.name,
-                        "X-OpenWebUI-User-Id": user.id,
-                        "X-OpenWebUI-User-Email": user.email,
-                        "X-OpenWebUI-User-Role": user.role,
+                        "X-OpenWebUI-User-Name": quote(user.name),
+                        "X-OpenWebUI-User-Id": quote(user.id),
+                        "X-OpenWebUI-User-Email": quote(user.email),
+                        "X-OpenWebUI-User-Role": quote(user.role),
                     }
                     if ENABLE_FORWARD_USER_INFO_HEADERS and user
                     else {}
@@ -1123,10 +1124,10 @@ async def embeddings(
                 **({"Authorization": f"Bearer {key}"} if key else {}),
                 **(
                     {
-                        "X-OpenWebUI-User-Name": user.name,
-                        "X-OpenWebUI-User-Id": user.id,
-                        "X-OpenWebUI-User-Email": user.email,
-                        "X-OpenWebUI-User-Role": user.role,
+                        "X-OpenWebUI-User-Name": quote(user.name),
+                        "X-OpenWebUI-User-Id": quote(user.id),
+                        "X-OpenWebUI-User-Email": quote(user.email),
+                        "X-OpenWebUI-User-Role": quote(user.role),
                     }
                     if ENABLE_FORWARD_USER_INFO_HEADERS and user
                     else {}

+ 53 - 43
backend/open_webui/routers/openai.py

@@ -8,7 +8,7 @@ from typing import Literal, Optional, overload
 import aiohttp
 from aiocache import cached
 import requests
-
+from urllib.parse import quote
 
 from fastapi import Depends, FastAPI, HTTPException, Request, APIRouter
 from fastapi.middleware.cors import CORSMiddleware
@@ -66,10 +66,10 @@ async def send_get_request(url, key=None, user: UserModel = None):
                     **({"Authorization": f"Bearer {key}"} if key else {}),
                     **(
                         {
-                            "X-OpenWebUI-User-Name": user.name,
-                            "X-OpenWebUI-User-Id": user.id,
-                            "X-OpenWebUI-User-Email": user.email,
-                            "X-OpenWebUI-User-Role": user.role,
+                            "X-OpenWebUI-User-Name": quote(user.name),
+                            "X-OpenWebUI-User-Id": quote(user.id),
+                            "X-OpenWebUI-User-Email": quote(user.email),
+                            "X-OpenWebUI-User-Role": quote(user.role),
                         }
                         if ENABLE_FORWARD_USER_INFO_HEADERS and user
                         else {}
@@ -225,10 +225,10 @@ async def speech(request: Request, user=Depends(get_verified_user)):
                     ),
                     **(
                         {
-                            "X-OpenWebUI-User-Name": user.name,
-                            "X-OpenWebUI-User-Id": user.id,
-                            "X-OpenWebUI-User-Email": user.email,
-                            "X-OpenWebUI-User-Role": user.role,
+                            "X-OpenWebUI-User-Name": quote(user.name),
+                            "X-OpenWebUI-User-Id": quote(user.id),
+                            "X-OpenWebUI-User-Email": quote(user.email),
+                            "X-OpenWebUI-User-Role": quote(user.role),
                         }
                         if ENABLE_FORWARD_USER_INFO_HEADERS
                         else {}
@@ -478,10 +478,10 @@ async def get_models(
                     "Content-Type": "application/json",
                     **(
                         {
-                            "X-OpenWebUI-User-Name": user.name,
-                            "X-OpenWebUI-User-Id": user.id,
-                            "X-OpenWebUI-User-Email": user.email,
-                            "X-OpenWebUI-User-Role": user.role,
+                            "X-OpenWebUI-User-Name": quote(user.name),
+                            "X-OpenWebUI-User-Id": quote(user.id),
+                            "X-OpenWebUI-User-Email": quote(user.email),
+                            "X-OpenWebUI-User-Role": quote(user.role),
                         }
                         if ENABLE_FORWARD_USER_INFO_HEADERS
                         else {}
@@ -573,10 +573,10 @@ async def verify_connection(
                 "Content-Type": "application/json",
                 **(
                     {
-                        "X-OpenWebUI-User-Name": user.name,
-                        "X-OpenWebUI-User-Id": user.id,
-                        "X-OpenWebUI-User-Email": user.email,
-                        "X-OpenWebUI-User-Role": user.role,
+                        "X-OpenWebUI-User-Name": quote(user.name),
+                        "X-OpenWebUI-User-Id": quote(user.id),
+                        "X-OpenWebUI-User-Email": quote(user.email),
+                        "X-OpenWebUI-User-Role": quote(user.role),
                     }
                     if ENABLE_FORWARD_USER_INFO_HEADERS
                     else {}
@@ -633,13 +633,7 @@ async def verify_connection(
             raise HTTPException(status_code=500, detail=error_detail)
 
 
-def convert_to_azure_payload(
-    url,
-    payload: dict,
-):
-    model = payload.get("model", "")
-
-    # Filter allowed parameters based on Azure OpenAI API
+def get_azure_allowed_params(api_version: str) -> set[str]:
     allowed_params = {
         "messages",
         "temperature",
@@ -669,6 +663,23 @@ def convert_to_azure_payload(
         "max_completion_tokens",
     }
 
+    try:
+        if api_version >= "2024-09-01-preview":
+            allowed_params.add("stream_options")
+    except ValueError:
+        log.debug(
+            f"Invalid API version {api_version} for Azure OpenAI. Defaulting to allowed parameters."
+        )
+
+    return allowed_params
+
+
+def convert_to_azure_payload(url, payload: dict, api_version: str):
+    model = payload.get("model", "")
+
+    # Filter allowed parameters based on Azure OpenAI API
+    allowed_params = get_azure_allowed_params(api_version)
+
     # Special handling for o-series models
     if model.startswith("o") and model.endswith("-mini"):
         # Convert max_tokens to max_completion_tokens for o-series models
@@ -806,10 +817,10 @@ async def generate_chat_completion(
         ),
         **(
             {
-                "X-OpenWebUI-User-Name": user.name,
-                "X-OpenWebUI-User-Id": user.id,
-                "X-OpenWebUI-User-Email": user.email,
-                "X-OpenWebUI-User-Role": user.role,
+                "X-OpenWebUI-User-Name": quote(user.name),
+                "X-OpenWebUI-User-Id": quote(user.id),
+                "X-OpenWebUI-User-Email": quote(user.email),
+                "X-OpenWebUI-User-Role": quote(user.role),
             }
             if ENABLE_FORWARD_USER_INFO_HEADERS
             else {}
@@ -817,8 +828,8 @@ async def generate_chat_completion(
     }
 
     if api_config.get("azure", False):
-        request_url, payload = convert_to_azure_payload(url, payload)
-        api_version = api_config.get("api_version", "") or "2023-03-15-preview"
+        api_version = api_config.get("api_version", "2023-03-15-preview")
+        request_url, payload = convert_to_azure_payload(url, payload, api_version)
         headers["api-key"] = key
         headers["api-version"] = api_version
         request_url = f"{request_url}/chat/completions?api-version={api_version}"
@@ -924,10 +935,10 @@ async def embeddings(request: Request, form_data: dict, user):
                 "Content-Type": "application/json",
                 **(
                     {
-                        "X-OpenWebUI-User-Name": user.name,
-                        "X-OpenWebUI-User-Id": user.id,
-                        "X-OpenWebUI-User-Email": user.email,
-                        "X-OpenWebUI-User-Role": user.role,
+                        "X-OpenWebUI-User-Name": quote(user.name),
+                        "X-OpenWebUI-User-Id": quote(user.id),
+                        "X-OpenWebUI-User-Email": quote(user.email),
+                        "X-OpenWebUI-User-Role": quote(user.role),
                     }
                     if ENABLE_FORWARD_USER_INFO_HEADERS and user
                     else {}
@@ -996,10 +1007,10 @@ async def proxy(path: str, request: Request, user=Depends(get_verified_user)):
             "Content-Type": "application/json",
             **(
                 {
-                    "X-OpenWebUI-User-Name": user.name,
-                    "X-OpenWebUI-User-Id": user.id,
-                    "X-OpenWebUI-User-Email": user.email,
-                    "X-OpenWebUI-User-Role": user.role,
+                    "X-OpenWebUI-User-Name": quote(user.name),
+                    "X-OpenWebUI-User-Id": quote(user.id),
+                    "X-OpenWebUI-User-Email": quote(user.email),
+                    "X-OpenWebUI-User-Role": quote(user.role),
                 }
                 if ENABLE_FORWARD_USER_INFO_HEADERS
                 else {}
@@ -1007,16 +1018,15 @@ async def proxy(path: str, request: Request, user=Depends(get_verified_user)):
         }
 
         if api_config.get("azure", False):
+            api_version = api_config.get("api_version", "2023-03-15-preview")
             headers["api-key"] = key
-            headers["api-version"] = (
-                api_config.get("api_version", "") or "2023-03-15-preview"
-            )
+            headers["api-version"] = api_version
 
             payload = json.loads(body)
-            url, payload = convert_to_azure_payload(url, payload)
+            url, payload = convert_to_azure_payload(url, payload, api_version)
             body = json.dumps(payload).encode()
 
-            request_url = f"{url}/{path}?api-version={api_config.get('api_version', '2023-03-15-preview')}"
+            request_url = f"{url}/{path}?api-version={api_version}"
         else:
             headers["Authorization"] = f"Bearer {key}"
             request_url = f"{url}/{path}"

+ 10 - 0
backend/open_webui/routers/retrieval.py

@@ -1747,6 +1747,16 @@ def search_web(request: Request, engine: str, query: str) -> list[SearchResult]:
             )
         else:
             raise Exception("No TAVILY_API_KEY found in environment variables")
+    elif engine == "exa":
+        if request.app.state.config.EXA_API_KEY:
+            return search_exa(
+                request.app.state.config.EXA_API_KEY,
+                query,
+                request.app.state.config.WEB_SEARCH_RESULT_COUNT,
+                request.app.state.config.WEB_SEARCH_DOMAIN_FILTER_LIST,
+            )
+        else:
+            raise Exception("No EXA_API_KEY found in environment variables")
     elif engine == "searchapi":
         if request.app.state.config.SEARCHAPI_API_KEY:
             return search_searchapi(

+ 1 - 1
backend/open_webui/utils/chat.py

@@ -419,7 +419,7 @@ async def chat_action(request: Request, action_id: str, form_data: dict, user: A
                     params[key] = value
 
             if "__user__" in sig.parameters:
-                __user__ = (user.model_dump() if isinstance(user, UserModel) else {},)
+                __user__ = user.model_dump() if isinstance(user, UserModel) else {}
 
                 try:
                     if hasattr(function_module, "UserValves"):

+ 17 - 1
backend/open_webui/utils/telemetry/setup.py

@@ -4,6 +4,7 @@ from opentelemetry.exporter.otlp.proto.grpc.trace_exporter import OTLPSpanExport
 from opentelemetry.sdk.resources import SERVICE_NAME, Resource
 from opentelemetry.sdk.trace import TracerProvider
 from sqlalchemy import Engine
+from base64 import b64encode
 
 from open_webui.utils.telemetry.exporters import LazyBatchSpanProcessor
 from open_webui.utils.telemetry.instrumentors import Instrumentor
@@ -11,7 +12,10 @@ from open_webui.utils.telemetry.metrics import setup_metrics
 from open_webui.env import (
     OTEL_SERVICE_NAME,
     OTEL_EXPORTER_OTLP_ENDPOINT,
+    OTEL_EXPORTER_OTLP_INSECURE,
     ENABLE_OTEL_METRICS,
+    OTEL_BASIC_AUTH_USERNAME,
+    OTEL_BASIC_AUTH_PASSWORD,
 )
 
 
@@ -22,8 +26,20 @@ def setup(app: FastAPI, db_engine: Engine):
             resource=Resource.create(attributes={SERVICE_NAME: OTEL_SERVICE_NAME})
         )
     )
+
+    # Add basic auth header only if both username and password are not empty
+    headers = []
+    if OTEL_BASIC_AUTH_USERNAME and OTEL_BASIC_AUTH_PASSWORD:
+        auth_string = f"{OTEL_BASIC_AUTH_USERNAME}:{OTEL_BASIC_AUTH_PASSWORD}"
+        auth_header = b64encode(auth_string.encode()).decode()
+        headers = [("authorization", f"Basic {auth_header}")]
+
     # otlp export
-    exporter = OTLPSpanExporter(endpoint=OTEL_EXPORTER_OTLP_ENDPOINT)
+    exporter = OTLPSpanExporter(
+        endpoint=OTEL_EXPORTER_OTLP_ENDPOINT,
+        insecure=OTEL_EXPORTER_OTLP_INSECURE,
+        headers=headers,
+    )
     trace.get_tracer_provider().add_span_processor(LazyBatchSpanProcessor(exporter))
     Instrumentor(app=app, db_engine=db_engine).instrument()
 

+ 1 - 1
pyproject.toml

@@ -139,7 +139,7 @@ requires-python = ">= 3.11, < 3.13.0a1"
 dynamic = ["version"]
 classifiers = [
     "Development Status :: 4 - Beta",
-    "License :: OSI Approved :: MIT License",
+    "License :: Other/Proprietary License",
     "Programming Language :: Python :: 3",
     "Programming Language :: Python :: 3.11",
     "Programming Language :: Python :: 3.12",

+ 2 - 0
src/lib/apis/auths/index.ts

@@ -347,6 +347,8 @@ export const userSignOut = async () => {
 	if (error) {
 		throw error;
 	}
+
+	sessionStorage.clear();
 	return res;
 };
 

+ 1 - 0
src/lib/apis/index.ts

@@ -1587,6 +1587,7 @@ export interface ModelConfig {
 }
 
 export interface ModelMeta {
+	toolIds: never[];
 	description?: string;
 	capabilities?: object;
 	profile_image_url?: string;

+ 47 - 14
src/lib/components/AddServerModal.svelte

@@ -3,6 +3,7 @@
 	import { getContext, onMount } from 'svelte';
 	const i18n = getContext('i18n');
 
+	import { settings } from '$lib/stores';
 	import Modal from '$lib/components/common/Modal.svelte';
 	import Plus from '$lib/components/icons/Plus.svelte';
 	import Minus from '$lib/components/icons/Minus.svelte';
@@ -153,15 +154,16 @@
 <Modal size="sm" bind:show>
 	<div>
 		<div class=" flex justify-between dark:text-gray-100 px-5 pt-4 pb-2">
-			<div class=" text-lg font-medium self-center font-primary">
+			<h1 class=" text-lg font-medium self-center font-primary">
 				{#if edit}
 					{$i18n.t('Edit Connection')}
 				{:else}
 					{$i18n.t('Add Connection')}
 				{/if}
-			</div>
+			</h1>
 			<button
 				class="self-center"
+				aria-label={$i18n.t('Close Configure Connection Modal')}
 				on:click={() => {
 					show = false;
 				}}
@@ -170,6 +172,7 @@
 					xmlns="http://www.w3.org/2000/svg"
 					viewBox="0 0 20 20"
 					fill="currentColor"
+					aria-hidden="true"
 					class="w-5 h-5"
 				>
 					<path
@@ -192,12 +195,17 @@
 						<div class="flex gap-2">
 							<div class="flex flex-col w-full">
 								<div class="flex justify-between mb-0.5">
-									<div class=" text-xs text-gray-500">{$i18n.t('URL')}</div>
+									<label
+										for="api-base-url"
+										class={`text-xs ${($settings?.highContrastMode ?? false) ? 'text-gray-800 dark:text-gray-100' : 'text-gray-500'}`}
+										>{$i18n.t('URL')}</label
+									>
 								</div>
 
 								<div class="flex flex-1 items-center">
 									<input
-										class="w-full flex-1 text-sm bg-transparent placeholder:text-gray-300 dark:placeholder:text-gray-700 outline-hidden"
+										id="api-base-url"
+										class={`w-full flex-1 text-sm bg-transparent ${($settings?.highContrastMode ?? false) ? 'placeholder:text-gray-700 dark:placeholder:text-gray-100' : 'outline-hidden placeholder:text-gray-300 dark:placeholder:text-gray-700'}`}
 										type="text"
 										bind:value={url}
 										placeholder={$i18n.t('API Base URL')}
@@ -214,6 +222,7 @@
 											on:click={() => {
 												verifyHandler();
 											}}
+											aria-label={$i18n.t('Verify Connection')}
 											type="button"
 										>
 											<svg
@@ -221,6 +230,7 @@
 												viewBox="0 0 20 20"
 												fill="currentColor"
 												class="w-4 h-4"
+												aria-hidden="true"
 											>
 												<path
 													fill-rule="evenodd"
@@ -237,9 +247,13 @@
 								</div>
 
 								<div class="flex-1 flex items-center">
+									<label for="url-or-path" class="sr-only"
+										>{$i18n.t('openapi.json URL or Path')}</label
+									>
 									<input
-										class="w-full text-sm bg-transparent placeholder:text-gray-300 dark:placeholder:text-gray-700 outline-hidden"
+										class={`w-full text-sm bg-transparent ${($settings?.highContrastMode ?? false) ? 'placeholder:text-gray-700 dark:placeholder:text-gray-100' : 'outline-hidden placeholder:text-gray-300 dark:placeholder:text-gray-700'}`}
 										type="text"
+										id="url-or-path"
 										bind:value={path}
 										placeholder={$i18n.t('openapi.json URL or Path')}
 										autocomplete="off"
@@ -249,7 +263,9 @@
 							</div>
 						</div>
 
-						<div class="text-xs text-gray-500 mt-1">
+						<div
+							class={`text-xs mt-1 ${($settings?.highContrastMode ?? false) ? 'text-gray-800 dark:text-gray-100' : 'text-gray-500'}`}
+						>
 							{$i18n.t(`WebUI will make requests to "{{url}}"`, {
 								url: path.includes('://') ? path : `${url}${path.startsWith('/') ? '' : '/'}${path}`
 							})}
@@ -257,12 +273,17 @@
 
 						<div class="flex gap-2 mt-2">
 							<div class="flex flex-col w-full">
-								<div class="  text-xs text-gray-500">{$i18n.t('Auth')}</div>
+								<label
+									for="select-bearer-or-session"
+									class={`text-xs ${($settings?.highContrastMode ?? false) ? 'text-gray-800 dark:text-gray-100' : 'text-gray-500'}`}
+									>{$i18n.t('Auth')}</label
+								>
 
 								<div class="flex gap-2">
 									<div class="flex-shrink-0 self-start">
 										<select
-											class="w-full text-sm bg-transparent dark:bg-gray-900 placeholder:text-gray-300 dark:placeholder:text-gray-700 outline-hidden pr-5"
+											id="select-bearer-or-session"
+											class={`w-full text-sm bg-transparent pr-5 ${($settings?.highContrastMode ?? false) ? 'placeholder:text-gray-700 dark:placeholder:text-gray-100' : 'outline-hidden placeholder:text-gray-300 dark:placeholder:text-gray-700'}`}
 											bind:value={auth_type}
 										>
 											<option value="bearer">Bearer</option>
@@ -273,13 +294,14 @@
 									<div class="flex flex-1 items-center">
 										{#if auth_type === 'bearer'}
 											<SensitiveInput
-												className="w-full text-sm bg-transparent placeholder:text-gray-300 dark:placeholder:text-gray-700 outline-hidden"
 												bind:value={key}
 												placeholder={$i18n.t('API Key')}
 												required={false}
 											/>
 										{:else if auth_type === 'session'}
-											<div class="text-xs text-gray-500 self-center translate-y-[1px]">
+											<div
+												class={`text-xs self-center translate-y-[1px] ${($settings?.highContrastMode ?? false) ? 'text-gray-800 dark:text-gray-100' : 'text-gray-500'}`}
+											>
 												{$i18n.t('Forwards system user session credentials to authenticate')}
 											</div>
 										{/if}
@@ -293,11 +315,16 @@
 
 							<div class="flex gap-2">
 								<div class="flex flex-col w-full">
-									<div class=" mb-0.5 text-xs text-gray-500">{$i18n.t('Name')}</div>
+									<label
+										for="enter-name"
+										class={`mb-0.5 text-xs" ${($settings?.highContrastMode ?? false) ? 'text-gray-800 dark:text-gray-100' : 'text-gray-500'}`}
+										>{$i18n.t('Name')}</label
+									>
 
 									<div class="flex-1">
 										<input
-											class="w-full text-sm bg-transparent placeholder:text-gray-300 dark:placeholder:text-gray-700 outline-hidden"
+											id="enter-name"
+											class={`w-full text-sm bg-transparent ${($settings?.highContrastMode ?? false) ? 'placeholder:text-gray-700 dark:placeholder:text-gray-100' : 'outline-hidden placeholder:text-gray-300 dark:placeholder:text-gray-700'}`}
 											type="text"
 											bind:value={name}
 											placeholder={$i18n.t('Enter name')}
@@ -309,11 +336,16 @@
 							</div>
 
 							<div class="flex flex-col w-full mt-2">
-								<div class=" mb-1 text-xs text-gray-500">{$i18n.t('Description')}</div>
+								<label
+									for="description"
+									class={`mb-1 text-xs ${($settings?.highContrastMode ?? false) ? 'text-gray-800 dark:text-gray-100 placeholder:text-gray-700 dark:placeholder:text-gray-100' : 'outline-hidden placeholder:text-gray-300 dark:placeholder:text-gray-700 text-gray-500'}`}
+									>{$i18n.t('Description')}</label
+								>
 
 								<div class="flex-1">
 									<input
-										class="w-full text-sm bg-transparent placeholder:text-gray-300 dark:placeholder:text-gray-700 outline-hidden"
+										id="description"
+										class={`w-full text-sm bg-transparent ${($settings?.highContrastMode ?? false) ? 'placeholder:text-gray-700 dark:placeholder:text-gray-100' : 'outline-hidden placeholder:text-gray-300 dark:placeholder:text-gray-700'}`}
 										type="text"
 										bind:value={description}
 										placeholder={$i18n.t('Enter description')}
@@ -358,6 +390,7 @@
 							{#if loading}
 								<div class="ml-2 self-center">
 									<svg
+										aria-hidden="true"
 										class=" w-4 h-4"
 										viewBox="0 0 24 24"
 										fill="currentColor"

+ 17 - 15
src/lib/components/admin/Evaluations/FeedbackModal.svelte

@@ -37,34 +37,36 @@
 
 			<div class="flex flex-col md:flex-row w-full px-5 pb-4 md:space-x-4 dark:text-gray-200">
 				<div class="flex flex-col w-full">
+					<div class="mb-2 -mx-1">
+						{#if selectedFeedback?.data?.tags && selectedFeedback?.data?.tags.length}
+							<div class="flex flex-wrap gap-1 mt-1">
+								{#each selectedFeedback?.data?.tags as tag}
+									<span class="px-2 py-0.5 rounded-full bg-gray-100 dark:bg-gray-850 text-xs"
+										>{tag}</span
+									>
+								{/each}
+							</div>
+						{:else}
+							<span>-</span>
+						{/if}
+					</div>
+
 					<div class="flex flex-col w-full mb-2">
 						<div class=" mb-1 text-xs text-gray-500">{$i18n.t('Rating')}</div>
 
-						<div class="flex-1">
+						<div class="flex-1 text-xs">
 							<span>{selectedFeedback?.data?.details?.rating ?? '-'}</span>
 						</div>
 					</div>
 					<div class="flex flex-col w-full mb-2">
 						<div class=" mb-1 text-xs text-gray-500">{$i18n.t('Reason')}</div>
 
-						<div class="flex-1">
+						<div class="flex-1 text-xs">
 							<span>{selectedFeedback?.data?.reason || '-'}</span>
 						</div>
 					</div>
 
-					<div class="mb-2">
-						{#if selectedFeedback?.data?.tags && selectedFeedback?.data?.tags.length}
-							<div class="flex flex-wrap gap-1 mt-1">
-								{#each selectedFeedback?.data?.tags as tag}
-									<span class="px-2 py-0.5 rounded bg-gray-100 dark:bg-gray-800 text-xs">{tag}</span
-									>
-								{/each}
-							</div>
-						{:else}
-							<span>-</span>
-						{/if}
-					</div>
-					<div class="flex justify-end pt-3">
+					<div class="flex justify-end pt-2">
 						<button
 							class="px-3.5 py-1.5 text-sm font-medium bg-black hover:bg-gray-900 text-white dark:bg-white dark:text-black dark:hover:bg-gray-100 transition rounded-full"
 							type="button"

+ 1 - 1
src/lib/components/admin/Evaluations/Feedbacks.svelte

@@ -305,7 +305,7 @@
 			<tbody class="">
 				{#each paginatedFeedbacks as feedback (feedback.id)}
 					<tr
-						class="bg-white dark:bg-gray-900 dark:border-gray-850 text-xs cursor-pointer hover:bg-gray-50 dark:hover:bg-gray-800 transition"
+						class="bg-white dark:bg-gray-900 dark:border-gray-850 text-xs cursor-pointer hover:bg-gray-50 dark:hover:bg-gray-850/50 transition"
 						on:click={() => openFeedbackModal(feedback)}
 					>
 						<td class=" py-0.5 text-right font-semibold">

+ 1 - 1
src/lib/components/admin/Evaluations/Leaderboard.svelte

@@ -504,7 +504,7 @@
 			<tbody class="">
 				{#each sortedModels as model, modelIdx (model.id)}
 					<tr
-						class="bg-white dark:bg-gray-900 dark:border-gray-850 text-xs group cursor-pointer hover:bg-gray-50 dark:hover:bg-gray-800 transition"
+						class="bg-white dark:bg-gray-900 dark:border-gray-850 text-xs group cursor-pointer hover:bg-gray-50 dark:hover:bg-gray-850/50 transition"
 						on:click={() => openFeedbackModal(model)}
 					>
 						<td class="px-3 py-1.5 text-left font-medium text-gray-900 dark:text-white w-fit">

+ 4 - 4
src/lib/components/admin/Evaluations/LeaderboardModal.svelte

@@ -52,10 +52,10 @@
 		<div class="px-5 pb-4 dark:text-gray-200">
 			<div class="mb-2">
 				{#if topTags.length}
-					<div class="flex flex-wrap gap-1 mt-1">
+					<div class="flex flex-wrap gap-1 mt-1 -mx-1">
 						{#each topTags as tagInfo}
-							<span class="px-2 py-0.5 rounded bg-gray-100 dark:bg-gray-800 text-xs">
-								{tagInfo.tag} <span class="text-gray-500">({tagInfo.count})</span>
+							<span class="px-2 py-0.5 rounded-full bg-gray-100 dark:bg-gray-850 text-xs">
+								{tagInfo.tag} <span class="text-gray-500 font-medium">{tagInfo.count}</span>
 							</span>
 						{/each}
 					</div>
@@ -63,7 +63,7 @@
 					<span>-</span>
 				{/if}
 			</div>
-			<div class="flex justify-end pt-3">
+			<div class="flex justify-end pt-2">
 				<button
 					class="px-3.5 py-1.5 text-sm font-medium bg-black hover:bg-gray-900 text-white dark:bg-white dark:text-black dark:hover:bg-gray-100 transition rounded-full"
 					type="button"

+ 6 - 6
src/lib/components/chat/Chat.svelte

@@ -153,10 +153,10 @@
 			webSearchEnabled = false;
 			imageGenerationEnabled = false;
 
-			if (localStorage.getItem(`chat-input${chatIdProp ? `-${chatIdProp}` : ''}`)) {
+			if (sessionStorage.getItem(`chat-input${chatIdProp ? `-${chatIdProp}` : ''}`)) {
 				try {
 					const input = JSON.parse(
-						localStorage.getItem(`chat-input${chatIdProp ? `-${chatIdProp}` : ''}`)
+						sessionStorage.getItem(`chat-input${chatIdProp ? `-${chatIdProp}` : ''}`)
 					);
 
 					if (!$temporaryChatEnabled) {
@@ -446,7 +446,7 @@
 			}
 		});
 
-		if (localStorage.getItem(`chat-input${chatIdProp ? `-${chatIdProp}` : ''}`)) {
+		if (sessionStorage.getItem(`chat-input${chatIdProp ? `-${chatIdProp}` : ''}`)) {
 			prompt = '';
 			files = [];
 			selectedToolIds = [];
@@ -457,7 +457,7 @@
 
 			try {
 				const input = JSON.parse(
-					localStorage.getItem(`chat-input${chatIdProp ? `-${chatIdProp}` : ''}`)
+					sessionStorage.getItem(`chat-input${chatIdProp ? `-${chatIdProp}` : ''}`)
 				);
 
 				if (!$temporaryChatEnabled) {
@@ -2120,12 +2120,12 @@
 									onChange={(input) => {
 										if (!$temporaryChatEnabled) {
 											if (input.prompt !== null) {
-												localStorage.setItem(
+												sessionStorage.setItem(
 													`chat-input${$chatId ? `-${$chatId}` : ''}`,
 													JSON.stringify(input)
 												);
 											} else {
-												localStorage.removeItem(`chat-input${$chatId ? `-${$chatId}` : ''}`);
+												sessionStorage.removeItem(`chat-input${$chatId ? `-${$chatId}` : ''}`);
 											}
 										}
 									}}

+ 7 - 3
src/lib/components/chat/ChatPlaceholder.svelte

@@ -46,7 +46,9 @@
 					>
 						<Tooltip
 							content={marked.parse(
-								sanitizeResponseContent(models[selectedModelIdx]?.info?.meta?.description ?? '')
+								sanitizeResponseContent(
+									models[selectedModelIdx]?.info?.meta?.description ?? ''
+								).replaceAll('\n', '<br>')
 							)}
 							placement="right"
 						>
@@ -68,7 +70,7 @@
 
 		{#if $temporaryChatEnabled}
 			<Tooltip
-				content={$i18n.t('This chat won’t appear in history and your messages will not be saved.')}
+				content={$i18n.t("This chat won't appear in history and your messages will not be saved.")}
 				className="w-full flex justify-start mb-0.5"
 				placement="top"
 			>
@@ -96,7 +98,9 @@
 							class="mt-0.5 text-base font-normal text-gray-500 dark:text-gray-400 line-clamp-3 markdown"
 						>
 							{@html marked.parse(
-								sanitizeResponseContent(models[selectedModelIdx]?.info?.meta?.description)
+								sanitizeResponseContent(
+									models[selectedModelIdx]?.info?.meta?.description
+								).replaceAll('\n', '<br>')
 							)}
 						</div>
 						{#if models[selectedModelIdx]?.info?.meta?.user}

+ 4 - 2
src/lib/components/chat/Controls/Controls.svelte

@@ -9,7 +9,7 @@
 	import FileItem from '$lib/components/common/FileItem.svelte';
 	import Collapsible from '$lib/components/common/Collapsible.svelte';
 
-	import { user } from '$lib/stores';
+	import { user, settings } from '$lib/stores';
 	export let models = [];
 	export let chatFiles = [];
 	export let params = {};
@@ -74,7 +74,9 @@
 				<div class="" slot="content">
 					<textarea
 						bind:value={params.system}
-						class="w-full text-xs py-1.5 bg-transparent outline-hidden resize-none"
+						class="w-full text-xs outline-hidden resize-vertical {$settings.highContrastMode
+							? 'border-2 border-gray-300 dark:border-gray-700 rounded-lg bg-gray-50 dark:bg-gray-800 p-2.5'
+							: 'py-1.5 bg-transparent'}"
 						rows="4"
 						placeholder={$i18n.t('Enter system prompt')}
 					/>

+ 2 - 1
src/lib/components/chat/Messages/Markdown.svelte

@@ -27,7 +27,8 @@
 	let tokens = [];
 
 	const options = {
-		throwOnError: false
+		throwOnError: false,
+		breaks: true
 	};
 
 	marked.use(markedKatexExtension(options));

+ 8 - 4
src/lib/components/chat/Placeholder.svelte

@@ -164,7 +164,9 @@
 						<Tooltip
 							className=" w-fit"
 							content={marked.parse(
-								sanitizeResponseContent(models[selectedModelIdx]?.info?.meta?.description ?? '')
+								sanitizeResponseContent(
+									models[selectedModelIdx]?.info?.meta?.description ?? ''
+								).replaceAll('\n', '<br>')
 							)}
 							placement="top"
 						>
@@ -172,7 +174,9 @@
 								class="mt-0.5 px-2 text-sm font-normal text-gray-500 dark:text-gray-400 line-clamp-2 max-w-xl markdown"
 							>
 								{@html marked.parse(
-									sanitizeResponseContent(models[selectedModelIdx]?.info?.meta?.description)
+									sanitizeResponseContent(
+										models[selectedModelIdx]?.info?.meta?.description ?? ''
+									).replaceAll('\n', '<br>')
 								)}
 							</div>
 						</Tooltip>
@@ -218,9 +222,9 @@
 					onChange={(input) => {
 						if (!$temporaryChatEnabled) {
 							if (input.prompt !== null) {
-								localStorage.setItem(`chat-input`, JSON.stringify(input));
+								sessionStorage.setItem(`chat-input`, JSON.stringify(input));
 							} else {
-								localStorage.removeItem(`chat-input`);
+								sessionStorage.removeItem(`chat-input`);
 							}
 						}
 					}}

+ 4 - 1
src/lib/components/chat/Settings/General.svelte

@@ -274,7 +274,10 @@
 				<div class=" my-2.5 text-sm font-medium">{$i18n.t('System Prompt')}</div>
 				<Textarea
 					bind:value={system}
-					className="w-full text-sm bg-white dark:text-gray-300 dark:bg-gray-900 outline-hidden resize-none"
+					className={'w-full text-sm outline-hidden resize-vertical' +
+						($settings.highContrastMode
+							? ' p-2.5 border-2 border-gray-300 dark:border-gray-700 rounded-lg bg-gray-50 dark:bg-gray-850 text-gray-900 dark:text-gray-100 focus:ring-1 focus:ring-blue-500 focus:border-blue-500 overflow-y-hidden'
+							: ' bg-white dark:text-gray-300 dark:bg-gray-900')}
 					rows="4"
 					placeholder={$i18n.t('Enter system prompt here')}
 				/>

+ 2 - 4
src/lib/components/chat/SettingsModal.svelte

@@ -211,9 +211,7 @@
 			: []),
 
 		...($user?.role === 'admin' ||
-		($user?.role === 'user' &&
-			$user?.permissions?.features?.direct_tool_servers &&
-			$config?.features?.direct_tool_servers)
+		($user?.role === 'user' && $user?.permissions?.features?.direct_tool_servers)
 			? [
 					{
 						id: 'tools',
@@ -688,7 +686,7 @@
 								</button>
 							{/if}
 						{:else if tabId === 'tools'}
-							{#if $user?.role === 'admin' || ($user?.role === 'user' && $user?.permissions?.features?.direct_tool_servers && $config?.features?.direct_tool_servers)}
+							{#if $user?.role === 'admin' || ($user?.role === 'user' && $user?.permissions?.features?.direct_tool_servers)}
 								<button
 									role="tab"
 									aria-controls="tab-tools"

+ 8 - 0
src/lib/components/common/ConfirmDialog.svelte

@@ -25,11 +25,19 @@
 
 	export let show = false;
 
+	$: if (show) {
+		init();
+	}
+
 	let modalElement = null;
 	let mounted = false;
 
 	let focusTrap: FocusTrap.FocusTrap | null = null;
 
+	const init = () => {
+		inputValue = '';
+	};
+
 	const handleKeyDown = (event: KeyboardEvent) => {
 		if (event.key === 'Escape') {
 			console.log('Escape');

+ 17 - 7
src/lib/components/common/Folder.svelte

@@ -69,12 +69,22 @@
 						}
 					} else {
 						open = true;
-
-						const dataTransfer = e.dataTransfer.getData('text/plain');
-						const data = JSON.parse(dataTransfer);
-
-						console.log(data);
-						dispatch('drop', data);
+						try {
+							const dataTransfer = e.dataTransfer.getData('text/plain');
+							if (dataTransfer) {
+								const data = JSON.parse(dataTransfer);
+								console.log(data);
+								dispatch('drop', data);
+							} else {
+								console.log('Dropped text data is empty or not text/plain.');
+							}
+						} catch (error) {
+							console.log(
+								'Dropped data is not valid JSON text or is empty. Ignoring drop event for this type of data.'
+							);
+						} finally {
+							draggedOver = false;
+						}
 					}
 				}
 			}
@@ -103,7 +113,7 @@
 		if (!dragAndDrop) {
 			return;
 		}
-		folderElement.addEventListener('dragover', onDragOver);
+		folderElement.removeEventListener('dragover', onDragOver);
 		folderElement.removeEventListener('drop', onDrop);
 		folderElement.removeEventListener('dragleave', onDragLeave);
 	});

+ 2 - 3
src/lib/components/common/SensitiveInput.svelte

@@ -7,8 +7,7 @@
 	export let required = true;
 	export let readOnly = false;
 	export let outerClassName = 'flex flex-1 bg-transparent';
-	export let inputClassName =
-		'w-full text-sm py-0.5 placeholder:text-gray-300 dark:placeholder:text-gray-700 bg-transparent outline-hidden';
+	export let inputClassName = 'w-full text-sm py-0.5 bg-transparent';
 	export let showButtonClassName = 'pl-1.5  transition bg-transparent';
 
 	let show = false;
@@ -17,7 +16,7 @@
 <div class={outerClassName}>
 	<label class="sr-only" for="password-input">{placeholder || $i18n.t('Password')}</label>
 	<input
-		class={`${inputClassName} ${show ? '' : 'password'} ${($settings?.highContrastMode ?? false) ? '' : ' outline-hidden'}`}
+		class={`${inputClassName} ${show ? '' : 'password'} ${($settings?.highContrastMode ?? false) ? 'placeholder:text-gray-700 dark:placeholder:text-gray-100' : ' outline-hidden placeholder:text-gray-300 dark:placeholder:text-gray-700'}`}
 		{placeholder}
 		id="password-input"
 		bind:value

+ 6 - 2
src/lib/components/common/Switch.svelte

@@ -1,6 +1,7 @@
 <script lang="ts">
 	import { createEventDispatcher, tick } from 'svelte';
 	import { Switch } from 'bits-ui';
+	import { settings } from '$lib/stores';
 	export let state = true;
 	export let id = '';
 
@@ -12,9 +13,12 @@
 <Switch.Root
 	bind:checked={state}
 	{id}
-	class="flex h-5 min-h-5 w-9 shrink-0 cursor-pointer items-center rounded-full px-[3px] mx-[1px] transition  {state
+	class="flex h-5 min-h-5 w-9 shrink-0 cursor-pointer items-center rounded-full px-[3px] mx-[1px] transition  {($settings?.highContrastMode ??
+	false)
+		? 'focus:outline focus:outline-2 focus:outline-gray-800 focus:dark:outline-gray-200'
+		: 'outline outline-1 outline-gray-100 dark:outline-gray-800'} {state
 		? ' bg-emerald-600'
-		: 'bg-gray-200 dark:bg-transparent'} outline outline-1 outline-gray-100 dark:outline-gray-800"
+		: 'bg-gray-200 dark:bg-transparent'}"
 >
 	<Switch.Thumb
 		class="pointer-events-none block size-4 shrink-0 rounded-full bg-white transition-transform data-[state=checked]:translate-x-3.5 data-[state=unchecked]:translate-x-0 data-[state=unchecked]:shadow-mini "

+ 12 - 10
src/lib/components/layout/Sidebar/UserMenu.svelte

@@ -107,39 +107,41 @@
 			</button>
 
 			{#if role === 'admin'}
-				<button
-					class="flex rounded-md py-1.5 px-3 w-full hover:bg-gray-50 dark:hover:bg-gray-800 transition"
+				<a
+					href="/playground"
+					class="flex rounded-md py-1.5 px-3 w-full hover:bg-gray-50 dark:hover:bg-gray-800 transition select-none"
 					on:click={() => {
-						goto('/playground');
 						show = false;
-
 						if ($mobile) {
 							showSidebar.set(false);
 						}
 					}}
+					rel="noopener noreferrer"
+					draggable="false"
 				>
 					<div class=" self-center mr-3">
 						<Code className="size-5" strokeWidth="1.5" />
 					</div>
 					<div class=" self-center truncate">{$i18n.t('Playground')}</div>
-				</button>
+				</a>
 
-				<button
-					class="flex rounded-md py-1.5 px-3 w-full hover:bg-gray-50 dark:hover:bg-gray-800 transition"
+				<a
+					href="/admin"
+					class="flex rounded-md py-1.5 px-3 w-full hover:bg-gray-50 dark:hover:bg-gray-800 transition select-none"
 					on:click={() => {
-						goto('/admin');
 						show = false;
-
 						if ($mobile) {
 							showSidebar.set(false);
 						}
 					}}
+					rel="noopener noreferrer"
+					draggable="false"
 				>
 					<div class=" self-center mr-3">
 						<UserGroup className="w-5 h-5" strokeWidth="1.5" />
 					</div>
 					<div class=" self-center truncate">{$i18n.t('Admin Panel')}</div>
-				</button>
+				</a>
 			{/if}
 
 			{#if help}

+ 1 - 0
src/lib/dayjs.js

@@ -99,6 +99,7 @@ import 'dayjs/locale/uz';
 import 'dayjs/locale/vi';
 import 'dayjs/locale/yo';
 import 'dayjs/locale/zh';
+import 'dayjs/locale/zh-tw';
 import 'dayjs/locale/et';
 
 export default dayjs;

+ 1 - 1
src/lib/i18n/locales/ar-BH/translation.json

@@ -210,6 +210,7 @@
 	"Clone Chat": "",
 	"Clone of {{TITLE}}": "",
 	"Close": "أغلق",
+	"Close Configure Connection Modal": "",
 	"Close modal": "",
 	"Close settings modal": "",
 	"Code execution": "",
@@ -1232,7 +1233,6 @@
 	"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 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 model is not publicly available. Please select another model.": "",

+ 1 - 1
src/lib/i18n/locales/ar/translation.json

@@ -210,6 +210,7 @@
 	"Clone Chat": "استنساخ المحادثة",
 	"Clone of {{TITLE}}": "استنساخ لـ {{TITLE}}",
 	"Close": "إغلاق",
+	"Close Configure Connection Modal": "",
 	"Close modal": "",
 	"Close settings modal": "",
 	"Code execution": "تنفيذ الشيفرة",
@@ -1232,7 +1233,6 @@
 	"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 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 model is not publicly available. Please select another model.": "",

+ 1 - 1
src/lib/i18n/locales/bg-BG/translation.json

@@ -210,6 +210,7 @@
 	"Clone Chat": "Клониране на чат",
 	"Clone of {{TITLE}}": "Клонинг на {{TITLE}}",
 	"Close": "Затвори",
+	"Close Configure Connection Modal": "",
 	"Close modal": "",
 	"Close settings modal": "",
 	"Code execution": "Изпълнение на код",
@@ -1232,7 +1233,6 @@
 	"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 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 model is not publicly available. Please select another model.": "",

+ 1 - 1
src/lib/i18n/locales/bn-BD/translation.json

@@ -210,6 +210,7 @@
 	"Clone Chat": "",
 	"Clone of {{TITLE}}": "",
 	"Close": "বন্ধ",
+	"Close Configure Connection Modal": "",
 	"Close modal": "",
 	"Close settings modal": "",
 	"Code execution": "",
@@ -1232,7 +1233,6 @@
 	"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 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 model is not publicly available. Please select another model.": "",

+ 1 - 1
src/lib/i18n/locales/bo-TB/translation.json

@@ -210,6 +210,7 @@
 	"Clone Chat": "ཁ་བརྡ་འདྲ་བཟོ།",
 	"Clone of {{TITLE}}": "{{TITLE}} ཡི་འདྲ་བཟོ།",
 	"Close": "ཁ་རྒྱག་པ།",
+	"Close Configure Connection Modal": "",
 	"Close modal": "",
 	"Close settings modal": "",
 	"Code execution": "ཀོཌ་ལག་བསྟར།",
@@ -1232,7 +1233,6 @@
 	"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 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 model is not publicly available. Please select another model.": "",

+ 134 - 134
src/lib/i18n/locales/ca-ES/translation.json

@@ -35,7 +35,7 @@
 	"Add Connection": "Afegir connexió",
 	"Add Content": "Afegir contingut",
 	"Add content here": "Afegir contingut aquí",
-	"Add Custom Parameter": "",
+	"Add Custom Parameter": "Afegir paràmetre personalitzat ",
 	"Add custom prompt": "Afegir una indicació personalitzada",
 	"Add Files": "Afegir arxius",
 	"Add Group": "Afegir grup",
@@ -65,7 +65,7 @@
 	"Allow Chat Edit": "Permetre editar el xat",
 	"Allow Chat Export": "Permetre exportar el xat",
 	"Allow Chat Share": "Permetre compartir el xat",
-	"Allow Chat System Prompt": "",
+	"Allow Chat System Prompt": "Permet la indicació de sistema al xat",
 	"Allow File Upload": "Permetre la pujada d'arxius",
 	"Allow Multiple Models in Chat": "Permetre múltiple models al xat",
 	"Allow non-local voices": "Permetre veus no locals",
@@ -75,8 +75,8 @@
 	"Allow User Location": "Permetre la ubicació de l'usuari",
 	"Allow Voice Interruption in Call": "Permetre la interrupció de la veu en una trucada",
 	"Allowed Endpoints": "Punts d'accés permesos",
-	"Allowed File Extensions": "",
-	"Allowed file extensions for upload. Separate multiple extensions with commas. Leave empty for all file types.": "",
+	"Allowed File Extensions": "Extensions de fitxer permeses",
+	"Allowed file extensions for upload. Separate multiple extensions with commas. Leave empty for all file types.": "Extensions de fitxer permeses per a la càrrega. Separa múltiples extensions amb comes. Deixa buit per a tots els tipus de fitxer.",
 	"Already have an account?": "Ja tens un compte?",
 	"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.": "Alternativa al top_p, i pretén garantir un equilibri de qualitat i varietat. El paràmetre p representa la probabilitat mínima que es consideri un token, en relació amb la probabilitat del token més probable. Per exemple, amb p=0,05 i el token més probable amb una probabilitat de 0,9, es filtren els logits amb un valor inferior a 0,045.",
 	"Always": "Sempre",
@@ -91,14 +91,14 @@
 	"and {{COUNT}} more": "i {{COUNT}} més",
 	"and create a new shared link.": "i crear un nou enllaç compartit.",
 	"Android": "Android",
-	"API": "",
+	"API": "API",
 	"API Base URL": "URL Base de l'API",
-	"API details for using a vision-language model in the picture description. This parameter is mutually exclusive with picture_description_local.": "",
+	"API details for using a vision-language model in the picture description. This parameter is mutually exclusive with picture_description_local.": "Detalls de l'API per utilitzar un model de llenguatge amb visió a la descripció de la imatge. Aquest paràmetre és mutuament excloent amb picture_description_local.",
 	"API Key": "clau API",
 	"API Key created.": "clau API creada.",
 	"API Key Endpoint Restrictions": "Restriccions del punt d'accés de la Clau API",
 	"API keys": "Claus de l'API",
-	"API Version": "",
+	"API Version": "Versió de l'API",
 	"Application DN": "DN d'aplicació",
 	"Application DN Password": "Contrasenya del DN d'aplicació",
 	"applies to all users with the \"user\" role": "s'aplica a tots els usuaris amb el rol \"usuari\"",
@@ -156,7 +156,7 @@
 	"Brave Search API Key": "Clau API de Brave Search",
 	"By {{name}}": "Per {{name}}",
 	"Bypass Embedding and Retrieval": "Desactivar l'Embedding i el Retrieval",
-	"Bypass Web Loader": "",
+	"Bypass Web Loader": "Ometre el càrregador web",
 	"Calendar": "Calendari",
 	"Call": "Trucada",
 	"Call feature is not supported when using Web STT engine": "La funció de trucada no s'admet quan s'utilitza el motor Web STT",
@@ -189,7 +189,7 @@
 	"Chunk Size": "Mida del bloc",
 	"Ciphers": "Xifradors",
 	"Citation": "Cita",
-	"Citations": "",
+	"Citations": "Cites",
 	"Clear memory": "Esborrar la memòria",
 	"Clear Memory": "Esborrar la memòria",
 	"click here": "prem aquí",
@@ -210,8 +210,9 @@
 	"Clone Chat": "Clonar el xat",
 	"Clone of {{TITLE}}": "Clon de {{TITLE}}",
 	"Close": "Tancar",
-	"Close modal": "",
-	"Close settings modal": "",
+	"Close Configure Connection Modal": "",
+	"Close modal": "Tancar el modal",
+	"Close settings modal": "Tancar el modal de configuració",
 	"Code execution": "Execució de codi",
 	"Code Execution": "Excució de Codi",
 	"Code Execution Engine": "Motor d'execució de codi",
@@ -241,7 +242,7 @@
 	"Connect to your own OpenAPI compatible external tool servers.": "Connecta als teus propis servidors d'eines externs compatibles amb OpenAPI",
 	"Connection failed": "La connexió ha fallat",
 	"Connection successful": "Connexió correcta",
-	"Connection Type": "",
+	"Connection Type": "Tipus de connexió",
 	"Connections": "Connexions",
 	"Connections saved successfully": "Les connexions s'han desat correctament",
 	"Constrains effort on reasoning for reasoning models. Only applicable to reasoning models from specific providers that support reasoning effort.": "Restringeix l'esforç de raonament dels models de raonament. Només aplicable a models de raonament de proveïdors específics que donen suport a l'esforç de raonament.",
@@ -257,7 +258,7 @@
 	"Controls": "Controls",
 	"Controls the balance between coherence and diversity of the output. A lower value will result in more focused and coherent text.": "Controla l'equilibri entre la coherència i la diversitat de la sortida. Un valor més baix donarà lloc a un text més enfocat i coherent.",
 	"Copied": "Copiat",
-	"Copied link to clipboard": "",
+	"Copied link to clipboard": "Enllaç copiat al portaretalls",
 	"Copied shared chat URL to clipboard!": "S'ha copiat l'URL compartida al porta-retalls!",
 	"Copied to clipboard": "Copiat al porta-retalls",
 	"Copy": "Copiar",
@@ -288,13 +289,13 @@
 	"Current Model": "Model actual",
 	"Current Password": "Contrasenya actual",
 	"Custom": "Personalitzat",
-	"Custom Parameter Name": "",
-	"Custom Parameter Value": "",
+	"Custom Parameter Name": "Nom del paràmetre personalitzat",
+	"Custom Parameter Value": "Valor del paràmetre personalitzat",
 	"Danger Zone": "Zona de perill",
 	"Dark": "Fosc",
 	"Database": "Base de dades",
-	"Datalab Marker API": "",
-	"Datalab Marker API Key required.": "",
+	"Datalab Marker API": "API de Datalab Marker",
+	"Datalab Marker API Key required.": "API de Datalab Marker requereix clau.",
 	"December": "Desembre",
 	"Default": "Per defecte",
 	"Default (Open AI)": "Per defecte (Open AI)",
@@ -329,20 +330,20 @@
 	"Deleted {{deleteModelTag}}": "S'ha eliminat {{deleteModelTag}}",
 	"Deleted {{name}}": "S'ha eliminat {{name}}",
 	"Deleted User": "Usuari eliminat",
-	"Deployment names are required for Azure OpenAI": "",
-	"Describe Pictures in Documents": "",
+	"Deployment names are required for Azure OpenAI": "Els noms de desplegament són requerits per Azure OpenAI",
+	"Describe Pictures in Documents": "Descriu les omatges en els documents",
 	"Describe your knowledge base and objectives": "Descriu la teva base de coneixement i objectius",
 	"Description": "Descripció",
 	"Detect Artifacts Automatically": "Detectar automàticament els artefactes",
-	"Dictate": "",
+	"Dictate": "Dictar",
 	"Didn't fully follow instructions": "No s'han seguit les instruccions completament",
 	"Direct": "Directe",
 	"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": "Servidors d'eines directes",
-	"Disable Image Extraction": "",
-	"Disable image extraction from the PDF. If Use LLM is enabled, images will be automatically captioned. Defaults to False.": "",
+	"Disable Image Extraction": "Deshabilitar l'extracció d'imatges",
+	"Disable image extraction from the PDF. If Use LLM is enabled, images will be automatically captioned. Defaults to False.": "Desactiva l'extracció d'imatges del PDF. Si Utilitza LLM està habilitat, les imatges es descriuran automàticament. Per defecte és Fals.",
 	"Disabled": "Deshabilitat",
 	"Discover a function": "Descobrir una funció",
 	"Discover a model": "Descobrir un model",
@@ -387,18 +388,18 @@
 	"e.g. \"json\" or a JSON schema": "p. ex. \"json\" o un esquema JSON",
 	"e.g. 60": "p. ex. 60",
 	"e.g. A filter to remove profanity from text": "p. ex. Un filtre per eliminar paraules malsonants del text",
-	"e.g. en": "",
+	"e.g. en": "p. ex. en",
 	"e.g. My Filter": "p. ex. El meu filtre",
 	"e.g. My Tools": "p. ex. Les meves eines",
 	"e.g. my_filter": "p. ex. els_meus_filtres",
 	"e.g. my_tools": "p. ex. les_meves_eines",
-	"e.g. pdf, docx, txt": "",
+	"e.g. pdf, docx, txt": "p. ex. pdf, docx, txt",
 	"e.g. Tools for performing various operations": "p. ex. Eines per dur a terme operacions",
 	"e.g., 3, 4, 5 (leave blank for default)": "p. ex. 3, 4, 5 (deixa-ho en blanc per utilitzar el per defecte)",
-	"e.g., audio/wav,audio/mpeg (leave blank for defaults)": "",
+	"e.g., audio/wav,audio/mpeg (leave blank for defaults)": "p. ex. audio/wav,audio/mpeg (deixa-ho en blanc per utilitzar el per defecte)",
 	"e.g., en-US,ja-JP (leave blank for auto-detect)": "p. ex. en-US, ja-JP, ca-ES (deixa-ho en blanc per detecció automàtica)",
 	"e.g., westus (leave blank for eastus)": "p. ex. westus (deixa-ho en blanc per a eastus)",
-	"e.g.) en,fr,de": "",
+	"e.g.) en,fr,de": "p. ex. en,fr,de",
 	"Edit": "Editar",
 	"Edit Arena Model": "Editar model de l'Arena",
 	"Edit Channel": "Editar el canal",
@@ -407,7 +408,7 @@
 	"Edit Memory": "Editar la memòria",
 	"Edit User": "Editar l'usuari",
 	"Edit User Group": "Editar el grup d'usuaris",
-	"Eject": "",
+	"Eject": "Expulsar",
 	"ElevenLabs": "ElevenLabs",
 	"Email": "Correu electrònic",
 	"Embark on adventures": "Embarcar en aventures",
@@ -433,14 +434,14 @@
 	"Ensure your CSV file includes 4 columns in this order: Name, Email, Password, Role.": "Assegura't que els teus fitxers CSV inclouen 4 columnes en aquest ordre: Nom, Correu electrònic, Contrasenya, Rol.",
 	"Enter {{role}} message here": "Introdueix aquí el missatge de {{role}}",
 	"Enter a detail about yourself for your LLMs to recall": "Introdueix un detall sobre tu què els teus models de llenguatge puguin recordar",
-	"Enter a title for the pending user info overlay. Leave empty for default.": "",
-	"Enter a watermark for the response. Leave empty for none.": "",
+	"Enter a title for the pending user info overlay. Leave empty for default.": "Introdueix un títol per a la finestra de dades d'usuari pendent. Deixa buit per a valor per defecte.",
+	"Enter a watermark for the response. Leave empty for none.": "Introdueix una marca d'aigua per a la resposta. Deixa-ho buit per a cap.",
 	"Enter api auth string (e.g. username:password)": "Entra la cadena d'autenticació api (p. ex. nom d'usuari:contrasenya)",
 	"Enter Application DN": "Introdueix el DN d'aplicació",
 	"Enter Application DN Password": "Introdueix la contrasenya del DN d'aplicació",
 	"Enter Bing Search V7 Endpoint": "Introdueix el punt de connexió de Bing Search V7",
 	"Enter Bing Search V7 Subscription Key": "Introdueix la clau de subscripció de Bing Search V7",
-	"Enter BM25 Weight": "",
+	"Enter BM25 Weight": "Introdueix el pes BM25",
 	"Enter Bocha Search API Key": "Introdueix la clau API de Bocha Search",
 	"Enter Brave Search API Key": "Introdueix la clau API de Brave Search",
 	"Enter certificate path": "Introdueix el camí del certificat",
@@ -448,9 +449,9 @@
 	"Enter Chunk Overlap": "Introdueix la mida de solapament de blocs",
 	"Enter Chunk Size": "Introdueix la mida del bloc",
 	"Enter comma-separated \"token:bias_value\" pairs (example: 5432:100, 413:-100)": "Introdueix parelles de \"token:valor de biaix\" separats per comes (exemple: 5432:100, 413:-100)",
-	"Enter Config in JSON format": "",
-	"Enter content for the pending user info overlay. Leave empty for default.": "",
-	"Enter Datalab Marker API Key": "",
+	"Enter Config in JSON format": "Introdueix la configuració en format JSON",
+	"Enter content for the pending user info overlay. Leave empty for default.": "Introdueix el contingut per a la finestra de dades d'usuari pendent. Deixa-ho buit per a valor per defecte.",
+	"Enter Datalab Marker API Key": "Introdueix la clau API de Datalab Marker",
 	"Enter description": "Introdueix la descripció",
 	"Enter Docling OCR Engine": "Introdueix el motor OCR de Docling",
 	"Enter Docling OCR Language(s)": "Introdueix els idiomes per a l'OCR de Docling",
@@ -459,8 +460,8 @@
 	"Enter Document Intelligence Key": "Introdueix la clau de Document Intelligence",
 	"Enter domains separated by commas (e.g., example.com,site.org)": "Introdueix els dominis separats per comes (p. ex. example.com,site.org)",
 	"Enter Exa API Key": "Introdueix la clau API de d'EXA",
-	"Enter External Document Loader API Key": "",
-	"Enter External Document Loader URL": "",
+	"Enter External Document Loader API Key": "Introdueix la clau API de Document Loader",
+	"Enter External Document Loader URL": "Introdueix la URL de Document Loader",
 	"Enter External Web Loader API Key": "Introdueix la clau API d'External Web Loader",
 	"Enter External Web Loader URL": "Introdueix la URL d'External Web Loader",
 	"Enter External Web Search API Key": "Introdueix la clau API d'External Web Search",
@@ -482,7 +483,7 @@
 	"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",
-	"Enter name": "",
+	"Enter name": "Introdueix el nom",
 	"Enter New Password": "Introdueix un nova contrasenya",
 	"Enter Number of Steps (e.g. 50)": "Introdueix el nombre de passos (p. ex. 50)",
 	"Enter Perplexity API Key": "Introdueix la clau API de Perplexity",
@@ -513,8 +514,8 @@
 	"Enter Tavily API Key": "Introdueix la clau API de Tavily",
 	"Enter Tavily Extract Depth": "Introdueix la profunditat d'extracció 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 the URL of the function to import": "",
-	"Enter the URL to import": "",
+	"Enter the URL of the function to import": "Introdueix la URL de la funció a importar",
+	"Enter the URL to import": "Introdueix la URL a importar",
 	"Enter Tika Server URL": "Introdueix l'URL del servidor Tika",
 	"Enter timeout in seconds": "Entra el temps màxim en segons",
 	"Enter to Send": "Enter per enviar",
@@ -541,7 +542,7 @@
 	"Error accessing Google Drive: {{error}}": "Error en accedir a Google Drive: {{error}}",
 	"Error accessing media devices.": "Error en accedir als dispositius multimèdia",
 	"Error starting recording.": "Error en començar a enregistrar",
-	"Error unloading model: {{error}}": "",
+	"Error unloading model: {{error}}": "Error en descarregar el model: {{error}}",
 	"Error uploading file: {{error}}": "Error en pujar l'arxiu: {{error}}",
 	"Evaluations": "Avaluacions",
 	"Exa API Key": "Clau API d'EXA",
@@ -567,20 +568,20 @@
 	"Export Functions": "Exportar funcions",
 	"Export Models": "Exportar els models",
 	"Export Presets": "Exportar les configuracions",
-	"Export Prompt Suggestions": "",
+	"Export Prompt Suggestions": "Exportar els suggeriments d'indicació",
 	"Export Prompts": "Exportar les indicacions",
 	"Export to CSV": "Exportar a CSV",
 	"Export Tools": "Exportar les eines",
 	"External": "Extern",
-	"External Document Loader URL required.": "",
-	"External Task Model": "",
+	"External Document Loader URL required.": "Fa falta la URL per a Document Loader",
+	"External Task Model": "Model de tasques extern",
 	"External Web Loader API Key": "Clau API d'External Web Loader",
 	"External Web Loader URL": "URL d'External Web Loader",
 	"External Web Search API Key": "Clau API d'External Web Search",
 	"External Web Search URL": "URL d'External Web Search",
 	"Failed to add file.": "No s'ha pogut afegir l'arxiu.",
 	"Failed to connect to {{URL}} OpenAPI tool server": "No s'ha pogut connecta al servidor d'eines OpenAPI {{URL}}",
-	"Failed to copy link": "",
+	"Failed to copy link": "No s'ha pogut copiar l'enllaç",
 	"Failed to create API Key.": "No s'ha pogut crear la clau API.",
 	"Failed to delete note": "No s'ha pogut eliminar la nota",
 	"Failed to fetch models": "No s'han pogut obtenir els models",
@@ -593,7 +594,7 @@
 	"Features": "Característiques",
 	"Features Permissions": "Permisos de les característiques",
 	"February": "Febrer",
-	"Feedback Details": "",
+	"Feedback Details": "Detalls del retorn",
 	"Feedback History": "Històric de comentaris",
 	"Feedbacks": "Comentaris",
 	"Feel free to add specific details": "Sent-te lliure d'afegir detalls específics",
@@ -604,7 +605,7 @@
 	"File not found.": "No s'ha trobat l'arxiu.",
 	"File removed successfully.": "Arxiu eliminat correctament.",
 	"File size should not exceed {{maxSize}} MB.": "La mida del fitxer no ha de superar els {{maxSize}} MB.",
-	"File Upload": "",
+	"File Upload": "Pujar arxiu",
 	"File uploaded successfully": "arxiu pujat satisfactòriament",
 	"Files": "Arxius",
 	"Filter is now globally disabled": "El filtre ha estat desactivat globalment",
@@ -618,13 +619,13 @@
 	"Folder deleted successfully": "Carpeta eliminada correctament",
 	"Folder name cannot be empty.": "El nom de la carpeta no pot ser buit.",
 	"Folder name updated successfully": "Nom de la carpeta actualitzat correctament",
-	"Follow up": "",
-	"Follow Up Generation": "",
-	"Follow Up Generation Prompt": "",
-	"Follow-Up Auto-Generation": "",
+	"Follow up": "Seguir",
+	"Follow Up Generation": "Generació de seguiment",
+	"Follow Up Generation Prompt": "Indicació per a la generació de seguiment",
+	"Follow-Up Auto-Generation": "Generació automàtica de seguiment",
 	"Followed instructions perfectly": "S'han seguit les instruccions perfectament",
-	"Force OCR": "",
-	"Force OCR on all pages of the PDF. This can lead to worse results if you have good text in your PDFs. Defaults to False.": "",
+	"Force OCR": "Forçar OCR",
+	"Force OCR on all pages of the PDF. This can lead to worse results if you have good text in your PDFs. Defaults to False.": "Forçar OCR a totes les pàgines del PDF. Això pot portar a resultats pitjors si tens un bon text als teus PDF. Per defecte és Fals",
 	"Forge new paths": "Crea nous camins",
 	"Form": "Formulari",
 	"Format your variables using brackets like this:": "Formata les teves variables utilitzant claudàtors així:",
@@ -636,7 +637,7 @@
 	"Function deleted successfully": "La funció s'ha eliminat correctament",
 	"Function Description": "Descripció de la funció",
 	"Function ID": "ID de la funció",
-	"Function imported successfully": "",
+	"Function imported successfully": "La funció s'ha importat correctament",
 	"Function is now globally disabled": "La funció ha estat desactivada globalment",
 	"Function is now globally enabled": "La funció ha estat activada globalment",
 	"Function Name": "Nom de la funció",
@@ -674,14 +675,14 @@
 	"Hex Color": "Color hexadecimal",
 	"Hex Color - Leave empty for default color": "Color hexadecimal - Deixar buit per a color per defecte",
 	"Hide": "Amaga",
-	"Hide from Sidebar": "",
+	"Hide from Sidebar": "Amagar de la barra lateral",
 	"Hide Model": "Amagar el model",
-	"High Contrast Mode": "",
+	"High Contrast Mode": "Mode d'alt contrast",
 	"Home": "Inici",
 	"Host": "Servidor",
 	"How can I help you today?": "Com et puc ajudar avui?",
 	"How would you rate this response?": "Com avaluaries aquesta resposta?",
-	"HTML": "",
+	"HTML": "HTML",
 	"Hybrid Search": "Cerca híbrida",
 	"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.": "Afirmo que he llegit i entenc les implicacions de la meva acció. Soc conscient dels riscos associats a l'execució de codi arbitrari i he verificat la fiabilitat de la font.",
 	"ID": "ID",
@@ -690,27 +691,27 @@
 	"Ignite curiosity": "Despertar la curiositat",
 	"Image": "Imatge",
 	"Image Compression": "Compressió d'imatges",
-	"Image Compression Height": "",
-	"Image Compression Width": "",
+	"Image Compression Height": "Alçada de la compressió d'imatges",
+	"Image Compression Width": "Amplada de la compressió d'imatges",
 	"Image Generation": "Generació d'imatges",
 	"Image Generation (Experimental)": "Generació d'imatges (Experimental)",
 	"Image Generation Engine": "Motor de generació d'imatges",
 	"Image Max Compression Size": "Mida màxima de la compressió d'imatges",
-	"Image Max Compression Size height": "",
-	"Image Max Compression Size width": "",
+	"Image Max Compression Size height": "Mida màxima de l'alçada de la compressió d'imatges",
+	"Image Max Compression Size width": "Mida màxima de l'amplada de la compressió d'imatges",
 	"Image Prompt Generation": "Generació d'indicacions d'imatge",
 	"Image Prompt Generation Prompt": "Indicació per a la generació d'indicacions d'imatge",
 	"Image Settings": "Preferències d'imatges",
 	"Images": "Imatges",
-	"Import": "",
+	"Import": "Importar",
 	"Import Chats": "Importar xats",
 	"Import Config from JSON File": "Importar la configuració des d'un arxiu JSON",
-	"Import From Link": "",
+	"Import From Link": "Importar des d'un enllaç",
 	"Import Functions": "Importar funcions",
 	"Import Models": "Importar models",
 	"Import Notes": "Importar nota",
 	"Import Presets": "Importar configuracions",
-	"Import Prompt Suggestions": "",
+	"Import Prompt Suggestions": "Importar suggeriments d'indicacions",
 	"Import Prompts": "Importar indicacions",
 	"Import Tools": "Importar eines",
 	"Include": "Incloure",
@@ -726,7 +727,7 @@
 	"Interface": "Interfície",
 	"Invalid file content": "Continguts del fitxer no vàlids",
 	"Invalid file format.": "Format d'arxiu no vàlid.",
-	"Invalid JSON file": "",
+	"Invalid JSON file": "Arxiu JSON no vàlid",
 	"Invalid Tag": "Etiqueta no vàlida",
 	"is typing...": "està escrivint...",
 	"January": "Gener",
@@ -741,7 +742,7 @@
 	"JWT Expiration": "Caducitat del JWT",
 	"JWT Token": "Token JWT",
 	"Kagi Search API Key": "Clau API de Kagi Search",
-	"Keep in Sidebar": "",
+	"Keep in Sidebar": "Mantenir a la barra lateral",
 	"Key": "Clau",
 	"Keyboard shortcuts": "Dreceres de teclat",
 	"Knowledge": "Coneixement",
@@ -757,7 +758,7 @@
 	"Landing Page Mode": "Mode de la pàgina d'entrada",
 	"Language": "Idioma",
 	"Language Locales": "Localització d'idiomes",
-	"Languages": "",
+	"Languages": "Idiomes",
 	"Last Active": "Activitat recent",
 	"Last Modified": "Modificació",
 	"Last reply": "Darrera resposta",
@@ -765,9 +766,9 @@
 	"LDAP server updated": "Servidor LDAP actualitzat",
 	"Leaderboard": "Tauler de classificació",
 	"Learn more about OpenAPI tool servers.": "Aprèn més sobre els servidors d'eines OpenAPI",
-	"Leave empty for no compression": "",
+	"Leave empty for no compression": "Deixar-ho buit per no comprimir",
 	"Leave empty for unlimited": "Deixar-ho buit per il·limitat",
-	"Leave empty to include all models from \"{{url}}\" endpoint": "",
+	"Leave empty to include all models from \"{{url}}\" endpoint": "Deixar-ho buit per incloure tots els models del punt de connexió \"{{url}}\"",
 	"Leave empty to include all models from \"{{url}}/api/tags\" endpoint": "Deixar-ho buit per incloure tots els models del punt de connexió \"{{url}}/api/tags\"",
 	"Leave empty to include all models from \"{{url}}/models\" endpoint": "Deixar-ho buit per incloure tots els models del punt de connexió \"{{url}}/models\"",
 	"Leave empty to include all models or select specific models": "Deixa-ho en blanc per incloure tots els models o selecciona models específics",
@@ -781,12 +782,12 @@
 	"Loader": "Carregador",
 	"Loading Kokoro.js...": "Carregant Kokoro.js",
 	"Local": "Local",
-	"Local Task Model": "",
+	"Local Task Model": "Model local de tasques",
 	"Location access not allowed": "Accés a la ubicació no permesa",
 	"Lost": "Perdut",
 	"LTR": "LTR",
 	"Made by Open WebUI Community": "Creat per la Comunitat OpenWebUI",
-	"Make password visible in the user interface": "",
+	"Make password visible in the user interface": "Fer que la contrasenya sigui visible a la interficie d'usuari",
 	"Make sure to enclose them with": "Assegura't d'envoltar-los amb",
 	"Make sure to export a workflow.json file as API format from ComfyUI.": "Assegura't d'exportar un fitxer workflow.json com a format API des de ComfyUI.",
 	"Manage": "Gestionar",
@@ -798,7 +799,7 @@
 	"Manage Pipelines": "Gestionar les Pipelines",
 	"Manage Tool Servers": "Gestionar els servidors d'eines",
 	"March": "Març",
-	"Markdown": "",
+	"Markdown": "Markdown",
 	"Max Speakers": "Nombre màxim d'altaveus",
 	"Max Upload Count": "Nombre màxim de càrregues",
 	"Max Upload Size": "Mida màxima de càrrega",
@@ -827,11 +828,11 @@
 	"Model {{name}} is now {{status}}": "El model {{name}} ara és {{status}}",
 	"Model {{name}} is now hidden": "El model {{name}} està ara amagat",
 	"Model {{name}} is now visible": "El model {{name}} està ara visible",
-	"Model accepts file inputs": "",
+	"Model accepts file inputs": "El model accepta entrada de fitxers",
 	"Model accepts image inputs": "El model accepta entrades d'imatge",
-	"Model can execute code and perform calculations": "",
-	"Model can generate images based on text prompts": "",
-	"Model can search the web for information": "",
+	"Model can execute code and perform calculations": "El model pot executar codi i realitzar càlculs",
+	"Model can generate images based on text prompts": "El model pot generar imatges basades en les indicacions de text",
+	"Model can search the web for information": "El model pot cercar informació a la web",
 	"Model created successfully!": "Model creat correctament",
 	"Model filesystem path detected. Model shortname is required for update, cannot continue.": "S'ha detectat el camí del sistema de fitxers del model. És necessari un nom curt del model per actualitzar, no es pot continuar.",
 	"Model Filtering": "Filtrat de models",
@@ -841,9 +842,9 @@
 	"Model not selected": "Model no seleccionat",
 	"Model Params": "Paràmetres del model",
 	"Model Permissions": "Permisos dels models",
-	"Model unloaded successfully": "",
+	"Model unloaded successfully": "El model s'ha descarregat correctament",
 	"Model updated successfully": "Model actualitzat correctament",
-	"Model(s) do not support file upload": "",
+	"Model(s) do not support file upload": "El model no permet la pujada d'arxius",
 	"Modelfile Content": "Contingut del Modelfile",
 	"Models": "Models",
 	"Models Access": "Accés als models",
@@ -858,14 +859,14 @@
 	"Native": "Natiu",
 	"New Chat": "Nou xat",
 	"New Folder": "Nova carpeta",
-	"New Function": "",
+	"New Function": "Nova funció",
 	"New Note": "Nova nota",
 	"New Password": "Nova contrasenya",
-	"New Tool": "",
+	"New Tool": "Nova eina",
 	"new-channel": "nou-canal",
-	"Next message": "",
-	"No chats found for this user.": "",
-	"No chats found.": "",
+	"Next message": "Missatge següent",
+	"No chats found for this user.": "No s'han trobat xats per a aquest usuari.",
+	"No chats found.": "No s'ha trobat xats.",
 	"No content": "No hi ha contingut",
 	"No content found": "No s'ha trobat contingut",
 	"No content found in file.": "No s'ha trobat contingut en el fitxer.",
@@ -908,8 +909,8 @@
 	"Ollama Version": "Versió d'Ollama",
 	"On": "Activat",
 	"OneDrive": "OneDrive",
-	"Only active when \"Paste Large Text as File\" setting is toggled on.": "",
-	"Only active when the chat input is in focus and an LLM is generating a response.": "",
+	"Only active when \"Paste Large Text as File\" setting is toggled on.": "Només actiu quan la configuració \"Enganxar text gran com a fitxer\" està activa.",
+	"Only active when the chat input is in focus and an LLM is generating a response.": "Només actiu quan la entrada de xat està en focus i un model de llenguatge està generant una resposta.",
 	"Only alphanumeric characters and hyphens are allowed": "Només es permeten caràcters alfanumèrics i guions",
 	"Only alphanumeric characters and hyphens are allowed in the command string.": "Només es permeten caràcters alfanumèrics i guions en la comanda.",
 	"Only collections can be edited, create a new knowledge base to edit/add documents.": "Només es poden editar col·leccions, crea una nova base de coneixement per editar/afegir documents.",
@@ -921,7 +922,7 @@
 	"Oops! You're using an unsupported method (frontend only). Please serve the WebUI from the backend.": "Ui! Estàs utilitzant un mètode no suportat (només frontend). Si us plau, serveix la WebUI des del backend.",
 	"Open file": "Obrir arxiu",
 	"Open in full screen": "Obrir en pantalla complerta",
-	"Open modal to configure connection": "",
+	"Open modal to configure connection": "Obre el modal per configurar la connexió",
 	"Open new chat": "Obre un xat nou",
 	"Open WebUI can use tools provided by any OpenAPI server.": "Open WebUI pot utilitzar eines de servidors OpenAPI.",
 	"Open WebUI uses faster-whisper internally.": "Open WebUI utilitza faster-whisper internament.",
@@ -933,37 +934,37 @@
 	"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 URL or Path": "",
-	"Options for running a local vision-language model in the picture description. The parameters refer to a model hosted on Hugging Face. This parameter is mutually exclusive with picture_description_api.": "",
+	"openapi.json URL or Path": "Camí o URL a openapi.json",
+	"Options for running a local vision-language model in the picture description. The parameters refer to a model hosted on Hugging Face. This parameter is mutually exclusive with picture_description_api.": "Opcions per executar un model de llenguatge amb visió local a la descripció de la imatge. Els paràmetres fan referència a un model allotjat a HuggingFace. Aquest paràmetre és mutuament excloent amb picture_description_api.",
 	"or": "o",
 	"Organize your users": "Organitza els teus usuaris",
 	"Other": "Altres",
 	"OUTPUT": "SORTIDA",
 	"Output format": "Format de sortida",
-	"Output Format": "",
+	"Output Format": "Format de sortida",
 	"Overview": "Vista general",
 	"page": "pàgina",
-	"Paginate": "",
-	"Parameters": "",
+	"Paginate": "Paginar",
+	"Parameters": "Paràmetres",
 	"Password": "Contrasenya",
 	"Paste Large Text as File": "Enganxa un text llarg com a fitxer",
 	"PDF document (.pdf)": "Document PDF (.pdf)",
 	"PDF Extract Images (OCR)": "Extreu imatges del PDF (OCR)",
 	"pending": "pendent",
-	"Pending": "",
-	"Pending User Overlay Content": "",
-	"Pending User Overlay Title": "",
+	"Pending": "Pendent",
+	"Pending User Overlay Content": "Contingut de la finestra d'usuari pendent",
+	"Pending User Overlay Title": "Títol de la finestra d'usuari pendent",
 	"Permission denied when accessing media devices": "Permís denegat en accedir a dispositius multimèdia",
 	"Permission denied when accessing microphone": "Permís denegat en accedir al micròfon",
 	"Permission denied when accessing microphone: {{error}}": "Permís denegat en accedir al micròfon: {{error}}",
 	"Permissions": "Permisos",
 	"Perplexity API Key": "Clau API de Perplexity",
-	"Perplexity Model": "",
-	"Perplexity Search Context Usage": "",
+	"Perplexity Model": "Model de Perplexity",
+	"Perplexity Search Context Usage": "Utilització del context de cerca de Perplexity",
 	"Personalization": "Personalització",
-	"Picture Description API Config": "",
-	"Picture Description Local Config": "",
-	"Picture Description Mode": "",
+	"Picture Description API Config": "Configuració de l'API de la descripció d'imatges",
+	"Picture Description Local Config": "Configuració local de la descripció d'imatges",
+	"Picture Description Mode": "Mode de descripció d'imatges",
 	"Pin": "Fixar",
 	"Pinned": "Fixat",
 	"Pioneer insights": "Perspectives pioneres",
@@ -990,11 +991,11 @@
 	"Positive attitude": "Actitud positiva",
 	"Prefix ID": "Identificador del prefix",
 	"Prefix ID is used to avoid conflicts with other connections by adding a prefix to the model IDs - leave empty to disable": "L'identificador de prefix s'utilitza per evitar conflictes amb altres connexions afegint un prefix als ID de model; deixa'l en blanc per desactivar-lo.",
-	"Prevent file creation": "",
-	"Preview": "",
+	"Prevent file creation": "Impedir la creació d'arxius",
+	"Preview": "Previsualització",
 	"Previous 30 days": "30 dies anteriors",
 	"Previous 7 days": "7 dies anteriors",
-	"Previous message": "",
+	"Previous message": "Missatge anterior",
 	"Private": "Privat",
 	"Profile Image": "Imatge de perfil",
 	"Prompt": "Indicació",
@@ -1016,7 +1017,7 @@
 	"Re-rank models by topic similarity": "Reclassificar els models per similitud de temes",
 	"Read": "Llegit",
 	"Read Aloud": "Llegir en veu alta",
-	"Reason": "",
+	"Reason": "Raó",
 	"Reasoning Effort": "Esforç de raonament",
 	"Record": "Enregistrar",
 	"Record voice": "Enregistrar la veu",
@@ -1029,13 +1030,13 @@
 	"Reindex": "Reindexar",
 	"Reindex Knowledge Base Vectors": "Reindexar els vector base del Coneixement",
 	"Release Notes": "Notes de la versió",
-	"Releases": "",
+	"Releases": "Versions",
 	"Relevance": "Rellevància",
 	"Relevance Threshold": "Límit de rellevància",
 	"Remove": "Eliminar",
-	"Remove {{MODELID}} from list.": "",
+	"Remove {{MODELID}} from list.": "Eliminar {{MODELID}} de la llista",
 	"Remove Model": "Eliminar el model",
-	"Remove this tag from list": "",
+	"Remove this tag from list": "Eliminar aquesta etiqueta de la llista",
 	"Rename": "Canviar el nom",
 	"Reorder Models": "Reordenar els models",
 	"Reply in Thread": "Respondre al fil",
@@ -1048,7 +1049,7 @@
 	"Reset view": "Netejar la vista",
 	"Response notifications cannot be activated as the website permissions have been denied. Please visit your browser settings to grant the necessary access.": "Les notifications de resposta no es poden activar perquè els permisos del lloc web han estat rebutjats. Comprova les preferències del navegador per donar l'accés necessari.",
 	"Response splitting": "Divisió de la resposta",
-	"Response Watermark": "",
+	"Response Watermark": "Marca d'aigua de la resposta",
 	"Result": "Resultat",
 	"Retrieval": "Retrieval",
 	"Retrieval Query Generation": "Generació de consultes Retrieval",
@@ -1145,7 +1146,7 @@
 	"Share Chat": "Compartir el xat",
 	"Share to Open WebUI Community": "Compartir amb la comunitat OpenWebUI",
 	"Sharing Permissions": "Compartir els permisos",
-	"Shortcuts with an asterisk (*) are situational and only active under specific conditions.": "",
+	"Shortcuts with an asterisk (*) are situational and only active under specific conditions.": "Les dreceres de teclat amb un asterisc (*) són situacionals i només actives sota condicions específiques.",
 	"Show": "Mostrar",
 	"Show \"What's New\" modal on login": "Veure 'Què hi ha de nou' a l'entrada",
 	"Show Admin Details in Account Pending Overlay": "Mostrar els detalls de l'administrador a la superposició del compte pendent",
@@ -1161,24 +1162,24 @@
 	"Sign Out": "Tancar sessió",
 	"Sign up": "Registrar-se",
 	"Sign up to {{WEBUI_NAME}}": "Registrar-se a {{WEBUI_NAME}}",
-	"Significantly improves accuracy by using an LLM to enhance tables, forms, inline math, and layout detection. Will increase latency. Defaults to True.": "",
+	"Significantly improves accuracy by using an LLM to enhance tables, forms, inline math, and layout detection. Will increase latency. Defaults to True.": "Millora significativament la precisió utilitzant un LLM per millorar taules, formularis, matemàtiques en línia i detecció de layout. Augmentarà la latència. Per defecte és Verdader.",
 	"Signing in to {{WEBUI_NAME}}": "Iniciant sessió a {{WEBUI_NAME}}",
 	"sk-1234": "sk-1234",
-	"Skip Cache": "",
-	"Skip the cache and re-run the inference. Defaults to False.": "",
+	"Skip Cache": "Ometre la memòria cau",
+	"Skip the cache and re-run the inference. Defaults to False.": "Omet la memòria cai i torna a executar la inferència. Per defecte és Fals.",
 	"Sougou Search API sID": "sID de l'API de Sougou Search",
 	"Sougou Search API SK": "SK de l'API de Sougou Search",
 	"Source": "Font",
 	"Speech Playback Speed": "Velocitat de la parla",
 	"Speech recognition error: {{error}}": "Error de reconeixement de veu: {{error}}",
-	"Speech-to-Text": "",
+	"Speech-to-Text": "Àudio-a-Text",
 	"Speech-to-Text Engine": "Motor de veu a text",
 	"Stop": "Atura",
-	"Stop Generating": "",
+	"Stop Generating": "Atura la generació",
 	"Stop Sequence": "Atura la seqüència",
 	"Stream Chat Response": "Fer streaming de la resposta del xat",
-	"Strip Existing OCR": "",
-	"Strip existing OCR text from the PDF and re-run OCR. Ignored if Force OCR is enabled. Defaults to False.": "",
+	"Strip Existing OCR": "Eliminar OCR existent",
+	"Strip existing OCR text from the PDF and re-run OCR. Ignored if Force OCR is enabled. Defaults to False.": "Elimina el text OCR existent del PDF i torna a executar l'OCR. S'ignora si Força OCR està habilitat. Per defecte és Fals.",
 	"STT Model": "Model SST",
 	"STT Settings": "Preferències de STT",
 	"Stylized PDF Export": "Exportació en PDF estilitzat",
@@ -1188,7 +1189,7 @@
 	"Suggested": "Suggerit",
 	"Support": "Dona suport",
 	"Support this plugin:": "Dona suport a aquest complement:",
-	"Supported MIME Types": "",
+	"Supported MIME Types": "Tipus MIME admesos",
 	"Sync directory": "Sincronitzar directori",
 	"System": "Sistema",
 	"System Instructions": "Instruccions de sistema",
@@ -1199,7 +1200,7 @@
 	"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.": "El mostreig sense cua s'utilitza per reduir l'impacte de tokens menys probables de la sortida. Un valor més alt (p. ex., 2,0) reduirà més l'impacte, mentre que un valor d'1,0 desactiva aquesta configuració.",
 	"Talk to model": "Parlar amb el model",
 	"Tap to interrupt": "Prem per interrompre",
-	"Task Model": "",
+	"Task Model": "Model de tasques",
 	"Tasks": "Tasques",
 	"Tavily API Key": "Clau API de Tavily",
 	"Tavily Extract Depth": "Profunditat d'extracció de Tavily",
@@ -1207,7 +1208,7 @@
 	"Temperature": "Temperatura",
 	"Temporary Chat": "Xat temporal",
 	"Text Splitter": "Separador de text",
-	"Text-to-Speech": "",
+	"Text-to-Speech": "Text-a-veu",
 	"Text-to-Speech Engine": "Motor de text a veu",
 	"Thanks for your feedback!": "Gràcies pel teu comentari!",
 	"The Application Account DN you bind with for search": "El DN del compte d'aplicació per realitzar la cerca",
@@ -1215,30 +1216,29 @@
 	"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.": "La mida del lot determina quantes sol·licituds de text es processen alhora. Una mida de lot més gran pot augmentar el rendiment i la velocitat del model, però també requereix més memòria.",
 	"The developers behind this plugin are passionate volunteers from the community. If you find this plugin helpful, please consider contributing to its development.": "Els desenvolupadors d'aquest complement són voluntaris apassionats de la comunitat. Si trobeu útil aquest complement, considereu contribuir al seu desenvolupament.",
 	"The evaluation leaderboard is based on the Elo rating system and is updated in real-time.": "La classificació d'avaluació es basa en el sistema de qualificació Elo i s'actualitza en temps real.",
-	"The format to return a response in. Format can be json or a JSON schema.": "",
-	"The height in pixels to compress images to. Leave empty for no compression.": "",
-	"The language of the input audio. Supplying the input language in ISO-639-1 (e.g. en) format will improve accuracy and latency. Leave blank to automatically detect the language.": "",
+	"The format to return a response in. Format can be json or a JSON schema.": "El format per retornar una resposta. El format pot ser json o un esquema JSON.",
+	"The height in pixels to compress images to. Leave empty for no compression.": "L'alçada en píxels per comprimir imatges. Deixar-ho buit per a cap compressió.",
+	"The language of the input audio. Supplying the input language in ISO-639-1 (e.g. en) format will improve accuracy and latency. Leave blank to automatically detect the language.": "L'idiom de l'àudio d'entrada. Proporcionar l'idioma d'entrada en format ISO-639-1 (p. ex. en) millorarà la precisió i la latència. Deixar-ho buit per detectar automàticament el llenguatge.",
 	"The LDAP attribute that maps to the mail that users use to sign in.": "L'atribut LDAP que s'associa al correu que els usuaris utilitzen per iniciar la sessió.",
 	"The LDAP attribute that maps to the username that users use to sign in.": "L'atribut LDAP que mapeja el nom d'usuari amb l'usuari que vol iniciar sessió",
 	"The leaderboard is currently in beta, and we may adjust the rating calculations as we refine the algorithm.": "La classificació està actualment en versió beta i és possible que s'ajustin els càlculs de la puntuació a mesura que es perfeccioni l'algorisme.",
 	"The maximum file size in MB. If the file size exceeds this limit, the file will not be uploaded.": "La mida màxima del fitxer en MB. Si la mida del fitxer supera aquest límit, el fitxer no es carregarà.",
 	"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.": "El nombre màxim de fitxers que es poden utilitzar alhora al xat. Si el nombre de fitxers supera aquest límit, els fitxers no es penjaran.",
-	"The output format for the text. Can be 'json', 'markdown', or 'html'. Defaults to 'markdown'.": "",
+	"The output format for the text. Can be 'json', 'markdown', or 'html'. Defaults to 'markdown'.": "Format de sortida per al text. Pot ser 'json', 'markdown' o 'html'. Per defecte és 'markdown'.",
 	"The score should be a value between 0.0 (0%) and 1.0 (100%).": "El valor de puntuació hauria de ser entre 0.0 (0%) i 1.0 (100%).",
 	"The temperature of the model. Increasing the temperature will make the model answer more creatively.": "La temperatura del model. Augmentar la temperatura farà que el model respongui de manera més creativa.",
-	"The width in pixels to compress images to. Leave empty for no compression.": "",
+	"The width in pixels to compress images to. Leave empty for no compression.": "L'amplada en píxels per comprimir imatges. Deixar-ho buit per a cap compressió.",
 	"Theme": "Tema",
 	"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.": "Aquest xat no apareixerà a l'historial i els teus missatges no es desaran.",
-	"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 model is not publicly available. Please select another model.": "Aquest model no està disponible públicament. Seleccioneu-ne un altre.",
-	"This option controls how long the model will stay loaded into memory following the request (default: 5m)": "",
+	"This option controls how long the model will stay loaded into memory following the request (default: 5m)": "Aquesta opció controla quant temps el model romandrà carregat en memòria després de la sol·licitud (per defecte: 5m)",
 	"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.",
-	"This option enables or disables the use of the reasoning feature in Ollama, which allows the model to think before generating a response. When enabled, the model can take a moment to process the conversation context and generate a more thoughtful response.": "",
+	"This option enables or disables the use of the reasoning feature in Ollama, which allows the model to think before generating a response. When enabled, the model can take a moment to process the conversation context and generate a more thoughtful response.": "Aquesta opció activa o desactiva l'ús de la funció de raonament a Ollama, que permet que el model pensi abans de generar una resposta. Quan està activada, el model pot trigar una estona en processar el context de la conversa i generar una resposta més reflexiva.",
 	"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.": "Aquesta opció estableix el nombre màxim de tokens que el model pot generar en la seva resposta. Augmentar aquest límit permet que el model proporcioni respostes més llargues, però també pot augmentar la probabilitat que es generi contingut poc útil o irrellevant.",
 	"This option will delete all existing files in the collection and replace them with newly uploaded files.": "Aquesta opció eliminarà tots els fitxers existents de la col·lecció i els substituirà per fitxers recentment penjats.",
 	"This response was generated by \"{{model}}\"": "Aquesta resposta l'ha generat el model \"{{model}}\"",
@@ -1272,10 +1272,10 @@
 	"To select toolkits here, add them to the \"Tools\" workspace first.": "Per seleccionar kits d'eines aquí, afegeix-los primer a l'espai de treball \"Eines\".",
 	"Toast notifications for new updates": "Notificacions Toast de noves actualitzacions",
 	"Today": "Avui",
-	"Toggle search": "",
+	"Toggle search": "Alternar cerca",
 	"Toggle settings": "Alterna preferències",
 	"Toggle sidebar": "Alterna la barra lateral",
-	"Toggle whether current connection is active.": "",
+	"Toggle whether current connection is active.": "Alterna si la connexió actual està activa.",
 	"Token": "Token",
 	"Too verbose": "Massa explicit",
 	"Tool created successfully": "Eina creada correctament",
@@ -1307,7 +1307,7 @@
 	"Unarchive All": "Desarxivar tot",
 	"Unarchive All Archived Chats": "Desarxivar tots els xats arxivats",
 	"Unarchive Chat": "Desarxivar xat",
-	"Unloads {{FROM_NOW}}": "",
+	"Unloads {{FROM_NOW}}": "Es descarrega {{FROM_NOW}}",
 	"Unlock mysteries": "Desbloqueja els misteris",
 	"Unpin": "Alliberar",
 	"Unravel secrets": "Descobreix els secrets",
@@ -1331,12 +1331,12 @@
 	"Upload Progress": "Progrés de càrrega",
 	"URL": "URL",
 	"URL Mode": "Mode URL",
-	"Usage": "",
+	"Usage": "Ús",
 	"Use '#' in the prompt input to load and include your knowledge.": "Utilitza '#' a l'entrada de la indicació per carregar i incloure els teus coneixements.",
 	"Use Gravatar": "Utilitzar Gravatar",
 	"Use groups to group your users and assign permissions.": "Utilitza grups per agrupar els usuaris i assignar permisos.",
 	"Use Initials": "Utilitzar inicials",
-	"Use LLM": "",
+	"Use LLM": "Utilizar model de llenguatge",
 	"Use no proxy to fetch page contents.": "No utilitzis un proxy per obtenir contingut de la pàgina.",
 	"Use proxy designated by http_proxy and https_proxy environment variables to fetch page contents.": "Utilitza el proxy designat per les variables d'entorn http_proxy i https_proxy per obtenir el contingut de la pàgina.",
 	"user": "usuari",
@@ -1360,10 +1360,10 @@
 	"View Replies": "Veure les respostes",
 	"View Result from **{{NAME}}**": "Veure el resultat de **{{NAME}}**",
 	"Visibility": "Visibilitat",
-	"Vision": "",
+	"Vision": "Visió",
 	"Voice": "Veu",
 	"Voice Input": "Entrada de veu",
-	"Voice mode": "",
+	"Voice mode": "Mode de veu",
 	"Warning": "Avís",
 	"Warning:": "Avís:",
 	"Warning: Enabling this will allow users to upload arbitrary code on the server.": "Avís: Habilitar això permetrà als usuaris penjar codi arbitrari al servidor.",
@@ -1382,13 +1382,13 @@
 	"WebUI will make requests to \"{{url}}\"": "WebUI farà peticions a \"{{url}}\"",
 	"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\"",
-	"Weight of BM25 Retrieval": "",
+	"Weight of BM25 Retrieval": "Pes de BM25 Retrieval",
 	"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",
 	"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.": "Quan està activat, el model respondrà a cada missatge de xat en temps real, generant una resposta tan bon punt l'usuari envia un missatge. Aquest mode és útil per a aplicacions de xat en directe, però pot afectar el rendiment en maquinari més lent.",
 	"wherever you are": "allà on estiguis",
-	"Whether to paginate the output. Each page will be separated by a horizontal rule and page number. Defaults to False.": "",
+	"Whether to paginate the output. Each page will be separated by a horizontal rule and page number. Defaults to False.": "Si es pagina la sortida. Cada pàgina estarà separada per una regla horitzontal i un número de pàgina. Per defecte és Fals.",
 	"Whisper (Local)": "Whisper (local)",
 	"Why?": "Per què?",
 	"Widescreen Mode": "Mode de pantalla ampla",
@@ -1418,5 +1418,5 @@
 	"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.": "Tota la teva contribució anirà directament al desenvolupador del complement; Open WebUI no se'n queda cap percentatge. Tanmateix, la plataforma de finançament escollida pot tenir les seves pròpies comissions.",
 	"Youtube": "Youtube",
 	"Youtube Language": "Idioma de YouTube",
-	"Youtube Proxy URL": ""
+	"Youtube Proxy URL": "URL de Proxy de Youtube"
 }

+ 1 - 1
src/lib/i18n/locales/ceb-PH/translation.json

@@ -210,6 +210,7 @@
 	"Clone Chat": "",
 	"Clone of {{TITLE}}": "",
 	"Close": "Suod nga",
+	"Close Configure Connection Modal": "",
 	"Close modal": "",
 	"Close settings modal": "",
 	"Code execution": "",
@@ -1232,7 +1233,6 @@
 	"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 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 model is not publicly available. Please select another model.": "",

+ 1 - 1
src/lib/i18n/locales/cs-CZ/translation.json

@@ -210,6 +210,7 @@
 	"Clone Chat": "",
 	"Clone of {{TITLE}}": "",
 	"Close": "Zavřít",
+	"Close Configure Connection Modal": "",
 	"Close modal": "",
 	"Close settings modal": "",
 	"Code execution": "Provádění kódu",
@@ -1232,7 +1233,6 @@
 	"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 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 model is not publicly available. Please select another model.": "",

+ 1 - 1
src/lib/i18n/locales/da-DK/translation.json

@@ -210,6 +210,7 @@
 	"Clone Chat": "Klon chat",
 	"Clone of {{TITLE}}": "Klon af {{TITLE}}",
 	"Close": "Luk",
+	"Close Configure Connection Modal": "",
 	"Close modal": "",
 	"Close settings modal": "Luk dialogboks med indstillinger",
 	"Code execution": "Kode kørsel",
@@ -1232,7 +1233,6 @@
 	"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.": "Denne kanal blev oprettet den {{createdAt}}. Dette er det helt første i kanalen {{channelName}}.",
 	"This chat won't appear in history and your messages will not be saved.": "Denne chat vil ikke vises i historikken, og dine beskeder vil ikke blive gemt.",
-	"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 model is not publicly available. Please select another model.": "",

+ 31 - 31
src/lib/i18n/locales/de-DE/translation.json

@@ -210,6 +210,7 @@
 	"Clone Chat": "Konversation klonen",
 	"Clone of {{TITLE}}": "Klon von {{TITLE}}",
 	"Close": "Schließen",
+	"Close Configure Connection Modal": "",
 	"Close modal": "",
 	"Close settings modal": "",
 	"Code execution": "Codeausführung",
@@ -387,7 +388,7 @@
 	"e.g. \"json\" or a JSON schema": "z. B. \"json\" oder ein JSON-Schema",
 	"e.g. 60": "z. B. 60",
 	"e.g. A filter to remove profanity from text": "z. B. Ein Filter, um Schimpfwörter aus Text zu entfernen",
-	"e.g. en": "",
+	"e.g. en": "z. B. en",
 	"e.g. My Filter": "z. B. Mein Filter",
 	"e.g. My Tools": "z. B. Meine Werkzeuge",
 	"e.g. my_filter": "z. B. mein_filter",
@@ -395,10 +396,10 @@
 	"e.g. pdf, docx, txt": "z. B. pdf, docx, txt",
 	"e.g. Tools for performing various operations": "z. B. Werkzeuge für verschiedene Operationen",
 	"e.g., 3, 4, 5 (leave blank for default)": "z. B. 3, 4, 5 (leer lassen für Standard)",
-	"e.g., audio/wav,audio/mpeg (leave blank for defaults)": "",
+	"e.g., audio/wav,audio/mpeg (leave blank for defaults)": "z. B. audio/wav,audio/mpeg (leer lassen für Standard)",
 	"e.g., en-US,ja-JP (leave blank for auto-detect)": "z. B. en-US,de-DE (freilassen für automatische Erkennung)",
 	"e.g., westus (leave blank for eastus)": "z. B. westus (leer lassen für eastus)",
-	"e.g.) en,fr,de": "",
+	"e.g.) en,fr,de": "z. B. en,fr,de",
 	"Edit": "Bearbeiten",
 	"Edit Arena Model": "Arena-Modell bearbeiten",
 	"Edit Channel": "Kanal bearbeiten",
@@ -482,7 +483,7 @@
 	"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",
-	"Enter name": "",
+	"Enter name": "Name eingeben",
 	"Enter New Password": "Neues Passwort eingeben",
 	"Enter Number of Steps (e.g. 50)": "Geben Sie die Anzahl an Schritten ein (z. B. 50)",
 	"Enter Perplexity API Key": "Geben Sie den Perplexity API-Schlüssel ein",
@@ -513,8 +514,8 @@
 	"Enter Tavily API Key": "Geben Sie den Tavily-API-Schlüssel ein",
 	"Enter Tavily Extract Depth": "Tavily Extract Depth eingeben",
 	"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 the URL of the function to import": "",
-	"Enter the URL to import": "",
+	"Enter the URL of the function to import": "Geben Sie die URL der Funktion ein, die importiert werden soll",
+	"Enter the URL to import": "URL für den Import eingeben",
 	"Enter Tika Server URL": "Geben Sie die Tika-Server-URL ein",
 	"Enter timeout in seconds": "Geben Sie den Timeout in Sekunden ein",
 	"Enter to Send": "'Enter' zum Senden",
@@ -618,10 +619,10 @@
 	"Folder deleted successfully": "Ordner erfolgreich gelöscht",
 	"Folder name cannot be empty.": "Ordnername darf nicht leer sein.",
 	"Folder name updated successfully": "Ordnername erfolgreich aktualisiert",
-	"Follow up": "",
-	"Follow Up Generation": "",
-	"Follow Up Generation Prompt": "",
-	"Follow-Up Auto-Generation": "",
+	"Follow up": "Folgefragen",
+	"Follow Up Generation": "Folgefragen Generierung",
+	"Follow Up Generation Prompt": "Prompt für Folgefragen Generierung",
+	"Follow-Up Auto-Generation": "Auto-Generierung für Folgefragen",
 	"Followed instructions perfectly": "Anweisungen perfekt befolgt",
 	"Force OCR": "OCR erzwingen",
 	"Force OCR on all pages of the PDF. This can lead to worse results if you have good text in your PDFs. Defaults to False.": "",
@@ -681,7 +682,7 @@
 	"Host": "Host",
 	"How can I help you today?": "Wie kann ich Ihnen heute helfen?",
 	"How would you rate this response?": "Wie würden Sie diese Antwort bewerten?",
-	"HTML": "",
+	"HTML": "HTML",
 	"Hybrid Search": "Hybride Suche",
 	"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.": "Ich bestätige, dass ich gelesen habe und die Auswirkungen meiner Aktion verstehe. Mir sind die Risiken bewusst, die mit der Ausführung beliebigen Codes verbunden sind, und ich habe die Vertrauenswürdigkeit der Quelle überprüft.",
 	"ID": "ID",
@@ -690,14 +691,14 @@
 	"Ignite curiosity": "Neugier entfachen",
 	"Image": "Bild",
 	"Image Compression": "Bildkomprimierung",
-	"Image Compression Height": "",
-	"Image Compression Width": "",
+	"Image Compression Height": "Bildkompression Länge",
+	"Image Compression Width": "Bildkompression Breite",
 	"Image Generation": "Bildgenerierung",
 	"Image Generation (Experimental)": "Bildgenerierung (experimentell)",
 	"Image Generation Engine": "Bildgenerierungs-Engine",
 	"Image Max Compression Size": "Maximale Bildkomprimierungsgröße",
-	"Image Max Compression Size height": "",
-	"Image Max Compression Size width": "",
+	"Image Max Compression Size height": "Bildkompression maximale Länge",
+	"Image Max Compression Size width": "Bildkompression maximale Breite",
 	"Image Prompt Generation": "Bild-Prompt-Generierung",
 	"Image Prompt Generation Prompt": "Prompt für die Bild-Prompt-Generierung",
 	"Image Settings": "Bildeinstellungen",
@@ -765,7 +766,7 @@
 	"LDAP server updated": "LDAP-Server aktualisiert",
 	"Leaderboard": "Bestenliste",
 	"Learn more about OpenAPI tool servers.": "Erfahren Sie mehr über OpenAPI-Toolserver.",
-	"Leave empty for no compression": "",
+	"Leave empty for no compression": "Leer lassen für keine Kompression",
 	"Leave empty for unlimited": "Leer lassen für unbegrenzt",
 	"Leave empty to include all models from \"{{url}}\" endpoint": "Leer lassen, um alle Modelle vom Endpunkt \"{{url}}\" einzuschließen",
 	"Leave empty to include all models from \"{{url}}/api/tags\" endpoint": "Leer lassen, um alle Modelle vom Endpunkt \"{{url}}/api/tags\" einzuschließen",
@@ -786,7 +787,7 @@
 	"Lost": "Verloren",
 	"LTR": "LTR",
 	"Made by Open WebUI Community": "Von der OpenWebUI-Community",
-	"Make password visible in the user interface": "",
+	"Make password visible in the user interface": "Passwort im Benutzerinterface sichtbar machen",
 	"Make sure to enclose them with": "Umschließen Sie Variablen mit",
 	"Make sure to export a workflow.json file as API format from ComfyUI.": "Stellen Sie sicher, dass sie eine workflow.json-Datei im API-Format von ComfyUI exportieren.",
 	"Manage": "Verwalten",
@@ -798,7 +799,7 @@
 	"Manage Pipelines": "Pipelines verwalten",
 	"Manage Tool Servers": "Tool Server verwalten",
 	"March": "März",
-	"Markdown": "",
+	"Markdown": "Markdown",
 	"Max Speakers": "",
 	"Max Upload Count": "Maximale Anzahl der Uploads",
 	"Max Upload Size": "Maximale Uploadgröße",
@@ -908,8 +909,8 @@
 	"Ollama Version": "Ollama-Version",
 	"On": "Ein",
 	"OneDrive": "",
-	"Only active when \"Paste Large Text as File\" setting is toggled on.": "",
-	"Only active when the chat input is in focus and an LLM is generating a response.": "",
+	"Only active when \"Paste Large Text as File\" setting is toggled on.": "Nur aktiv, wenn die \"Großen Text als Datei einfügen\" Option aktiviert ist.",
+	"Only active when the chat input is in focus and an LLM is generating a response.": "Nur aktiv, wenn die Eingabe im Chat ausgewählt ist und ein LLM gerade eine Antwort generiert.",
 	"Only alphanumeric characters and hyphens are allowed": "Nur alphanumerische Zeichen und Bindestriche sind erlaubt",
 	"Only alphanumeric characters and hyphens are allowed in the command string.": "In der Befehlszeichenfolge sind nur alphanumerische Zeichen und Bindestriche erlaubt.",
 	"Only collections can be edited, create a new knowledge base to edit/add documents.": "Nur Sammlungen können bearbeitet werden. Erstellen Sie eine neue Wissensbasis, um Dokumente zu bearbeiten/hinzuzufügen.",
@@ -940,17 +941,17 @@
 	"Other": "Andere",
 	"OUTPUT": "AUSGABE",
 	"Output format": "Ausgabeformat",
-	"Output Format": "",
+	"Output Format": "Ausgabe Format",
 	"Overview": "Übersicht",
 	"page": "Seite",
 	"Paginate": "",
-	"Parameters": "",
+	"Parameters": "Parameter",
 	"Password": "Passwort",
 	"Paste Large Text as File": "Großen Text als Datei einfügen",
 	"PDF document (.pdf)": "PDF-Dokument (.pdf)",
 	"PDF Extract Images (OCR)": "Text von Bildern aus PDFs extrahieren (OCR)",
 	"pending": "ausstehend",
-	"Pending": "",
+	"Pending": "Ausstehend",
 	"Pending User Overlay Content": "Inhalt des Overlays 'Ausstehende Kontoaktivierung'",
 	"Pending User Overlay Title": "Titel des Overlays 'Ausstehende Kontoaktivierung'",
 	"Permission denied when accessing media devices": "Zugriff auf Mediengeräte verweigert",
@@ -958,7 +959,7 @@
 	"Permission denied when accessing microphone: {{error}}": "Zugriff auf das Mikrofon verweigert: {{error}}",
 	"Permissions": "Berechtigungen",
 	"Perplexity API Key": "Perplexity API-Schlüssel",
-	"Perplexity Model": "",
+	"Perplexity Model": "Perplexity Modell",
 	"Perplexity Search Context Usage": "",
 	"Personalization": "Personalisierung",
 	"Picture Description API Config": "",
@@ -990,11 +991,11 @@
 	"Positive attitude": "Positive Einstellung",
 	"Prefix ID": "Präfix-ID",
 	"Prefix ID is used to avoid conflicts with other connections by adding a prefix to the model IDs - leave empty to disable": "Prefix-ID wird verwendet, um Konflikte mit anderen Verbindungen zu vermeiden, indem ein Präfix zu den Modell-IDs hinzugefügt wird - leer lassen, um zu deaktivieren",
-	"Prevent file creation": "",
+	"Prevent file creation": "Dateierstellung verhindern",
 	"Preview": "Vorschau",
 	"Previous 30 days": "Vorherige 30 Tage",
 	"Previous 7 days": "Vorherige 7 Tage",
-	"Previous message": "",
+	"Previous message": "Vorherige Nachricht",
 	"Private": "Privat",
 	"Profile Image": "Profilbild",
 	"Prompt": "Prompt",
@@ -1033,9 +1034,9 @@
 	"Relevance": "Relevanz",
 	"Relevance Threshold": "Relevanzschwelle",
 	"Remove": "Entfernen",
-	"Remove {{MODELID}} from list.": "",
+	"Remove {{MODELID}} from list.": "{{MODELID}} von der Liste entfernen.",
 	"Remove Model": "Modell entfernen",
-	"Remove this tag from list": "",
+	"Remove this tag from list": "Diesen Tag von der Liste entfernen",
 	"Rename": "Umbenennen",
 	"Reorder Models": "Modelle neu anordnen",
 	"Reply in Thread": "Im Thread antworten",
@@ -1174,7 +1175,7 @@
 	"Speech-to-Text": "",
 	"Speech-to-Text Engine": "Sprache-zu-Text-Engine",
 	"Stop": "Stop",
-	"Stop Generating": "",
+	"Stop Generating": "Generierung stoppen",
 	"Stop Sequence": "Stop-Sequenz",
 	"Stream Chat Response": "Chat-Antwort streamen",
 	"Strip Existing OCR": "",
@@ -1232,7 +1233,6 @@
 	"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 Ihrem Chat-Verlauf. Alle Nachrichten sind privat und werden nicht gespeichert.",
-	"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!": "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 model is not publicly available. Please select another model.": "Dieses Modell ist nicht öffentlich verfügbar. Bitte wählen Sie ein anderes Modell aus.",
@@ -1331,7 +1331,7 @@
 	"Upload Progress": "Hochladefortschritt",
 	"URL": "URL",
 	"URL Mode": "URL-Modus",
-	"Usage": "Nutzung",
+	"Usage": "Nutzungsinfos",
 	"Use '#' in the prompt input to load and include your knowledge.": "Nutzen Sie '#' in der Prompt-Eingabe, um Ihr Wissen zu laden und einzuschließen.",
 	"Use Gravatar": "Gravatar verwenden",
 	"Use groups to group your users and assign permissions.": "Nutzen Sie Gruppen, um Ihre Benutzer zu gruppieren und Berechtigungen zuzuweisen.",

+ 1 - 1
src/lib/i18n/locales/dg-DG/translation.json

@@ -210,6 +210,7 @@
 	"Clone Chat": "",
 	"Clone of {{TITLE}}": "",
 	"Close": "Close",
+	"Close Configure Connection Modal": "",
 	"Close modal": "",
 	"Close settings modal": "",
 	"Code execution": "",
@@ -1232,7 +1233,6 @@
 	"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 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 model is not publicly available. Please select another model.": "",

+ 1 - 1
src/lib/i18n/locales/el-GR/translation.json

@@ -210,6 +210,7 @@
 	"Clone Chat": "",
 	"Clone of {{TITLE}}": "",
 	"Close": "Κλείσιμο",
+	"Close Configure Connection Modal": "",
 	"Close modal": "",
 	"Close settings modal": "",
 	"Code execution": "Εκτέλεση κώδικα",
@@ -1232,7 +1233,6 @@
 	"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 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 model is not publicly available. Please select another model.": "",

+ 1 - 1
src/lib/i18n/locales/en-GB/translation.json

@@ -210,6 +210,7 @@
 	"Clone Chat": "",
 	"Clone of {{TITLE}}": "",
 	"Close": "",
+	"Close Configure Connection Modal": "",
 	"Close modal": "",
 	"Close settings modal": "",
 	"Code execution": "",
@@ -1232,7 +1233,6 @@
 	"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 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 model is not publicly available. Please select another model.": "",

+ 2 - 2
src/lib/i18n/locales/en-US/translation.json

@@ -210,6 +210,7 @@
 	"Clone Chat": "",
 	"Clone of {{TITLE}}": "",
 	"Close": "",
+	"Close Configure Connection Modal": "",
 	"Close modal": "",
 	"Close settings modal": "",
 	"Code execution": "",
@@ -1232,12 +1233,11 @@
 	"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 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 model is not publicly available. Please select another model.": "",
 	"This option controls how long the model will stay loaded into memory following the request (default: 5m)": "",
-	"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 controls how many first tokens are preserved when refreshing the context. For example, if set to 2, the first 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 enables or disables the use of the reasoning feature in Ollama, which allows the model to think before generating a response. When enabled, the model can take a moment to process the conversation context and generate a more thoughtful response.": "",
 	"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.": "",

+ 1 - 1
src/lib/i18n/locales/es-ES/translation.json

@@ -210,6 +210,7 @@
 	"Clone Chat": "Clonar Chat",
 	"Clone of {{TITLE}}": "Clon de {{TITLE}}",
 	"Close": "Cerrar",
+	"Close Configure Connection Modal": "",
 	"Close modal": "Cerrar modal",
 	"Close settings modal": "Cerrar modal  configuraciones",
 	"Code execution": "Ejecución de Código",
@@ -1232,7 +1233,6 @@
 	"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.": "Este chat no aparecerá en el historial y los mensajes no se guardarán.",
-	"This chat won’t appear in history and your messages will not be saved.": "Este chat no aparecerá en el historial y los mensajes no se guardarán.",
 	"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 model is not publicly available. Please select another model.": "Este modelo no está disponible publicamente. Por favor, selecciona otro modelo.",

+ 1 - 1
src/lib/i18n/locales/et-EE/translation.json

@@ -210,6 +210,7 @@
 	"Clone Chat": "Klooni vestlus",
 	"Clone of {{TITLE}}": "{{TITLE}} koopia",
 	"Close": "Sulge",
+	"Close Configure Connection Modal": "",
 	"Close modal": "",
 	"Close settings modal": "",
 	"Code execution": "Koodi täitmine",
@@ -1232,7 +1233,6 @@
 	"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 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 model is not publicly available. Please select another model.": "",

+ 1 - 1
src/lib/i18n/locales/eu-ES/translation.json

@@ -210,6 +210,7 @@
 	"Clone Chat": "",
 	"Clone of {{TITLE}}": "",
 	"Close": "Itxi",
+	"Close Configure Connection Modal": "",
 	"Close modal": "",
 	"Close settings modal": "",
 	"Code execution": "Kodearen exekuzioa",
@@ -1232,7 +1233,6 @@
 	"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 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 model is not publicly available. Please select another model.": "",

+ 1 - 1
src/lib/i18n/locales/fa-IR/translation.json

@@ -210,6 +210,7 @@
 	"Clone Chat": "کلون گفتگو",
 	"Clone of {{TITLE}}": "کلون {{TITLE}}",
 	"Close": "بسته",
+	"Close Configure Connection Modal": "",
 	"Close modal": "",
 	"Close settings modal": "",
 	"Code execution": "اجرای کد",
@@ -1232,7 +1233,6 @@
 	"This action cannot be undone. Do you wish to continue?": "این عمل قابل بازگشت نیست. آیا می\u200cخواهید ادامه دهید؟",
 	"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 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!": "این اطمینان می\u200cدهد که مکالمات ارزشمند شما به طور امن در پایگاه داده پشتیبان ذخیره می\u200cشوند. متشکریم!",
 	"This is an experimental feature, it may not function as expected and is subject to change at any time.": "این یک ویژگی آزمایشی است، ممکن است طبق انتظار کار نکند و در هر زمان ممکن است تغییر کند.",
 	"This model is not publicly available. Please select another model.": "",

+ 1 - 1
src/lib/i18n/locales/fi-FI/translation.json

@@ -210,6 +210,7 @@
 	"Clone Chat": "Kloonaa keskustelu",
 	"Clone of {{TITLE}}": "{{TITLE}} klooni",
 	"Close": "Sulje",
+	"Close Configure Connection Modal": "",
 	"Close modal": "",
 	"Close settings modal": "Sulje asetus modaali",
 	"Code execution": "Koodin suoritus",
@@ -1232,7 +1233,6 @@
 	"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.": "Tämä kanava on luotiin {{createdAt}}. Tämä on {{channelName}} kanavan alku.",
 	"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 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 model is not publicly available. Please select another model.": "Tämä malli ei ole julkisesti saatavilla. Valitse toinen malli.",

+ 1 - 1
src/lib/i18n/locales/fr-CA/translation.json

@@ -210,6 +210,7 @@
 	"Clone Chat": "",
 	"Clone of {{TITLE}}": "",
 	"Close": "Fermer",
+	"Close Configure Connection Modal": "",
 	"Close modal": "",
 	"Close settings modal": "",
 	"Code execution": "",
@@ -1232,7 +1233,6 @@
 	"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 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 model is not publicly available. Please select another model.": "",

+ 1 - 1
src/lib/i18n/locales/fr-FR/translation.json

@@ -210,6 +210,7 @@
 	"Clone Chat": "Dupliquer le Chat",
 	"Clone of {{TITLE}}": "Dupliquat de {{TITLE}}",
 	"Close": "Fermer",
+	"Close Configure Connection Modal": "",
 	"Close modal": "",
 	"Close settings modal": "",
 	"Code execution": "Exécution de code",
@@ -1232,7 +1233,6 @@
 	"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.": "Ce canal a été créé le {{createdAt}}. Voici le tout début du canal {{channelName}}.",
 	"This chat won't appear in history and your messages will not be saved.": "Cette conversation n'apparaîtra pas dans l'historique et vos messages ne seront pas enregistrés.",
-	"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 model is not publicly available. Please select another model.": "",

+ 1 - 1
src/lib/i18n/locales/gl-ES/translation.json

@@ -210,6 +210,7 @@
 	"Clone Chat": "Clonar chat",
 	"Clone of {{TITLE}}": "Clon de {{TITLE}}",
 	"Close": "Pechar",
+	"Close Configure Connection Modal": "",
 	"Close modal": "",
 	"Close settings modal": "",
 	"Code execution": "Execución de código",
@@ -1232,7 +1233,6 @@
 	"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.": "",
 	"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.": "",
 	"This ensures that your valuable conversations are securely saved to your backend database. Thank you!": "Esto garantiza que sus valiosas conversacions se guarden de forma segura en su base de datos no backend. ¡Gracias!",
 	"This is an experimental feature, it may not function as expected and is subject to change at any time.": "Esta es unha característica experimental que puede no funcionar como se esperaba y está sujeto a cambios en cualquier momento.",
 	"This model is not publicly available. Please select another model.": "",

+ 1 - 1
src/lib/i18n/locales/he-IL/translation.json

@@ -210,6 +210,7 @@
 	"Clone Chat": "",
 	"Clone of {{TITLE}}": "",
 	"Close": "סגור",
+	"Close Configure Connection Modal": "",
 	"Close modal": "",
 	"Close settings modal": "",
 	"Code execution": "הרצת קוד",
@@ -1232,7 +1233,6 @@
 	"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 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 model is not publicly available. Please select another model.": "",

+ 1 - 1
src/lib/i18n/locales/hi-IN/translation.json

@@ -210,6 +210,7 @@
 	"Clone Chat": "",
 	"Clone of {{TITLE}}": "",
 	"Close": "बंद करना",
+	"Close Configure Connection Modal": "",
 	"Close modal": "",
 	"Close settings modal": "",
 	"Code execution": "",
@@ -1232,7 +1233,6 @@
 	"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 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 model is not publicly available. Please select another model.": "",

+ 1 - 1
src/lib/i18n/locales/hr-HR/translation.json

@@ -210,6 +210,7 @@
 	"Clone Chat": "",
 	"Clone of {{TITLE}}": "",
 	"Close": "Zatvori",
+	"Close Configure Connection Modal": "",
 	"Close modal": "",
 	"Close settings modal": "",
 	"Code execution": "",
@@ -1232,7 +1233,6 @@
 	"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 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 model is not publicly available. Please select another model.": "",

+ 1 - 1
src/lib/i18n/locales/hu-HU/translation.json

@@ -210,6 +210,7 @@
 	"Clone Chat": "Beszélgetés klónozása",
 	"Clone of {{TITLE}}": "{{TITLE}} klónja",
 	"Close": "Bezárás",
+	"Close Configure Connection Modal": "",
 	"Close modal": "",
 	"Close settings modal": "",
 	"Code execution": "Kód végrehajtás",
@@ -1232,7 +1233,6 @@
 	"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.": "Ez a csatorna {{createdAt}} időpontban jött létre. Ez a {{channelName}} csatorna legeslegeleje.",
 	"This chat won't appear in history and your messages will not be saved.": "Ez a csevegés nem jelenik meg az előzményekben, és az üzeneteid nem kerülnek mentésre.",
-	"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 model is not publicly available. Please select another model.": "",

+ 2 - 2
src/lib/i18n/locales/id-ID/translation.json

@@ -210,6 +210,7 @@
 	"Clone Chat": "",
 	"Clone of {{TITLE}}": "",
 	"Close": "Tutup",
+	"Close Configure Connection Modal": "",
 	"Close modal": "",
 	"Close settings modal": "",
 	"Code execution": "",
@@ -249,7 +250,7 @@
 	"Content": "Konten",
 	"Content Extraction Engine": "",
 	"Continue Response": "Lanjutkan Tanggapan",
-	"Continue with {{provider}}": "Lanjutkan dengan {{penyedia}}",
+	"Continue with {{provider}}": "Lanjutkan dengan {{provider}}",
 	"Continue with Email": "",
 	"Continue with 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.": "",
@@ -1232,7 +1233,6 @@
 	"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 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 model is not publicly available. Please select another model.": "",

+ 1 - 1
src/lib/i18n/locales/ie-GA/translation.json

@@ -210,6 +210,7 @@
 	"Clone Chat": "Comhrá Clón",
 	"Clone of {{TITLE}}": "Clón de {{TITLE}}",
 	"Close": "Dún",
+	"Close Configure Connection Modal": "",
 	"Close modal": "",
 	"Close settings modal": "",
 	"Code execution": "Cód a fhorghníomhú",
@@ -1232,7 +1233,6 @@
 	"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.": "Cruthaíodh an cainéal seo ar {{createdAt}}. Seo tús an chainéil {{channelName}}.",
 	"This chat won't appear in history and your messages will not be saved.": "Ní bheidh an comhrá seo le feiceáil sa stair agus ní shábhálfar do theachtaireachtaí.",
-	"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 model is not publicly available. Please select another model.": "Níl an tsamhail seo ar fáil go poiblí. Roghnaigh samhail eile le do thoil.",

+ 165 - 165
src/lib/i18n/locales/it-IT/translation.json

@@ -6,22 +6,22 @@
 	"(latest)": "(ultima)",
 	"(leave blank for to use commercial endpoint)": "(lascia vuoto per utilizzare l'endpoint commerciale)",
 	"{{ models }}": "{{ modelli }}",
-	"{{COUNT}} Available Tools": "{{COUNT}} Tool Disponibili",
+	"{{COUNT}} Available Tools": "{{COUNT}} Strumenti Disponibili",
 	"{{COUNT}} hidden lines": "{{COUNT}} righe nascoste",
 	"{{COUNT}} Replies": "{{COUNT}} Risposte",
 	"{{user}}'s Chats": "{{user}} Chat",
-	"{{webUIName}} Backend Required": "{{webUIName}} Backend Richiesta",
-	"*Prompt node ID(s) are required for image generation": "*ID nodo prompt sono richiesti per la generazione di immagini",
+	"{{webUIName}} Backend Required": "{{webUIName}} Richiesta Backend",
+	"*Prompt node ID(s) are required for image generation": "*ID nodo prompt sono necessari per la generazione di immagini",
 	"A new version (v{{LATEST_VERSION}}) is now available.": "Una nuova versione (v{{LATEST_VERSION}}) è ora disponibile.",
-	"A task model is used when performing tasks such as generating titles for chats and web search queries": "Un modello di attività viene utilizzato durante l'esecuzione di attività come la generazione di titoli per chat e query di ricerca Web",
+	"A task model is used when performing tasks such as generating titles for chats and web search queries": "Un task model viene utilizzato durante l'esecuzione di attività come la generazione di titoli per chat e query di ricerca Web",
 	"a user": "un utente",
 	"About": "Informazioni",
-	"Accept autocomplete generation / Jump to prompt variable": "Accetta generazione di completamento / Passa alla variabile del prompt",
+	"Accept autocomplete generation / Jump to prompt variable": "Accetta l'auto generazione di completamento / Passa alla variabile del prompt",
 	"Access": "Accesso",
 	"Access Control": "Controllo accessi",
 	"Accessible to all users": "Accessibile a tutti gli utenti",
 	"Account": "Account",
-	"Account Activation Pending": "Attivazione di un account in attesa",
+	"Account Activation Pending": "Account in attesa di attivazione",
 	"Accurate information": "Informazioni accurate",
 	"Actions": "Azioni",
 	"Activate": "Attiva",
@@ -29,17 +29,17 @@
 	"Active Users": "Utenti attivi",
 	"Add": "Aggiungi",
 	"Add a model ID": "Aggiungi un ID modello",
-	"Add a short description about what this model does": "Aggiungi una breve descrizione di ciò che fa questo modello",
+	"Add a short description about what this model does": "Aggiungi una breve descrizione di quello che fa questo modello",
 	"Add a tag": "Aggiungi un tag",
 	"Add Arena Model": "Aggiungi modello Arena",
 	"Add Connection": "Aggiungi connessione",
 	"Add Content": "Aggiungi contenuto",
 	"Add content here": "Aggiungi un contenuto qui",
-	"Add Custom Parameter": "",
+	"Add Custom Parameter": "Aggiungi Parametri Personalizzati",
 	"Add custom prompt": "Aggiungi un prompt personalizzato",
-	"Add Files": "Aggiungi dei files",
+	"Add Files": "Aggiungi dei file",
 	"Add Group": "Aggiungi un gruppo",
-	"Add Memory": "Aggiungi una memoria",
+	"Add Memory": "Aggiungi memoria",
 	"Add Model": "Aggiungi un modello",
 	"Add Reaction": "Aggiungi una reazione",
 	"Add Tag": "Aggiungi un tag",
@@ -52,7 +52,7 @@
 	"Admin": "Amministratore",
 	"Admin Panel": "Pannello di amministrazione",
 	"Admin Settings": "Impostazioni amministratore",
-	"Admins have access to all tools at all times; users need tools assigned per model in the workspace.": "Gli amministratori hanno accesso a tutti i tool in qualsiasi momento; gli utenti hanno bisogno di tool assegnati per modello nello spazio di lavoro.",
+	"Admins have access to all tools at all times; users need tools assigned per model in the workspace.": "Gli amministratori hanno accesso a tutti gli strumenti in qualsiasi momento; gli utenti necessitano di strumenti assegnati per ogni modello nello spazio di lavoro.",
 	"Advanced Parameters": "Parametri avanzati",
 	"Advanced Params": "Parametri avanzati",
 	"All": "Tutti",
@@ -75,8 +75,8 @@
 	"Allow User Location": "Consenti posizione utente",
 	"Allow Voice Interruption in Call": "Consenti interruzione vocale in chiamata",
 	"Allowed Endpoints": "Endpoint consentiti",
-	"Allowed File Extensions": "",
-	"Allowed file extensions for upload. Separate multiple extensions with commas. Leave empty for all file types.": "",
+	"Allowed File Extensions": "Estensioni file permesse",
+	"Allowed file extensions for upload. Separate multiple extensions with commas. Leave empty for all file types.": "Le estensioni file permesse per il caricamento. Separa le varie estensioni con una virgola. Lascia vuoto per tutti i tipi di file.",
 	"Already have an account?": "Hai già un 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.": "Alternativa al top_p e mira a garantire un equilibrio tra qualità e varietà. Il parametro p rappresenta la probabilità minima affinché un token venga considerato, rispetto alla probabilità del token più probabile. Ad esempio, con p=0.05 e il token più probabile con una probabilità di 0.9, i logits con un valore inferiore a 0.045 vengono filtrati.",
 	"Always": "Sempre",
@@ -86,19 +86,19 @@
 	"Amazing": "Fantastico",
 	"an assistant": "un assistente",
 	"Analyzed": "Analizzato",
-	"Analyzing...": "Analizzando...",
+	"Analyzing...": "Analisi in corso...",
 	"and": "e",
 	"and {{COUNT}} more": "e {{COUNT}} altro",
 	"and create a new shared link.": "e crea un nuovo link condiviso.",
 	"Android": "Android",
-	"API": "",
-	"API Base URL": "URL base API",
-	"API details for using a vision-language model in the picture description. This parameter is mutually exclusive with picture_description_local.": "",
+	"API": "API",
+	"API Base URL": "URL base per API",
+	"API details for using a vision-language model in the picture description. This parameter is mutually exclusive with picture_description_local.": "Dettagli API per utilizzare un modello di tipo vision-language nella descrizione della immagine. Questo parametro è esclusivo per picture_description_local",
 	"API Key": "Chiave API",
 	"API Key created.": "Chiave API creata.",
 	"API Key Endpoint Restrictions": "Restrizioni Endpoint Chiave API",
 	"API keys": "Chiavi API",
-	"API Version": "",
+	"API Version": "Versione API",
 	"Application DN": "DN dell'applicazione",
 	"Application DN Password": "Password DN dell'applicazione",
 	"applies to all users with the \"user\" role": "applica a tutti gli utenti con il ruolo \"utente\"",
@@ -132,7 +132,7 @@
 	"Autocomplete Generation": "Generazione dell'autocompletamento",
 	"Autocomplete Generation Input Max Length": "Lunghezza massima input generazione dell'autocompletamento",
 	"Automatic1111": "",
-	"AUTOMATIC1111 Api Auth String": "",
+	"AUTOMATIC1111 Api Auth String": "Stringa autenticazione AUTOMATIC1111 Api",
 	"AUTOMATIC1111 Base URL": "URL base AUTOMATIC1111",
 	"AUTOMATIC1111 Base URL is required.": "L'URL base AUTOMATIC1111 è obbligatorio.",
 	"Available list": "Elenco disponibile",
@@ -146,7 +146,7 @@
 	"Banners": "Banner",
 	"Base Model (From)": "Modello base (da)",
 	"before": "prima",
-	"Being lazy": "Essere pigri",
+	"Being lazy": "Faccio il pigro",
 	"Beta": "Beta",
 	"Bing Search V7 Endpoint": "Endpoint di Bing Search V7",
 	"Bing Search V7 Subscription Key": "Chiave di Iscrizione Bing Search V7",
@@ -156,7 +156,7 @@
 	"Brave Search API Key": "Chiave API di ricerca Brave",
 	"By {{name}}": "Di {{name}}",
 	"Bypass Embedding and Retrieval": "Bypass embedding e recupero",
-	"Bypass Web Loader": "",
+	"Bypass Web Loader": "Bypassa il Web Loader",
 	"Calendar": "Calendario",
 	"Call": "Chiamata",
 	"Call feature is not supported when using Web STT engine": "La funzione di chiamata non è supportata quando si utilizza il motore Web STT",
@@ -174,7 +174,7 @@
 	"Chart new frontiers": "Traccia nuove frontiere",
 	"Chat": "Chat",
 	"Chat Background Image": "Immagine di sfondo chat",
-	"Chat Bubble UI": "UI bolle chat",
+	"Chat Bubble UI": "UI bubble chat",
 	"Chat Controls": "Controlli chat",
 	"Chat direction": "Direzione chat",
 	"Chat Overview": "Panoramica chat",
@@ -189,7 +189,7 @@
 	"Chunk Size": "Dimensione chunk",
 	"Ciphers": "Cifrari",
 	"Citation": "Citazione",
-	"Citations": "",
+	"Citations": "Citazioni",
 	"Clear memory": "Cancella memoria",
 	"Clear Memory": "Cancella memoria",
 	"click here": "clicca qui",
@@ -207,10 +207,11 @@
 	"Click on the user role button to change a user's role.": "Clicca sul pulsante del ruolo utente per modificare il ruolo di un utente.",
 	"Clipboard write permission denied. Please check your browser settings to grant the necessary access.": "Autorizzazione di scrittura negli appunti negata. Controlla le impostazioni del browser per concedere l'accesso necessario.",
 	"Clone": "Clone",
-	"Clone Chat": "",
+	"Clone Chat": "CLona Chat",
 	"Clone of {{TITLE}}": "Clone di {{TITLE}}",
 	"Close": "Chiudi",
-	"Close modal": "",
+	"Close Configure Connection Modal": "",
+	"Close modal": "Chiudi modale",
 	"Close settings modal": "",
 	"Code execution": "Esecuzione codice",
 	"Code Execution": "Esecuzione codice",
@@ -219,7 +220,7 @@
 	"Code formatted successfully": "Codice formattato con successo",
 	"Code Interpreter": "Interprete codice",
 	"Code Interpreter Engine": "Motore interprete codice",
-	"Code Interpreter Prompt Template": "Modello di prompt interprete codice",
+	"Code Interpreter Prompt Template": "Template di prompt per interprete codice",
 	"Collapse": "Riduci",
 	"Collection": "Collezione",
 	"Color": "Colore",
@@ -241,7 +242,7 @@
 	"Connect to your own OpenAPI compatible external tool servers.": "Connettiti ai tuoi server di tool esterni compatibili con OpenAPI.",
 	"Connection failed": "Connessione fallita",
 	"Connection successful": "Connessione riuscita",
-	"Connection Type": "",
+	"Connection Type": "Tipo Connessione",
 	"Connections": "Connessioni",
 	"Connections saved successfully": "Connessioni salvate con successo",
 	"Constrains effort on reasoning for reasoning models. Only applicable to reasoning models from specific providers that support reasoning effort.": "Limita lo sforzo di ragionamento per i modelli di ragionamento. Applicabile solo a modelli di ragionamento di fornitori specifici che supportano lo sforzo di ragionamento.",
@@ -257,7 +258,7 @@
 	"Controls": "Controlli",
 	"Controls the balance between coherence and diversity of the output. A lower value will result in more focused and coherent text.": "Controlla l'equilibrio tra coerenza e diversità dell'output. Un valore più basso risulterà in un testo più focalizzato e coerente.",
 	"Copied": "Copiato",
-	"Copied link to clipboard": "",
+	"Copied link to clipboard": "Link copiato negli appunti",
 	"Copied shared chat URL to clipboard!": "URL della chat condivisa copiato negli appunti!",
 	"Copied to clipboard": "Copiato negli appunti",
 	"Copy": "Copia",
@@ -279,7 +280,7 @@
 	"Create new key": "Crea nuova chiave",
 	"Create new secret key": "Crea nuova chiave segreta",
 	"Create Note": "Crea nota",
-	"Create your first note by clicking on the plus button below.": "",
+	"Create your first note by clicking on the plus button below.": "Crea la tua prima nota cliccando sul pulsante + sotto.",
 	"Created at": "Creato il",
 	"Created At": "Creato il",
 	"Created by": "Creato da",
@@ -288,19 +289,19 @@
 	"Current Model": "Modello corrente",
 	"Current Password": "Password corrente",
 	"Custom": "Personalizzato",
-	"Custom Parameter Name": "",
-	"Custom Parameter Value": "",
+	"Custom Parameter Name": "Nome parametro personalizzato",
+	"Custom Parameter Value": "Valore parametro personalizzato",
 	"Danger Zone": "Zona di pericolo",
 	"Dark": "Scuro",
 	"Database": "Database",
-	"Datalab Marker API": "",
-	"Datalab Marker API Key required.": "",
+	"Datalab Marker API": "Datalab Marker API",
+	"Datalab Marker API Key required.": "Chiave Datalab Marker API necessaria.",
 	"December": "Dicembre",
 	"Default": "Predefinito",
 	"Default (Open AI)": "Predefinito (Open AI)",
 	"Default (SentenceTransformers)": "Predefinito (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.": "Il modello predefinito funziona con un'ampia gamma di modelli chiamando i tool una volta prima dell'esecuzione. La modalità nativa sfrutta le capacità di chiamata dei tool integrate nel modello, ma richiede che il modello supporti intrinsecamente questa funzionalità.",
-	"Default Model": "Modello di default",
+	"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.": "Il modello predefinito funziona con un'ampia gamma di modelli chiamando gli strumenti una volta prima dell'esecuzione. La modalità nativa sfrutta le capacità di chiamata degli strumenti integrate nel modello, ma richiede che il modello supporti intrinsecamente questa funzionalità.",
+	"Default Model": "Modello predefinito",
 	"Default model updated": "Modello predefinito aggiornato",
 	"Default Models": "Modelli predefiniti",
 	"Default permissions": "Permessi predefiniti",
@@ -329,20 +330,20 @@
 	"Deleted {{deleteModelTag}}": "{{deleteModelTag}} eliminato",
 	"Deleted {{name}}": "{{name}} eliminato",
 	"Deleted User": "Utente eliminato",
-	"Deployment names are required for Azure OpenAI": "",
+	"Deployment names are required for Azure OpenAI": "I nomi dei deployment sono obbligatori per Azure OpenAI",
 	"Describe Pictures in Documents": "",
 	"Describe your knowledge base and objectives": "Descrivi la tua base di conoscenza e gli obiettivi",
 	"Description": "Descrizione",
 	"Detect Artifacts Automatically": "Rileva artefatti automaticamente",
-	"Dictate": "",
+	"Dictate": "Detta",
 	"Didn't fully follow instructions": "Non ha seguito completamente le istruzioni",
 	"Direct": "Diretto",
 	"Direct Connections": "Connessioni Dirette",
 	"Direct Connections allow users to connect to their own OpenAI compatible API endpoints.": "Le Connessioni Dirette consentono agli utenti di connettersi ai propri endpoint API compatibili con OpenAI.",
 	"Direct Connections settings updated": "Impostazioni Connessioni Dirette aggiornate",
-	"Direct Tool Servers": "Server Tool Diretti",
-	"Disable Image Extraction": "",
-	"Disable image extraction from the PDF. If Use LLM is enabled, images will be automatically captioned. Defaults to False.": "",
+	"Direct Tool Servers": "Strimentu Server Diretti",
+	"Disable Image Extraction": "Disattiva l'estrazione immagini",
+	"Disable image extraction from the PDF. If Use LLM is enabled, images will be automatically captioned. Defaults to False.": "Disattiva l'estrazione immagini dai PDF. Se LLM è attivo le immagini saranno didascalizzate. Predefinito a Falso.",
 	"Disabled": "Disabilitato",
 	"Discover a function": "Scopri una funzione",
 	"Discover a model": "Scopri un modello",
@@ -352,8 +353,8 @@
 	"Discover wonders": "Scopri meraviglie",
 	"Discover, download, and explore custom functions": "Scopri, scarica ed esplora funzioni personalizzate",
 	"Discover, download, and explore custom prompts": "Scopri, scarica ed esplora prompt personalizzati",
-	"Discover, download, and explore custom tools": "Scopri, scarica ed esplora tool personalizzati",
-	"Discover, download, and explore model presets": "Scopri, scarica ed esplora i preset del modello",
+	"Discover, download, and explore custom tools": "Scopri, scarica ed esplora strumenti personalizzati",
+	"Discover, download, and explore model presets": "Scopri, scarica ed esplora i preset dei modello",
 	"Dismissible": "Scartabile",
 	"Display": "Visualizza",
 	"Display Emoji in Call": "Visualizza emoji nella chiamata",
@@ -361,9 +362,9 @@
 	"Displays citations in the response": "Visualizza citazioni nella risposta",
 	"Dive into knowledge": "Immergiti nella conoscenza",
 	"Do not install functions from sources you do not fully trust.": "Non installare funzioni da fonti di cui non ti fidi completamente.",
-	"Do not install tools from sources you do not fully trust.": "Non installare tool da fonti di cui non ti fidi completamente.",
+	"Do not install tools from sources you do not fully trust.": "Non installare strumenti da fonti di cui non ti fidi completamente.",
 	"Docling": "Docling",
-	"Docling Server URL required.": "L'URL del server Docling è richiesto.",
+	"Docling Server URL required.": "L'URL del server Docling è obbligatoria.",
 	"Document": "Documento",
 	"Document Intelligence": "Document Intelligence",
 	"Document Intelligence endpoint and key required.": "Endpoint e chiave per Document Intelligence sono richiesti.",
@@ -373,7 +374,7 @@
 	"Domain Filter List": "Elenco filtri dominio",
 	"Don't have an account?": "Non hai un account?",
 	"don't install random functions from sources you don't trust.": "non installare funzioni da fonti di cui non ti fidi.",
-	"don't install random tools from sources you don't trust.": "non installare tool da fonti di cui non ti fidi.",
+	"don't install random tools from sources you don't trust.": "non installare strumenti da fonti di cui non ti fidi.",
 	"Don't like the style": "Non ti piace lo stile",
 	"Done": "Fatto",
 	"Download": "Scarica",
@@ -387,18 +388,18 @@
 	"e.g. \"json\" or a JSON schema": "ad esempio \"json\" o uno schema JSON",
 	"e.g. 60": "ad esempio 60",
 	"e.g. A filter to remove profanity from text": "ad esempio un filtro per rimuovere le parolacce dal testo",
-	"e.g. en": "",
+	"e.g. en": "ad esempio en",
 	"e.g. My Filter": "ad esempio il Mio Filtro",
-	"e.g. My Tools": "ad esempio i Miei Tool",
+	"e.g. My Tools": "ad esempio i Miei Strumenti",
 	"e.g. my_filter": "ad esempio il mio_filtro",
-	"e.g. my_tools": "ad esempio i miei_tool",
+	"e.g. my_tools": "ad esempio i miei_strumenti",
 	"e.g. pdf, docx, txt": "ad esempio pdf, docx, txt",
-	"e.g. Tools for performing various operations": "ad esempio tool per eseguire varie operazioni",
+	"e.g. Tools for performing various operations": "ad esempio strumenti per eseguire varie operazioni",
 	"e.g., 3, 4, 5 (leave blank for default)": "ad esempio, 3, 4, 5 (lascia vuoto per predefinito)",
-	"e.g., audio/wav,audio/mpeg (leave blank for defaults)": "",
+	"e.g., audio/wav,audio/mpeg (leave blank for defaults)": "ad esempio, audio/wav,audio/mpeg (lascia vuoto per predefinito)",
 	"e.g., en-US,ja-JP (leave blank for auto-detect)": "ad esempio, en-US,ja-JP (lascia vuoto per auto-rilevamento)",
 	"e.g., westus (leave blank for eastus)": "ad esempio, westus (lascia vuoto per est)",
-	"e.g.) en,fr,de": "",
+	"e.g.) en,fr,de": "ad esempio ) en,fr,de",
 	"Edit": "Modifica",
 	"Edit Arena Model": "Modifica Modello Arena",
 	"Edit Channel": "Modifica Canale",
@@ -407,7 +408,7 @@
 	"Edit Memory": "Modifica Memoria",
 	"Edit User": "Modifica Utente",
 	"Edit User Group": "Modifica Gruppo Utente",
-	"Eject": "",
+	"Eject": "Espelli",
 	"ElevenLabs": "ElevenLabs",
 	"Email": "Email",
 	"Embark on adventures": "Intraprendi avventure",
@@ -425,7 +426,7 @@
 	"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.": "Abilita il mapping della memoria (mmap) per caricare i dati del modello. Questa opzione consente al sistema di utilizzare lo spazio di archiviazione su disco come estensione della RAM trattando i file su disco come se fossero nella RAM. Questo può migliorare le prestazioni del modello consentendo un accesso più rapido ai dati. Tuttavia, potrebbe non funzionare correttamente con tutti i sistemi e può consumare una quantità significativa di spazio su disco.",
 	"Enable Message Rating": "Abilita valutazione messaggio",
 	"Enable Mirostat sampling for controlling perplexity.": "Abilita il campionamento Mirostat per controllare la perplessità.",
-	"Enable New Sign Ups": "Abilita Nuove Iscrizioni",
+	"Enable New Sign Ups": "Abilita Nuove Registrazioni",
 	"Enabled": "Abilitato",
 	"Endpoint URL": "URL Endpoint",
 	"Enforce Temporary Chat": "Forza Chat Temporanea",
@@ -433,14 +434,14 @@
 	"Ensure your CSV file includes 4 columns in this order: Name, Email, Password, Role.": "Assicurati che il tuo file CSV includa 4 colonne in questo ordine: Nome, Email, Password, Ruolo.",
 	"Enter {{role}} message here": "Inserisci il messaggio per {{role}} qui",
 	"Enter a detail about yourself for your LLMs to recall": "Inserisci un dettaglio su di te per che i LLM possano ricordare",
-	"Enter a title for the pending user info overlay. Leave empty for default.": "",
-	"Enter a watermark for the response. Leave empty for none.": "",
+	"Enter a title for the pending user info overlay. Leave empty for default.": "Inserisci un titolo per gli utente in attesa nella schermata informazioni. LAscia vuoto per il predefinito.",
+	"Enter a watermark for the response. Leave empty for none.": "Inserisci un watermark per le risposte. Lascia vuoto per nessuno.",
 	"Enter api auth string (e.g. username:password)": "Inserisci la stringa di autenticazione API (ad es. nome utente:password)",
 	"Enter Application DN": "Inserisci DN dell'applicazione",
 	"Enter Application DN Password": "Inserisci password DN dell'applicazione",
 	"Enter Bing Search V7 Endpoint": "Inserisci l'endpoint di Bing Search V7",
 	"Enter Bing Search V7 Subscription Key": "Inserisci Chiave di sottoscrizione di Bing Search V7",
-	"Enter BM25 Weight": "",
+	"Enter BM25 Weight": "Inserisci il peso BM25",
 	"Enter Bocha Search API Key": "Inserisci Chiave API di Bocha Search",
 	"Enter Brave Search API Key": "Inserisci Chiave API di Brave Search",
 	"Enter certificate path": "Inserisci il percorso del certificato",
@@ -448,9 +449,9 @@
 	"Enter Chunk Overlap": "Inserisci Sovrapposizione Chunk",
 	"Enter Chunk Size": "Inserisci Dimensione Chunk",
 	"Enter comma-separated \"token:bias_value\" pairs (example: 5432:100, 413:-100)": "Inserisci coppie \"token:valore_bias\" separate da virgole (esempio: 5432:100, 413:-100)",
-	"Enter Config in JSON format": "",
+	"Enter Config in JSON format": "Inserisci la configurazione nel formato JSON",
 	"Enter content for the pending user info overlay. Leave empty for default.": "Inserisci contenuto per l'overlay di info per utenti in attesa. Lascia vuoto per predefinito.",
-	"Enter Datalab Marker API Key": "",
+	"Enter Datalab Marker API Key": "Inserisci la chiave Datalab Marker API",
 	"Enter description": "Inserisci descrizione",
 	"Enter Docling OCR Engine": "Inserisci Engine di Docling OCR",
 	"Enter Docling OCR Language(s)": "Inserisci la lingua(/e) di Docling OCR",
@@ -482,7 +483,7 @@
 	"Enter Model ID": "Inserisci ID Modello",
 	"Enter model tag (e.g. {{modelTag}})": "Inserisci il tag del modello (ad esempio {{modelTag}})",
 	"Enter Mojeek Search API Key": "Inserisci Chiave API di Mojeek Search",
-	"Enter name": "",
+	"Enter name": "Inserisci il nome",
 	"Enter New Password": "Inserisci la Nuova Password",
 	"Enter Number of Steps (e.g. 50)": "Inserisci Numero di Passaggi (ad esempio 50)",
 	"Enter Perplexity API Key": "Inserisci Chiave API di Perplexity",
@@ -513,8 +514,8 @@
 	"Enter Tavily API Key": "Inserisci Chiave API Tavily",
 	"Enter Tavily Extract Depth": "Inserisci la Profondità di Estrazione Tavily",
 	"Enter the public URL of your WebUI. This URL will be used to generate links in the notifications.": "Inserisci l'URL pubblico del tuo WebUI. Questo URL verrà utilizzato per generare collegamenti nelle notifiche.",
-	"Enter the URL of the function to import": "",
-	"Enter the URL to import": "",
+	"Enter the URL of the function to import": "Inserisci la URL della funzione di importazione",
+	"Enter the URL to import": "Inserisci la URL della importazione",
 	"Enter Tika Server URL": "Inserisci l'URL del Server Tika",
 	"Enter timeout in seconds": "Inserisci la scadenza in secondi",
 	"Enter to Send": "Premi Invio per Inviare",
@@ -541,7 +542,7 @@
 	"Error accessing Google Drive: {{error}}": "Errore durante l'accesso a Google Drive: {{error}}",
 	"Error accessing media devices.": "Errore durante l'accesso ai dispositivi multimediali.",
 	"Error starting recording.": "Errore durante l'avvio della registrazione.",
-	"Error unloading model: {{error}}": "",
+	"Error unloading model: {{error}}": "Errore durante lo scaricamento della memoria del modello: {{error}}",
 	"Error uploading file: {{error}}": "Errore durante il caricamento del file: {{error}}",
 	"Evaluations": "Valutazioni",
 	"Exa API Key": "Chiave API Exa",
@@ -567,20 +568,20 @@
 	"Export Functions": "Esporta Funzioni",
 	"Export Models": "Esporta Modelli",
 	"Export Presets": "Esporta Preset",
-	"Export Prompt Suggestions": "",
+	"Export Prompt Suggestions": "Esporta i suggerimenti per il prompt",
 	"Export Prompts": "Esporta Prompt",
 	"Export to CSV": "Esporta in CSV",
-	"Export Tools": "Esporta Tool",
+	"Export Tools": "Esporta Strumenti",
 	"External": "Esterno",
-	"External Document Loader URL required.": "",
-	"External Task Model": "",
-	"External Web Loader API Key": "Chiave API del caricatore web esterno",
-	"External Web Loader URL": "URL del caricatore web esterno",
+	"External Document Loader URL required.": "URL esterna per il Document Loader necessaria.",
+	"External Task Model": "Task Modello esterna",
+	"External Web Loader API Key": "Chiave API del web loaderesterno",
+	"External Web Loader URL": "URL del web loader esterno",
 	"External Web Search API Key": "Chiave API di ricerca web esterna",
 	"External Web Search URL": "URL di ricerca web esterna",
 	"Failed to add file.": "Impossibile aggiungere il file.",
 	"Failed to connect to {{URL}} OpenAPI tool server": "Impossibile connettersi al server dello strumento OpenAPI {{URL}}",
-	"Failed to copy link": "",
+	"Failed to copy link": "Impossibile copiare il link",
 	"Failed to create API Key.": "Impossibile creare Chiave API.",
 	"Failed to delete note": "Impossibile eliminare la nota",
 	"Failed to fetch models": "Impossibile recuperare i modelli",
@@ -593,7 +594,7 @@
 	"Features": "Caratteristiche",
 	"Features Permissions": "Permessi delle funzionalità",
 	"February": "Febbraio",
-	"Feedback Details": "",
+	"Feedback Details": "Dettagli feedback",
 	"Feedback History": "Storico feedback",
 	"Feedbacks": "Feedback",
 	"Feel free to add specific details": "Sentiti libero/a di aggiungere dettagli specifici",
@@ -604,7 +605,7 @@
 	"File not found.": "File non trovato.",
 	"File removed successfully.": "File rimosso con successo.",
 	"File size should not exceed {{maxSize}} MB.": "La dimensione del file non deve superare {{maxSize}} MB.",
-	"File Upload": "",
+	"File Upload": "Caricamento file",
 	"File uploaded successfully": "Caricamento file riuscito",
 	"Files": "File",
 	"Filter is now globally disabled": "Il filtro è ora disabilitato globalmente",
@@ -618,13 +619,13 @@
 	"Folder deleted successfully": "Cartella rimossa con successo",
 	"Folder name cannot be empty.": "Il nome della cartella non può essere vuoto.",
 	"Folder name updated successfully": "Nome cartella aggiornato con successo",
-	"Follow up": "",
-	"Follow Up Generation": "",
-	"Follow Up Generation Prompt": "",
-	"Follow-Up Auto-Generation": "",
+	"Follow up": "Follow up",
+	"Follow Up Generation": "Generazione follow up",
+	"Follow Up Generation Prompt": "Generazione prompt follow up",
+	"Follow-Up Auto-Generation": "Generazione automatico follow up",
 	"Followed instructions perfectly": "Ha seguito le istruzioni alla perfezione",
-	"Force OCR": "",
-	"Force OCR on all pages of the PDF. This can lead to worse results if you have good text in your PDFs. Defaults to False.": "",
+	"Force OCR": "Forza OCR",
+	"Force OCR on all pages of the PDF. This can lead to worse results if you have good text in your PDFs. Defaults to False.": "Forza OCR su tutte le pagine dei PDF. Questo porterebbe ai peggiori risultati se hai dell'ottimo testo nei PDF. Predefinito a Falso.",
 	"Forge new paths": "Traccia nuovi percorsi",
 	"Form": "Modulo",
 	"Format your variables using brackets like this:": "Formatta le tue variabili usando le parentesi quadre in questo modo:",
@@ -636,7 +637,7 @@
 	"Function deleted successfully": "Funzione eliminata con successo",
 	"Function Description": "Descrizione Funzione",
 	"Function ID": "ID Funzione",
-	"Function imported successfully": "",
+	"Function imported successfully": "Funzione importata con successo",
 	"Function is now globally disabled": "Il filtro è ora disabilitato globalmente",
 	"Function is now globally enabled": "Il filtro è ora abilitato globalmente",
 	"Function Name": "Nome Funzione",
@@ -674,7 +675,7 @@
 	"Hex Color": "Colore Esadecimale",
 	"Hex Color - Leave empty for default color": "Colore esadecimale - Lascia vuoto per il colore predefinito",
 	"Hide": "Nascondi",
-	"Hide from Sidebar": "",
+	"Hide from Sidebar": "Nascosta dalla barra laterale",
 	"Hide Model": "Nascondi Modello",
 	"High Contrast Mode": "Modalità Alto Contrasto",
 	"Home": "Home",
@@ -690,27 +691,27 @@
 	"Ignite curiosity": "Accendi la curiosità",
 	"Image": "Immagine",
 	"Image Compression": "Compressione Immagini",
-	"Image Compression Height": "",
-	"Image Compression Width": "",
+	"Image Compression Height": "Altezza immagine compressa",
+	"Image Compression Width": "Larghezza immagine compressa",
 	"Image Generation": "Generazione Immagini",
 	"Image Generation (Experimental)": "Generazione di immagini (sperimentale)",
 	"Image Generation Engine": "Motore di generazione immagini",
 	"Image Max Compression Size": "Dimensione Massima Compressione Immagine",
-	"Image Max Compression Size height": "",
-	"Image Max Compression Size width": "",
+	"Image Max Compression Size height": "Altezza dimensione immagine massima",
+	"Image Max Compression Size width": "Lunghezza dimensione immagine massima",
 	"Image Prompt Generation": "Generazione Prompt Immagine",
 	"Image Prompt Generation Prompt": "Prompt per la Generazione di Prompt Immagine",
 	"Image Settings": "Impostazioni Immagine",
 	"Images": "Immagini",
-	"Import": "",
+	"Import": "Importa",
 	"Import Chats": "Importa Chat",
 	"Import Config from JSON File": "Importa Configurazione da File JSON",
-	"Import From Link": "",
+	"Import From Link": "Importa dai link",
 	"Import Functions": "Importa Funzioni",
 	"Import Models": "Importazione Modelli",
 	"Import Notes": "Importa Note",
 	"Import Presets": "Importa Preset",
-	"Import Prompt Suggestions": "",
+	"Import Prompt Suggestions": "Importa suggerimenti Prompt",
 	"Import Prompts": "Importa Prompt",
 	"Import Tools": "Importa Tool",
 	"Include": "Includi",
@@ -726,7 +727,7 @@
 	"Interface": "Interfaccia",
 	"Invalid file content": "Contenuto del file non valido",
 	"Invalid file format.": "Formato file non valido.",
-	"Invalid JSON file": "",
+	"Invalid JSON file": "File JSOn non valido",
 	"Invalid Tag": "Tag non valido",
 	"is typing...": "sta digitando...",
 	"January": "Gennaio",
@@ -741,7 +742,7 @@
 	"JWT Expiration": "Scadenza JWT",
 	"JWT Token": "Token JWT",
 	"Kagi Search API Key": "Chiave API di ricerca Kagi",
-	"Keep in Sidebar": "",
+	"Keep in Sidebar": "Mantieni nella barra laterale",
 	"Key": "Chiave",
 	"Keyboard shortcuts": "Scorciatoie da tastiera",
 	"Knowledge": "Conoscenza",
@@ -757,7 +758,7 @@
 	"Landing Page Mode": "Modalità pagina iniziale",
 	"Language": "Lingua",
 	"Language Locales": "Locales della lingua",
-	"Languages": "",
+	"Languages": "Lingue",
 	"Last Active": "Ultima attività",
 	"Last Modified": "Ultima modifica",
 	"Last reply": "Ultima risposta",
@@ -765,9 +766,9 @@
 	"LDAP server updated": "Server LDAP aggiornato",
 	"Leaderboard": "Classifica",
 	"Learn more about OpenAPI tool servers.": "Scopri di più sui server di tool OpenAPI.",
-	"Leave empty for no compression": "",
+	"Leave empty for no compression": "Lascia spazio per nessuna compressione",
 	"Leave empty for unlimited": "Lascia vuoto per illimitato",
-	"Leave empty to include all models from \"{{url}}\" endpoint": "",
+	"Leave empty to include all models from \"{{url}}\" endpoint": "Lascia vuoto per includere tutti i modelli dagli endpoint \"{{url}}\"",
 	"Leave empty to include all models from \"{{url}}/api/tags\" endpoint": "Lascia vuoto per includere tutti i modelli dall'endpoint \"{{url}}/api/tags\"",
 	"Leave empty to include all models from \"{{url}}/models\" endpoint": "Lascia vuoto per includere tutti i modelli dall'endpoint \"{{url}}/models\"",
 	"Leave empty to include all models or select specific models": "Lascia vuoto per includere tutti i modelli o seleziona modelli specifici",
@@ -781,12 +782,12 @@
 	"Loader": "Caricatore",
 	"Loading Kokoro.js...": "Caricamento Kokoro.js...",
 	"Local": "Locale",
-	"Local Task Model": "",
+	"Local Task Model": "Modello Task locale",
 	"Location access not allowed": "Accesso alla posizione non consentito",
 	"Lost": "Perso",
 	"LTR": "LTR",
 	"Made by Open WebUI Community": "Realizzato dalla Comunità Open WebUI",
-	"Make password visible in the user interface": "",
+	"Make password visible in the user interface": "Rendi la password visibile nella interfaccia utente",
 	"Make sure to enclose them with": "Assicurati di racchiuderli con",
 	"Make sure to export a workflow.json file as API format from ComfyUI.": "Assicurati di esportare un file workflow.json come formato API da ComfyUI.",
 	"Manage": "Gestisci",
@@ -827,11 +828,11 @@
 	"Model {{name}} is now {{status}}": "Il modello {{name}} è ora {{status}}",
 	"Model {{name}} is now hidden": "Il modello {{name}} è ora nascosto",
 	"Model {{name}} is now visible": "Il modello {{name}} è ora visibile",
-	"Model accepts file inputs": "",
+	"Model accepts file inputs": "Tipo ti file accettati dal modello",
 	"Model accepts image inputs": "Il modello accetta input immagine",
-	"Model can execute code and perform calculations": "",
-	"Model can generate images based on text prompts": "",
-	"Model can search the web for information": "",
+	"Model can execute code and perform calculations": "Il modello può eseguire del codice e fare calcoli",
+	"Model can generate images based on text prompts": "Il modello può generare delle immagini basate sui prompt testuali",
+	"Model can search the web for information": "Il modello può cercare nella rete per informazioni",
 	"Model created successfully!": "Modello creato con successo!",
 	"Model filesystem path detected. Model shortname is required for update, cannot continue.": "Percorso del filesystem del modello rilevato. Il nome breve del modello è richiesto per l'aggiornamento, impossibile continuare.",
 	"Model Filtering": "Filtraggio modelli",
@@ -841,9 +842,9 @@
 	"Model not selected": "Modello non selezionato",
 	"Model Params": "Parametri del modello",
 	"Model Permissions": "Permessi del modello",
-	"Model unloaded successfully": "",
+	"Model unloaded successfully": "Scaricamento dalla memoria del modello riuscito",
 	"Model updated successfully": "Modello aggiornato con successo",
-	"Model(s) do not support file upload": "",
+	"Model(s) do not support file upload": "I/l modello/i non supporta il caricamento file",
 	"Modelfile Content": "Contenuto del file modello",
 	"Models": "Modelli",
 	"Models Access": "Accesso ai modelli",
@@ -861,11 +862,11 @@
 	"New Function": "",
 	"New Note": "Nuova nota",
 	"New Password": "Nuova password",
-	"New Tool": "",
+	"New Tool": "Nuovo strumento",
 	"new-channel": "nuovo-canale",
-	"Next message": "",
-	"No chats found for this user.": "",
-	"No chats found.": "",
+	"Next message": "Messaggio successivo",
+	"No chats found for this user.": "Nessuna chat trovata per questo utente.",
+	"No chats found.": "Nessuna chat trovata.",
 	"No content": "Nessun contenuto",
 	"No content found": "Nessun contenuto trovato",
 	"No content found in file.": "Nessun contenuto trovato nel file.",
@@ -908,8 +909,8 @@
 	"Ollama Version": "Versione Ollama",
 	"On": "Attivato",
 	"OneDrive": "OneDrive",
-	"Only active when \"Paste Large Text as File\" setting is toggled on.": "",
-	"Only active when the chat input is in focus and an LLM is generating a response.": "",
+	"Only active when \"Paste Large Text as File\" setting is toggled on.": "Solo attivo quando \"Incolla Molto Testo come File\" è attiva.",
+	"Only active when the chat input is in focus and an LLM is generating a response.": "Solo attivo quando l'input chat ha il focus e un LLM sta generando una risposta.",
 	"Only alphanumeric characters and hyphens are allowed": "Nella stringa di comando sono consentiti solo caratteri alfanumerici e trattini",
 	"Only alphanumeric characters and hyphens are allowed in the command string.": "Nella stringa di comando sono consentiti solo caratteri alfanumerici e trattini.",
 	"Only collections can be edited, create a new knowledge base to edit/add documents.": "Solo le collezioni possono essere modificate, crea una nuova base di conoscenza per modificare/aggiungere documenti.",
@@ -933,39 +934,39 @@
 	"OpenAI API Key is required.": "La Chiave API OpenAI è obbligatoria.",
 	"OpenAI API settings updated": "Impostazioni API OpenAI aggiornate",
 	"OpenAI URL/Key required.": "URL/Chiave OpenAI obbligatori.",
-	"openapi.json URL or Path": "",
-	"Options for running a local vision-language model in the picture description. The parameters refer to a model hosted on Hugging Face. This parameter is mutually exclusive with picture_description_api.": "",
+	"openapi.json URL or Path": "URL openapi.json o il percorso",
+	"Options for running a local vision-language model in the picture description. The parameters refer to a model hosted on Hugging Face. This parameter is mutually exclusive with picture_description_api.": "Opzioni per l'esecuzione di un modello di vision-language locale nella descrizione dell'immagine. I parametri si riferiscono a un modello ospitato su Hugging Face. Questo parametro è esclusivo con picture_description_api.",
 	"or": "o",
 	"Organize your users": "Organizza i tuoi utenti",
 	"Other": "Altro",
 	"OUTPUT": "OUTPUT",
 	"Output format": "Formato di output",
-	"Output Format": "",
+	"Output Format": "Formato output",
 	"Overview": "Panoramica",
 	"page": "pagina",
-	"Paginate": "",
-	"Parameters": "",
+	"Paginate": "Paginazione",
+	"Parameters": "Parametri",
 	"Password": "Password",
-	"Paste Large Text as File": "Incolla Testo Grande come File",
+	"Paste Large Text as File": "Incolla Molto Testo come File",
 	"PDF document (.pdf)": "Documento PDF (.pdf)",
 	"PDF Extract Images (OCR)": "Estrazione Immagini PDF (OCR)",
 	"pending": "in sospeso",
-	"Pending": "",
-	"Pending User Overlay Content": "",
-	"Pending User Overlay Title": "",
+	"Pending": "In Attesa",
+	"Pending User Overlay Content": "Contenuto utente in attesa",
+	"Pending User Overlay Title": "Titolo utente in attesa",
 	"Permission denied when accessing media devices": "Autorizzazione negata durante l'accesso ai dispositivi multimediali",
 	"Permission denied when accessing microphone": "Autorizzazione negata durante l'accesso al microfono",
 	"Permission denied when accessing microphone: {{error}}": "Autorizzazione negata durante l'accesso al microfono: {{error}}",
 	"Permissions": "Permessi",
 	"Perplexity API Key": "Chiave API Perplexity",
-	"Perplexity Model": "",
-	"Perplexity Search Context Usage": "",
+	"Perplexity Model": "Modello Perplexity",
+	"Perplexity Search Context Usage": "Utilizzo delcontesto della Ricerca Perplexity",
 	"Personalization": "Personalizzazione",
-	"Picture Description API Config": "",
-	"Picture Description Local Config": "",
-	"Picture Description Mode": "",
-	"Pin": "Fissa",
-	"Pinned": "Fissato",
+	"Picture Description API Config": "Descrizione immagine per la configurazione API",
+	"Picture Description Local Config": "Descrizione immagine per la configurazione locale",
+	"Picture Description Mode": "Modalità descrizione immagine",
+	"Pin": "Appunta",
+	"Pinned": "Appuntato",
 	"Pioneer insights": "Scopri nuove intuizioni",
 	"Pipeline deleted successfully": "Pipeline rimossa con successo",
 	"Pipeline downloaded successfully": "Pipeline scaricata con successo",
@@ -974,7 +975,7 @@
 	"Pipelines Valves": "Valvole per pipelines",
 	"Plain text (.md)": "Testo normale (.md)",
 	"Plain text (.txt)": "Testo normale (.txt)",
-	"Playground": "Terreno di gioco",
+	"Playground": "Playground",
 	"Playwright Timeout (ms)": "Timeout per Playwright (ms)",
 	"Playwright WebSocket URL": "URL WebSocket per Playwright",
 	"Please carefully review the following warnings:": "Si prega di esaminare attentamente i seguenti avvisi:",
@@ -1029,13 +1030,13 @@
 	"Reindex": "Reindicizza",
 	"Reindex Knowledge Base Vectors": "Reindicizza i Vettori della Base di Conoscenza",
 	"Release Notes": "Note di Rilascio",
-	"Releases": "",
+	"Releases": "Rilasci",
 	"Relevance": "Rilevanza",
 	"Relevance Threshold": "Soglia di Rilevanza",
 	"Remove": "Rimuovi",
 	"Remove {{MODELID}} from list.": "",
 	"Remove Model": "Rimuovi Modello",
-	"Remove this tag from list": "",
+	"Remove this tag from list": "Rimuovi questo tag dalla lista",
 	"Rename": "Rinomina",
 	"Reorder Models": "Riordina Modelli",
 	"Reply in Thread": "Rispondi nel thread",
@@ -1048,7 +1049,7 @@
 	"Reset view": "Ripristina visualizzazione",
 	"Response notifications cannot be activated as the website permissions have been denied. Please visit your browser settings to grant the necessary access.": "Le notifiche di risposta non possono essere attivate poiché i permessi del sito web sono stati negati. Si prega di visitare le impostazioni del browser per concedere l'accesso necessario.",
 	"Response splitting": "Divisione della risposta",
-	"Response Watermark": "",
+	"Response Watermark": "Watermark della richiesta",
 	"Result": "Risultato",
 	"Retrieval": "Recupero ricordo",
 	"Retrieval Query Generation": "Generazione di query di recupero ricordo",
@@ -1067,7 +1068,7 @@
 	"Save Tag": "Salva tag",
 	"Saved": "Salvato",
 	"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": "Il salvataggio dei registri della chat direttamente nell'archivio del browser non è più supportato. Si prega di dedicare un momento per scaricare ed eliminare i registri della chat facendo clic sul pulsante in basso. Non preoccuparti, puoi facilmente reimportare i registri della chat nel backend tramite",
-	"Scroll On Branch Change": "Scorri nel cambiamento di branch",
+	"Scroll On Branch Change": "Scorri al cambio di branch",
 	"Search": "Cerca",
 	"Search a model": "Cerca un modello",
 	"Search Base": "Cerca base",
@@ -1082,7 +1083,7 @@
 	"Search Prompts": "Cerca prompt",
 	"Search Result Count": "Conteggio dei risultati della ricerca",
 	"Search the internet": "Cerca su Internet",
-	"Search Tools": "Cerca Tool",
+	"Search Tools": "Cerca Strumenti",
 	"SearchApi API Key": "Chiave API SearchApi",
 	"SearchApi Engine": "Engine SearchApi",
 	"Searched {{count}} sites": "Cercati {{count}} siti",
@@ -1164,7 +1165,7 @@
 	"Significantly improves accuracy by using an LLM to enhance tables, forms, inline math, and layout detection. Will increase latency. Defaults to True.": "",
 	"Signing in to {{WEBUI_NAME}}": "Accedi a {{WEBUI_NAME}}",
 	"sk-1234": "sk-1234",
-	"Skip Cache": "",
+	"Skip Cache": "Salta cache",
 	"Skip the cache and re-run the inference. Defaults to False.": "",
 	"Sougou Search API sID": "sID per Songou Search API",
 	"Sougou Search API SK": "SK per Songou Search API",
@@ -1174,11 +1175,11 @@
 	"Speech-to-Text": "",
 	"Speech-to-Text Engine": "Motore da voce a testo",
 	"Stop": "Arresta",
-	"Stop Generating": "",
+	"Stop Generating": "Ferma generazione",
 	"Stop Sequence": "Sequenza di arresto",
 	"Stream Chat Response": "Stream risposta chat",
-	"Strip Existing OCR": "",
-	"Strip existing OCR text from the PDF and re-run OCR. Ignored if Force OCR is enabled. Defaults to False.": "",
+	"Strip Existing OCR": "Rimuovi OCR esistente",
+	"Strip existing OCR text from the PDF and re-run OCR. Ignored if Force OCR is enabled. Defaults to False.": "Rimuovi il testo OCR esistente dal PDF e rilancia OCR. Ignorato se Forza OCR è attivo. Predefinito a Falso",
 	"STT Model": "Modello STT",
 	"STT Settings": "Impostazioni STT",
 	"Stylized PDF Export": "Esportazione PDF Stilizzata",
@@ -1199,7 +1200,7 @@
 	"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.": "Il campionamento tail free viene utilizzato per ridurre l'impatto di token meno probabili dall'output. Un valore più alto (ad esempio, 2.0) ridurrà maggiormente l'impatto, mentre un valore di 1.0 disabilita questa impostazione.",
 	"Talk to model": "Parla al modello",
 	"Tap to interrupt": "Tocca per interrompere",
-	"Task Model": "",
+	"Task Model": "Modello Task",
 	"Tasks": "Attività",
 	"Tavily API Key": "Chiave API Tavily",
 	"Tavily Extract Depth": "Profondita' di estrazione Tavily",
@@ -1215,30 +1216,29 @@
 	"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.": "La dimensione del batch determina quanti richieste di testo vengono elaborate insieme in una sola volta. Una dimensione del batch più alta può aumentare le prestazioni e la velocità del modello, ma richiede anche più memoria.",
 	"The developers behind this plugin are passionate volunteers from the community. If you find this plugin helpful, please consider contributing to its development.": "Gli sviluppatori dietro questo plugin sono volontari appassionati della comunità. Se trovi utile questo plugin, ti preghiamo di considerare di contribuire al suo sviluppo.",
 	"The evaluation leaderboard is based on the Elo rating system and is updated in real-time.": "La classifica di valutazione è basata sul sistema di rating Elo ed è aggiornata in tempo reale.",
-	"The format to return a response in. Format can be json or a JSON schema.": "",
-	"The height in pixels to compress images to. Leave empty for no compression.": "",
-	"The language of the input audio. Supplying the input language in ISO-639-1 (e.g. en) format will improve accuracy and latency. Leave blank to automatically detect the language.": "",
+	"The format to return a response in. Format can be json or a JSON schema.": "Il formato per ritornare una risposta. Il formato può essere un JSON o uno schema JSON.",
+	"The height in pixels to compress images to. Leave empty for no compression.": "L'altezza in pixel per comprimere le immagini. Lascia vuoto per nessuna compressione.",
+	"The language of the input audio. Supplying the input language in ISO-639-1 (e.g. en) format will improve accuracy and latency. Leave blank to automatically detect the language.": "Il linguaggio degli input audio. Fornire la lingua in formato ISO-639-1 (es: en) migliorerà la accuratezza e la latenza. Lascia vuoto per per riconoscere il linguaggio in automatico.",
 	"The LDAP attribute that maps to the mail that users use to sign in.": "L'attributo LDAP che mappa alla mail che gli utenti usano per accedere.",
 	"The LDAP attribute that maps to the username that users use to sign in.": "L'attributo LDAP che mappa al nome utente che gli utenti usano per accedere.",
 	"The leaderboard is currently in beta, and we may adjust the rating calculations as we refine the algorithm.": "La classifica è attualmente in beta e potremmo regolare i calcoli dei punteggi mentre perfezioniamo l'algoritmo.",
 	"The maximum file size in MB. If the file size exceeds this limit, the file will not be uploaded.": "La dimensione massima del file in MB. Se la dimensione del file supera questo limite, il file non verrà caricato.",
 	"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.": "La dimensione massima del numero di file che possono essere utilizzati contemporaneamente nella chat. Se il numero di file supera questo limite, i file non verranno caricati.",
-	"The output format for the text. Can be 'json', 'markdown', or 'html'. Defaults to 'markdown'.": "",
+	"The output format for the text. Can be 'json', 'markdown', or 'html'. Defaults to 'markdown'.": "Il formato di output per il testo. Può essere 'json', 'markdown', o 'html'. Predefinito 'markdown'.",
 	"The score should be a value between 0.0 (0%) and 1.0 (100%).": "Il punteggio dovrebbe essere un valore compreso tra 0.0 (0%) e 1.0 (100%).",
 	"The temperature of the model. Increasing the temperature will make the model answer more creatively.": "La temperatura del modello. Aumentare la temperatura farà sì che il modello risponda in modo più creativo.",
-	"The width in pixels to compress images to. Leave empty for no compression.": "",
+	"The width in pixels to compress images to. Leave empty for no compression.": "La larghezza in pixel per comprimere le immagini. Lascia vuoto per nessuna compressione.",
 	"Theme": "Tema",
 	"Thinking...": "Sto pensando...",
 	"This action cannot be undone. Do you wish to continue?": "Questa azione non può essere annullata. Vuoi continuare?",
 	"This channel was created on {{createdAt}}. This is the very beginning of the {{channelName}} channel.": "Questo canale è stato creato il {{createdAt}}. Questo è l'inizio del canale {{channelName}}.",
 	"This chat won't appear in history and your messages will not be saved.": "Questa chat non apparirà nella cronologia e i tuoi messaggi non verranno salvati.",
-	"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.": "Questa è una funzionalità sperimentale, potrebbe non funzionare come previsto ed è soggetta a modifiche in qualsiasi momento.",
 	"This model is not publicly available. Please select another model.": "Questo modello non è disponibile pubblicamente. Seleziona un altro modello.",
-	"This option controls how long the model will stay loaded into memory following the request (default: 5m)": "",
+	"This option controls how long the model will stay loaded into memory following the request (default: 5m)": "Questa opzione controlla quanto a lungo il modello rimarrà in memoria seguendo la richiesta (predefinito: 5m)",
 	"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.": "Questa opzione controlla quanti token vengono preservati quando si aggiorna il contesto. Ad esempio, se impostato su 2, gli ultimi 2 token del contesto della conversazione verranno mantenuti. Preservare il contesto può aiutare a mantenere la continuità di una conversazione, ma potrebbe ridurre la capacità di rispondere a nuovi argomenti.",
-	"This option enables or disables the use of the reasoning feature in Ollama, which allows the model to think before generating a response. When enabled, the model can take a moment to process the conversation context and generate a more thoughtful response.": "",
+	"This option enables or disables the use of the reasoning feature in Ollama, which allows the model to think before generating a response. When enabled, the model can take a moment to process the conversation context and generate a more thoughtful response.": "Questa opzione abilita o disabilita l'utilizzo della funzionalità di ragionamento in Ollama, che consente al modello di riflettere prima di generare una risposta. Quando abilitata, il modello può impiegare un po' di tempo per elaborare il contesto della conversazione e generare una risposta più elaborata.",
 	"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.": "Questa opzione imposta il numero massimo di token che il modello può generare nella sua risposta. Aumentare questo limite consente al modello di fornire risposte più lunghe, ma potrebbe anche aumentare la probabilità che vengano generati contenuti non utili o irrilevanti.",
 	"This option will delete all existing files in the collection and replace them with newly uploaded files.": "Questa opzione eliminerà tutti i file esistenti nella collezione e li sostituirà con i file appena caricati.",
 	"This response was generated by \"{{model}}\"": "Questa risposta è stata generata da \"{{model}}\"",
@@ -1272,26 +1272,26 @@
 	"To select toolkits here, add them to the \"Tools\" workspace first.": "Per selezionare i toolkit qui, aggiungili prima allo spazio di lavoro \"Strumenti\".",
 	"Toast notifications for new updates": "Notifiche toast per nuovi aggiornamenti",
 	"Today": "Oggi",
-	"Toggle search": "",
+	"Toggle search": "Attiva/disattiva la ricerca",
 	"Toggle settings": "Attiva/disattiva impostazioni",
 	"Toggle sidebar": "Attiva/disattiva barra laterale",
-	"Toggle whether current connection is active.": "",
+	"Toggle whether current connection is active.": "Attiva/disattiva la connessione attuale quando è attiva",
 	"Token": "Token",
 	"Too verbose": "Troppo prolisso",
-	"Tool created successfully": "Tool creato con successo",
-	"Tool deleted successfully": "Tool eliminato con successo",
-	"Tool Description": "Descrizione del Tool",
-	"Tool ID": "ID Tool",
-	"Tool imported successfully": "Tool importato con successo",
-	"Tool Name": "Nome del Tool",
-	"Tool Servers": "Server dei Tool",
-	"Tool updated successfully": "Tool aggiornato con successo",
+	"Tool created successfully": "Strumento creato con successo",
+	"Tool deleted successfully": "Strumento eliminato con successo",
+	"Tool Description": "Descrizione dello Strumento",
+	"Tool ID": "ID Strumento",
+	"Tool imported successfully": "Strumento importato con successo",
+	"Tool Name": "Nome dello Strumento",
+	"Tool Servers": "Server degli Strumento",
+	"Tool updated successfully": "Strumento aggiornato con successo",
 	"Tools": "Strumenti",
-	"Tools Access": "Accesso ai Tool",
-	"Tools are a function calling system with arbitrary code execution": "I Tool sono un sistema di chiamata di funzioni con esecuzione di codice arbitrario",
-	"Tools Function Calling Prompt": "Prompt di Chiamata Funzione dei Tool",
-	"Tools have a function calling system that allows arbitrary code execution.": "I Tool hanno un sistema di chiamata di funzione che consente l'esecuzione di codice arbitrario.",
-	"Tools Public Sharing": "Condivisione Pubblica dei Tool",
+	"Tools Access": "Accesso agli Strumento",
+	"Tools are a function calling system with arbitrary code execution": "Gli strumenti sono un sistema di chiamata di funzioni con esecuzione di codice arbitrario",
+	"Tools Function Calling Prompt": "Prompt di Chiamata Funzione dei Strumenti",
+	"Tools have a function calling system that allows arbitrary code execution.": "Gli strumenti hanno un sistema di chiamata di funzione che consente l'esecuzione di codice arbitrario.",
+	"Tools Public Sharing": "Condivisione Pubblica degli strumenti",
 	"Top K": "Top K",
 	"Top K Reranker": "Reranker Top K",
 	"Transformers": "Transformer",
@@ -1301,13 +1301,13 @@
 	"TTS Settings": "Impostazioni TTS",
 	"TTS Voice": "Voce TTS",
 	"Type": "Digitare",
-	"Type Hugging Face Resolve (Download) URL": "Digita URL di Risoluzione (Downlaod) di Hugging Face",
+	"Type Hugging Face Resolve (Download) URL": "Digita URL di Risoluzione (Download) di Hugging Face",
 	"Uh-oh! There was an issue with the response.": "Oh-oh! C'è stato un problema con la risposta.",
 	"UI": "UI",
 	"Unarchive All": "Disarchivia Tutto",
 	"Unarchive All Archived Chats": "Disarchivia Tutte le Chat Archiviate",
 	"Unarchive Chat": "Disarchivia Chat",
-	"Unloads {{FROM_NOW}}": "",
+	"Unloads {{FROM_NOW}}": "Scarica {{FROM_NOW}}",
 	"Unlock mysteries": "Sblocca misteri",
 	"Unpin": "Rimuovi fissato",
 	"Unravel secrets": "Svela segreti",
@@ -1318,25 +1318,25 @@
 	"Update for the latest features and improvements.": "Aggiorna per le ultime funzionalità e miglioramenti.",
 	"Update password": "Aggiorna password",
 	"Updated": "Aggiornato",
-	"Updated at": "Aggiornato Il",
+	"Updated at": "Aggiornato il",
 	"Updated At": "Aggiornato Il",
 	"Upgrade to a licensed plan for enhanced capabilities, including custom theming and branding, and dedicated support.": "Aggiorna a un piano con licenza per funzionalità avanzate, tra cui personalizzazione del tema e branding, e supporto dedicato.",
 	"Upload": "Carica",
 	"Upload a GGUF model": "Carica un modello GGUF",
 	"Upload Audio": "Carica Audio",
-	"Upload directory": "Carica directory",
+	"Upload directory": "Carica cartella",
 	"Upload files": "Carica file",
 	"Upload Files": "Carica File",
 	"Upload Pipeline": "Carica Pipeline",
 	"Upload Progress": "Avanzamento Caricamento",
 	"URL": "URL",
 	"URL Mode": "Modalità URL",
-	"Usage": "",
+	"Usage": "Utilizzo",
 	"Use '#' in the prompt input to load and include your knowledge.": "Usa '#' nell'input del prompt per caricare e includere la tua conoscenza.",
 	"Use Gravatar": "Usa Gravatar",
 	"Use groups to group your users and assign permissions.": "Usa i gruppi per raggruppare i tuoi utenti e assegnare permessi.",
 	"Use Initials": "Usa iniziali",
-	"Use LLM": "",
+	"Use LLM": "Utilizza LLM",
 	"Use no proxy to fetch page contents.": "Usa nessun proxy per recuperare i contenuti della pagina.",
 	"Use proxy designated by http_proxy and https_proxy environment variables to fetch page contents.": "Usa il proxy designato dalle variabili di ambiente http_proxy e https_proxy per recuperare i contenuti della pagina.",
 	"user": "utente",
@@ -1363,7 +1363,7 @@
 	"Vision": "",
 	"Voice": "Voce",
 	"Voice Input": "Input vocale",
-	"Voice mode": "",
+	"Voice mode": "Modalità vocale",
 	"Warning": "Attenzione",
 	"Warning:": "Attenzione:",
 	"Warning: Enabling this will allow users to upload arbitrary code on the server.": "Attenzione: abilitando questo, gli utenti potranno caricare codice arbitrario sul server.",
@@ -1382,14 +1382,14 @@
 	"WebUI will make requests to \"{{url}}\"": "WebUI farà richieste a \"{{url}}\"",
 	"WebUI will make requests to \"{{url}}/api/chat\"": "WebUI farà richieste a \"{{url}}/api/chat\"",
 	"WebUI will make requests to \"{{url}}/chat/completions\"": "WebUI farà richieste a \"{{url}}/chat/completions\"",
-	"Weight of BM25 Retrieval": "",
+	"Weight of BM25 Retrieval": "Peso del BM25 Retrieval",
 	"What are you trying to achieve?": "Cosa stai cercando di ottenere?",
 	"What are you working on?": "Su cosa stai lavorando?",
 	"What's New in": "Novità 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.": "Quando abilitato, il modello risponderà a ciascun messaggio della chat in tempo reale, generando una risposta non appena l'utente invia un messaggio. Questa modalità è utile per le applicazioni di chat dal vivo, ma potrebbe influire sulle prestazioni su hardware più lento.",
 	"wherever you are": "Ovunque tu sia",
-	"Whether to paginate the output. Each page will be separated by a horizontal rule and page number. Defaults to False.": "",
-	"Whisper (Local)": "",
+	"Whether to paginate the output. Each page will be separated by a horizontal rule and page number. Defaults to False.": "Specifica se paginare l'output. Ogni pagina sarà separata da una riga orizzontale e dal numero di pagina. Predefinito è Falso.",
+	"Whisper (Local)": "Whisper (Locale)",
 	"Why?": "Perché?",
 	"Widescreen Mode": "Modalità widescreen",
 	"Won": "Vinto",

+ 1 - 1
src/lib/i18n/locales/ja-JP/translation.json

@@ -210,6 +210,7 @@
 	"Clone Chat": "チャットをクローン",
 	"Clone of {{TITLE}}": "{{TITLE}}のクローン",
 	"Close": "閉じる",
+	"Close Configure Connection Modal": "",
 	"Close modal": "",
 	"Close settings modal": "",
 	"Code execution": "コードの実行",
@@ -1232,7 +1233,6 @@
 	"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 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 model is not publicly available. Please select another model.": "このモデルは公開されていません。別のモデルを選択してください。",

+ 1 - 1
src/lib/i18n/locales/ka-GE/translation.json

@@ -210,6 +210,7 @@
 	"Clone Chat": "",
 	"Clone of {{TITLE}}": "",
 	"Close": "დახურვა",
+	"Close Configure Connection Modal": "",
 	"Close modal": "",
 	"Close settings modal": "",
 	"Code execution": "",
@@ -1232,7 +1233,6 @@
 	"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 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 model is not publicly available. Please select another model.": "",

+ 1 - 1
src/lib/i18n/locales/ko-KR/translation.json

@@ -210,6 +210,7 @@
 	"Clone Chat": "채팅 복제",
 	"Clone of {{TITLE}}": "{{TITLE}}의 복제본",
 	"Close": "닫기",
+	"Close Configure Connection Modal": "",
 	"Close modal": "",
 	"Close settings modal": "",
 	"Code execution": "코드 실행",
@@ -1232,7 +1233,6 @@
 	"This action cannot be undone. Do you wish to continue?": "이 action은 되돌릴 수 없습니다. 계속 하시겠습니까?",
 	"This channel was created on {{createdAt}}. This is the very beginning of the {{channelName}} channel.": "이 채널은 {{createAt}}에서 생성되었습니다. 이것은 {{channelName}} 채널의 시작입니다.",
 	"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.": "",
 	"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 model is not publicly available. Please select another model.": "이 모델은 공개적으로 사용할 수 없습니다. 다른 모델을 선택해주세요.",

+ 4 - 0
src/lib/i18n/locales/languages.json

@@ -195,6 +195,10 @@
 		"code": "ur-PK",
 		"title": "Urdu (اردو)"
 	},
+	{
+		"code": "ug-CN",
+		"title": "Uyghur (ئۇيغۇرچە)"
+	},
 	{
 		"code": "uz-Cyrl-UZ",
 		"title": "Uzbek (Cyrillic)"

+ 1 - 1
src/lib/i18n/locales/lt-LT/translation.json

@@ -210,6 +210,7 @@
 	"Clone Chat": "",
 	"Clone of {{TITLE}}": "",
 	"Close": "Uždaryti",
+	"Close Configure Connection Modal": "",
 	"Close modal": "",
 	"Close settings modal": "",
 	"Code execution": "",
@@ -1232,7 +1233,6 @@
 	"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 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 model is not publicly available. Please select another model.": "",

+ 1 - 1
src/lib/i18n/locales/ms-MY/translation.json

@@ -210,6 +210,7 @@
 	"Clone Chat": "",
 	"Clone of {{TITLE}}": "",
 	"Close": "Tutup",
+	"Close Configure Connection Modal": "",
 	"Close modal": "",
 	"Close settings modal": "",
 	"Code execution": "",
@@ -1232,7 +1233,6 @@
 	"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 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 model is not publicly available. Please select another model.": "",

+ 1 - 1
src/lib/i18n/locales/nb-NO/translation.json

@@ -210,6 +210,7 @@
 	"Clone Chat": "Klone chat",
 	"Clone of {{TITLE}}": "Klone av {{TITLE}}",
 	"Close": "Lukk",
+	"Close Configure Connection Modal": "",
 	"Close modal": "",
 	"Close settings modal": "",
 	"Code execution": "Kodekjøring",
@@ -1232,7 +1233,6 @@
 	"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 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 model is not publicly available. Please select another model.": "",

+ 14 - 14
src/lib/i18n/locales/nl-NL/translation.json

@@ -37,7 +37,7 @@
 	"Add content here": "Voeg hier content toe",
 	"Add Custom Parameter": "",
 	"Add custom prompt": "Voeg een aangepaste prompt toe",
-	"Add Files": "Voege bestanden toe",
+	"Add Files": "Voeg bestanden toe",
 	"Add Group": "Voeg groep toe",
 	"Add Memory": "Voeg geheugen toe",
 	"Add Model": "Voeg model toe",
@@ -86,7 +86,7 @@
 	"Amazing": "Geweldig",
 	"an assistant": "een assistent",
 	"Analyzed": "Geanalyseerd",
-	"Analyzing...": "Aan het analysiseren...",
+	"Analyzing...": "Aan het analyseren...",
 	"and": "en",
 	"and {{COUNT}} more": "en {{COUNT}} meer",
 	"and create a new shared link.": "en maak een nieuwe gedeelde link.",
@@ -193,7 +193,7 @@
 	"Clear memory": "Geheugen wissen",
 	"Clear Memory": "Geheugen wissen",
 	"click here": "klik hier",
-	"Click here for filter guides.": "Klik hier voor filterhulp",
+	"Click here for filter guides.": "Klik hier voor filterhulp.",
 	"Click here for help.": "Klik hier voor hulp.",
 	"Click here to": "Klik hier om",
 	"Click here to download user import template file.": "Klik hier om het sjabloonbestand voor gebruikersimport te downloaden.",
@@ -210,6 +210,7 @@
 	"Clone Chat": "Kloon chat",
 	"Clone of {{TITLE}}": "Kloon van {{TITLE}}",
 	"Close": "Sluiten",
+	"Close Configure Connection Modal": "",
 	"Close modal": "",
 	"Close settings modal": "",
 	"Code execution": "Code uitvoeren",
@@ -265,7 +266,7 @@
 	"Copy last code block": "Kopieer laatste codeblok",
 	"Copy last response": "Kopieer laatste antwoord",
 	"Copy Link": "Kopieer link",
-	"Copy to clipboard": "Kopier naar klembord",
+	"Copy to clipboard": "Kopieer naar klembord",
 	"Copying to clipboard was successful!": "Kopiëren naar klembord was succesvol!",
 	"CORS must be properly configured by the provider to allow requests from Open WebUI.": "CORS moet goed geconfigureerd zijn bij de provider om verzoeken van Open WebUI toe te staan",
 	"Create": "Aanmaken",
@@ -335,7 +336,7 @@
 	"Description": "Beschrijving",
 	"Detect Artifacts Automatically": "",
 	"Dictate": "",
-	"Didn't fully follow instructions": "Heeft niet alle instructies gevolgt",
+	"Didn't fully follow instructions": "Heeft niet alle instructies gevolgd",
 	"Direct": "Direct",
 	"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.",
@@ -605,7 +606,7 @@
 	"File removed successfully.": "Bestand succesvol verwijderd.",
 	"File size should not exceed {{maxSize}} MB.": "Bestandsgrootte mag niet groter zijn dan {{maxSize}} MB.",
 	"File Upload": "",
-	"File uploaded successfully": "Bestand succesvol upgeload",
+	"File uploaded successfully": "Bestand succesvol geüpload",
 	"Files": "Bestanden",
 	"Filter is now globally disabled": "Filter is nu globaal uitgeschakeld",
 	"Filter is now globally enabled": "Filter is nu globaal ingeschakeld",
@@ -987,7 +988,7 @@
 	"Please select a model.": "Selecteer een model",
 	"Please select a reason": "Voer een reden in",
 	"Port": "Poort",
-	"Positive attitude": "Positieve positie",
+	"Positive attitude": "Positieve houding",
 	"Prefix ID": "Voorvoegsel-ID",
 	"Prefix ID is used to avoid conflicts with other connections by adding a prefix to the model IDs - leave empty to disable": "Voorvoegsel-ID wordt gebruikt om conflicten met andere verbindingen te vermijden door een voorvoegsel aan het model-ID toe te voegen - laat leeg om uit te schakelen",
 	"Prevent file creation": "",
@@ -1230,24 +1231,23 @@
 	"Theme": "Thema",
 	"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 channel was created on {{createdAt}}. This is the very beginning of the {{channelName}} channel.": "Dit kanaal is aangemaakt op {{createdAt}}. Dit is het begin van het kanaal {{channelName}}.",
 	"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.": "",
 	"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 is an experimental feature, it may not function as expected and is subject to change at any time.": "Dit is een experimentele functie, het werkt mogelijk niet zoals verwacht en kan op elk moment worden gewijzigd.",
 	"This model is not publicly available. Please select another model.": "",
 	"This option controls how long the model will stay loaded into memory following the request (default: 5m)": "",
 	"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.",
 	"This option enables or disables the use of the reasoning feature in Ollama, which allows the model to think before generating a response. When enabled, the model can take a moment to process the conversation context and generate a more thoughtful response.": "",
-	"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.": "Deze optie stelt het maximum aantal tokens in dat het model kan genereren in zijn antwoord. Door dit limiet te verhogen, kan het model langere antwoorden geven, maar het kan ook de kans vergroten dat er onbehulpzame of irrelevante inhoud wordt gegenereerd.",
+	"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.": "Deze optie stelt het maximum aantal tokens in dat het model kan genereren in zijn antwoord. Door deze limiet te verhogen, kan het model langere antwoorden geven, maar het kan ook de kans vergroten dat er onbehulpzame of irrelevante inhoud wordt gegenereerd.",
 	"This option will delete all existing files in the collection and replace them with newly uploaded files.": "Deze optie verwijdert alle bestaande bestanden in de collectie en vervangt ze door nieuw geüploade bestanden.",
-	"This response was generated by \"{{model}}\"": "Dit antwoord is gegenereerd door  \"{{model}}\"",
+	"This response was generated by \"{{model}}\"": "Dit antwoord is gegenereerd door \"{{model}}\"",
 	"This will delete": "Dit zal verwijderen",
 	"This will delete <strong>{{NAME}}</strong> and <strong>all its contents</strong>.": "Dit zal <strong>{{NAME}}</strong> verwijderen en <strong>al zijn inhoud</strong>.",
 	"This will delete all models including custom models": "Dit zal alle modellen, ook aangepaste modellen, verwijderen",
-	"This will delete all models including custom models and cannot be undone.": "Dit zal alle modellen, ook aangepaste modellen, verwijderen en kan niet ontdaan worden",
+	"This will delete all models including custom models and cannot be undone.": "Dit zal alle modellen, ook aangepaste modellen, verwijderen en kan niet ongedaan worden gemaakt",
 	"This will reset the knowledge base and sync all files. Do you wish to continue?": "Dit zal de kennisdatabase resetten en alle bestanden synchroniseren. Wilt u doorgaan?",
-	"Thorough explanation": "Gevorderde uitleg",
+	"Thorough explanation": "Grondige uitleg",
 	"Thought for {{DURATION}}": "Dacht {{DURATION}}",
 	"Thought for {{DURATION}} seconds": "Dacht {{DURATION}} seconden",
 	"Tika": "Tika",

+ 1 - 1
src/lib/i18n/locales/pa-IN/translation.json

@@ -210,6 +210,7 @@
 	"Clone Chat": "",
 	"Clone of {{TITLE}}": "",
 	"Close": "ਬੰਦ ਕਰੋ",
+	"Close Configure Connection Modal": "",
 	"Close modal": "",
 	"Close settings modal": "",
 	"Code execution": "",
@@ -1232,7 +1233,6 @@
 	"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 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 model is not publicly available. Please select another model.": "",

+ 1 - 1
src/lib/i18n/locales/pl-PL/translation.json

@@ -210,6 +210,7 @@
 	"Clone Chat": "Sklonuj czat",
 	"Clone of {{TITLE}}": "Klon {{TITLE}}",
 	"Close": "Zamknij",
+	"Close Configure Connection Modal": "",
 	"Close modal": "",
 	"Close settings modal": "",
 	"Code execution": "Wykonanie kodu",
@@ -1232,7 +1233,6 @@
 	"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 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 model is not publicly available. Please select another model.": "",

+ 1 - 1
src/lib/i18n/locales/pt-BR/translation.json

@@ -210,6 +210,7 @@
 	"Clone Chat": "",
 	"Clone of {{TITLE}}": "",
 	"Close": "Fechar",
+	"Close Configure Connection Modal": "",
 	"Close modal": "",
 	"Close settings modal": "",
 	"Code execution": "Execução de código",
@@ -1232,7 +1233,6 @@
 	"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 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 model is not publicly available. Please select another model.": "",

+ 1 - 1
src/lib/i18n/locales/pt-PT/translation.json

@@ -210,6 +210,7 @@
 	"Clone Chat": "",
 	"Clone of {{TITLE}}": "",
 	"Close": "Fechar",
+	"Close Configure Connection Modal": "",
 	"Close modal": "",
 	"Close settings modal": "",
 	"Code execution": "",
@@ -1232,7 +1233,6 @@
 	"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 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 model is not publicly available. Please select another model.": "",

+ 48 - 48
src/lib/i18n/locales/ro-RO/translation.json

@@ -1,10 +1,10 @@
 {
-	"-1 for no limit, or a positive integer for a specific limit": "",
+	"-1 for no limit, or a positive integer for a specific limit": "-1 pentru nelimitat sau un număr întreg pozitiv pentru o limită specifică",
 	"'s', 'm', 'h', 'd', 'w' or '-1' for no expiration.": "'s', 'm', 'h', 'd', 'w' sau '-1' fără expirare.",
 	"(e.g. `sh webui.sh --api --api-auth username_password`)": "(de ex. `sh webui.sh --api --api-auth username_password`)",
 	"(e.g. `sh webui.sh --api`)": "(de ex. `sh webui.sh --api`)",
 	"(latest)": "(ultimul)",
-	"(leave blank for to use commercial endpoint)": "",
+	"(leave blank for to use commercial endpoint)": "(lăsați necompletat pentru a folosi endpoint-ul comercial)",
 	"{{ models }}": "{{ modele }}",
 	"{{COUNT}} Available Tools": "",
 	"{{COUNT}} hidden lines": "",
@@ -16,16 +16,16 @@
 	"A task model is used when performing tasks such as generating titles for chats and web search queries": "Un model de sarcină este utilizat pentru realizarea unor sarcini precum generarea de titluri pentru conversații și interogări de căutare pe web",
 	"a user": "un utilizator",
 	"About": "Despre",
-	"Accept autocomplete generation / Jump to prompt variable": "",
-	"Access": "",
-	"Access Control": "",
-	"Accessible to all users": "",
+	"Accept autocomplete generation / Jump to prompt variable": "Acceptă generarea automată / Sari la variabila promptului",
+	"Access": "Acces",
+	"Access Control": "Controlul accesului",
+	"Accessible to all users": "Accesibil pentru toți utilizatorii",
 	"Account": "Cont",
 	"Account Activation Pending": "Activarea contului în așteptare",
 	"Accurate information": "Informații precise",
 	"Actions": "Acțiuni",
-	"Activate": "",
-	"Activate this command by typing \"/{{COMMAND}}\" to chat input.": "",
+	"Activate": "Activează",
+	"Activate this command by typing \"/{{COMMAND}}\" to chat input.": "Activează această comandă tastând \"/{{COMMAND}}\" în chat.",
 	"Active Users": "Utilizatori activi",
 	"Add": "Adaugă",
 	"Add a model ID": "Adaugă un ID de model",
@@ -35,7 +35,7 @@
 	"Add Connection": "Adaugă conexiune",
 	"Add Content": "Adăugați conținut",
 	"Add content here": "Adăugați conținut aici",
-	"Add Custom Parameter": "",
+	"Add Custom Parameter": "Adaugă parametru personalizat",
 	"Add custom prompt": "Adaugă prompt personalizat",
 	"Add Files": "Adaugă fișiere",
 	"Add Group": "Adaugă grup",
@@ -55,23 +55,23 @@
 	"Admins have access to all tools at all times; users need tools assigned per model in the workspace.": "Administratorii au acces la toate instrumentele în orice moment; utilizatorii au nevoie de instrumente asignate pe model în spațiul de lucru.",
 	"Advanced Parameters": "Parametri avansați",
 	"Advanced Params": "Parametri avansați",
-	"All": "",
+	"All": "Toate",
 	"All Documents": "Toate documentele",
 	"All models deleted successfully": "Toate modelele au fost șterse cu succes",
-	"Allow Call": "",
+	"Allow Call": "Permite apelarea",
 	"Allow Chat Controls": "Permite controalele chat-ului",
 	"Allow Chat Delete": "Permite ștergerea chat-ului",
 	"Allow Chat Deletion": "Permite ștergerea conversațiilor",
 	"Allow Chat Edit": "Permite editarea chat-ului",
-	"Allow Chat Export": "",
+	"Allow Chat Export": "Permite exportul conversației",
 	"Allow Chat Share": "",
 	"Allow Chat System Prompt": "",
 	"Allow File Upload": "Permite încărcarea fișierelor",
-	"Allow Multiple Models in Chat": "",
+	"Allow Multiple Models in Chat": "Permite modele multiple în chat",
 	"Allow non-local voices": "Permite voci non-locale",
-	"Allow Speech to Text": "",
+	"Allow Speech to Text": "Permite conversia vocală în text",
 	"Allow Temporary Chat": "Permite chat temporar",
-	"Allow Text to Speech": "",
+	"Allow Text to Speech": "Permite conversia textului în voce",
 	"Allow User Location": "Permite localizarea utilizatorului",
 	"Allow Voice Interruption in Call": "Permite intreruperea vocii în apel",
 	"Allowed Endpoints": "",
@@ -90,8 +90,8 @@
 	"and": "și",
 	"and {{COUNT}} more": "și {{COUNT}} mai multe",
 	"and create a new shared link.": "și creează un nou link partajat.",
-	"Android": "",
-	"API": "",
+	"Android": "Android",
+	"API": "API",
 	"API Base URL": "URL Bază API",
 	"API details for using a vision-language model in the picture description. This parameter is mutually exclusive with picture_description_local.": "",
 	"API Key": "Cheie API",
@@ -114,7 +114,7 @@
 	"Are you sure?": "Ești sigur?",
 	"Arena Models": "Arena Models",
 	"Artifacts": "Artefacte",
-	"Ask": "",
+	"Ask": "Întreabă",
 	"Ask a question": "Pune o întrebare",
 	"Assistant": "Asistent",
 	"Attach file from knowledge": "",
@@ -124,19 +124,19 @@
 	"Audio": "Audio",
 	"August": "August",
 	"Auth": "",
-	"Authenticate": "Autentificare",
-	"Authentication": "",
+	"Authenticate": "Autentifică",
+	"Authentication": "Autentificare",
 	"Auto": "",
 	"Auto-Copy Response to Clipboard": "Copiere Automată a Răspunsului în Clipboard",
 	"Auto-playback response": "Redare automată a răspunsului",
-	"Autocomplete Generation": "",
+	"Autocomplete Generation": "Generare automată a completării",
 	"Autocomplete Generation Input Max Length": "",
 	"Automatic1111": "Automatic1111 este un proiect popular pentru interfața grafică a utilizatorului a modelelor de difuzie stabilă. Aceasta oferă o interfață web pentru a genera imagini folosind AI și este utilizată pe scară largă pentru a experimenta cu generarea de artă AI.",
 	"AUTOMATIC1111 Api Auth String": "Șir de Autentificare API AUTOMATIC1111",
 	"AUTOMATIC1111 Base URL": "URL Bază AUTOMATIC1111",
 	"AUTOMATIC1111 Base URL is required.": "Este necesar URL-ul Bază AUTOMATIC1111.",
 	"Available list": "Listă disponibilă",
-	"Available Tools": "",
+	"Available Tools": "Instrumente disponibile",
 	"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.",
@@ -189,9 +189,9 @@
 	"Chunk Size": "Dimensiune Bloc",
 	"Ciphers": "Cifruri",
 	"Citation": "Citație",
-	"Citations": "",
+	"Citations": "Citații",
 	"Clear memory": "Șterge memoria",
-	"Clear Memory": "",
+	"Clear Memory": "Golește memoria",
 	"click here": "apasă aici.",
 	"Click here for filter guides.": "Apasă aici pentru ghidul de filtrare.",
 	"Click here for help.": "Apasă aici pentru ajutor.",
@@ -210,15 +210,16 @@
 	"Clone Chat": "Clonează chat",
 	"Clone of {{TITLE}}": "",
 	"Close": "Închide",
+	"Close Configure Connection Modal": "",
 	"Close modal": "",
 	"Close settings modal": "",
 	"Code execution": "Executarea codului",
 	"Code Execution": "",
-	"Code Execution Engine": "",
-	"Code Execution Timeout": "",
+	"Code Execution Engine": "Motor de executare cod",
+	"Code Execution Timeout": "Timp limită pentru executarea codului",
 	"Code formatted successfully": "Cod formatat cu succes",
 	"Code Interpreter": "",
-	"Code Interpreter Engine": "",
+	"Code Interpreter Engine": "Motor de interpretare a codului",
 	"Code Interpreter Prompt Template": "",
 	"Collapse": "",
 	"Collection": "Colecție",
@@ -232,26 +233,26 @@
 	"Command": "Comandă",
 	"Completions": "Completări",
 	"Concurrent Requests": "Cereri Concurente",
-	"Configure": "",
+	"Configure": "Configurează",
 	"Confirm": "Confirmă",
 	"Confirm Password": "Confirmă Parola",
 	"Confirm your action": "Confirmă acțiunea ta",
 	"Confirm your new password": "",
 	"Connect to your own OpenAI compatible API endpoints.": "",
 	"Connect to your own OpenAPI compatible external tool servers.": "",
-	"Connection failed": "",
-	"Connection successful": "",
-	"Connection Type": "",
+	"Connection failed": "Conexiune eșuată",
+	"Connection successful": "Conexiune reușită",
+	"Connection Type": "Tip conexiune",
 	"Connections": "Conexiuni",
-	"Connections saved successfully": "",
+	"Connections saved successfully": "Conexiunile au fost salvate cu succes",
 	"Constrains effort on reasoning for reasoning models. Only applicable to reasoning models from specific providers that support reasoning effort.": "",
 	"Contact Admin for WebUI Access": "Contactează administratorul pentru acces WebUI",
 	"Content": "Conținut",
 	"Content Extraction Engine": "",
 	"Continue Response": "Continuă Răspunsul",
 	"Continue with {{provider}}": "Continuă cu {{provider}}",
-	"Continue with Email": "",
-	"Continue with LDAP": "",
+	"Continue with Email": "Continuă cu email",
+	"Continue with LDAP": "Continuă cu 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.": "Controlează modul în care textul mesajului este divizat pentru cererile TTS. 'Punctuation' împarte în propoziții, 'paragraphs' împarte în paragrafe, iar 'none' menține mesajul ca un șir unic.",
 	"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": "Controale",
@@ -261,24 +262,24 @@
 	"Copied shared chat URL to clipboard!": "URL-ul conversației partajate a fost copiat în clipboard!",
 	"Copied to clipboard": "Copiat în clipboard",
 	"Copy": "Copiază",
-	"Copy Formatted Text": "",
+	"Copy Formatted Text": "Copiază text formatat",
 	"Copy last code block": "Copiază ultimul bloc de cod",
 	"Copy last response": "Copiază ultimul răspuns",
 	"Copy Link": "Copiază Link",
 	"Copy to clipboard": "Copiază în clipboard",
 	"Copying to clipboard was successful!": "Copierea în clipboard a fost realizată cu succes!",
 	"CORS must be properly configured by the provider to allow requests from Open WebUI.": "",
-	"Create": "",
+	"Create": "Creează",
 	"Create a knowledge base": "",
 	"Create a model": "Creează un model",
 	"Create Account": "Creează Cont",
 	"Create Admin Account": "",
-	"Create Channel": "",
-	"Create Group": "",
+	"Create Channel": "Creează canal",
+	"Create Group": "Creează grup",
 	"Create Knowledge": "Creează cunoștințe",
 	"Create new key": "Creează cheie nouă",
 	"Create new secret key": "Creează cheie secretă nouă",
-	"Create Note": "",
+	"Create Note": "Creează notiță",
 	"Create your first note by clicking on the plus button below.": "",
 	"Created at": "Creat la",
 	"Created At": "Creat La",
@@ -303,8 +304,8 @@
 	"Default Model": "Model Implicit",
 	"Default model updated": "Modelul implicit a fost actualizat",
 	"Default Models": "",
-	"Default permissions": "",
-	"Default permissions updated successfully": "",
+	"Default permissions": "Permisiuni implicite",
+	"Default permissions updated successfully": "Permisiunile implicite au fost actualizate cu succes",
 	"Default Prompt Suggestions": "Sugestii de Prompt Implicite",
 	"Default to 389 or 636 if TLS is enabled": "",
 	"Default to ALL": "",
@@ -313,22 +314,22 @@
 	"Delete": "Șterge",
 	"Delete a model": "Șterge un model",
 	"Delete All Chats": "Șterge Toate Conversațiile",
-	"Delete All Models": "",
+	"Delete All Models": "Șterge toate modelele",
 	"Delete chat": "Șterge conversația",
 	"Delete Chat": "Șterge Conversația",
 	"Delete chat?": "Șterge conversația?",
 	"Delete folder?": "Ștergeți folderul?",
 	"Delete function?": "Șterge funcția?",
-	"Delete Message": "",
-	"Delete message?": "",
-	"Delete note?": "",
+	"Delete Message": "Șterge mesajul",
+	"Delete message?": "Ștergeți mesajul?",
+	"Delete note?": "Ștergeți notița?",
 	"Delete prompt?": "Șterge promptul?",
 	"delete this link": "șterge acest link",
 	"Delete tool?": "Șterge instrumentul?",
 	"Delete User": "Șterge Utilizatorul",
 	"Deleted {{deleteModelTag}}": "{{deleteModelTag}} șters",
 	"Deleted {{name}}": "{{name}} șters",
-	"Deleted User": "",
+	"Deleted User": "Utilizator șters",
 	"Deployment names are required for Azure OpenAI": "",
 	"Describe Pictures in Documents": "",
 	"Describe your knowledge base and objectives": "",
@@ -358,7 +359,7 @@
 	"Display": "",
 	"Display Emoji in Call": "Afișează Emoji în Apel",
 	"Display the username instead of You in the Chat": "Afișează numele utilizatorului în loc de Tu în Conversație",
-	"Displays citations in the response": "",
+	"Displays citations in the response": "Afișează citațiile în răspuns",
 	"Dive into knowledge": "",
 	"Do not install functions from sources you do not fully trust.": "Nu instalați funcții din surse în care nu aveți încredere completă.",
 	"Do not install tools from sources you do not fully trust.": "Nu instalați instrumente din surse în care nu aveți încredere completă.",
@@ -1232,7 +1233,6 @@
 	"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 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 model is not publicly available. Please select another model.": "",

+ 1 - 1
src/lib/i18n/locales/ru-RU/translation.json

@@ -210,6 +210,7 @@
 	"Clone Chat": "Клонировать чат",
 	"Clone of {{TITLE}}": "Клон {{TITLE}}",
 	"Close": "Закрыть",
+	"Close Configure Connection Modal": "",
 	"Close modal": "Закрыть окно",
 	"Close settings modal": "Закрыть окно настроек",
 	"Code execution": "Исполнение кода",
@@ -1232,7 +1233,6 @@
 	"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 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 model is not publicly available. Please select another model.": "Эта модель недоступна в открытом доступе. Пожалуйста, выберите другую модель.",

+ 1 - 1
src/lib/i18n/locales/sk-SK/translation.json

@@ -210,6 +210,7 @@
 	"Clone Chat": "",
 	"Clone of {{TITLE}}": "",
 	"Close": "Zavrieť",
+	"Close Configure Connection Modal": "",
 	"Close modal": "",
 	"Close settings modal": "",
 	"Code execution": "Vykonávanie kódu",
@@ -1232,7 +1233,6 @@
 	"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 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 model is not publicly available. Please select another model.": "",

+ 1 - 1
src/lib/i18n/locales/sr-RS/translation.json

@@ -210,6 +210,7 @@
 	"Clone Chat": "Клонирај ћаскање",
 	"Clone of {{TITLE}}": "",
 	"Close": "Затвори",
+	"Close Configure Connection Modal": "",
 	"Close modal": "",
 	"Close settings modal": "",
 	"Code execution": "Извршавање кода",
@@ -1232,7 +1233,6 @@
 	"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 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 model is not publicly available. Please select another model.": "",

File diff suppressed because it is too large
+ 708 - 707
src/lib/i18n/locales/sv-SE/translation.json


+ 1 - 1
src/lib/i18n/locales/th-TH/translation.json

@@ -210,6 +210,7 @@
 	"Clone Chat": "",
 	"Clone of {{TITLE}}": "",
 	"Close": "ปิด",
+	"Close Configure Connection Modal": "",
 	"Close modal": "",
 	"Close settings modal": "",
 	"Code execution": "",
@@ -1232,7 +1233,6 @@
 	"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 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 model is not publicly available. Please select another model.": "",

+ 1 - 1
src/lib/i18n/locales/tk-TM/translation.json

@@ -210,6 +210,7 @@
 	"Clone Chat": "",
 	"Clone of {{TITLE}}": "",
 	"Close": "Ýap",
+	"Close Configure Connection Modal": "",
 	"Close modal": "",
 	"Close settings modal": "",
 	"Code execution": "",
@@ -1232,7 +1233,6 @@
 	"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 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 model is not publicly available. Please select another model.": "",

+ 1 - 1
src/lib/i18n/locales/tr-TR/translation.json

@@ -210,6 +210,7 @@
 	"Clone Chat": "Sohbeti Klonla",
 	"Clone of {{TITLE}}": "{{TITLE}}'ın kopyası",
 	"Close": "Kapat",
+	"Close Configure Connection Modal": "",
 	"Close modal": "",
 	"Close settings modal": "",
 	"Code execution": "Kod yürütme",
@@ -1232,7 +1233,6 @@
 	"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 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 model is not publicly available. Please select another model.": "",

+ 1422 - 0
src/lib/i18n/locales/ug-CN/translation.json

@@ -0,0 +1,1422 @@
+{
+	"-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)": "(ئەڭ يېڭىسى)",
+	"(leave blank for to use commercial endpoint)": "(تجارەتلىك ئۇلانمىنى ئىشلىتىش ئۈچۈن بوش قالدۇرۇڭ)",
+	"{{ models }}": "{{ models }}",
+	"{{COUNT}} Available Tools": "{{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(لىرى) زۆرۈر",
+	"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 Parameter": "ئۆزلۈك پارامېتىر قوشۇش",
+	"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 Call": "چاقىرىشقا ئىجازەت",
+	"Allow Chat Controls": "سۆھبەت باشقۇرۇشقا ئىجازەت",
+	"Allow Chat Delete": "سۆھبەت ئۆچۈرۈشكى ئىجازەت",
+	"Allow Chat Deletion": "سۆھبەت ئۆچۈرۈشكە ئىجازەت",
+	"Allow Chat Edit": "سۆھبەت تەھرىرلەشكە ئىجازەت",
+	"Allow Chat Export": "سۆھبەت چىقىرىشقا ئىجازەت",
+	"Allow Chat Share": "سۆھبەت ھەمبەھىرلىشكە ئىجازەت",
+	"Allow Chat System Prompt": "پاراڭ سىستېمىسى تۈرتكەسىگە ئىجازەت",
+	"Allow File Upload": "ھۆججەت چىقىرىشقا ئىجازەت",
+	"Allow Multiple Models in Chat": "سۆھبەتتە بىر قانچە مودېل ئىشلىتىشكە ئىجازەت",
+	"Allow non-local voices": "يەرلىك بولمىغان ئاۋازلارغا ئىجازەت",
+	"Allow Speech to Text": "ئاۋازنى تېكستكە ئايلاندۇرۇشقا ئىجازەت",
+	"Allow Temporary Chat": "ۋاقىتلىق سۆھبەتكە ئىجازەت",
+	"Allow Text to Speech": "تېكستنى ئاۋازغا ئايلاندۇرۇشقا ئىجازەت",
+	"Allow User Location": "ئىشلەتكۈچى ئورنىنى كۆرسىتىشكە ئىجازەت",
+	"Allow Voice Interruption in Call": "چاقىرىشتا ئاۋاز دەخلى قىلىشقا ئىجازەت",
+	"Allowed Endpoints": "ئىجازەتلىك ئۇلانمىلار",
+	"Allowed File Extensions": "ئىجازەتلىك ھۆججەت كېڭەيتىلمىلىرى",
+	"Allowed file extensions for upload. Separate multiple extensions with commas. Leave empty for all file types.": "يۈكلەشكە بولىدىغان ھۆججەت كېڭەيتىلمىسى. بىر نەچچىسى بولسا پەش بىلەن ئايرىڭ. بارلىق تىپقا ئىجازەت بولسا بوش قالدۇرۇڭ.",
+	"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": "تەپسىلاتلارنى دائىم كېڭەيت",
+	"Always Play Notification Sound": "ئۇقتۇرۇش ئاۋازىنى ھەمىشە قوي",
+	"Amazing": "ئاجايىپ",
+	"an assistant": "ياردەمچى",
+	"Analyzed": "تەھلىل قىلىندى",
+	"Analyzing...": "تەھلىل قىلىنىۋاتىدۇ...",
+	"and": "ۋە",
+	"and {{COUNT}} more": "ۋە يەنە {{COUNT}}",
+	"and create a new shared link.": "يېڭى ھەمبەھىرلەنگەن ئۇلانما قۇرۇڭ.",
+	"Android": "Android",
+	"API": "API",
+	"API Base URL": "API ئاساسىي URL",
+	"API details for using a vision-language model in the picture description. This parameter is mutually exclusive with picture_description_local.": "رەسىم تەسۋىرىدە كۆرۈش تىلى مودېلىنى ئىشلىتىشنىڭ API تەپسىلاتلىرى. بۇ پارامېتىر image_description_local بىلەن ئۆز-ئارا مۇناسىۋەتسىز.",
+	"API Key": "API ئاچقۇچى",
+	"API Key created.": "API ئاچقۇچى قۇرۇلدى.",
+	"API Key Endpoint Restrictions": "API ئاچقۇچى ئۇلانما چەكلىمەسى",
+	"API keys": "API ئاچقۇچلىرى",
+	"API Version": "API نەشرى",
+	"Application DN": "قوللىنىشچان DN",
+	"Application DN Password": "قوللىنىشچان 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": "ئىشلەتكۈچى ئىسمى\u00a0 خاسلىقى",
+	"Audio": "ئاۋاز",
+	"August": "ئاۋغۇست",
+	"Auth": "تەستىقلاش",
+	"Authenticate": "دەلىللەش",
+	"Authentication": "كىرىش دەلىللەش",
+	"Auto": "ئاپتوماتىك",
+	"Auto-Copy Response to Clipboard": "ئىنكاسنى ئۆزلۈكىدىن چاپلاش تاختىسىغا كۆچۈرۈش",
+	"Auto-playback response": "ئاپتۇماتىك قۇيۇش ئىنكاسى",
+	"Autocomplete Generation": "ئاپتوماتىك تولدۇرۇش",
+	"Autocomplete Generation Input Max Length": "ئاپتوماتىك تولدۇرۇش كىرگۈزۈش ئەڭ چوڭ ئۇزۇنلۇقى",
+	"Automatic1111": "Automatic1111",
+	"AUTOMATIC1111 Api Auth String": "AUTOMATIC1111 API دەلىللەش ھەرپ تىزىقى",
+	"AUTOMATIC1111 Base URL": "AUTOMATIC1111 ئاساسىي URL",
+	"AUTOMATIC1111 Base URL is required.": "AUTOMATIC1111 ئاساسىي URL زۆرۈر.",
+	"Available list": "بار تىزىملىك",
+	"Available Tools": "بار قوراللار",
+	"available!": "بار!",
+	"Awful": "ناچار",
+	"Azure AI Speech": "Azure AI ئاۋاز",
+	"Azure Region": "Azure رايونى",
+	"Back": "قايتىش",
+	"Bad Response": "خاتا ئىنكاس",
+	"Banners": "لوزۇنكىلار",
+	"Base Model (From)": "ئاساسىي مودېل (مەنبە)",
+	"before": "بۇرۇن",
+	"Being lazy": "ھورۇن بۇلۇش",
+	"Beta": "بەتا",
+	"Bing Search V7 Endpoint": "Bing Search V7 ئۇلانمىسى",
+	"Bing Search V7 Subscription Key": "Bing Search V7 ئەزا ئاچقۇچى",
+	"Bocha Search API Key": "Bocha ئىزدەش API ئاچقۇچى",
+	"Boosting or penalizing specific tokens for constrained responses. Bias values will be clamped between -100 and 100 (inclusive). (Default: none)": "چەكلەنگەن ئىنكاسلار ئۈچۈن بەلگىلىك سۆزلەرگە ئالاھىدە ئۈنۈم قوشۇش ياكى جازالاش. ئېغىش قىممىتى 100- دىن 100 گىچە بولىدۇ (كۆرسىتىلگەن قىممەت). (كۆڭۈلدىكى: يوق)",
+	"Both Docling OCR Engine and Language(s) must be provided or both left empty.": "Docling OCR ماتورى ۋە تىل(لار) تەمىنلىنىشى ياكى ئىككىلىسىمۇ بوش قالدۇرۇلۇشى كېرەك.",
+	"Brave Search API Key": "Brave ئىزدەش API ئاچقۇچى",
+	"By {{name}}": "{{name}} تەرىپىدىن",
+	"Bypass Embedding and Retrieval": "كىرگۈزۈش ۋە قايتۇرۇشتىن ئۆتۈپ كېتىش",
+	"Bypass Web Loader": "تور يۈكلىگۈچتىن ئۆتۈپ كېتىش",
+	"Calendar": "كالىندار",
+	"Call": "چاقىرىش",
+	"Call feature is not supported when using Web STT engine": "تور STT ماتورى ئىشلىتىلگەندە چاقىرىش ئىقتىدارى قوللىنىلمايدۇ",
+	"Camera": "كامېرا",
+	"Cancel": "بىكار قىلىش",
+	"Capabilities": "ئىقتىدارلار",
+	"Capture": "رەسىم تارتقۇزۇش",
+	"Capture Audio": "ئاۋاز تارتقۇزۇش",
+	"Certificate Path": "كىنىشكا يولى",
+	"Change Password": "پارول ئۆزگەرتىش",
+	"Channel Name": "قانال ئاتى",
+	"Channels": "قاناللار",
+	"Character": "ھەرپ",
+	"Character limit for autocomplete generation input": "ئاپتوماتىك تولدۇرۇش كىرگۈزۈشنىڭ ھەرپ چەكى",
+	"Chart new frontiers": "يېڭى چېگرىلارنى پىلانلاش",
+	"Chat": "سۆھبەت",
+	"Chat Background Image": "سۆھبەت ئارقا كۆرۈنۈش رەسىمى",
+	"Chat Bubble 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": "نەقىل",
+	"Citations": "نەقىللەر",
+	"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": "يېپىش",
+	"Close Configure Connection Modal": "",
+	"Close modal": "مودالنى يېپىش",
+	"Close settings modal": "تەڭشەك مودالىنى يېپىش",
+	"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 ماس كېلىدىغان سىرتقى قورال مۇلازىمېتىرلىرىغا باغلىنىڭ.",
+	"Connection failed": "ئۇلىنىش مەغلۇپ بولدى",
+	"Connection successful": "ئۇلىنىش مۇۋەپپەقىيەتلىك",
+	"Connection Type": "ئۇلىنىش تىپى",
+	"Connections": "ئۇلىنىشلەر",
+	"Connections saved successfully": "ئۇلىنىشلەر مۇۋەپپەقىيەتلىك ساقلاندى",
+	"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": "مەزمۇن چىقىرىش ماتورى",
+	"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 تەلىپى ئۈچۈن ئۇچۇرنى قانداق بۆلۈشنى باشقۇرۇڭ. 'Punctuation' جۈملىلەرگە، 'paragraphs' پاراگرافلارغا، 'none' بولسا يەككە جۈملە.",
+	"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 link to clipboard": "ئۇلانما چاپلاش تاختىسىغا كۆچۈرۈلدى",
+	"Copied shared chat URL to clipboard!": "ھەمبەھىرلەنگەن سۆھبەت URL كۆچۈرۈلدى!",
+	"Copied to clipboard": "چاپلاش تاختىسىغا كۆچۈرۈلدى",
+	"Copy": "كۆچۈرۈش",
+	"Copy Formatted Text": "فورماتلانغان تېكستنى كۆچۈرۈش",
+	"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": "يېڭى مەخپىي ئاچقۇچ قۇرۇش",
+	"Create Note": "خاتىرە قۇرۇش",
+	"Create your first note by clicking on the plus button below.": "تۆۋەندىكى قوشۇش كۇنۇپكىسىنى چېكىپ بىرىنچى خاتىرىڭىزنى قۇرۇڭ.",
+	"Created at": "قۇرۇلغان ۋاقتى",
+	"Created At": "قۇرۇلغان ۋاقتى",
+	"Created by": "قۇرغۇچى",
+	"CSV Import": "CSV ئىمپورت",
+	"Ctrl+Enter to Send": "Ctrl+Enter يوللاش",
+	"Current Model": "نۆۋەتتىكى مودېل",
+	"Current Password": "ھازىرقى پارول",
+	"Custom": "ئۆزلۈك",
+	"Custom Parameter Name": "ئۆزلۈك پارامېتىر نامى",
+	"Custom Parameter Value": "ئۆزلۈك پارامېتىر قىممىتى",
+	"Danger Zone": "خەۋپلىك رايون",
+	"Dark": "قاراڭغۇ",
+	"Database": "ساندان",
+	"Datalab Marker API": "Datalab Marker API",
+	"Datalab Marker API Key required.": "Datalab Marker API ئاچقۇچى زۆرۈر.",
+	"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 قوزغىتىلسا كۆڭۈلدىكى 389 ياكى 636 بولىدۇ",
+	"Default to ALL": "كۆڭۈلدىكى 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 note?": "خاتىرە ئۆچۈرەمسىز؟",
+	"Delete prompt?": "تۈرتكە ئۆچۈرەمسىز؟",
+	"delete this link": "بۇ ئۇلانما ئۆچۈرۈش",
+	"Delete tool?": "قورال ئۆچۈرەمسىز؟",
+	"Delete User": "ئىشلەتكۈچى ئۆچۈرۈش",
+	"Deleted {{deleteModelTag}}": "{{deleteModelTag}} ئۆچۈرۈلدى",
+	"Deleted {{name}}": "{{name}} ئۆچۈرۈلدى",
+	"Deleted User": "ئۆچۈرۈلگەن ئىشلەتكۈچى",
+	"Deployment names are required for Azure OpenAI": "Azure OpenAI ئۈچۈن ئورۇنلاشتۇرۇش ئىسمى زۆرۈر ",
+	"Describe Pictures in Documents": "ھۆججەتتىكى رەسىملەرنى چۈشەندۈرۈش",
+	"Describe your knowledge base and objectives": "بىلىم ئاساسى ۋە نىشانلىرىڭىزنى چۈشەندۈرۈڭ",
+	"Description": "چۈشەندۈرۈش",
+	"Detect Artifacts Automatically": "ئۇزۇقلارنى ئاپتوماتىك بايقايدۇ",
+	"Dictate": "سۆزلەش",
+	"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": "بىۋاسىتە ئۇلىنىش تەڭشەكلىرى يېڭىلاندى",
+	"Direct Tool Servers": "بىۋاسىتە قورال مۇلازىمېتىرلىرى",
+	"Disable Image Extraction": "رەسىم چىقىرىشنى چەكلە",
+	"Disable image extraction from the PDF. If Use LLM is enabled, images will be automatically captioned. Defaults to False.": "PDF دىن رەسىم چىقىرىش چەكلىنىدۇ. LLM ئىشلىتىلسە، رەسىملەر ئاپتوماتىك تېمىغا ئىگە بولىدۇ. كۆڭۈلدىكىچە چەكلەنمەيدۇ.",
+	"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": "چاقىرىشتا ئېموجىنى كۆرسىتىش",
+	"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 upload": "ھەر قانداق ھۆججەتنى بۇ يەرگە قويۇپ يۈكلەڭ",
+	"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 قېلىپى",
+	"e.g. 60": "مەسىلەن: 60",
+	"e.g. A filter to remove profanity from text": "مەسىلەن: تېكستتىن يامان سۆزلەرنى چىقىرىدىغان سۈزگۈچ",
+	"e.g. en": "مەسىلەن: en",
+	"e.g. My Filter": "مەسىلەن: My Filter",
+	"e.g. My Tools": "مەسىلەن: My Tools",
+	"e.g. my_filter": "مەسىلەن: my_filter",
+	"e.g. my_tools": "مەسىلەن: my_tools",
+	"e.g. pdf, docx, txt": "مەسىلەن: pdf, docx, txt",
+	"e.g. Tools for performing various operations": "مەسىلەن: ھەر خىل مەشغۇلات قوراللىرى",
+	"e.g., 3, 4, 5 (leave blank for default)": "مەسىلەن: 3، 4، 5 (كۆڭۈلدىكى ئۈچۈن بوش قالدۇرۇڭ)",
+	"e.g., audio/wav,audio/mpeg (leave blank for defaults)": "مەسىلەن: audio/wav, audio/mpeg (كۆڭۈلدىكى ئۈچۈن بوش قالدۇرۇڭ)",
+	"e.g., en-US,ja-JP (leave blank for auto-detect)": "مەسىلەن: en-US, ja-JP (ئاپتوماتىك بايقىتىش ئۈچۈن بوش قالدۇرۇڭ)",
+	"e.g., westus (leave blank for eastus)": "مەسىلەن: westus (eastus ئۈچۈن بوش قالدۇرۇڭ)",
+	"e.g.) en,fr,de": "مەسىلەن: en,fr,de",
+	"Edit": "تەھرىرلەش",
+	"Edit Arena Model": "Arena مودېل تەھرىرلەش",
+	"Edit Channel": "قانال تەھرىرلەش",
+	"Edit Connection": "ئۇلىنىش تەھرىرلەش",
+	"Edit Default Permissions": "كۆڭۈلدىكى ھوقۇقلارنى تەھرىرلەش",
+	"Edit Memory": "ئەسلەتمە تەھرىرلەش",
+	"Edit User": "ئىشلەتكۈچى تەھرىرلەش",
+	"Edit User Group": "ئىشلەتكۈچى گۇرۇپپىسى تەھرىرلەش",
+	"Eject": "چىقىرىش",
+	"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.": "ئىچكى ساقلىغۇچ قۇلۇپلاش (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.": "مودېل سانلىق مەلۇماتىنى يۈكلەش ئۈچۈن Memory Mapping (mmap) قوزغىتىڭ. بۇ تاللاش دىسكىنى RAM غا ئوخشاش ئىشلىتىش ئارقىلىق تېز سانلىق مەلۇمات زىيارىتىنى تەمىنلەيدۇ. ئەمما بارلىق سىستېمىلاردا مۇۋاپىق كەلمەسلىكى ۋە كۆپ دىسكا بوشلۇقى ئىشلىتىشى مۇمكىن.",
+	"Enable Message Rating": "ئۇچۇر باھالاشنى قوزغىتىش",
+	"Enable Mirostat sampling for controlling perplexity.": "Perplexity نى باشقۇرۇش ئۈچۈن Mirostat ئەۋرىشىلىگۈچنى قوزغىتىش",
+	"Enable New Sign Ups": "يېڭى تىزىملىتىشنى قوزغىتىش",
+	"Enabled": "قوزغىتىلغان",
+	"Endpoint URL": "ئۇلانما URL",
+	"Enforce Temporary Chat": "ۋاقىتلىق سۆھبەتنى مەجبۇرىي قىلىش",
+	"Enhance": "ياخشىلا",
+	"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": "LLM ىڭىزنىڭ سىزنى ئېسىدە ساقلاش ئۈچۈن ئۆزىڭىز ھەققىدە بىر ئۇچۇر كىرگۈزۈڭ",
+	"Enter a title for the pending user info overlay. Leave empty for default.": "كۈتۈۋاتقان ئىشلەتكۈچى ئۇچۇر قاپلىمىسى ئۈچۈن تېما كىرگۈزۈڭ. كۆڭۈلدىكى ئۈچۈن بوش قالدۇرۇڭ.",
+	"Enter a watermark for the response. Leave empty for none.": "ئىنكاس ئۈچۈن سۇ بەلگىسى كىرگۈزۈڭ. يوق بولسا بوش قالدۇرۇڭ.",
+	"Enter api auth string (e.g. username:password)": "API دەلىللەش ھەرپ تىزىقى كىرگۈزۈڭ (مەسىلەن: username:password)",
+	"Enter Application DN": "قوللىنىشچان DN كىرگۈزۈڭ",
+	"Enter Application DN Password": "قوللىنىشچان DN پارولى كىرگۈزۈڭ",
+	"Enter Bing Search V7 Endpoint": "Bing Search V7 ئۇلانما كىرگۈزۈڭ",
+	"Enter Bing Search V7 Subscription Key": "Bing Search V7 ئەزا ئاچقۇچى كىرگۈزۈڭ",
+	"Enter BM25 Weight": "BM25 ئېغىرلىقى كىرگۈزۈڭ",
+	"Enter Bocha Search API Key": "Bocha ئىزدەش API ئاچقۇچى كىرگۈزۈڭ",
+	"Enter Brave Search API Key": "Brave ئىزدەش API ئاچقۇچى كىرگۈزۈڭ",
+	"Enter certificate path": "سىرتىفىكات يولى كىرگۈزۈڭ",
+	"Enter CFG Scale (e.g. 7.0)": "CFG ئامىل كىرگۈزۈڭ (مەسىلەن: 7.0)",
+	"Enter Chunk Overlap": "پارچە قاپلىنىشى كىرگۈزۈڭ",
+	"Enter Chunk Size": "پارچە چوڭلۇقى كىرگۈزۈڭ",
+	"Enter comma-separated \"token:bias_value\" pairs (example: 5432:100, 413:-100)": "پۈتتۈر بىلەن ئايرىلغان \"token:bias_value\" جۈپىنى كىرگۈزۈڭ (مەسىلەن: 5432:100, 413:-100)",
+	"Enter Config in JSON format": "JSON قېلىپىدا تەڭشەك كىرگۈزۈڭ",
+	"Enter content for the pending user info overlay. Leave empty for default.": "كۈتۈۋاتقان ئىشلەتكۈچى ئۇچۇر قاپلىمىسى ئۈچۈن مەزمۇن كىرگۈزۈڭ. كۆڭۈلدىكى ئۈچۈن بوش قالدۇرۇڭ.",
+	"Enter Datalab Marker API Key": "Datalab Marker API ئاچقۇچى كىرگۈزۈڭ",
+	"Enter description": "چۈشەندۈرۈش كىرگۈزۈڭ",
+	"Enter Docling OCR Engine": "Docling OCR ماتورى كىرگۈزۈڭ",
+	"Enter Docling OCR Language(s)": "Docling OCR تىلى(لىرى) كىرگۈزۈڭ",
+	"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 External Document Loader API Key": "سىرتقى ھۆججەت يۈكلىگۈچ API ئاچقۇچى كىرگۈزۈڭ",
+	"Enter External Document Loader URL": "سىرتقى ھۆججەت يۈكلىگۈچ URL كىرگۈزۈڭ",
+	"Enter External Web Loader API Key": "سىرتقى تور يۈكلىگۈچ API ئاچقۇچى كىرگۈزۈڭ",
+	"Enter External Web Loader URL": "سىرتقى تور يۈكلىگۈچ URL كىرگۈزۈڭ",
+	"Enter External Web Search API Key": "سىرتقى تور ئىزدەش API ئاچقۇچى كىرگۈزۈڭ",
+	"Enter External Web Search URL": "سىرتقى تور ئىزدەش URL كىرگۈزۈڭ",
+	"Enter Firecrawl API Base URL": "Firecrawl API ئاساسىي URL كىرگۈزۈڭ",
+	"Enter Firecrawl API Key": "Firecrawl API ئاچقۇچى كىرگۈزۈڭ",
+	"Enter Github Raw URL": "Github Raw URL كىرگۈزۈڭ",
+	"Enter Google PSE API Key": "Google PSE API ئاچقۇچى كىرگۈزۈڭ",
+	"Enter Google PSE Engine Id": "Google PSE ماتور 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 ئىزدەش API ئاچقۇچى كىرگۈزۈڭ",
+	"Enter Key Behavior": "ئاچقۇچ ئىشلىتىش ئۇسۇلى كىرگۈزۈڭ",
+	"Enter language codes": "تىل كودلىرى كىرگۈزۈڭ",
+	"Enter Mistral API Key": "Mistral API ئاچقۇچى كىرگۈزۈڭ",
+	"Enter Model ID": "مودېل ID كىرگۈزۈڭ",
+	"Enter model tag (e.g. {{modelTag}})": "مودېل تەغى كىرگۈزۈڭ (مەسىلەن: {{modelTag}})",
+	"Enter Mojeek Search API Key": "Mojeek ئىزدەش API ئاچقۇچى كىرگۈزۈڭ",
+	"Enter name": "ئات كىرگۈزۈڭ",
+	"Enter New Password": "يېڭى پارول كىرگۈزۈڭ",
+	"Enter Number of Steps (e.g. 50)": "قەدەملەر سانى كىرگۈزۈڭ (مەسىلەن: 50)",
+	"Enter Perplexity API Key": "Perplexity API ئاچقۇچى كىرگۈزۈڭ",
+	"Enter Playwright Timeout": "Playwright ۋاقىت چەكلىمىسى كىرگۈزۈڭ",
+	"Enter Playwright WebSocket URL": "Playwright WebSocket URL كىرگۈزۈڭ",
+	"Enter proxy URL (e.g. https://user:password@host:port)": "ۋاكالەتچى URL كىرگۈزۈڭ (مەسىلەن: https://user:password@host:port)",
+	"Enter reasoning effort": "چۈشەندۈرۈش كۈچى كىرگۈزۈڭ",
+	"Enter Sampler (e.g. Euler a)": "سانايدىغان ئاپپارات كىرگۈزۈڭ (مەسىلەن: Euler a)",
+	"Enter Scheduler (e.g. Karras)": "ۋاقىتلاشتۇرغۇچ كىرگۈزۈڭ (مەسىلەن: Karras)",
+	"Enter Score": "باھا كىرگۈزۈڭ",
+	"Enter SearchApi API Key": "SearchApi API ئاچقۇچى كىرگۈزۈڭ",
+	"Enter SearchApi Engine": "SearchApi ماتورى كىرگۈزۈڭ",
+	"Enter Searxng Query URL": "Searxng ئىزدەش URL كىرگۈزۈڭ",
+	"Enter Seed": "ئۇرۇق كىرگۈزۈڭ",
+	"Enter SerpApi API Key": "SerpApi API ئاچقۇچى كىرگۈزۈڭ",
+	"Enter SerpApi Engine": "SerpApi ماتورى كىرگۈزۈڭ",
+	"Enter Serper API Key": "Serper API ئاچقۇچى كىرگۈزۈڭ",
+	"Enter Serply API Key": "Serply API ئاچقۇچى كىرگۈزۈڭ",
+	"Enter Serpstack API Key": "Serpstack API ئاچقۇچى كىرگۈزۈڭ",
+	"Enter server host": "مۇلازىمېتىر ئادرېسى كىرگۈزۈڭ",
+	"Enter server label": "مۇلازىمېتىر بەلگىسى كىرگۈزۈڭ",
+	"Enter server port": "مۇلازىمېتىر ئېغىزى كىرگۈزۈڭ",
+	"Enter Sougou Search API sID": "Sougou ئىزدەش API sID كىرگۈزۈڭ",
+	"Enter Sougou Search API SK": "Sougou ئىزدەش API SK كىرگۈزۈڭ",
+	"Enter stop sequence": "توختاش تىزىقى كىرگۈزۈڭ",
+	"Enter system prompt": "سىستېما تۈرتكەسى كىرگۈزۈڭ",
+	"Enter system prompt here": "سىستېما تۈرتكەسىنى بۇ يەرگە كىرگۈزۈڭ",
+	"Enter Tavily API Key": "Tavily API ئاچقۇچى كىرگۈزۈڭ",
+	"Enter Tavily Extract Depth": "Tavily چىقىرىش چوڭقۇرلۇقى كىرگۈزۈڭ",
+	"Enter the public URL of your WebUI. This URL will be used to generate links in the notifications.": "WebUI نىڭ ئاممىۋى URL نى كىرگۈزۈڭ. بۇ URL ئۇقتۇرۇشتىكى ئۇلانما قۇرۇشقا ئىشلىتىلىدۇ.",
+	"Enter the URL of the function to import": "ئىمپورت قىلىدىغان فۇنكسىيەنىڭ URL كىرگۈزۈڭ",
+	"Enter the URL to import": "ئىمپورت قىلىدىغان URL كىرگۈزۈڭ",
+	"Enter Tika Server URL": "Tika مۇلازىمېتىر URL كىرگۈزۈڭ",
+	"Enter timeout in seconds": "ۋاقىت چەكلىمىسى كىرگۈزۈڭ (سېكۇنت)",
+	"Enter to Send": "يوللاش ئۈچۈن Enter ئاساسىڭ",
+	"Enter Top K": "Top K كىرگۈزۈڭ",
+	"Enter Top K Reranker": "Top K قايتا تەرتىپلەش كىرگۈزۈڭ",
+	"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 Yacy Password": "Yacy پارول كىرگۈزۈڭ",
+	"Enter Yacy URL (e.g. http://yacy.example.com:8090)": "Yacy URL كىرگۈزۈڭ (مەسىلەن: http://yacy.example.com:8090)",
+	"Enter Yacy Username": "Yacy ئىشلەتكۈچى نامى كىرگۈزۈڭ",
+	"Enter your current password": "ھازىرقى پارولىڭىزنى كىرگۈزۈڭ",
+	"Enter Your Email": "ئېلخەت كىرگۈزۈڭ",
+	"Enter Your Full Name": "تولۇق ئاتىڭىزنى كىرگۈزۈڭ",
+	"Enter your message": "ئۇچۇر كىرگۈزۈڭ",
+	"Enter your name": "ئاتىڭىزنى كىرگۈزۈڭ",
+	"Enter Your Name": "ئاتىڭىزنى كىرگۈزۈڭ",
+	"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 accessing media devices.": "كۆپ-ۋاستە ئۈسكۈنىلىرىگە زىيارەت خاتالىقى.",
+	"Error starting recording.": "خاتىرىلەش باشلاش خاتالىقى.",
+	"Error unloading model: {{error}}": "مودېل چىقىرىشتا خاتالىق: {{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": "چۈشەندۈرۈش",
+	"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 Prompt Suggestions": "تۈرتكە تەكلىپلىرىنى چىقىرىش",
+	"Export Prompts": "تۈرتكە چىقىرىش",
+	"Export to CSV": "CSV غا چىقىرىش",
+	"Export Tools": "قوراللارنى چىقىرىش",
+	"External": "سىرتقى",
+	"External Document Loader URL required.": "سىرتقى ھۆججەت يۈكلىگۈچ URL زۆرۈر.",
+	"External Task Model": "سىرتقى ۋەزىپە مودېلى",
+	"External Web Loader API Key": "سىرتقى تور يۈكلىگۈچ API ئاچقۇچى",
+	"External Web Loader URL": "سىرتقى تور يۈكلىگۈچ URL",
+	"External Web Search API Key": "سىرتقى تور ئىزدەش API ئاچقۇچى",
+	"External Web Search URL": "سىرتقى تور ئىزدەش URL",
+	"Failed to add file.": "ھۆججەت قوشۇش مەغلۇپ بولدى.",
+	"Failed to connect to {{URL}} OpenAPI tool server": "{{URL}} OpenAPI قورال مۇلازىمېتىرىغا ئۇلىنىش مەغلۇپ بولدى",
+	"Failed to copy link": "ئۇلانما كۆچۈرۈش مەغلۇپ بولدى",
+	"Failed to create API Key.": "API ئاچقۇچى قۇرۇش مەغلۇپ بولدى.",
+	"Failed to delete note": "خاتىرە ئۆچۈرۈش مەغلۇپ بولدى",
+	"Failed to fetch models": "مودېللارنى ئېلىش مەغلۇپ بولدى",
+	"Failed to load file content.": "ھۆججەت مەزمۇنى يۈكلەش مەغلۇپ بولدى.",
+	"Failed to read clipboard contents": "چاپلاش تاختىسى مەزمۇنىنى ئوقۇش مەغلۇپ بولدى",
+	"Failed to save connections": "ئۇلىنىشلارنى ساقلاش مەغلۇپ بولدى",
+	"Failed to save models configuration": "مودېل تەڭشەكلىرىنى ساقلاش مەغلۇپ بولدى",
+	"Failed to update settings": "تەڭشەكلەرنى يېڭىلاش مەغلۇپ بولدى",
+	"Failed to upload file.": "ھۆججەت چىقىرىش مەغلۇپ بولدى.",
+	"Features": "ئىقتىدارلار",
+	"Features Permissions": "ئىقتىدار ھوقۇقى",
+	"February": "فېۋرال",
+	"Feedback Details": "پىكىر تەپسىلاتى",
+	"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 Upload": "ھۆججەت چىقىرىش",
+	"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.": "بارماق ئىزى ئالدامچىلىقى بايقالدى: دەسلەپتىكىنى ئاۋاتار قىلغىلى بولمىدى. كۆڭۈلدىكى پىروفىل رەسىمى ئىشلىتىلىدۇ. ",
+	"Firecrawl API Base URL": "Firecrawl API ئاساسىي URL",
+	"Firecrawl API Key": "Firecrawl API ئاچقۇچى",
+	"Fluidly stream large external response chunks": "سىرتتىن كەلگەن چوڭ ئىنكاسلارنى سىلىق تارقىتىش",
+	"Focus chat input": "سۆھبەت كىرگۈزۈشىگە نىشانلا",
+	"Folder deleted successfully": "قىسقۇچ مۇۋەپپەقىيەتلىك ئۆچۈرۈلدى",
+	"Folder name cannot be empty.": "قىسقۇچ ئاتى بوش بولسا بولمايدۇ.",
+	"Folder name updated successfully": "قىسقۇچ ئاتى مۇۋەپپەقىيەتلىك يېڭىلاندى",
+	"Follow up": "داۋامى",
+	"Follow Up Generation": "داۋاملاشتۇرۇش ھاسىل قىلىش",
+	"Follow Up Generation Prompt": "داۋاملاشتۇرۇش ھاسىل قىلىش تۈرتكەسى",
+	"Follow-Up Auto-Generation": "داۋاملاشتۇرۇشنى ئاپتوماتىك ھاسىل قىلىش",
+	"Followed instructions perfectly": "يول كۆرسىتىشگە تولۇق ئەمەل قىلىندى",
+	"Force OCR": "OCR مەجبۇرىي قوزغىتىش",
+	"Force OCR on all pages of the PDF. This can lead to worse results if you have good text in your PDFs. Defaults to False.": "PDF نىڭ بارلىق بېتىدە OCR قوزغىتىش. ئەگەر PDF دا ياخشى تېكست بولسا، نەتىجىسى يامان بولۇشى مۇمكىن. كۆڭۈلدىكىچە چەكلەنگەن.",
+	"Forge new paths": "يېڭى يول قۇرۇڭ",
+	"Form": "جەدۋەل",
+	"Format your variables using brackets like this:": "ئۆزگەرگۈچلىرىڭىزنى تۆۋەندىكىدەك تىرناق بىلەن فورماتلاڭ:",
+	"Forwards system user session credentials to authenticate": "سىستېما ئىشلەتكۈچىسى ئۇچۇرلىرىنى دەلىللەشكە يوللايدۇ",
+	"Full Context Mode": "تولۇق مەزمۇن ھالىتى",
+	"Function": "فۇنكسىيە",
+	"Function Calling": "فۇنكسىيە چاقىرىش",
+	"Function created successfully": "فۇنكسىيە مۇۋەپپەقىيەتلىك قۇرۇلدى",
+	"Function deleted successfully": "فۇنكسىيە مۇۋەپپەقىيەتلىك ئۆچۈرۈلدى",
+	"Function Description": "فۇنكسىيە چۈشەندۈرۈشى",
+	"Function ID": "فۇنكسىيە ID",
+	"Function imported successfully": "فۇنكسىيە مۇۋەپپەقىيەتلىك ئىمپورت قىلىندى",
+	"Function is now globally disabled": "فۇنكسىيە ھازىر بارلىق سىستېمىدا چەكلەندى",
+	"Function is now globally enabled": "فۇنكسىيە ھازىر بارلىق سىستېمىدا قوزغىتىلدى",
+	"Function Name": "فۇنكسىيە نامى",
+	"Function updated successfully": "فۇنكسىيە مۇۋەپپەقىيەتلىك يېڭىلاندى",
+	"Functions": "فۇنكسىيەلەر",
+	"Functions allow arbitrary code execution.": "فۇنكسىيەلەر خالىغان كود ئىجرا قىلىشقا يول قويىدۇ.",
+	"Functions imported successfully": "فۇنكسىيەلەر مۇۋەپپەقىيەتلىك ئىمپورت قىلىندى",
+	"Gemini": "Gemini",
+	"Gemini API Config": "Gemini API تەڭشىكى",
+	"Gemini API Key is required.": "Gemini API ئاچقۇچى زۆرۈر.",
+	"General": "ئادەتتىكى",
+	"Generate": "ھاسىل قىلىش",
+	"Generate an image": "رەسىم ھاسىل قىلىش",
+	"Generate Image": "رەسىم ھاسىل قىلىش",
+	"Generate prompt pair": "تۈرتكە جۈپى ھاسىل قىلىش",
+	"Generating search query": "ئىزدەش سۇئالى ھاسىل قىلىنىۋاتىدۇ",
+	"Generating...": "ھاسىل قىلىنىۋاتىدۇ...",
+	"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 ماتور ID",
+	"Group created successfully": "گۇرۇپپا مۇۋەپپەقىيەتلىك قۇرۇلدى",
+	"Group deleted successfully": "گۇرۇپپا مۇۋەپپەقىيەتلىك ئۆچۈرۈلدى",
+	"Group Description": "گۇرۇپپا چۈشەندۈرۈشى",
+	"Group Name": "گۇرۇپپا نامى",
+	"Group updated successfully": "گۇرۇپپا مۇۋەپپەقىيەتلىك يېڭىلاندى",
+	"Groups": "گۇرۇپپىلار",
+	"Haptic Feedback": "ئىجابىي ئۇقتۇرۇش",
+	"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 from Sidebar": "يانتاختىدىن يوشۇرۇش",
+	"Hide Model": "مودېلنى يوشۇرۇش",
+	"High Contrast Mode": "يۇقىرى سېلىشتۇرما ھالەت",
+	"Home": "باش بەت",
+	"Host": "مۇلازىمېتىر",
+	"How can I help you today?": "بۈگۈن سىزگە قانداق ياردەم بېرەي؟",
+	"How would you rate this response?": "بۇ ئىنكاسقا قانداق باھا بېرىسىز؟",
+	"HTML": "HTML",
+	"Hybrid Search": "ئارىلاش ئىزدەش",
+	"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",
+	"iframe Sandbox Allow Forms": "iframe Sandbox فورمىلارغا ئىجازەت",
+	"iframe Sandbox Allow Same Origin": "iframe Sandbox بىر مەنبەلىككە ئىجازەت",
+	"Ignite curiosity": "قىزىقىشىڭىزنى قوزغىتىڭ",
+	"Image": "رەسىم",
+	"Image Compression": "رەسىم پرىسلاش",
+	"Image Compression Height": "رەسىم پرىسلاش ئېگىزلىكى",
+	"Image Compression Width": "رەسىم پرىسلاش كەڭلىكى",
+	"Image Generation": "رەسىم ھاسىل قىلىش",
+	"Image Generation (Experimental)": "رەسىم ھاسىل قىلىش (تەجىربىلىك)",
+	"Image Generation Engine": "رەسىم ھاسىل قىلىش ماتورى",
+	"Image Max Compression Size": "رەسىم ئەڭ چوڭ پرىسلاش چوڭلۇقى",
+	"Image Max Compression Size height": "رەسىم ئەڭ چوڭ پرىسلاش ئېگىزلىكى",
+	"Image Max Compression Size width": "رەسىم ئەڭ چوڭ پرىسلاش كەڭلىكى",
+	"Image Prompt Generation": "رەسىم تۈرتكەسى ھاسىل قىلىش",
+	"Image Prompt Generation Prompt": "رەسىم تۈرتكەسى ھەققىدە تۈرتكە",
+	"Image Settings": "رەسىم تەڭشەكلىرى",
+	"Images": "رەسىملەر",
+	"Import": "ئىمپورت قىلىش",
+	"Import Chats": "سۆھبەتلەرنى ئىمپورت قىلىش",
+	"Import Config from JSON File": "JSON ھۆججىتىدىن تەڭشەك ئىمپورت قىلىش",
+	"Import From Link": "ئۇلانمىدىن ئىمپورت قىلىش",
+	"Import Functions": "فۇنكسىيە ئىمپورت قىلىش",
+	"Import Models": "مودېللارنى ئىمپورت قىلىش",
+	"Import Notes": "خاتىرە ئىمپورت قىلىش",
+	"Import Presets": "ئالدىن تەڭشەك ئىمپورت قىلىش",
+	"Import Prompt Suggestions": "تۈرتكە تەكلىپى ئىمپورت قىلىش",
+	"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 content": "ھۆججەت مەزمۇنى خاتا",
+	"Invalid file format.": "ھۆججەت قېلىپى خاتا.",
+	"Invalid JSON file": "JSON ھۆججىتى خاتا",
+	"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 دەلىللەش",
+	"Jupyter URL": "Jupyter URL",
+	"JWT Expiration": "JWT كۈچكە ئىگە ۋاقتى",
+	"JWT Token": "JWT Token",
+	"Kagi Search API Key": "Kagi ئىزدەش API ئاچقۇچى",
+	"Keep in Sidebar": "يانتاختىدا ساقلا",
+	"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": "تىل",
+	"Language Locales": "تىل رايونى",
+	"Languages": "تىللار",
+	"Last Active": "ئاخىرقى ئاكتىپ ۋاقتى",
+	"Last Modified": "ئاخىرقى يېڭىلانغان",
+	"Last reply": "ئاخىرقى ئىنكاس",
+	"LDAP": "LDAP",
+	"LDAP server updated": "LDAP مۇلازىمېتىر يېڭىلاندى",
+	"Leaderboard": "توردىكى رېتىڭ",
+	"Learn more about OpenAPI tool servers.": "OpenAPI قورال مۇلازىمېتىرلىرى ھەققىدە تېخىمۇ كۆپ بىلىڭ.",
+	"Leave empty for no compression": "پرىسلاش بولمىسا بوش قالدۇرۇڭ",
+	"Leave empty for unlimited": "چەكلىمە بولمىسا بوش قالدۇرۇڭ",
+	"Leave empty to include all models from \"{{url}}\" endpoint": "\"{{url}}\" ئۇلانمىسىدىكى بارلىق مودېللارغا بوش قالدۇرۇڭ",
+	"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.": "LLM خاتالىق ئۆتكۈزۈشى مۇمكىن. مۇھىم ئۇچۇرنى تەكشۈرۈڭ.",
+	"Loader": "يۈكلىگۈچ",
+	"Loading Kokoro.js...": "Kokoro.js يۈكلەۋاتىدۇ...",
+	"Local": "يەرلىك",
+	"Local Task Model": "يەرلىك ۋەزىپە مودېلى",
+	"Location access not allowed": "ئورۇن زىيارىتىغا ئىجازەت يوق",
+	"Lost": "يوقاپ كەتتى",
+	"LTR": "LTR (سولدىن ئوڭغا)",
+	"Made by Open WebUI Community": "Open WebUI جەمئىيىتى تەرىپىدىن قۇرۇلغان",
+	"Make password visible in the user interface": "ئىشلەتكۈچى ئۈستىلىدە پارول كۆرسىتىش",
+	"Make sure to enclose them with": "ئۇلارنى تۆۋەندىكىدەك قىستۇرۇڭ",
+	"Make sure to export a workflow.json file as API format from ComfyUI.": "ComfyUI دىن API قېلىپىدا workflow.json ھۆججىتى چىقىرىڭ.",
+	"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": "مارت",
+	"Markdown": "Markdown",
+	"Max Speakers": "ئەڭ كۆپ سۆزلىگۈچىلەر",
+	"Max Upload Count": "ئەڭ كۆپ چىقىرىش سانى",
+	"Max Upload Size": "ئەڭ چوڭ چىقىرىش چوڭلۇقى",
+	"Maximum of 3 models can be downloaded simultaneously. Please try again later.": "بىر ۋاقىتتا ئەڭ كۆپ 3 مودېل چۈشۈرۈلىدۇ. كىيىنچە قايتا سىناڭ.",
+	"May": "ماي",
+	"Memories accessible by LLMs will be shown here.": "LLM ئىشلىتەلەيدىن ئەسلەتمىلەر بۇ يەردە كۆرۈنىدۇ.",
+	"Memory": "ئەسلەتمە",
+	"Memory added successfully": "ئەسلەتمە مۇۋەپپەقىيەتلىك قوشۇلدى",
+	"Memory cleared successfully": "ئەسلەتمە مۇۋەپپەقىيەتلىك تازىلاندى",
+	"Memory deleted successfully": "ئەسلەتمە مۇۋەپپەقىيەتلىك ئۆچۈرۈلدى",
+	"Memory updated successfully": "ئەسلەتمە مۇۋەپپەقىيەتلىك يېڭىلاندى",
+	"Merge Responses": "ئىنكاسلارنى بىرلەشتۈرۈش",
+	"Merged Response": "بىرلەشتۈرۈلگەن ئىنكاس",
+	"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 غا ئىگە ئىشلەتكۈچىلەر ھەمبەھىرلەنگەن سۆھبەتنى كۆرەلەيدۇ.",
+	"Microsoft OneDrive": "Microsoft OneDrive",
+	"Microsoft OneDrive (personal)": "Microsoft OneDrive (شەخسىي)",
+	"Microsoft OneDrive (work/school)": "Microsoft OneDrive (خىزمەت/مەكتىپ)",
+	"Mistral OCR": "Mistral OCR",
+	"Mistral OCR API Key required.": "Mistral OCR API ئاچقۇچى زۆرۈر.",
+	"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 file inputs": "مودېل ھۆججەت كىرگۈزۈشنى قوبۇل قىلىدۇ",
+	"Model accepts image inputs": "مودېل رەسىم كىرگۈزۈشنى قوبۇل قىلىدۇ",
+	"Model can execute code and perform calculations": "مودېل كود ئىجرا قىلىپ ھېسابلاشقا قادىر",
+	"Model can generate images based on text prompts": "مودېل تېكست تۈرتكە ئارقىلىق رەسىم ھاسىل قىلالايدۇ",
+	"Model can search the web for information": "مودېل توردا ئۇچۇر ئىزدەيدۇ",
+	"Model created successfully!": "مودېل مۇۋەپپەقىيەتلىك قۇرۇلدى!",
+	"Model filesystem path detected. Model shortname is required for update, cannot continue.": "مودېل ھۆججەت ساندىكى يول بايقالدى. يېڭىلاش ئۈچۈن مودېل قىسقا نامى زۆرۈر، داۋام قىلغىلى بولمايدۇ.",
+	"Model Filtering": "مودېل سۈزگۈچ",
+	"Model ID": "مودېل ID",
+	"Model IDs": "مودېل IDلىرى",
+	"Model Name": "مودېل نامى",
+	"Model not selected": "مودېل تاللانمىغان",
+	"Model Params": "مودېل پارامېتىرلىرى",
+	"Model Permissions": "مودېل ھوقۇقى",
+	"Model unloaded successfully": "مودېل مۇۋەپپەقىيەتلىك چىقىرىلدى",
+	"Model updated successfully": "مودېل مۇۋەپپەقىيەتلىك يېڭىلاندى",
+	"Model(s) do not support file upload": "مودېل(لار) ھۆججەت چىقىرىشنى قوللىمايدۇ",
+	"Modelfile Content": "Modelfile مەزمۇنى",
+	"Models": "مودېللار",
+	"Models Access": "مودېللار زىيارىتى",
+	"Models configuration saved successfully": "مودېل تەڭشەكلىرى مۇۋەپپەقىيەتلىك ساقلاندى",
+	"Models Public Sharing": "مودېللارنى ئاممىغا ھەمبەھىرلەش",
+	"Mojeek Search API Key": "Mojeek ئىزدەش API ئاچقۇچى",
+	"more": "تېخىمۇ كۆپ",
+	"More": "تېخىمۇ كۆپ",
+	"My Notes": "خاتىرە",
+	"Name": "ئات",
+	"Name your knowledge base": "بىلىم ئاساسى نامىنى كىرگۈزۈڭ",
+	"Native": "يەرلىك",
+	"New Chat": "يېڭى سۆھبەت",
+	"New Folder": "يېڭى قىسقۇچ",
+	"New Function": "يېڭى فۇنكسىيە",
+	"New Note": "يېڭى خاتىرە",
+	"New Password": "يېڭى پارول",
+	"New Tool": "يېڭى قورال",
+	"new-channel": "يېڭى-قانال",
+	"Next message": "كېيىنكى ئۇچۇر",
+	"No chats found for this user.": "بۇ ئىشلەتكۈچىدە سۆھبەت تېپىلمىدى.",
+	"No chats found.": "سۆھبەت تېپىلمىدى.",
+	"No content": "مەزمۇن يوق",
+	"No content found": "مەزمۇن تېپىلمىدى",
+	"No content found in file.": "ھۆججەتتە مەزمۇن تېپىلمىدى.",
+	"No content to speak": "تاپشۇرىدىغان مەزمۇن يوق",
+	"No distance available": "ئارىلىق ئۇچۇرى يوق",
+	"No feedbacks found": "پىكىرلەر تېپىلمىدى",
+	"No file selected": "ھۆججەت تاللانمىدى",
+	"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 Notes": "خاتىرە يوق",
+	"No results found": "نەتىجە تېپىلمىدى",
+	"No search query generated": "ئىزدەش سۇئالى ھاسىل قىلىنمىدى",
+	"No source available": "مەنبە يوق",
+	"No users were found.": "ئىشلەتكۈچى تېپىلمىدى.",
+	"No valves to update": "يېڭىلاشقا كېرەكلىك كران يوق",
+	"None": "يوق",
+	"Not factually correct": "ھەقىقى بولمىغان",
+	"Not helpful": "پايدىسى يوق",
+	"Note deleted successfully": "خاتىرە مۇۋەپپەقىيەتلىك ئۆچۈرۈلدى",
+	"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": "نويابىر",
+	"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 active when \"Paste Large Text as File\" setting is toggled on.": "\"چوڭ تېكستنى ھۆججەت قىلىپ چاپلا\" قوزغىتىلغاندا ئىلان قىلىدۇ.",
+	"Only active when the chat input is in focus and an LLM is generating a response.": "خەت كىرگۈزۈشكە باشلىغاندا ياكى LLM ئىنكاس چىقىرىۋاتقاندا ئوچۇق.",
+	"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 markdown files are allowed": "پەقەت markdown ھۆججىتى ئىشلىتىشكە بولىدۇ",
+	"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 modal to configure connection": "ئۇلىنىش تەڭشەك مودالىنى ئېچىڭ",
+	"Open new chat": "يېڭى سۆھبەت ئېچىش",
+	"Open WebUI can use tools provided by any OpenAPI server.": "Open WebUI ھەر قانداق OpenAPI مۇلازىمېتىرلىرىدىكى قوراللارنى ئىشلىتەلىدۇ.",
+	"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 تەڭشىكى",
+	"OpenAI API Key is required.": "OpenAI API ئاچقۇچى زۆرۈر.",
+	"OpenAI API settings updated": "OpenAI API تەڭشەكلىرى يېڭىلاندى",
+	"OpenAI URL/Key required.": "OpenAI URL/ئاچقۇچى زۆرۈر.",
+	"openapi.json URL or Path": "openapi.json URL ياكى يولى",
+	"Options for running a local vision-language model in the picture description. The parameters refer to a model hosted on Hugging Face. This parameter is mutually exclusive with picture_description_api.": "رەسىم چۈشەندۈرۈشىدە يەرلىك كۆرۈنۈش-تىل مودېلى ئىشلىتىش تاللاشلىرى. بۇ پارامېتىر Hugging Face تىكى مودېلغا قارىتىلغان. بۇ پارامېتىر picture_description_api بىلەن قوشۇلمايدۇ.",
+	"or": "ياكى",
+	"Organize your users": "ئىشلەتكۈچىلەرنى تەشكىللەڭ",
+	"Other": "باشقا",
+	"OUTPUT": "چىقىرىش",
+	"Output format": "چىقىرىش قېلىپى",
+	"Output Format": "چىقىرىش فورماتى",
+	"Overview": "قىسقىچە تونۇشتۇرۇش",
+	"page": "بەت",
+	"Paginate": "بەتلەش",
+	"Parameters": "پارامېتىرلار",
+	"Password": "پارول",
+	"Paste Large Text as File": "چوڭ تېكستنى ھۆججەت قىلىپ چاپلا",
+	"PDF document (.pdf)": "PDF ھۆججىتى (.pdf)",
+	"PDF Extract Images (OCR)": "PDF رەسىم چىقىرىش (OCR)",
+	"pending": "كۈتۈۋاتىدۇ",
+	"Pending": "كۈتۈۋاتىدۇ",
+	"Pending User Overlay Content": "كۈتۈۋاتقان ئىشلەتكۈچى قاپلام مەزمۇنى",
+	"Pending User Overlay Title": "كۈتۈۋاتقان ئىشلەتكۈچى قاپلام تېمىسى",
+	"Permission denied when accessing media devices": "كۆپ-ۋاستە ئۈسكۈنىلىرىگە كىرىش چەكلەندى",
+	"Permission denied when accessing microphone": "مىكروفونغا كىرىش چەكلەندى",
+	"Permission denied when accessing microphone: {{error}}": "مىكروفونغا كىرىش چەكلەندى: {{error}}",
+	"Permissions": "ھوقۇق",
+	"Perplexity API Key": "Perplexity API ئاچقۇچى",
+	"Perplexity Model": "Perplexity مودېلى",
+	"Perplexity Search Context Usage": "Perplexity ئىزدەش مۇھىتى ئىشلىتىش",
+	"Personalization": "شەخسىيلاشتۇرۇش",
+	"Picture Description API Config": "رەسىم چۈشەندۈرۈش API تەڭشىكى",
+	"Picture Description Local Config": "رەسىم چۈشەندۈرۈش يەرلىك تەڭشىكى",
+	"Picture Description Mode": "رەسىم چۈشەندۈرۈش ھالىتى",
+	"Pin": "مۇقىملا",
+	"Pinned": "مۇقىملاندى",
+	"Pioneer insights": "ئالدىنقى پىكىرلەر",
+	"Pipeline deleted successfully": "جەريان مۇۋەپپەقىيەتلىك ئۆچۈرۈلدى",
+	"Pipeline downloaded successfully": "جەريان مۇۋەپپەقىيەتلىك چۈشۈرۈلدى",
+	"Pipelines": "جەريانلار",
+	"Pipelines Not Detected": "جەريان تېپىلمىدى",
+	"Pipelines Valves": "جەريان كرانلىرى",
+	"Plain text (.md)": "ئاددىي تېكست (.md)",
+	"Plain text (.txt)": "ئاددىي تېكست (.txt)",
+	"Playground": "تەجربىخانا",
+	"Playwright Timeout (ms)": "Playwright ۋاقىت چەكلىمىسى (ms)",
+	"Playwright WebSocket URL": "Playwright WebSocket URL",
+	"Please carefully review the following warnings:": "تۆۋەندىكى ئاگاھلاندۇرۇشلاردىن دىققەت بىلەن خەۋەردار بولۇڭ:",
+	"Please do not close the settings page while loading the model.": "مودېل يۈكلەۋاتقاندا تەڭشەك بېتىنى ياپماڭ.",
+	"Please enter a prompt": "تۈرتكە كىرگۈزۈڭ",
+	"Please enter a valid path": "توغرا يول كىرگۈزۈڭ",
+	"Please enter a valid URL": "توغرا URL كىرگۈزۈڭ",
+	"Please fill in all fields.": "بارلىق رايونلارنى تولدۇرۇڭ.",
+	"Please select a model first.": "ئالدى بىلەن مودېل تاللاڭ.",
+	"Please select a model.": "مودېل تاللاڭ.",
+	"Please select a reason": "سەۋەب تاللاڭ",
+	"Port": "ئېغىز",
+	"Positive attitude": "ئىجابىي پوزىتسىيە",
+	"Prefix ID": "Prefix ID",
+	"Prefix ID is used to avoid conflicts with other connections by adding a prefix to the model IDs - leave empty to disable": "باشقا ئۇلىنىش بىلەن توقۇنۇشنىڭ ئالدىنى ئېلىش ئۈچۈن مودېل ID غا Prefix قوشۇلىدۇ - چەكلەش ئۈچۈن بوش قالدۇرۇڭ",
+	"Prevent file creation": "ھۆججەت قۇرۇشنى چەكلەش",
+	"Preview": "ئالدىن كۆرۈش",
+	"Previous 30 days": "ئالدىنقى 30 كۈن",
+	"Previous 7 days": "ئالدىنقى 7 كۈن",
+	"Previous message": "ئالدىنقى ئۇچۇر",
+	"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": "ئوقۇپ ئېيتىش",
+	"Reason": "سەۋەب",
+	"Reasoning Effort": "چۈشەندۈرۈش كۈچى",
+	"Record": "خاتىرىلەش",
+	"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.": "ئاساسسىز ئىنكاس چىقىرىشىنىڭ ئېھتىماللىقىنى ئازايتىدۇ. چوڭ قىممەت (مەسىلەن: 100) كۆپ خىل ئىنكاس، كىچىك قىممەت (مەسىلەن: 10) تېخىمۇ مۇقىم ئىنكاس بېرىدۇ.",
+	"Refer to yourself as \"User\" (e.g., \"User is learning Spanish\")": "ئۆزىڭىزنى \"ئىشلەتكۈچى\" دەپ ئاتىڭ (مەسىلەن: \"ئىشلەتكۈچى ئىسپانچە ئۆگىنىۋاتىدۇ\")",
+	"References from": "نەقىل مەنبەسى:",
+	"Refused when it shouldn't have": "رەت قىلماسلىق كېرەك ئىدى",
+	"Regenerate": "قايتا ھاسىل قىلىش",
+	"Reindex": "قايتا ئىندېكسلاش",
+	"Reindex Knowledge Base Vectors": "بىلىم ئاساسى ۋېكتورىنى قايتا ئىندېكسلاش",
+	"Release Notes": "نەشر خاتىرىسى",
+	"Releases": "نەشرلەر",
+	"Relevance": "مۇناسىۋەتلىكلىك",
+	"Relevance Threshold": "مۇناسىۋەتلىكلىك چەك قىممىتى",
+	"Remove": "چىقىرىۋېتىش",
+	"Remove {{MODELID}} from list.": "تىزىمدىن {{MODELID}} چىقىرىۋېتىش.",
+	"Remove Model": "مودېل چىقىرىۋېتىش",
+	"Remove this tag from list": "بۇ تەغنى تىزىمدىن چىقىرىۋېتىش",
+	"Rename": "ئات ئۆزگەرتىش",
+	"Reorder Models": "مودېللارنى قايتا تەرتىپلەش",
+	"Reply in Thread": "تارماقتا ئىنكاس قايتۇرۇش",
+	"Reranking Engine": "قايتا تەرتىپلەش ماتورى",
+	"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": "ئىنكاسنى بۆلۈش",
+	"Response Watermark": "ئىنكاس سۇ بەلگىسى",
+	"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 On Branch Change": "تارماق ئۆزگەرسە ئېكران يۆتكىلىدۇ",
+	"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 ماتورى",
+	"Searched {{count}} sites": "{{count}} تور بېكەت ئىزدەندى",
+	"Searching \"{{searchQuery}}\"": "\"{{searchQuery}}\" ئىزدەۋاتىدۇ",
+	"Searching Knowledge for \"{{searchQuery}}\"": "\"{{searchQuery}}\" ئۈچۈن بىلىم ئىزدەۋاتىدۇ",
+	"Searching the web...": "تور ئىزدەۋاتىدۇ...",
+	"Searxng Query URL": "Searxng ئىزدەش URL",
+	"See readme.md for instructions": "قوللانما ئۈچۈن readme.md غا قاراڭ",
+	"See what's new": "يېڭىلىقلارنى كۆرۈش",
+	"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": "دەلىللەش ئۇسۇلى تاللاڭ",
+	"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 ماتورى",
+	"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": "ئەۋرىشكىلىگۈچ تەڭشەش\u00a0",
+	"Set Scheduler": "ۋاقىتلاشتۇرغۇچ تەڭشەش",
+	"Set Steps": "قەدەم سانىنى تەڭشەش",
+	"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) يۇمشاق.",
+	"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 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": "ھەمبەھىرلەش ھوقۇقى",
+	"Shortcuts with an asterisk (*) are situational and only active under specific conditions.": "چىقىرىش (*) بىلەن بەلگىلەنگەن تېز كۇنۇپكىلار پەقەت بەلگىلىك ئەھۋاللاردا ئىلان قىلىدۇ.",
+	"Show": "كۆرسىتىش",
+	"Show \"What's New\" modal on login": "كىرىشتە \"يېڭىلىق\" مودىلىنى كۆرسىتىش",
+	"Show Admin Details in Account Pending Overlay": "ھېسابات كۈتۈۋاتقان قاپلىماسىدا باشقۇرغۇچى تەپسىلاتىنى كۆرسىتىش",
+	"Show All": "ھەممىنى كۆرسىتىش",
+	"Show Less": "ئاز كۆرسىتىش",
+	"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}} غا تىزىملىتىش",
+	"Significantly improves accuracy by using an LLM to enhance tables, forms, inline math, and layout detection. Will increase latency. Defaults to True.": "LLM ئارقىلىق جەدۋەل، ماتېماتىكا ۋە تۈزۈلۈش بايقىتىشنىڭ توغىرىقى ئاشىدۇ. ئىنتايىن ۋاقىت تەلەپ قىلىدۇ. كۆڭۈلدىكىچە قوزغىتىلغان.",
+	"Signing in to {{WEBUI_NAME}}": "{{WEBUI_NAME}} غا كىرىۋاتىدۇ",
+	"sk-1234": "sk-1234",
+	"Skip Cache": "غەملەكتىن ئۆتۈپ كېتىش",
+	"Skip the cache and re-run the inference. Defaults to False.": "غەملەكتىن ئۆتۈپ، يەكۈننى قايتا ئىجرا قىلىش. كۆڭۈلدىكىچە چەكلەنگەن",
+	"Sougou Search API sID": "Sougou ئىزدەش API sID",
+	"Sougou Search API SK": "Sougou ئىزدەش API SK",
+	"Source": "مەنبە",
+	"Speech Playback Speed": "ئاۋاز قۇيۇش تېزلىكى",
+	"Speech recognition error: {{error}}": "ئاۋازنى تونۇش خاتالىقى: {{error}}",
+	"Speech-to-Text": "ئاۋازدىن تېكستكە",
+	"Speech-to-Text Engine": "ئاۋازدىن تېكستكە ماتورى",
+	"Stop": "توختات",
+	"Stop Generating": "ھاسىل قىلىشنى توختات",
+	"Stop Sequence": "توختاش تىزىقى",
+	"Stream Chat Response": "سۆھبەت ئىنكاسىنى ئېقىم قىلىش",
+	"Strip Existing OCR": "بار OCR نى چىقىرىۋېتىش",
+	"Strip existing OCR text from the PDF and re-run OCR. Ignored if Force OCR is enabled. Defaults to False.": "PDF دىكى بار OCR تېكىستىنى چىقىرىپ، قايتا OCR ئىجرا قىلىش. Force OCR قوزغىتىلسا بۇنىڭغا پەرۋا قىلىنمايدۇ. كۆڭۈلدىكىچە چەكلەنگەن.",
+	"STT Model": "STT مودېلى",
+	"STT Settings": "STT تەڭشەكلىرى",
+	"Stylized PDF Export": "ئۇسلۇبلۇق PDF چىقىرىش",
+	"Subtitle (e.g. about the Roman Empire)": "تاق سۆز (مەسىلەن: رىم ئىمپېرىيەسى ھەققىدە)",
+	"Success": "مۇۋەپپەقىيەت",
+	"Successfully updated.": "مۇۋەپپەقىيەتلىك يېڭىلاندى.",
+	"Suggested": "تەكلىپلەر",
+	"Support": "ياردەم",
+	"Support this plugin:": "بۇ قىستۇرما ئۈچۈن ياردەم قىلىڭ:",
+	"Supported MIME Types": "قوللايدىغان MIME تىپى",
+	"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.": "ئىھتىماللىقى تۆۋەن ئىملەرنىڭ تەسىرىنى ئازايتىش ئۈچۈن tail free sampling ئىشلىتىلىدۇ. چوڭ قىممەت (مەسىلەن: 2.0) تەسىرىنى تېخىمۇ ئازايتىدۇ، 1.0 بولسا چەكلەنگەن.",
+	"Talk to model": "مودېل بىلەن سۆزلىشىش",
+	"Tap to interrupt": "توختاتماقچى بولسىڭىز چېكىڭ",
+	"Task Model": "ۋەزىپە مودېلى",
+	"Tasks": "ۋەزىپىلەر",
+	"Tavily API Key": "Tavily API ئاچقۇچى",
+	"Tavily Extract Depth": "Tavily چىقىرىش چوڭقۇرلۇقى",
+	"Tell us more:": "تېخىمۇ كۆپ ئۇچۇر بېرىڭ:",
+	"Temperature": "تېمپېراتۇرا",
+	"Temporary Chat": "ۋاقىتلىق سۆھبەت",
+	"Text Splitter": "تېكست بۆلگۈچ",
+	"Text-to-Speech": "تېكستتىن ئاۋازغا",
+	"Text-to-Speech Engine": "تېكست ئاۋاز ماتورى",
+	"Thanks for your feedback!": "پىكىرىڭىزگە رەھمەت!",
+	"The Application Account DN you bind with for search": "ئىزدەش ئۈچۈن باغلانغان قوللىنىشچان 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.": "بۇ قىستۇرما تەرەققىياتچىلىرى جەمئىيەتتىن چىققان قىزغىن خىزمەت ئەترىتى. پايدىلىق دەپ قارىسىڭىز، تەرەققىياتقا قوشۇلۇڭ.",
+	"The evaluation leaderboard is based on the Elo rating system and is updated in real-time.": "باھالاش رېتىڭى Elo سىستېمىسى بويىچە، ۋاقتىدا يېڭىلىنىدۇ.",
+	"The format to return a response in. Format can be json or a JSON schema.": "ئىنكاس قايتۇرۇش قېلىپى. json ياكى JSON قېلىپى ئىشلىتىلىدۇ.",
+	"The height in pixels to compress images to. Leave empty for no compression.": "رەسىم پرىسلاش ئېگىزلىكى (پېكسېل). پرىسلاش بولمىسا بوش قالدۇرۇڭ.",
+	"The language of the input audio. Supplying the input language in ISO-639-1 (e.g. en) format will improve accuracy and latency. Leave blank to automatically detect the language.": "كىرگۈزۈش ئاۋاز تىلى. ISO-639-1 (مەسىلەن: en) بويىچە كىرگۈزسىڭىز دەلىقلىقى ۋە تېزلىكى يۇقىرى بولىدۇ. بوش قالدۇرساڭىز ئاپتوماتىك بايقىتىدۇ.",
+	"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.": "رېتىڭ تىزىملىكى ھازىر بەتا. ئالگورىتمنى ياخشىلىغاندا باھا ھېسابلىنىشى ئۆزگەرتىلىشى مۇمكىن.",
+	"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 output format for the text. Can be 'json', 'markdown', or 'html'. Defaults to 'markdown'.": "تېكست چىقىرىش قېلىپى. 'json', 'markdown', ياكى 'html' بولىدۇ. كۆڭۈلدىكى 'markdown'.",
+	"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.": "مودېل تېمپېراتۇراسى. تېمپېراتۇرا ئاشسىلا يېڭىلىق كۈچى يۇقىرى بولىدۇ.",
+	"The width in pixels to compress images to. Leave empty for no compression.": "رەسىم پرىسلاش كەڭلىكى (پېكسېل). پرىسلاش بولمىسا بوش قالدۇرۇڭ.",
+	"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 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 model is not publicly available. Please select another model.": "بۇ مودېل ئاممىغا ئېلان قىلىنمىغان. باشقا مودېل تاللاڭ.",
+	"This option controls how long the model will stay loaded into memory following the request (default: 5m)": "بۇ تاللاش مودېل تەلەپتىن كېيىن ئەسلەتكۈچتە قانچىلىك ساقلىنىدىغانلىقىنى باشقۇرىدۇ (كۆڭۈلدىكى: 5 مىنۇت)",
+	"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 ئىمىنى ساقلايدۇ. مۇھىت ساقلىش سۆھبەتنىڭ ئۇلاشقىلىقلىقىغا پايدىلىق، بىراق يېڭى تېمىغا ئىنكاس كۈچىنى ئازايتىدۇ.",
+	"This option enables or disables the use of the reasoning feature in Ollama, which allows the model to think before generating a response. When enabled, the model can take a moment to process the conversation context and generate a more thoughtful response.": "بۇ تاللاش Ollama دا چۈشەندۈرۈش ئىقتىدارىنى قوزغىتىدۇ ياكى چەكلەيدۇ. قوزغىتىلسا، مودېل ئىنكاس چىقىرىشتىن بۇرۇن ئويلايدۇ.",
+	"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 <strong>{{NAME}}</strong> and <strong>all its contents</strong>.": "<strong>{{NAME}}</strong> ۋە <strong>بارلىق مەزمۇنى</strong> ئۆچۈرۈلىدۇ.",
+	"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 مۇلازىمېتىر URL زۆرۈر.",
+	"Tiktoken": "Tiktoken",
+	"Tip: Update multiple variable slots consecutively by pressing the tab key in the chat input after each replacement.": "تەكلىپ: ھەر بىر ئالماشتۇرغاندىن كېيىن پاراڭ كىرگۈزۈشتىكى بەتكۈچ كۇنۇپكىسىنى بېسىش ئارقىلىق ئۇدا كۆپ خىل ئۆزگەرگۈچى ئورۇننى يېڭىلاڭ.",
+	"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.": "شەخسىيلىقىڭىزنى قوغداش ئۈچۈن، پەقەت باھا، مودېل ID، تەغ ۋە مېتا ئۇچۇرلىرىلا باشقىلارغا ھەمبەھىرلىنىدۇ؛ سۆھبەت خاتىرىسىڭىز شەخسىي بولۇپ قالىدۇ.",
+	"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 search": "ئىزدەش ئالماشتۇرۇش",
+	"Toggle settings": "تەڭشەك ئالماشتۇرۇش",
+	"Toggle sidebar": "يانتاختا ئالماشتۇرۇش",
+	"Toggle whether current connection is active.": "ھازىرقى ئۇلىنىشنىڭ ئاكتىپ ياكى ئەمەسلىكىنى ئالماشتۇرۇش.",
+	"Token": "ئىم",
+	"Too verbose": "بەك ئۇزۇن",
+	"Tool created successfully": "قورال مۇۋەپپەقىيەتلىك قۇرۇلدى",
+	"Tool deleted successfully": "قورال مۇۋەپپەقىيەتلىك ئۆچۈرۈلدى",
+	"Tool Description": "قورال چۈشەندۈرۈشى",
+	"Tool ID": "قورال ID",
+	"Tool imported successfully": "قورال مۇۋەپپەقىيەتلىك ئىمپورت قىلىندى",
+	"Tool Name": "قورال نامى",
+	"Tool Servers": "قورال مۇلازىمېتىرلىرى",
+	"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 Public Sharing": "قوراللارنى ئاممىغا ھەمبەھىرلەش",
+	"Top K": "Top K",
+	"Top K Reranker": "Top K قايتا تەرتىپلەش",
+	"Transformers": "Transformers",
+	"Trouble accessing Ollama?": "Ollama زىيارىتىدە مەسىلە بارمۇ؟",
+	"Trust Proxy Environment": "ۋاكالەت مۇھىتىگە ئىشەن",
+	"TTS Model": "TTS مودېلى",
+	"TTS Settings": "TTS تەڭشەكلىرى",
+	"TTS Voice": "TTS ئاۋازى",
+	"Type": "تىپى",
+	"Type Hugging Face Resolve (Download) URL": "Hugging Face چۈشۈرۈش URL كىرگۈزۈڭ",
+	"Uh-oh! There was an issue with the response.": "ئىنكاستا مەسىلە كۆرۈلدى.",
+	"UI": "UI (كۆرۈنمە يۈز)",
+	"Unarchive All": "بارلىق ئارخىپنى قايتا ئەسلىگە كەلتۈرۈش",
+	"Unarchive All Archived Chats": "بارلىق ئارخىپلانغان سۆھبەتلەرنى قايتا ئەسلىگە كەلتۈرۈش",
+	"Unarchive Chat": "سۆھبەتنى قايتا ئەسلىگە كەلتۈرۈش",
+	"Unloads {{FROM_NOW}}": "{{FROM_NOW}} چىقىرىلىدۇ",
+	"Unlock mysteries": "سىرلارنى ئاچ",
+	"Unpin": "مۇقىملانمىغان قىلىش",
+	"Unravel secrets": "سىرنى ئاچ",
+	"Untagged": "تەغسىز",
+	"Untitled": "تېماسىز",
+	"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 Audio": "ئاۋاز چىقىرىش",
+	"Upload directory": "چىقىرىش قىسقۇچى",
+	"Upload files": "ھۆججەت چىقىرىش",
+	"Upload Files": "ھۆججەت چىقىرىش",
+	"Upload Pipeline": "جەريان چىقىرىش",
+	"Upload Progress": "چىقىرىش جەريانى",
+	"URL": "URL",
+	"URL Mode": "URL ھالىتى",
+	"Usage": "ئىشلىتىش",
+	"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 LLM": "LLM ئىشلىتىش",
+	"Use no proxy to fetch page contents.": "ۋاكالەتچىسىز بەت مەزمۇنىنى ئېلىش.",
+	"Use proxy designated by http_proxy and https_proxy environment variables to fetch page contents.": "http_proxy ۋە https_proxy مۇھىت ئۆزگەرگۈچ بويىچە بەت مەزمۇنى ئېلىش.",
+	"user": "ئىشلەتكۈچى",
+	"User": "ئىشلەتكۈچى",
+	"User location successfully retrieved.": "ئىشلەتكۈچى ئورنى مۇۋەپپەقىيەتلىك ئېلىندى.",
+	"User Webhooks": "ئىشلەتكۈچى Webhookلىرى",
+	"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 updated": "كرانلار يېڭىلاندى",
+	"Valves updated successfully": "كرانلار مۇۋەپپەقىيەتلىك يېڭىلاندى",
+	"variable": "ئۆزگەرگۈچ",
+	"variable to have them replaced with clipboard content.": "ئۆزگەرگۈچنى چاپلاش تاختىسى مەزمۇنى بىلەن ئالماشتۇرۇش.",
+	"Verify Connection": "ئۇلىنىشنى جەزملەش",
+	"Verify SSL Certificate": "SSL كىنىشكىسىنى جەزملەش",
+	"Version": "نەشر",
+	"Version {{selectedVersion}} of {{totalVersions}}": "{{totalVersions}} تىن {{selectedVersion}}-نەشر",
+	"View Replies": "ئىنكاسلارنى كۆرۈش",
+	"View Result from **{{NAME}}**": "**{{NAME}}** دىن نەتىجىنى كۆرۈش",
+	"Visibility": "كۆرۈنۈشچانلىق",
+	"Vision": "كۆرۈش",
+	"Voice": "ئاۋاز",
+	"Voice Input": "ئاۋاز كىرگۈزۈش",
+	"Voice mode": "ئاۋاز ھالىتى",
+	"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": "تور API",
+	"Web Loader Engine": "تور يۈكلىگۈچ ماتورى",
+	"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}}\"": "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\" غا تەلەپ يوللايدۇ",
+	"Weight of BM25 Retrieval": "BM25 قايتۇرۇش ئېغىرلىقى",
+	"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": "قايسى يەردە بولسىڭىزمۇ",
+	"Whether to paginate the output. Each page will be separated by a horizontal rule and page number. Defaults to False.": "چىقىرىشنى بەتلەندۈرۈش ئۈچۈن ئىشلىتىلدۇ. ھەربىر بەت گىزىكچىلەر بىلەن ئايرىلىدۇ. كۆڭۈلدىكىچە چەكلەنگەن.",
+	"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].": "50 سۆز بىلەن [تېما ياكى ئاچقۇچلۇق سۆز] نى خاتىرىلەڭ.",
+	"Write something...": "بىر نەرسە يېزىڭ...",
+	"Yacy Instance URL": "Yacy مىسال URL",
+	"Yacy Password": "Yacy پارول",
+	"Yacy Username": "Yacy ئىشلەتكۈچى نامى",
+	"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.": "تۆۋەندىكى 'باشقۇرۇش' كۇنۇپكىسى ئارقىلىق ئەسلەتمە قوشۇپ LLM بىلەن مۇناسىۋىتىڭىزنى شەخسىيلاشتۇرالايسىز.",
+	"You cannot upload an empty file.": "قۇرۇق ھۆججەت چىقىرىشقا بولمايدۇ.",
+	"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.": "تۆلەم پۇلىڭىز بىۋاسىتە قىستۇرما تەرەققىياتچىسىغا بېرىلىدۇ؛ Open WebUI ھېچقانداق پىرسېنت ئالمايدۇ. بىراق تاللانغان مالىيە پلاتفورمىسىنىڭ ئۆزىنىڭ ھەققى بولۇشى مۇمكىن.",
+	"Youtube": "Youtube",
+	"Youtube Language": "Youtube تىلى",
+	"Youtube Proxy URL": "Youtube ۋاكالەتچى URL"
+}

+ 1 - 1
src/lib/i18n/locales/uk-UA/translation.json

@@ -210,6 +210,7 @@
 	"Clone Chat": "Клонувати чат",
 	"Clone of {{TITLE}}": "Клон {{TITLE}}",
 	"Close": "Закрити",
+	"Close Configure Connection Modal": "",
 	"Close modal": "",
 	"Close settings modal": "",
 	"Code execution": "Виконання коду",
@@ -1232,7 +1233,6 @@
 	"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 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 model is not publicly available. Please select another model.": "",

+ 1 - 1
src/lib/i18n/locales/ur-PK/translation.json

@@ -210,6 +210,7 @@
 	"Clone Chat": "",
 	"Clone of {{TITLE}}": "",
 	"Close": "بند کریں",
+	"Close Configure Connection Modal": "",
 	"Close modal": "",
 	"Close settings modal": "",
 	"Code execution": "کوڈ کا نفاذ",
@@ -1232,7 +1233,6 @@
 	"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 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 model is not publicly available. Please select another model.": "",

+ 1 - 1
src/lib/i18n/locales/uz-Cyrl-UZ/translation.json

@@ -210,6 +210,7 @@
 	"Clone Chat": "Чатни клонлаш",
 	"Clone of {{TITLE}}": "{{TITLE}} клони",
 	"Close": "Ёпиш",
+	"Close Configure Connection Modal": "",
 	"Close modal": "",
 	"Close settings modal": "",
 	"Code execution": "Коднинг бажарилиши",
@@ -1232,7 +1233,6 @@
 	"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.": "Бу канал {{cреатедАт}} да яратилган. Бу {{чаннелНаме}} каналининг бошланиши.",
 	"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.": "Бу чат тарихда кўринмайди ва хабарларингиз сақланмайди.",
 	"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 model is not publicly available. Please select another model.": "Ушбу модел ҳамма учун очиқ эмас. Илтимос, бошқа моделни танланг.",

+ 1 - 1
src/lib/i18n/locales/uz-Latn-Uz/translation.json

@@ -210,6 +210,7 @@
 	"Clone Chat": "Chatni klonlash",
 	"Clone of {{TITLE}}": "{{TITLE}} kloni",
 	"Close": "Yopish",
+	"Close Configure Connection Modal": "",
 	"Close modal": "",
 	"Close settings modal": "",
 	"Code execution": "Kodning bajarilishi",
@@ -1232,7 +1233,6 @@
 	"This action cannot be undone. Do you wish to continue?": "Bu amalni ortga qaytarib bo‘lmaydi. Davom etishni xohlaysizmi?",
 	"This channel was created on {{createdAt}}. This is the very beginning of the {{channelName}} channel.": "Bu kanal {{createdAt}} da yaratilgan. Bu {{channelName}} kanalining boshlanishi.",
 	"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.": "Bu chat tarixda ko‘rinmaydi va xabarlaringiz saqlanmaydi.",
 	"This ensures that your valuable conversations are securely saved to your backend database. Thank you!": "Bu sizning qimmatli suhbatlaringiz ma'lumotlar bazasiga xavfsiz tarzda saqlanishini ta'minlaydi. Rahmat!",
 	"This is an experimental feature, it may not function as expected and is subject to change at any time.": "Bu eksperimental xususiyat bo'lib, u kutilganidek ishlamasligi va istalgan vaqtda o'zgarishi mumkin.",
 	"This model is not publicly available. Please select another model.": "Ushbu model hamma uchun ochiq emas. Iltimos, boshqa modelni tanlang.",

+ 1 - 1
src/lib/i18n/locales/vi-VN/translation.json

@@ -210,6 +210,7 @@
 	"Clone Chat": "Nhân bản Chat",
 	"Clone of {{TITLE}}": "Bản sao của {{TITLE}}",
 	"Close": "Đóng",
+	"Close Configure Connection Modal": "",
 	"Close modal": "",
 	"Close settings modal": "",
 	"Code execution": "Thực thi mã",
@@ -1232,7 +1233,6 @@
 	"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.": "Kênh này được tạo vào {{createdAt}}. Đây là điểm khởi đầu của kênh {{channelName}}.",
 	"This chat won't appear in history and your messages will not be saved.": "Cuộc trò chuyện này sẽ không xuất hiện trong lịch sử và tin nhắn của bạn sẽ không được lưu.",
-	"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 model is not publicly available. Please select another model.": "",

+ 48 - 48
src/lib/i18n/locales/zh-CN/translation.json

@@ -65,7 +65,7 @@
 	"Allow Chat Edit": "允许编辑对话记录",
 	"Allow Chat Export": "允许导出对话",
 	"Allow Chat Share": "允许分享对话",
-	"Allow Chat System Prompt": "",
+	"Allow Chat System Prompt": "允许使用对话系统提示词",
 	"Allow File Upload": "允许上传文件",
 	"Allow Multiple Models in Chat": "允许同时与多个模型对话",
 	"Allow non-local voices": "允许调用非本地音色",
@@ -101,7 +101,7 @@
 	"API Version": "API 版本",
 	"Application DN": "Application DN",
 	"Application DN Password": "Application DN 密码",
-	"applies to all users with the \"user\" role": "用于所有具有“用户”角色的用户",
+	"applies to all users with the \"user\" role": "用于所有具有 “用户” 角色的用户",
 	"April": "四月",
 	"Archive": "归档",
 	"Archive All Chats": "归档所有对话记录",
@@ -148,7 +148,7 @@
 	"before": "对话",
 	"Being lazy": "懒惰",
 	"Beta": "Beta",
-	"Bing Search V7 Endpoint": "Bing 搜索 V7 Endpoint",
+	"Bing Search V7 Endpoint": "Bing 搜索 V7 端点",
 	"Bing Search V7 Subscription Key": "Bing 搜索 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(包括两端)之间。(默认:无)",
@@ -210,6 +210,7 @@
 	"Clone Chat": "克隆对话",
 	"Clone of {{TITLE}}": "{{TITLE}} 的副本",
 	"Close": "关闭",
+	"Close Configure Connection Modal": "",
 	"Close modal": "关闭弹窗",
 	"Close settings modal": "关闭设置弹窗",
 	"Code execution": "代码执行",
@@ -244,7 +245,7 @@
 	"Connection Type": "连接类型",
 	"Connections": "外部连接",
 	"Connections saved successfully": "连接保存成功",
-	"Constrains effort on reasoning for reasoning models. Only applicable to reasoning models from specific providers that support reasoning effort.": "约束推理模型的推理努力程度。仅适用于支持推理努力控制的特定提供商的推理模型。",
+	"Constrains effort on reasoning for reasoning models. Only applicable to reasoning models from specific providers that support reasoning effort.": "限制推理模型的推理强度。仅适用于支持推理强度功能的特定提供商的推理模型。",
 	"Contact Admin for WebUI Access": "请联系管理员以获取访问权限",
 	"Content": "内容",
 	"Content Extraction Engine": "内容提取引擎",
@@ -252,7 +253,7 @@
 	"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 请求。“Punctuation”拆分为句子,“paragraphs”拆分为段落,“none”将消息保留为单个字符串。",
+	"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 请求。“Punctuation” 拆分为句子,“paragraphs” 拆分为段落,“none” 将消息保留为单个字符串。",
 	"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.": "控制输出文本中连贯性和多样性之间的平衡。较低的值将产生更加专注和连贯的文本。",
@@ -342,7 +343,7 @@
 	"Direct Connections settings updated": "直接连接设置已更新",
 	"Direct Tool Servers": "直接连接工具服务器",
 	"Disable Image Extraction": "禁用图像提取",
-	"Disable image extraction from the PDF. If Use LLM is enabled, images will be automatically captioned. Defaults to False.": "禁用从 PDF 中提取图像。若开启 '使用大语言模型(LLM)',图像将自动添加描述。默认为关闭",
+	"Disable image extraction from the PDF. If Use LLM is enabled, images will be automatically captioned. Defaults to False.": "禁用从 PDF 中提取图像。若启用 “使用大语言模型(LLM)”,图像将自动添加描述。默认为关闭",
 	"Disabled": "已禁用",
 	"Discover a function": "发现更多函数",
 	"Discover a model": "发现更多模型",
@@ -357,7 +358,7 @@
 	"Dismissible": "是否可关闭",
 	"Display": "显示",
 	"Display Emoji in Call": "在通话中显示 Emoji 表情符号",
-	"Display the username instead of You in the Chat": "在对话中显示用户名而不是“你”",
+	"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.": "切勿安装来源不完全可信的函数",
@@ -395,7 +396,7 @@
 	"e.g. pdf, docx, txt": "例如:pdf,docx,txt",
 	"e.g. Tools for performing various operations": "例如:用于执行各种操作的工具",
 	"e.g., 3, 4, 5 (leave blank for default)": "例如:3,4,5(留空使用默认值)",
-	"e.g., audio/wav,audio/mpeg (leave blank for defaults)": "",
+	"e.g., audio/wav,audio/mpeg (leave blank for defaults)": "例如:audio/wav,audio/mpeg(留空使用默认值)",
 	"e.g., en-US,ja-JP (leave blank for auto-detect)": "例如:en-US,ja-JP(留空则自动检测)",
 	"e.g., westus (leave blank for eastus)": "例如:westus(留空则默认为eastus)",
 	"e.g.) en,fr,de": "例如:en,fr,de",
@@ -447,7 +448,7 @@
 	"Enter CFG Scale (e.g. 7.0)": "输入 CFG Scale(例如:7.0)",
 	"Enter Chunk Overlap": "输入块重叠 (Chunk Overlap)",
 	"Enter Chunk Size": "输入块大小 (Chunk Size)",
-	"Enter comma-separated \"token:bias_value\" pairs (example: 5432:100, 413:-100)": "输入以逗号分隔的“token:bias_value”对(例如:5432:100, 413:-100)",
+	"Enter comma-separated \"token:bias_value\" pairs (example: 5432:100, 413:-100)": "输入以逗号分隔的 “token:bias_value” 对(例如:5432:100, 413:-100)",
 	"Enter Config in JSON format": "输入 JSON 格式的配置",
 	"Enter content for the pending user info overlay. Leave empty for default.": "输入用户待激活界面的内容。留空使用默认",
 	"Enter Datalab Marker API Key": "输入 Datalab Marker API 密钥",
@@ -489,7 +490,7 @@
 	"Enter Playwright Timeout": "输入 Playwright 超时时间",
 	"Enter Playwright WebSocket URL": "输入 Playwright WebSocket URL",
 	"Enter proxy URL (e.g. https://user:password@host:port)": "输入代理 URL(例如:https://用户名:密码@主机名:端口)",
-	"Enter reasoning effort": "设置推理努力",
+	"Enter reasoning effort": "设置推理强度",
 	"Enter Sampler (e.g. Euler a)": "输入 Sampler(例如:Euler a)",
 	"Enter Scheduler (e.g. Karras)": "输入 Scheduler(例如:Karras)",
 	"Enter Score": "输入评分",
@@ -593,7 +594,7 @@
 	"Features": "功能",
 	"Features Permissions": "功能权限",
 	"February": "二月",
-	"Feedback Details": "",
+	"Feedback Details": "反馈详情",
 	"Feedback History": "反馈历史",
 	"Feedbacks": "反馈",
 	"Feel free to add specific details": "欢迎补充具体细节",
@@ -614,7 +615,7 @@
 	"Firecrawl API Base URL": "Firecrawl API URL",
 	"Firecrawl API Key": "Firecrawl API 密钥",
 	"Fluidly stream large external response chunks": "流畅地传输外部大型响应块数据",
-	"Focus chat input": "聚焦对话输入",
+	"Focus chat input": "激活对话输入框",
 	"Folder deleted successfully": "分组删除成功",
 	"Folder name cannot be empty.": "分组名称不能为空",
 	"Folder name updated successfully": "分组名称更新成功。",
@@ -690,14 +691,14 @@
 	"Ignite curiosity": "点燃好奇心",
 	"Image": "图像生成",
 	"Image Compression": "图像压缩",
-	"Image Compression Height": "",
-	"Image Compression Width": "",
+	"Image Compression Height": "图片压缩高度",
+	"Image Compression Width": "图片压缩宽度",
 	"Image Generation": "图像生成",
 	"Image Generation (Experimental)": "图像生成(实验性)",
 	"Image Generation Engine": "图像生成引擎",
 	"Image Max Compression Size": "图像压缩后最大分辨率",
-	"Image Max Compression Size height": "",
-	"Image Max Compression Size width": "",
+	"Image Max Compression Size height": "图片最大压缩尺寸高度",
+	"Image Max Compression Size width": "图片最大压缩尺寸宽度",
 	"Image Prompt Generation": "图像提示词生成",
 	"Image Prompt Generation Prompt": "用于生成图像提示词的提示词",
 	"Image Settings": "图像设置",
@@ -724,9 +725,9 @@
 	"Instant Auto-Send After Voice Transcription": "语音转录文字后即时自动发送",
 	"Integration": "集成",
 	"Interface": "界面",
-	"Invalid file content": "无效的文件内容",
-	"Invalid file format.": "无效文件格式。",
-	"Invalid JSON file": "无效的 JSON 文件",
+	"Invalid file content": "文件内容无效",
+	"Invalid file format.": "文件格式无效",
+	"Invalid JSON file": "JSON 文件无效",
 	"Invalid Tag": "无效标签",
 	"is typing...": "输入中...",
 	"January": "一月",
@@ -765,8 +766,8 @@
 	"LDAP server updated": "LDAP 服务器已更新",
 	"Leaderboard": "排行榜",
 	"Learn more about OpenAPI tool servers.": "进一步了解 OpenAPI 工具服务器",
-	"Leave empty for no compression": "",
-	"Leave empty for unlimited": "留空表示无限制",
+	"Leave empty for no compression": "留空则不压缩",
+	"Leave empty for unlimited": "留空无限制",
 	"Leave empty to include all models from \"{{url}}\" endpoint": "留空以包含来自 \"{{url}}\" 端点的所有模型",
 	"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\" 端点的所有模型",
@@ -786,7 +787,7 @@
 	"Lost": "落败",
 	"LTR": "从左至右",
 	"Made by Open WebUI Community": "由 Open WebUI 社区制作",
-	"Make password visible in the user interface": "",
+	"Make password visible in the user interface": "在用户界面中显示密码",
 	"Make sure to enclose them with": "确保将它们包含在内",
 	"Make sure to export a workflow.json file as API format from ComfyUI.": "确保从 ComfyUI 导出 API 格式的 workflow.json 文件。",
 	"Manage": "管理",
@@ -908,8 +909,8 @@
 	"Ollama Version": "Ollama 版本",
 	"On": "开启",
 	"OneDrive": "OneDrive",
-	"Only active when \"Paste Large Text as File\" setting is toggled on.": "",
-	"Only active when the chat input is in focus and an LLM is generating a response.": "",
+	"Only active when \"Paste Large Text as File\" setting is toggled on.": "仅在启用 “粘贴大文本为文件” 功能时生效。",
+	"Only active when the chat input is in focus and an LLM is generating a response.": "仅在对话输入框激活且大语言模型正在生成回复时生效。",
 	"Only alphanumeric characters and hyphens are allowed": "只允许使用英文字母,数字 (0-9) 以及连字符 (-)",
 	"Only alphanumeric characters and hyphens are allowed in the command string.": "命令字符串中只允许使用英文字母,数字 (0-9) 以及连字符 (-)。",
 	"Only collections can be edited, create a new knowledge base to edit/add documents.": "只能编辑文件集,创建一个新的知识库来编辑/添加文件。",
@@ -990,7 +991,7 @@
 	"Positive attitude": "积极的态度",
 	"Prefix ID": "Prefix ID",
 	"Prefix ID is used to avoid conflicts with other connections by adding a prefix to the model IDs - leave empty to disable": "Prefix ID 用于通过为模型 ID 添加前缀来避免与其他连接发生冲突 - 留空则禁用此功能",
-	"Prevent file creation": "",
+	"Prevent file creation": "阻止文件创建",
 	"Preview": "预览",
 	"Previous 30 days": "过去 30 天",
 	"Previous 7 days": "过去 7 天",
@@ -1016,8 +1017,8 @@
 	"Re-rank models by topic similarity": "根据主题相似性对模型重新排序",
 	"Read": "只读",
 	"Read Aloud": "朗读",
-	"Reason": "",
-	"Reasoning Effort": "推理努力 (Reasoning Effort)",
+	"Reason": "原因",
+	"Reasoning Effort": "推理强度 (Reasoning Effort)",
 	"Record": "录制",
 	"Record voice": "录音",
 	"Redirecting you to Open WebUI Community": "正在将您重定向到 Open WebUI 社区",
@@ -1033,9 +1034,9 @@
 	"Relevance": "相关性",
 	"Relevance Threshold": "相关性阈值",
 	"Remove": "移除",
-	"Remove {{MODELID}} from list.": "",
+	"Remove {{MODELID}} from list.": "从列表中移除 {{MODELID}}",
 	"Remove Model": "移除模型",
-	"Remove this tag from list": "",
+	"Remove this tag from list": "从列表中移除此标签",
 	"Rename": "重命名",
 	"Reorder Models": "重新排序模型",
 	"Reply in Thread": "在主题中回复",
@@ -1111,7 +1112,7 @@
 	"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 }`。设置后,支持的供商会在响应中返回 Token 使用信息。",
+	"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 }`。设置后,支持的供商会在响应中返回 Token 使用信息。",
 	"September": "九月",
 	"SerpApi API Key": "SerpApi API 密钥",
 	"SerpApi Engine": "SerpApi 引擎",
@@ -1145,9 +1146,9 @@
 	"Share Chat": "分享对话",
 	"Share to Open WebUI Community": "分享到 Open WebUI 社区",
 	"Sharing Permissions": "共享权限",
-	"Shortcuts with an asterisk (*) are situational and only active under specific conditions.": "",
+	"Shortcuts with an asterisk (*) are situational and only active under specific conditions.": "带星号 (*) 的快捷键受场景限制,仅在特定条件下生效。",
 	"Show": "显示",
-	"Show \"What's New\" modal on login": "在登录时显示“更新内容”弹窗",
+	"Show \"What's New\" modal on login": "在登录时显示 “更新内容” 弹窗",
 	"Show Admin Details in Account Pending Overlay": "在用户待激活界面中显示管理员邮箱等详细信息",
 	"Show All": "显示全部",
 	"Show Less": "收起",
@@ -1161,7 +1162,7 @@
 	"Sign Out": "登出",
 	"Sign up": "注册",
 	"Sign up to {{WEBUI_NAME}}": "注册 {{WEBUI_NAME}}",
-	"Significantly improves accuracy by using an LLM to enhance tables, forms, inline math, and layout detection. Will increase latency. Defaults to True.": "通过使用大语言模型(LLM)增强表格、表单、行内公式和版面检测的处理能力,可显著提高准确性。但会增加延迟。默认为启",
+	"Significantly improves accuracy by using an LLM to enhance tables, forms, inline math, and layout detection. Will increase latency. Defaults to True.": "通过使用大语言模型(LLM)增强表格、表单、行内公式和版面检测的处理能力,可显著提高准确性。但会增加延迟。默认为启",
 	"Signing in to {{WEBUI_NAME}}": "正在登录 {{WEBUI_NAME}}",
 	"sk-1234": "sk-1234",
 	"Skip Cache": "跳过缓存",
@@ -1171,14 +1172,14 @@
 	"Source": "来源",
 	"Speech Playback Speed": "语音播放速度",
 	"Speech recognition error: {{error}}": "语音识别错误:{{error}}",
-	"Speech-to-Text": "",
+	"Speech-to-Text": "语音转文本",
 	"Speech-to-Text Engine": "语音转文本引擎",
 	"Stop": "停止",
-	"Stop Generating": "",
+	"Stop Generating": "停止生成",
 	"Stop Sequence": "停止序列 (Stop Sequence)",
 	"Stream Chat Response": "流式对话响应 (Stream Chat Response)",
 	"Strip Existing OCR": "清除现有 OCR 文本",
-	"Strip existing OCR text from the PDF and re-run OCR. Ignored if Force OCR is enabled. Defaults to False.": "清除 PDF 中现有的 OCR 文本并重新执行 OCR 识别。若开启 '强制 OCR 识别' 则此设置无效。默认为关闭",
+	"Strip existing OCR text from the PDF and re-run OCR. Ignored if Force OCR is enabled. Defaults to False.": "清除 PDF 中现有的 OCR 文本并重新执行 OCR 识别。若启用 “强制 OCR 识别” 则此设置无效。默认为关闭",
 	"STT Model": "语音转文本模型",
 	"STT Settings": "语音转文本设置",
 	"Stylized PDF Export": "风格化 PDF 导出",
@@ -1188,7 +1189,7 @@
 	"Suggested": "建议",
 	"Support": "支持",
 	"Support this plugin:": "支持此插件",
-	"Supported MIME Types": "",
+	"Supported MIME Types": "支持的 MIME 类型",
 	"Sync directory": "同步目录",
 	"System": "系统",
 	"System Instructions": "系统指令",
@@ -1207,7 +1208,7 @@
 	"Temperature": "温度 (Temperature)",
 	"Temporary Chat": "临时对话",
 	"Text Splitter": "文本分切器",
-	"Text-to-Speech": "",
+	"Text-to-Speech": "文本转语音",
 	"Text-to-Speech Engine": "文本转语音引擎",
 	"Thanks for your feedback!": "感谢您的反馈!",
 	"The Application Account DN you bind with for search": "您所绑定用于搜索的 Application Account DN",
@@ -1216,7 +1217,7 @@
 	"The developers behind this plugin are passionate volunteers from the community. If you find this plugin helpful, please consider contributing to its development.": "本插件的开发者是社区中充满热情的志愿者。如果此插件有帮助到您,请考虑为开发贡献一份力量。",
 	"The evaluation leaderboard is based on the Elo rating system and is updated in real-time.": "排行榜基于 Elo 评级系统并实时更新。",
 	"The format to return a response in. Format can be json or a JSON schema.": "响应返回格式。可为 json 或 JSON schema。",
-	"The height in pixels to compress images to. Leave empty for no compression.": "",
+	"The height in pixels to compress images to. Leave empty for no compression.": "图片压缩高度(像素)。留空则不压缩。",
 	"The language of the input audio. Supplying the input language in ISO-639-1 (e.g. en) format will improve accuracy and latency. Leave blank to automatically detect the language.": "输入音频的语言。以 ISO-639-1 格式(例如:en)指定输入语言可提高准确性和响应速度。留空则自动检测语言。",
 	"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 属性。",
@@ -1226,17 +1227,16 @@
 	"The output format for the text. Can be 'json', 'markdown', or 'html'. Defaults to 'markdown'.": "文本输出格式。可选 'json', 'markdown' 或 'html'。默认为 'markdown'。",
 	"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.": "模型的温度。增加温度将使模型的回答更有创意。",
-	"The width in pixels to compress images to. Leave empty for no compression.": "",
+	"The width in pixels to compress images to. Leave empty for no compression.": "图片压缩宽度(像素)。留空则不压缩。",
 	"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 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.": "此对话不会出现在历史记录中,且您的消息不会被保存",
 	"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 model is not publicly available. Please select another model.": "此模型未公开。请选择其他模型",
-	"This option controls how long the model will stay loaded into memory following the request (default: 5m)": "此选项控制模型请求后在内存中保持加载状态的时长(默认:5分钟)",
+	"This option controls how long the model will stay loaded into memory following the request (default: 5m)": "此选项控制模型请求后在内存中保持加载状态的时长(默认:5 分钟)",
 	"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。保留上下文有助于保持对话的连续性,但可能会降低响应新主题的能力。",
 	"This option enables or disables the use of the reasoning feature in Ollama, which allows the model to think before generating a response. When enabled, the model can take a moment to process the conversation context and generate a more thoughtful response.": "此选项用于启用或禁用 Ollama 的推理功能,该功能允许模型在生成响应前进行思考。启用后,模型需要花些时间处理对话上下文,从而生成更缜密的回复。",
 	"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.": "此项用于设置模型在其响应中可以生成的最大 Token 数。增加此限制可让模型提供更长的答案,但也可能增加生成无用或不相关内容的可能性。",
@@ -1264,18 +1264,18 @@
 	"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.": "请联系管理员以访问。管理员可以在后台管理面板中管理用户状态。",
-	"To attach knowledge base here, add them to the \"Knowledge\" workspace first.": "要在这里附加知识库,请先将其添加到工作空间中的“知识库”",
+	"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.": "为了保护您的隐私,只有评分、模型ID、标签和元数据会从您的反馈中分享——您的对话记录将保持私密,不会被包含在内。",
-	"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.": "要在这里选择工具包,请先将其添加到工作空间中的“工具”",
+	"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": "更新后弹窗提示更新内容",
 	"Today": "今天",
 	"Toggle search": "切换搜索",
 	"Toggle settings": "切换设置",
 	"Toggle sidebar": "切换侧边栏",
-	"Toggle whether current connection is active.": "",
+	"Toggle whether current connection is active.": "切换当前连接的启用状态",
 	"Token": "Token",
 	"Too verbose": "过于冗长",
 	"Tool created successfully": "工具创建成功",
@@ -1407,7 +1407,7 @@
 	"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.": "通过点击下方的“管理”按钮,你可以添加记忆,以个性化大语言模型的互动,使其更有用,更符合你的需求。",
+	"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 upload files.": "你没有上传文件的权限",
 	"You have no archived conversations.": "没有已归档的对话",

+ 1 - 1
src/lib/i18n/locales/zh-TW/translation.json

@@ -210,6 +210,7 @@
 	"Clone Chat": "複製對話",
 	"Clone of {{TITLE}}": "{{TITLE}} 的副本",
 	"Close": "關閉",
+	"Close Configure Connection Modal": "",
 	"Close modal": "",
 	"Close settings modal": "",
 	"Code execution": "程式碼執行",
@@ -1232,7 +1233,6 @@
 	"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 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 model is not publicly available. Please select another model.": "此模型未開放公眾使用,請選擇其他模型。",

+ 41 - 1
src/lib/stores/index.ts

@@ -135,6 +135,42 @@ type OllamaModelDetails = {
 };
 
 type Settings = {
+	pinnedModels?: never[];
+	toolServers?: never[];
+	detectArtifacts?: boolean;
+	showUpdateToast?: boolean;
+	showChangelog?: boolean;
+	showEmojiInCall?: boolean;
+	voiceInterruption?: boolean;
+	collapseCodeBlocks?: boolean;
+	expandDetails?: boolean;
+	notificationSound?: boolean;
+	notificationSoundAlways?: boolean;
+	stylizedPdfExport?: boolean;
+	notifications?: any;
+	imageCompression?: boolean;
+	imageCompressionSize?: any;
+	widescreenMode?: null;
+	largeTextAsFile?: boolean;
+	promptAutocomplete?: boolean;
+	hapticFeedback?: boolean;
+	responseAutoCopy?: any;
+	richTextInput?: boolean;
+	params?: any;
+	userLocation?: any;
+	webSearch?: boolean;
+	memory?: boolean;
+	autoTags?: boolean;
+	autoFollowUps?: boolean;
+	splitLargeChunks?(body: any, splitLargeChunks: any): unknown;
+	backgroundImageUrl?: null;
+	landingPageMode?: string;
+	iframeSandboxAllowForms?: boolean;
+	iframeSandboxAllowSameOrigin?: boolean;
+	scrollOnBranchChange?: boolean;
+	directConnections?: null;
+	chatBubble?: boolean;
+	copyFormatted?: boolean;
 	models?: string[];
 	conversationMode?: boolean;
 	speechAutoSend?: boolean;
@@ -145,7 +181,7 @@ type Settings = {
 	highContrastMode?: boolean;
 	title?: TitleSettings;
 	splitLargeDeltas?: boolean;
-	chatDirection: 'LTR' | 'RTL' | 'auto';
+	chatDirection?: 'LTR' | 'RTL' | 'auto';
 	ctrlEnterToSend?: boolean;
 
 	system?: string;
@@ -165,6 +201,8 @@ type ModelOptions = {
 };
 
 type AudioSettings = {
+	stt: any;
+	tts: any;
 	STTEngine?: string;
 	TTSEngine?: string;
 	speaker?: string;
@@ -195,6 +233,7 @@ type Document = {
 };
 
 type Config = {
+	license_metadata: any;
 	status: boolean;
 	name: string;
 	version: string;
@@ -234,6 +273,7 @@ type PromptSuggestion = {
 };
 
 type SessionUser = {
+	permissions: any;
 	id: string;
 	email: string;
 	name: string;

+ 1 - 1
src/lib/utils/index.ts

@@ -83,9 +83,9 @@ export const sanitizeResponseContent = (content: string) => {
 		.replace(/<\|[a-z]*$/, '')
 		.replace(/<\|[a-z]+\|$/, '')
 		.replace(/<$/, '')
-		.replaceAll(/<\|[a-z]+\|>/g, ' ')
 		.replaceAll('<', '&lt;')
 		.replaceAll('>', '&gt;')
+		.replaceAll(/<\|[a-z]+\|>/g, ' ')
 		.trim();
 };
 

+ 1 - 3
src/routes/(app)/+layout.svelte

@@ -78,9 +78,7 @@
 				// IndexedDB Not Found
 			}
 
-			const chatInputKeys = Object.keys(localStorage).filter((key) =>
-				key.startsWith('chat-input-')
-			);
+			const chatInputKeys = Object.keys(localStorage).filter((key) => key.startsWith('chat-input'));
 			if (chatInputKeys.length > 0) {
 				chatInputKeys.forEach((key) => {
 					localStorage.removeItem(key);

Some files were not shown because too many files changed in this diff