From 13e7a3dee9e5df16ea639b1357026541436b6b08 Mon Sep 17 00:00:00 2001 From: Yeyeong Cho Date: Fri, 9 May 2025 17:54:50 +0900 Subject: [PATCH 001/100] fix:add missing Korean translation strings Fixes mini-777/8dobibim#1 --- src/lib/i18n/locales/ko-KR/translation.json | 894 ++++++++++---------- 1 file changed, 447 insertions(+), 447 deletions(-) diff --git a/src/lib/i18n/locales/ko-KR/translation.json b/src/lib/i18n/locales/ko-KR/translation.json index f59326035..55bed1768 100644 --- a/src/lib/i18n/locales/ko-KR/translation.json +++ b/src/lib/i18n/locales/ko-KR/translation.json @@ -1,32 +1,32 @@ { - "-1 for no limit, or a positive integer for a specific limit": "", - "'s', 'm', 'h', 'd', 'w' or '-1' for no expiration.": "만료 없음은 's', 'm', 'h', 'd', 'w' 아니면 '-1' 중 하나를 사용하세요.", + "-1 for no limit, or a positive integer for a specific limit": "제한 없음은 -1,, 특정 한계를 두려면 양의 정수를 입력하세요", + "'s', 'm', 'h', 'd', 'w' or '-1' for no expiration.": "만료되지 않도록 하려면 '-1', 그 외에는 's', 'm', 'h', 'd', 'w' 단위를를 사용하세요.", "(e.g. `sh webui.sh --api --api-auth username_password`)": "(예: `sh webui.sh --api --api-auth 사용자이름_비밀번호`)", "(e.g. `sh webui.sh --api`)": "(예: `sh webui.sh --api`)", - "(latest)": "(최근)", - "(Ollama)": "", + "(latest)": "(최신)", + "(Ollama)": "(Ollama)", "{{ models }}": "{{ models }}", - "{{COUNT}} Available Tools": "", - "{{COUNT}} hidden lines": "", - "{{COUNT}} Replies": "", + "{{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}})이 가능합니다", + "*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": "", + "Accept autocomplete generation / Jump to prompt variable": "자동 완성 생성 수락 / 프롬프트 변수로 이동", "Access": "접근", "Access Control": "접근 제어", - "Accessible to all users": "모든 사용자가 접근 가능", + "Accessible to all users": "모든 사용자가 이용할 수 있음", "Account": "계정", "Account Activation Pending": "계정 활성화 대기", "Accurate information": "정확한 정보", - "Actions": "행동", - "Activate": "", - "Activate this command by typing \"/{{COMMAND}}\" to chat input.": "채팅에서 \"{{COMMAND}}\"을 입력하여 이 명령을 활성화할 수 있습니다.", - "Active Users": "활성 사용자", + "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": "모델의 기능에 대한 간단한 설명 추가", @@ -46,7 +46,7 @@ "Add text content": "글 추가", "Add User": "사용자 추가", "Add User Group": "사용자 그룹 추가", - "Adjusting these settings will apply changes universally to all users.": "위와 같이 설정시 모든 사용자에게 적용됩니다.", + "Adjusting these settings will apply changes universally to all users.": "이 설정을 변경하면 모든 사용자에게 동일하게 적용됩니다.", "admin": "관리자", "Admin": "관리자", "Admin Panel": "관리자 패널", @@ -54,70 +54,70 @@ "Admins have access to all tools at all times; users need tools assigned per model in the workspace.": "관리자는 항상 모든 도구에 접근할 수 있지만, 사용자는 워크스페이스에서 모델마다 도구를 할당받아야 합니다.", "Advanced Parameters": "고급 매개변수", "Advanced Params": "고급 매개변수", - "All": "", + "All": "전체", "All Documents": "모든 문서", "All models deleted successfully": "성공적으로 모든 모델이 삭제되었습니다", - "Allow Call": "", + "Allow Call": "음성 통화 허용", "Allow Chat Controls": "채팅 제어 허용", "Allow Chat Delete": "채팅 삭제 허용", "Allow Chat Deletion": "채팅 삭제 허용", "Allow Chat Edit": "채팅 수정 허용", "Allow File Upload": "파일 업로드 허용", - "Allow Multiple Models in Chat": "", + "Allow Multiple Models in Chat": "채팅에서 여러 모델 사용 허용", "Allow non-local voices": "외부 음성 허용", - "Allow Speech to Text": "", + "Allow Speech to Text": "음성-텍스트 변환 허용", "Allow Temporary Chat": "임시 채팅 허용", - "Allow Text to Speech": "", + "Allow Text to Speech": "텍스트-음성 변환 허용", "Allow User Location": "사용자 위치 활용 허용", "Allow Voice Interruption in Call": "음성 기능에서 음성 방해 허용", - "Allowed Endpoints": "", + "Allowed Endpoints": "허용된 Endpoints", "Already have an account?": "이미 계정이 있으신가요?", - "Alternative to the top_p, and aims to ensure a balance of quality and variety. The parameter p represents the minimum probability for a token to be considered, relative to the probability of the most likely token. For example, with p=0.05 and the most likely token having a probability of 0.9, logits with a value less than 0.045 are filtered out.": "", - "Always": "", - "Always Collapse Code Blocks": "", - "Always Expand Details": "", - "Amazing": "놀라움", + "Alternative to the top_p, and aims to ensure a balance of quality and variety. The parameter p represents the minimum probability for a token to be considered, relative to the probability of the most likely token. For example, with p=0.05 and the most likely token having a probability of 0.9, logits with a value less than 0.045 are filtered out.": "top_p의 대안으로, 품질과 다양성의 균형을 보장하는 것을 목표로 합니다. 매개변수 p는 토큰이 고려될 최소 확률을 가장 가능성이 높은 토큰의 확률에 대해 나타냅니다. 예를 들어, p=0.05이고 가장 가능성이 높은 토큰이 0.9인 경우, 값이 0.045 미만인 로짓은 필터링됩니다.", + "Always": "항상", + "Always Collapse Code Blocks": "항상 코드 블록 접기", + "Always Expand Details": "항상 세부 정보 펼치기", + "Amazing": "훌륭함", "an assistant": "어시스턴트", - "Analyzed": "", - "Analyzing...": "", + "Analyzed": "분석 완료", + "Analyzing...": "분석 중...", "and": "그리고", "and {{COUNT}} more": "그리고 {{COUNT}} 더", "and create a new shared link.": "새로운 공유 링크를 생성합니다.", - "Android": "", + "Android": "안드로이드드", "API Base URL": "API 기본 URL", "API Key": "API 키", "API Key created.": "API 키가 생성되었습니다.", "API Key Endpoint Restrictions": "API 키 엔드포인트 제한", "API keys": "API 키", - "Application DN": "", - "Application DN Password": "", + "Application DN": "Application DN", + "Application DN Password": "Application DN 비밀번호", "applies to all users with the \"user\" role": "\"사용자\" 권한의 모든 사용자에게 적용됩니다", "April": "4월", "Archive": "보관", "Archive All Chats": "모든 채팅 보관", "Archived Chats": "보관된 채팅", - "archived-chat-export": "", - "Are you sure you want to clear all memories? This action cannot be undone.": "", + "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 Models": "Arena 모델", "Artifacts": "아티팩트", - "Ask": "", + "Ask": "질문문", "Ask a question": "질문하기", "Assistant": "어시스턴트", - "Attach file from knowledge": "", + "Attach file from knowledge": "지식에서 파일 첨부", "Attention to detail": "세부 사항에 대한 주의", - "Attribute for Mail": "", - "Attribute for Username": "", + "Attribute for Mail": "메일 속성", + "Attribute for Username": "사용자 이름 속성", "Audio": "오디오", "August": "8월", - "Auth": "", - "Authenticate": "", - "Authentication": "", - "Auto": "", - "Auto-Copy Response to Clipboard": "응답을 클립보드에 자동 복사", + "Auth": "인증", + "Authenticate": "인증", + "Authentication": "인증", + "Auto": "자동", + "Auto-Copy Response to Clipboard": "응답을 자동으로 클립보드에 복사", "Auto-playback response": "응답 자동 재생", "Autocomplete Generation": "자동완성 생성", "Autocomplete Generation Input Max Length": "자동완성 생성 입력 최대 길이", @@ -125,41 +125,41 @@ "AUTOMATIC1111 Api Auth String": "Automatic1111 API 인증 문자", "AUTOMATIC1111 Base URL": "AUTOMATIC1111 기본 URL", "AUTOMATIC1111 Base URL is required.": "AUTOMATIC1111 기본 URL 설정이 필요합니다.", - "Available list": "가능한 목록", - "Available Tools": "", - "available!": "사용 가능!", - "Awful": "끔찍함", + "Available list": "사용 가능한 목록", + "Available Tools": "사용 가능한 도구", + "available!": "사용 가능합니다!", + "Awful": "형편없음", "Azure AI Speech": "Azure AI 음성", "Azure Region": "Azure 지역", - "Back": "뒤로가기", + "Back": "뒤로", "Bad Response": "잘못된 응답", "Banners": "배너", "Base Model (From)": "기본 모델(시작)", "Batch Size (num_batch)": "배치 크기 (num_batch)", "before": "이전", "Being lazy": "게으름 피우기", - "Beta": "", + "Beta": "베타", "Bing Search V7 Endpoint": "Bing Search V7 엔드포인트", "Bing Search V7 Subscription Key": "Bing Search V7 구독 키", - "Bocha Search API Key": "", - "Boosting or penalizing specific tokens for constrained responses. Bias values will be clamped between -100 and 100 (inclusive). (Default: none)": "", + "Bocha Search API Key": "Bocha Search API 키", + "Boosting or penalizing specific tokens for constrained responses. Bias values will be clamped between -100 and 100 (inclusive). (Default: none)": "특정 토큰을 가중 상향/하향하여 응답을 제약합니다. 값은 -100 ~ 100(기본값: 없음)", "Brave Search API Key": "Brave Search API 키", - "By {{name}}": "", - "Bypass Embedding and Retrieval": "", - "Calendar": "", + "By {{name}}": "{{name}}에 의해", + "Bypass Embedding and Retrieval": "우회 임베딩 및 검색", + "Calendar": "캘린더", "Call": "음성 기능", "Call feature is not supported when using Web STT engine": "웹 STT 엔진 사용 시, 음성 기능은 지원되지 않습니다.", "Camera": "카메라", "Cancel": "취소", "Capabilities": "기능", - "Capture": "", - "Certificate Path": "", + "Capture": "캡처", + "Certificate Path": "인증서 경로", "Change Password": "비밀번호 변경", - "Channel Name": "", + "Channel Name": "채널 이름", "Channels": "채널", - "Character": "캐릭터", - "Character limit for autocomplete generation input": "", - "Chart new frontiers": "", + "Character": "문자", + "Character limit for autocomplete generation input": "자동 완성 생성 입력에 대한 문자 제한", + "Chart new frontiers": "새 경계 차트 작성", "Chat": "채팅", "Chat Background Image": "채팅 배경 이미지", "Chat Bubble UI": "버블형 채팅 UI", @@ -175,39 +175,39 @@ "Choose a model before saving...": "저장하기 전에 모델을 선택하세요...", "Chunk Overlap": "Chunk 오버랩", "Chunk Size": "Chunk 크기", - "Ciphers": "", + "Ciphers": "암호", "Citation": "인용", "Clear memory": "메모리 초기화", - "Clear Memory": "", - "click here": "", - "Click here for filter guides.": "", + "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.": "빠른 속삭임에 대해 배우거나 가능한 모델을 보려면 여기를 클릭하세요", - "Click here to see available models.": "", + "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.": "클립보드 사용 권한이 거절되었습니다. 필요한 접근을 사용하기 위해 브라우져 설정을 확인 부탁드립니다.", + "Clipboard write permission denied. Please check your browser settings to grant the necessary access.": "클립보드 쓰기 권한이 거부되었습니다. 브라우저 설정에서 권한을 허용해주세요.", "Clone": "복제", - "Clone Chat": "", - "Clone of {{TITLE}}": "", + "Clone Chat": "채팅 복제", + "Clone of {{TITLE}}": "{{TITLE}}의 복제", "Close": "닫기", "Code execution": "코드 실행", - "Code Execution": "", - "Code Execution Engine": "", - "Code Execution Timeout": "", + "Code Execution": "코드 실행", + "Code Execution Engine": "코드 실행 엔진", + "Code Execution Timeout": "코드 실행 시간 초과", "Code formatted successfully": "성공적으로 코드가 생성되었습니다", - "Code Interpreter": "", - "Code Interpreter Engine": "", - "Code Interpreter Prompt Template": "", - "Collapse": "", + "Code Interpreter": "코드 인터프리터", + "Code Interpreter Engine": "코드 인터프리터 엔진", + "Code Interpreter Prompt Template": "코드 인터프리터 프롬프트 템플릿", + "Collapse": "접기", "Collection": "컬렉션", - "Color": "", + "Color": "색상", "ComfyUI": "ComfyUI", "ComfyUI API Key": "", "ComfyUI Base URL": "ComfyUI 기본 URL", @@ -217,41 +217,41 @@ "Command": "명령", "Completions": "완성됨", "Concurrent Requests": "동시 요청 수", - "Configure": "", + "Configure": "설정", "Confirm": "확인", "Confirm Password": "비밀번호 확인", "Confirm your action": "액션 확인", "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": "", + "Connect to your own OpenAI compatible API endpoints.": "자신의 OpenAI 호환 API 엔드포인트에 연결합니다.", + "Connect to your own OpenAPI compatible external tool servers.": "자신의 OpenAPI 호환 외부 도구 서버에 연결하세요.", + "Connection failed": "연결 실패", + "Connection successful": "연결 성공", "Connections": "연결", - "Connections saved successfully": "", - "Constrains effort on reasoning for reasoning models. Only applicable to reasoning models from specific providers that support reasoning effort.": "", + "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": "", + "Content Extraction Engine": "콘텐츠 추출 엔진", "Context Length": "내용 길이", - "Continue Response": "대화 계속", + "Continue Response": "응답 이어 받기", "Continue with {{provider}}": "{{provider}}로 계속", - "Continue with Email": "", - "Continue with LDAP": "", + "Continue with Email": "이메일로 계속", + "Continue with LDAP": "LDAP로 계속", "Control how message text is split for TTS requests. 'Punctuation' splits into sentences, 'paragraphs' splits into paragraphs, and 'none' keeps the message as a single string.": "TTS 요청에 메시지가 어떻게 나뉘어지는지 제어하십시오. '문장 부호'는 문장으로 나뉘고, '문단'은 문단으로 나뉘고, '없음'은 메세지를 하나의 문자열로 인식합니다.", - "Control the repetition of token sequences in the generated text. A higher value (e.g., 1.5) will penalize repetitions more strongly, while a lower value (e.g., 1.1) will be more lenient. At 1, it is disabled.": "", + "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.": "", + "Controls the balance between coherence and diversity of the output. A lower value will result in more focused and coherent text.": "출력의 일관성과 다양성 사이의 균형을 조절합니다. 값이 낮을수록 텍스트에 더 집중하고 일관성이 높아집니다.", "Copied": "복사됨", "Copied shared chat URL to clipboard!": "채팅 공유 URL이 클립보드에 복사되었습니다!", "Copied to clipboard": "클립보드에 복사되었습니다", "Copy": "복사", - "Copy Formatted Text": "", + "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.": "", + "CORS must be properly configured by the provider to allow requests from Open WebUI.": "CORS는 Open WebUI의 요청을 허용하도록 공급자가 적절하게 구성해야 합니다.", "Create": "생성", "Create a knowledge base": "지식 기반 생성", "Create a model": "모델 생성", @@ -266,27 +266,27 @@ "Created At": "생성일", "Created by": "생성자", "CSV Import": "CSV 가져오기", - "Ctrl+Enter to Send": "", + "Ctrl+Enter to Send": "전송을 위해서 Ctrl+Enter를 하십시오.", "Current Model": "현재 모델", "Current Password": "현재 비밀번호", "Custom": "사용자 정의", - "Danger Zone": "", + "Danger Zone": "위험 구역", "Dark": "다크", "Database": "데이터베이스", "December": "12월", "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 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": "", - "Default to ALL": "", - "Default to segmented retrieval for focused and relevant content extraction, this is recommended for most cases.": "", + "Default to 389 or 636 if TLS is enabled": "TLS가 활성화된 경우 기본값은 389 또는 636입니다", + "Default to ALL": "기본값: 전체", + "Default to segmented retrieval for focused and relevant content extraction, this is recommended for most cases.": "집중적이고 관련성 있는 콘텐츠 추출을 위해 세분화된 검색을 기본으로 하며, 대부분의 경우에 권장됩니다.", "Default User Role": "기본 사용자 역할", "Delete": "삭제", "Delete a model": "모델 삭제", @@ -294,11 +294,11 @@ "Delete All Models": "모든 모델 삭제", "Delete chat": "채팅 삭제", "Delete Chat": "채팅 삭제", - "Delete chat?": "채팅을 삭제하겠습니까?", + "Delete chat?": "채팅을 삭제하시겠습니까?", "Delete folder?": "폴더를 삭제하시겠습니까?", "Delete function?": "함수를 삭제하시겠습니까?", - "Delete Message": "", - "Delete message?": "", + "Delete Message": "메세지 삭제", + "Delete message?": "메세지 삭제", "Delete prompt?": "프롬프트를 삭제하시겠습니까?", "delete this link": "이 링크를 삭제합니다.", "Delete tool?": "도구를 삭제하시겠습니까?", @@ -308,197 +308,197 @@ "Deleted User": "삭제된 사용자", "Describe your knowledge base and objectives": "지식 기반에 대한 설명과 목적을 입력하세요", "Description": "설명", - "Detect Artifacts Automatically": "", + "Detect Artifacts Automatically": "Artifact 자동 감지", "Didn't fully follow instructions": "완전히 지침을 따르지 않음", - "Direct": "", - "Direct Connections": "", - "Direct Connections allow users to connect to their own OpenAI compatible API endpoints.": "", - "Direct Connections settings updated": "", - "Direct Tool Servers": "", + "Direct": "직접", + "Direct Connections": "직접 연결", + "Direct Connections allow users to connect to their own OpenAI compatible API endpoints.": "직접 연결을 통해 사용자는 자신의 OpenAI 호환 API endpoint에 연결할 수 있습니다.", + "Direct Connections settings updated": "직접 연결 세팅이 업데이트되었습니다.", + "Direct Tool Servers": "Direct Tools 서버", "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.": "", - "Discover wonders": "", + "Discover a tool": "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": "표시", "Display Emoji in Call": "음성기능에서 이모지 표시", "Display the username instead of You in the Chat": "채팅에서 '당신' 대신 사용자 이름 표시", - "Displays citations in the response": "", - "Dive into knowledge": "", + "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 Server URL required.": "", + "Docling": "도킹", + "Docling Server URL required.": "도킹 서버 URL이 필요합니다.", "Document": "문서", - "Document Intelligence": "", - "Document Intelligence endpoint and key required.": "", + "Document Intelligence": "문서 정보", + "Document Intelligence endpoint and key required.": "문서 정보 endpoint와 키가 필요합니다.", "Documentation": "문서 조사", "Documents": "문서", "does not make any external connections, and your data stays securely on your locally hosted server.": "외부와 어떠한 연결도 하지 않으며, 데이터는 로컬에서 호스팅되는 서버에 안전하게 유지됩니다.", - "Domain Filter List": "", + "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": "", + "Download as SVG": "SVG로 다운로드", "Download canceled": "다운로드 취소", "Download Database": "데이터베이스 다운로드", - "Drag and drop a file to upload or select a file to view": "", + "Drag and drop a file to upload or select a file to view": "업로드할 파일을 Drag&Drop 하거나 볼 파일을 선택합니다", "Draw": "그리기", - "Drop any files here to add to the conversation": "대화에 추가할 파일을 여기에 드롭하세요.", + "Drop any files here to add to the conversation": "대화에 추가할 파일을 여기에 Drop하세요.", "e.g. '30s','10m'. Valid time units are 's', 'm', 'h'.": "예: '30초','10분'. 유효한 시간 단위는 '초', '분', '시'입니다.", - "e.g. \"json\" or a JSON schema": "", - "e.g. 60": "", - "e.g. A filter to remove profanity from text": "", - "e.g. My Filter": "", - "e.g. My Tools": "", - "e.g. my_filter": "", - "e.g. my_tools": "", - "e.g. Tools for performing various operations": "", - "e.g., en-US,ja-JP (leave blank for auto-detect)": "", + "e.g. \"json\" or a JSON schema": "예: \"json\" 또는 JSON schema", + "e.g. 60": "예: 60", + "e.g. A filter to remove profanity from text": "예: 텍스트에서 욕설을 제거하는 필터", + "e.g. My Filter": "예: 내 필터", + "e.g. My Tools": "예: 내 Tools", + "e.g. my_filter": "예: 내 필터", + "e.g. my_tools": "예: 내 Tools", + "e.g. Tools for performing various operations": "예: 다양한 작업을 수행하는 도구", + "e.g., en-US,ja-JP (leave blank for auto-detect)": "예: en-US,ja-JP(자동 감지를 위해 공백으로 두십시오)", "Edit": "편집", - "Edit Arena Model": "아레나 모델 편집", - "Edit Channel": "", - "Edit Connection": "", - "Edit Default Permissions": "", + "Edit Arena Model": "Arena 모델 편집", + "Edit Channel": "채널 편집", + "Edit Connection": "채널 연결", + "Edit Default Permissions": "기본 권한 편집", "Edit Memory": "메모리 편집", "Edit User": "사용자 편집", - "Edit User Group": "", + "Edit User Group": "사용자 그룹 편집", "ElevenLabs": "ElevenLabs", "Email": "이메일", - "Embark on adventures": "", - "Embedding": "", + "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 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.": "", - "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.": "", + "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에서 스왑되지 않도록 합니다. 이 옵션은 모델의 작동하는 페이지 세트를 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.": "메모리 매핑(mm맵)을 활성화하여 모델 데이터를 로드합니다. 이 옵션을 사용하면 시스템이 디스크 파일을 RAM에 있는 것처럼 취급하여 디스크 스토리지를 RAM의 확장자로 사용할 수 있습니다. 이렇게 하면 더 빠른 데이터 액세스를 허용하여 모델 성능을 향상시킬 수 있습니다. 그러나 모든 시스템에서 올바르게 작동하지 않을 수 있으며 상당한 양의 디스크 공간을 소비할 수 있습니다.", "Enable Message Rating": "메시지 평가 활성화", - "Enable Mirostat sampling for controlling perplexity.": "", + "Enable Mirostat sampling for controlling perplexity.": "Mirostat 샘플링을 활성화하여 당혹감을 조절합니다.", "Enable New Sign Ups": "새 회원가입 활성화", "Enabled": "활성화됨", - "Enforce Temporary Chat": "", + "Enforce Temporary Chat": "임시 채팅 적용", "Ensure your CSV file includes 4 columns in this order: Name, Email, Password, Role.": "CSV 파일에 이름, 이메일, 비밀번호, 역할 4개의 열이 순서대로 포함되어 있는지 확인하세요.", "Enter {{role}} message here": "여기에 {{role}} 메시지 입력", "Enter a detail about yourself for your LLMs to recall": "자신에 대한 세부사항을 입력하여 LLM들이 기억할 수 있도록 하세요.", "Enter api auth string (e.g. username:password)": "API 인증 문자 입력 (예: 사용자 이름:비밀번호)", - "Enter Application DN": "", - "Enter Application DN Password": "", - "Enter Bing Search V7 Endpoint": "Bing Search V7 엔드포인트 입력", + "Enter Application DN": "애플리케이션 DN 입력", + "Enter Application DN Password": "애플리케이션 DN 비밀번호 입력", + "Enter Bing Search V7 Endpoint": "Bing Search V7 endpoint 입력", "Enter Bing Search V7 Subscription Key": "Bing Search V7 구독 키 입력", - "Enter Bocha Search API Key": "", + "Enter Bocha Search API Key": "Bocha Search API Key 입력", "Enter Brave Search API Key": "Brave Search API Key 입력", - "Enter certificate path": "", + "Enter certificate path": "인증서 경로 입력", "Enter CFG Scale (e.g. 7.0)": "CFG Scale 입력 (예: 7.0)", "Enter Chunk Overlap": "청크 오버랩 입력", "Enter Chunk Size": "청크 크기 입력", - "Enter comma-seperated \"token:bias_value\" pairs (example: 5432:100, 413:-100)": "", + "Enter comma-seperated \"token:bias_value\" pairs (example: 5432:100, 413:-100)": "쉼표로 구분된 \"token:bias_value\" 쌍을 입력합니다(예: 5432:100, 413:-100)", "Enter description": "설명 입력", - "Enter Docling Server URL": "", - "Enter Document Intelligence Endpoint": "", - "Enter Document Intelligence Key": "", - "Enter domains separated by commas (e.g., example.com,site.org)": "", - "Enter Exa API Key": "", - "Enter Firecrawl API Base URL": "", - "Enter Firecrawl API Key": "", + "Enter Docling Server URL": "문서 서버 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 Firecrawl API Base URL": "Firecrawl API 기본 URL 입력", + "Enter Firecrawl API Key": "Firecroll API Key 입력", "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": "", - "Enter Jupyter Token": "", - "Enter Jupyter URL": "", + "Enter Jupyter Password": "Jupyter 비밀번호 입력", + "Enter Jupyter Token": "Jupyter 토큰 입력", + "Enter Jupyter URL": "Jupyter URL 입력", "Enter Kagi Search API Key": "Kagi Search API 키 입력", - "Enter Key Behavior": "", + "Enter Key Behavior": "키 동작 입력", "Enter language codes": "언어 코드 입력", - "Enter Mistral API Key": "", + "Enter Mistral API Key": "Mistrial API 키 입력", "Enter Model ID": "모델 ID 입력", "Enter model tag (e.g. {{modelTag}})": "모델 태그 입력(예: {{modelTag}})", "Enter Mojeek Search API Key": "Mojeek Search API 키 입력", "Enter Number of Steps (e.g. 50)": "단계 수 입력(예: 50)", - "Enter Perplexity API Key": "", - "Enter Playwright Timeout": "", - "Enter Playwright WebSocket URL": "", + "Enter Perplexity API Key": "Perplexity API 키 입력", + "Enter Playwright Timeout": "Playwright 타임아웃 입력", + "Enter Playwright WebSocket URL": "Playwright 웹소켓 URL 입력", "Enter proxy URL (e.g. https://user:password@host:port)": "프록시 URL 입력(예: https://user:password@host:port)", - "Enter reasoning effort": "", + "Enter reasoning effort": "추론 노력 입력", "Enter Sampler (e.g. Euler a)": "샘플러 입력 (예: 오일러 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": "", - "Enter SerpApi Engine": "", + "Enter Seed": "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": "", - "Enter Sougou Search API SK": "", + "Enter server host": "서버 호스트 입력", + "Enter server label": "서버 레이블 입력", + "Enter server port": "서버 포트 입력", + "Enter Sougou Search API sID": "Sougou Search API sID 입력", + "Enter Sougou Search API SK": "Sougou Search API SK 입력", "Enter stop sequence": "중지 시퀀스 입력", "Enter system prompt": "시스템 프롬프트 입력", - "Enter system prompt here": "", + "Enter system prompt here": "여기에 시스템 프롬프트 입력", "Enter Tavily API Key": "Tavily API 키 입력", - "Enter Tavily Extract Depth": "", + "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 Tika Server URL": "Tika 서버 URL 입력", - "Enter timeout in seconds": "", - "Enter to Send": "", + "Enter timeout in seconds": "시간 초과 입력 시간(초)", + "Enter to Send": "보내기 위해 입력", "Enter Top K": "Top K 입력", - "Enter Top K Reranker": "", + "Enter Top K Reranker": "Top K Reranker 입력", "Enter URL (e.g. http://127.0.0.1:7860/)": "URL 입력(예: http://127.0.0.1:7860/)", "Enter URL (e.g. http://localhost:11434)": "URL 입력(예: http://localhost:11434)", "Enter your current password": "현재 비밀번호를 입력해 주세요", "Enter Your Email": "이메일 입력", - "Enter Your Full Name": "이름 입력", + "Enter Your 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 Username": "사용자 이름 입력", "Enter your webhook URL": "웹훅 URL을 입력해 주세요", "Error": "오류", "ERROR": "오류", - "Error accessing Google Drive: {{error}}": "", - "Error uploading file: {{error}}": "", + "Error accessing Google Drive: {{error}}": "Google 드라이브에 액세스하는 동안 오류 발생: {{error}}", + "Error uploading file: {{error}}": "파일 업로드 에러: {{error}}", "Evaluations": "평가", - "Exa API Key": "", - "Example: (&(objectClass=inetOrgPerson)(uid=%s))": "", - "Example: ALL": "", - "Example: mail": "", - "Example: ou=users,dc=foo,dc=example": "", - "Example: sAMAccountName or uid or userPrincipalName": "", - "Exceeded the number of seats in your license. Please contact support to increase the number of seats.": "", + "Exa API Key": "Exa API 키", + "Example: (&(objectClass=inetOrgPerson)(uid=%s))": "예: (&(objectClass=inetOrgPerson)(uid=%s))", + "Example: ALL": "예: 전체", + "Example: mail": "예: 메일", + "Example: ou=users,dc=foo,dc=example": "예: ou=users,dc=foo,dc=example", + "Example: sAMAccountName or uid or userPrincipalName": "예: sAMAccountName or uid or 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}}**...": "", - "Expand": "", + "Execute code for analysis": "분석을 위한 코드 실행", + "Executing **{{NAME}}**...": "**{{NAME}}** 실행 중...", + "Expand": "확장", "Experimental": "실험적", - "Explain": "", - "Explain this section to me in more detail": "", - "Explore the cosmos": "", + "Explain": "설명", + "Explain this section to me in more detail": "이 섹션을 더 자세히 설명해 주세요", + "Explore the cosmos": "우주 탐험", "Export": "내보내기", - "Export All Archived Chats": "", + "Export All Archived Chats": "모든 보관된 채팅 내보내기", "Export All Chats (All Users)": "모든 채팅 내보내기(모든 사용자)", "Export chat (.json)": "채팅 내보내기 (.json)", "Export Chats": "채팅 내보내기", @@ -507,40 +507,40 @@ "Export Models": "모델 내보내기", "Export Presets": "프리셋 내보내기", "Export Prompts": "프롬프트 내보내기", - "Export to CSV": "", + "Export to CSV": "CSV로 내보내기", "Export Tools": "도구 내보내기", - "External": "", + "External": "외부", "External Models": "외부 모델", "Failed to add file.": "파일추가에 실패했습니다", - "Failed to connect to {{URL}} OpenAPI tool server": "", + "Failed to connect to {{URL}} OpenAPI tool server": "{{URL}} OpenAPI 도구 서버에 연결하지 못했습니다", "Failed to create API Key.": "API 키 생성에 실패했습니다.", - "Failed to fetch models": "", + "Failed to fetch models": "모델 가져오기 실패", "Failed to read clipboard contents": "클립보드 내용 가져오기를 실패하였습니다.", - "Failed to save connections": "", - "Failed to save models configuration": "", + "Failed to save connections": "연결 저장 실패", + "Failed to save models configuration": "모델 구성 저장 실패", "Failed to update settings": "설정 업데이트에 실패하였습니다.", "Failed to upload file.": "파일 업로드에 실패했습니다", - "Features": "", + "Features": "기능", "Features Permissions": "기능 권한", "February": "2월", "Feedback History": "피드백 기록", "Feedbacks": "피드백", "Feel free to add specific details": "자세한 내용을 자유롭게 추가하세요.", "File": "파일", - "File added successfully.": "성공적으로 파일이 추가되었습니다", - "File content updated successfully.": "성공적으로 내용이 업데이트되었습니다", + "File added successfully.": "파일이 성공적으로 추가되었습니다", + "File content updated successfully.": "내용이 성공적으로 업데이트되었습니다", "File Mode": "파일 모드", "File not found.": "파일을 찾을 수 없습니다.", - "File removed successfully.": "성공적으로 파일이 제거되었습니다", + "File removed successfully.": "파일이 성공적으로 삭제되었습니다", "File size should not exceed {{maxSize}} MB.": "파일 사이즈가 {{maxSize}} MB를 초과하면 안됩니다.", - "File uploaded successfully": "", + "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.": "Fingerprint spoofing 감지: 이니셜을 아바타로 사용할 수 없습니다. 기본 프로필 이미지로 설정합니다.", "Firecrawl API Base URL": "", - "Firecrawl API Key": "", + "Firecrawl API Key": "Firecrawl API 키", "Fluidly stream large external response chunks": "대규모 외부 응답 청크를 유연하게 스트리밍", "Focus chat input": "채팅 입력창에 포커스", "Folder deleted successfully": "성공적으로 폴터가 생성되었습니다", @@ -548,39 +548,39 @@ "Folder name cannot be empty.": "폴더 이름을 작성해주세요", "Folder name updated successfully": "성공적으로 폴더 이름이 저장되었습니다", "Followed instructions perfectly": "명령을 완벽히 수행함", - "Forge new paths": "", + "Forge new paths": "새로운 경로 만들기", "Form": "폼", "Format your variables using brackets like this:": "변수를 다음과 같이 괄호를 사용하여 생성하세요", - "Forwards system user session credentials to authenticate": "", + "Forwards system user session credentials to authenticate": "인증할 시스템 사용자 세션 자격 증명 전달", "Frequency Penalty": "빈도 페널티", - "Full Context Mode": "", + "Full Context Mode": "전체 컨텍스트 모드", "Function": "함수", - "Function Calling": "", + "Function Calling": "함수 호출", "Function created successfully": "성공적으로 함수가 생성되었습니다", "Function deleted successfully": "성공적으로 함수가 삭제되었습니다", - "Function Description": "", - "Function ID": "", + "Function Description": "함수 설명", + "Function ID": "함수 ID", "Function is now globally disabled": "전반적으로 함수 비활성화됨", "Function is now globally enabled": "전반적으로 함수 활성화됨", - "Function Name": "", + "Function Name": "함수 이름", "Function updated successfully": "성공적으로 함수가 업데이트되었습니다", "Functions": "함수", - "Functions allow arbitrary code execution": "함수로 임이의 코드 실행 허용하기", - "Functions allow arbitrary code execution.": "함수가 임이의 코드를 실행하도록 허용하였습니다", - "Functions imported successfully": "성공적으로 함수가 가져왔습니다", - "Gemini": "", - "Gemini API Config": "", - "Gemini API Key is required.": "", + "Functions allow arbitrary code execution": "함수로 임의의 코드를 실행할 수 있습니다.", + "Functions allow arbitrary code execution.": "함수가 임의의 코드를 실행하도록 허용하였습니다", + "Functions imported successfully": "성공적으로 함수를 가져왔습니다", + "Gemini": "Gemini", + "Gemini API Config": "Gemini API 구성", + "Gemini API Key is required.": "Gemini API 키가 필요합니다.", "General": "일반", - "Generate an image": "", + "Generate an image": "이미지 생성", "Generate Image": "이미지 생성", - "Generate prompt pair": "", + "Generate prompt pair": "프롬프트 쌍 생성", "Generating search query": "검색 쿼리 생성", - "Get started": "", - "Get started with {{WEBUI_NAME}}": "", + "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": "성공적으로 그룹을 생성했습니다", @@ -594,32 +594,32 @@ "Hello, {{name}}": "안녕하세요, {{name}}", "Help": "도움말", "Help us create the best community leaderboard by sharing your feedback history!": "당신의 피드백 기록을 공유함으로서 최고의 커뮤니티 리더보드를 만드는데 도와주세요!", - "Hex Color": "", - "Hex Color - Leave empty for default color": "", + "Hex Color": "Hex 색상", + "Hex Color - Leave empty for default color": "Hex 색상 - 기본 색상의 경우 빈 상태로 유지", "Hide": "숨기기", - "Hide Model": "", - "Home": "", - "Host": "", + "Hide Model": "모델 숨기기", + "Home": "홈", + "Host": "호스트", "How can I help you today?": "오늘 어떻게 도와드릴까요?", "How would you rate this response?": "이 응답을 어떻게 평가하시겠어요?", "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.": "", + "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 Allow Same Origin": "", - "Ignite curiosity": "", + "iframe Sandbox Allow Forms": "iframe 샌드박스 허용 양식", + "iframe Sandbox Allow Same Origin": "iframe 샌드박스에서 동일한 오리진 허용", + "Ignite curiosity": "호기심 자극", "Image": "이미지", "Image Compression": "이미지 압축", "Image Generation": "이미지 생성", "Image Generation (Experimental)": "이미지 생성(실험적)", "Image Generation Engine": "이미지 생성 엔진", "Image Max Compression Size": "이미지 최대 압축 크기", - "Image Prompt Generation": "", - "Image Prompt Generation Prompt": "", + "Image Prompt Generation": "이미지 프롬프트 생성", + "Image Prompt Generation Prompt": "이미지 프롬프트 생성 프롬프트", "Image Settings": "이미지 설정", "Images": "이미지", - "Import Chats": "채팅 가져오기", - "Import Config from JSON File": "JSON 파일에서 Config 불러오기", + "Import Chats": "채팅 불러오기", + "Import Config from JSON File": "JSON 파일에서 설정 가져오기", "Import Functions": "함수 가져오기", "Import Models": "모델 가져오기", "Import Presets": "프리셋 가져오기", @@ -628,18 +628,18 @@ "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.": "", + "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.": "", + "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": "", + "Integration": "통합", "Interface": "인터페이스", "Invalid file format.": "잘못된 파일 형식", - "Invalid JSON schema": "", + "Invalid JSON schema": "잘못된 JSON schema", "Invalid Tag": "잘못된 태그", - "is typing...": "", + "is typing...": "타이핑 중... ", "January": "1월", "Jina API Key": "Jina API 키", "join our Discord for help.": "도움말을 보려면 Discord에 가입하세요.", @@ -647,50 +647,50 @@ "JSON Preview": "JSON 미리 보기", "July": "7월", "June": "6월", - "Jupyter Auth": "", - "Jupyter URL": "", + "Jupyter Auth": "Jupyter 인증", + "Jupyter URL": "Jupyter URL", "JWT Expiration": "JWT 만료", "JWT Token": "JWT 토큰", "Kagi Search API Key": "Kagi Search API 키", "Keep Alive": "계속 유지하기", - "Key": "", + "Key": "키", "Keyboard shortcuts": "키보드 단축키", "Knowledge": "지식 기반", "Knowledge Access": "지식 접근", "Knowledge created successfully.": "성공적으로 지식 기반이 생성되었습니다", "Knowledge deleted successfully.": "성공적으로 지식 기반이 삭제되었습니다", - "Knowledge Public Sharing": "", + "Knowledge Public Sharing": "지식 Public 공유", "Knowledge reset successfully.": "성공적으로 지식 기반이 초기화되었습니다", "Knowledge updated successfully": "성공적으로 지식 기반이 업데이트되었습니다", - "Kokoro.js (Browser)": "", + "Kokoro.js (Browser)": "Kokoro.js (Browser)", "Kokoro.js Dtype": "", - "Label": "", + "Label": "라벨", "Landing Page Mode": "랜딩페이지 모드", "Language": "언어", - "Language Locales": "", + "Language Locales": "언어 로케일", "Last Active": "최근 활동", "Last Modified": "마지막 수정", - "Last reply": "", - "LDAP": "", - "LDAP server updated": "", + "Last reply": "마지막 답변", + "LDAP": "LDAP", + "LDAP server updated": "LDAP 서버 업데이트됨", "Leaderboard": "리더보드", - "Learn more about OpenAPI tool servers.": "", + "Learn more about OpenAPI tool servers.": "OpenAPI 도구 서버에 대해 자세히 알아보세요.", "Leave empty for unlimited": "무제한을 위해 빈칸으로 남겨두세요", - "Leave empty to include all models from \"{{url}}/api/tags\" endpoint": "", - "Leave empty to include all models from \"{{url}}/models\" endpoint": "", + "Leave empty to include all models 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": "", + "Leave model field empty to use the default model.": "기본 모델을 사용하려면 모델 필드를 비워 두세요.", + "License": "라이센스", "Light": "라이트", "Listening...": "듣는 중...", "Llama.cpp": "", "LLMs can make mistakes. Verify important information.": "LLM에 오류가 있을 수 있습니다. 중요한 정보는 확인이 필요합니다.", "Loader": "", - "Loading Kokoro.js...": "", - "Local": "", + "Loading Kokoro.js...": "Kokoro.js 로딩중...", + "Local": "로컬", "Local Models": "로컬 모델", - "Location access not allowed": "", + "Location access not allowed": "위치 접근이 허용되지 않음", "Logit Bias": "", "Lost": "패배", "LTR": "LTR", @@ -698,13 +698,13 @@ "Make sure to enclose them with": "꼭 다음으로 감싸세요:", "Make sure to export a workflow.json file as API format from ComfyUI.": "꼭 workflow.json 파일을 ComfyUI의 API 형식대로 내보내세요", "Manage": "관리", - "Manage Direct Connections": "", - "Manage Models": "", - "Manage Ollama": "", + "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": "", + "Manage Tool Servers": "도구 서버 관리", "March": "3월", "Max Tokens (num_predict)": "최대 토큰(num_predict)", "Max Upload Count": "업로드 최대 수", @@ -725,71 +725,71 @@ "Mirostat Eta": "Mirostat Eta", "Mirostat Tau": "Mirostat Tau", "Mistral OCR": "", - "Mistral OCR API Key required.": "", + "Mistral OCR API Key required.": "Mistral OCR API Key가 필요합니다.", "Model": "모델", - "Model '{{modelName}}' has been successfully downloaded.": "'{{modelName}}' 모델이 성공적으로 다운로드되었습니다.", - "Model '{{modelTag}}' is already in queue for downloading.": "'{{modelTag}}' 모델은 이미 다운로드 대기열에 있습니다.", - "Model {{modelId}} not found": "{{modelId}} 모델을 찾을 수 없습니다.", - "Model {{modelName}} is not vision capable": "{{modelName}} 모델은 비전을 사용할 수 없습니다.", - "Model {{name}} is now {{status}}": "{{name}} 모델은 이제 {{status}} 상태입니다.", - "Model {{name}} is now hidden": "", - "Model {{name}} is now visible": "", - "Model accepts image inputs": "모델이 이미지 삽입을 허용합니다", + "Model '{{modelName}}' has been successfully downloaded.": "모델 '{{modelName}}'이/가 성공적으로 다운로드되었습니다.", + "Model '{{modelTag}}' is already in queue for downloading.": "모델 '{{modelTag}}'은/는 이미 다운로드 대기열에 있습니다.", + "Model {{modelId}} not found": "모델 {{modelId}}을/를 찾을 수 없습니다.", + "Model {{modelName}} is not vision capable": "모델 {{modelName}}은/는 비전을 사용할 수 없습니다.", + "Model {{name}} is now {{status}}": "모델 {{name}}은/는 이제 {{status}} 상태입니다.", + "Model {{name}} is now hidden": "모델 {{name}}은/는 이제 숨겨졌습니다.", + "Model {{name}} is now visible": "모델 {{name}}은/는 이제 볼 수 있습니다.", + "Model accepts image inputs": "모델이 이미지 입력을 허용합니다", "Model created successfully!": "성공적으로 모델이 생성되었습니다", "Model filesystem path detected. Model shortname is required for update, cannot continue.": "모델 파일 시스템 경로가 감지되었습니다. 업데이트하려면 모델 단축 이름이 필요하며 계속할 수 없습니다.", - "Model Filtering": "", + "Model Filtering": "모델 필터링", "Model ID": "모델 ID", - "Model IDs": "", + "Model IDs": "모델 IDs", "Model Name": "모델 이름", "Model not selected": "모델이 선택되지 않았습니다.", "Model Params": "모델 파라미터", - "Model Permissions": "", + "Model Permissions": "모델 권한", "Model updated successfully": "성공적으로 모델이 업데이트되었습니다", - "Modelfile Content": "Modelfile 내용", + "Modelfile Content": "모델 파일 내용", "Models": "모델", "Models Access": "모델 접근", - "Models configuration saved successfully": "", - "Models Public Sharing": "", + "Models configuration saved successfully": "모델 구성이 성공적으로 저장됨", + "Models Public Sharing": "모델 공개 공유", "Mojeek Search API Key": "Mojeek Search API 키", - "more": "더보기", - "More": "더보기", + "more": "더 보기", + "More": "더 보기", "Name": "이름", - "Name your knowledge base": "지식 기반 이름을 지정하세요", - "Native": "", + "Name your knowledge base": "지식 기반 이름을 지정하세요.", + "Native": "네이티브", "New Chat": "새 채팅", - "New Folder": "", + "New Folder": "새 폴더", "New Password": "새 비밀번호", - "new-channel": "", - "No content found": "내용을 찾을 수 없음", - "No content to speak": "음성 출력할 내용을 찾을 수 없음", - "No distance available": "거리 불가능", + "new-channel": "새 채널", + "No content found": "내용을 찾을 수 없습니다.", + "No content to speak": "음성 출력할 내용을 찾을 수 없습니다.", + "No distance available": "거리 정보를 사용할 수 없습니다.", "No feedbacks found": "피드백 없음", "No file selected": "파일이 선택되지 않음", "No files found.": "파일 없음", "No groups with access, add a group to grant access": "접근 권한이 있는 그룹이 없습니다. 접근 권한을 부여하려면 그룹을 추가하세요.", - "No HTML, CSS, or JavaScript content found.": "HTML, CSS, JavaScript이 발견되지 않음", - "No inference engine with management support found": "", - "No knowledge found": "지식 기반 없음", - "No memories to clear": "", - "No model IDs": "", - "No models found": "모델 없음", - "No models selected": "", - "No results found": "결과 없음", + "No HTML, CSS, or JavaScript content found.": "HTML, CSS, JavaScript 내용을 찾을 수 없습니다.", + "No inference engine with management support found": "관리 기능이 있는 추론 엔진을 찾을 수 없습니다.", + "No knowledge found": "지식 기반이 없습니다.", + "No memories to clear": "지울 수 있는 메모리가 없습니다.", + "No model IDs": "모델 ID가 없습니다.", + "No models found": "모델이 없습니다.", + "No models selected": "선택된 모델이 없습니다.", + "No results found": "결과가 없습니다.", "No search query generated": "검색어가 생성되지 않았습니다.", - "No source available": "사용 가능한 소스 없음", - "No users were found.": "", - "No valves to update": "업데이트 할 변수 없음", + "No source available": "사용 가능한 소스가 없습니다.", + "No users were found.": "사용자를 찾을 수 없습니다.", + "No valves to update": "업데이트 할 밸브가 없습니다.", "None": "없음", - "Not factually correct": "사실상 맞지 않음", - "Not helpful": "도움이 되지않음", + "Not factually correct": "사실상 맞지 않습니다.", + "Not helpful": "도움이 되지 않습니다.", "Note: If you set a minimum score, the search will only return documents with a score greater than or equal to the minimum score.": "참고: 최소 점수를 설정하면, 검색 결과로 최소 점수 이상의 점수를 가진 문서만 반환합니다.", - "Notes": "노트", + "Notes": "참고", "Notification Sound": "알림 소리", "Notification Webhook": "알림 웹훅", "Notifications": "알림", "November": "11월", - "num_gpu (Ollama)": "num_gpu (올라마(Ollama))", - "num_thread (Ollama)": "num_thread (올라마(Ollama))", + "num_gpu (Ollama)": "num_gpu (Ollama)", + "num_thread (Ollama)": "num_thread (Ollama)", "OAuth ID": "OAuth ID", "October": "10월", "Off": "끄기", @@ -797,22 +797,22 @@ "OLED Dark": "OLED 다크", "Ollama": "Ollama", "Ollama API": "Ollama API", - "Ollama API settings updated": "", + "Ollama API settings updated": "Ollama API 세팅이 업데이트 되었습니다.", "Ollama Version": "Ollama 버전", "On": "켜기", - "OneDrive": "", - "Only alphanumeric characters and hyphens are allowed": "영문자, 숫자 및 하이픈(-)만 허용됨", + "OneDrive": "OneDrive", + "Only alphanumeric characters and hyphens are allowed": "영문자, 숫자 및 하이픈(-)만 허용됩니다.", "Only alphanumeric characters and hyphens are allowed in the command string.": "명령어 문자열에는 영문자, 숫자 및 하이픈(-)만 허용됩니다.", - "Only collections can be edited, create a new knowledge base to edit/add documents.": "가지고 있는 컬렉션만 수정 가능합니다, 새 지식 기반을 생성하여 문서를 수정 혹은 추가하십시오", - "Only select users and groups with permission can access": "권한이 있는 사용자와 그룹만 접근 가능합니다", + "Only collections can be edited, create a new knowledge base to edit/add documents.": "가지고 있는 컬렉션만 수정 가능합니다, 새 지식 기반을 생성하여 문서를 수정 혹은 추가하십시오.", + "Only select users and groups with permission can access": "권한이 있는 사용자와 그룹만 접근 가능합니다.", "Oops! Looks like the URL is invalid. Please double-check and try again.": "이런! URL이 잘못된 것 같습니다. 다시 한번 확인하고 다시 시도해주세요.", - "Oops! There are files still uploading. Please wait for the upload to complete.": "이런! 파일이 계속 업로드중 입니다. 업로드가 완료될 때까지 잠시만 기다려주세요", - "Oops! There was an error in the previous response.": "이런! 이전 응답에 에러가 있었던 것 같습니다", + "Oops! There are files still uploading. Please wait for the upload to complete.": "이런! 파일이 계속 업로드중 입니다. 업로드가 완료될 때까지 잠시만 기다려주세요.", + "Oops! There was an error in the previous response.": "이런! 이전 응답에 에러가 있었던 것 같습니다.", "Oops! You're using an unsupported method (frontend only). Please serve the WebUI from the backend.": "이런! 지원되지 않는 방식(프론트엔드만)을 사용하고 계십니다. 백엔드에서 WebUI를 제공해주세요.", "Open file": "파일 열기", "Open in full screen": "전체화면으로 열기", "Open new chat": "새 채팅 열기", - "Open WebUI can use tools provided by any OpenAPI server.": "", + "Open WebUI can use tools provided by any OpenAPI server.": "Open WebUI는 모든 OpenAPI 서버에서 제공하는 도구를 사용할 수 있습니다.", "Open WebUI uses faster-whisper internally.": "Open WebUI는 내부적으로 패스트 위스퍼를 사용합니다.", "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}})": "열린 WebUI 버젼(v{{OPEN_WEBUI_VERSION}})은 최소 버젼 (v{{REQUIRED_VERSION}})보다 낮습니다", @@ -820,13 +820,13 @@ "OpenAI API": "OpenAI API", "OpenAI API Config": "OpenAI API 설정", "OpenAI API Key is required.": "OpenAI API 키가 필요합니다.", - "OpenAI API settings updated": "", + "OpenAI API settings updated": "OpenAI API 설정이 업데이트되었습니다.", "OpenAI URL/Key required.": "OpenAI URL/키가 필요합니다.", - "openapi.json Path": "", + "openapi.json Path": "openapi.json 경로", "or": "또는", "Organize your users": "사용자를 ", "Other": "기타", - "OUTPUT": "출력력", + "OUTPUT": "출력", "Output format": "출력 형식", "Overview": "개요", "page": "페이지", @@ -839,77 +839,77 @@ "Permission denied when accessing microphone": "마이크 접근 권한이 거부되었습니다.", "Permission denied when accessing microphone: {{error}}": "마이크 접근 권환이 거부되었습니다: {{error}}", "Permissions": "권한", - "Perplexity API Key": "", + "Perplexity API Key": "Perplexity API 키", "Personalization": "개인화", "Pin": "고정", "Pinned": "고정됨", - "Pioneer insights": "", - "Pipeline deleted successfully": "성공적으로 파이프라인이 삭제되었습니다", - "Pipeline downloaded successfully": "성공적으로 파이프라인이 설치되었습니다", + "Pioneer insights": "선구자 인사이트", + "Pipeline deleted successfully": "성공적으로 파이프라인이 삭제되었습니다.", + "Pipeline downloaded successfully": "성공적으로 파이프라인이 설치되었습니다.", "Pipelines": "파이프라인", - "Pipelines Not Detected": "파이프라인이 발견되지 않음", + "Pipelines Not Detected": "파이프라인이 발견되지 않았습니다.", "Pipelines Valves": "파이프라인 밸브", "Plain text (.txt)": "일반 텍스트(.txt)", "Playground": "놀이터", - "Playwright Timeout (ms)": "", - "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": "", - "Please fill in all fields.": "모두 빈칸없이 채워주세요", - "Please select a model first.": "", - "Please select a model.": "", - "Please select a reason": "이유를 선택해주세요", + "Playwright Timeout (ms)": "Playwright 타임아웃 (ms)", + "Playwright WebSocket URL": "Playwright 웹소켓 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 is used to avoid conflicts with other connections by adding a prefix to the model IDs - leave empty to disable": "", - "Presence Penalty": "", + "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에 접두사를 추가하여 다른 연결과의 충돌을 방지하는 데 사용됩니다. - 비활성화하려면 비워 둡니다.", + "Presence Penalty": "Presence Penalty", "Previous 30 days": "이전 30일", "Previous 7 days": "이전 7일", - "Private": "", + "Private": "비공개", "Profile Image": "프로필 이미지", - "Prompt": "", - "Prompt (e.g. Tell me a fun fact about the Roman Empire)": "프롬프트 (예: 로마 황제에 대해 재미있는 사실을 알려주세요)", - "Prompt Autocompletion": "", + "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": "", + "Prompts Public Sharing": "프롬프트 공개 공유", + "Public": "공개", "Pull \"{{searchValue}}\" from Ollama.com": "Ollama.com에서 \"{{searchValue}}\" 가져오기", "Pull a model from Ollama.com": "Ollama.com에서 모델 가져오기(pull)", - "Query Generation Prompt": "", + "Query Generation Prompt": "쿼리 생성 프롬프트", "RAG Template": "RAG 템플릿", "Rating": "평가", "Re-rank models by topic similarity": "주제 유사성으로 모델을 재정렬하기", "Read": "", "Read Aloud": "읽어주기", - "Reasoning Effort": "", + "Reasoning Effort": "추론 노력", "Record voice": "음성 녹음", "Redirecting you to Open WebUI Community": "OpenWebUI 커뮤니티로 리디렉션 중", - "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.": "", + "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": "", + "Reindex": "재인덱스", + "Reindex Knowledge Base Vectors": "지식 베이스 벡터 재인덱스", "Release Notes": "릴리스 노트", "Relevance": "관련도", - "Relevance Threshold": "", + "Relevance Threshold": "관련도 임계값", "Remove": "삭제", "Remove Model": "모델 삭제", "Rename": "이름 변경", "Reorder Models": "모델 재정렬", "Repeat Last N": "마지막 N 반복", - "Repeat Penalty (Ollama)": "", - "Reply in Thread": "", + "Repeat Penalty (Ollama)": "반복 페널티 (Ollama)", + "Reply in Thread": "스레드로 답장하기", "Request Mode": "요청 모드", "Reranking Model": "Reranking 모델", "Reranking model disabled": "Reranking 모델 비활성화", @@ -918,12 +918,12 @@ "Reset All Models": "모든 모델 초기화", "Reset Upload Directory": "업로드 디렉토리 초기화", "Reset Vector Storage/Knowledge": "벡터 저장 공간/지식 기반 초기화", - "Reset view": "", + "Reset view": "보기 재설정", "Response notifications cannot be activated as the website permissions have been denied. Please visit your browser settings to grant the necessary access.": "웹사이트 권환과 같이 응답 알림이 활성화될 수 없습니다. 필요한 접근을 사용하기 위해 브라우져 설정을 확인 부탁드립니다.", "Response splitting": "응답 나누기", "Result": "결과", - "Retrieval": "", - "Retrieval Query Generation": "", + "Retrieval": "검색", + "Retrieval Query Generation": "검색 쿼리 생성", "Rich Text Input for Chat": "채팅을 위한 풍부한 텍스트(Rich Text) 입력", "RK": "RK", "Role": "역할", @@ -942,7 +942,7 @@ "Scroll to bottom when switching between branches": "브랜치 간 전환시 밑으로 스크롤 하세요", "Search": "검색", "Search a model": "모델 검색", - "Search Base": "", + "Search Base": "검색 기반", "Search Chats": "채팅 검색", "Search Collection": "컬렉션 검색", "Search Filters": "필터 검색", @@ -953,11 +953,11 @@ "Search options": "옵션 검색", "Search Prompts": "프롬프트 검색", "Search Result Count": "검색 결과 수", - "Search the internet": "", + "Search the internet": "인터넷 검색", "Search Tools": "검색 도구", "SearchApi API Key": "SearchApi API 키", "SearchApi Engine": "SearchApi 엔진", - "Searched {{count}} sites": "", + "Searched {{count}} sites": "검색된 {{count}}개 사이트", "Searching \"{{searchQuery}}\"": "\"{{searchQuery}}\" 검색 중", "Searching Knowledge for \"{{searchQuery}}\"": "\"{{searchQuery}}\"위한 지식 기반 검색 중", "Searxng Query URL": "Searxng 쿼리 URL", @@ -972,8 +972,8 @@ "Select a pipeline": "파이프라인 선택", "Select a pipeline url": "파이프라인 URL 선택", "Select a tool": "도구 선택", - "Select an auth method": "", - "Select an Ollama instance": "", + "Select an auth method": "인증 방법 선택", + "Select an Ollama instance": "Ollama 인스턴스 선택", "Select Engine": "엔진 선택", "Select Knowledge": "지식 기반 선택", "Select only one model to call": "음성 기능을 위해서는 모델을 하나만 선택해야 합니다.", @@ -984,8 +984,8 @@ "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": "9월", - "SerpApi API Key": "", - "SerpApi Engine": "", + "SerpApi API Key": "SerpApi API 키", + "SerpApi Engine": "SerpApi 엔진", "Serper API Key": "Serper API 키", "Serply API Key": "Serply API 키", "Serpstack API Key": "Serpstack API 키", @@ -1001,32 +1001,32 @@ "Set Scheduler": "스케쥴러 설정", "Set Steps": "단계 설정", "Set Task Model": "작업 모델 설정", - "Set the number of layers, which will be off-loaded to GPU. Increasing this value can significantly improve performance for models that are optimized for GPU acceleration but may also consume more power and GPU resources.": "", - "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.": "", + "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": "자막 생성기 모델 설정", - "Sets a flat bias against tokens that have appeared at least once. A higher value (e.g., 1.5) will penalize repetitions more strongly, while a lower value (e.g., 0.9) will be more lenient. At 0, it is disabled.": "", - "Sets a scaling bias against tokens to penalize repetitions, based on how many times they have appeared. A higher value (e.g., 1.5) will penalize repetitions more strongly, while a lower value (e.g., 0.9) will be more lenient. At 0, it is disabled.": "", - "Sets how far back for the model to look back to prevent repetition.": "", - "Sets the random number seed to use for generation. Setting this to a specific number will make the model generate the same text for the same prompt.": "", - "Sets the size of the context window used to generate the next token.": "", + "Sets 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.": "적어도 한 번 이상 나타난 토큰에 대해 평평한 편향을 설정합니다. 값이 높을수록 반복에 더 강력한 불이익을 주는 반면, 값이 낮을수록(예: 0.9) 더 관대해집니다. 0에서는 비활성화됩니다.", + "Sets a scaling bias against tokens to penalize repetitions, based on how many times they have appeared. A higher value (e.g., 1.5) will penalize repetitions more strongly, while a lower value (e.g., 0.9) will be more lenient. At 0, it is disabled.": "토큰에 대한 스케일링 편향을 설정하여 반복 횟수에 따라 반복 횟수에 불이익을 줍니다. 값이 높을수록(예: 1.5) 반복 횟수에 더 강하게 불이익을 주는 반면, 값이 낮을수록(예: 0.9) 더 관대해집니다. 0에서는 반복 횟수가 비활성화됩니다.", + "Sets how far back for the model to look back to prevent repetition.": "모델이 반복을 방지하기 위해 되돌아볼 수 있는 거리를 설정합니다.", + "Sets the random number seed to use for generation. Setting this to a specific number will make the model generate the same text for the same prompt.": "생성에 사용할 난수 시드를 설정합니다. 이를 특정 숫자로 설정하면 모델이 동일한 프롬프트에 대해 동일한 텍스트를 생성하게 됩니다.", + "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은 텍스트 생성을 중단하고 반환합니다. 여러 중단 패턴은 모델 파일에서 여러 개의 별도 중단 매개변수를 지정하여 설정할 수 있습니다.", "Settings": "설정", "Settings saved successfully!": "설정이 성공적으로 저장되었습니다!", "Share": "공유", "Share Chat": "채팅 공유", "Share to Open WebUI Community": "OpenWebUI 커뮤니티에 공유", - "Sharing Permissions": "", + "Sharing Permissions": "권한 공유", "Show": "보기", "Show \"What's New\" modal on login": "로그인시 \"새로운 기능\" 모달 보기", "Show Admin Details in Account Pending Overlay": "사용자용 계정 보류 설명창에, 관리자 상세 정보 노출", - "Show Model": "", + "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": "", + "Sign in to {{WEBUI_NAME}} with LDAP": "LDAP로 {{WEBUI_NAME}}에 로그인", "Sign Out": "로그아웃", "Sign up": "가입", "Sign up to {{WEBUI_NAME}}": "{{WEBUI_NAME}}로 가입", @@ -1053,15 +1053,15 @@ "System": "시스템", "System Instructions": "시스템 설명서", "System Prompt": "시스템 프롬프트", - "Tags": "", + "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.": "", - "Talk to model": "", + "Tail free sampling is used to reduce the impact of less probable tokens from the output. A higher value (e.g., 2.0) will reduce the impact more, while a value of 1.0 disables this setting.": "꼬리 자유 샘플링은 출력에서 확률이 낮은 토큰의 영향을 줄이기 위해 사용됩니다. 값이 클수록(예: 2.0) 이러한 토큰의 영향이 더 줄어들며, 1.0으로 설정하면 이 기능은 비활성화됩니다.", + "Talk to model": "모델과 대화하기", "Tap to interrupt": "탭하여 중단", "Tasks": "", "Tavily API Key": "Tavily API 키", - "Tavily Extract Depth": "", + "Tavily Extract Depth": "Tabily 깊이 추출", "Tell us more:": "더 알려주세요:", "Temperature": "온도", "Template": "템플릿", @@ -1070,98 +1070,98 @@ "Text-to-Speech Engine": "텍스트-음성 변환 엔진", "Tfs Z": "Tfs Z", "Thanks for your feedback!": "피드백 감사합니다!", - "The Application Account DN you bind with for search": "", - "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 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 LDAP attribute that maps to the mail that users use to sign in.": "", - "The LDAP attribute that maps to the username that users use to sign in.": "", - "The leaderboard is currently in beta, and we may adjust the rating calculations as we refine the algorithm.": "리더보드는 베타테스트중에 있습니다, 평가 기준이 알고리즘 수정과 함께 변할 수 있습니다", + "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 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 temperature of the model. Increasing the temperature will make the model answer more creatively.": "모델의 온도. 온도를 높이면 모델이 더 창의적으로 답변할 수 있습니다.", "Theme": "테마", "Thinking...": "생각 중...", - "This action cannot be undone. Do you wish to continue?": "이 액션은 되돌릴 수 없습니다. 계속 하시겠습니까?", - "This channel was created on {{createdAt}}. This is the very beginning of the {{channelName}} channel.": "", - "This chat won’t appear in history and your messages will not be saved.": "", + "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 ensures that your valuable conversations are securely saved to your backend database. Thank you!": "이렇게 하면 소중한 대화 내용이 백엔드 데이터베이스에 안전하게 저장됩니다. 감사합니다!", "This is an experimental feature, it may not function as expected and is subject to change at any time.": "이것은 실험적 기능으로, 예상대로 작동하지 않을 수 있으며 언제든지 변경될 수 있습니다.", - "This option controls how many tokens are preserved when refreshing the context. For example, if set to 2, the last 2 tokens of the conversation context will be retained. Preserving context can help maintain the continuity of a conversation, but it may reduce the ability to respond to new topics.": "", - "This option sets the maximum number of tokens the model can generate in its response. Increasing this limit allows the model to provide longer answers, but it may also increase the likelihood of unhelpful or irrelevant content being generated.": "", - "This option will delete all existing files in the collection and replace them with newly uploaded files.": "이 행동은 컬렉션에 존재하는 모든 파일을 삭제하고 새로 업로드된 파일들로 대체됩니다", + "This 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 sets the maximum number of tokens the model can generate in its response. Increasing this limit allows the model to provide longer answers, but it may also increase the likelihood of unhelpful or irrelevant content being generated.": "이 옵션은 모델이 응답에서 생성할 수 있는 최대 토큰 수를 설정합니다. 이 한도를 늘리면 모델이 더 긴 답변을 제공할 수 있지만, 도움이 되지 않거나 관련 없는 콘텐츠가 생성될 가능성도 높아질 수 있습니다.", + "This option will delete all existing files in the collection and replace them with newly uploaded files.": "이 옵션을 선택하면 기존 컬렉션의 모든 파일이 삭제되고, 새로 업로드된 파일로 대체됩니다.", "This response was generated by \"{{model}}\"": "\"{{model}}\"이 생성한 응답입니다", "This will delete": "이것은 다음을 삭제합니다.", "This will delete {{NAME}} and all its contents.": "{{NAME}}모든 내용을 삭제합니다.", - "This will delete all models including custom models": "", - "This will delete all models including custom models and cannot be undone.": "", + "This will 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": "", + "Thought for {{DURATION}}": "{{DURATION}} 동안 생각하기", + "Thought for {{DURATION}} seconds": "{{DURATION}}초 동안 생각하기", "Tika": "티카(Tika)", - "Tika Server URL required.": "티카 서버 URL이 필요합니다", + "Tika Server URL required.": "티카 서버 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 (e.g. Tell me a fun fact)": "제목 (예: 재미있는 사실을 알려주세요.)", "Title Auto-Generation": "제목 자동 생성", "Title cannot be an empty string.": "제목은 빈 문자열일 수 없습니다.", - "Title Generation": "", + "Title Generation": "제목 생성", "Title Generation Prompt": "제목 생성 프롬프트", - "TLS": "", + "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 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 notifications for new updates": "업데이트 토스트 알림", "Today": "오늘", "Toggle settings": "설정 전환", "Toggle sidebar": "사이드바 전환", "Token": "토큰", "Tokens To Keep On Context Refresh (num_keep)": "컨텍스트 새로 고침 시 유지할 토큰 수(num_keep)", - "Too verbose": "말이 너무 많은", - "Tool created successfully": "성공적으로 도구가 생성되었습니다", - "Tool deleted successfully": "성공적으로 도구가 삭제되었습니다", + "Too verbose": "말이 너무 많은은", + "Tool created successfully": "성공적으로 도구가 생성되었습니다.", + "Tool deleted successfully": "성공적으로 도구가 삭제되었습니다.", "Tool Description": "도구 설명", "Tool ID": "도구 ID", "Tool imported successfully": "성공적으로 도구를 가져왔습니다", "Tool Name": "도구 이름", - "Tool Servers": "", + "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 are a function calling system with arbitrary code execution": "도구는 임의 코드를 실행시키는 함수를 불러오는 시스템입니다.", + "Tools Function Calling Prompt": "도구 함수 호출 프롬프트", + "Tools have a function calling system that allows arbitrary code execution": "도구에 임의 코드 실행을 허용하는 함수가 포함되어 있습니다.", "Tools have a function calling system that allows arbitrary code execution.": "도구에 임의 코드 실행을 허용하는 함수가 포함되어 있습니다.", - "Tools Public Sharing": "", + "Tools Public Sharing": "도구 Public 공유", "Top K": "Top K", "Top K Reranker": "", "Top P": "Top P", "Transformers": "", "Trouble accessing Ollama?": "올라마(Ollama)에 접근하는 데 문제가 있나요?", - "Trust Proxy Environment": "", + "Trust Proxy Environment": "Trust Proxy Environment", "TTS Model": "TTS 모델", "TTS Settings": "TTS 설정", "TTS Voice": "TTS 음성", "Type": "입력", "Type Hugging Face Resolve (Download) URL": "Hugging Face Resolve (다운로드) URL 입력", - "Uh-oh! There was an issue with the response.": "", + "Uh-oh! There was an issue with the response.": "응답에 문제가 있었습니다.", "UI": "UI", "Unarchive All": "모두 보관 해제", "Unarchive All Archived Chats": "보관된 모든 채팅을 보관 해제", "Unarchive Chat": "채팅 보관 해제", - "Unlock mysteries": "", + "Unlock mysteries": "미스터리 잠금 해제", "Unpin": "고정 해제", - "Unravel secrets": "", + "Unravel secrets": "기밀 풀기", "Untagged": "태그 해제", "Update": "업데이트", "Update and Copy Link": "링크 업데이트 및 복사", @@ -1169,8 +1169,8 @@ "Update password": "비밀번호 업데이트", "Updated": "업데이트됨", "Updated at": "다음에 업데이트됨", - "Updated At": "다음에 업데이트됨됨", - "Upgrade to a licensed plan for enhanced capabilities, including custom theming and branding, and dedicated support.": "", + "Updated At": "다음에 업데이트됨", + "Upgrade to a licensed plan for enhanced capabilities, including custom theming and branding, and dedicated support.": "맞춤형 테마 설정 및 브랜딩, 전용 지원을 포함한 향상된 기능을 위해 라이선스 플랜으로 업그레이드하세요.", "Upload": "업로드", "Upload a GGUF model": "GGUF 모델 업로드", "Upload directory": "디렉토리 업로드", @@ -1178,23 +1178,23 @@ "Upload Files": "파일 업로드", "Upload Pipeline": "업로드 파이프라인", "Upload Progress": "업로드 진행 상황", - "URL": "", + "URL": "URL", "URL Mode": "URL 모드", "Use '#' in the prompt input to load and include your knowledge.": "프롬프트 입력에서 '#'를 사용하여 지식 기반을 불러오고 포함하세요.", "Use Gravatar": "Gravatar 사용", "Use groups to group your users and assign permissions.": "그룹을 사용하여 사용자를 그룹화하고 권한을 할당하세요.", "Use Initials": "초성 사용", - "Use no proxy to fetch page contents.": "", - "Use proxy designated by http_proxy and https_proxy environment variables to fetch page contents.": "", - "use_mlock (Ollama)": "use_mlock (올라마)", - "use_mmap (Ollama)": "use_mmap (올라마)", + "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 환경 변수로 지정된 프록시를 사용하여 페이지 콘텐츠를 가져옵니다.", + "use_mlock (Ollama)": "use_mlock (Ollama)", + "use_mmap (Ollama)": "use_mmap (Ollama)", "user": "사용자", "User": "사용자", - "User location successfully retrieved.": "성공적으로 사용자의 위치를 불러왔습니다", - "User Webhooks": "", - "Username": "", + "User location successfully retrieved.": "성공적으로 사용자의 위치를 불러왔습니다.", + "User Webhooks": "사용자 웹훅", + "Username": "사용자 이름", "Users": "사용자", - "Using the default arena model with all models. Click the plus button to add custom models.": "모든 모델은 기본 아레나 모델을 사용중입니다. 플러스 버튼을 눌러 커스텀 모델을 추가하세요", + "Using the default arena model with all models. Click the plus button to add custom models.": "모든 모델은 기본 아레나 모델을 사용중입니다. 플러스 버튼을 눌러 커스텀 모델을 추가하세요.", "Utilize": "활용", "Valid time units:": "유효 시간 단위:", "Valves": "밸브", @@ -1202,12 +1202,12 @@ "Valves updated successfully": "성공적으로 밸브가 업데이트되었습니다", "variable": "변수", "variable to have them replaced with clipboard content.": "변수를 사용하여 클립보드 내용으로 바꾸세요.", - "Verify Connection": "", - "Verify SSL Certificate": "", + "Verify Connection": "연결 확인인", + "Verify SSL Certificate": "SSL 인증서 확인", "Version": "버전", "Version {{selectedVersion}} of {{totalVersions}}": "버전 {{totalVersions}}의 {{selectedVersion}}", - "View Replies": "", - "View Result from **{{NAME}}**": "", + "View Replies": "답변 보기", + "View Result from **{{NAME}}**": "**{{NAME}}**의 결과 보기", "Visibility": "공개 범위", "Voice": "음성", "Voice Input": "음성 입력", @@ -1215,52 +1215,52 @@ "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.": "", + "Warning: Jupyter execution enables arbitrary code execution, posing severe security risks—proceed with extreme caution.": "경고: Jupyter 실행은 임의의 코드 실행을 가능하게 하여 심각한 보안 위험을 초래합니다. — 매우 신중하게 진행하세요.", "Web": "웹", "Web API": "웹 API", - "Web Loader Engine": "", + "Web Loader Engine": "웹 로더 엔진", "Web Search": "웹 검색", "Web Search Engine": "웹 검색 엔진", - "Web Search in Chat": "", - "Web Search Query Generation": "", + "Web Search in Chat": "채팅에서 웹 검색", + "Web Search Query Generation": "웹 검색 쿼리 생성", "Webhook URL": "웹훅 URL", "WebUI Settings": "WebUI 설정", - "WebUI URL": "", - "WebUI will make requests to \"{{url}}\"": "", - "WebUI will make requests to \"{{url}}/api/chat\"": "WebUI가 \"{{url}}/api/chat\"로 요청을 보냅니다", - "WebUI will make requests to \"{{url}}/chat/completions\"": "WebUI가 \"{{url}}/chat/completions\"로 요청을 보냅니다", + "WebUI 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\"로 요청을 보냅니다.", "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": "", + "wherever you are": "어디에 있든지", "Whisper (Local)": "Whisper (로컬)", "Why?": "이유는?", "Widescreen Mode": "와이드스크린 모드", "Won": "승리", - "Works together with top-k. A higher value (e.g., 0.95) will lead to more diverse text, while a lower value (e.g., 0.5) will generate more focused and conservative text.": "", + "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": "작성", "Write a prompt suggestion (e.g. Who are you?)": "프롬프트 제안 작성 (예: 당신은 누구인가요?)", - "Write a summary in 50 words that summarizes [topic or keyword].": "[주제 또는 키워드]에 대한 50단어 요약문 작성.", + "Write a summary in 50 words that summarizes [topic or keyword].": "[주제 또는 키워드]에 대한 50단어 요약문을 작성하시오.", "Write something...": "아무거나 쓰세요...", - "Write your model template content here": "여기에 모델 템플릿 내용을 입력하세요", + "Write your model template content here": "여기에 모델 템플릿 내용을 입력하세요.", "Yesterday": "어제", "You": "당신", - "You are currently using a trial license. Please contact support to upgrade your license.": "", - "You can only chat with a maximum of {{maxCount}} file(s) at a time.": "동시에 최대 {{maxCount}} 파일과만 대화할 수 있습니다 ", + "You 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 do not have permission to upload files.": "", + "You do not have permission to upload files": "파일을 업로드할 권한이 없습니다", + "You do not have permission to upload files.": "파일을 업로드할 권한이 없습니다.", "You have no archived conversations.": "채팅을 보관한 적이 없습니다.", "You have shared this chat": "이 채팅을 공유했습니다.", "You're a helpful assistant.": "당신은 유용한 어시스턴트입니다.", "You're now logged in.": "로그인되었습니다.", "Your account status is currently pending activation.": "현재 계정은 아직 활성화되지 않았습니다.", - "Your entire contribution will go directly to the plugin developer; Open WebUI does not take any percentage. However, the chosen funding platform might have its own fees.": "당신의 모든 기여는 곧바로 플러그인 개발자에게 갑니다; Open WebUI는 일절 가져가지 않습니다 하지만, 선택한 후원 플랫폼은 수수료를 가져갈 수 있습니다.", + "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 Language": "", - "Youtube Proxy URL": "" + "Youtube Language": "유튜브 언어", + "Youtube Proxy URL": "유튜브 프록시 URL" } From 792beb095e5b8b17bb3ce1b047274f3f1923a4a5 Mon Sep 17 00:00:00 2001 From: lutherwaves Date: Sun, 11 May 2025 00:43:20 +0300 Subject: [PATCH 002/100] i18n: Bulgarian translations --- src/lib/i18n/locales/bg-BG/translation.json | 194 ++++++++++---------- 1 file changed, 97 insertions(+), 97 deletions(-) diff --git a/src/lib/i18n/locales/bg-BG/translation.json b/src/lib/i18n/locales/bg-BG/translation.json index 54a2d0f0f..aac498a35 100644 --- a/src/lib/i18n/locales/bg-BG/translation.json +++ b/src/lib/i18n/locales/bg-BG/translation.json @@ -12,9 +12,9 @@ "{{COUNT}} Replies": "{{COUNT}} Отговори", "{{user}}'s Chats": "{{user}}'s чатове", "{{webUIName}} Backend Required": "{{webUIName}} Изисква се Бекенд", - "*Prompt node ID(s) are required for image generation": "*Идентификаторът(ите) на node-а се изисква(т) за генериране на изображения", + "*Prompt node ID(s) are required for image generation": "*Идентификатор(ите) на възел-а се изисква(т) за генериране на изображения", "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 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": "", @@ -29,7 +29,7 @@ "Activate this command by typing \"/{{COMMAND}}\" to chat input.": "Активирайте тази команда, като въведете \"/{{COMMAND}}\" в полето за чат.", "Active Users": "Активни потребители", "Add": "Добавяне", - "Add a model ID": "Добавете ID на модел", + "Add a model ID": "Добавете ID на модела", "Add a short description about what this model does": "Добавете кратко описание за това какво прави този модел", "Add a tag": "Добавяне на таг", "Add Arena Model": "Добавяне на Arena модел", @@ -51,9 +51,9 @@ "admin": "админ", "Admin": "Администратор", "Admin Panel": "Панел на Администратор", - "Admin Settings": "Настройки на Администратор", + "Admin Settings": "Настройки на администратора", "Admins have access to all tools at all times; users need tools assigned per model in the workspace.": "Администраторите имат достъп до всички инструменти по всяко време; потребителите се нуждаят от инструменти, присвоени за всеки модел в работното пространство.", - "Advanced Parameters": "Разширени Параметри", + "Advanced Parameters": "Разширени параметри", "Advanced Params": "Разширени параметри", "All": "", "All Documents": "Всички Документи", @@ -71,7 +71,7 @@ "Allow Speech to Text": "", "Allow Temporary Chat": "Разреши временен чат", "Allow Text to Speech": "", - "Allow User Location": "Разреши местоположение на потребителя", + "Allow User Location": "Разреши местоположението на потребителя", "Allow Voice Interruption in Call": "Разреши прекъсване на гласа по време на разговор", "Allowed Endpoints": "Разрешени крайни точки", "Already have an account?": "Вече имате акаунт?", @@ -98,18 +98,18 @@ "applies to all users with the \"user\" role": "прилага се за всички потребители с роля \"потребител\"", "April": "Април", "Archive": "Архивирани Чатове", - "Archive All Chats": "Архив Всички чатове", + "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 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 you want to update this user's role to **{{ROLE}}**?": "", "Are you sure?": "Сигурни ли сте?", - "Arena Models": "Arena Модели", + "Arena Models": "Арена Модели", "Artifacts": "Артефакти", - "Ask": "", + "Ask": "Питай", "Ask a question": "Задайте въпрос", "Assistant": "Асистент", "Attach file from knowledge": "", @@ -121,7 +121,7 @@ "Auth": "", "Authenticate": "Удостоверяване", "Authentication": "Автентикация", - "Auto": "", + "Auto": "Авто", "Auto-Copy Response to Clipboard": "Автоматично копиране на отговор в клипборда", "Auto-playback response": "Автоматично възпроизвеждане на отговора", "Autocomplete Generation": "Генериране на автоматично довършване", @@ -131,7 +131,7 @@ "AUTOMATIC1111 Base URL": "AUTOMATIC1111 Базов URL", "AUTOMATIC1111 Base URL is required.": "AUTOMATIC1111 Базов URL е задължителен.", "Available list": "Наличен списък", - "Available Tools": "", + "Available Tools": "Налични инструменти", "available!": "наличен!", "Awful": "Ужасно", "Azure AI Speech": "Azure AI Реч", @@ -142,7 +142,7 @@ "Base Model (From)": "Базов модел (от)", "Batch Size (num_batch)": "Размер на партидата (num_batch)", "before": "преди", - "Being lazy": "Да бъдеш мързелив", + "Being lazy": "Мързелив е", "Beta": "Бета", "Bing Search V7 Endpoint": "Крайна точка за Bing Search V7", "Bing Search V7 Subscription Key": "Абонаментен ключ за Bing Search V7", @@ -154,7 +154,7 @@ "Bypass Embedding and Retrieval": "", "Calendar": "Календар", "Call": "Обаждане", - "Call feature is not supported when using Web STT engine": "Функцията за обаждане не се поддържа при използване на Web STT двигател", + "Call feature is not supported when using Web STT engine": "Функцията за обаждане не се поддържа при използването на Web STT двигател", "Camera": "Камера", "Cancel": "Отказ", "Capabilities": "Възможности", @@ -169,7 +169,7 @@ "Chart new frontiers": "Начертайте нови граници", "Chat": "Чат", "Chat Background Image": "Фоново изображение на чата", - "Chat Bubble UI": "UI за чат балон", + "Chat Bubble UI": "Потребителски интерфейс за чат балон", "Chat Controls": "Контроли на чата", "Chat direction": "Направление на чата", "Chat Overview": "Преглед на чата", @@ -191,7 +191,7 @@ "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 learn more about faster-whisper and see the available models.": "Натиснете тук, за да научите повече за по-бърз шепот и да видите наличните модели.", "Click here to see available models.": "Натиснете тук, за да видите наличните модели.", "Click here to select": "Натиснете тук, за да изберете", "Click here to select a csv file.": "Натиснете тук, за да изберете csv файл.", @@ -206,12 +206,12 @@ "Close": "Затвори", "Code execution": "Изпълнение на код", "Code Execution": "Изпълнение на код", - "Code Execution Engine": "Двигател за изпълнение на код", + "Code Execution Engine": "Двигател за изпълнение на кода", "Code Execution Timeout": "", "Code formatted successfully": "Кодът е форматиран успешно", "Code Interpreter": "Интерпретатор на код", - "Code Interpreter Engine": "Двигател на интерпретатора на код", - "Code Interpreter Prompt Template": "Шаблон за промпт на интерпретатора на код", + "Code Interpreter Engine": "Двигател на интерпретатора на кода", + "Code Interpreter Prompt Template": "Шаблон за промпт на интерпретатора на кода", "Collapse": "", "Collection": "Колекция", "Color": "Цвят", @@ -296,9 +296,9 @@ "Default to 389 or 636 if TLS is enabled": "По подразбиране 389 или 636, ако TLS е активиран", "Default to ALL": "По подразбиране за ВСИЧКИ", "Default to segmented retrieval for focused and relevant content extraction, this is recommended for most cases.": "", - "Default User Role": "Роля на потребителя по подразбиране", + "Default User Role": "Ролята на потребителя по подразбиране", "Delete": "Изтриване", - "Delete a model": "Изтриване на модел", + "Delete a model": "Изтриване на модела", "Delete All Chats": "Изтриване на всички чатове", "Delete All Models": "Изтриване на всички модели", "Delete chat": "Изтриване на чат", @@ -340,7 +340,7 @@ "Display": "Показване", "Display Emoji in Call": "Показване на емотикони в обаждането", "Display the username instead of You in the Chat": "Показване на потребителското име вместо Вие в чата", - "Displays citations in the response": "Показва цитати в отговора", + "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.": "Не инсталирайте инструменти от източници, на които не се доверявате напълно.", @@ -351,7 +351,7 @@ "Document Intelligence endpoint and key required.": "", "Documentation": "Документация", "Documents": "Документи", - "does not make any external connections, and your data stays securely on your locally hosted server.": "няма външни връзки, и вашите данни остават сигурни на локално назначен сървър.", + "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.": "не инсталирайте случайни функции от източници, на които не се доверявате.", @@ -393,8 +393,8 @@ "Embedding Model": "Модел за вграждане", "Embedding Model Engine": "Двигател на модела за вграждане", "Embedding model set to \"{{embedding_model}}\"": "Модел за вграждане е настроен на \"{{embedding_model}}\"", - "Enable API Key": "Активиране на API ключ", - "Enable autocomplete generation for chat messages": "Активиране на автоматично довършване за съобщения в чата", + "Enable API Key": "Активиране на API", + "Enable autocomplete generation for chat messages": "Активиране на автоматично довършване на съобщения в чата", "Enable Code Execution": "", "Enable Code Interpreter": "Активиране на интерпретатор на код", "Enable Community Sharing": "Разрешаване на споделяне в общност", @@ -456,7 +456,7 @@ "Enter Perplexity API Key": "", "Enter Playwright Timeout": "", "Enter Playwright WebSocket URL": "", - "Enter proxy URL (e.g. https://user:password@host:port)": "Въведете URL адрес на прокси (напр. https://потребител:парола@хост:порт)", + "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)", @@ -501,7 +501,7 @@ "Enter Your Password": "Въведете вашата парола", "Enter Your Role": "Въведете вашата роля", "Enter Your Username": "Въведете вашето потребителско име", - "Enter your webhook URL": "Въведете вашия webhook URL", + "Enter your webhook URL": "Въведете вашия URL адрес на webhook", "Error": "Грешка", "ERROR": "ГРЕШКА", "Error accessing Google Drive: {{error}}": "Грешка при достъп до Google Drive: {{error}}", @@ -517,7 +517,7 @@ "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": "Изпълнете код за анализ", + "Execute code for analysis": "Изпълнете кода за анализ", "Executing **{{NAME}}**...": "", "Expand": "", "Experimental": "Експериментално", @@ -526,7 +526,7 @@ "Explore the cosmos": "Изследвайте космоса", "Export": "Износ", "Export All Archived Chats": "Износ на всички архивирани чатове", - "Export All Chats (All Users)": "Експортване на всички чатове (За всички потребители)", + "Export All Chats (All Users)": "Експортване на всички чатове (за всички потребители)", "Export chat (.json)": "Експортиране на чат (.json)", "Export Chats": "Експортване на чатове", "Export Config to JSON File": "Експортиране на конфигурацията в JSON файл", @@ -574,7 +574,7 @@ "Fingerprint spoofing detected: Unable to use initials as avatar. Defaulting to default profile image.": "Потвърждаване на отпечатък: Не може да се използва инициализационна буква като аватар. Потребителят се връща към стандартна аватарка.", "Firecrawl API Base URL": "", "Firecrawl API Key": "", - "Fluidly stream large external response chunks": "Плавно предаване на големи части от външен отговор", + "Fluidly stream large external response chunks": "Плавно предаване на големи части от външния отговор", "Focus chat input": "Фокусиране на чат вход", "Folder deleted successfully": "Папката е изтрита успешно", "Folder name cannot be empty.": "Името на папката не може да бъде празно.", @@ -597,7 +597,7 @@ "Function Name": "Име на функцията", "Function updated successfully": "Функцията е актуализирана успешно", "Functions": "Функции", - "Functions allow arbitrary code execution.": "Функциите позволяват произволно изпълнение на код.", + "Functions allow arbitrary code execution.": "Функциите позволяват произволно изпълнение на кода.", "Functions imported successfully": "Функциите са импортирани успешно", "Gemini": "", "Gemini API Config": "", @@ -642,7 +642,7 @@ "iframe Sandbox Allow Same Origin": "", "Ignite curiosity": "Запалете любопитството", "Image": "Изображение", - "Image Compression": "Компресия на изображения", + "Image Compression": "Компресия на изображенията", "Image Generation": "Генериране на изображения", "Image Generation (Experimental)": "Генерация на изображения (Експериментално)", "Image Generation Engine": "Двигател за генериране на изображения", @@ -683,7 +683,7 @@ "July": "Юли", "June": "Юни", "Jupyter Auth": "Jupyter удостоверяване", - "Jupyter URL": "Jupyter URL", + "Jupyter URL": "URL адрес на Jupyter", "JWT Expiration": "JWT изтичане", "JWT Token": "JWT токен", "Kagi Search API Key": "API ключ за Kagi Search", @@ -730,14 +730,14 @@ "Lost": "Изгубено", "LTR": "LTR", "Made by Open WebUI Community": "Направено от OpenWebUI общността", - "Make sure to enclose them with": "Уверете се, че са заключени с", + "Make sure to enclose them with": "Уверете се, че сте заключени с", "Make sure to export a workflow.json file as API format from ComfyUI.": "Уверете се, че експортирате файл workflow.json като API формат от ComfyUI.", "Manage": "Управление", "Manage Direct Connections": "Управление на директни връзки", - "Manage Models": "Управление на модели", + "Manage Models": "Управление на моделите", "Manage Ollama": "Управление на Ollama", - "Manage Ollama API Connections": "Управление на Ollama API връзки", - "Manage OpenAI API Connections": "Управление на OpenAI API връзки", + "Manage Ollama API Connections": "Управление на Ollama API", + "Manage OpenAI API Connections": "Управление на OpenAI API", "Manage Pipelines": "Управление на пайплайни", "Manage Tool Servers": "", "March": "Март", @@ -762,8 +762,8 @@ "Microsoft OneDrive (work/school)": "", "Min P": "Мин P", "Mirostat": "Mirostat", - "Mirostat Eta": "Mirostat Eta", - "Mirostat Tau": "Mirostat Tau", + "Mirostat Eta": "Mirostat Ета", + "Mirostat Tau": "Mirostat Тау", "Mistral OCR": "", "Mistral OCR API Key required.": "", "Model": "Модел", @@ -779,7 +779,7 @@ "Model filesystem path detected. Model shortname is required for update, cannot continue.": "Открит е път до файловата система на модела. За актуализацията се изисква съкратено име на модела, не може да продължи.", "Model Filtering": "Филтриране на модели", "Model ID": "ИД на модел", - "Model IDs": "ИД-та на модели", + "Model IDs": "ИД-та на моделите", "Model Name": "Име на модел", "Model not selected": "Не е избран модел", "Model Params": "Параметри на модела", @@ -789,35 +789,35 @@ "Models": "Модели", "Models Access": "Достъп до модели", "Models configuration saved successfully": "Конфигурацията на моделите е запазена успешно", - "Models Public Sharing": "", + "Models Public Sharing": "Споделяне на моделите публично", "Mojeek Search API Key": "API ключ за Mojeek Search", "more": "още", "More": "Повече", - "My Notes": "", + "My Notes": "Моите бележки", "Name": "Име", "Name your knowledge base": "Именувайте вашата база от знания", "Native": "Нативен", "New Chat": "Нов чат", "New Folder": "Нова папка", - "New Note": "", + "New Note": "Нова бележка", "New Password": "Нова парола", "new-channel": "нов-канал", - "No content": "", + "No content": "Без съдържание", "No content found": "Не е намерено съдържание", - "No content found in file.": "", + "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 inference engine with management support found": "Не е намерен механизъм за извод с поддръжка на управлението", "No knowledge found": "Не са намерени знания", "No memories to clear": "", - "No model IDs": "Няма ИД-та на модели", + "No model IDs": "Няма ИД-та на моделите", "No models found": "Не са намерени модели", "No models selected": "Няма избрани модели", - "No Notes": "", + "No Notes": "Няма бележки", "No results found": "Няма намерени резултати", "No search query generated": "Не е генерирана заявка за търсене", "No source available": "Няма наличен източник", @@ -835,20 +835,20 @@ "November": "Ноември", "num_gpu (Ollama)": "num_gpu (Ollama)", "num_thread (Ollama)": "num_thread (Ollama)", - "OAuth ID": "OAuth ID", + "OAuth ID": "ID на OAuth", "October": "Октомври", "Off": "Изкл.", "Okay, Let's Go!": "ОК, Нека започваме!", "OLED Dark": "OLED тъмно", "Ollama": "Ollama", - "Ollama API": "Ollama API", + "Ollama API": "API на Ollama", "Ollama API settings updated": "Настройките на Ollama API са актуализирани", "Ollama Version": "Ollama Версия", "On": "Вкл.", - "OneDrive": "", + "OneDrive": "OneDrive", "Only alphanumeric characters and hyphens are allowed": "Разрешени са само буквено-цифрови знаци и тирета", "Only alphanumeric characters and hyphens are allowed in the command string.": "Само алфанумерични знаци и тире са разрешени в командния низ.", - "Only collections can be edited, create a new knowledge base to edit/add documents.": "Само колекции могат да бъдат редактирани, създайте нова база от знания, за да редактирате/добавяте документи.", + "Only collections can be edited, create a new knowledge base to edit/add documents.": "Само колекциите могат да бъдат редактирани, създайте нова база от знания, за да редактирате/добавяте документи.", "Only markdown files are allowed": "", "Only select users and groups with permission can access": "Само избрани потребители и групи с разрешение могат да имат достъп", "Oops! Looks like the URL is invalid. Please double-check and try again.": "Упс! Изглежда URL адресът е невалиден. Моля, проверете отново и опитайте пак.", @@ -859,11 +859,11 @@ "Open in full screen": "Отвори на цял екран", "Open new chat": "Отвори нов чат", "Open WebUI can use tools provided by any OpenAPI server.": "", - "Open WebUI uses faster-whisper internally.": "Open WebUI използва вътрешно faster-whisper.", + "Open WebUI uses faster-whisper internally.": "Open WebUI използва вътрешно по-бързо-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": "API на OpenAI", "OpenAI API Config": "OpenAI API конфигурация", "OpenAI API Key is required.": "OpenAI API ключ е задължителен.", "OpenAI API settings updated": "Настройките на OpenAI API са актуализирани", @@ -906,7 +906,7 @@ "Please enter a valid path": "", "Please enter a valid URL": "", "Please fill in all fields.": "Моля, попълнете всички полета.", - "Please select a model first.": "Моля, първо изберете модел.", + "Please select a model first.": "Моля, първо изберете модела.", "Please select a model.": "Моля, изберете модел.", "Please select a reason": "Моля, изберете причина", "Port": "Порт", @@ -927,10 +927,10 @@ "Prompt updated successfully": "Промптът е актуализиран успешно", "Prompts": "Промптове", "Prompts Access": "Достъп до промптове", - "Prompts Public Sharing": "", - "Public": "", + "Prompts Public Sharing": "Публично споделяне на промптове", + "Public": "Публично", "Pull \"{{searchValue}}\" from Ollama.com": "Извади \"{{searchValue}}\" от Ollama.com", - "Pull a model from Ollama.com": "Издърпайте модел от Ollama.com", + "Pull a model from Ollama.com": "Издърпайте модела от Ollama.com", "Query Generation Prompt": "Промпт за генериране на запитвания", "RAG Template": "RAG Шаблон", "Rating": "Оценка", @@ -938,7 +938,7 @@ "Read": "Четене", "Read Aloud": "Прочети на глас", "Reasoning Effort": "Усилие за разсъждение", - "Record": "", + "Record": "Запиши", "Record voice": "Записване на глас", "Redirecting you to Open WebUI Community": "Пренасочване към OpenWebUI общността", "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.": "", @@ -946,7 +946,7 @@ "References from": "Препратки от", "Refused when it shouldn't have": "Отказано, когато не трябва да бъде", "Regenerate": "Регенериране", - "Reindex": "", + "Reindex": "Реиндексирай", "Reindex Knowledge Base Vectors": "", "Release Notes": "Бележки по изданието", "Relevance": "Релевантност", @@ -954,12 +954,12 @@ "Remove": "Изтриване", "Remove Model": "Изтриване на модела", "Rename": "Преименуване", - "Reorder Models": "Преорганизиране на модели", + "Reorder Models": "Преорганизиране на моделите", "Repeat Last N": "Повтори последните N", "Repeat Penalty (Ollama)": "Наказание за повторение (Ollama)", "Reply in Thread": "Отговори в тред", "Request Mode": "Режим на заявка", - "Reranking Engine": "", + "Reranking Engine": "Двигател за пренареждане", "Reranking Model": "Модел за преподреждане", "Reset": "Нулиране", "Reset All Models": "Нулиране на всички модели", @@ -969,13 +969,13 @@ "Response notifications cannot be activated as the website permissions have been denied. Please visit your browser settings to grant the necessary access.": "Известията за отговори не могат да бъдат активирани, тъй като разрешенията за уебсайта са отказани. Моля, посетете настройките на вашия браузър, за да дадете необходимия достъп.", "Response splitting": "Разделяне на отговора", "Result": "Резултат", - "Retrieval": "", + "Retrieval": "Извличане", "Retrieval Query Generation": "Генериране на заявка за извличане", "Rich Text Input for Chat": "Богат текстов вход за чат", "RK": "RK", "Role": "Роля", - "Rosé Pine": "Rosé Pine", - "Rosé Pine Dawn": "Rosé Pine Dawn", + "Rosé Pine": "Rose pine", + "Rosé Pine Dawn": "Rose pine Dawn", "RTL": "RTL", "Run": "Изпълни", "Running": "Изпълнява се", @@ -1004,12 +1004,12 @@ "Search Tools": "Инструменти за търсене", "SearchApi API Key": "API ключ за SearchApi", "SearchApi Engine": "Двигател на SearchApi", - "Searched {{count}} sites": "Претърсени {{count}} сайта", + "Searched {{count}} sites": "Претърсени {{count}} сайт", "Searching \"{{searchQuery}}\"": "Търсене на \"{{searchQuery}}\"", "Searching Knowledge for \"{{searchQuery}}\"": "Търсене в знанията за \"{{searchQuery}}\"", - "Searching the web...": "", - "Searxng Query URL": "URL адрес на заявка на Searxng", - "See readme.md for instructions": "Виж readme.md за инструкции", + "Searching the web...": "Търсене в интернет...", + "Searxng Query URL": "URL адрес на заявка за търсене в Searxng", + "See readme.md for instructions": "Вижте readme.md за инструкции", "See what's new": "Виж какво е новото", "Seed": "Начално число", "Select a base model": "Изберете базов модел", @@ -1048,9 +1048,9 @@ "Set Sampler": "Задай семплер", "Set Scheduler": "Задай планировчик", "Set Steps": "Задай Стъпки", - "Set Task Model": "Задаване на модел на задача", + "Set Task Model": "Задаване на модел на задачата", "Set the number of layers, which will be off-loaded to GPU. Increasing this value can significantly improve performance for models that are optimized for GPU acceleration but may also consume more power and GPU resources.": "Задайте броя слоеве, които ще бъдат прехвърлени към GPU. Увеличаването на тази стойност може значително да подобри производителността за модели, оптимизирани за GPU ускорение, но може също да консумира повече енергия и GPU ресурси.", - "Set the number of worker threads used for computation. This option controls how many threads are used to process incoming requests concurrently. Increasing this value can improve performance under high concurrency workloads but may also consume more CPU resources.": "Задайте броя работни нишки, използвани за изчисления. Тази опция контролира колко нишки се използват за едновременна обработка на входящи заявки. Увеличаването на тази стойност може да подобри производителността при високи натоварвания с паралелизъм, но може също да консумира повече CPU ресурси.", + "Set 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": "Задай модел на шепот", "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.": "", @@ -1064,13 +1064,13 @@ "Share": "Подели", "Share Chat": "Подели Чат", "Share to Open WebUI Community": "Споделете с OpenWebUI Общността", - "Sharing Permissions": "", + "Sharing Permissions": "Права за споделяне", "Show": "Покажи", "Show \"What's New\" modal on login": "Покажи модалния прозорец \"Какво е ново\" при вписване", "Show Admin Details in Account Pending Overlay": "Покажи детайлите на администратора в наслагването на изчакващ акаунт", - "Show All": "", - "Show Less": "", - "Show Model": "", + "Show All": "Покажи всички", + "Show Less": "Покажи по-малко", + "Show Model": "Покажи модел", "Show shortcuts": "Покажи преки пътища", "Show your support!": "Покажете вашата подкрепа!", "Showcased creativity": "Показана креативност", @@ -1086,8 +1086,8 @@ "Sougou Search API SK": "", "Source": "Източник", "Speech Playback Speed": "Скорост на възпроизвеждане на речта", - "Speech recognition error: {{error}}": "Грешка при разпознаване на реч: {{error}}", - "Speech-to-Text Engine": "Двигател за преобразуване на реч в текст", + "Speech recognition error: {{error}}": "Грешка при разпознаване на речта: {{error}}", + "Speech-to-Text Engine": "Двигател за преобразуване на реч в текста", "Stop": "Спри", "Stop Sequence": "Стоп последователност", "Stream Chat Response": "Поточен чат отговор", @@ -1104,7 +1104,7 @@ "System": "Система", "System Instructions": "Системни инструкции", "System Prompt": "Системен Промпт", - "Tags": "", + "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.": "", @@ -1131,7 +1131,7 @@ "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 score should be a value between 0.0 (0%) and 1.0 (100%).": "Резултатът трябва да бъде стойност между 0.0 (0%) и 1.0 (100%).", + "The score should be a value between 0.0 (0%) and 1.0 (100%).": "Резултатът трябва да бъде стойност между 0,0 (0%) и 1,0 (100%).", "The temperature of the model. Increasing the temperature will make the model answer more creatively.": "", "Theme": "Тема", "Thinking...": "Мисля...", @@ -1153,8 +1153,8 @@ "Thorough explanation": "Подробно обяснение", "Thought for {{DURATION}}": "Мислил за {{DURATION}}", "Thought for {{DURATION}} seconds": "Мислил за {{DURATION}} секунди", - "Tika": "Tika", - "Tika Server URL required.": "Изисква се URL адрес на Tika сървъра.", + "Tika": "Тика", + "Tika Server URL required.": "Изисква се URL адрес на Тика сървъра.", "Tiktoken": "Tiktoken", "Tip: Update multiple variable slots consecutively by pressing the tab key in the chat input after each replacement.": "Съвет: Актуализирайте няколко слота за променливи последователно, като натискате клавиша Tab в чат входа след всяка подмяна.", "Title": "Заглавие", @@ -1164,12 +1164,12 @@ "Title Generation": "Генериране на заглавие", "Title Generation Prompt": "Промпт за генериране на заглавие", "TLS": "TLS", - "To access the available model names for downloading,": "За достъп до наличните имена на модели за изтегляне,", + "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 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.": "За да защитим вашата поверителност, от вашата обратна връзка се споделят само оценки, идентификатори на модели, тагове и метаданни—вашите чат логове остават лични и не са включени.", + "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.": "За да защитим вашата поверителност, от вашата обратна връзка се споделят само оценки, идентификатори на модели, тагове и метаданни-вашите чат логове остават лични и не са включени.", "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.": "За да изберете инструменти тук, първо ги добавете към работното пространство \"Инструменти\".", @@ -1186,15 +1186,15 @@ "Tool ID": "ID на инструмента", "Tool imported successfully": "Инструментът е импортиран успешно", "Tool Name": "Име на инструмента", - "Tool Servers": "", + "Tool Servers": "Сървъри за инструменти", "Tool updated successfully": "Инструментът е актуализиран успешно", "Tools": "Инструменти", "Tools Access": "Достъп до инструменти", "Tools are a function calling system with arbitrary code execution": "Инструментите са система за извикване на функции с произволно изпълнение на код", - "Tools Function Calling Prompt": "Промпт за извикване на функции на инструментите", + "Tools Function Calling Prompt": "Промпт за извикване на функциите на инструментите", "Tools have a function calling system that allows arbitrary code execution.": "Инструментите имат система за извикване на функции, която позволява произволно изпълнение на код.", - "Tools Public Sharing": "", - "Top K": "Топ K", + "Tools Public Sharing": "Публично споделяне на инструменти", + "Top K": "Топ К", "Top K Reranker": "", "Top P": "Топ P", "Transformers": "Трансформатори", @@ -1204,7 +1204,7 @@ "TTS Settings": "TTS Настройки", "TTS Voice": "TTS Глас", "Type": "Вид", - "Type Hugging Face Resolve (Download) URL": "Въведете Hugging Face Resolve (Download) URL", + "Type Hugging Face Resolve (Download) URL": "Въведете Hugging Face Resolve (Изтегляне) URL", "Uh-oh! There was an issue with the response.": "Ох! Имаше проблем с отговора.", "UI": "Потребителски интерфейс", "Unarchive All": "Разархивирай всички", @@ -1214,9 +1214,9 @@ "Unpin": "Откачи", "Unravel secrets": "Разгадай тайни", "Untagged": "Без етикет", - "Untitled": "", + "Untitled": "Неозаглавен", "Update": "Актуализиране", - "Update and Copy Link": "Обнови и копирай връзка", + "Update and Copy Link": "Обнови и копирай връзката", "Update for the latest features and improvements.": "Актуализирайте за най-новите функции и подобрения.", "Update password": "Обновяване на парола", "Updated": "Актуализирано", @@ -1248,13 +1248,13 @@ "Username": "Потребителско име", "Users": "Потребители", "Using the default arena model with all models. Click the plus button to add custom models.": "Използване на стандартния арена модел с всички модели. Кликнете бутона плюс, за да добавите персонализирани модели.", - "Utilize": "Използване", + "Utilize": "Използване на", "Valid time units:": "Валидни единици за време:", "Valves": "Клапани", "Valves updated": "Клапаните са актуализирани", "Valves updated successfully": "Клапаните са актуализирани успешно", "variable": "променлива", - "variable to have them replaced with clipboard content.": "променлива, за да бъдат заменени със съдържанието от клипборда.", + "variable to have them replaced with clipboard content.": "променлива, за да бъдат заменени със съдържание от клипборда.", "Verify Connection": "", "Verify SSL Certificate": "", "Version": "Версия", @@ -1268,7 +1268,7 @@ "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 позволява произволно изпълнение на код, което представлява сериозни рискове за сигурността—продължете с изключително внимание.", + "Warning: Jupyter execution enables arbitrary code execution, posing severe security risks—proceed with extreme caution.": "Предупреждение: Изпълнението на Jupyter позволява произволно изпълнение на код, което представлява сериозни рискове за сигурността-продължете с изключително внимание.", "Web": "Уеб", "Web API": "Уеб API", "Web Loader Engine": "", @@ -1278,13 +1278,13 @@ "Web Search Query Generation": "Генериране на заявки за уеб търсене", "Webhook URL": "Уебхук URL", "WebUI Settings": "WebUI Настройки", - "WebUI URL": "WebUI URL", + "WebUI URL": "URL на WebUI", "WebUI will make requests to \"{{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\"", "What are you trying to achieve?": "Какво се опитвате да постигнете?", "What are you working on?": "Върху какво работите?", - "What’s New in": "", + "What’s New in": "Какво е ново в", "When enabled, the model will respond to each chat message in real-time, generating a response as soon as the user sends a message. This mode is useful for live chat applications, but may impact performance on slower hardware.": "Когато е активирано, моделът ще отговаря на всяко съобщение в чата в реално време, генерирайки отговор веднага щом потребителят изпрати съобщение. Този режим е полезен за приложения за чат на живо, но може да повлияе на производителността на по-бавен хардуер.", "wherever you are": "където и да сте", "Whisper (Local)": "Whisper (Локално)", @@ -1316,6 +1316,6 @@ "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 Proxy URL": "" + "Youtube Language": "Youtube език", + "Youtube Proxy URL": "Youtube Прокси URL" } From b7ef9a03accf88aacea9f7ee44b5bcd1c0b71767 Mon Sep 17 00:00:00 2001 From: Aleix Dorca Date: Mon, 12 May 2025 08:56:52 +0200 Subject: [PATCH 003/100] Update catalan translation.json --- src/lib/i18n/locales/ca-ES/translation.json | 92 ++++++++++----------- 1 file changed, 46 insertions(+), 46 deletions(-) diff --git a/src/lib/i18n/locales/ca-ES/translation.json b/src/lib/i18n/locales/ca-ES/translation.json index f7b3068e5..17826554b 100644 --- a/src/lib/i18n/locales/ca-ES/translation.json +++ b/src/lib/i18n/locales/ca-ES/translation.json @@ -4,7 +4,7 @@ "(e.g. `sh webui.sh --api --api-auth username_password`)": "(p. ex. `sh webui.sh --api --api-auth username_password`)", "(e.g. `sh webui.sh --api`)": "(p. ex. `sh webui.sh --api`)", "(latest)": "(últim)", - "(leave blank for to use commercial endpoint)": "", + "(leave blank for to use commercial endpoint)": "(deixa-ho buit per utilitzar un punt d'accés comercial)", "(Ollama)": "(Ollama)", "{{ models }}": "{{ models }}", "{{COUNT}} Available Tools": "{{COUNT}} eines disponibles", @@ -105,7 +105,7 @@ "Are you sure you want to delete this channel?": "Estàs segur que vols eliminar aquest canal?", "Are you sure you want to delete this message?": "Estàs segur que vols eliminar aquest missatge?", "Are you sure you want to unarchive all archived chats?": "Estàs segur que vols desarxivar tots els xats arxivats?", - "Are you sure you want to update this user's role to **{{ROLE}}**?": "", + "Are you sure you want to update this user's role to **{{ROLE}}**?": "Estàs segur que vols actualitzar el rol de l'usuari a **{{ROLE}}**?", "Are you sure?": "Estàs segur?", "Arena Models": "Models de l'Arena", "Artifacts": "Artefactes", @@ -148,7 +148,7 @@ "Bing Search V7 Subscription Key": "Clau de subscripció a Bing Search V7", "Bocha Search API Key": "Clau API de Bocha Search", "Boosting or penalizing specific tokens for constrained responses. Bias values will be clamped between -100 and 100 (inclusive). (Default: none)": "Potenciar o penalitzar tokens específics per a respostes limitades. Els valors de biaix es fixaran entre -100 i 100 (inclosos). (Per defecte: cap)", - "Both Docling OCR Engine and Language(s) must be provided or both left empty.": "", + "Both Docling OCR Engine and Language(s) must be provided or both left empty.": "Cal proporcionar tant el motor OCR de Docling com els idiomes o bé deixar-los buits.", "Brave Search API Key": "Clau API de Brave Search", "By {{name}}": "Per {{name}}", "Bypass Embedding and Retrieval": "Desactivar l'Embedding i el Retrieval", @@ -159,7 +159,7 @@ "Cancel": "Cancel·lar", "Capabilities": "Capacitats", "Capture": "Captura", - "Capture Audio": "", + "Capture Audio": "Capturar àudio", "Certificate Path": "Camí del certificat", "Change Password": "Canviar la contrasenya", "Channel Name": "Nom del canal", @@ -269,8 +269,8 @@ "Create Knowledge": "Crear Coneixement", "Create new key": "Crear una nova clau", "Create new secret key": "Crear una nova clau secreta", - "Create Note": "", - "Create your first note by clicking on the plus button below.": "", + "Create Note": "Crea nota", + "Create your first note by clicking on the plus button below.": "Crea la teva primera nota prement sobre el botó 'més' inferior", "Created at": "Creat el", "Created At": "Creat el", "Created by": "Creat per", @@ -308,7 +308,7 @@ "Delete function?": "Eliminar funció?", "Delete Message": "Eleiminar el missatge", "Delete message?": "Eliminar el missatge?", - "Delete note?": "", + "Delete note?": "Eliminar la nota?", "Delete prompt?": "Eliminar indicació?", "delete this link": "Eliminar aquest enllaç", "Delete tool?": "Eliminar eina?", @@ -364,7 +364,7 @@ "Download Database": "Descarregar la base de dades", "Drag and drop a file to upload or select a file to view": "Arrossegar un arxiu per pujar o escull un arxiu a veure", "Draw": "Dibuixar", - "Drop any files here to upload": "", + "Drop any files here to upload": "Arrosega qualsevol arxius a pujar", "e.g. '30s','10m'. Valid time units are 's', 'm', 'h'.": "p. ex. '30s','10m'. Les unitats de temps vàlides són 's', 'm', 'h'.", "e.g. \"json\" or a JSON schema": "p. ex. \"json\" o un esquema JSON", "e.g. 60": "p. ex. 60", @@ -374,9 +374,9 @@ "e.g. my_filter": "p. ex. els_meus_filtres", "e.g. my_tools": "p. ex. les_meves_eines", "e.g. Tools for performing various operations": "p. ex. Eines per dur a terme operacions", - "e.g., 3, 4, 5 (leave blank for default)": "", + "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., 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)": "", + "e.g., westus (leave blank for eastus)": "p. ex. westus (deixa-ho en blanc per a eastus)", "Edit": "Editar", "Edit Arena Model": "Editar model de l'Arena", "Edit Channel": "Editar el canal", @@ -404,9 +404,9 @@ "Enable Mirostat sampling for controlling perplexity.": "Permetre el mostreig de Mirostat per controlar la perplexitat", "Enable New Sign Ups": "Permetre nous registres", "Enabled": "Habilitat", - "Endpoint URL": "", + "Endpoint URL": "URL de connexió", "Enforce Temporary Chat": "Forçar els xats temporals", - "Enhance": "", + "Enhance": "Millorar", "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", @@ -423,8 +423,8 @@ "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 description": "Introdueix la descripció", - "Enter Docling OCR Engine": "", - "Enter Docling OCR Language(s)": "", + "Enter Docling OCR Engine": "Introdueix el motor OCR de Docling", + "Enter Docling OCR Language(s)": "Introdueix els idiomes per a l'OCR de Docling", "Enter Docling Server URL": "Introdueix la URL del servidor Docling", "Enter Document Intelligence Endpoint": "Introdueix el punt de connexió de Document Intelligence", "Enter Document Intelligence Key": "Introdueix la clau de Document Intelligence", @@ -451,7 +451,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 New Password": "", + "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", "Enter Playwright Timeout": "Introdueix el timeout de Playwright", @@ -488,15 +488,15 @@ "Enter Top K Reranker": "Introdueix el Top K Reranker", "Enter URL (e.g. http://127.0.0.1:7860/)": "Introdueix l'URL (p. ex. http://127.0.0.1:7860/)", "Enter URL (e.g. http://localhost:11434)": "Introdueix l'URL (p. ex. http://localhost:11434)", - "Enter Yacy Password": "", - "Enter Yacy URL (e.g. http://yacy.example.com:8090)": "", - "Enter Yacy Username": "", + "Enter Yacy Password": "Introdueix la contrassenya de Yacy", + "Enter Yacy URL (e.g. http://yacy.example.com:8090)": "Introdueix la URL de Yacy (p. ex. http://yacy.example.com:8090)", + "Enter Yacy Username": "Introdueix l'usuari de Yacy", "Enter your current password": "Introdueix la teva contrasenya actual", "Enter Your Email": "Introdueix el teu correu electrònic", "Enter Your Full Name": "Introdueix el teu nom complet", "Enter your message": "Introdueix el teu missatge", "Enter your name": "Entra el teu nom", - "Enter Your Name": "", + "Enter Your Name": "Entra el teu nom", "Enter your new password": "Introdueix la teva nova contrasenya", "Enter Your Password": "Introdueix la teva contrasenya", "Enter Your Role": "Introdueix el teu rol", @@ -505,8 +505,8 @@ "Error": "Error", "ERROR": "ERROR", "Error accessing Google Drive: {{error}}": "Error en accedir a Google Drive: {{error}}", - "Error accessing media devices.": "", - "Error starting recording.": "", + "Error accessing media devices.": "Error en accedir als dispositius multimèdia", + "Error starting recording.": "Error en començar a enregistrar", "Error uploading file: {{error}}": "Error en pujar l'arxiu: {{error}}", "Evaluations": "Avaluacions", "Exa API Key": "Clau API d'EXA", @@ -545,7 +545,7 @@ "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 create API Key.": "No s'ha pogut crear la clau API.", - "Failed to delete note": "", + "Failed to delete note": "No s'ha pogut eliminar la nota", "Failed to fetch models": "No s'han pogut obtenir els models", "Failed to load file content.": "No s'ha pogut carregar el contingut del fitxer", "Failed to read clipboard contents": "No s'ha pogut llegir el contingut del porta-retalls", @@ -603,12 +603,12 @@ "Gemini API Config": "Configuració de Gemini API", "Gemini API Key is required.": "La clau API de Gemini és necessària", "General": "General", - "Generate": "", + "Generate": "Generar", "Generate an image": "Generar una imatge", "Generate Image": "Generar imatge", "Generate prompt pair": "Generar parella d'indicació", "Generating search query": "Generant consulta", - "Generating...": "", + "Generating...": "Generant...", "Get started": "Començar", "Get started with {{WEBUI_NAME}}": "Començar amb {{WEBUI_NAME}}", "Global": "Global", @@ -655,7 +655,7 @@ "Import Config from JSON File": "Importar la configuració des d'un arxiu JSON", "Import Functions": "Importar funcions", "Import Models": "Importar models", - "Import Notes": "", + "Import Notes": "Importar nota", "Import Presets": "Importar configuracions", "Import Prompts": "Importar indicacions", "Import Tools": "Importar eines", @@ -670,7 +670,7 @@ "Instant Auto-Send After Voice Transcription": "Enviament automàtic després de la transcripció de veu", "Integration": "Integració", "Interface": "Interfície", - "Invalid file content": "", + "Invalid file content": "Continguts del fitxer no vàlids", "Invalid file format.": "Format d'arxiu no vàlid.", "Invalid JSON schema": "Esquema JSON no vàlid", "Invalid Tag": "Etiqueta no vàlida", @@ -741,7 +741,7 @@ "Manage Pipelines": "Gestionar les Pipelines", "Manage Tool Servers": "Gestionar els servidors d'eines", "March": "Març", - "Max Speakers": "", + "Max Speakers": "Nombre màxim d'altaveus", "Max Tokens (num_predict)": "Nombre màxim de Tokens (num_predict)", "Max Upload Count": "Nombre màxim de càrregues", "Max Upload Size": "Mida màxima de càrrega", @@ -793,16 +793,16 @@ "Mojeek Search API Key": "Clau API de Mojeek Search", "more": "més", "More": "Més", - "My Notes": "", + "My Notes": "Les meves notes", "Name": "Nom", "Name your knowledge base": "Anomena la teva base de coneixement", "Native": "Natiu", "New Chat": "Nou xat", "New Folder": "Nova carpeta", - "New Note": "", + "New Note": "Nova nota", "New Password": "Nova contrasenya", "new-channel": "nou-canal", - "No content": "", + "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.", "No content to speak": "No hi ha contingut per parlar", @@ -817,7 +817,7 @@ "No model IDs": "No hi ha IDs de model", "No models found": "No s'han trobat models", "No models selected": "No s'ha seleccionat cap model", - "No Notes": "", + "No Notes": "No hi ha notes", "No results found": "No s'han trobat resultats", "No search query generated": "No s'ha generat cap consulta", "No source available": "Sense font disponible", @@ -826,7 +826,7 @@ "None": "Cap", "Not factually correct": "No és clarament correcte", "Not helpful": "No ajuda", - "Note deleted successfully": "", + "Note deleted successfully": "La nota s'ha eliminat correctament", "Note: If you set a minimum score, the search will only return documents with a score greater than or equal to the minimum score.": "Nota: Si s'estableix una puntuació mínima, la cerca només retornarà documents amb una puntuació major o igual a la puntuació mínima.", "Notes": "Notes", "Notification Sound": "So de la notificació", @@ -849,7 +849,7 @@ "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.", - "Only markdown files are allowed": "", + "Only markdown files are allowed": "Només es permeten arxius markdown", "Only select users and groups with permission can access": "Només hi poden accedir usuaris i grups seleccionats amb permís", "Oops! Looks like the URL is invalid. Please double-check and try again.": "Ui! Sembla que l'URL no és vàlida. Si us plau, revisa-la i torna-ho a provar.", "Oops! There are files still uploading. Please wait for the upload to complete.": "Ui! Encara hi ha fitxers pujant-se. Si us plau, espera que finalitzi la càrrega.", @@ -895,7 +895,7 @@ "Pipelines": "Pipelines", "Pipelines Not Detected": "No s'ha detectat Pipelines", "Pipelines Valves": "Vàlvules de les Pipelines", - "Plain text (.md)": "", + "Plain text (.md)": "Text en pla (.md)", "Plain text (.txt)": "Text pla (.txt)", "Playground": "Zona de jocs", "Playwright Timeout (ms)": "Temps d'espera (ms) de Playwright", @@ -938,7 +938,7 @@ "Read": "Llegit", "Read Aloud": "Llegir en veu alta", "Reasoning Effort": "Esforç de raonament", - "Record": "", + "Record": "Enregistrar", "Record voice": "Enregistrar la veu", "Redirecting you to Open WebUI Community": "Redirigint-te a la comunitat OpenWebUI", "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.": "Redueix la probabilitat de generar ximpleries. Un valor més alt (p. ex. 100) donarà respostes més diverses, mentre que un valor més baix (p. ex. 10) serà més conservador.", @@ -959,7 +959,7 @@ "Repeat Penalty (Ollama)": "Penalització per repetició (Ollama)", "Reply in Thread": "Respondre al fil", "Request Mode": "Mode de sol·licitud", - "Reranking Engine": "", + "Reranking Engine": "Motor de valoració", "Reranking Model": "Model de reavaluació", "Reset": "Restableix", "Reset All Models": "Restablir tots els models", @@ -1007,7 +1007,7 @@ "Searched {{count}} sites": "S'han cercat {{count}} pàgines", "Searching \"{{searchQuery}}\"": "Cercant \"{{searchQuery}}\"", "Searching Knowledge for \"{{searchQuery}}\"": "Cercant \"{{searchQuery}}\" al coneixement", - "Searching the web...": "", + "Searching the web...": "Cercant la web...", "Searxng Query URL": "URL de consulta de Searxng", "See readme.md for instructions": "Consulta l'arxiu readme.md per obtenir instruccions", "See what's new": "Veure què hi ha de nou", @@ -1068,8 +1068,8 @@ "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", - "Show All": "", - "Show Less": "", + "Show All": "Mostrar tot", + "Show Less": "Mostrar menys", "Show Model": "Mostrar el model", "Show shortcuts": "Mostrar dreceres", "Show your support!": "Mostra el teu suport!", @@ -1093,7 +1093,7 @@ "Stream Chat Response": "Fer streaming de la resposta del xat", "STT Model": "Model SST", "STT Settings": "Preferències de STT", - "Stylized PDF Export": "", + "Stylized PDF Export": "Exportació en PDF estilitzat", "Subtitle (e.g. about the Roman Empire)": "Subtítol (per exemple, sobre l'Imperi Romà)", "Success": "Èxit", "Successfully updated.": "Actualitzat correctament.", @@ -1140,7 +1140,7 @@ "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 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.": "", + "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 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 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.", @@ -1214,7 +1214,7 @@ "Unpin": "Alliberar", "Unravel secrets": "Descobreix els secrets", "Untagged": "Sense etiquetes", - "Untitled": "", + "Untitled": "Sense títol", "Update": "Actualitzar", "Update and Copy Link": "Actualitzar i copiar l'enllaç", "Update for the latest features and improvements.": "Actualitza per a les darreres característiques i millores.", @@ -1225,7 +1225,7 @@ "Upgrade to a licensed plan for enhanced capabilities, including custom theming and branding, and dedicated support.": "Actualitzar a un pla amb llicència per obtenir capacitats millorades, com ara la temàtica personalitzada i la marca, i assistència dedicada.", "Upload": "Pujar", "Upload a GGUF model": "Pujar un model GGUF", - "Upload Audio": "", + "Upload Audio": "Pujar àudio", "Upload directory": "Pujar directori", "Upload files": "Pujar fitxers", "Upload Files": "Pujar fitxers", @@ -1299,9 +1299,9 @@ "Write a summary in 50 words that summarizes [topic or keyword].": "Escriu un resum en 50 paraules que resumeixi [tema o paraula clau].", "Write something...": "Escriu quelcom...", "Write your model template content here": "Introdueix el contingut de la plantilla del teu model aquí", - "Yacy Instance URL": "", - "Yacy Password": "", - "Yacy Username": "", + "Yacy Instance URL": "URL de la instància de Yacy", + "Yacy Password": "Contrasenya de Yacy", + "Yacy Username": "Nom d'usuari de Yacy", "Yesterday": "Ahir", "You": "Tu", "You are currently using a trial license. Please contact support to upgrade your license.": "Actualment esteu utilitzant una llicència de prova. Poseu-vos en contacte amb el servei d'assistència per actualitzar la vostra llicència.", From 16a9210321bd9f59abd6df3c6086dbeec0fbafdf Mon Sep 17 00:00:00 2001 From: phpia <43242385+phpia@users.noreply.github.com> Date: Mon, 12 May 2025 14:59:15 +0200 Subject: [PATCH 004/100] Update translation for mantain prompt This pull request updates the Spanish localization by replacing all instances of "indicador"/"indicadores" with the more accurate terms "prompt"/"prompts" throughout the UI, documentation, and messages. Reason and Rationale: In the context of AI and Large Language Models (LLMs), the words "prompt" and "prompts" have become standardized terms worldwide, including within the Spanish-speaking technical community. While "indicador" is a valid literal translation of "prompt" in general Spanish, in generative AI contexts it is potentially confusing, since "indicador" more commonly refers to a gauge, dashboard indicator, or measuring device. This can cause misunderstanding for users, especially those familiar with AI concepts, who expect the term "prompt" to refer to the input text given to a model. --- src/lib/i18n/locales/es-ES/translation.json | 2638 +++++++++---------- 1 file changed, 1319 insertions(+), 1319 deletions(-) diff --git a/src/lib/i18n/locales/es-ES/translation.json b/src/lib/i18n/locales/es-ES/translation.json index f3e47aafa..5d1513e79 100644 --- a/src/lib/i18n/locales/es-ES/translation.json +++ b/src/lib/i18n/locales/es-ES/translation.json @@ -1,1321 +1,1321 @@ { - "-1 for no limit, or a positive integer for a specific limit": "-1 para ilimitado, o un número entero positivo para un límite específico.", - "'s', 'm', 'h', 'd', 'w' or '-1' for no expiration.": "'s', 'm', 'h', 'd', 'w' o '-1' para evitar expiración.", - "(e.g. `sh webui.sh --api --api-auth username_password`)": "(p.ej. `sh webui.sh --api --api-auth username_password`)", - "(e.g. `sh webui.sh --api`)": "(p.ej. `sh webui.sh --api`)", - "(latest)": "(último)", - "(leave blank for to use commercial endpoint)": "", - "(Ollama)": "(Ollama)", - "{{ models }}": "{{ models }}", - "{{COUNT}} Available Tools": "", - "{{COUNT}} hidden lines": "{{COUNT}} líneas ocultas", - "{{COUNT}} Replies": "{{COUNT}} Respuestas", - "{{user}}'s Chats": "Chats de {{user}}", - "{{webUIName}} Backend Required": "{{webUIName}} Servidor Requerido", - "*Prompt node ID(s) are required for image generation": "Los ID de nodo son requeridos para la generación de imágenes", - "A new version (v{{LATEST_VERSION}}) is now available.": "Nueva versión (v{{LATEST_VERSION}}) disponible.", - "A task model is used when performing tasks such as generating titles for chats and web search queries": "El modelo de tareas realiza tareas como la generación de títulos para chats y consultas de búsqueda web", - "a user": "un usuario", - "About": "Acerca de", - "Accept autocomplete generation / Jump to prompt variable": "Aceptar generación de autocompletado / Saltar a indicador variable", - "Access": "Acceso", - "Access Control": "Control de Acceso", - "Accessible to all users": "Accesible para todos los usuarios", - "Account": "Cuenta", - "Account Activation Pending": "Activación de cuenta Pendiente", - "Accurate information": "Información precisa", - "Actions": "Acciones", - "Activate": "Activar", - "Activate this command by typing \"/{{COMMAND}}\" to chat input.": "Activar este comando escribiendo \"/{{COMMAND}}\" en el chat", - "Active Users": "Usuarios activos", - "Add": "Añadir", - "Add a model ID": "Añadir un ID de modelo", - "Add a short description about what this model does": "Añadir una breve descripción sobre lo que hace este modelo", - "Add a tag": "Añadir una etiqueta", - "Add Arena Model": "Añadir modelo a la Arena", - "Add Connection": "Añadir Conexión", - "Add Content": "Añadir Contenido", - "Add content here": "Añadir contenido aquí", - "Add custom prompt": "Añadir un indicador personalizado", - "Add Files": "Añadir Archivos", - "Add Group": "Añadir Grupo", - "Add Memory": "Añadir Memoria", - "Add Model": "Añadir Modelo", - "Add Reaction": "Añadir Reacción", - "Add Tag": "Añadir etiqueta", - "Add Tags": "Añadir etiquetas", - "Add text content": "Añade contenido de texto", - "Add User": "Añadir Usuario", - "Add User Group": "Añadir grupo de usuarios", - "Adjusting these settings will apply changes universally to all users.": "El ajuste de estas opciones se aplicará globalmente a todos los usuarios.", - "admin": "admin", - "Admin": "Admin", - "Admin Panel": "Administración", - "Admin Settings": "Ajustes de Admin", - "Admins have access to all tools at all times; users need tools assigned per model in the workspace.": "Los administradores tienen acceso a todas las herramientas en todo momento; los usuarios necesitan que los modelos tengan asignadas las herramientas en el area de trabajo.", - "Advanced Parameters": "Parámetros Avanzados", - "Advanced Params": "Parámetros Avanzados", - "All": "Todos", - "All Documents": "Todos los Documentos", - "All models deleted successfully": "Todos los modelos borrados correctamnete", - "Allow Call": "Permitir Llamada", - "Allow Chat Controls": "Permitir Controles del Chat", - "Allow Chat Delete": "Permitir Borrar Chat", - "Allow Chat Deletion": "Permitir Borrado de Chat", - "Allow Chat Edit": "Pemritir Editar Chat", - "Allow Chat Export": "", - "Allow Chat Share": "", - "Allow File Upload": "Permitir Subida de Archivos", - "Allow Multiple Models in Chat": "", - "Allow non-local voices": "Permitir voces no locales", - "Allow Speech to Text": "", - "Allow Temporary Chat": "Permitir Chat Temporal", - "Allow Text to Speech": "", - "Allow User Location": "Permitir Ubicación de Usuario", - "Allow Voice Interruption in Call": "Permitir Interrupción de Voz en Llamada", - "Allowed Endpoints": "Endpoints Permitidos", - "Already have an account?": "¿Ya tienes una cuenta?", - "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 a top_p, como objetivo garantizar un equilibrio entre calidad y variedad. El parámetro p representa la mínima probabilidad para que un token sea considerado, relativo a la probabilidad del token más probable. Por ejemplo, con p=0.05 y la probabilidad del token más probable de 0.9, los resultados (logits) con un valor inferior a 0.045 son descartados.", - "Always": "Siempre", - "Always Collapse Code Blocks": "Plegar Siempre los Bloques de Código", - "Always Expand Details": "Expandir Siempre Detalles", - "Always Play Notification Sound": "", - "Amazing": "Emocionante", - "an assistant": "un asistente", - "Analyzed": "Analizado", - "Analyzing...": "Analizando..", - "and": "y", - "and {{COUNT}} more": "y {{COUNT}} más", - "and create a new shared link.": "y crear un nuevo enlace compartido.", - "Android": "", - "API Base URL": "URL Base API", - "API Key": "Clave API ", - "API Key created.": "Clave API creada.", - "API Key Endpoint Restrictions": "Clave API para Endpoints Restringidos", - "API keys": "Claves API", - "Application DN": "Aplicacion DN", - "Application DN Password": "Contraseña Aplicacion DN", - "applies to all users with the \"user\" role": "se aplica a todos los usuarios con el rol \"user\" ", - "April": "Abril", - "Archive": "Archivar", - "Archive All Chats": "Archivar Todos los Chats", - "Archived Chats": "Chats archivados", - "archived-chat-export": "exportar chats archivados", - "Are you sure you want to clear all memories? This action cannot be undone.": "¿Seguro que quieres borrar todas las memorias? (¡esta acción NO se puede deshacer!)", - "Are you sure you want to delete this channel?": "¿Seguro de que quieres eliminar este canal?", - "Are you sure you want to delete this message?": "¿Seguro de que quieres eliminar este mensaje? ", - "Are you sure you want to unarchive all archived chats?": "¿Seguro de que quieres desarchivar todos los chats archivados?", - "Are you sure you want to update this user's role to **{{ROLE}}**?": "", - "Are you sure?": "¿Estás seguro?", - "Arena Models": "Arena de Modelos", - "Artifacts": "Artefactos", - "Ask": "Preguntar", - "Ask a question": "Haz una pregunta", - "Assistant": "Asistente", - "Attach file from knowledge": "Adjuntar archivo desde conocimiento", - "Attention to detail": "Atención al detalle", - "Attribute for Mail": "Atributo para Correo", - "Attribute for Username": "Atributo para Nombre de Usuario", - "Audio": "Audio", - "August": "Agosto", - "Auth": "Autorización", - "Authenticate": "Autentificar", - "Authentication": "Autenticación", - "Auto": "Auto", - "Auto-Copy Response to Clipboard": "AutoCopiado de respuesta al Portapapeles", - "Auto-playback response": "Reproducir Respuesta automáticamente", - "Autocomplete Generation": "Generación de Autocompletado", - "Autocomplete Generation Input Max Length": "Max. Longitud de Entrada en Generación de Autocompletado", - "Automatic1111": "AUTOMATIC1111", - "AUTOMATIC1111 Api Auth String": "Auth API para AUTOMATIC1111", - "AUTOMATIC1111 Base URL": "URL Base de AUTOMATIC1111", - "AUTOMATIC1111 Base URL is required.": "la URL Base de AUTOMATIC1111 es necesaria.", - "Available list": "Lista disponible", - "Available Tools": "Herramientas Disponibles", - "available!": "¡disponible!", - "Awful": "Horrible", - "Azure AI Speech": "Voz Azure AI", - "Azure Region": "Región de Azure", - "Back": "Volver", - "Bad Response": "Mala Respuesta", - "Banners": "Banners", - "Base Model (From)": "Modelo Base (desde)", - "Batch Size (num_batch)": "Tamaño de Lote (num_batch)", - "before": "antes", - "Being lazy": "Ser perezoso", - "Beta": "Beta", - "Bing Search V7 Endpoint": "Endpoint de Bing Search V7", - "Bing Search V7 Subscription Key": "Clave de Suscripción de Bing Search V7", - "Bocha Search API Key": "Clave API de Bocha Search", - "Boosting or penalizing specific tokens for constrained responses. Bias values will be clamped between -100 and 100 (inclusive). (Default: none)": "Impulsando o penalizando tokens específicos para respuestas restringidas. Los valores de sesgo se limitarán entre -100 y 100 (inclusive). (Por defecto: ninguno)", - "Both Docling OCR Engine and Language(s) must be provided or both left empty.": "", - "Brave Search API Key": "Clave API de Brave Search", - "By {{name}}": "Por {{name}}", - "Bypass Embedding and Retrieval": "Evitar Incrustración y Recuperación", - "Calendar": "Calendario", - "Call": "Llamada", - "Call feature is not supported when using Web STT engine": "La funcionalidad de Llamada no está soportada cuando se usa el motor Web STT", - "Camera": "Cámara", - "Cancel": "Cancelar", - "Capabilities": "Capacidades", - "Capture": "Captura", - "Capture Audio": "", - "Certificate Path": "Ruta a Certificado", - "Change Password": "Cambiar Contraseña", - "Channel Name": "Nombre del Canal", - "Channels": "Canal", - "Character": "Carácter", - "Character limit for autocomplete generation input": "Límite de caracteres de entrada de la generación de autocompletado", - "Chart new frontiers": "Trazar nuevas fronteras", - "Chat": "Chat", - "Chat Background Image": "Imágen de Fondo del Chat", - "Chat Bubble UI": "Interface de Chat tipo Burbuja", - "Chat Controls": "Controles de chat", - "Chat direction": "Dirección de Chat", - "Chat Overview": "Vista General del Chat", - "Chat Permissions": "Permisos del Chat", - "Chat Tags Auto-Generation": "AutoGeneración de Etiquetas de Chat", - "Chats": "Chats", - "Check Again": "Verifica de nuevo", - "Check for updates": "Buscar actualizaciones", - "Checking for updates...": "Buscando actualizaciones...", - "Choose a model before saving...": "Escoge un modelo antes de guardar...", - "Chunk Overlap": "Superposición de Fragmentos", - "Chunk Size": "Tamaño de los Fragmentos", - "Ciphers": "Cifrado", - "Citation": "Cita", - "Clear memory": "Liberar memoria", - "Clear Memory": "Liberar Memoria", - "click here": "Pulsar aquí", - "Click here for filter guides.": "Pulsar aquí para guías de filtros", - "Click here for help.": "Pulsar aquí para Ayuda.", - "Click here to": "Pulsa aquí para", - "Click here to download user import template file.": "Pulsa aquí para descargar la plantilla para importar usuarios.", - "Click here to learn more about faster-whisper and see the available models.": "Pulsa aquí para saber más sobre faster-whisper y ver los modelos disponibles.", - "Click here to see available models.": "Pulsa aquí para ver modelos disponibles.", - "Click here to select": "Pulsa aquí para seleccionar", - "Click here to select a csv file.": "Pulsa aquí para seleccionar un fichero de Valores Separados por Comas (.csv)", - "Click here to select a py file.": "Pulsa aquí para seleccionar un fichero Python (.py)", - "Click here to upload a workflow.json file.": "Pulsa aquí para subir un fichero workflow.json", - "click here.": "Pulsa aquí.", - "Click on the user role button to change a user's role.": "Pulsa en el botón rol de usuario para cambiar su rol.", - "Clipboard write permission denied. Please check your browser settings to grant the necessary access.": "Permisos de escritura del portapapeles denegado. Por favor, comprueba la configuración de tu navegador para otorgar el permiso necesario.", - "Clone": "Clonar", - "Clone Chat": "Clonar Chat", - "Clone of {{TITLE}}": "Clon de {{TITLE}}", - "Close": "Cerrar", - "Code execution": "Ejecución de Código", - "Code Execution": "Ejecución de Código", - "Code Execution Engine": "Motor de Ejecución de Código", - "Code Execution Timeout": "Tiempo límite de espera para Ejecución de Código", - "Code formatted successfully": "El codigo se ha formateado correctamente.", - "Code Interpreter": "Interprete de Código", - "Code Interpreter Engine": "Motor del Interprete de Código", - "Code Interpreter Prompt Template": "Plantilla del Indicador del Interprete de Código", - "Collapse": "Plegar", - "Collection": "Colección", - "Color": "Color", - "ComfyUI": "ComfyUI", - "ComfyUI API Key": "Clave API de ComfyUI", - "ComfyUI Base URL": "URL Base de ComfyUI", - "ComfyUI Base URL is required.": "La URL Base de ComfyUI es necesaria.", - "ComfyUI Workflow": "Flujo de Trabajo de ComfyUI", - "ComfyUI Workflow Nodes": "Nodos del Flujo de Trabajo de ComfyUI", - "Command": "Comando", - "Completions": "Cumplimientos", - "Concurrent Requests": "Número de Solicitudes Concurrentes", - "Configure": "Configurar", - "Confirm": "Confirmar", - "Confirm Password": "Confirma Contraseña", - "Confirm your action": "Confirma tu acción", - "Confirm your new password": "Confirma tu nueva contraseña", - "Connect to your own OpenAI compatible API endpoints.": "Conectar a tus propios endpoints compatibles API OpenAI.", - "Connect to your own OpenAPI compatible external tool servers.": "Conectar a tus propios endpoints externos de herramientas compatibles API OpenAI.", - "Connection failed": "Conexión fallida", - "Connection successful": "Conexión realizada", - "Connections": "Conexiones", - "Connections saved successfully": "Conexiones grabadas correctamente", - "Constrains effort on reasoning for reasoning models. Only applicable to reasoning models from specific providers that support reasoning effort.": "Limita el esfuerzo de razonamiento para los modelos de razonamiento. Solo aplicable a modelos de razonamiento de proveedores específicos que soportan el esfuerzo de razonamiento.", - "Contact Admin for WebUI Access": "Contacta con Admin para obtener acceso a WebUI", - "Content": "Contenido", - "Content Extraction Engine": "Motor para la Extracción de Contenido", - "Context Length": "Longitud del Contexto", - "Continue Response": "Continuar Respuesta", - "Continue with {{provider}}": "Continuar con {{provider}}", - "Continue with Email": "Continuar con Email", - "Continue with LDAP": "Continuar con 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.": "Controlar como se divide el texto del mensaje para las solicitudes de locución (TTS). 'Punctuation' divide oraciones, 'paragraphs' divide párrafos y 'none' mantiene el mensaje como una sola cadena.", - "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.": "Controla la repetición de secuencias de tokens en el texto generado. Un valor más alto (p.ej., 1.5) penalizá más las repeticiones, mientras que un valor más bajo (p.ej., 1.1) sería más permisivo. En 1, el control está desactivado.", - "Controls": "Controles", - "Controls the balance between coherence and diversity of the output. A lower value will result in more focused and coherent text.": "Controles del equilibrio entre coherencia y diversidad de la salida. Un valor más bajo produce un texto más centrado y coherente.", - "Copied": "Copiado", - "Copied shared chat URL to clipboard!": "¡Copiada al portapapeles la URL del chat compartido!", - "Copied to clipboard": "Copiado al portapapeles", - "Copy": "Copiar", - "Copy Formatted Text": "", - "Copy last code block": "Copia el último bloque de código", - "Copy last response": "Copia la última respuesta", - "Copy Link": "Copiar enlace", - "Copy to clipboard": "Copia a portapapeles", - "Copying to clipboard was successful!": "¡La copia al portapapeles se ha realizado correctamente!", - "CORS must be properly configured by the provider to allow requests from Open WebUI.": "El protocolo CORS debe estar configurado correctamente por el proveedor para permitir solicitudes desde Open WebUI.", - "Create": "Crear", - "Create a knowledge base": "Crear Base de Conocimiento", - "Create a model": "Crear Modelo", - "Create Account": "Crear Cuenta", - "Create Admin Account": "Crear Cuenta Administrativa", - "Create Channel": "Crear Canal", - "Create Group": "Crear Grupo", - "Create Knowledge": "Crear Conocimiento", - "Create new key": "Crear Nueva Clave", - "Create new secret key": "Crear Nueva Clave Secreta", - "Create Note": "", - "Create your first note by clicking on the plus button below.": "", - "Created at": "Creado en", - "Created At": "Creado En", - "Created by": "Creado por", - "CSV Import": "Importar CSV", - "Ctrl+Enter to Send": "'Ctrl+Enter' para Enviar", - "Current Model": "Modelo Actual", - "Current Password": "Contraseña Actual", - "Custom": "Personalizado", - "Danger Zone": "Zona Peligrosa", - "Dark": "Oscuro", - "Database": "Base de datos", - "December": "Diciembre", - "Default": "Predeterminado", - "Default (Open AI)": "Predeterminado (Open AI)", - "Default (SentenceTransformers)": "Predeterminado (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.": "El modo Predeterminado funciona con una amplia gama de modelos llamando a las herramientas antes de la ejecución. El modo Nativo aprovecha la capacidad de llamada a herramientas integrada en el modelo, pero requiere que el modelo soporte esta función de manera inherente.", - "Default Model": "Modelo Predeterminado", - "Default model updated": "El modelo Predeterminado ha sido actualizado", - "Default Models": "Modelos Predeterminados", - "Default permissions": "Permisos Predeterminados", - "Default permissions updated successfully": "Permisos predeterminados actualizados correctamente", - "Default Prompt Suggestions": "Sugerencias Predeterminadas de Indicador", - "Default to 389 or 636 if TLS is enabled": "Predeterminado a 389, o 636 si TLS está habilitado", - "Default to ALL": "Predeterminado a TODOS", - "Default to segmented retrieval for focused and relevant content extraction, this is recommended for most cases.": "Por defecto está predeterminada una segmentación de la recuperación para una extracción de contenido centrado y relevante, recomendado para la mayoría de los casos.", - "Default User Role": "Rol predeterminado de los nuevos usuarios", - "Delete": "Borrar", - "Delete a model": "Borrar un modelo", - "Delete All Chats": "Borrar todos los chats", - "Delete All Models": "Borrar todos los modelos", - "Delete chat": "Borrar chat", - "Delete Chat": "Borrar Chat", - "Delete chat?": "¿Borrar el chat?", - "Delete folder?": "¿Borrar carpeta?", - "Delete function?": "Borrar la función?", - "Delete Message": "Borrar mensaje", - "Delete message?": "¿Borrar mensaje?", - "Delete note?": "", - "Delete prompt?": "¿Borrar el indicador?", - "delete this link": "Borrar este enlace", - "Delete tool?": "¿Borrar la herramienta?", - "Delete User": "Borrar Usuario", - "Deleted {{deleteModelTag}}": "{{deleteModelTag}} Borrado", - "Deleted {{name}}": "{{nombre}} Borrado", - "Deleted User": "Usuario Borrado", - "Describe your knowledge base and objectives": "Describe tu Base de Conocimientos y sus objetivos", - "Description": "Descripción", - "Detect Artifacts Automatically": "Detectar Artefactos Automáticamente", - "Didn't fully follow instructions": "No seguiste completamente las instrucciones", - "Direct": "Directo", - "Direct Connections": "Conexiones Directas", - "Direct Connections allow users to connect to their own OpenAI compatible API endpoints.": "Las Conexiones Directas permiten a los usuarios conectar a sus propios endpoints compatibles API OpenAI.", - "Direct Connections settings updated": "Se actualizaron las configuraciones de las Conexiones Directas", - "Direct Tool Servers": "Servidores de Herramientas Directos", - "Disabled": "Deshabilitado", - "Discover a function": "Descubrir Funciónes", - "Discover a model": "Descubrir Modelos", - "Discover a prompt": "Descubrir Indicadores", - "Discover a tool": "Descubrir Herramientas", - "Discover how to use Open WebUI and seek support from the community.": "Descubre cómo usar Open WebUI y busca Soporte Comunitario.", - "Discover wonders": "Descubre Maravillas", - "Discover, download, and explore custom functions": "Descubre, descarga y explora funciones personalizadas", - "Discover, download, and explore custom prompts": "Descubre, descarga, y explora indicadores personalizados", - "Discover, download, and explore custom tools": "Descubre, descarga y explora herramientas personalizadas", - "Discover, download, and explore model presets": "Descubre, descarga y explora modelos con preajustados", - "Dismissible": "Desestimable", - "Display": "Mostrar", - "Display Emoji in Call": "Muestra Emojis en Llamada", - "Display the username instead of You in the Chat": "Mostrar en el chat el nombre de usuario en lugar del genérico Tu", - "Displays citations in the response": "Mostrar citas en la respuesta", - "Dive into knowledge": "Sumérgete en el conocimiento", - "Do not install functions from sources you do not fully trust.": "¡No instalar funciones de fuentes en las que que no se confíe totalmente!", - "Do not install tools from sources you do not fully trust.": "¡No instalar herramientas de fuentes en las que no se confíe totalmente!", - "Docling": "Docling", - "Docling Server URL required.": "Docling URL del servidor necesaria.", - "Document": "Documento", - "Document Intelligence": "Azure Doc Intelligence", - "Document Intelligence endpoint and key required.": "Es neceario un endpoint y clave de Azure Document Intelligence.", - "Documentation": "Documentación", - "Documents": "Documentos", - "does not make any external connections, and your data stays securely on your locally hosted server.": "no se realiza ninguna conexión externa y tus datos permanecen seguros alojados localmente en tu servidor.", - "Domain Filter List": "Lista de Filtrado de Dominio", - "Don't have an account?": "¿No tienes una cuenta?", - "don't install random functions from sources you don't trust.": "¡no instalar funciones desconocidas de fuentes en las que no se confíe!", - "don't install random tools from sources you don't trust.": "¡no instalar herramientas desconocidas de fuentes en las que no se confíe!", - "Don't like the style": "¿No te gusta el estilo?", - "Done": "Hecho", - "Download": "Descargar", - "Download as SVG": "Descargar como SVG", - "Download canceled": "Descarga cancelada", - "Download Database": "Descargar Base de Datos", - "Drag and drop a file to upload or select a file to view": "Arrastra y suelta un archivo para subirlo o selecciona uno para verlo", - "Draw": "Dibujar", - "Drop any files here to upload": "", - "e.g. '30s','10m'. Valid time units are 's', 'm', 'h'.": "p.ej. '30s','10m'. Unidades de tiempo válidas son 's', 'm', 'h'.", - "e.g. \"json\" or a JSON schema": "p.ej. \"json\" o un esquema JSON", - "e.g. 60": "p.ej. 60", - "e.g. A filter to remove profanity from text": "p.ej. Un filtro para eliminar malas palabras del texto", - "e.g. My Filter": "p.ej. Mi Filtro", - "e.g. My Tools": "p.ej. Mis Herramientas", - "e.g. my_filter": "p.ej. mi_filtro", - "e.g. my_tools": "p.ej. mis_herramientas", - "e.g. Tools for performing various operations": "p.ej. Herramientas para realizar varias operaciones", - "e.g., 3, 4, 5 (leave blank for default)": "", - "e.g., en-US,ja-JP (leave blank for auto-detect)": "p. ej., en-US,ja-JP (dejar en blanco para detectar automáticamente)", - "e.g., westus (leave blank for eastus)": "", - "Edit": "Editar", - "Edit Arena Model": "Editar Modelo en Arena", - "Edit Channel": "Editar Canal", - "Edit Connection": "Editar Conexión", - "Edit Default Permissions": "Editar Permisos Predeterminados", - "Edit Memory": "Editar Memoria", - "Edit User": "Editar Usuario", - "Edit User Group": "Editar Grupo de Usuarios", - "ElevenLabs": "ElevenLabs", - "Email": "Email", - "Embark on adventures": "Embarcate en aventuras", - "Embedding": "Incrustación", - "Embedding Batch Size": "Tamaño del Lote de Incrustación", - "Embedding Model": "Modelo de Incrustación", - "Embedding Model Engine": "Motor del Modelo de Incrustación", - "Embedding model set to \"{{embedding_model}}\"": "Modelo de Incrustación configurado a \"{{embedding_model}}\"", - "Enable API Key": "Habilitar Clave API", - "Enable autocomplete generation for chat messages": "Habilitar generación de autocompletado para mensajes de chat", - "Enable Code Execution": "Habilitar Ejecución de Código", - "Enable Code Interpreter": "Habilitar Interprete de Código", - "Enable Community Sharing": "Habilitar Compartir con la Comunidad", - "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.": "Habilitar bloqueo de memoria (mlock) para prevenir que los datos del modelo se intercambien fuera de la RAM. Esta opción bloquea el conjunto de páginas de trabajo del modelo en RAM, asegurando que no se intercambiarán fuera a disco. Esto puede ayudar a mantener el rendimiento evitando fallos de página y asegurando un acceso rápido a los datos.", - "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.": "Habilitar Mapeado de Memoria (mmap) para cargar datos del modelo. Esta opción permite al sistema usar el almacenamiento del disco como una extensión de la RAM al tratar los archivos en disco como si estuvieran en la RAM. Esto puede mejorar el rendimiento del modelo al permitir un acceso más rápido a los datos. Sin embargo, puede no funcionar correctamente con todos los sistemas y puede consumir una cantidad significativa de espacio en disco.", - "Enable Message Rating": "Habilitar Calificación de los Mensajes", - "Enable Mirostat sampling for controlling perplexity.": "Algoritmo de decodificación de texto neuronal que controla activamente el proceso generativo para mantener la perplejidad del texto generado en un valor deseado. Previene las trampas de aburrimiento (por excesivas repeticiones) y de incoherencia (por generación de excesivo texto).", - "Enable New Sign Ups": "Habilitar Registros de Nuevos Usuarios", - "Enabled": "Habilitado", - "Endpoint URL": "", - "Enforce Temporary Chat": "Forzar el uso de Chat Temporal", - "Enhance": "", - "Ensure your CSV file includes 4 columns in this order: Name, Email, Password, Role.": "Asegúrese de que su archivo CSV incluya 4 columnas en este orden: Nombre, Correo Electrónico, Contraseña, Rol.", - "Enter {{role}} message here": "Ingresar mensaje {{role}} aquí", - "Enter a detail about yourself for your LLMs to recall": "Ingresar detalles sobre ti para que los recuerden sus LLMs", - "Enter api auth string (e.g. username:password)": "Ingresar campo de autorización de la api (p.ej. nombre:contraseña)", - "Enter Application DN": "Ingresar el DN de la Aplicación", - "Enter Application DN Password": "Ingresar la Contraseña del DN de la Aplicación", - "Enter Bing Search V7 Endpoint": "Ingresar el Endpoint de Bing Search V7", - "Enter Bing Search V7 Subscription Key": "Ingresar la Clave de Suscripción de Bing Search V7", - "Enter Bocha Search API Key": "Ingresar la Clave API de Bocha Search", - "Enter Brave Search API Key": "Ingresar la Clave API de Brave Search", - "Enter certificate path": "Ingresar la ruta del certificado", - "Enter CFG Scale (e.g. 7.0)": "Ingresa escala CFG (p.ej., 7.0)", - "Enter Chunk Overlap": "Ingresar Superposición de los Fragmentos", - "Enter Chunk Size": "Ingresar el Tamaño del Fragmento", - "Enter comma-separated \"token:bias_value\" pairs (example: 5432:100, 413:-100)": "Ingresar pares \"token:valor_sesgo\" separados por comas (ejemplo: 5432:100, 413:-100)", - "Enter description": "Ingresar Descripción", - "Enter Docling OCR Engine": "", - "Enter Docling OCR Language(s)": "", - "Enter Docling Server URL": "Ingresar URL del Servidor Docling", - "Enter Document Intelligence Endpoint": "Ingresar el Endpoint de Azure Document Intelligence", - "Enter Document Intelligence Key": "Ingresar Clave de Azure Document Intelligence", - "Enter domains separated by commas (e.g., example.com,site.org)": "Ingresar dominios separados por comas (p.ej., ejemplo.com,sitio.org)", - "Enter Exa API Key": "Ingresar Clave API de Exa", - "Enter External Web Loader API Key": "", - "Enter External Web Loader URL": "", - "Enter External Web Search API Key": "", - "Enter External Web Search URL": "", - "Enter Firecrawl API Base URL": "Ingresar URL Base del API de Firecrawl", - "Enter Firecrawl API Key": "Ingresar Clave del API de Firecrawl", - "Enter Github Raw URL": "Ingresar URL Github en Bruto(raw)", - "Enter Google PSE API Key": "Ingresar Clave API de Google PSE", - "Enter Google PSE Engine Id": "Ingresa ID del Motor PSE de Google", - "Enter Image Size (e.g. 512x512)": "Ingresar Tamaño de Imagen (p.ej. 512x512)", - "Enter Jina API Key": "Ingresar Clave API de Jina", - "Enter Jupyter Password": "Ingresar Contraseña de Jupyter", - "Enter Jupyter Token": "Ingresar Token de Jupyter", - "Enter Jupyter URL": "Ingresar URL de Jupyter", - "Enter Kagi Search API Key": "Ingresar Clave API de Kagi Search", - "Enter Key Behavior": "Comportamiento de la Tecla de Envío", - "Enter language codes": "Ingresar Códigos de Idioma", - "Enter Mistral API Key": "Ingresar Clave API de Mistral", - "Enter Model ID": "Ingresar ID del Modelo", - "Enter model tag (e.g. {{modelTag}})": "Ingresar la etiqueta del modelo (p.ej. {{modelTag}})", - "Enter Mojeek Search API Key": "Ingresar Clave API de Mojeek Search", - "Enter New Password": "", - "Enter Number of Steps (e.g. 50)": "Ingresar Número de Pasos (p.ej., 50)", - "Enter Perplexity API Key": "Ingresar Clave API de Perplexity", - "Enter Playwright Timeout": "Ingresar límite de tiempo de espera de Playwright", - "Enter Playwright WebSocket URL": "Ingresar URL de WebSocket de Playwright", - "Enter proxy URL (e.g. https://user:password@host:port)": "Ingresar URL del proxy (p.ej. https://user:password@host:port)", - "Enter reasoning effort": "Ingresar esfuerzo de razonamiento", - "Enter Sampler (e.g. Euler a)": "Ingresar Muestreador (p.ej., Euler a)", - "Enter Scheduler (e.g. Karras)": "Ingresar Planificador (p.ej., Karras)", - "Enter Score": "Ingresar Puntuación", - "Enter SearchApi API Key": "Ingresar Clave API de SearchApi", - "Enter SearchApi Engine": "Ingresar Motor de SearchApi", - "Enter Searxng Query URL": "Ingresar URL de la consulta Searxng", - "Enter Seed": "Ingresar Semilla", - "Enter SerpApi API Key": "Ingresar Clave API de SerpApi", - "Enter SerpApi Engine": "Ingresar Motor de SerpApi", - "Enter Serper API Key": "Ingresar Clave API de Serper", - "Enter Serply API Key": "Ingresar Clave API de Serply", - "Enter Serpstack API Key": "Ingresar Clave API de Serpstack", - "Enter server host": "Ingresar host del servidor", - "Enter server label": "Ingresar etiqueta del servidor", - "Enter server port": "Ingresar puerto del servidor", - "Enter Sougou Search API sID": "Ingresar Sougou Search API sID", - "Enter Sougou Search API SK": "Ingresar Sougou Search API SK", - "Enter stop sequence": "Ingresar secuencia de parada", - "Enter system prompt": "Ingresar Indicador del sistema", - "Enter system prompt here": "Ingresa aquí el indicador del sistema", - "Enter Tavily API Key": "Ingresar Clave API de Tavily", - "Enter Tavily Extract Depth": "Ingresar parámetro de Extract Depth de Taviliy", - "Enter the public URL of your WebUI. This URL will be used to generate links in the notifications.": "Ingresar URL pública de WebUI. Esta URL se usará para generar enlaces en las notificaciones.", - "Enter Tika Server URL": "Ingresar URL del servidor Tika", - "Enter timeout in seconds": "Ingresar tiempo límite de espera en segundos", - "Enter to Send": "'Enter' para Enviar", - "Enter Top K": "Ingresar Top K", - "Enter Top K Reranker": "Ingresar Top K Reclasificador", - "Enter URL (e.g. http://127.0.0.1:7860/)": "Ingresar URL (p.ej., http://127.0.0.1:7860/)", - "Enter URL (e.g. http://localhost:11434)": "Ingresar URL (p.ej., http://localhost:11434)", - "Enter Yacy Password": "", - "Enter Yacy URL (e.g. http://yacy.example.com:8090)": "", - "Enter Yacy Username": "", - "Enter your current password": "Ingresa tu contraseña actual", - "Enter Your Email": "Ingresa tu correo electrónico", - "Enter Your Full Name": "Ingresa su nombre completo", - "Enter your message": "Ingresa tu mensaje", - "Enter your name": "Ingresa tu nombre", - "Enter Your Name": "", - "Enter your new password": "Ingresa tu contraseña nueva", - "Enter Your Password": "Ingresa tu contraseña", - "Enter Your Role": "Ingresa tu rol", - "Enter Your Username": "Ingresa tu nombre de usuario", - "Enter your webhook URL": "Ingresa tu URL de webhook", - "Error": "Error", - "ERROR": "ERROR", - "Error accessing Google Drive: {{error}}": "Error accediendo a Google Drive: {{error}}", - "Error accessing media devices.": "", - "Error starting recording.": "", - "Error uploading file: {{error}}": "Error subiendo el archivo: {{error}}", - "Evaluations": "Evaluaciones", - "Exa API Key": "Clave API de Exa", - "Example: (&(objectClass=inetOrgPerson)(uid=%s))": "Ejemplo: (&(objectClass=inetOrgPerson)(uid=%s))", - "Example: ALL": "Ejemplo: TODOS", - "Example: mail": "Ejemplo: correo", - "Example: ou=users,dc=foo,dc=example": "Ejemplo: ou=usuarios,dc=foo,dc=ejemplo", - "Example: sAMAccountName or uid or userPrincipalName": "Ejemplo: sAMNombreCuenta o uid o userNombrePrincipal", - "Exceeded the number of seats in your license. Please contact support to increase the number of seats.": "Excedido el número de accesos de usuarios en tu licencia. Por favor, contacta con soporte para aumentar el número de accesos.", - "Exclude": "Excluir", - "Execute code for analysis": "Ejecutar código para análisis", - "Executing **{{NAME}}**...": "Ejecutando **{{NAME}}**...", - "Expand": "Expandir", - "Experimental": "Experimental", - "Explain": "Explicar", - "Explain this section to me in more detail": "Explícame esta sección con más detalle", - "Explore the cosmos": "Explora el cosmos", - "Export": "Exportar", - "Export All Archived Chats": "Exportar Todos los Chats Archivados", - "Export All Chats (All Users)": "Exportar Todos los Chats (Todos los Usuarios)", - "Export chat (.json)": "Exportar chat (.json)", - "Export Chats": "Exportar Chats", - "Export Config to JSON File": "Exportar Configuración a archivo JSON", - "Export Functions": "Exportar Funciones", - "Export Models": "Exportar Modelos", - "Export Presets": "Exportar Preajustes", - "Export Prompts": "Exportar Indicadores", - "Export to CSV": "Exportar a CSV", - "Export Tools": "Exportar Herramientas", - "External": "Externo", - "External Models": "Modelos Externos", - "External Web Loader API Key": "", - "External Web Loader URL": "", - "External Web Search API Key": "", - "External Web Search URL": "", - "Failed to add file.": "Fallo al añadir el archivo.", - "Failed to connect to {{URL}} OpenAPI tool server": "Fallo al conectar al servidor de herramientas {{URL}}", - "Failed to create API Key.": "Fallo al crear la Clave API.", - "Failed to delete note": "", - "Failed to fetch models": "Fallo al obtener los modelos", - "Failed to load file content.": "", - "Failed to read clipboard contents": "Fallo al leer el contenido del portapapeles", - "Failed to save connections": "Fallo al grabar las conexiones", - "Failed to save models configuration": "Fallo al guardar la configuración de los modelos", - "Failed to update settings": "Fallo al actualizar los ajustes", - "Failed to upload file.": "Fallo al subir el archivo.", - "Features": "Características", - "Features Permissions": "Permisos de las Características", - "February": "Febrero", - "Feedback History": "Historial de Opiniones", - "Feedbacks": "Opiniones", - "Feel free to add specific details": "Añade libremente detalles específicos", - "File": "Archivo", - "File added successfully.": "Archivo añadido correctamente.", - "File content updated successfully.": "Contenido del archivo actualizado correctamente.", - "File Mode": "Modo de Archivo", - "File not found.": "Archivo no encontrado.", - "File removed successfully.": "Archivo eliminado correctamente.", - "File size should not exceed {{maxSize}} MB.": "Tamaño del archivo no debe exceder {{maxSize}} MB.", - "File uploaded successfully": "Archivo subido correctamente", - "Files": "Archivos", - "Filter is now globally disabled": "El filtro ahora está desactivado globalmente", - "Filter is now globally enabled": "El filtro ahora está habilitado globalmente", - "Filters": "Filtros", - "Fingerprint spoofing detected: Unable to use initials as avatar. Defaulting to default profile image.": "Se detectó suplantación de huellas: No se pueden usar las iniciales como avatar. Se establece la imagen de perfil predeterminada.", - "Firecrawl API Base URL": "URL Base de API de Firecrawl", - "Firecrawl API Key": "Clave de API de Firecrawl", - "Fluidly stream large external response chunks": "Transmisión fluida de fragmentos de grandes respuestas externas", - "Focus chat input": "Enfocar campo de chat", - "Folder deleted successfully": "Carpeta eliminada correctamente", - "Folder name cannot be empty.": "El nombre de la carpeta no puede estar vacío", - "Folder name updated successfully": "Nombre de la carpeta actualizado correctamente", - "Followed instructions perfectly": "Siguió las instrucciones perfectamente", - "Forge new paths": "Forjar nuevos caminos", - "Form": "Formulario", - "Format your variables using brackets like this:": "Formatea tus variables usando corchetes así:", - "Forwards system user session credentials to authenticate": "Reenvío de las credenciales de la sesión del usuario del sistema para autenticación", - "Frequency Penalty": "Penalización de Frecuencia", - "Full Context Mode": "Modo Contexto Completo", - "Function": "Función", - "Function Calling": "Modo de Llamada a Funciones (Herramientas)", - "Function created successfully": "Función creada correctamente", - "Function deleted successfully": "Función borrada correctamente", - "Function Description": "Descripción de la Función", - "Function ID": "ID de la Función", - "Function is now globally disabled": "La Función ahora está deshabilitada globalmente", - "Function is now globally enabled": "La Función ahora está habilitada globalmente", - "Function Name": "Nombre de la Función", - "Function updated successfully": "Función actualizada correctamente", - "Functions": "Funciones", - "Functions allow arbitrary code execution.": "Las Funciones habilitan la ejecución de código arbitrario.", - "Functions imported successfully": "Funciones importadas correctamente", - "Gemini": "Gemini", - "Gemini API Config": "Config API Gemini", - "Gemini API Key is required.": "Se requiere Clave API de Gemini.", - "General": "General", - "Generate": "", - "Generate an image": "Generar una imagen", - "Generate Image": "Generar imagen", - "Generate prompt pair": "Generar par de indicadores", - "Generating search query": "Generando consulta de búsqueda", - "Generating...": "", - "Get started": "Empezar", - "Get started with {{WEBUI_NAME}}": "Empezar con {{WEBUI_NAME}}", - "Global": "Global", - "Good Response": "Buena Respuesta", - "Google Drive": "Google Drive", - "Google PSE API Key": "Clave API de Google PSE", - "Google PSE Engine Id": "ID del Motor PSE de Google", - "Group created successfully": "Grupo creado correctamente", - "Group deleted successfully": "Grupo eliminado correctamente", - "Group Description": "Descripción del Grupo", - "Group Name": "Nombre del Grupo", - "Group updated successfully": "Grupo actualizado correctamente", - "Groups": "Grupos", - "Haptic Feedback": "Realimentación Háptica", - "has no conversations.": "no tiene conversaciones.", - "Hello, {{name}}": "Hola, {{name}}", - "Help": "Ayuda", - "Help us create the best community leaderboard by sharing your feedback history!": "¡Ayúdanos a crear la mejor tabla clasificatoria comunitaria compartiendo tu historial de realimentación!", - "Hex Color": "Color Hex", - "Hex Color - Leave empty for default color": "Color Hex - Deja vacío para el color predeterminado", - "Hide": "Esconder", - "Hide Model": "Ocultar Modelo", - "Home": "Inicio", - "Host": "Host", - "How can I help you today?": "¿Cómo puedo ayudarte hoy?", - "How would you rate this response?": "¿Cómo calificarías esta respuesta?", - "Hybrid Search": "Búsqueda 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.": "Aseguro que he leído y entiendo las implicaciones de mi acción. Soy consciente de los riesgos asociados con la ejecución de código arbitrario y he verificado la confiabilidad de la fuente.", - "ID": "ID", - "iframe Sandbox Allow Forms": "", - "iframe Sandbox Allow Same Origin": "", - "Ignite curiosity": "Encender la curiosidad", - "Image": "Imagen", - "Image Compression": "Compresión de Imagen", - "Image Generation": "Generación de Imagen", - "Image Generation (Experimental)": "Generación de Imagen (experimental)", - "Image Generation Engine": "Motor de Generación de Imagen", - "Image Max Compression Size": "Tamaño Máximo de Compresión de Imagen", - "Image Prompt Generation": "Indicador para Generación de Imagen", - "Image Prompt Generation Prompt": "Indicador para la Generación de Imagen", - "Image Settings": "Configuración de Imágen", - "Images": "Imágenes", - "Import Chats": "Importar Chats", - "Import Config from JSON File": "Importar Config desde Archivo JSON", - "Import Functions": "Importar Funciones", - "Import Models": "Importar Modelos", - "Import Notes": "", - "Import Presets": "Importar Preajustes", - "Import Prompts": "Importar Indicadores", - "Import Tools": "Importar Herramientas", - "Include": "Incluir", - "Include `--api-auth` flag when running stable-diffusion-webui": "Incluir el señalizador `--api-auth` al ejecutar stable-diffusion-webui", - "Include `--api` flag when running stable-diffusion-webui": "Incluir el señalizador `--api` al ejecutar stable-diffusion-webui", - "Influences how quickly the algorithm responds to feedback from the generated text. A lower learning rate will result in slower adjustments, while a higher learning rate will make the algorithm more responsive.": "Influye en la rápidez de respuesta a la realimentación desde el texto generado. Una tasa de aprendizaje más baja resulta en un ajustado más lento, mientras que una tasa de aprendizaje más alta hará que el algoritmo sea más reactivo.", - "Info": "Información", - "Inject the entire content as context for comprehensive processing, this is recommended for complex queries.": "Inyecta el contenido completo como contexto para un procesado comprensivo, recomendado para consultas complejas.", - "Input commands": "Ingresar comandos", - "Install from Github URL": "Instalar desde la URL de Github", - "Instant Auto-Send After Voice Transcription": "AutoEnvio Instantaneo tras la Transcripción de Voz", - "Integration": "Integración", - "Interface": "Interface", - "Invalid file content": "", - "Invalid file format.": "Formato de archivo Inválido.", - "Invalid JSON schema": "Esquema JSON Inválido", - "Invalid Tag": "Etiqueta Inválida", - "is typing...": "está escribiendo...", - "January": "Enero", - "Jina API Key": "Clave API de Jina", - "join our Discord for help.": "unete a nuestro Discord para ayuda.", - "JSON": "JSON", - "JSON Preview": "Prevista del JSON", - "July": "Julio", - "June": "Junio", - "Jupyter Auth": "Autenticación de Jupyter", - "Jupyter URL": "URL de Jupyter", - "JWT Expiration": "Expiración del JSON Web Token (JWT)", - "JWT Token": "JSON Web Token", - "Kagi Search API Key": "Clave API de Kagi Search", - "Keep Alive": "Mantener Vivo", - "Key": "Clave", - "Keyboard shortcuts": "Atajos de teclado", - "Knowledge": "Conocimiento", - "Knowledge Access": "Acceso a Conocimiento", - "Knowledge created successfully.": "Conocimiento creado correctamente.", - "Knowledge deleted successfully.": "Conocimiento eliminado correctamente.", - "Knowledge Public Sharing": "", - "Knowledge reset successfully.": "Conocimiento restablecido correctamente.", - "Knowledge updated successfully": "Conocimiento actualizado correctamente.", - "Kokoro.js (Browser)": "Kokoro.js (Navegador)", - "Kokoro.js Dtype": "Kokoro.js DType", - "Label": "Etiqueta", - "Landing Page Mode": "Modo Página Inicial", - "Language": "Idioma", - "Language Locales": "", - "Last Active": "Última Actividad", - "Last Modified": "Último Modificación", - "Last reply": "Última Respuesta", - "LDAP": "LDAP", - "LDAP server updated": "Servidor LDAP actualizado", - "Leaderboard": "Tabla Clasificatoria", - "Learn more about OpenAPI tool servers.": "Saber más sobre los servidores de herramientas OpenAPI", - "Leave empty for unlimited": "Dejar vacío para ilimitado", - "Leave empty to include all models from \"{{url}}/api/tags\" endpoint": "Dejar vacío para incluir todos los modelos desde el endpoint \"{{url}}/api/tags\"", - "Leave empty to include all models from \"{{url}}/models\" endpoint": "Dejar vacío para incluir todos los modelos desde el endpoint \"{{url}}/models\"", - "Leave empty to include all models or select specific models": "Dejar vacío para incluir todos los modelos o Seleccionar modelos específicos", - "Leave empty to use the default prompt, or enter a custom prompt": "Dejar vacío para usar el indicador predeterminado, o Ingresar un indicador personalizado", - "Leave model field empty to use the default model.": "Dejar vacío el campo modelo para usar el modelo predeterminado.", - "License": "Licencia", - "Light": "Claro", - "Listening...": "Escuchando...", - "Llama.cpp": "Llama.cpp", - "LLMs can make mistakes. Verify important information.": "Los LLMs pueden cometer errores. Verifica la información importante.", - "Loader": "Cargador", - "Loading Kokoro.js...": "Cargando Kokoro.js...", - "Local": "Local", - "Local Models": "Modelos Locales", - "Location access not allowed": "Sin acceso a la Ubicación", - "Logit Bias": "Sesgo de Logit", - "Lost": "Perdido", - "LTR": "LTR", - "Made by Open WebUI Community": "Creado por la Comunidad Open-WebUI", - "Make sure to enclose them with": "Asegúrate de delimitarlos con", - "Make sure to export a workflow.json file as API format from ComfyUI.": "Asegúrate de exportar un archivo workflow.json en formato API desde ComfyUI.", - "Manage": "Gestionar", - "Manage Direct Connections": "Gestionar Conexiones Directas", - "Manage Models": "Gestionar Modelos", - "Manage Ollama": "Gestionar Ollama", - "Manage Ollama API Connections": "Gestionar Conexiones API de Ollama", - "Manage OpenAI API Connections": "Gestionar Conexiones API de OpenAI", - "Manage Pipelines": "Gestionar Tuberías", - "Manage Tool Servers": "Gestionar Servidores de Herramientas", - "March": "Marzo", - "Max Speakers": "", - "Max Tokens (num_predict)": "Máx Tokens (num_predict)", - "Max Upload Count": "Número Max de Subidas", - "Max Upload Size": "Tamaño Max de Subidas", - "Maximum of 3 models can be downloaded simultaneously. Please try again later.": "Se puede descargar un máximo de 3 modelos simultáneamente. Por favor, reinténtelo más tarde.", - "May": "Mayo", - "Memories accessible by LLMs will be shown here.": "Las memorias accesibles por los LLMs se mostrarán aquí.", - "Memory": "Memoria", - "Memory added successfully": "Memoria añadida correctamente", - "Memory cleared successfully": "Memoria liberada correctamente", - "Memory deleted successfully": "Memoria borrada correctamente", - "Memory updated successfully": "Memoria actualizada correctamente", - "Merge Responses": "Fusionar Respuestas", - "Merged Response": "Respuesta combinada", - "Message rating should be enabled to use this feature": "Para usar esta función debe estar habilitada la calificación de mensajes", - "Messages you send after creating your link won't be shared. Users with the URL will be able to view the shared chat.": "Los mensajes que envíe después de la creación del enlace no se compartirán. Los usuarios con la URL del enlace podrán ver el chat compartido.", - "Microsoft OneDrive": "", - "Microsoft OneDrive (personal)": "", - "Microsoft OneDrive (work/school)": "", - "Min P": "Min P", - "Mirostat": "Mirostat", - "Mirostat Eta": "Mirostat Eta", - "Mirostat Tau": "Mirostat Tau", - "Mistral OCR": "OCR Mistral", - "Mistral OCR API Key required.": "Clave API de Mistral OCR requerida", - "Model": "Modelo", - "Model '{{modelName}}' has been successfully downloaded.": "Modelo '{{modelName}}' se ha descargado correctamente.", - "Model '{{modelTag}}' is already in queue for downloading.": "Modelo '{{modelTag}}' ya está en cola para descargar.", - "Model {{modelId}} not found": "Modelo {{modelId}} no encontrado", - "Model {{modelName}} is not vision capable": "Modelo {{modelName}} no esta capacitado para visión", - "Model {{name}} is now {{status}}": "Modelo {{name}} está ahora {{status}}", - "Model {{name}} is now hidden": "", - "Model {{name}} is now visible": "", - "Model accepts image inputs": "Modelo acepta entradas de imágen", - "Model created successfully!": "¡Modelo creado correctamente!", - "Model filesystem path detected. Model shortname is required for update, cannot continue.": "Detectada ruta del sistema al modelo. Para actualizar se requiere el nombre corto del modelo, no se puede continuar.", - "Model Filtering": "Filtrado de modelos", - "Model ID": "ID Modelo", - "Model IDs": "IDs Modelo", - "Model Name": "Nombre Modelo", - "Model not selected": "Modelo no seleccionado", - "Model Params": "Paráms Modelo", - "Model Permissions": "Permisos Modelo", - "Model updated successfully": "Modelo actualizado correctamente", - "Modelfile Content": "Contenido del Modelfile", - "Models": "Modelos", - "Models Access": "Acceso Modelos", - "Models configuration saved successfully": "Configuración de Modelos guardada correctamente", - "Models Public Sharing": "", - "Mojeek Search API Key": "Clave API de Mojeek Search", - "more": "más", - "More": "Más", - "My Notes": "", - "Name": "Nombre", - "Name your knowledge base": "Nombra tu base de conocimientos", - "Native": "Nativo", - "New Chat": "Nuevo Chat", - "New Folder": "Nueva Carpeta", - "New Note": "", - "New Password": "Nueva Contraseña", - "new-channel": "nuevo-canal", - "No content": "", - "No content found": "No se encontró contenido", - "No content found in file.": "", - "No content to speak": "No hay contenido para hablar", - "No distance available": "No hay distancia disponible", - "No feedbacks found": "No se encontraron realimentaciones", - "No file selected": "No se seleccionó archivo", - "No groups with access, add a group to grant access": "No hay grupos con acceso, añade un grupo para otorgar acceso", - "No HTML, CSS, or JavaScript content found.": "No se encontró contenido HTML, CSS, o JavaScript.", - "No inference engine with management support found": "No se encontró un motor de inferencia que soporte gestión", - "No knowledge found": "No se encontró ningún conocimiento", - "No memories to clear": "No hay memorias para borrar", - "No model IDs": "No hay IDs de modelo", - "No models found": "No se encontraron modelos", - "No models selected": "No se seleccionaron modelos", - "No Notes": "", - "No results found": "No se encontraron resultados", - "No search query generated": "No se generó ninguna consulta de búsqueda", - "No source available": "No hay fuente disponible", - "No users were found.": "No se encontraron usuarios.", - "No valves to update": "No hay válvulas para actualizar", - "None": "Ninguno", - "Not factually correct": "No es correcto en todos los aspectos", - "Not helpful": "No aprovechable", - "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.": "Nota: Si estableces una puntuación mínima, la búsqueda sólo devolverá documentos con una puntuación mayor o igual a la puntuación mínima establecida.", - "Notes": "Notas", - "Notification Sound": "Notificación Sonora", - "Notification Webhook": "Notificación Enganchada (webhook)", - "Notifications": "Notificaciones", - "November": "Noviembre", - "num_gpu (Ollama)": "num_gpu (capas Ollama)", - "num_thread (Ollama)": "num_thread (hilos Ollama)", - "OAuth ID": "OAuth ID", - "October": "Octubre", - "Off": "Desactivado", - "Okay, Let's Go!": "Vale, ¡Vamos!", - "OLED Dark": "Oscuro OLED", - "Ollama": "Ollama", - "Ollama API": "API Ollama", - "Ollama API settings updated": "Ajustes de la API de Ollama actualizados", - "Ollama Version": "Versión de Ollama", - "On": "Activado", - "OneDrive": "OneDrive", - "Only alphanumeric characters and hyphens are allowed": "Sólo están permitidos caracteres alfanuméricos y guiones", - "Only alphanumeric characters and hyphens are allowed in the command string.": "Sólo están permitidos en la cadena de comandos caracteres alfanuméricos y guiones.", - "Only collections can be edited, create a new knowledge base to edit/add documents.": "Solo se pueden editar las colecciones, para añadir/editar documentos hay que crear una nueva base de conocimientos", - "Only markdown files are allowed": "", - "Only select users and groups with permission can access": "Solo pueden acceder los usuarios y grupos con permiso", - "Oops! Looks like the URL is invalid. Please double-check and try again.": "¡vaya! Parece que la URL es inválida. Por favor, revisala y reintenta de nuevo.", - "Oops! There are files still uploading. Please wait for the upload to complete.": "¡vaya! Todavía hay archivos subiendose. Por favor, espera a que se complete la subida.", - "Oops! There was an error in the previous response.": "¡vaya! Hubo un error en la respuesta previa.", - "Oops! You're using an unsupported method (frontend only). Please serve the WebUI from the backend.": "¡vaya! Estás usando un método no soportado (solo interface frontal-frontend). Por favor sirve WebUI desde el interface trasero (servidor backend).", - "Open file": "Abrir archivo", - "Open in full screen": "Abrir en pantalla completa", - "Open new chat": "Abrir nuevo chat", - "Open WebUI can use tools provided by any OpenAPI server.": "Open-WebUI puede usar herramientas proporcionadas por cualquier servidor OpenAPI", - "Open WebUI uses faster-whisper internally.": "Open-WebUI usa faster-whisper internamente.", - "Open WebUI uses SpeechT5 and CMU Arctic speaker embeddings.": "Open-WebUI usa SpeechT5 y la incrustración de locutores de CMU Arctic.", - "Open WebUI version (v{{OPEN_WEBUI_VERSION}}) is lower than required version (v{{REQUIRED_VERSION}})": "La versión de Open-WebUI (v{{OPEN_WEBUI_VERSION}}) es inferior a la versión (v{{REQUIRED_VERSION}}) requerida", - "OpenAI": "OpenAI", - "OpenAI API": "API OpenAI", - "OpenAI API Config": "Config API OpenAI", - "OpenAI API Key is required.": "Clave API de OpenAI requerida.", - "OpenAI API settings updated": "Ajustes de API OpenAI actualizados", - "OpenAI URL/Key required.": "URL/Clave de OpenAI requerida.", - "openapi.json Path": "Ruta a openapi.json", - "or": "o", - "Organize your users": "Organiza tus usuarios", - "Other": "Otro", - "OUTPUT": "SALIDA", - "Output format": "Formato de salida", - "Overview": "Vista General", - "page": "página", - "Password": "Contraseña", - "Paste Large Text as File": "Pegar el Texto Largo como Archivo", - "PDF document (.pdf)": "Documento PDF (.pdf)", - "PDF Extract Images (OCR)": "Extraer imágenes del PDF (OCR)", - "pending": "pendiente", - "Permission denied when accessing media devices": "Permiso denegado accediendo a los dispositivos", - "Permission denied when accessing microphone": "Permiso denegado accediendo al micrófono", - "Permission denied when accessing microphone: {{error}}": "Permiso denegado accediendo al micrófono: {{error}}", - "Permissions": "Permisos", - "Perplexity API Key": "Clave API de Perplexity", - "Personalization": "Personalización", - "Pin": "Fijar", - "Pinned": "Fijado", - "Pioneer insights": "Descubrir nuevas perspectivas", - "Pipeline deleted successfully": "Tubería borrada correctamente", - "Pipeline downloaded successfully": "Tubería descargada correctamente", - "Pipelines": "Tuberías", - "Pipelines Not Detected": "Servicio de Tuberías (Pipelines) No Detectado", - "Pipelines Valves": "Válvulas de Tuberías", - "Plain text (.md)": "", - "Plain text (.txt)": "Texto plano (.txt)", - "Playground": "Zona de Pruebas", - "Playwright Timeout (ms)": "Tiempo Límite de Espera (ms) de Playwright", - "Playwright WebSocket URL": "URL de WebSocket de Playwright", - "Please carefully review the following warnings:": "Por favor revisar cuidadosamente los siguientes avisos:", - "Please do not close the settings page while loading the model.": "Por favor no cerrar la página de ajustes mientras se está descargando el modelo.", - "Please enter a prompt": "Por favor ingresar un indicador", - "Please enter a valid path": "Por favor, ingresa una ruta válida", - "Please enter a valid URL": "Por favor, ingresa una URL válida", - "Please fill in all fields.": "Por favor rellenar todos los campos.", - "Please select a model first.": "Por favor primero seleccionar un modelo.", - "Please select a model.": "Por favor seleccionar un modelo.", - "Please select a reason": "Por favor seleccionar un motivo", - "Port": "Puerto", - "Positive attitude": "Actitud Positiva", - "Prefix ID": "prefijo ID", - "Prefix ID is used to avoid conflicts with other connections by adding a prefix to the model IDs - leave empty to disable": "El prefijo ID se utiliza para evitar conflictos con otras conexiones al añadir un prefijo a los IDs de modelo, dejar vacío para deshabilitarlo", - "Presence Penalty": "Penalización de Presencia", - "Previous 30 days": "30 días previos", - "Previous 7 days": "7 días previos", - "Private": "Privado", - "Profile Image": "Imagen del Perfil", - "Prompt": "Indicador", - "Prompt (e.g. Tell me a fun fact about the Roman Empire)": "Indicador (p.ej. Cuéntame una cosa divertida sobre el Imperio Romano)", - "Prompt Autocompletion": "Autocompletado del Indicador", - "Prompt Content": "Contenido del Indicador", - "Prompt created successfully": "Indicador creado exitosamente", - "Prompt suggestions": "Indicadores Sugeridos", - "Prompt updated successfully": "Indicador actualizado correctamente", - "Prompts": "Indicadores", - "Prompts Access": "Acceso a Indicadores", - "Prompts Public Sharing": "", - "Public": "Público", - "Pull \"{{searchValue}}\" from Ollama.com": "Extraer \"{{searchValue}}\" desde Ollama.com", - "Pull a model from Ollama.com": "Extraer un modelo desde Ollama.com", - "Query Generation Prompt": "Indicador para la Consulta de Generación", - "RAG Template": "Plantilla del RAG", - "Rating": "Calificación", - "Re-rank models by topic similarity": "Reclasificar modelos por similitud temática", - "Read": "Leer", - "Read Aloud": "Leer en voz alta", - "Reasoning Effort": "Esfuerzo del Razonamiento", - "Record": "", - "Record voice": "Grabar voz", - "Redirecting you to Open WebUI Community": "Redireccionando a la Comunidad 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.": "Reduce la probabilidad de generación sin sentido. Un valor más alto (p.ej. 100) dará respuestas más diversas, mientras que un valor más bajo (p.ej. 10) será más conservador.", - "Refer to yourself as \"User\" (e.g., \"User is learning Spanish\")": "Referir a ti mismo como \"Usuario\" (p.ej. \"Usuario está aprendiendo Español\")", - "References from": "Referencias desde", - "Refused when it shouldn't have": "Rechazado cuando no debería haberlo hecho", - "Regenerate": "Regenerar", - "Reindex": "Reindexar", - "Reindex Knowledge Base Vectors": "Reindexar Base Vectorial de Conocimiento", - "Release Notes": "Notas de la Versión", - "Relevance": "Relevancia", - "Relevance Threshold": "Umbral de Relevancia", - "Remove": "Eliminar", - "Remove Model": "Eliminar Modelo", - "Rename": "Renombrar", - "Reorder Models": "Reordenar Modelos", - "Repeat Last N": "Repetición - Últimos N", - "Repeat Penalty (Ollama)": "Penalización Repetición (Ollama)", - "Reply in Thread": "Responder en Hilo", - "Request Mode": "Modo de Petición", - "Reranking Engine": "", - "Reranking Model": "Modelo de Reclasificación", - "Reset": "Reiniciar", - "Reset All Models": "Reiniciar Todos los Modelos", - "Reset Upload Directory": "Reiniciar Directorio de Subidas", - "Reset Vector Storage/Knowledge": "Reiniciar Almacenamiento de Vectores/Conocimiento", - "Reset view": "Reiniciar Vista", - "Response notifications cannot be activated as the website permissions have been denied. Please visit your browser settings to grant the necessary access.": "Las notificaciones de respuesta no pueden activarse ya que los permisos del sitio web han sido denegados. Por favor, comprueba la configuración de tu navegador para otorgar el permiso necesario.", - "Response splitting": "Particionado de Respuesta", - "Result": "Resultado", - "Retrieval": "Recuperación", - "Retrieval Query Generation": "Consulta de Generación de Recuperación", - "Rich Text Input for Chat": "Entrada de Texto Enriquecido para el Chat", - "RK": "RK", - "Role": "Rol", - "Rosé Pine": "Pino Rosa", - "Rosé Pine Dawn": "Pino Rosa Amanecer", - "RTL": "RTL", - "Run": "Ejecutar", - "Running": "Ejecutando", - "Save": "Guardar", - "Save & Create": "Guardar y Crear", - "Save & Update": "Guardar y Actualizar", - "Save As Copy": "Guardar como Copia", - "Save Tag": "Guardar Etiqueta", - "Saved": "Guardado", - "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": "Ya no está soportado guardar registros de chat directamente en el almacenamiento del navegador. Por favor, dedica un momento a descargar y eliminar tus registros de chat pulsando en el botón de abajo. No te preocupes, puedes re-importar fácilmente tus registros desde las opciones de configuración", - "Scroll On Branch Change": "", - "Search": "Buscar", - "Search a model": "Buscar un Modelo", - "Search Base": "Busqueda Base", - "Search Chats": "Buscar Chats", - "Search Collection": "Buscar Colección", - "Search Filters": "Buscar Filtros", - "search for tags": "Buscar por etiquetas", - "Search Functions": "Buscar Funciones", - "Search Knowledge": "Buscar Conocimiento", - "Search Models": "Buscar Modelos", - "Search options": "Opciones de Búsqueda", - "Search Prompts": "Buscar Indicadores", - "Search Result Count": "Número de resultados de la búsqueda", - "Search the internet": "Buscar en internet", - "Search Tools": "Buscar Herramientas", - "SearchApi API Key": "Clave API de SearchApi", - "SearchApi Engine": "Motor SearchApi", - "Searched {{count}} sites": "{{count}} sitios buscados", - "Searching \"{{searchQuery}}\"": "Buscando \"{{searchQuery}}\"", - "Searching Knowledge for \"{{searchQuery}}\"": "Buscando \"{{searchQuery}}\" en Conocimiento", - "Searching the web...": "", - "Searxng Query URL": "Searxng URL de Consulta", - "See readme.md for instructions": "Ver readme.md para instrucciones", - "See what's new": "Ver las novedades", - "Seed": "Semilla", - "Select a base model": "Seleccionar un modelo base", - "Select a engine": "Seleccionar un motor", - "Select a function": "Seleccionar una función", - "Select a group": "Seleccionar un grupo", - "Select a model": "Selecciona un modelo", - "Select a pipeline": "Seleccionar una tubería", - "Select a pipeline url": "Seleccionar una url de tubería", - "Select a tool": "Seleccioanr una herramienta", - "Select an auth method": "Seleccionar un método de autentificación", - "Select an Ollama instance": "Seleccionar una instancia de Ollama", - "Select Engine": "Seleccionar Motor", - "Select Knowledge": "Seleccionar Conocimiento", - "Select only one model to call": "Seleccionar sólo un modelo a llamar", - "Selected model(s) do not support image inputs": "Modelo(s) seleccionado(s) no admiten entradas de imagen", - "Semantic distance to query": "Distancia semántica a la consulta", - "Send": "Enviar", - "Send a Message": "Enviar un Mensaje", - "Send message": "Enviar Mensaje", - "Sends `stream_options: { include_usage: true }` in the request.\nSupported providers will return token usage information in the response when set.": "Envia en la solicitud de transmisión la opción: `{ include_usage: true }`.\nSi se activa, los proveedores que soporten esta función devolverán en la respuesta información de uso de los token.", - "September": "Septiembre", - "SerpApi API Key": "Clave API de SerpApi", - "SerpApi Engine": "Motor de SerpApi", - "Serper API Key": "Clave API de Serper", - "Serply API Key": "Clave API de Serply", - "Serpstack API Key": "Clave API de Serpstack", - "Server connection verified": "Conexión al servidor verificada", - "Set as default": "Establecer como Predeterminado", - "Set CFG Scale": "Establecer la Escala CFG", - "Set Default Model": "Establecer Modelo Predeterminado", - "Set embedding model": "Establecer Modelo de Incrustación", - "Set embedding model (e.g. {{model}})": "Establecer Modelo para Incrustación (p.ej. {{model}})", - "Set Image Size": "Establecer Tamaño de Imagen", - "Set reranking model (e.g. {{model}})": "Establecer Modelo para Reclasificación (p.ej. {{model}})", - "Set Sampler": "Establecer Muestreador", - "Set Scheduler": "Establecer Programador", - "Set Steps": "Establecer Pasos", - "Set Task Model": "Establecer Modelo para Tareas", - "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.": "Establece el número de capas, que deben cargarse en la GPU. Aumentar este valor puede mejorar significativamente el rendimiento de los modelos optimizados para aceleración en GPU, pero también puede consumir más energía y recursos de la 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.": "Establece el número de hilos de trabajo utilizados para el computo. Esta opción controla cuántos hilos son usados para procesar solicitudes entrantes concurrentes. Aumentar este valor puede mejorar el rendimiento bajo cargas de trabajo de alta concurrencia, pero también puede consumir más recursos de la CPU.", - "Set Voice": "Establecer la voz", - "Set whisper model": "Establecer modelo whisper (transcripción)", - "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.": "Establece un sesgo plano contra los tokens que han aparecido al menos una vez. Un valor más alto (p.ej. 1.5) penalizará las repeticiones más fuertemente, mientras que un valor más bajo (p.ej. 0.9) será más indulgente. En 0, está deshabilitado.", - "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.": "Establece un sesgo escalado contra los tokens para penalizar las repeticiones, basado en cuántas veces han aparecido. Un valor más alto (por ejemplo, 1.5) penalizará las repeticiones más fuertemente, mientras que un valor más bajo (por ejemplo, 0.9) será más indulgente. En 0, está deshabilitado.", - "Sets how far back for the model to look back to prevent repetition.": "Establece cuántos tokens debe mirar atrás el modelo para prevenir la repetición. ", - "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.": "Establece la semilla de números aleatorios a usar para la generación. Establecer esto en un número específico hará que el modelo genere el mismo texto para el mismo indicador(prompt).", - "Sets the size of the context window used to generate the next token.": "Establece el tamaño de la ventana del contexto utilizada para generar el siguiente 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.": "Establece las secuencias de parada a usar. Cuando se encuentre este patrón, el LLM dejará de generar texto y retornará. Se pueden establecer varios patrones de parada especificando separadamente múltiples parámetros de parada en un archivo de modelo.", - "Settings": "Ajustes", - "Settings saved successfully!": "¡Ajustes guardados correctamente!", - "Share": "Compartir", - "Share Chat": "Compartir Chat", - "Share to Open WebUI Community": "Compartir con la Comunidad Open-WebUI", - "Sharing Permissions": "", - "Show": "Mostrar", - "Show \"What's New\" modal on login": "Mostrar modal \"Qué hay de Nuevo\" al iniciar sesión", - "Show Admin Details in Account Pending Overlay": "Mostrar Detalles Admin en la sobrecapa de 'Cuenta Pendiente'", - "Show All": "", - "Show Less": "", - "Show Model": "Mostrar Modelo", - "Show shortcuts": "Mostrar Atajos", - "Show your support!": "¡Muestra tu apoyo!", - "Showcased creativity": "Creatividad exhibida", - "Sign in": "Iniciar Sesión", - "Sign in to {{WEBUI_NAME}}": "Iniciar Sesión en {{WEBUI_NAME}}", - "Sign in to {{WEBUI_NAME}} with LDAP": "Iniciar Sesión en {{WEBUI_NAME}} con LDAP", - "Sign Out": "Cerrar Sesión", - "Sign up": "Crear una Cuenta", - "Sign up to {{WEBUI_NAME}}": "Crear una Cuenta en {{WEBUI_NAME}}", - "Signing in to {{WEBUI_NAME}}": "Iniciando Sesión en {{WEBUI_NAME}}", - "sk-1234": "sk-1234", - "Sougou Search API sID": "", - "Sougou Search API SK": "", - "Source": "Fuente", - "Speech Playback Speed": "Velocidad de Reproducción de Voz", - "Speech recognition error: {{error}}": "Error en reconocimiento de voz: {{error}}", - "Speech-to-Text Engine": "Motor Voz a Texto(STT)", - "Stop": "Detener", - "Stop Sequence": "Secuencia de Parada", - "Stream Chat Response": "Transmisión Directa de la Respuesta del Chat", - "STT Model": "Modelo STT", - "STT Settings": "Ajustes Voz a Texto (STT)", - "Stylized PDF Export": "", - "Subtitle (e.g. about the Roman Empire)": "Subtítulo (p.ej. sobre el Imperio Romano)", - "Success": "Correcto", - "Successfully updated.": "Actualizado correctamente.", - "Suggested": "Sugerido", - "Support": "Soportar", - "Support this plugin:": "Apoya este plugin:", - "Sync directory": "Sincroniza Directorio", - "System": "Sistema", - "System Instructions": "Instrucciones del sistema", - "System Prompt": "Indicador del sistema", - "Tags": "Etiquetas", - "Tags Generation": "Generación de Etiquetas", - "Tags Generation Prompt": "Indicador para la Generación de Etiquetas", - "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 Muestreo de cola libre(TFS_Z) es usado para reducir el impacto de los tokens menos probables en la salida. Un valor más alto (p.ej. 2.0) reduce más fuertemente el impacto, mientras que un valor de 1.0 deshabilita este ajuste.", - "Talk to model": "Hablar con el modelo", - "Tap to interrupt": "Toca para interrumpir", - "Tasks": "Tareas", - "Tavily API Key": "Clave API de Tavily", - "Tavily Extract Depth": "Parámetro Extract Depth de Taviliy", - "Tell us more:": "Dinos algo más:", - "Temperature": "Temperatura", - "Template": "Plantilla", - "Temporary Chat": "Chat Temporal", - "Text Splitter": "Divisor de Texto", - "Text-to-Speech Engine": "Motor Texto a Voz(TTS)", - "Tfs Z": "TFS Z", - "Thanks for your feedback!": "¡Gracias por tu comentario!", - "The Application Account DN you bind with for search": "Cuenta DN de la aplicación vinculada para búsqueda", - "The base to search for users": "Base para buscar usuarios", - "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.": "El tamaño de lote determina cuántas solicitudes de texto se procesan juntas de una vez. Un tamaño de lote más alto puede aumentar el rendimiento y la velocidad del modelo, pero también requiere más memoria.", - "The developers behind this plugin are passionate volunteers from the community. If you find this plugin helpful, please consider contributing to its development.": "Quienes desarollaron este complemento son apasionados voluntarios/as de la comunidad. Si este complemento te es útil, por favor considera contribuir a su desarrollo.", - "The evaluation leaderboard is based on the Elo rating system and is updated in real-time.": "La tabla clasificatoria de evaluación se basa en el sistema de clasificación Elo y se actualiza en tiempo real.", - "The LDAP attribute that maps to the mail that users use to sign in.": "El atributo LDAP que mapea el correo que los usuarios utilizan para iniciar sesión.", - "The LDAP attribute that maps to the username that users use to sign in.": "El atributo LDAP que mapea el nombre de usuario que los usuarios utilizan para iniciar sesión.", - "The leaderboard is currently in beta, and we may adjust the rating calculations as we refine the algorithm.": "La tabla clasificatoria está actualmente en beta, por lo que los cálculos de clasificación pueden reajustarse a medida que se refina el algoritmo.", - "The maximum file size in MB. If the file size exceeds this limit, the file will not be uploaded.": "El tamaño máximo del archivo en MB. Si el tamaño del archivo supera este límite, el archivo no se subirá.", - "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 número máximo de archivos que se pueden utilizar a la vez en el chat. Si se supera este límite, los archivos no se subirán.", - "The score should be a value between 0.0 (0%) and 1.0 (100%).": "La puntuación debe ser un valor entre 0.0 (0%) y 1.0 (100%).", - "The temperature of the model. Increasing the temperature will make the model answer more creatively.": "La temperatura del modelo. Aumentar la temperatura hará que el modelo responda de forma más creativa.", - "Theme": "Tema", - "Thinking...": "Pensando...", - "This action cannot be undone. Do you wish to continue?": "Esta acción no se puede deshacer. ¿Desea continuar?", - "This channel was created on {{createdAt}}. This is the very beginning of the {{channelName}} channel.": "Este canal fue creado el {{createdAt}}. Este es el comienzo del canal {{channelName}}.", - "This chat won’t appear in history and your messages will not be saved.": "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.": "", - "This option controls how many tokens are preserved when refreshing the context. For example, if set to 2, the last 2 tokens of the conversation context will be retained. Preserving context can help maintain the continuity of a conversation, but it may reduce the ability to respond to new topics.": "Esta opción controla cuántos tokens se conservan cuando se actualiza el contexto. Por ejemplo, si se establece en 2, se conservarán los primeros 2 tokens del contexto de la conversación. Conservar el contexto puede ayudar a mantener la continuidad de una conversación, pero puede reducir la habilidad para responder a nuevos temas.", - "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.": "Esta opción establece el número máximo de tokens que el modelo puede generar en sus respuestas. Aumentar este límite permite al modelo proporcionar respuestas más largas, pero también puede aumentar la probabilidad de que se genere contenido inútil o irrelevante.", - "This option will delete all existing files in the collection and replace them with newly uploaded files.": "Esta opción eliminará todos los archivos existentes en la colección y los reemplazará con los nuevos archivos subidos.", - "This response was generated by \"{{model}}\"": "Esta respuesta fue generada por \"{{model}}\"", - "This will delete": "Esto eliminará", - "This will delete {{NAME}} and all its contents.": "Esto eliminará {{NAME}} y todo su contenido.", - "This will delete all models including custom models": "Esto eliminará todos los modelos, incluidos los modelos personalizados", - "This will delete all models including custom models and cannot be undone.": "Esto eliminará todos los modelos, incluidos los modelos personalizados y no se puede deshacer.", - "This will reset the knowledge base and sync all files. Do you wish to continue?": "Esto reinicializará la base de conocimientos y sincronizará todos los archivos. ¿Desea continuar?", - "Thorough explanation": "Explicación exhaustiva", - "Thought for {{DURATION}}": "Pensando durante {{DURATION}}", - "Thought for {{DURATION}} seconds": "Persando durante {{DURATION}} segundos", - "Tika": "Tika", - "Tika Server URL required.": "URL del Servidor Tika necesaria", - "Tiktoken": "Tiktoken", - "Tip: Update multiple variable slots consecutively by pressing the tab key in the chat input after each replacement.": "Consejo: Actualiza múltiples variables encastradas en el chat consecutivamente pulsando la tecla tab en el chat después de cada reemplazo.", - "Title": "Título", - "Title (e.g. Tell me a fun fact)": "Título (p.ej. cuéntame un hecho divertidado)", - "Title Auto-Generation": "AutoGeneración de Títulos", - "Title cannot be an empty string.": "El título no puede ser una cadena vacía.", - "Title Generation": "Generación de Títulos", - "Title Generation Prompt": "Indicador para la Generación de Título", - "TLS": "TLS", - "To access the available model names for downloading,": "Para acceder a los nombres de modelos disponibles para descargar,", - "To access the GGUF models available for downloading,": "Para acceder a los modelos GGUF disponibles para descargar,", - "To access the WebUI, please reach out to the administrator. Admins can manage user statuses from the Admin Panel.": "Para acceder a WebUI, por favor contacte con Admins. Los administradores pueden gestionar los estados de los usuarios esde el panel de administración.", - "To attach knowledge base here, add them to the \"Knowledge\" workspace first.": "Para adjuntar la base de conocimientos aquí, primero añadirla a \"Conocimiento\" en el área de trabajo.", - "To learn more about available endpoints, visit our documentation.": "Para aprender más sobre los endpoints disponibles, visite nuestra documentación.", - "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.": "Para proteger tu privacidad, de tu realimentación solo se comparten las calificaciones, IDs de modelo, etiquetas y metadatos; tus chat registrados permanecen privados y no se incluyen.", - "To select actions here, add them to the \"Functions\" workspace first.": "Para seleccionar acciones aquí, primero añadirlas a \"Funciones\" en el área de trabajo.", - "To select filters here, add them to the \"Functions\" workspace first.": "Para seleccionar filtros aquí, primero añadirlos a \"Funciones\" en el área de trabajo.", - "To select toolkits here, add them to the \"Tools\" workspace first.": "Para seleccionar herramientas aquí, primero añadelas a \"Herramientas\" en el área de trabajo.", - "Toast notifications for new updates": "Notificaciones emergentes para nuevas actualizaciones", - "Today": "Hoy", - "Toggle settings": "Alternar Ajustes", - "Toggle sidebar": "Alternar Barra Lateral", - "Token": "Token", - "Tokens To Keep On Context Refresh (num_keep)": "Tokens a Mantener al Actualizar el Contexto (num_keep)", - "Too verbose": "Demasiado detallado", - "Tool created successfully": "Herramienta creada correctamente", - "Tool deleted successfully": "Herramienta eliminada correctamente", - "Tool Description": "Descripción de la Herramienta", - "Tool ID": "ID de la Herramienta", - "Tool imported successfully": "Herramienta importada correctamente", - "Tool Name": "Nombre de la Herramienta", - "Tool Servers": "Servidores de Herraientas", - "Tool updated successfully": "Herramienta actualizada correctamente", - "Tools": "Herramientas", - "Tools Access": "Acceso a Herramientas", - "Tools are a function calling system with arbitrary code execution": "Las herramientas son un sistema de llamada de funciones con ejecución de código arbitrario", - "Tools Function Calling Prompt": "Indicador para la Función de Llamada a las Herramientas", - "Tools have a function calling system that allows arbitrary code execution.": "Las herramientas tienen un sistema de llamada de funciones que permite la ejecución de código arbitrario.", - "Tools Public Sharing": "", - "Top K": "Top K", - "Top K Reranker": "Top K Reclasificador", - "Top P": "Top P", - "Transformers": "Transformadores", - "Trouble accessing Ollama?": "¿Problemas para acceder a Ollama?", - "Trust Proxy Environment": "Entorno Proxy Confiable", - "TTS Model": "Modelo TTS", - "TTS Settings": "Ajustes Texto a Voz (TTS)", - "TTS Voice": "Voz TTS", - "Type": "Tipo", - "Type Hugging Face Resolve (Download) URL": "Escribir la URL de Hugging Face Resolve (Descarga)", - "Uh-oh! There was an issue with the response.": "¡Vaya! Hubo un problema con la respuesta.", - "UI": "IU", - "Unarchive All": "Desarchivar Todo", - "Unarchive All Archived Chats": "Desarchivar Todos los Chats Archivados", - "Unarchive Chat": "Desarchivar Chat", - "Unlock mysteries": "Desbloquear misterios", - "Unpin": "Desfijar", - "Unravel secrets": "Desentrañar secretos", - "Untagged": "Desetiquetado", - "Untitled": "", - "Update": "Actualizar", - "Update and Copy Link": "Actualizar y Copiar Enlace", - "Update for the latest features and improvements.": "Actualizar para las últimas características y mejoras.", - "Update password": "Actualizar contraseña", - "Updated": "Actualizado", - "Updated at": "Actualizado el", - "Updated At": "Actualizado El", - "Upgrade to a licensed plan for enhanced capabilities, including custom theming and branding, and dedicated support.": "Mejore a un plan con licencia para tener capacidades mejoradas, incluyendo personalización de marca e interface, y soporte dedicado.", - "Upload": "Subir", - "Upload a GGUF model": "Subir un modelo GGUF", - "Upload Audio": "", - "Upload directory": "Directorio de Subidas", - "Upload files": "Subir archivos", - "Upload Files": "Subir Archivos", - "Upload Pipeline": "Subir Tubería", - "Upload Progress": "Progreso de la Subida", - "URL": "URL", - "URL Mode": "Modo URL", - "Use '#' in the prompt input to load and include your knowledge.": "Utilizar '#' en el indicador para cargar e incluir tu conocimiento.", - "Use Gravatar": "Usar Gravatar", - "Use groups to group your users and assign permissions.": "Usar grupos para agrupar a usuarios y asignar permisos.", - "Use Initials": "Usar Iniciales", - "Use no proxy to fetch page contents.": "No usar proxy para extraer contenidos", - "Use proxy designated by http_proxy and https_proxy environment variables to fetch page contents.": "Usar el proxy asignado en las variables del entorno http_proxy y/o https_proxy para extraer contenido", - "use_mlock (Ollama)": "use_mlock (Ollama)", - "use_mmap (Ollama)": "use_mmap (Ollama)", - "user": "usuario", - "User": "Usuario", - "User location successfully retrieved.": "Ubicación de usuario obtenida correctamente.", - "User Webhooks": "Usuario Webhooks", - "Username": "Nombre de Usuario", - "Users": "Usuarios", - "Using the default arena model with all models. Click the plus button to add custom models.": "Usando el modelo de arena predeterminado con todos los modelos. Pulsar en el botón + para agregar modelos personalizados.", - "Utilize": "Utilizar", - "Valid time units:": "Unidades de tiempo válidas:", - "Valves": "Válvulas", - "Valves updated": "Válvulas actualizadas", - "Valves updated successfully": "Válvulas actualizados correctamente", - "variable": "variable", - "variable to have them replaced with clipboard content.": "hace que la variable sea reemplazada con el contenido del portapapeles.", - "Verify Connection": "Verificar Conexión", - "Verify SSL Certificate": "", - "Version": "Versión", - "Version {{selectedVersion}} of {{totalVersions}}": "Versión {{selectedVersion}} de {{totalVersions}}", - "View Replies": "Ver Respuestas", - "View Result from **{{NAME}}**": "", - "Visibility": "Visibilidad", - "Voice": "Voz", - "Voice Input": "Entrada de Voz", - "Warning": "Aviso", - "Warning:": "Aviso:", - "Warning: Enabling this will allow users to upload arbitrary code on the server.": "Aviso: Habilitar esto permitirá a los usuarios subir código arbitrario al servidor.", - "Warning: If you update or change your embedding model, you will need to re-import all documents.": "Aviso: Si actualizas o cambias el modelo de incrustacción, necesitarás re-importar todos los documentos.", - "Warning: Jupyter execution enables arbitrary code execution, posing severe security risks—proceed with extreme caution.": "Aviso: La ejecución Jupyter habilita la ejecución de código arbitrario, planteando graves riesgos de seguridad; Proceder con extrema precaución.", - "Web": "Web", - "Web API": "API Web", - "Web Loader Engine": "", - "Web Search": "Búsqueda Web", - "Web Search Engine": "Motor Búsqueda Web", - "Web Search in Chat": "Búsqueda Web en Chat", - "Web Search Query Generation": "Generación de Consulta Búsqueda Web", - "Webhook URL": "URL EnganchesWeb(Webhook)", - "WebUI Settings": "WebUI Ajustes", - "WebUI URL": "WebUI URL", - "WebUI will make requests to \"{{url}}\"": "", - "WebUI will make requests to \"{{url}}/api/chat\"": "WebUI hará solicitudes a \"{{url}}/api/chat\"", - "WebUI will make requests to \"{{url}}/chat/completions\"": "WebUI hará solicitudes a \"{{url}}/chat/completions\"", - "What are you trying to achieve?": "¿Qué estás tratando de conseguir?", - "What are you working on?": "¿En qué estás trabajando?", - "What’s New in": "Que hay de Nuevo en", - "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.": "Cuando está habilitado, el modelo responderá a cada mensaje de chat en tiempo real, generando una respuesta tan pronto como se envíe un mensaje. Este modo es útil para aplicaciones de chat en vivo, pero puede afectar al rendimiento en equipos más lentos.", - "wherever you are": "dondequiera que estés", - "Whisper (Local)": "Whisper (Local)", - "Why?": "¿Por qué?", - "Widescreen Mode": "Modo Pantalla Ancha", - "Won": "Ganó", - "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.": "Trabaja conjuntamente con top-k. Un valor más alto (p.ej. 0.95) dará lugar a un texto más diverso, mientras que un valor más bajo (p.ej. 0.5) generará un texto más centrado y conservador.", - "Workspace": "Espacio de Trabajo", - "Workspace Permissions": "Permisos del Espacio de Trabajo", - "Write": "Escribir", - "Write a prompt suggestion (e.g. Who are you?)": "Escribe una sugerencia de indicador (p.ej. ¿quién eres?)", - "Write a summary in 50 words that summarizes [topic or keyword].": "Escribe un resumen en 50 palabras que resuma [tema o palabra clave].", - "Write something...": "Escribe algo...", - "Write your model template content here": "Escribe el contenido de la plantilla de tu modelo aquí", - "Yacy Instance URL": "", - "Yacy Password": "", - "Yacy Username": "", - "Yesterday": "Ayer", - "You": "Tu", - "You are currently using a trial license. Please contact support to upgrade your license.": "Actualmente estás utilizando una licencia de prueba. Por favor, para actualizar su licencia contacta con soporte.", - "You can only chat with a maximum of {{maxCount}} file(s) at a time.": "Solo puedes chatear con un máximo de {{maxCount}} archivo(s) a la vez.", - "You can personalize your interactions with LLMs by adding memories through the 'Manage' button below, making them more helpful and tailored to you.": "Puedes personalizar tus interacciones con los LLMs añadiendo memorias a través del botón 'Gestionar' debajo, haciendo que te sean más útiles y personalizados.", - "You cannot upload an empty file.": "No puedes subir un archivo vacío.", - "You do not have permission to upload files.": "No tienes permiso para subir archivos.", - "You have no archived conversations.": "No tienes conversaciones archivadas.", - "You have shared this chat": "Has compartido esta conversación", - "You're a helpful assistant.": "Eres un asistente atento, amable y servicial.", - "You're now logged in.": "Has iniciado sesión.", - "Your account status is currently pending activation.": "Tu cuenta está pendiente de activación.", - "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.": "Tu entera contribución irá directamente al desarrollador del complemento; Open-WebUI no recibe ningún porcentaje. Sin embargo, la plataforma de financiación elegida podría tener sus propias tarifas.", - "Youtube": "Youtube", - "Youtube Language": "Youtube Idioma", - "Youtube Proxy URL": "Youtube URL Proxy" + "-1 for no limit, or a positive integer for a specific limit": "-1 para ilimitado, o un número entero positivo para un límite específico.", + "'s', 'm', 'h', 'd', 'w' or '-1' for no expiration.": "'s', 'm', 'h', 'd', 'w' o '-1' para evitar expiración.", + "(e.g. `sh webui.sh --api --api-auth username_password`)": "(p.ej. `sh webui.sh --api --api-auth username_password`)", + "(e.g. `sh webui.sh --api`)": "(p.ej. `sh webui.sh --api`)", + "(latest)": "(último)", + "(leave blank for to use commercial endpoint)": "", + "(Ollama)": "(Ollama)", + "{{ models }}": "{{ models }}", + "{{COUNT}} Available Tools": "", + "{{COUNT}} hidden lines": "{{COUNT}} líneas ocultas", + "{{COUNT}} Replies": "{{COUNT}} Respuestas", + "{{user}}'s Chats": "Chats de {{user}}", + "{{webUIName}} Backend Required": "{{webUIName}} Servidor Requerido", + "*Prompt node ID(s) are required for image generation": "Los ID de nodo son requeridos para la generación de imágenes", + "A new version (v{{LATEST_VERSION}}) is now available.": "Nueva versión (v{{LATEST_VERSION}}) disponible.", + "A task model is used when performing tasks such as generating titles for chats and web search queries": "El modelo de tareas realiza tareas como la generación de títulos para chats y consultas de búsqueda web", + "a user": "un usuario", + "About": "Acerca de", + "Accept autocomplete generation / Jump to prompt variable": "Aceptar generación de autocompletado / Saltar a prompt variable", + "Access": "Acceso", + "Access Control": "Control de Acceso", + "Accessible to all users": "Accesible para todos los usuarios", + "Account": "Cuenta", + "Account Activation Pending": "Activación de cuenta Pendiente", + "Accurate information": "Información precisa", + "Actions": "Acciones", + "Activate": "Activar", + "Activate this command by typing \"/{{COMMAND}}\" to chat input.": "Activar este comando escribiendo \"/{{COMMAND}}\" en el chat", + "Active Users": "Usuarios activos", + "Add": "Añadir", + "Add a model ID": "Añadir un ID de modelo", + "Add a short description about what this model does": "Añadir una breve descripción sobre lo que hace este modelo", + "Add a tag": "Añadir una etiqueta", + "Add Arena Model": "Añadir modelo a la Arena", + "Add Connection": "Añadir Conexión", + "Add Content": "Añadir Contenido", + "Add content here": "Añadir contenido aquí", + "Add custom prompt": "Añadir un prompt personalizado", + "Add Files": "Añadir Archivos", + "Add Group": "Añadir Grupo", + "Add Memory": "Añadir Memoria", + "Add Model": "Añadir Modelo", + "Add Reaction": "Añadir Reacción", + "Add Tag": "Añadir etiqueta", + "Add Tags": "Añadir etiquetas", + "Add text content": "Añade contenido de texto", + "Add User": "Añadir Usuario", + "Add User Group": "Añadir grupo de usuarios", + "Adjusting these settings will apply changes universally to all users.": "El ajuste de estas opciones se aplicará globalmente a todos los usuarios.", + "admin": "admin", + "Admin": "Admin", + "Admin Panel": "Administración", + "Admin Settings": "Ajustes de Admin", + "Admins have access to all tools at all times; users need tools assigned per model in the workspace.": "Los administradores tienen acceso a todas las herramientas en todo momento; los usuarios necesitan que los modelos tengan asignadas las herramientas en el area de trabajo.", + "Advanced Parameters": "Parámetros Avanzados", + "Advanced Params": "Parámetros Avanzados", + "All": "Todos", + "All Documents": "Todos los Documentos", + "All models deleted successfully": "Todos los modelos borrados correctamnete", + "Allow Call": "Permitir Llamada", + "Allow Chat Controls": "Permitir Controles del Chat", + "Allow Chat Delete": "Permitir Borrar Chat", + "Allow Chat Deletion": "Permitir Borrado de Chat", + "Allow Chat Edit": "Pemritir Editar Chat", + "Allow Chat Export": "", + "Allow Chat Share": "", + "Allow File Upload": "Permitir Subida de Archivos", + "Allow Multiple Models in Chat": "", + "Allow non-local voices": "Permitir voces no locales", + "Allow Speech to Text": "", + "Allow Temporary Chat": "Permitir Chat Temporal", + "Allow Text to Speech": "", + "Allow User Location": "Permitir Ubicación de Usuario", + "Allow Voice Interruption in Call": "Permitir Interrupción de Voz en Llamada", + "Allowed Endpoints": "Endpoints Permitidos", + "Already have an account?": "¿Ya tienes una cuenta?", + "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 a top_p, como objetivo garantizar un equilibrio entre calidad y variedad. El parámetro p representa la mínima probabilidad para que un token sea considerado, relativo a la probabilidad del token más probable. Por ejemplo, con p=0.05 y la probabilidad del token más probable de 0.9, los resultados (logits) con un valor inferior a 0.045 son descartados.", + "Always": "Siempre", + "Always Collapse Code Blocks": "Plegar Siempre los Bloques de Código", + "Always Expand Details": "Expandir Siempre Detalles", + "Always Play Notification Sound": "", + "Amazing": "Emocionante", + "an assistant": "un asistente", + "Analyzed": "Analizado", + "Analyzing...": "Analizando..", + "and": "y", + "and {{COUNT}} more": "y {{COUNT}} más", + "and create a new shared link.": "y crear un nuevo enlace compartido.", + "Android": "", + "API Base URL": "URL Base API", + "API Key": "Clave API ", + "API Key created.": "Clave API creada.", + "API Key Endpoint Restrictions": "Clave API para Endpoints Restringidos", + "API keys": "Claves API", + "Application DN": "Aplicacion DN", + "Application DN Password": "Contraseña Aplicacion DN", + "applies to all users with the \"user\" role": "se aplica a todos los usuarios con el rol \"user\" ", + "April": "Abril", + "Archive": "Archivar", + "Archive All Chats": "Archivar Todos los Chats", + "Archived Chats": "Chats archivados", + "archived-chat-export": "exportar chats archivados", + "Are you sure you want to clear all memories? This action cannot be undone.": "¿Seguro que quieres borrar todas las memorias? (¡esta acción NO se puede deshacer!)", + "Are you sure you want to delete this channel?": "¿Seguro de que quieres eliminar este canal?", + "Are you sure you want to delete this message?": "¿Seguro de que quieres eliminar este mensaje? ", + "Are you sure you want to unarchive all archived chats?": "¿Seguro de que quieres desarchivar todos los chats archivados?", + "Are you sure you want to update this user's role to **{{ROLE}}**?": "", + "Are you sure?": "¿Estás seguro?", + "Arena Models": "Arena de Modelos", + "Artifacts": "Artefactos", + "Ask": "Preguntar", + "Ask a question": "Haz una pregunta", + "Assistant": "Asistente", + "Attach file from knowledge": "Adjuntar archivo desde conocimiento", + "Attention to detail": "Atención al detalle", + "Attribute for Mail": "Atributo para Correo", + "Attribute for Username": "Atributo para Nombre de Usuario", + "Audio": "Audio", + "August": "Agosto", + "Auth": "Autorización", + "Authenticate": "Autentificar", + "Authentication": "Autenticación", + "Auto": "Auto", + "Auto-Copy Response to Clipboard": "AutoCopiado de respuesta al Portapapeles", + "Auto-playback response": "Reproducir Respuesta automáticamente", + "Autocomplete Generation": "Generación de Autocompletado", + "Autocomplete Generation Input Max Length": "Max. Longitud de Entrada en Generación de Autocompletado", + "Automatic1111": "AUTOMATIC1111", + "AUTOMATIC1111 Api Auth String": "Auth API para AUTOMATIC1111", + "AUTOMATIC1111 Base URL": "URL Base de AUTOMATIC1111", + "AUTOMATIC1111 Base URL is required.": "la URL Base de AUTOMATIC1111 es necesaria.", + "Available list": "Lista disponible", + "Available Tools": "Herramientas Disponibles", + "available!": "¡disponible!", + "Awful": "Horrible", + "Azure AI Speech": "Voz Azure AI", + "Azure Region": "Región de Azure", + "Back": "Volver", + "Bad Response": "Mala Respuesta", + "Banners": "Banners", + "Base Model (From)": "Modelo Base (desde)", + "Batch Size (num_batch)": "Tamaño de Lote (num_batch)", + "before": "antes", + "Being lazy": "Ser perezoso", + "Beta": "Beta", + "Bing Search V7 Endpoint": "Endpoint de Bing Search V7", + "Bing Search V7 Subscription Key": "Clave de Suscripción de Bing Search V7", + "Bocha Search API Key": "Clave API de Bocha Search", + "Boosting or penalizing specific tokens for constrained responses. Bias values will be clamped between -100 and 100 (inclusive). (Default: none)": "Impulsando o penalizando tokens específicos para respuestas restringidas. Los valores de sesgo se limitarán entre -100 y 100 (inclusive). (Por defecto: ninguno)", + "Both Docling OCR Engine and Language(s) must be provided or both left empty.": "", + "Brave Search API Key": "Clave API de Brave Search", + "By {{name}}": "Por {{name}}", + "Bypass Embedding and Retrieval": "Evitar Incrustración y Recuperación", + "Calendar": "Calendario", + "Call": "Llamada", + "Call feature is not supported when using Web STT engine": "La funcionalidad de Llamada no está soportada cuando se usa el motor Web STT", + "Camera": "Cámara", + "Cancel": "Cancelar", + "Capabilities": "Capacidades", + "Capture": "Captura", + "Capture Audio": "", + "Certificate Path": "Ruta a Certificado", + "Change Password": "Cambiar Contraseña", + "Channel Name": "Nombre del Canal", + "Channels": "Canal", + "Character": "Carácter", + "Character limit for autocomplete generation input": "Límite de caracteres de entrada de la generación de autocompletado", + "Chart new frontiers": "Trazar nuevas fronteras", + "Chat": "Chat", + "Chat Background Image": "Imágen de Fondo del Chat", + "Chat Bubble UI": "Interface de Chat tipo Burbuja", + "Chat Controls": "Controles de chat", + "Chat direction": "Dirección de Chat", + "Chat Overview": "Vista General del Chat", + "Chat Permissions": "Permisos del Chat", + "Chat Tags Auto-Generation": "AutoGeneración de Etiquetas de Chat", + "Chats": "Chats", + "Check Again": "Verifica de nuevo", + "Check for updates": "Buscar actualizaciones", + "Checking for updates...": "Buscando actualizaciones...", + "Choose a model before saving...": "Escoge un modelo antes de guardar...", + "Chunk Overlap": "Superposición de Fragmentos", + "Chunk Size": "Tamaño de los Fragmentos", + "Ciphers": "Cifrado", + "Citation": "Cita", + "Clear memory": "Liberar memoria", + "Clear Memory": "Liberar Memoria", + "click here": "Pulsar aquí", + "Click here for filter guides.": "Pulsar aquí para guías de filtros", + "Click here for help.": "Pulsar aquí para Ayuda.", + "Click here to": "Pulsa aquí para", + "Click here to download user import template file.": "Pulsa aquí para descargar la plantilla para importar usuarios.", + "Click here to learn more about faster-whisper and see the available models.": "Pulsa aquí para saber más sobre faster-whisper y ver los modelos disponibles.", + "Click here to see available models.": "Pulsa aquí para ver modelos disponibles.", + "Click here to select": "Pulsa aquí para seleccionar", + "Click here to select a csv file.": "Pulsa aquí para seleccionar un fichero de Valores Separados por Comas (.csv)", + "Click here to select a py file.": "Pulsa aquí para seleccionar un fichero Python (.py)", + "Click here to upload a workflow.json file.": "Pulsa aquí para subir un fichero workflow.json", + "click here.": "Pulsa aquí.", + "Click on the user role button to change a user's role.": "Pulsa en el botón rol de usuario para cambiar su rol.", + "Clipboard write permission denied. Please check your browser settings to grant the necessary access.": "Permisos de escritura del portapapeles denegado. Por favor, comprueba la configuración de tu navegador para otorgar el permiso necesario.", + "Clone": "Clonar", + "Clone Chat": "Clonar Chat", + "Clone of {{TITLE}}": "Clon de {{TITLE}}", + "Close": "Cerrar", + "Code execution": "Ejecución de Código", + "Code Execution": "Ejecución de Código", + "Code Execution Engine": "Motor de Ejecución de Código", + "Code Execution Timeout": "Tiempo límite de espera para Ejecución de Código", + "Code formatted successfully": "El codigo se ha formateado correctamente.", + "Code Interpreter": "Interprete de Código", + "Code Interpreter Engine": "Motor del Interprete de Código", + "Code Interpreter Prompt Template": "Plantilla del Prompt del Interprete de Código", + "Collapse": "Plegar", + "Collection": "Colección", + "Color": "Color", + "ComfyUI": "ComfyUI", + "ComfyUI API Key": "Clave API de ComfyUI", + "ComfyUI Base URL": "URL Base de ComfyUI", + "ComfyUI Base URL is required.": "La URL Base de ComfyUI es necesaria.", + "ComfyUI Workflow": "Flujo de Trabajo de ComfyUI", + "ComfyUI Workflow Nodes": "Nodos del Flujo de Trabajo de ComfyUI", + "Command": "Comando", + "Completions": "Cumplimientos", + "Concurrent Requests": "Número de Solicitudes Concurrentes", + "Configure": "Configurar", + "Confirm": "Confirmar", + "Confirm Password": "Confirma Contraseña", + "Confirm your action": "Confirma tu acción", + "Confirm your new password": "Confirma tu nueva contraseña", + "Connect to your own OpenAI compatible API endpoints.": "Conectar a tus propios endpoints compatibles API OpenAI.", + "Connect to your own OpenAPI compatible external tool servers.": "Conectar a tus propios endpoints externos de herramientas compatibles API OpenAI.", + "Connection failed": "Conexión fallida", + "Connection successful": "Conexión realizada", + "Connections": "Conexiones", + "Connections saved successfully": "Conexiones grabadas correctamente", + "Constrains effort on reasoning for reasoning models. Only applicable to reasoning models from specific providers that support reasoning effort.": "Limita el esfuerzo de razonamiento para los modelos de razonamiento. Solo aplicable a modelos de razonamiento de proveedores específicos que soportan el esfuerzo de razonamiento.", + "Contact Admin for WebUI Access": "Contacta con Admin para obtener acceso a WebUI", + "Content": "Contenido", + "Content Extraction Engine": "Motor para la Extracción de Contenido", + "Context Length": "Longitud del Contexto", + "Continue Response": "Continuar Respuesta", + "Continue with {{provider}}": "Continuar con {{provider}}", + "Continue with Email": "Continuar con Email", + "Continue with LDAP": "Continuar con 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.": "Controlar como se divide el texto del mensaje para las solicitudes de locución (TTS). 'Punctuation' divide oraciones, 'paragraphs' divide párrafos y 'none' mantiene el mensaje como una sola cadena.", + "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.": "Controla la repetición de secuencias de tokens en el texto generado. Un valor más alto (p.ej., 1.5) penalizá más las repeticiones, mientras que un valor más bajo (p.ej., 1.1) sería más permisivo. En 1, el control está desactivado.", + "Controls": "Controles", + "Controls the balance between coherence and diversity of the output. A lower value will result in more focused and coherent text.": "Controles del equilibrio entre coherencia y diversidad de la salida. Un valor más bajo produce un texto más centrado y coherente.", + "Copied": "Copiado", + "Copied shared chat URL to clipboard!": "¡Copiada al portapapeles la URL del chat compartido!", + "Copied to clipboard": "Copiado al portapapeles", + "Copy": "Copiar", + "Copy Formatted Text": "", + "Copy last code block": "Copia el último bloque de código", + "Copy last response": "Copia la última respuesta", + "Copy Link": "Copiar enlace", + "Copy to clipboard": "Copia a portapapeles", + "Copying to clipboard was successful!": "¡La copia al portapapeles se ha realizado correctamente!", + "CORS must be properly configured by the provider to allow requests from Open WebUI.": "El protocolo CORS debe estar configurado correctamente por el proveedor para permitir solicitudes desde Open WebUI.", + "Create": "Crear", + "Create a knowledge base": "Crear Base de Conocimiento", + "Create a model": "Crear Modelo", + "Create Account": "Crear Cuenta", + "Create Admin Account": "Crear Cuenta Administrativa", + "Create Channel": "Crear Canal", + "Create Group": "Crear Grupo", + "Create Knowledge": "Crear Conocimiento", + "Create new key": "Crear Nueva Clave", + "Create new secret key": "Crear Nueva Clave Secreta", + "Create Note": "", + "Create your first note by clicking on the plus button below.": "", + "Created at": "Creado en", + "Created At": "Creado En", + "Created by": "Creado por", + "CSV Import": "Importar CSV", + "Ctrl+Enter to Send": "'Ctrl+Enter' para Enviar", + "Current Model": "Modelo Actual", + "Current Password": "Contraseña Actual", + "Custom": "Personalizado", + "Danger Zone": "Zona Peligrosa", + "Dark": "Oscuro", + "Database": "Base de datos", + "December": "Diciembre", + "Default": "Predeterminado", + "Default (Open AI)": "Predeterminado (Open AI)", + "Default (SentenceTransformers)": "Predeterminado (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.": "El modo Predeterminado funciona con una amplia gama de modelos llamando a las herramientas antes de la ejecución. El modo Nativo aprovecha la capacidad de llamada a herramientas integrada en el modelo, pero requiere que el modelo soporte esta función de manera inherente.", + "Default Model": "Modelo Predeterminado", + "Default model updated": "El modelo Predeterminado ha sido actualizado", + "Default Models": "Modelos Predeterminados", + "Default permissions": "Permisos Predeterminados", + "Default permissions updated successfully": "Permisos predeterminados actualizados correctamente", + "Default Prompt Suggestions": "Sugerencias Predeterminadas de Prompt", + "Default to 389 or 636 if TLS is enabled": "Predeterminado a 389, o 636 si TLS está habilitado", + "Default to ALL": "Predeterminado a TODOS", + "Default to segmented retrieval for focused and relevant content extraction, this is recommended for most cases.": "Por defecto está predeterminada una segmentación de la recuperación para una extracción de contenido centrado y relevante, recomendado para la mayoría de los casos.", + "Default User Role": "Rol predeterminado de los nuevos usuarios", + "Delete": "Borrar", + "Delete a model": "Borrar un modelo", + "Delete All Chats": "Borrar todos los chats", + "Delete All Models": "Borrar todos los modelos", + "Delete chat": "Borrar chat", + "Delete Chat": "Borrar Chat", + "Delete chat?": "¿Borrar el chat?", + "Delete folder?": "¿Borrar carpeta?", + "Delete function?": "Borrar la función?", + "Delete Message": "Borrar mensaje", + "Delete message?": "¿Borrar mensaje?", + "Delete note?": "", + "Delete prompt?": "¿Borrar el prompt?", + "delete this link": "Borrar este enlace", + "Delete tool?": "¿Borrar la herramienta?", + "Delete User": "Borrar Usuario", + "Deleted {{deleteModelTag}}": "{{deleteModelTag}} Borrado", + "Deleted {{name}}": "{{nombre}} Borrado", + "Deleted User": "Usuario Borrado", + "Describe your knowledge base and objectives": "Describe tu Base de Conocimientos y sus objetivos", + "Description": "Descripción", + "Detect Artifacts Automatically": "Detectar Artefactos Automáticamente", + "Didn't fully follow instructions": "No seguiste completamente las instrucciones", + "Direct": "Directo", + "Direct Connections": "Conexiones Directas", + "Direct Connections allow users to connect to their own OpenAI compatible API endpoints.": "Las Conexiones Directas permiten a los usuarios conectar a sus propios endpoints compatibles API OpenAI.", + "Direct Connections settings updated": "Se actualizaron las configuraciones de las Conexiones Directas", + "Direct Tool Servers": "Servidores de Herramientas Directos", + "Disabled": "Deshabilitado", + "Discover a function": "Descubrir Funciónes", + "Discover a model": "Descubrir Modelos", + "Discover a prompt": "Descubrir Prompts", + "Discover a tool": "Descubrir Herramientas", + "Discover how to use Open WebUI and seek support from the community.": "Descubre cómo usar Open WebUI y busca Soporte Comunitario.", + "Discover wonders": "Descubre Maravillas", + "Discover, download, and explore custom functions": "Descubre, descarga y explora funciones personalizadas", + "Discover, download, and explore custom prompts": "Descubre, descarga, y explora prompts personalizados", + "Discover, download, and explore custom tools": "Descubre, descarga y explora herramientas personalizadas", + "Discover, download, and explore model presets": "Descubre, descarga y explora modelos con preajustados", + "Dismissible": "Desestimable", + "Display": "Mostrar", + "Display Emoji in Call": "Muestra Emojis en Llamada", + "Display the username instead of You in the Chat": "Mostrar en el chat el nombre de usuario en lugar del genérico Tu", + "Displays citations in the response": "Mostrar citas en la respuesta", + "Dive into knowledge": "Sumérgete en el conocimiento", + "Do not install functions from sources you do not fully trust.": "¡No instalar funciones de fuentes en las que que no se confíe totalmente!", + "Do not install tools from sources you do not fully trust.": "¡No instalar herramientas de fuentes en las que no se confíe totalmente!", + "Docling": "Docling", + "Docling Server URL required.": "Docling URL del servidor necesaria.", + "Document": "Documento", + "Document Intelligence": "Azure Doc Intelligence", + "Document Intelligence endpoint and key required.": "Es neceario un endpoint y clave de Azure Document Intelligence.", + "Documentation": "Documentación", + "Documents": "Documentos", + "does not make any external connections, and your data stays securely on your locally hosted server.": "no se realiza ninguna conexión externa y tus datos permanecen seguros alojados localmente en tu servidor.", + "Domain Filter List": "Lista de Filtrado de Dominio", + "Don't have an account?": "¿No tienes una cuenta?", + "don't install random functions from sources you don't trust.": "¡no instalar funciones desconocidas de fuentes en las que no se confíe!", + "don't install random tools from sources you don't trust.": "¡no instalar herramientas desconocidas de fuentes en las que no se confíe!", + "Don't like the style": "¿No te gusta el estilo?", + "Done": "Hecho", + "Download": "Descargar", + "Download as SVG": "Descargar como SVG", + "Download canceled": "Descarga cancelada", + "Download Database": "Descargar Base de Datos", + "Drag and drop a file to upload or select a file to view": "Arrastra y suelta un archivo para subirlo o selecciona uno para verlo", + "Draw": "Dibujar", + "Drop any files here to upload": "", + "e.g. '30s','10m'. Valid time units are 's', 'm', 'h'.": "p.ej. '30s','10m'. Unidades de tiempo válidas son 's', 'm', 'h'.", + "e.g. \"json\" or a JSON schema": "p.ej. \"json\" o un esquema JSON", + "e.g. 60": "p.ej. 60", + "e.g. A filter to remove profanity from text": "p.ej. Un filtro para eliminar malas palabras del texto", + "e.g. My Filter": "p.ej. Mi Filtro", + "e.g. My Tools": "p.ej. Mis Herramientas", + "e.g. my_filter": "p.ej. mi_filtro", + "e.g. my_tools": "p.ej. mis_herramientas", + "e.g. Tools for performing various operations": "p.ej. Herramientas para realizar varias operaciones", + "e.g., 3, 4, 5 (leave blank for default)": "", + "e.g., en-US,ja-JP (leave blank for auto-detect)": "p. ej., en-US,ja-JP (dejar en blanco para detectar automáticamente)", + "e.g., westus (leave blank for eastus)": "", + "Edit": "Editar", + "Edit Arena Model": "Editar Modelo en Arena", + "Edit Channel": "Editar Canal", + "Edit Connection": "Editar Conexión", + "Edit Default Permissions": "Editar Permisos Predeterminados", + "Edit Memory": "Editar Memoria", + "Edit User": "Editar Usuario", + "Edit User Group": "Editar Grupo de Usuarios", + "ElevenLabs": "ElevenLabs", + "Email": "Email", + "Embark on adventures": "Embarcate en aventuras", + "Embedding": "Incrustación", + "Embedding Batch Size": "Tamaño del Lote de Incrustación", + "Embedding Model": "Modelo de Incrustación", + "Embedding Model Engine": "Motor del Modelo de Incrustación", + "Embedding model set to \"{{embedding_model}}\"": "Modelo de Incrustación configurado a \"{{embedding_model}}\"", + "Enable API Key": "Habilitar Clave API", + "Enable autocomplete generation for chat messages": "Habilitar generación de autocompletado para mensajes de chat", + "Enable Code Execution": "Habilitar Ejecución de Código", + "Enable Code Interpreter": "Habilitar Interprete de Código", + "Enable Community Sharing": "Habilitar Compartir con la Comunidad", + "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.": "Habilitar bloqueo de memoria (mlock) para prevenir que los datos del modelo se intercambien fuera de la RAM. Esta opción bloquea el conjunto de páginas de trabajo del modelo en RAM, asegurando que no se intercambiarán fuera a disco. Esto puede ayudar a mantener el rendimiento evitando fallos de página y asegurando un acceso rápido a los datos.", + "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.": "Habilitar Mapeado de Memoria (mmap) para cargar datos del modelo. Esta opción permite al sistema usar el almacenamiento del disco como una extensión de la RAM al tratar los archivos en disco como si estuvieran en la RAM. Esto puede mejorar el rendimiento del modelo al permitir un acceso más rápido a los datos. Sin embargo, puede no funcionar correctamente con todos los sistemas y puede consumir una cantidad significativa de espacio en disco.", + "Enable Message Rating": "Habilitar Calificación de los Mensajes", + "Enable Mirostat sampling for controlling perplexity.": "Algoritmo de decodificación de texto neuronal que controla activamente el proceso generativo para mantener la perplejidad del texto generado en un valor deseado. Previene las trampas de aburrimiento (por excesivas repeticiones) y de incoherencia (por generación de excesivo texto).", + "Enable New Sign Ups": "Habilitar Registros de Nuevos Usuarios", + "Enabled": "Habilitado", + "Endpoint URL": "", + "Enforce Temporary Chat": "Forzar el uso de Chat Temporal", + "Enhance": "", + "Ensure your CSV file includes 4 columns in this order: Name, Email, Password, Role.": "Asegúrese de que su archivo CSV incluya 4 columnas en este orden: Nombre, Correo Electrónico, Contraseña, Rol.", + "Enter {{role}} message here": "Ingresar mensaje {{role}} aquí", + "Enter a detail about yourself for your LLMs to recall": "Ingresar detalles sobre ti para que los recuerden sus LLMs", + "Enter api auth string (e.g. username:password)": "Ingresar campo de autorización de la api (p.ej. nombre:contraseña)", + "Enter Application DN": "Ingresar el DN de la Aplicación", + "Enter Application DN Password": "Ingresar la Contraseña del DN de la Aplicación", + "Enter Bing Search V7 Endpoint": "Ingresar el Endpoint de Bing Search V7", + "Enter Bing Search V7 Subscription Key": "Ingresar la Clave de Suscripción de Bing Search V7", + "Enter Bocha Search API Key": "Ingresar la Clave API de Bocha Search", + "Enter Brave Search API Key": "Ingresar la Clave API de Brave Search", + "Enter certificate path": "Ingresar la ruta del certificado", + "Enter CFG Scale (e.g. 7.0)": "Ingresa escala CFG (p.ej., 7.0)", + "Enter Chunk Overlap": "Ingresar Superposición de los Fragmentos", + "Enter Chunk Size": "Ingresar el Tamaño del Fragmento", + "Enter comma-separated \"token:bias_value\" pairs (example: 5432:100, 413:-100)": "Ingresar pares \"token:valor_sesgo\" separados por comas (ejemplo: 5432:100, 413:-100)", + "Enter description": "Ingresar Descripción", + "Enter Docling OCR Engine": "", + "Enter Docling OCR Language(s)": "", + "Enter Docling Server URL": "Ingresar URL del Servidor Docling", + "Enter Document Intelligence Endpoint": "Ingresar el Endpoint de Azure Document Intelligence", + "Enter Document Intelligence Key": "Ingresar Clave de Azure Document Intelligence", + "Enter domains separated by commas (e.g., example.com,site.org)": "Ingresar dominios separados por comas (p.ej., ejemplo.com,sitio.org)", + "Enter Exa API Key": "Ingresar Clave API de Exa", + "Enter External Web Loader API Key": "", + "Enter External Web Loader URL": "", + "Enter External Web Search API Key": "", + "Enter External Web Search URL": "", + "Enter Firecrawl API Base URL": "Ingresar URL Base del API de Firecrawl", + "Enter Firecrawl API Key": "Ingresar Clave del API de Firecrawl", + "Enter Github Raw URL": "Ingresar URL Github en Bruto(raw)", + "Enter Google PSE API Key": "Ingresar Clave API de Google PSE", + "Enter Google PSE Engine Id": "Ingresa ID del Motor PSE de Google", + "Enter Image Size (e.g. 512x512)": "Ingresar Tamaño de Imagen (p.ej. 512x512)", + "Enter Jina API Key": "Ingresar Clave API de Jina", + "Enter Jupyter Password": "Ingresar Contraseña de Jupyter", + "Enter Jupyter Token": "Ingresar Token de Jupyter", + "Enter Jupyter URL": "Ingresar URL de Jupyter", + "Enter Kagi Search API Key": "Ingresar Clave API de Kagi Search", + "Enter Key Behavior": "Comportamiento de la Tecla de Envío", + "Enter language codes": "Ingresar Códigos de Idioma", + "Enter Mistral API Key": "Ingresar Clave API de Mistral", + "Enter Model ID": "Ingresar ID del Modelo", + "Enter model tag (e.g. {{modelTag}})": "Ingresar la etiqueta del modelo (p.ej. {{modelTag}})", + "Enter Mojeek Search API Key": "Ingresar Clave API de Mojeek Search", + "Enter New Password": "", + "Enter Number of Steps (e.g. 50)": "Ingresar Número de Pasos (p.ej., 50)", + "Enter Perplexity API Key": "Ingresar Clave API de Perplexity", + "Enter Playwright Timeout": "Ingresar límite de tiempo de espera de Playwright", + "Enter Playwright WebSocket URL": "Ingresar URL de WebSocket de Playwright", + "Enter proxy URL (e.g. https://user:password@host:port)": "Ingresar URL del proxy (p.ej. https://user:password@host:port)", + "Enter reasoning effort": "Ingresar esfuerzo de razonamiento", + "Enter Sampler (e.g. Euler a)": "Ingresar Muestreador (p.ej., Euler a)", + "Enter Scheduler (e.g. Karras)": "Ingresar Planificador (p.ej., Karras)", + "Enter Score": "Ingresar Puntuación", + "Enter SearchApi API Key": "Ingresar Clave API de SearchApi", + "Enter SearchApi Engine": "Ingresar Motor de SearchApi", + "Enter Searxng Query URL": "Ingresar URL de la consulta Searxng", + "Enter Seed": "Ingresar Semilla", + "Enter SerpApi API Key": "Ingresar Clave API de SerpApi", + "Enter SerpApi Engine": "Ingresar Motor de SerpApi", + "Enter Serper API Key": "Ingresar Clave API de Serper", + "Enter Serply API Key": "Ingresar Clave API de Serply", + "Enter Serpstack API Key": "Ingresar Clave API de Serpstack", + "Enter server host": "Ingresar host del servidor", + "Enter server label": "Ingresar etiqueta del servidor", + "Enter server port": "Ingresar puerto del servidor", + "Enter Sougou Search API sID": "Ingresar Sougou Search API sID", + "Enter Sougou Search API SK": "Ingresar Sougou Search API SK", + "Enter stop sequence": "Ingresar secuencia de parada", + "Enter system prompt": "Ingresar Prompt del sistema", + "Enter system prompt here": "Ingresa aquí el prompt del sistema", + "Enter Tavily API Key": "Ingresar Clave API de Tavily", + "Enter Tavily Extract Depth": "Ingresar parámetro de Extract Depth de Taviliy", + "Enter the public URL of your WebUI. This URL will be used to generate links in the notifications.": "Ingresar URL pública de WebUI. Esta URL se usará para generar enlaces en las notificaciones.", + "Enter Tika Server URL": "Ingresar URL del servidor Tika", + "Enter timeout in seconds": "Ingresar tiempo límite de espera en segundos", + "Enter to Send": "'Enter' para Enviar", + "Enter Top K": "Ingresar Top K", + "Enter Top K Reranker": "Ingresar Top K Reclasificador", + "Enter URL (e.g. http://127.0.0.1:7860/)": "Ingresar URL (p.ej., http://127.0.0.1:7860/)", + "Enter URL (e.g. http://localhost:11434)": "Ingresar URL (p.ej., http://localhost:11434)", + "Enter Yacy Password": "", + "Enter Yacy URL (e.g. http://yacy.example.com:8090)": "", + "Enter Yacy Username": "", + "Enter your current password": "Ingresa tu contraseña actual", + "Enter Your Email": "Ingresa tu correo electrónico", + "Enter Your Full Name": "Ingresa su nombre completo", + "Enter your message": "Ingresa tu mensaje", + "Enter your name": "Ingresa tu nombre", + "Enter Your Name": "", + "Enter your new password": "Ingresa tu contraseña nueva", + "Enter Your Password": "Ingresa tu contraseña", + "Enter Your Role": "Ingresa tu rol", + "Enter Your Username": "Ingresa tu nombre de usuario", + "Enter your webhook URL": "Ingresa tu URL de webhook", + "Error": "Error", + "ERROR": "ERROR", + "Error accessing Google Drive: {{error}}": "Error accediendo a Google Drive: {{error}}", + "Error accessing media devices.": "", + "Error starting recording.": "", + "Error uploading file: {{error}}": "Error subiendo el archivo: {{error}}", + "Evaluations": "Evaluaciones", + "Exa API Key": "Clave API de Exa", + "Example: (&(objectClass=inetOrgPerson)(uid=%s))": "Ejemplo: (&(objectClass=inetOrgPerson)(uid=%s))", + "Example: ALL": "Ejemplo: TODOS", + "Example: mail": "Ejemplo: correo", + "Example: ou=users,dc=foo,dc=example": "Ejemplo: ou=usuarios,dc=foo,dc=ejemplo", + "Example: sAMAccountName or uid or userPrincipalName": "Ejemplo: sAMNombreCuenta o uid o userNombrePrincipal", + "Exceeded the number of seats in your license. Please contact support to increase the number of seats.": "Excedido el número de accesos de usuarios en tu licencia. Por favor, contacta con soporte para aumentar el número de accesos.", + "Exclude": "Excluir", + "Execute code for analysis": "Ejecutar código para análisis", + "Executing **{{NAME}}**...": "Ejecutando **{{NAME}}**...", + "Expand": "Expandir", + "Experimental": "Experimental", + "Explain": "Explicar", + "Explain this section to me in more detail": "Explícame esta sección con más detalle", + "Explore the cosmos": "Explora el cosmos", + "Export": "Exportar", + "Export All Archived Chats": "Exportar Todos los Chats Archivados", + "Export All Chats (All Users)": "Exportar Todos los Chats (Todos los Usuarios)", + "Export chat (.json)": "Exportar chat (.json)", + "Export Chats": "Exportar Chats", + "Export Config to JSON File": "Exportar Configuración a archivo JSON", + "Export Functions": "Exportar Funciones", + "Export Models": "Exportar Modelos", + "Export Presets": "Exportar Preajustes", + "Export Prompts": "Exportar Prompts", + "Export to CSV": "Exportar a CSV", + "Export Tools": "Exportar Herramientas", + "External": "Externo", + "External Models": "Modelos Externos", + "External Web Loader API Key": "", + "External Web Loader URL": "", + "External Web Search API Key": "", + "External Web Search URL": "", + "Failed to add file.": "Fallo al añadir el archivo.", + "Failed to connect to {{URL}} OpenAPI tool server": "Fallo al conectar al servidor de herramientas {{URL}}", + "Failed to create API Key.": "Fallo al crear la Clave API.", + "Failed to delete note": "", + "Failed to fetch models": "Fallo al obtener los modelos", + "Failed to load file content.": "", + "Failed to read clipboard contents": "Fallo al leer el contenido del portapapeles", + "Failed to save connections": "Fallo al grabar las conexiones", + "Failed to save models configuration": "Fallo al guardar la configuración de los modelos", + "Failed to update settings": "Fallo al actualizar los ajustes", + "Failed to upload file.": "Fallo al subir el archivo.", + "Features": "Características", + "Features Permissions": "Permisos de las Características", + "February": "Febrero", + "Feedback History": "Historial de Opiniones", + "Feedbacks": "Opiniones", + "Feel free to add specific details": "Añade libremente detalles específicos", + "File": "Archivo", + "File added successfully.": "Archivo añadido correctamente.", + "File content updated successfully.": "Contenido del archivo actualizado correctamente.", + "File Mode": "Modo de Archivo", + "File not found.": "Archivo no encontrado.", + "File removed successfully.": "Archivo eliminado correctamente.", + "File size should not exceed {{maxSize}} MB.": "Tamaño del archivo no debe exceder {{maxSize}} MB.", + "File uploaded successfully": "Archivo subido correctamente", + "Files": "Archivos", + "Filter is now globally disabled": "El filtro ahora está desactivado globalmente", + "Filter is now globally enabled": "El filtro ahora está habilitado globalmente", + "Filters": "Filtros", + "Fingerprint spoofing detected: Unable to use initials as avatar. Defaulting to default profile image.": "Se detectó suplantación de huellas: No se pueden usar las iniciales como avatar. Se establece la imagen de perfil predeterminada.", + "Firecrawl API Base URL": "URL Base de API de Firecrawl", + "Firecrawl API Key": "Clave de API de Firecrawl", + "Fluidly stream large external response chunks": "Transmisión fluida de fragmentos de grandes respuestas externas", + "Focus chat input": "Enfocar campo de chat", + "Folder deleted successfully": "Carpeta eliminada correctamente", + "Folder name cannot be empty.": "El nombre de la carpeta no puede estar vacío", + "Folder name updated successfully": "Nombre de la carpeta actualizado correctamente", + "Followed instructions perfectly": "Siguió las instrucciones perfectamente", + "Forge new paths": "Forjar nuevos caminos", + "Form": "Formulario", + "Format your variables using brackets like this:": "Formatea tus variables usando corchetes así:", + "Forwards system user session credentials to authenticate": "Reenvío de las credenciales de la sesión del usuario del sistema para autenticación", + "Frequency Penalty": "Penalización de Frecuencia", + "Full Context Mode": "Modo Contexto Completo", + "Function": "Función", + "Function Calling": "Modo de Llamada a Funciones (Herramientas)", + "Function created successfully": "Función creada correctamente", + "Function deleted successfully": "Función borrada correctamente", + "Function Description": "Descripción de la Función", + "Function ID": "ID de la Función", + "Function is now globally disabled": "La Función ahora está deshabilitada globalmente", + "Function is now globally enabled": "La Función ahora está habilitada globalmente", + "Function Name": "Nombre de la Función", + "Function updated successfully": "Función actualizada correctamente", + "Functions": "Funciones", + "Functions allow arbitrary code execution.": "Las Funciones habilitan la ejecución de código arbitrario.", + "Functions imported successfully": "Funciones importadas correctamente", + "Gemini": "Gemini", + "Gemini API Config": "Config API Gemini", + "Gemini API Key is required.": "Se requiere Clave API de Gemini.", + "General": "General", + "Generate": "", + "Generate an image": "Generar una imagen", + "Generate Image": "Generar imagen", + "Generate prompt pair": "Generar par de prompts", + "Generating search query": "Generando consulta de búsqueda", + "Generating...": "", + "Get started": "Empezar", + "Get started with {{WEBUI_NAME}}": "Empezar con {{WEBUI_NAME}}", + "Global": "Global", + "Good Response": "Buena Respuesta", + "Google Drive": "Google Drive", + "Google PSE API Key": "Clave API de Google PSE", + "Google PSE Engine Id": "ID del Motor PSE de Google", + "Group created successfully": "Grupo creado correctamente", + "Group deleted successfully": "Grupo eliminado correctamente", + "Group Description": "Descripción del Grupo", + "Group Name": "Nombre del Grupo", + "Group updated successfully": "Grupo actualizado correctamente", + "Groups": "Grupos", + "Haptic Feedback": "Realimentación Háptica", + "has no conversations.": "no tiene conversaciones.", + "Hello, {{name}}": "Hola, {{name}}", + "Help": "Ayuda", + "Help us create the best community leaderboard by sharing your feedback history!": "¡Ayúdanos a crear la mejor tabla clasificatoria comunitaria compartiendo tu historial de realimentación!", + "Hex Color": "Color Hex", + "Hex Color - Leave empty for default color": "Color Hex - Deja vacío para el color predeterminado", + "Hide": "Esconder", + "Hide Model": "Ocultar Modelo", + "Home": "Inicio", + "Host": "Host", + "How can I help you today?": "¿Cómo puedo ayudarte hoy?", + "How would you rate this response?": "¿Cómo calificarías esta respuesta?", + "Hybrid Search": "Búsqueda 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.": "Aseguro que he leído y entiendo las implicaciones de mi acción. Soy consciente de los riesgos asociados con la ejecución de código arbitrario y he verificado la confiabilidad de la fuente.", + "ID": "ID", + "iframe Sandbox Allow Forms": "", + "iframe Sandbox Allow Same Origin": "", + "Ignite curiosity": "Encender la curiosidad", + "Image": "Imagen", + "Image Compression": "Compresión de Imagen", + "Image Generation": "Generación de Imagen", + "Image Generation (Experimental)": "Generación de Imagen (experimental)", + "Image Generation Engine": "Motor de Generación de Imagen", + "Image Max Compression Size": "Tamaño Máximo de Compresión de Imagen", + "Image Prompt Generation": "Prompt para Generación de Imagen", + "Image Prompt Generation Prompt": "Prompt para la Generación de Imagen", + "Image Settings": "Configuración de Imágen", + "Images": "Imágenes", + "Import Chats": "Importar Chats", + "Import Config from JSON File": "Importar Config desde Archivo JSON", + "Import Functions": "Importar Funciones", + "Import Models": "Importar Modelos", + "Import Notes": "", + "Import Presets": "Importar Preajustes", + "Import Prompts": "Importar Prompts", + "Import Tools": "Importar Herramientas", + "Include": "Incluir", + "Include `--api-auth` flag when running stable-diffusion-webui": "Incluir el señalizador `--api-auth` al ejecutar stable-diffusion-webui", + "Include `--api` flag when running stable-diffusion-webui": "Incluir el señalizador `--api` al ejecutar stable-diffusion-webui", + "Influences how quickly the algorithm responds to feedback from the generated text. A lower learning rate will result in slower adjustments, while a higher learning rate will make the algorithm more responsive.": "Influye en la rápidez de respuesta a la realimentación desde el texto generado. Una tasa de aprendizaje más baja resulta en un ajustado más lento, mientras que una tasa de aprendizaje más alta hará que el algoritmo sea más reactivo.", + "Info": "Información", + "Inject the entire content as context for comprehensive processing, this is recommended for complex queries.": "Inyecta el contenido completo como contexto para un procesado comprensivo, recomendado para consultas complejas.", + "Input commands": "Ingresar comandos", + "Install from Github URL": "Instalar desde la URL de Github", + "Instant Auto-Send After Voice Transcription": "AutoEnvio Instantaneo tras la Transcripción de Voz", + "Integration": "Integración", + "Interface": "Interface", + "Invalid file content": "", + "Invalid file format.": "Formato de archivo Inválido.", + "Invalid JSON schema": "Esquema JSON Inválido", + "Invalid Tag": "Etiqueta Inválida", + "is typing...": "está escribiendo...", + "January": "Enero", + "Jina API Key": "Clave API de Jina", + "join our Discord for help.": "unete a nuestro Discord para ayuda.", + "JSON": "JSON", + "JSON Preview": "Prevista del JSON", + "July": "Julio", + "June": "Junio", + "Jupyter Auth": "Autenticación de Jupyter", + "Jupyter URL": "URL de Jupyter", + "JWT Expiration": "Expiración del JSON Web Token (JWT)", + "JWT Token": "JSON Web Token", + "Kagi Search API Key": "Clave API de Kagi Search", + "Keep Alive": "Mantener Vivo", + "Key": "Clave", + "Keyboard shortcuts": "Atajos de teclado", + "Knowledge": "Conocimiento", + "Knowledge Access": "Acceso a Conocimiento", + "Knowledge created successfully.": "Conocimiento creado correctamente.", + "Knowledge deleted successfully.": "Conocimiento eliminado correctamente.", + "Knowledge Public Sharing": "", + "Knowledge reset successfully.": "Conocimiento restablecido correctamente.", + "Knowledge updated successfully": "Conocimiento actualizado correctamente.", + "Kokoro.js (Browser)": "Kokoro.js (Navegador)", + "Kokoro.js Dtype": "Kokoro.js DType", + "Label": "Etiqueta", + "Landing Page Mode": "Modo Página Inicial", + "Language": "Idioma", + "Language Locales": "", + "Last Active": "Última Actividad", + "Last Modified": "Último Modificación", + "Last reply": "Última Respuesta", + "LDAP": "LDAP", + "LDAP server updated": "Servidor LDAP actualizado", + "Leaderboard": "Tabla Clasificatoria", + "Learn more about OpenAPI tool servers.": "Saber más sobre los servidores de herramientas OpenAPI", + "Leave empty for unlimited": "Dejar vacío para ilimitado", + "Leave empty to include all models from \"{{url}}/api/tags\" endpoint": "Dejar vacío para incluir todos los modelos desde el endpoint \"{{url}}/api/tags\"", + "Leave empty to include all models from \"{{url}}/models\" endpoint": "Dejar vacío para incluir todos los modelos desde el endpoint \"{{url}}/models\"", + "Leave empty to include all models or select specific models": "Dejar vacío para incluir todos los modelos o Seleccionar modelos específicos", + "Leave empty to use the default prompt, or enter a custom prompt": "Dejar vacío para usar el prompt predeterminado, o Ingresar un prompt personalizado", + "Leave model field empty to use the default model.": "Dejar vacío el campo modelo para usar el modelo predeterminado.", + "License": "Licencia", + "Light": "Claro", + "Listening...": "Escuchando...", + "Llama.cpp": "Llama.cpp", + "LLMs can make mistakes. Verify important information.": "Los LLMs pueden cometer errores. Verifica la información importante.", + "Loader": "Cargador", + "Loading Kokoro.js...": "Cargando Kokoro.js...", + "Local": "Local", + "Local Models": "Modelos Locales", + "Location access not allowed": "Sin acceso a la Ubicación", + "Logit Bias": "Sesgo de Logit", + "Lost": "Perdido", + "LTR": "LTR", + "Made by Open WebUI Community": "Creado por la Comunidad Open-WebUI", + "Make sure to enclose them with": "Asegúrate de delimitarlos con", + "Make sure to export a workflow.json file as API format from ComfyUI.": "Asegúrate de exportar un archivo workflow.json en formato API desde ComfyUI.", + "Manage": "Gestionar", + "Manage Direct Connections": "Gestionar Conexiones Directas", + "Manage Models": "Gestionar Modelos", + "Manage Ollama": "Gestionar Ollama", + "Manage Ollama API Connections": "Gestionar Conexiones API de Ollama", + "Manage OpenAI API Connections": "Gestionar Conexiones API de OpenAI", + "Manage Pipelines": "Gestionar Tuberías", + "Manage Tool Servers": "Gestionar Servidores de Herramientas", + "March": "Marzo", + "Max Speakers": "", + "Max Tokens (num_predict)": "Máx Tokens (num_predict)", + "Max Upload Count": "Número Max de Subidas", + "Max Upload Size": "Tamaño Max de Subidas", + "Maximum of 3 models can be downloaded simultaneously. Please try again later.": "Se puede descargar un máximo de 3 modelos simultáneamente. Por favor, reinténtelo más tarde.", + "May": "Mayo", + "Memories accessible by LLMs will be shown here.": "Las memorias accesibles por los LLMs se mostrarán aquí.", + "Memory": "Memoria", + "Memory added successfully": "Memoria añadida correctamente", + "Memory cleared successfully": "Memoria liberada correctamente", + "Memory deleted successfully": "Memoria borrada correctamente", + "Memory updated successfully": "Memoria actualizada correctamente", + "Merge Responses": "Fusionar Respuestas", + "Merged Response": "Respuesta combinada", + "Message rating should be enabled to use this feature": "Para usar esta función debe estar habilitada la calificación de mensajes", + "Messages you send after creating your link won't be shared. Users with the URL will be able to view the shared chat.": "Los mensajes que envíe después de la creación del enlace no se compartirán. Los usuarios con la URL del enlace podrán ver el chat compartido.", + "Microsoft OneDrive": "", + "Microsoft OneDrive (personal)": "", + "Microsoft OneDrive (work/school)": "", + "Min P": "Min P", + "Mirostat": "Mirostat", + "Mirostat Eta": "Mirostat Eta", + "Mirostat Tau": "Mirostat Tau", + "Mistral OCR": "OCR Mistral", + "Mistral OCR API Key required.": "Clave API de Mistral OCR requerida", + "Model": "Modelo", + "Model '{{modelName}}' has been successfully downloaded.": "Modelo '{{modelName}}' se ha descargado correctamente.", + "Model '{{modelTag}}' is already in queue for downloading.": "Modelo '{{modelTag}}' ya está en cola para descargar.", + "Model {{modelId}} not found": "Modelo {{modelId}} no encontrado", + "Model {{modelName}} is not vision capable": "Modelo {{modelName}} no esta capacitado para visión", + "Model {{name}} is now {{status}}": "Modelo {{name}} está ahora {{status}}", + "Model {{name}} is now hidden": "", + "Model {{name}} is now visible": "", + "Model accepts image inputs": "Modelo acepta entradas de imágen", + "Model created successfully!": "¡Modelo creado correctamente!", + "Model filesystem path detected. Model shortname is required for update, cannot continue.": "Detectada ruta del sistema al modelo. Para actualizar se requiere el nombre corto del modelo, no se puede continuar.", + "Model Filtering": "Filtrado de modelos", + "Model ID": "ID Modelo", + "Model IDs": "IDs Modelo", + "Model Name": "Nombre Modelo", + "Model not selected": "Modelo no seleccionado", + "Model Params": "Paráms Modelo", + "Model Permissions": "Permisos Modelo", + "Model updated successfully": "Modelo actualizado correctamente", + "Modelfile Content": "Contenido del Modelfile", + "Models": "Modelos", + "Models Access": "Acceso Modelos", + "Models configuration saved successfully": "Configuración de Modelos guardada correctamente", + "Models Public Sharing": "", + "Mojeek Search API Key": "Clave API de Mojeek Search", + "more": "más", + "More": "Más", + "My Notes": "", + "Name": "Nombre", + "Name your knowledge base": "Nombra tu base de conocimientos", + "Native": "Nativo", + "New Chat": "Nuevo Chat", + "New Folder": "Nueva Carpeta", + "New Note": "", + "New Password": "Nueva Contraseña", + "new-channel": "nuevo-canal", + "No content": "", + "No content found": "No se encontró contenido", + "No content found in file.": "", + "No content to speak": "No hay contenido para hablar", + "No distance available": "No hay distancia disponible", + "No feedbacks found": "No se encontraron realimentaciones", + "No file selected": "No se seleccionó archivo", + "No groups with access, add a group to grant access": "No hay grupos con acceso, añade un grupo para otorgar acceso", + "No HTML, CSS, or JavaScript content found.": "No se encontró contenido HTML, CSS, o JavaScript.", + "No inference engine with management support found": "No se encontró un motor de inferencia que soporte gestión", + "No knowledge found": "No se encontró ningún conocimiento", + "No memories to clear": "No hay memorias para borrar", + "No model IDs": "No hay IDs de modelo", + "No models found": "No se encontraron modelos", + "No models selected": "No se seleccionaron modelos", + "No Notes": "", + "No results found": "No se encontraron resultados", + "No search query generated": "No se generó ninguna consulta de búsqueda", + "No source available": "No hay fuente disponible", + "No users were found.": "No se encontraron usuarios.", + "No valves to update": "No hay válvulas para actualizar", + "None": "Ninguno", + "Not factually correct": "No es correcto en todos los aspectos", + "Not helpful": "No aprovechable", + "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.": "Nota: Si estableces una puntuación mínima, la búsqueda sólo devolverá documentos con una puntuación mayor o igual a la puntuación mínima establecida.", + "Notes": "Notas", + "Notification Sound": "Notificación Sonora", + "Notification Webhook": "Notificación Enganchada (webhook)", + "Notifications": "Notificaciones", + "November": "Noviembre", + "num_gpu (Ollama)": "num_gpu (capas Ollama)", + "num_thread (Ollama)": "num_thread (hilos Ollama)", + "OAuth ID": "OAuth ID", + "October": "Octubre", + "Off": "Desactivado", + "Okay, Let's Go!": "Vale, ¡Vamos!", + "OLED Dark": "Oscuro OLED", + "Ollama": "Ollama", + "Ollama API": "API Ollama", + "Ollama API settings updated": "Ajustes de la API de Ollama actualizados", + "Ollama Version": "Versión de Ollama", + "On": "Activado", + "OneDrive": "OneDrive", + "Only alphanumeric characters and hyphens are allowed": "Sólo están permitidos caracteres alfanuméricos y guiones", + "Only alphanumeric characters and hyphens are allowed in the command string.": "Sólo están permitidos en la cadena de comandos caracteres alfanuméricos y guiones.", + "Only collections can be edited, create a new knowledge base to edit/add documents.": "Solo se pueden editar las colecciones, para añadir/editar documentos hay que crear una nueva base de conocimientos", + "Only markdown files are allowed": "", + "Only select users and groups with permission can access": "Solo pueden acceder los usuarios y grupos con permiso", + "Oops! Looks like the URL is invalid. Please double-check and try again.": "¡vaya! Parece que la URL es inválida. Por favor, revisala y reintenta de nuevo.", + "Oops! There are files still uploading. Please wait for the upload to complete.": "¡vaya! Todavía hay archivos subiendose. Por favor, espera a que se complete la subida.", + "Oops! There was an error in the previous response.": "¡vaya! Hubo un error en la respuesta previa.", + "Oops! You're using an unsupported method (frontend only). Please serve the WebUI from the backend.": "¡vaya! Estás usando un método no soportado (solo interface frontal-frontend). Por favor sirve WebUI desde el interface trasero (servidor backend).", + "Open file": "Abrir archivo", + "Open in full screen": "Abrir en pantalla completa", + "Open new chat": "Abrir nuevo chat", + "Open WebUI can use tools provided by any OpenAPI server.": "Open-WebUI puede usar herramientas proporcionadas por cualquier servidor OpenAPI", + "Open WebUI uses faster-whisper internally.": "Open-WebUI usa faster-whisper internamente.", + "Open WebUI uses SpeechT5 and CMU Arctic speaker embeddings.": "Open-WebUI usa SpeechT5 y la incrustración de locutores de CMU Arctic.", + "Open WebUI version (v{{OPEN_WEBUI_VERSION}}) is lower than required version (v{{REQUIRED_VERSION}})": "La versión de Open-WebUI (v{{OPEN_WEBUI_VERSION}}) es inferior a la versión (v{{REQUIRED_VERSION}}) requerida", + "OpenAI": "OpenAI", + "OpenAI API": "API OpenAI", + "OpenAI API Config": "Config API OpenAI", + "OpenAI API Key is required.": "Clave API de OpenAI requerida.", + "OpenAI API settings updated": "Ajustes de API OpenAI actualizados", + "OpenAI URL/Key required.": "URL/Clave de OpenAI requerida.", + "openapi.json Path": "Ruta a openapi.json", + "or": "o", + "Organize your users": "Organiza tus usuarios", + "Other": "Otro", + "OUTPUT": "SALIDA", + "Output format": "Formato de salida", + "Overview": "Vista General", + "page": "página", + "Password": "Contraseña", + "Paste Large Text as File": "Pegar el Texto Largo como Archivo", + "PDF document (.pdf)": "Documento PDF (.pdf)", + "PDF Extract Images (OCR)": "Extraer imágenes del PDF (OCR)", + "pending": "pendiente", + "Permission denied when accessing media devices": "Permiso denegado accediendo a los dispositivos", + "Permission denied when accessing microphone": "Permiso denegado accediendo al micrófono", + "Permission denied when accessing microphone: {{error}}": "Permiso denegado accediendo al micrófono: {{error}}", + "Permissions": "Permisos", + "Perplexity API Key": "Clave API de Perplexity", + "Personalization": "Personalización", + "Pin": "Fijar", + "Pinned": "Fijado", + "Pioneer insights": "Descubrir nuevas perspectivas", + "Pipeline deleted successfully": "Tubería borrada correctamente", + "Pipeline downloaded successfully": "Tubería descargada correctamente", + "Pipelines": "Tuberías", + "Pipelines Not Detected": "Servicio de Tuberías (Pipelines) No Detectado", + "Pipelines Valves": "Válvulas de Tuberías", + "Plain text (.md)": "", + "Plain text (.txt)": "Texto plano (.txt)", + "Playground": "Zona de Pruebas", + "Playwright Timeout (ms)": "Tiempo Límite de Espera (ms) de Playwright", + "Playwright WebSocket URL": "URL de WebSocket de Playwright", + "Please carefully review the following warnings:": "Por favor revisar cuidadosamente los siguientes avisos:", + "Please do not close the settings page while loading the model.": "Por favor no cerrar la página de ajustes mientras se está descargando el modelo.", + "Please enter a prompt": "Por favor ingresar un prompt", + "Please enter a valid path": "Por favor, ingresa una ruta válida", + "Please enter a valid URL": "Por favor, ingresa una URL válida", + "Please fill in all fields.": "Por favor rellenar todos los campos.", + "Please select a model first.": "Por favor primero seleccionar un modelo.", + "Please select a model.": "Por favor seleccionar un modelo.", + "Please select a reason": "Por favor seleccionar un motivo", + "Port": "Puerto", + "Positive attitude": "Actitud Positiva", + "Prefix ID": "prefijo ID", + "Prefix ID is used to avoid conflicts with other connections by adding a prefix to the model IDs - leave empty to disable": "El prefijo ID se utiliza para evitar conflictos con otras conexiones al añadir un prefijo a los IDs de modelo, dejar vacío para deshabilitarlo", + "Presence Penalty": "Penalización de Presencia", + "Previous 30 days": "30 días previos", + "Previous 7 days": "7 días previos", + "Private": "Privado", + "Profile Image": "Imagen del Perfil", + "Prompt": "Prompt", + "Prompt (e.g. Tell me a fun fact about the Roman Empire)": "Prompt (p.ej. Cuéntame una cosa divertida sobre el Imperio Romano)", + "Prompt Autocompletion": "Autocompletado del Prompt", + "Prompt Content": "Contenido del Prompt", + "Prompt created successfully": "Prompt creado exitosamente", + "Prompt suggestions": "Prompts Sugeridos", + "Prompt updated successfully": "Prompt actualizado correctamente", + "Prompts": "Prompts", + "Prompts Access": "Acceso a Prompts", + "Prompts Public Sharing": "", + "Public": "Público", + "Pull \"{{searchValue}}\" from Ollama.com": "Extraer \"{{searchValue}}\" desde Ollama.com", + "Pull a model from Ollama.com": "Extraer un modelo desde Ollama.com", + "Query Generation Prompt": "Prompt para la Consulta de Generación", + "RAG Template": "Plantilla del RAG", + "Rating": "Calificación", + "Re-rank models by topic similarity": "Reclasificar modelos por similitud temática", + "Read": "Leer", + "Read Aloud": "Leer en voz alta", + "Reasoning Effort": "Esfuerzo del Razonamiento", + "Record": "", + "Record voice": "Grabar voz", + "Redirecting you to Open WebUI Community": "Redireccionando a la Comunidad 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.": "Reduce la probabilidad de generación sin sentido. Un valor más alto (p.ej. 100) dará respuestas más diversas, mientras que un valor más bajo (p.ej. 10) será más conservador.", + "Refer to yourself as \"User\" (e.g., \"User is learning Spanish\")": "Referir a ti mismo como \"Usuario\" (p.ej. \"Usuario está aprendiendo Español\")", + "References from": "Referencias desde", + "Refused when it shouldn't have": "Rechazado cuando no debería haberlo hecho", + "Regenerate": "Regenerar", + "Reindex": "Reindexar", + "Reindex Knowledge Base Vectors": "Reindexar Base Vectorial de Conocimiento", + "Release Notes": "Notas de la Versión", + "Relevance": "Relevancia", + "Relevance Threshold": "Umbral de Relevancia", + "Remove": "Eliminar", + "Remove Model": "Eliminar Modelo", + "Rename": "Renombrar", + "Reorder Models": "Reordenar Modelos", + "Repeat Last N": "Repetición - Últimos N", + "Repeat Penalty (Ollama)": "Penalización Repetición (Ollama)", + "Reply in Thread": "Responder en Hilo", + "Request Mode": "Modo de Petición", + "Reranking Engine": "", + "Reranking Model": "Modelo de Reclasificación", + "Reset": "Reiniciar", + "Reset All Models": "Reiniciar Todos los Modelos", + "Reset Upload Directory": "Reiniciar Directorio de Subidas", + "Reset Vector Storage/Knowledge": "Reiniciar Almacenamiento de Vectores/Conocimiento", + "Reset view": "Reiniciar Vista", + "Response notifications cannot be activated as the website permissions have been denied. Please visit your browser settings to grant the necessary access.": "Las notificaciones de respuesta no pueden activarse ya que los permisos del sitio web han sido denegados. Por favor, comprueba la configuración de tu navegador para otorgar el permiso necesario.", + "Response splitting": "Particionado de Respuesta", + "Result": "Resultado", + "Retrieval": "Recuperación", + "Retrieval Query Generation": "Consulta de Generación de Recuperación", + "Rich Text Input for Chat": "Entrada de Texto Enriquecido para el Chat", + "RK": "RK", + "Role": "Rol", + "Rosé Pine": "Pino Rosa", + "Rosé Pine Dawn": "Pino Rosa Amanecer", + "RTL": "RTL", + "Run": "Ejecutar", + "Running": "Ejecutando", + "Save": "Guardar", + "Save & Create": "Guardar y Crear", + "Save & Update": "Guardar y Actualizar", + "Save As Copy": "Guardar como Copia", + "Save Tag": "Guardar Etiqueta", + "Saved": "Guardado", + "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": "Ya no está soportado guardar registros de chat directamente en el almacenamiento del navegador. Por favor, dedica un momento a descargar y eliminar tus registros de chat pulsando en el botón de abajo. No te preocupes, puedes re-importar fácilmente tus registros desde las opciones de configuración", + "Scroll On Branch Change": "", + "Search": "Buscar", + "Search a model": "Buscar un Modelo", + "Search Base": "Busqueda Base", + "Search Chats": "Buscar Chats", + "Search Collection": "Buscar Colección", + "Search Filters": "Buscar Filtros", + "search for tags": "Buscar por etiquetas", + "Search Functions": "Buscar Funciones", + "Search Knowledge": "Buscar Conocimiento", + "Search Models": "Buscar Modelos", + "Search options": "Opciones de Búsqueda", + "Search Prompts": "Buscar Prompts", + "Search Result Count": "Número de resultados de la búsqueda", + "Search the internet": "Buscar en internet", + "Search Tools": "Buscar Herramientas", + "SearchApi API Key": "Clave API de SearchApi", + "SearchApi Engine": "Motor SearchApi", + "Searched {{count}} sites": "{{count}} sitios buscados", + "Searching \"{{searchQuery}}\"": "Buscando \"{{searchQuery}}\"", + "Searching Knowledge for \"{{searchQuery}}\"": "Buscando \"{{searchQuery}}\" en Conocimiento", + "Searching the web...": "", + "Searxng Query URL": "Searxng URL de Consulta", + "See readme.md for instructions": "Ver readme.md para instrucciones", + "See what's new": "Ver las novedades", + "Seed": "Semilla", + "Select a base model": "Seleccionar un modelo base", + "Select a engine": "Seleccionar un motor", + "Select a function": "Seleccionar una función", + "Select a group": "Seleccionar un grupo", + "Select a model": "Selecciona un modelo", + "Select a pipeline": "Seleccionar una tubería", + "Select a pipeline url": "Seleccionar una url de tubería", + "Select a tool": "Seleccioanr una herramienta", + "Select an auth method": "Seleccionar un método de autentificación", + "Select an Ollama instance": "Seleccionar una instancia de Ollama", + "Select Engine": "Seleccionar Motor", + "Select Knowledge": "Seleccionar Conocimiento", + "Select only one model to call": "Seleccionar sólo un modelo a llamar", + "Selected model(s) do not support image inputs": "Modelo(s) seleccionado(s) no admiten entradas de imagen", + "Semantic distance to query": "Distancia semántica a la consulta", + "Send": "Enviar", + "Send a Message": "Enviar un Mensaje", + "Send message": "Enviar Mensaje", + "Sends `stream_options: { include_usage: true }` in the request.\nSupported providers will return token usage information in the response when set.": "Envia en la solicitud de transmisión la opción: `{ include_usage: true }`.\nSi se activa, los proveedores que soporten esta función devolverán en la respuesta información de uso de los token.", + "September": "Septiembre", + "SerpApi API Key": "Clave API de SerpApi", + "SerpApi Engine": "Motor de SerpApi", + "Serper API Key": "Clave API de Serper", + "Serply API Key": "Clave API de Serply", + "Serpstack API Key": "Clave API de Serpstack", + "Server connection verified": "Conexión al servidor verificada", + "Set as default": "Establecer como Predeterminado", + "Set CFG Scale": "Establecer la Escala CFG", + "Set Default Model": "Establecer Modelo Predeterminado", + "Set embedding model": "Establecer Modelo de Incrustación", + "Set embedding model (e.g. {{model}})": "Establecer Modelo para Incrustación (p.ej. {{model}})", + "Set Image Size": "Establecer Tamaño de Imagen", + "Set reranking model (e.g. {{model}})": "Establecer Modelo para Reclasificación (p.ej. {{model}})", + "Set Sampler": "Establecer Muestreador", + "Set Scheduler": "Establecer Programador", + "Set Steps": "Establecer Pasos", + "Set Task Model": "Establecer Modelo para Tareas", + "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.": "Establece el número de capas, que deben cargarse en la GPU. Aumentar este valor puede mejorar significativamente el rendimiento de los modelos optimizados para aceleración en GPU, pero también puede consumir más energía y recursos de la 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.": "Establece el número de hilos de trabajo utilizados para el computo. Esta opción controla cuántos hilos son usados para procesar solicitudes entrantes concurrentes. Aumentar este valor puede mejorar el rendimiento bajo cargas de trabajo de alta concurrencia, pero también puede consumir más recursos de la CPU.", + "Set Voice": "Establecer la voz", + "Set whisper model": "Establecer modelo whisper (transcripción)", + "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.": "Establece un sesgo plano contra los tokens que han aparecido al menos una vez. Un valor más alto (p.ej. 1.5) penalizará las repeticiones más fuertemente, mientras que un valor más bajo (p.ej. 0.9) será más indulgente. En 0, está deshabilitado.", + "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.": "Establece un sesgo escalado contra los tokens para penalizar las repeticiones, basado en cuántas veces han aparecido. Un valor más alto (por ejemplo, 1.5) penalizará las repeticiones más fuertemente, mientras que un valor más bajo (por ejemplo, 0.9) será más indulgente. En 0, está deshabilitado.", + "Sets how far back for the model to look back to prevent repetition.": "Establece cuántos tokens debe mirar atrás el modelo para prevenir la repetición. ", + "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.": "Establece la semilla de números aleatorios a usar para la generación. Establecer esto en un número específico hará que el modelo genere el mismo texto para el mismo prompt(prompt).", + "Sets the size of the context window used to generate the next token.": "Establece el tamaño de la ventana del contexto utilizada para generar el siguiente 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.": "Establece las secuencias de parada a usar. Cuando se encuentre este patrón, el LLM dejará de generar texto y retornará. Se pueden establecer varios patrones de parada especificando separadamente múltiples parámetros de parada en un archivo de modelo.", + "Settings": "Ajustes", + "Settings saved successfully!": "¡Ajustes guardados correctamente!", + "Share": "Compartir", + "Share Chat": "Compartir Chat", + "Share to Open WebUI Community": "Compartir con la Comunidad Open-WebUI", + "Sharing Permissions": "", + "Show": "Mostrar", + "Show \"What's New\" modal on login": "Mostrar modal \"Qué hay de Nuevo\" al iniciar sesión", + "Show Admin Details in Account Pending Overlay": "Mostrar Detalles Admin en la sobrecapa de 'Cuenta Pendiente'", + "Show All": "", + "Show Less": "", + "Show Model": "Mostrar Modelo", + "Show shortcuts": "Mostrar Atajos", + "Show your support!": "¡Muestra tu apoyo!", + "Showcased creativity": "Creatividad exhibida", + "Sign in": "Iniciar Sesión", + "Sign in to {{WEBUI_NAME}}": "Iniciar Sesión en {{WEBUI_NAME}}", + "Sign in to {{WEBUI_NAME}} with LDAP": "Iniciar Sesión en {{WEBUI_NAME}} con LDAP", + "Sign Out": "Cerrar Sesión", + "Sign up": "Crear una Cuenta", + "Sign up to {{WEBUI_NAME}}": "Crear una Cuenta en {{WEBUI_NAME}}", + "Signing in to {{WEBUI_NAME}}": "Iniciando Sesión en {{WEBUI_NAME}}", + "sk-1234": "sk-1234", + "Sougou Search API sID": "", + "Sougou Search API SK": "", + "Source": "Fuente", + "Speech Playback Speed": "Velocidad de Reproducción de Voz", + "Speech recognition error: {{error}}": "Error en reconocimiento de voz: {{error}}", + "Speech-to-Text Engine": "Motor Voz a Texto(STT)", + "Stop": "Detener", + "Stop Sequence": "Secuencia de Parada", + "Stream Chat Response": "Transmisión Directa de la Respuesta del Chat", + "STT Model": "Modelo STT", + "STT Settings": "Ajustes Voz a Texto (STT)", + "Stylized PDF Export": "", + "Subtitle (e.g. about the Roman Empire)": "Subtítulo (p.ej. sobre el Imperio Romano)", + "Success": "Correcto", + "Successfully updated.": "Actualizado correctamente.", + "Suggested": "Sugerido", + "Support": "Soportar", + "Support this plugin:": "Apoya este plugin:", + "Sync directory": "Sincroniza Directorio", + "System": "Sistema", + "System Instructions": "Instrucciones del sistema", + "System Prompt": "Prompt del sistema", + "Tags": "Etiquetas", + "Tags Generation": "Generación de Etiquetas", + "Tags Generation Prompt": "Prompt para la Generación de Etiquetas", + "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 Muestreo de cola libre(TFS_Z) es usado para reducir el impacto de los tokens menos probables en la salida. Un valor más alto (p.ej. 2.0) reduce más fuertemente el impacto, mientras que un valor de 1.0 deshabilita este ajuste.", + "Talk to model": "Hablar con el modelo", + "Tap to interrupt": "Toca para interrumpir", + "Tasks": "Tareas", + "Tavily API Key": "Clave API de Tavily", + "Tavily Extract Depth": "Parámetro Extract Depth de Taviliy", + "Tell us more:": "Dinos algo más:", + "Temperature": "Temperatura", + "Template": "Plantilla", + "Temporary Chat": "Chat Temporal", + "Text Splitter": "Divisor de Texto", + "Text-to-Speech Engine": "Motor Texto a Voz(TTS)", + "Tfs Z": "TFS Z", + "Thanks for your feedback!": "¡Gracias por tu comentario!", + "The Application Account DN you bind with for search": "Cuenta DN de la aplicación vinculada para búsqueda", + "The base to search for users": "Base para buscar usuarios", + "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.": "El tamaño de lote determina cuántas solicitudes de texto se procesan juntas de una vez. Un tamaño de lote más alto puede aumentar el rendimiento y la velocidad del modelo, pero también requiere más memoria.", + "The developers behind this plugin are passionate volunteers from the community. If you find this plugin helpful, please consider contributing to its development.": "Quienes desarollaron este complemento son apasionados voluntarios/as de la comunidad. Si este complemento te es útil, por favor considera contribuir a su desarrollo.", + "The evaluation leaderboard is based on the Elo rating system and is updated in real-time.": "La tabla clasificatoria de evaluación se basa en el sistema de clasificación Elo y se actualiza en tiempo real.", + "The LDAP attribute that maps to the mail that users use to sign in.": "El atributo LDAP que mapea el correo que los usuarios utilizan para iniciar sesión.", + "The LDAP attribute that maps to the username that users use to sign in.": "El atributo LDAP que mapea el nombre de usuario que los usuarios utilizan para iniciar sesión.", + "The leaderboard is currently in beta, and we may adjust the rating calculations as we refine the algorithm.": "La tabla clasificatoria está actualmente en beta, por lo que los cálculos de clasificación pueden reajustarse a medida que se refina el algoritmo.", + "The maximum file size in MB. If the file size exceeds this limit, the file will not be uploaded.": "El tamaño máximo del archivo en MB. Si el tamaño del archivo supera este límite, el archivo no se subirá.", + "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 número máximo de archivos que se pueden utilizar a la vez en el chat. Si se supera este límite, los archivos no se subirán.", + "The score should be a value between 0.0 (0%) and 1.0 (100%).": "La puntuación debe ser un valor entre 0.0 (0%) y 1.0 (100%).", + "The temperature of the model. Increasing the temperature will make the model answer more creatively.": "La temperatura del modelo. Aumentar la temperatura hará que el modelo responda de forma más creativa.", + "Theme": "Tema", + "Thinking...": "Pensando...", + "This action cannot be undone. Do you wish to continue?": "Esta acción no se puede deshacer. ¿Desea continuar?", + "This channel was created on {{createdAt}}. This is the very beginning of the {{channelName}} channel.": "Este canal fue creado el {{createdAt}}. Este es el comienzo del canal {{channelName}}.", + "This chat won’t appear in history and your messages will not be saved.": "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.": "", + "This option controls how many tokens are preserved when refreshing the context. For example, if set to 2, the last 2 tokens of the conversation context will be retained. Preserving context can help maintain the continuity of a conversation, but it may reduce the ability to respond to new topics.": "Esta opción controla cuántos tokens se conservan cuando se actualiza el contexto. Por ejemplo, si se establece en 2, se conservarán los primeros 2 tokens del contexto de la conversación. Conservar el contexto puede ayudar a mantener la continuidad de una conversación, pero puede reducir la habilidad para responder a nuevos temas.", + "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.": "Esta opción establece el número máximo de tokens que el modelo puede generar en sus respuestas. Aumentar este límite permite al modelo proporcionar respuestas más largas, pero también puede aumentar la probabilidad de que se genere contenido inútil o irrelevante.", + "This option will delete all existing files in the collection and replace them with newly uploaded files.": "Esta opción eliminará todos los archivos existentes en la colección y los reemplazará con los nuevos archivos subidos.", + "This response was generated by \"{{model}}\"": "Esta respuesta fue generada por \"{{model}}\"", + "This will delete": "Esto eliminará", + "This will delete {{NAME}} and all its contents.": "Esto eliminará {{NAME}} y todo su contenido.", + "This will delete all models including custom models": "Esto eliminará todos los modelos, incluidos los modelos personalizados", + "This will delete all models including custom models and cannot be undone.": "Esto eliminará todos los modelos, incluidos los modelos personalizados y no se puede deshacer.", + "This will reset the knowledge base and sync all files. Do you wish to continue?": "Esto reinicializará la base de conocimientos y sincronizará todos los archivos. ¿Desea continuar?", + "Thorough explanation": "Explicación exhaustiva", + "Thought for {{DURATION}}": "Pensando durante {{DURATION}}", + "Thought for {{DURATION}} seconds": "Persando durante {{DURATION}} segundos", + "Tika": "Tika", + "Tika Server URL required.": "URL del Servidor Tika necesaria", + "Tiktoken": "Tiktoken", + "Tip: Update multiple variable slots consecutively by pressing the tab key in the chat input after each replacement.": "Consejo: Actualiza múltiples variables encastradas en el chat consecutivamente pulsando la tecla tab en el chat después de cada reemplazo.", + "Title": "Título", + "Title (e.g. Tell me a fun fact)": "Título (p.ej. cuéntame un hecho divertidado)", + "Title Auto-Generation": "AutoGeneración de Títulos", + "Title cannot be an empty string.": "El título no puede ser una cadena vacía.", + "Title Generation": "Generación de Títulos", + "Title Generation Prompt": "Prompt para la Generación de Título", + "TLS": "TLS", + "To access the available model names for downloading,": "Para acceder a los nombres de modelos disponibles para descargar,", + "To access the GGUF models available for downloading,": "Para acceder a los modelos GGUF disponibles para descargar,", + "To access the WebUI, please reach out to the administrator. Admins can manage user statuses from the Admin Panel.": "Para acceder a WebUI, por favor contacte con Admins. Los administradores pueden gestionar los estados de los usuarios esde el panel de administración.", + "To attach knowledge base here, add them to the \"Knowledge\" workspace first.": "Para adjuntar la base de conocimientos aquí, primero añadirla a \"Conocimiento\" en el área de trabajo.", + "To learn more about available endpoints, visit our documentation.": "Para aprender más sobre los endpoints disponibles, visite nuestra documentación.", + "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.": "Para proteger tu privacidad, de tu realimentación solo se comparten las calificaciones, IDs de modelo, etiquetas y metadatos; tus chat registrados permanecen privados y no se incluyen.", + "To select actions here, add them to the \"Functions\" workspace first.": "Para seleccionar acciones aquí, primero añadirlas a \"Funciones\" en el área de trabajo.", + "To select filters here, add them to the \"Functions\" workspace first.": "Para seleccionar filtros aquí, primero añadirlos a \"Funciones\" en el área de trabajo.", + "To select toolkits here, add them to the \"Tools\" workspace first.": "Para seleccionar herramientas aquí, primero añadelas a \"Herramientas\" en el área de trabajo.", + "Toast notifications for new updates": "Notificaciones emergentes para nuevas actualizaciones", + "Today": "Hoy", + "Toggle settings": "Alternar Ajustes", + "Toggle sidebar": "Alternar Barra Lateral", + "Token": "Token", + "Tokens To Keep On Context Refresh (num_keep)": "Tokens a Mantener al Actualizar el Contexto (num_keep)", + "Too verbose": "Demasiado detallado", + "Tool created successfully": "Herramienta creada correctamente", + "Tool deleted successfully": "Herramienta eliminada correctamente", + "Tool Description": "Descripción de la Herramienta", + "Tool ID": "ID de la Herramienta", + "Tool imported successfully": "Herramienta importada correctamente", + "Tool Name": "Nombre de la Herramienta", + "Tool Servers": "Servidores de Herraientas", + "Tool updated successfully": "Herramienta actualizada correctamente", + "Tools": "Herramientas", + "Tools Access": "Acceso a Herramientas", + "Tools are a function calling system with arbitrary code execution": "Las herramientas son un sistema de llamada de funciones con ejecución de código arbitrario", + "Tools Function Calling Prompt": "Prompt para la Función de Llamada a las Herramientas", + "Tools have a function calling system that allows arbitrary code execution.": "Las herramientas tienen un sistema de llamada de funciones que permite la ejecución de código arbitrario.", + "Tools Public Sharing": "", + "Top K": "Top K", + "Top K Reranker": "Top K Reclasificador", + "Top P": "Top P", + "Transformers": "Transformadores", + "Trouble accessing Ollama?": "¿Problemas para acceder a Ollama?", + "Trust Proxy Environment": "Entorno Proxy Confiable", + "TTS Model": "Modelo TTS", + "TTS Settings": "Ajustes Texto a Voz (TTS)", + "TTS Voice": "Voz TTS", + "Type": "Tipo", + "Type Hugging Face Resolve (Download) URL": "Escribir la URL de Hugging Face Resolve (Descarga)", + "Uh-oh! There was an issue with the response.": "¡Vaya! Hubo un problema con la respuesta.", + "UI": "IU", + "Unarchive All": "Desarchivar Todo", + "Unarchive All Archived Chats": "Desarchivar Todos los Chats Archivados", + "Unarchive Chat": "Desarchivar Chat", + "Unlock mysteries": "Desbloquear misterios", + "Unpin": "Desfijar", + "Unravel secrets": "Desentrañar secretos", + "Untagged": "Desetiquetado", + "Untitled": "", + "Update": "Actualizar", + "Update and Copy Link": "Actualizar y Copiar Enlace", + "Update for the latest features and improvements.": "Actualizar para las últimas características y mejoras.", + "Update password": "Actualizar contraseña", + "Updated": "Actualizado", + "Updated at": "Actualizado el", + "Updated At": "Actualizado El", + "Upgrade to a licensed plan for enhanced capabilities, including custom theming and branding, and dedicated support.": "Mejore a un plan con licencia para tener capacidades mejoradas, incluyendo personalización de marca e interface, y soporte dedicado.", + "Upload": "Subir", + "Upload a GGUF model": "Subir un modelo GGUF", + "Upload Audio": "", + "Upload directory": "Directorio de Subidas", + "Upload files": "Subir archivos", + "Upload Files": "Subir Archivos", + "Upload Pipeline": "Subir Tubería", + "Upload Progress": "Progreso de la Subida", + "URL": "URL", + "URL Mode": "Modo URL", + "Use '#' in the prompt input to load and include your knowledge.": "Utilizar '#' en el prompt para cargar e incluir tu conocimiento.", + "Use Gravatar": "Usar Gravatar", + "Use groups to group your users and assign permissions.": "Usar grupos para agrupar a usuarios y asignar permisos.", + "Use Initials": "Usar Iniciales", + "Use no proxy to fetch page contents.": "No usar proxy para extraer contenidos", + "Use proxy designated by http_proxy and https_proxy environment variables to fetch page contents.": "Usar el proxy asignado en las variables del entorno http_proxy y/o https_proxy para extraer contenido", + "use_mlock (Ollama)": "use_mlock (Ollama)", + "use_mmap (Ollama)": "use_mmap (Ollama)", + "user": "usuario", + "User": "Usuario", + "User location successfully retrieved.": "Ubicación de usuario obtenida correctamente.", + "User Webhooks": "Usuario Webhooks", + "Username": "Nombre de Usuario", + "Users": "Usuarios", + "Using the default arena model with all models. Click the plus button to add custom models.": "Usando el modelo de arena predeterminado con todos los modelos. Pulsar en el botón + para agregar modelos personalizados.", + "Utilize": "Utilizar", + "Valid time units:": "Unidades de tiempo válidas:", + "Valves": "Válvulas", + "Valves updated": "Válvulas actualizadas", + "Valves updated successfully": "Válvulas actualizados correctamente", + "variable": "variable", + "variable to have them replaced with clipboard content.": "hace que la variable sea reemplazada con el contenido del portapapeles.", + "Verify Connection": "Verificar Conexión", + "Verify SSL Certificate": "", + "Version": "Versión", + "Version {{selectedVersion}} of {{totalVersions}}": "Versión {{selectedVersion}} de {{totalVersions}}", + "View Replies": "Ver Respuestas", + "View Result from **{{NAME}}**": "", + "Visibility": "Visibilidad", + "Voice": "Voz", + "Voice Input": "Entrada de Voz", + "Warning": "Aviso", + "Warning:": "Aviso:", + "Warning: Enabling this will allow users to upload arbitrary code on the server.": "Aviso: Habilitar esto permitirá a los usuarios subir código arbitrario al servidor.", + "Warning: If you update or change your embedding model, you will need to re-import all documents.": "Aviso: Si actualizas o cambias el modelo de incrustacción, necesitarás re-importar todos los documentos.", + "Warning: Jupyter execution enables arbitrary code execution, posing severe security risks—proceed with extreme caution.": "Aviso: La ejecución Jupyter habilita la ejecución de código arbitrario, planteando graves riesgos de seguridad; Proceder con extrema precaución.", + "Web": "Web", + "Web API": "API Web", + "Web Loader Engine": "", + "Web Search": "Búsqueda Web", + "Web Search Engine": "Motor Búsqueda Web", + "Web Search in Chat": "Búsqueda Web en Chat", + "Web Search Query Generation": "Generación de Consulta Búsqueda Web", + "Webhook URL": "URL EnganchesWeb(Webhook)", + "WebUI Settings": "WebUI Ajustes", + "WebUI URL": "WebUI URL", + "WebUI will make requests to \"{{url}}\"": "", + "WebUI will make requests to \"{{url}}/api/chat\"": "WebUI hará solicitudes a \"{{url}}/api/chat\"", + "WebUI will make requests to \"{{url}}/chat/completions\"": "WebUI hará solicitudes a \"{{url}}/chat/completions\"", + "What are you trying to achieve?": "¿Qué estás tratando de conseguir?", + "What are you working on?": "¿En qué estás trabajando?", + "What’s New in": "Que hay de Nuevo en", + "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.": "Cuando está habilitado, el modelo responderá a cada mensaje de chat en tiempo real, generando una respuesta tan pronto como se envíe un mensaje. Este modo es útil para aplicaciones de chat en vivo, pero puede afectar al rendimiento en equipos más lentos.", + "wherever you are": "dondequiera que estés", + "Whisper (Local)": "Whisper (Local)", + "Why?": "¿Por qué?", + "Widescreen Mode": "Modo Pantalla Ancha", + "Won": "Ganó", + "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.": "Trabaja conjuntamente con top-k. Un valor más alto (p.ej. 0.95) dará lugar a un texto más diverso, mientras que un valor más bajo (p.ej. 0.5) generará un texto más centrado y conservador.", + "Workspace": "Espacio de Trabajo", + "Workspace Permissions": "Permisos del Espacio de Trabajo", + "Write": "Escribir", + "Write a prompt suggestion (e.g. Who are you?)": "Escribe una sugerencia de prompt (p.ej. ¿quién eres?)", + "Write a summary in 50 words that summarizes [topic or keyword].": "Escribe un resumen en 50 palabras que resuma [tema o palabra clave].", + "Write something...": "Escribe algo...", + "Write your model template content here": "Escribe el contenido de la plantilla de tu modelo aquí", + "Yacy Instance URL": "", + "Yacy Password": "", + "Yacy Username": "", + "Yesterday": "Ayer", + "You": "Tu", + "You are currently using a trial license. Please contact support to upgrade your license.": "Actualmente estás utilizando una licencia de prueba. Por favor, para actualizar su licencia contacta con soporte.", + "You can only chat with a maximum of {{maxCount}} file(s) at a time.": "Solo puedes chatear con un máximo de {{maxCount}} archivo(s) a la vez.", + "You can personalize your interactions with LLMs by adding memories through the 'Manage' button below, making them more helpful and tailored to you.": "Puedes personalizar tus interacciones con los LLMs añadiendo memorias a través del botón 'Gestionar' debajo, haciendo que te sean más útiles y personalizados.", + "You cannot upload an empty file.": "No puedes subir un archivo vacío.", + "You do not have permission to upload files.": "No tienes permiso para subir archivos.", + "You have no archived conversations.": "No tienes conversaciones archivadas.", + "You have shared this chat": "Has compartido esta conversación", + "You're a helpful assistant.": "Eres un asistente atento, amable y servicial.", + "You're now logged in.": "Has iniciado sesión.", + "Your account status is currently pending activation.": "Tu cuenta está pendiente de activación.", + "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.": "Tu entera contribución irá directamente al desarrollador del complemento; Open-WebUI no recibe ningún porcentaje. Sin embargo, la plataforma de financiación elegida podría tener sus propias tarifas.", + "Youtube": "Youtube", + "Youtube Language": "Youtube Idioma", + "Youtube Proxy URL": "Youtube URL Proxy" } From e9b799676b0ba7f067b32f4608f16ce1fe80cbfb Mon Sep 17 00:00:00 2001 From: Timothy Jaeryang Baek Date: Mon, 12 May 2025 17:34:33 +0400 Subject: [PATCH 005/100] chore: format --- src/lib/i18n/locales/es-ES/translation.json | 2638 +++++++++---------- 1 file changed, 1319 insertions(+), 1319 deletions(-) diff --git a/src/lib/i18n/locales/es-ES/translation.json b/src/lib/i18n/locales/es-ES/translation.json index 5d1513e79..713cf1fdd 100644 --- a/src/lib/i18n/locales/es-ES/translation.json +++ b/src/lib/i18n/locales/es-ES/translation.json @@ -1,1321 +1,1321 @@ { - "-1 for no limit, or a positive integer for a specific limit": "-1 para ilimitado, o un número entero positivo para un límite específico.", - "'s', 'm', 'h', 'd', 'w' or '-1' for no expiration.": "'s', 'm', 'h', 'd', 'w' o '-1' para evitar expiración.", - "(e.g. `sh webui.sh --api --api-auth username_password`)": "(p.ej. `sh webui.sh --api --api-auth username_password`)", - "(e.g. `sh webui.sh --api`)": "(p.ej. `sh webui.sh --api`)", - "(latest)": "(último)", - "(leave blank for to use commercial endpoint)": "", - "(Ollama)": "(Ollama)", - "{{ models }}": "{{ models }}", - "{{COUNT}} Available Tools": "", - "{{COUNT}} hidden lines": "{{COUNT}} líneas ocultas", - "{{COUNT}} Replies": "{{COUNT}} Respuestas", - "{{user}}'s Chats": "Chats de {{user}}", - "{{webUIName}} Backend Required": "{{webUIName}} Servidor Requerido", - "*Prompt node ID(s) are required for image generation": "Los ID de nodo son requeridos para la generación de imágenes", - "A new version (v{{LATEST_VERSION}}) is now available.": "Nueva versión (v{{LATEST_VERSION}}) disponible.", - "A task model is used when performing tasks such as generating titles for chats and web search queries": "El modelo de tareas realiza tareas como la generación de títulos para chats y consultas de búsqueda web", - "a user": "un usuario", - "About": "Acerca de", - "Accept autocomplete generation / Jump to prompt variable": "Aceptar generación de autocompletado / Saltar a prompt variable", - "Access": "Acceso", - "Access Control": "Control de Acceso", - "Accessible to all users": "Accesible para todos los usuarios", - "Account": "Cuenta", - "Account Activation Pending": "Activación de cuenta Pendiente", - "Accurate information": "Información precisa", - "Actions": "Acciones", - "Activate": "Activar", - "Activate this command by typing \"/{{COMMAND}}\" to chat input.": "Activar este comando escribiendo \"/{{COMMAND}}\" en el chat", - "Active Users": "Usuarios activos", - "Add": "Añadir", - "Add a model ID": "Añadir un ID de modelo", - "Add a short description about what this model does": "Añadir una breve descripción sobre lo que hace este modelo", - "Add a tag": "Añadir una etiqueta", - "Add Arena Model": "Añadir modelo a la Arena", - "Add Connection": "Añadir Conexión", - "Add Content": "Añadir Contenido", - "Add content here": "Añadir contenido aquí", - "Add custom prompt": "Añadir un prompt personalizado", - "Add Files": "Añadir Archivos", - "Add Group": "Añadir Grupo", - "Add Memory": "Añadir Memoria", - "Add Model": "Añadir Modelo", - "Add Reaction": "Añadir Reacción", - "Add Tag": "Añadir etiqueta", - "Add Tags": "Añadir etiquetas", - "Add text content": "Añade contenido de texto", - "Add User": "Añadir Usuario", - "Add User Group": "Añadir grupo de usuarios", - "Adjusting these settings will apply changes universally to all users.": "El ajuste de estas opciones se aplicará globalmente a todos los usuarios.", - "admin": "admin", - "Admin": "Admin", - "Admin Panel": "Administración", - "Admin Settings": "Ajustes de Admin", - "Admins have access to all tools at all times; users need tools assigned per model in the workspace.": "Los administradores tienen acceso a todas las herramientas en todo momento; los usuarios necesitan que los modelos tengan asignadas las herramientas en el area de trabajo.", - "Advanced Parameters": "Parámetros Avanzados", - "Advanced Params": "Parámetros Avanzados", - "All": "Todos", - "All Documents": "Todos los Documentos", - "All models deleted successfully": "Todos los modelos borrados correctamnete", - "Allow Call": "Permitir Llamada", - "Allow Chat Controls": "Permitir Controles del Chat", - "Allow Chat Delete": "Permitir Borrar Chat", - "Allow Chat Deletion": "Permitir Borrado de Chat", - "Allow Chat Edit": "Pemritir Editar Chat", - "Allow Chat Export": "", - "Allow Chat Share": "", - "Allow File Upload": "Permitir Subida de Archivos", - "Allow Multiple Models in Chat": "", - "Allow non-local voices": "Permitir voces no locales", - "Allow Speech to Text": "", - "Allow Temporary Chat": "Permitir Chat Temporal", - "Allow Text to Speech": "", - "Allow User Location": "Permitir Ubicación de Usuario", - "Allow Voice Interruption in Call": "Permitir Interrupción de Voz en Llamada", - "Allowed Endpoints": "Endpoints Permitidos", - "Already have an account?": "¿Ya tienes una cuenta?", - "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 a top_p, como objetivo garantizar un equilibrio entre calidad y variedad. El parámetro p representa la mínima probabilidad para que un token sea considerado, relativo a la probabilidad del token más probable. Por ejemplo, con p=0.05 y la probabilidad del token más probable de 0.9, los resultados (logits) con un valor inferior a 0.045 son descartados.", - "Always": "Siempre", - "Always Collapse Code Blocks": "Plegar Siempre los Bloques de Código", - "Always Expand Details": "Expandir Siempre Detalles", - "Always Play Notification Sound": "", - "Amazing": "Emocionante", - "an assistant": "un asistente", - "Analyzed": "Analizado", - "Analyzing...": "Analizando..", - "and": "y", - "and {{COUNT}} more": "y {{COUNT}} más", - "and create a new shared link.": "y crear un nuevo enlace compartido.", - "Android": "", - "API Base URL": "URL Base API", - "API Key": "Clave API ", - "API Key created.": "Clave API creada.", - "API Key Endpoint Restrictions": "Clave API para Endpoints Restringidos", - "API keys": "Claves API", - "Application DN": "Aplicacion DN", - "Application DN Password": "Contraseña Aplicacion DN", - "applies to all users with the \"user\" role": "se aplica a todos los usuarios con el rol \"user\" ", - "April": "Abril", - "Archive": "Archivar", - "Archive All Chats": "Archivar Todos los Chats", - "Archived Chats": "Chats archivados", - "archived-chat-export": "exportar chats archivados", - "Are you sure you want to clear all memories? This action cannot be undone.": "¿Seguro que quieres borrar todas las memorias? (¡esta acción NO se puede deshacer!)", - "Are you sure you want to delete this channel?": "¿Seguro de que quieres eliminar este canal?", - "Are you sure you want to delete this message?": "¿Seguro de que quieres eliminar este mensaje? ", - "Are you sure you want to unarchive all archived chats?": "¿Seguro de que quieres desarchivar todos los chats archivados?", - "Are you sure you want to update this user's role to **{{ROLE}}**?": "", - "Are you sure?": "¿Estás seguro?", - "Arena Models": "Arena de Modelos", - "Artifacts": "Artefactos", - "Ask": "Preguntar", - "Ask a question": "Haz una pregunta", - "Assistant": "Asistente", - "Attach file from knowledge": "Adjuntar archivo desde conocimiento", - "Attention to detail": "Atención al detalle", - "Attribute for Mail": "Atributo para Correo", - "Attribute for Username": "Atributo para Nombre de Usuario", - "Audio": "Audio", - "August": "Agosto", - "Auth": "Autorización", - "Authenticate": "Autentificar", - "Authentication": "Autenticación", - "Auto": "Auto", - "Auto-Copy Response to Clipboard": "AutoCopiado de respuesta al Portapapeles", - "Auto-playback response": "Reproducir Respuesta automáticamente", - "Autocomplete Generation": "Generación de Autocompletado", - "Autocomplete Generation Input Max Length": "Max. Longitud de Entrada en Generación de Autocompletado", - "Automatic1111": "AUTOMATIC1111", - "AUTOMATIC1111 Api Auth String": "Auth API para AUTOMATIC1111", - "AUTOMATIC1111 Base URL": "URL Base de AUTOMATIC1111", - "AUTOMATIC1111 Base URL is required.": "la URL Base de AUTOMATIC1111 es necesaria.", - "Available list": "Lista disponible", - "Available Tools": "Herramientas Disponibles", - "available!": "¡disponible!", - "Awful": "Horrible", - "Azure AI Speech": "Voz Azure AI", - "Azure Region": "Región de Azure", - "Back": "Volver", - "Bad Response": "Mala Respuesta", - "Banners": "Banners", - "Base Model (From)": "Modelo Base (desde)", - "Batch Size (num_batch)": "Tamaño de Lote (num_batch)", - "before": "antes", - "Being lazy": "Ser perezoso", - "Beta": "Beta", - "Bing Search V7 Endpoint": "Endpoint de Bing Search V7", - "Bing Search V7 Subscription Key": "Clave de Suscripción de Bing Search V7", - "Bocha Search API Key": "Clave API de Bocha Search", - "Boosting or penalizing specific tokens for constrained responses. Bias values will be clamped between -100 and 100 (inclusive). (Default: none)": "Impulsando o penalizando tokens específicos para respuestas restringidas. Los valores de sesgo se limitarán entre -100 y 100 (inclusive). (Por defecto: ninguno)", - "Both Docling OCR Engine and Language(s) must be provided or both left empty.": "", - "Brave Search API Key": "Clave API de Brave Search", - "By {{name}}": "Por {{name}}", - "Bypass Embedding and Retrieval": "Evitar Incrustración y Recuperación", - "Calendar": "Calendario", - "Call": "Llamada", - "Call feature is not supported when using Web STT engine": "La funcionalidad de Llamada no está soportada cuando se usa el motor Web STT", - "Camera": "Cámara", - "Cancel": "Cancelar", - "Capabilities": "Capacidades", - "Capture": "Captura", - "Capture Audio": "", - "Certificate Path": "Ruta a Certificado", - "Change Password": "Cambiar Contraseña", - "Channel Name": "Nombre del Canal", - "Channels": "Canal", - "Character": "Carácter", - "Character limit for autocomplete generation input": "Límite de caracteres de entrada de la generación de autocompletado", - "Chart new frontiers": "Trazar nuevas fronteras", - "Chat": "Chat", - "Chat Background Image": "Imágen de Fondo del Chat", - "Chat Bubble UI": "Interface de Chat tipo Burbuja", - "Chat Controls": "Controles de chat", - "Chat direction": "Dirección de Chat", - "Chat Overview": "Vista General del Chat", - "Chat Permissions": "Permisos del Chat", - "Chat Tags Auto-Generation": "AutoGeneración de Etiquetas de Chat", - "Chats": "Chats", - "Check Again": "Verifica de nuevo", - "Check for updates": "Buscar actualizaciones", - "Checking for updates...": "Buscando actualizaciones...", - "Choose a model before saving...": "Escoge un modelo antes de guardar...", - "Chunk Overlap": "Superposición de Fragmentos", - "Chunk Size": "Tamaño de los Fragmentos", - "Ciphers": "Cifrado", - "Citation": "Cita", - "Clear memory": "Liberar memoria", - "Clear Memory": "Liberar Memoria", - "click here": "Pulsar aquí", - "Click here for filter guides.": "Pulsar aquí para guías de filtros", - "Click here for help.": "Pulsar aquí para Ayuda.", - "Click here to": "Pulsa aquí para", - "Click here to download user import template file.": "Pulsa aquí para descargar la plantilla para importar usuarios.", - "Click here to learn more about faster-whisper and see the available models.": "Pulsa aquí para saber más sobre faster-whisper y ver los modelos disponibles.", - "Click here to see available models.": "Pulsa aquí para ver modelos disponibles.", - "Click here to select": "Pulsa aquí para seleccionar", - "Click here to select a csv file.": "Pulsa aquí para seleccionar un fichero de Valores Separados por Comas (.csv)", - "Click here to select a py file.": "Pulsa aquí para seleccionar un fichero Python (.py)", - "Click here to upload a workflow.json file.": "Pulsa aquí para subir un fichero workflow.json", - "click here.": "Pulsa aquí.", - "Click on the user role button to change a user's role.": "Pulsa en el botón rol de usuario para cambiar su rol.", - "Clipboard write permission denied. Please check your browser settings to grant the necessary access.": "Permisos de escritura del portapapeles denegado. Por favor, comprueba la configuración de tu navegador para otorgar el permiso necesario.", - "Clone": "Clonar", - "Clone Chat": "Clonar Chat", - "Clone of {{TITLE}}": "Clon de {{TITLE}}", - "Close": "Cerrar", - "Code execution": "Ejecución de Código", - "Code Execution": "Ejecución de Código", - "Code Execution Engine": "Motor de Ejecución de Código", - "Code Execution Timeout": "Tiempo límite de espera para Ejecución de Código", - "Code formatted successfully": "El codigo se ha formateado correctamente.", - "Code Interpreter": "Interprete de Código", - "Code Interpreter Engine": "Motor del Interprete de Código", - "Code Interpreter Prompt Template": "Plantilla del Prompt del Interprete de Código", - "Collapse": "Plegar", - "Collection": "Colección", - "Color": "Color", - "ComfyUI": "ComfyUI", - "ComfyUI API Key": "Clave API de ComfyUI", - "ComfyUI Base URL": "URL Base de ComfyUI", - "ComfyUI Base URL is required.": "La URL Base de ComfyUI es necesaria.", - "ComfyUI Workflow": "Flujo de Trabajo de ComfyUI", - "ComfyUI Workflow Nodes": "Nodos del Flujo de Trabajo de ComfyUI", - "Command": "Comando", - "Completions": "Cumplimientos", - "Concurrent Requests": "Número de Solicitudes Concurrentes", - "Configure": "Configurar", - "Confirm": "Confirmar", - "Confirm Password": "Confirma Contraseña", - "Confirm your action": "Confirma tu acción", - "Confirm your new password": "Confirma tu nueva contraseña", - "Connect to your own OpenAI compatible API endpoints.": "Conectar a tus propios endpoints compatibles API OpenAI.", - "Connect to your own OpenAPI compatible external tool servers.": "Conectar a tus propios endpoints externos de herramientas compatibles API OpenAI.", - "Connection failed": "Conexión fallida", - "Connection successful": "Conexión realizada", - "Connections": "Conexiones", - "Connections saved successfully": "Conexiones grabadas correctamente", - "Constrains effort on reasoning for reasoning models. Only applicable to reasoning models from specific providers that support reasoning effort.": "Limita el esfuerzo de razonamiento para los modelos de razonamiento. Solo aplicable a modelos de razonamiento de proveedores específicos que soportan el esfuerzo de razonamiento.", - "Contact Admin for WebUI Access": "Contacta con Admin para obtener acceso a WebUI", - "Content": "Contenido", - "Content Extraction Engine": "Motor para la Extracción de Contenido", - "Context Length": "Longitud del Contexto", - "Continue Response": "Continuar Respuesta", - "Continue with {{provider}}": "Continuar con {{provider}}", - "Continue with Email": "Continuar con Email", - "Continue with LDAP": "Continuar con 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.": "Controlar como se divide el texto del mensaje para las solicitudes de locución (TTS). 'Punctuation' divide oraciones, 'paragraphs' divide párrafos y 'none' mantiene el mensaje como una sola cadena.", - "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.": "Controla la repetición de secuencias de tokens en el texto generado. Un valor más alto (p.ej., 1.5) penalizá más las repeticiones, mientras que un valor más bajo (p.ej., 1.1) sería más permisivo. En 1, el control está desactivado.", - "Controls": "Controles", - "Controls the balance between coherence and diversity of the output. A lower value will result in more focused and coherent text.": "Controles del equilibrio entre coherencia y diversidad de la salida. Un valor más bajo produce un texto más centrado y coherente.", - "Copied": "Copiado", - "Copied shared chat URL to clipboard!": "¡Copiada al portapapeles la URL del chat compartido!", - "Copied to clipboard": "Copiado al portapapeles", - "Copy": "Copiar", - "Copy Formatted Text": "", - "Copy last code block": "Copia el último bloque de código", - "Copy last response": "Copia la última respuesta", - "Copy Link": "Copiar enlace", - "Copy to clipboard": "Copia a portapapeles", - "Copying to clipboard was successful!": "¡La copia al portapapeles se ha realizado correctamente!", - "CORS must be properly configured by the provider to allow requests from Open WebUI.": "El protocolo CORS debe estar configurado correctamente por el proveedor para permitir solicitudes desde Open WebUI.", - "Create": "Crear", - "Create a knowledge base": "Crear Base de Conocimiento", - "Create a model": "Crear Modelo", - "Create Account": "Crear Cuenta", - "Create Admin Account": "Crear Cuenta Administrativa", - "Create Channel": "Crear Canal", - "Create Group": "Crear Grupo", - "Create Knowledge": "Crear Conocimiento", - "Create new key": "Crear Nueva Clave", - "Create new secret key": "Crear Nueva Clave Secreta", - "Create Note": "", - "Create your first note by clicking on the plus button below.": "", - "Created at": "Creado en", - "Created At": "Creado En", - "Created by": "Creado por", - "CSV Import": "Importar CSV", - "Ctrl+Enter to Send": "'Ctrl+Enter' para Enviar", - "Current Model": "Modelo Actual", - "Current Password": "Contraseña Actual", - "Custom": "Personalizado", - "Danger Zone": "Zona Peligrosa", - "Dark": "Oscuro", - "Database": "Base de datos", - "December": "Diciembre", - "Default": "Predeterminado", - "Default (Open AI)": "Predeterminado (Open AI)", - "Default (SentenceTransformers)": "Predeterminado (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.": "El modo Predeterminado funciona con una amplia gama de modelos llamando a las herramientas antes de la ejecución. El modo Nativo aprovecha la capacidad de llamada a herramientas integrada en el modelo, pero requiere que el modelo soporte esta función de manera inherente.", - "Default Model": "Modelo Predeterminado", - "Default model updated": "El modelo Predeterminado ha sido actualizado", - "Default Models": "Modelos Predeterminados", - "Default permissions": "Permisos Predeterminados", - "Default permissions updated successfully": "Permisos predeterminados actualizados correctamente", - "Default Prompt Suggestions": "Sugerencias Predeterminadas de Prompt", - "Default to 389 or 636 if TLS is enabled": "Predeterminado a 389, o 636 si TLS está habilitado", - "Default to ALL": "Predeterminado a TODOS", - "Default to segmented retrieval for focused and relevant content extraction, this is recommended for most cases.": "Por defecto está predeterminada una segmentación de la recuperación para una extracción de contenido centrado y relevante, recomendado para la mayoría de los casos.", - "Default User Role": "Rol predeterminado de los nuevos usuarios", - "Delete": "Borrar", - "Delete a model": "Borrar un modelo", - "Delete All Chats": "Borrar todos los chats", - "Delete All Models": "Borrar todos los modelos", - "Delete chat": "Borrar chat", - "Delete Chat": "Borrar Chat", - "Delete chat?": "¿Borrar el chat?", - "Delete folder?": "¿Borrar carpeta?", - "Delete function?": "Borrar la función?", - "Delete Message": "Borrar mensaje", - "Delete message?": "¿Borrar mensaje?", - "Delete note?": "", - "Delete prompt?": "¿Borrar el prompt?", - "delete this link": "Borrar este enlace", - "Delete tool?": "¿Borrar la herramienta?", - "Delete User": "Borrar Usuario", - "Deleted {{deleteModelTag}}": "{{deleteModelTag}} Borrado", - "Deleted {{name}}": "{{nombre}} Borrado", - "Deleted User": "Usuario Borrado", - "Describe your knowledge base and objectives": "Describe tu Base de Conocimientos y sus objetivos", - "Description": "Descripción", - "Detect Artifacts Automatically": "Detectar Artefactos Automáticamente", - "Didn't fully follow instructions": "No seguiste completamente las instrucciones", - "Direct": "Directo", - "Direct Connections": "Conexiones Directas", - "Direct Connections allow users to connect to their own OpenAI compatible API endpoints.": "Las Conexiones Directas permiten a los usuarios conectar a sus propios endpoints compatibles API OpenAI.", - "Direct Connections settings updated": "Se actualizaron las configuraciones de las Conexiones Directas", - "Direct Tool Servers": "Servidores de Herramientas Directos", - "Disabled": "Deshabilitado", - "Discover a function": "Descubrir Funciónes", - "Discover a model": "Descubrir Modelos", - "Discover a prompt": "Descubrir Prompts", - "Discover a tool": "Descubrir Herramientas", - "Discover how to use Open WebUI and seek support from the community.": "Descubre cómo usar Open WebUI y busca Soporte Comunitario.", - "Discover wonders": "Descubre Maravillas", - "Discover, download, and explore custom functions": "Descubre, descarga y explora funciones personalizadas", - "Discover, download, and explore custom prompts": "Descubre, descarga, y explora prompts personalizados", - "Discover, download, and explore custom tools": "Descubre, descarga y explora herramientas personalizadas", - "Discover, download, and explore model presets": "Descubre, descarga y explora modelos con preajustados", - "Dismissible": "Desestimable", - "Display": "Mostrar", - "Display Emoji in Call": "Muestra Emojis en Llamada", - "Display the username instead of You in the Chat": "Mostrar en el chat el nombre de usuario en lugar del genérico Tu", - "Displays citations in the response": "Mostrar citas en la respuesta", - "Dive into knowledge": "Sumérgete en el conocimiento", - "Do not install functions from sources you do not fully trust.": "¡No instalar funciones de fuentes en las que que no se confíe totalmente!", - "Do not install tools from sources you do not fully trust.": "¡No instalar herramientas de fuentes en las que no se confíe totalmente!", - "Docling": "Docling", - "Docling Server URL required.": "Docling URL del servidor necesaria.", - "Document": "Documento", - "Document Intelligence": "Azure Doc Intelligence", - "Document Intelligence endpoint and key required.": "Es neceario un endpoint y clave de Azure Document Intelligence.", - "Documentation": "Documentación", - "Documents": "Documentos", - "does not make any external connections, and your data stays securely on your locally hosted server.": "no se realiza ninguna conexión externa y tus datos permanecen seguros alojados localmente en tu servidor.", - "Domain Filter List": "Lista de Filtrado de Dominio", - "Don't have an account?": "¿No tienes una cuenta?", - "don't install random functions from sources you don't trust.": "¡no instalar funciones desconocidas de fuentes en las que no se confíe!", - "don't install random tools from sources you don't trust.": "¡no instalar herramientas desconocidas de fuentes en las que no se confíe!", - "Don't like the style": "¿No te gusta el estilo?", - "Done": "Hecho", - "Download": "Descargar", - "Download as SVG": "Descargar como SVG", - "Download canceled": "Descarga cancelada", - "Download Database": "Descargar Base de Datos", - "Drag and drop a file to upload or select a file to view": "Arrastra y suelta un archivo para subirlo o selecciona uno para verlo", - "Draw": "Dibujar", - "Drop any files here to upload": "", - "e.g. '30s','10m'. Valid time units are 's', 'm', 'h'.": "p.ej. '30s','10m'. Unidades de tiempo válidas son 's', 'm', 'h'.", - "e.g. \"json\" or a JSON schema": "p.ej. \"json\" o un esquema JSON", - "e.g. 60": "p.ej. 60", - "e.g. A filter to remove profanity from text": "p.ej. Un filtro para eliminar malas palabras del texto", - "e.g. My Filter": "p.ej. Mi Filtro", - "e.g. My Tools": "p.ej. Mis Herramientas", - "e.g. my_filter": "p.ej. mi_filtro", - "e.g. my_tools": "p.ej. mis_herramientas", - "e.g. Tools for performing various operations": "p.ej. Herramientas para realizar varias operaciones", - "e.g., 3, 4, 5 (leave blank for default)": "", - "e.g., en-US,ja-JP (leave blank for auto-detect)": "p. ej., en-US,ja-JP (dejar en blanco para detectar automáticamente)", - "e.g., westus (leave blank for eastus)": "", - "Edit": "Editar", - "Edit Arena Model": "Editar Modelo en Arena", - "Edit Channel": "Editar Canal", - "Edit Connection": "Editar Conexión", - "Edit Default Permissions": "Editar Permisos Predeterminados", - "Edit Memory": "Editar Memoria", - "Edit User": "Editar Usuario", - "Edit User Group": "Editar Grupo de Usuarios", - "ElevenLabs": "ElevenLabs", - "Email": "Email", - "Embark on adventures": "Embarcate en aventuras", - "Embedding": "Incrustación", - "Embedding Batch Size": "Tamaño del Lote de Incrustación", - "Embedding Model": "Modelo de Incrustación", - "Embedding Model Engine": "Motor del Modelo de Incrustación", - "Embedding model set to \"{{embedding_model}}\"": "Modelo de Incrustación configurado a \"{{embedding_model}}\"", - "Enable API Key": "Habilitar Clave API", - "Enable autocomplete generation for chat messages": "Habilitar generación de autocompletado para mensajes de chat", - "Enable Code Execution": "Habilitar Ejecución de Código", - "Enable Code Interpreter": "Habilitar Interprete de Código", - "Enable Community Sharing": "Habilitar Compartir con la Comunidad", - "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.": "Habilitar bloqueo de memoria (mlock) para prevenir que los datos del modelo se intercambien fuera de la RAM. Esta opción bloquea el conjunto de páginas de trabajo del modelo en RAM, asegurando que no se intercambiarán fuera a disco. Esto puede ayudar a mantener el rendimiento evitando fallos de página y asegurando un acceso rápido a los datos.", - "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.": "Habilitar Mapeado de Memoria (mmap) para cargar datos del modelo. Esta opción permite al sistema usar el almacenamiento del disco como una extensión de la RAM al tratar los archivos en disco como si estuvieran en la RAM. Esto puede mejorar el rendimiento del modelo al permitir un acceso más rápido a los datos. Sin embargo, puede no funcionar correctamente con todos los sistemas y puede consumir una cantidad significativa de espacio en disco.", - "Enable Message Rating": "Habilitar Calificación de los Mensajes", - "Enable Mirostat sampling for controlling perplexity.": "Algoritmo de decodificación de texto neuronal que controla activamente el proceso generativo para mantener la perplejidad del texto generado en un valor deseado. Previene las trampas de aburrimiento (por excesivas repeticiones) y de incoherencia (por generación de excesivo texto).", - "Enable New Sign Ups": "Habilitar Registros de Nuevos Usuarios", - "Enabled": "Habilitado", - "Endpoint URL": "", - "Enforce Temporary Chat": "Forzar el uso de Chat Temporal", - "Enhance": "", - "Ensure your CSV file includes 4 columns in this order: Name, Email, Password, Role.": "Asegúrese de que su archivo CSV incluya 4 columnas en este orden: Nombre, Correo Electrónico, Contraseña, Rol.", - "Enter {{role}} message here": "Ingresar mensaje {{role}} aquí", - "Enter a detail about yourself for your LLMs to recall": "Ingresar detalles sobre ti para que los recuerden sus LLMs", - "Enter api auth string (e.g. username:password)": "Ingresar campo de autorización de la api (p.ej. nombre:contraseña)", - "Enter Application DN": "Ingresar el DN de la Aplicación", - "Enter Application DN Password": "Ingresar la Contraseña del DN de la Aplicación", - "Enter Bing Search V7 Endpoint": "Ingresar el Endpoint de Bing Search V7", - "Enter Bing Search V7 Subscription Key": "Ingresar la Clave de Suscripción de Bing Search V7", - "Enter Bocha Search API Key": "Ingresar la Clave API de Bocha Search", - "Enter Brave Search API Key": "Ingresar la Clave API de Brave Search", - "Enter certificate path": "Ingresar la ruta del certificado", - "Enter CFG Scale (e.g. 7.0)": "Ingresa escala CFG (p.ej., 7.0)", - "Enter Chunk Overlap": "Ingresar Superposición de los Fragmentos", - "Enter Chunk Size": "Ingresar el Tamaño del Fragmento", - "Enter comma-separated \"token:bias_value\" pairs (example: 5432:100, 413:-100)": "Ingresar pares \"token:valor_sesgo\" separados por comas (ejemplo: 5432:100, 413:-100)", - "Enter description": "Ingresar Descripción", - "Enter Docling OCR Engine": "", - "Enter Docling OCR Language(s)": "", - "Enter Docling Server URL": "Ingresar URL del Servidor Docling", - "Enter Document Intelligence Endpoint": "Ingresar el Endpoint de Azure Document Intelligence", - "Enter Document Intelligence Key": "Ingresar Clave de Azure Document Intelligence", - "Enter domains separated by commas (e.g., example.com,site.org)": "Ingresar dominios separados por comas (p.ej., ejemplo.com,sitio.org)", - "Enter Exa API Key": "Ingresar Clave API de Exa", - "Enter External Web Loader API Key": "", - "Enter External Web Loader URL": "", - "Enter External Web Search API Key": "", - "Enter External Web Search URL": "", - "Enter Firecrawl API Base URL": "Ingresar URL Base del API de Firecrawl", - "Enter Firecrawl API Key": "Ingresar Clave del API de Firecrawl", - "Enter Github Raw URL": "Ingresar URL Github en Bruto(raw)", - "Enter Google PSE API Key": "Ingresar Clave API de Google PSE", - "Enter Google PSE Engine Id": "Ingresa ID del Motor PSE de Google", - "Enter Image Size (e.g. 512x512)": "Ingresar Tamaño de Imagen (p.ej. 512x512)", - "Enter Jina API Key": "Ingresar Clave API de Jina", - "Enter Jupyter Password": "Ingresar Contraseña de Jupyter", - "Enter Jupyter Token": "Ingresar Token de Jupyter", - "Enter Jupyter URL": "Ingresar URL de Jupyter", - "Enter Kagi Search API Key": "Ingresar Clave API de Kagi Search", - "Enter Key Behavior": "Comportamiento de la Tecla de Envío", - "Enter language codes": "Ingresar Códigos de Idioma", - "Enter Mistral API Key": "Ingresar Clave API de Mistral", - "Enter Model ID": "Ingresar ID del Modelo", - "Enter model tag (e.g. {{modelTag}})": "Ingresar la etiqueta del modelo (p.ej. {{modelTag}})", - "Enter Mojeek Search API Key": "Ingresar Clave API de Mojeek Search", - "Enter New Password": "", - "Enter Number of Steps (e.g. 50)": "Ingresar Número de Pasos (p.ej., 50)", - "Enter Perplexity API Key": "Ingresar Clave API de Perplexity", - "Enter Playwright Timeout": "Ingresar límite de tiempo de espera de Playwright", - "Enter Playwright WebSocket URL": "Ingresar URL de WebSocket de Playwright", - "Enter proxy URL (e.g. https://user:password@host:port)": "Ingresar URL del proxy (p.ej. https://user:password@host:port)", - "Enter reasoning effort": "Ingresar esfuerzo de razonamiento", - "Enter Sampler (e.g. Euler a)": "Ingresar Muestreador (p.ej., Euler a)", - "Enter Scheduler (e.g. Karras)": "Ingresar Planificador (p.ej., Karras)", - "Enter Score": "Ingresar Puntuación", - "Enter SearchApi API Key": "Ingresar Clave API de SearchApi", - "Enter SearchApi Engine": "Ingresar Motor de SearchApi", - "Enter Searxng Query URL": "Ingresar URL de la consulta Searxng", - "Enter Seed": "Ingresar Semilla", - "Enter SerpApi API Key": "Ingresar Clave API de SerpApi", - "Enter SerpApi Engine": "Ingresar Motor de SerpApi", - "Enter Serper API Key": "Ingresar Clave API de Serper", - "Enter Serply API Key": "Ingresar Clave API de Serply", - "Enter Serpstack API Key": "Ingresar Clave API de Serpstack", - "Enter server host": "Ingresar host del servidor", - "Enter server label": "Ingresar etiqueta del servidor", - "Enter server port": "Ingresar puerto del servidor", - "Enter Sougou Search API sID": "Ingresar Sougou Search API sID", - "Enter Sougou Search API SK": "Ingresar Sougou Search API SK", - "Enter stop sequence": "Ingresar secuencia de parada", - "Enter system prompt": "Ingresar Prompt del sistema", - "Enter system prompt here": "Ingresa aquí el prompt del sistema", - "Enter Tavily API Key": "Ingresar Clave API de Tavily", - "Enter Tavily Extract Depth": "Ingresar parámetro de Extract Depth de Taviliy", - "Enter the public URL of your WebUI. This URL will be used to generate links in the notifications.": "Ingresar URL pública de WebUI. Esta URL se usará para generar enlaces en las notificaciones.", - "Enter Tika Server URL": "Ingresar URL del servidor Tika", - "Enter timeout in seconds": "Ingresar tiempo límite de espera en segundos", - "Enter to Send": "'Enter' para Enviar", - "Enter Top K": "Ingresar Top K", - "Enter Top K Reranker": "Ingresar Top K Reclasificador", - "Enter URL (e.g. http://127.0.0.1:7860/)": "Ingresar URL (p.ej., http://127.0.0.1:7860/)", - "Enter URL (e.g. http://localhost:11434)": "Ingresar URL (p.ej., http://localhost:11434)", - "Enter Yacy Password": "", - "Enter Yacy URL (e.g. http://yacy.example.com:8090)": "", - "Enter Yacy Username": "", - "Enter your current password": "Ingresa tu contraseña actual", - "Enter Your Email": "Ingresa tu correo electrónico", - "Enter Your Full Name": "Ingresa su nombre completo", - "Enter your message": "Ingresa tu mensaje", - "Enter your name": "Ingresa tu nombre", - "Enter Your Name": "", - "Enter your new password": "Ingresa tu contraseña nueva", - "Enter Your Password": "Ingresa tu contraseña", - "Enter Your Role": "Ingresa tu rol", - "Enter Your Username": "Ingresa tu nombre de usuario", - "Enter your webhook URL": "Ingresa tu URL de webhook", - "Error": "Error", - "ERROR": "ERROR", - "Error accessing Google Drive: {{error}}": "Error accediendo a Google Drive: {{error}}", - "Error accessing media devices.": "", - "Error starting recording.": "", - "Error uploading file: {{error}}": "Error subiendo el archivo: {{error}}", - "Evaluations": "Evaluaciones", - "Exa API Key": "Clave API de Exa", - "Example: (&(objectClass=inetOrgPerson)(uid=%s))": "Ejemplo: (&(objectClass=inetOrgPerson)(uid=%s))", - "Example: ALL": "Ejemplo: TODOS", - "Example: mail": "Ejemplo: correo", - "Example: ou=users,dc=foo,dc=example": "Ejemplo: ou=usuarios,dc=foo,dc=ejemplo", - "Example: sAMAccountName or uid or userPrincipalName": "Ejemplo: sAMNombreCuenta o uid o userNombrePrincipal", - "Exceeded the number of seats in your license. Please contact support to increase the number of seats.": "Excedido el número de accesos de usuarios en tu licencia. Por favor, contacta con soporte para aumentar el número de accesos.", - "Exclude": "Excluir", - "Execute code for analysis": "Ejecutar código para análisis", - "Executing **{{NAME}}**...": "Ejecutando **{{NAME}}**...", - "Expand": "Expandir", - "Experimental": "Experimental", - "Explain": "Explicar", - "Explain this section to me in more detail": "Explícame esta sección con más detalle", - "Explore the cosmos": "Explora el cosmos", - "Export": "Exportar", - "Export All Archived Chats": "Exportar Todos los Chats Archivados", - "Export All Chats (All Users)": "Exportar Todos los Chats (Todos los Usuarios)", - "Export chat (.json)": "Exportar chat (.json)", - "Export Chats": "Exportar Chats", - "Export Config to JSON File": "Exportar Configuración a archivo JSON", - "Export Functions": "Exportar Funciones", - "Export Models": "Exportar Modelos", - "Export Presets": "Exportar Preajustes", - "Export Prompts": "Exportar Prompts", - "Export to CSV": "Exportar a CSV", - "Export Tools": "Exportar Herramientas", - "External": "Externo", - "External Models": "Modelos Externos", - "External Web Loader API Key": "", - "External Web Loader URL": "", - "External Web Search API Key": "", - "External Web Search URL": "", - "Failed to add file.": "Fallo al añadir el archivo.", - "Failed to connect to {{URL}} OpenAPI tool server": "Fallo al conectar al servidor de herramientas {{URL}}", - "Failed to create API Key.": "Fallo al crear la Clave API.", - "Failed to delete note": "", - "Failed to fetch models": "Fallo al obtener los modelos", - "Failed to load file content.": "", - "Failed to read clipboard contents": "Fallo al leer el contenido del portapapeles", - "Failed to save connections": "Fallo al grabar las conexiones", - "Failed to save models configuration": "Fallo al guardar la configuración de los modelos", - "Failed to update settings": "Fallo al actualizar los ajustes", - "Failed to upload file.": "Fallo al subir el archivo.", - "Features": "Características", - "Features Permissions": "Permisos de las Características", - "February": "Febrero", - "Feedback History": "Historial de Opiniones", - "Feedbacks": "Opiniones", - "Feel free to add specific details": "Añade libremente detalles específicos", - "File": "Archivo", - "File added successfully.": "Archivo añadido correctamente.", - "File content updated successfully.": "Contenido del archivo actualizado correctamente.", - "File Mode": "Modo de Archivo", - "File not found.": "Archivo no encontrado.", - "File removed successfully.": "Archivo eliminado correctamente.", - "File size should not exceed {{maxSize}} MB.": "Tamaño del archivo no debe exceder {{maxSize}} MB.", - "File uploaded successfully": "Archivo subido correctamente", - "Files": "Archivos", - "Filter is now globally disabled": "El filtro ahora está desactivado globalmente", - "Filter is now globally enabled": "El filtro ahora está habilitado globalmente", - "Filters": "Filtros", - "Fingerprint spoofing detected: Unable to use initials as avatar. Defaulting to default profile image.": "Se detectó suplantación de huellas: No se pueden usar las iniciales como avatar. Se establece la imagen de perfil predeterminada.", - "Firecrawl API Base URL": "URL Base de API de Firecrawl", - "Firecrawl API Key": "Clave de API de Firecrawl", - "Fluidly stream large external response chunks": "Transmisión fluida de fragmentos de grandes respuestas externas", - "Focus chat input": "Enfocar campo de chat", - "Folder deleted successfully": "Carpeta eliminada correctamente", - "Folder name cannot be empty.": "El nombre de la carpeta no puede estar vacío", - "Folder name updated successfully": "Nombre de la carpeta actualizado correctamente", - "Followed instructions perfectly": "Siguió las instrucciones perfectamente", - "Forge new paths": "Forjar nuevos caminos", - "Form": "Formulario", - "Format your variables using brackets like this:": "Formatea tus variables usando corchetes así:", - "Forwards system user session credentials to authenticate": "Reenvío de las credenciales de la sesión del usuario del sistema para autenticación", - "Frequency Penalty": "Penalización de Frecuencia", - "Full Context Mode": "Modo Contexto Completo", - "Function": "Función", - "Function Calling": "Modo de Llamada a Funciones (Herramientas)", - "Function created successfully": "Función creada correctamente", - "Function deleted successfully": "Función borrada correctamente", - "Function Description": "Descripción de la Función", - "Function ID": "ID de la Función", - "Function is now globally disabled": "La Función ahora está deshabilitada globalmente", - "Function is now globally enabled": "La Función ahora está habilitada globalmente", - "Function Name": "Nombre de la Función", - "Function updated successfully": "Función actualizada correctamente", - "Functions": "Funciones", - "Functions allow arbitrary code execution.": "Las Funciones habilitan la ejecución de código arbitrario.", - "Functions imported successfully": "Funciones importadas correctamente", - "Gemini": "Gemini", - "Gemini API Config": "Config API Gemini", - "Gemini API Key is required.": "Se requiere Clave API de Gemini.", - "General": "General", - "Generate": "", - "Generate an image": "Generar una imagen", - "Generate Image": "Generar imagen", - "Generate prompt pair": "Generar par de prompts", - "Generating search query": "Generando consulta de búsqueda", - "Generating...": "", - "Get started": "Empezar", - "Get started with {{WEBUI_NAME}}": "Empezar con {{WEBUI_NAME}}", - "Global": "Global", - "Good Response": "Buena Respuesta", - "Google Drive": "Google Drive", - "Google PSE API Key": "Clave API de Google PSE", - "Google PSE Engine Id": "ID del Motor PSE de Google", - "Group created successfully": "Grupo creado correctamente", - "Group deleted successfully": "Grupo eliminado correctamente", - "Group Description": "Descripción del Grupo", - "Group Name": "Nombre del Grupo", - "Group updated successfully": "Grupo actualizado correctamente", - "Groups": "Grupos", - "Haptic Feedback": "Realimentación Háptica", - "has no conversations.": "no tiene conversaciones.", - "Hello, {{name}}": "Hola, {{name}}", - "Help": "Ayuda", - "Help us create the best community leaderboard by sharing your feedback history!": "¡Ayúdanos a crear la mejor tabla clasificatoria comunitaria compartiendo tu historial de realimentación!", - "Hex Color": "Color Hex", - "Hex Color - Leave empty for default color": "Color Hex - Deja vacío para el color predeterminado", - "Hide": "Esconder", - "Hide Model": "Ocultar Modelo", - "Home": "Inicio", - "Host": "Host", - "How can I help you today?": "¿Cómo puedo ayudarte hoy?", - "How would you rate this response?": "¿Cómo calificarías esta respuesta?", - "Hybrid Search": "Búsqueda 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.": "Aseguro que he leído y entiendo las implicaciones de mi acción. Soy consciente de los riesgos asociados con la ejecución de código arbitrario y he verificado la confiabilidad de la fuente.", - "ID": "ID", - "iframe Sandbox Allow Forms": "", - "iframe Sandbox Allow Same Origin": "", - "Ignite curiosity": "Encender la curiosidad", - "Image": "Imagen", - "Image Compression": "Compresión de Imagen", - "Image Generation": "Generación de Imagen", - "Image Generation (Experimental)": "Generación de Imagen (experimental)", - "Image Generation Engine": "Motor de Generación de Imagen", - "Image Max Compression Size": "Tamaño Máximo de Compresión de Imagen", - "Image Prompt Generation": "Prompt para Generación de Imagen", - "Image Prompt Generation Prompt": "Prompt para la Generación de Imagen", - "Image Settings": "Configuración de Imágen", - "Images": "Imágenes", - "Import Chats": "Importar Chats", - "Import Config from JSON File": "Importar Config desde Archivo JSON", - "Import Functions": "Importar Funciones", - "Import Models": "Importar Modelos", - "Import Notes": "", - "Import Presets": "Importar Preajustes", - "Import Prompts": "Importar Prompts", - "Import Tools": "Importar Herramientas", - "Include": "Incluir", - "Include `--api-auth` flag when running stable-diffusion-webui": "Incluir el señalizador `--api-auth` al ejecutar stable-diffusion-webui", - "Include `--api` flag when running stable-diffusion-webui": "Incluir el señalizador `--api` al ejecutar stable-diffusion-webui", - "Influences how quickly the algorithm responds to feedback from the generated text. A lower learning rate will result in slower adjustments, while a higher learning rate will make the algorithm more responsive.": "Influye en la rápidez de respuesta a la realimentación desde el texto generado. Una tasa de aprendizaje más baja resulta en un ajustado más lento, mientras que una tasa de aprendizaje más alta hará que el algoritmo sea más reactivo.", - "Info": "Información", - "Inject the entire content as context for comprehensive processing, this is recommended for complex queries.": "Inyecta el contenido completo como contexto para un procesado comprensivo, recomendado para consultas complejas.", - "Input commands": "Ingresar comandos", - "Install from Github URL": "Instalar desde la URL de Github", - "Instant Auto-Send After Voice Transcription": "AutoEnvio Instantaneo tras la Transcripción de Voz", - "Integration": "Integración", - "Interface": "Interface", - "Invalid file content": "", - "Invalid file format.": "Formato de archivo Inválido.", - "Invalid JSON schema": "Esquema JSON Inválido", - "Invalid Tag": "Etiqueta Inválida", - "is typing...": "está escribiendo...", - "January": "Enero", - "Jina API Key": "Clave API de Jina", - "join our Discord for help.": "unete a nuestro Discord para ayuda.", - "JSON": "JSON", - "JSON Preview": "Prevista del JSON", - "July": "Julio", - "June": "Junio", - "Jupyter Auth": "Autenticación de Jupyter", - "Jupyter URL": "URL de Jupyter", - "JWT Expiration": "Expiración del JSON Web Token (JWT)", - "JWT Token": "JSON Web Token", - "Kagi Search API Key": "Clave API de Kagi Search", - "Keep Alive": "Mantener Vivo", - "Key": "Clave", - "Keyboard shortcuts": "Atajos de teclado", - "Knowledge": "Conocimiento", - "Knowledge Access": "Acceso a Conocimiento", - "Knowledge created successfully.": "Conocimiento creado correctamente.", - "Knowledge deleted successfully.": "Conocimiento eliminado correctamente.", - "Knowledge Public Sharing": "", - "Knowledge reset successfully.": "Conocimiento restablecido correctamente.", - "Knowledge updated successfully": "Conocimiento actualizado correctamente.", - "Kokoro.js (Browser)": "Kokoro.js (Navegador)", - "Kokoro.js Dtype": "Kokoro.js DType", - "Label": "Etiqueta", - "Landing Page Mode": "Modo Página Inicial", - "Language": "Idioma", - "Language Locales": "", - "Last Active": "Última Actividad", - "Last Modified": "Último Modificación", - "Last reply": "Última Respuesta", - "LDAP": "LDAP", - "LDAP server updated": "Servidor LDAP actualizado", - "Leaderboard": "Tabla Clasificatoria", - "Learn more about OpenAPI tool servers.": "Saber más sobre los servidores de herramientas OpenAPI", - "Leave empty for unlimited": "Dejar vacío para ilimitado", - "Leave empty to include all models from \"{{url}}/api/tags\" endpoint": "Dejar vacío para incluir todos los modelos desde el endpoint \"{{url}}/api/tags\"", - "Leave empty to include all models from \"{{url}}/models\" endpoint": "Dejar vacío para incluir todos los modelos desde el endpoint \"{{url}}/models\"", - "Leave empty to include all models or select specific models": "Dejar vacío para incluir todos los modelos o Seleccionar modelos específicos", - "Leave empty to use the default prompt, or enter a custom prompt": "Dejar vacío para usar el prompt predeterminado, o Ingresar un prompt personalizado", - "Leave model field empty to use the default model.": "Dejar vacío el campo modelo para usar el modelo predeterminado.", - "License": "Licencia", - "Light": "Claro", - "Listening...": "Escuchando...", - "Llama.cpp": "Llama.cpp", - "LLMs can make mistakes. Verify important information.": "Los LLMs pueden cometer errores. Verifica la información importante.", - "Loader": "Cargador", - "Loading Kokoro.js...": "Cargando Kokoro.js...", - "Local": "Local", - "Local Models": "Modelos Locales", - "Location access not allowed": "Sin acceso a la Ubicación", - "Logit Bias": "Sesgo de Logit", - "Lost": "Perdido", - "LTR": "LTR", - "Made by Open WebUI Community": "Creado por la Comunidad Open-WebUI", - "Make sure to enclose them with": "Asegúrate de delimitarlos con", - "Make sure to export a workflow.json file as API format from ComfyUI.": "Asegúrate de exportar un archivo workflow.json en formato API desde ComfyUI.", - "Manage": "Gestionar", - "Manage Direct Connections": "Gestionar Conexiones Directas", - "Manage Models": "Gestionar Modelos", - "Manage Ollama": "Gestionar Ollama", - "Manage Ollama API Connections": "Gestionar Conexiones API de Ollama", - "Manage OpenAI API Connections": "Gestionar Conexiones API de OpenAI", - "Manage Pipelines": "Gestionar Tuberías", - "Manage Tool Servers": "Gestionar Servidores de Herramientas", - "March": "Marzo", - "Max Speakers": "", - "Max Tokens (num_predict)": "Máx Tokens (num_predict)", - "Max Upload Count": "Número Max de Subidas", - "Max Upload Size": "Tamaño Max de Subidas", - "Maximum of 3 models can be downloaded simultaneously. Please try again later.": "Se puede descargar un máximo de 3 modelos simultáneamente. Por favor, reinténtelo más tarde.", - "May": "Mayo", - "Memories accessible by LLMs will be shown here.": "Las memorias accesibles por los LLMs se mostrarán aquí.", - "Memory": "Memoria", - "Memory added successfully": "Memoria añadida correctamente", - "Memory cleared successfully": "Memoria liberada correctamente", - "Memory deleted successfully": "Memoria borrada correctamente", - "Memory updated successfully": "Memoria actualizada correctamente", - "Merge Responses": "Fusionar Respuestas", - "Merged Response": "Respuesta combinada", - "Message rating should be enabled to use this feature": "Para usar esta función debe estar habilitada la calificación de mensajes", - "Messages you send after creating your link won't be shared. Users with the URL will be able to view the shared chat.": "Los mensajes que envíe después de la creación del enlace no se compartirán. Los usuarios con la URL del enlace podrán ver el chat compartido.", - "Microsoft OneDrive": "", - "Microsoft OneDrive (personal)": "", - "Microsoft OneDrive (work/school)": "", - "Min P": "Min P", - "Mirostat": "Mirostat", - "Mirostat Eta": "Mirostat Eta", - "Mirostat Tau": "Mirostat Tau", - "Mistral OCR": "OCR Mistral", - "Mistral OCR API Key required.": "Clave API de Mistral OCR requerida", - "Model": "Modelo", - "Model '{{modelName}}' has been successfully downloaded.": "Modelo '{{modelName}}' se ha descargado correctamente.", - "Model '{{modelTag}}' is already in queue for downloading.": "Modelo '{{modelTag}}' ya está en cola para descargar.", - "Model {{modelId}} not found": "Modelo {{modelId}} no encontrado", - "Model {{modelName}} is not vision capable": "Modelo {{modelName}} no esta capacitado para visión", - "Model {{name}} is now {{status}}": "Modelo {{name}} está ahora {{status}}", - "Model {{name}} is now hidden": "", - "Model {{name}} is now visible": "", - "Model accepts image inputs": "Modelo acepta entradas de imágen", - "Model created successfully!": "¡Modelo creado correctamente!", - "Model filesystem path detected. Model shortname is required for update, cannot continue.": "Detectada ruta del sistema al modelo. Para actualizar se requiere el nombre corto del modelo, no se puede continuar.", - "Model Filtering": "Filtrado de modelos", - "Model ID": "ID Modelo", - "Model IDs": "IDs Modelo", - "Model Name": "Nombre Modelo", - "Model not selected": "Modelo no seleccionado", - "Model Params": "Paráms Modelo", - "Model Permissions": "Permisos Modelo", - "Model updated successfully": "Modelo actualizado correctamente", - "Modelfile Content": "Contenido del Modelfile", - "Models": "Modelos", - "Models Access": "Acceso Modelos", - "Models configuration saved successfully": "Configuración de Modelos guardada correctamente", - "Models Public Sharing": "", - "Mojeek Search API Key": "Clave API de Mojeek Search", - "more": "más", - "More": "Más", - "My Notes": "", - "Name": "Nombre", - "Name your knowledge base": "Nombra tu base de conocimientos", - "Native": "Nativo", - "New Chat": "Nuevo Chat", - "New Folder": "Nueva Carpeta", - "New Note": "", - "New Password": "Nueva Contraseña", - "new-channel": "nuevo-canal", - "No content": "", - "No content found": "No se encontró contenido", - "No content found in file.": "", - "No content to speak": "No hay contenido para hablar", - "No distance available": "No hay distancia disponible", - "No feedbacks found": "No se encontraron realimentaciones", - "No file selected": "No se seleccionó archivo", - "No groups with access, add a group to grant access": "No hay grupos con acceso, añade un grupo para otorgar acceso", - "No HTML, CSS, or JavaScript content found.": "No se encontró contenido HTML, CSS, o JavaScript.", - "No inference engine with management support found": "No se encontró un motor de inferencia que soporte gestión", - "No knowledge found": "No se encontró ningún conocimiento", - "No memories to clear": "No hay memorias para borrar", - "No model IDs": "No hay IDs de modelo", - "No models found": "No se encontraron modelos", - "No models selected": "No se seleccionaron modelos", - "No Notes": "", - "No results found": "No se encontraron resultados", - "No search query generated": "No se generó ninguna consulta de búsqueda", - "No source available": "No hay fuente disponible", - "No users were found.": "No se encontraron usuarios.", - "No valves to update": "No hay válvulas para actualizar", - "None": "Ninguno", - "Not factually correct": "No es correcto en todos los aspectos", - "Not helpful": "No aprovechable", - "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.": "Nota: Si estableces una puntuación mínima, la búsqueda sólo devolverá documentos con una puntuación mayor o igual a la puntuación mínima establecida.", - "Notes": "Notas", - "Notification Sound": "Notificación Sonora", - "Notification Webhook": "Notificación Enganchada (webhook)", - "Notifications": "Notificaciones", - "November": "Noviembre", - "num_gpu (Ollama)": "num_gpu (capas Ollama)", - "num_thread (Ollama)": "num_thread (hilos Ollama)", - "OAuth ID": "OAuth ID", - "October": "Octubre", - "Off": "Desactivado", - "Okay, Let's Go!": "Vale, ¡Vamos!", - "OLED Dark": "Oscuro OLED", - "Ollama": "Ollama", - "Ollama API": "API Ollama", - "Ollama API settings updated": "Ajustes de la API de Ollama actualizados", - "Ollama Version": "Versión de Ollama", - "On": "Activado", - "OneDrive": "OneDrive", - "Only alphanumeric characters and hyphens are allowed": "Sólo están permitidos caracteres alfanuméricos y guiones", - "Only alphanumeric characters and hyphens are allowed in the command string.": "Sólo están permitidos en la cadena de comandos caracteres alfanuméricos y guiones.", - "Only collections can be edited, create a new knowledge base to edit/add documents.": "Solo se pueden editar las colecciones, para añadir/editar documentos hay que crear una nueva base de conocimientos", - "Only markdown files are allowed": "", - "Only select users and groups with permission can access": "Solo pueden acceder los usuarios y grupos con permiso", - "Oops! Looks like the URL is invalid. Please double-check and try again.": "¡vaya! Parece que la URL es inválida. Por favor, revisala y reintenta de nuevo.", - "Oops! There are files still uploading. Please wait for the upload to complete.": "¡vaya! Todavía hay archivos subiendose. Por favor, espera a que se complete la subida.", - "Oops! There was an error in the previous response.": "¡vaya! Hubo un error en la respuesta previa.", - "Oops! You're using an unsupported method (frontend only). Please serve the WebUI from the backend.": "¡vaya! Estás usando un método no soportado (solo interface frontal-frontend). Por favor sirve WebUI desde el interface trasero (servidor backend).", - "Open file": "Abrir archivo", - "Open in full screen": "Abrir en pantalla completa", - "Open new chat": "Abrir nuevo chat", - "Open WebUI can use tools provided by any OpenAPI server.": "Open-WebUI puede usar herramientas proporcionadas por cualquier servidor OpenAPI", - "Open WebUI uses faster-whisper internally.": "Open-WebUI usa faster-whisper internamente.", - "Open WebUI uses SpeechT5 and CMU Arctic speaker embeddings.": "Open-WebUI usa SpeechT5 y la incrustración de locutores de CMU Arctic.", - "Open WebUI version (v{{OPEN_WEBUI_VERSION}}) is lower than required version (v{{REQUIRED_VERSION}})": "La versión de Open-WebUI (v{{OPEN_WEBUI_VERSION}}) es inferior a la versión (v{{REQUIRED_VERSION}}) requerida", - "OpenAI": "OpenAI", - "OpenAI API": "API OpenAI", - "OpenAI API Config": "Config API OpenAI", - "OpenAI API Key is required.": "Clave API de OpenAI requerida.", - "OpenAI API settings updated": "Ajustes de API OpenAI actualizados", - "OpenAI URL/Key required.": "URL/Clave de OpenAI requerida.", - "openapi.json Path": "Ruta a openapi.json", - "or": "o", - "Organize your users": "Organiza tus usuarios", - "Other": "Otro", - "OUTPUT": "SALIDA", - "Output format": "Formato de salida", - "Overview": "Vista General", - "page": "página", - "Password": "Contraseña", - "Paste Large Text as File": "Pegar el Texto Largo como Archivo", - "PDF document (.pdf)": "Documento PDF (.pdf)", - "PDF Extract Images (OCR)": "Extraer imágenes del PDF (OCR)", - "pending": "pendiente", - "Permission denied when accessing media devices": "Permiso denegado accediendo a los dispositivos", - "Permission denied when accessing microphone": "Permiso denegado accediendo al micrófono", - "Permission denied when accessing microphone: {{error}}": "Permiso denegado accediendo al micrófono: {{error}}", - "Permissions": "Permisos", - "Perplexity API Key": "Clave API de Perplexity", - "Personalization": "Personalización", - "Pin": "Fijar", - "Pinned": "Fijado", - "Pioneer insights": "Descubrir nuevas perspectivas", - "Pipeline deleted successfully": "Tubería borrada correctamente", - "Pipeline downloaded successfully": "Tubería descargada correctamente", - "Pipelines": "Tuberías", - "Pipelines Not Detected": "Servicio de Tuberías (Pipelines) No Detectado", - "Pipelines Valves": "Válvulas de Tuberías", - "Plain text (.md)": "", - "Plain text (.txt)": "Texto plano (.txt)", - "Playground": "Zona de Pruebas", - "Playwright Timeout (ms)": "Tiempo Límite de Espera (ms) de Playwright", - "Playwright WebSocket URL": "URL de WebSocket de Playwright", - "Please carefully review the following warnings:": "Por favor revisar cuidadosamente los siguientes avisos:", - "Please do not close the settings page while loading the model.": "Por favor no cerrar la página de ajustes mientras se está descargando el modelo.", - "Please enter a prompt": "Por favor ingresar un prompt", - "Please enter a valid path": "Por favor, ingresa una ruta válida", - "Please enter a valid URL": "Por favor, ingresa una URL válida", - "Please fill in all fields.": "Por favor rellenar todos los campos.", - "Please select a model first.": "Por favor primero seleccionar un modelo.", - "Please select a model.": "Por favor seleccionar un modelo.", - "Please select a reason": "Por favor seleccionar un motivo", - "Port": "Puerto", - "Positive attitude": "Actitud Positiva", - "Prefix ID": "prefijo ID", - "Prefix ID is used to avoid conflicts with other connections by adding a prefix to the model IDs - leave empty to disable": "El prefijo ID se utiliza para evitar conflictos con otras conexiones al añadir un prefijo a los IDs de modelo, dejar vacío para deshabilitarlo", - "Presence Penalty": "Penalización de Presencia", - "Previous 30 days": "30 días previos", - "Previous 7 days": "7 días previos", - "Private": "Privado", - "Profile Image": "Imagen del Perfil", - "Prompt": "Prompt", - "Prompt (e.g. Tell me a fun fact about the Roman Empire)": "Prompt (p.ej. Cuéntame una cosa divertida sobre el Imperio Romano)", - "Prompt Autocompletion": "Autocompletado del Prompt", - "Prompt Content": "Contenido del Prompt", - "Prompt created successfully": "Prompt creado exitosamente", - "Prompt suggestions": "Prompts Sugeridos", - "Prompt updated successfully": "Prompt actualizado correctamente", - "Prompts": "Prompts", - "Prompts Access": "Acceso a Prompts", - "Prompts Public Sharing": "", - "Public": "Público", - "Pull \"{{searchValue}}\" from Ollama.com": "Extraer \"{{searchValue}}\" desde Ollama.com", - "Pull a model from Ollama.com": "Extraer un modelo desde Ollama.com", - "Query Generation Prompt": "Prompt para la Consulta de Generación", - "RAG Template": "Plantilla del RAG", - "Rating": "Calificación", - "Re-rank models by topic similarity": "Reclasificar modelos por similitud temática", - "Read": "Leer", - "Read Aloud": "Leer en voz alta", - "Reasoning Effort": "Esfuerzo del Razonamiento", - "Record": "", - "Record voice": "Grabar voz", - "Redirecting you to Open WebUI Community": "Redireccionando a la Comunidad 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.": "Reduce la probabilidad de generación sin sentido. Un valor más alto (p.ej. 100) dará respuestas más diversas, mientras que un valor más bajo (p.ej. 10) será más conservador.", - "Refer to yourself as \"User\" (e.g., \"User is learning Spanish\")": "Referir a ti mismo como \"Usuario\" (p.ej. \"Usuario está aprendiendo Español\")", - "References from": "Referencias desde", - "Refused when it shouldn't have": "Rechazado cuando no debería haberlo hecho", - "Regenerate": "Regenerar", - "Reindex": "Reindexar", - "Reindex Knowledge Base Vectors": "Reindexar Base Vectorial de Conocimiento", - "Release Notes": "Notas de la Versión", - "Relevance": "Relevancia", - "Relevance Threshold": "Umbral de Relevancia", - "Remove": "Eliminar", - "Remove Model": "Eliminar Modelo", - "Rename": "Renombrar", - "Reorder Models": "Reordenar Modelos", - "Repeat Last N": "Repetición - Últimos N", - "Repeat Penalty (Ollama)": "Penalización Repetición (Ollama)", - "Reply in Thread": "Responder en Hilo", - "Request Mode": "Modo de Petición", - "Reranking Engine": "", - "Reranking Model": "Modelo de Reclasificación", - "Reset": "Reiniciar", - "Reset All Models": "Reiniciar Todos los Modelos", - "Reset Upload Directory": "Reiniciar Directorio de Subidas", - "Reset Vector Storage/Knowledge": "Reiniciar Almacenamiento de Vectores/Conocimiento", - "Reset view": "Reiniciar Vista", - "Response notifications cannot be activated as the website permissions have been denied. Please visit your browser settings to grant the necessary access.": "Las notificaciones de respuesta no pueden activarse ya que los permisos del sitio web han sido denegados. Por favor, comprueba la configuración de tu navegador para otorgar el permiso necesario.", - "Response splitting": "Particionado de Respuesta", - "Result": "Resultado", - "Retrieval": "Recuperación", - "Retrieval Query Generation": "Consulta de Generación de Recuperación", - "Rich Text Input for Chat": "Entrada de Texto Enriquecido para el Chat", - "RK": "RK", - "Role": "Rol", - "Rosé Pine": "Pino Rosa", - "Rosé Pine Dawn": "Pino Rosa Amanecer", - "RTL": "RTL", - "Run": "Ejecutar", - "Running": "Ejecutando", - "Save": "Guardar", - "Save & Create": "Guardar y Crear", - "Save & Update": "Guardar y Actualizar", - "Save As Copy": "Guardar como Copia", - "Save Tag": "Guardar Etiqueta", - "Saved": "Guardado", - "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": "Ya no está soportado guardar registros de chat directamente en el almacenamiento del navegador. Por favor, dedica un momento a descargar y eliminar tus registros de chat pulsando en el botón de abajo. No te preocupes, puedes re-importar fácilmente tus registros desde las opciones de configuración", - "Scroll On Branch Change": "", - "Search": "Buscar", - "Search a model": "Buscar un Modelo", - "Search Base": "Busqueda Base", - "Search Chats": "Buscar Chats", - "Search Collection": "Buscar Colección", - "Search Filters": "Buscar Filtros", - "search for tags": "Buscar por etiquetas", - "Search Functions": "Buscar Funciones", - "Search Knowledge": "Buscar Conocimiento", - "Search Models": "Buscar Modelos", - "Search options": "Opciones de Búsqueda", - "Search Prompts": "Buscar Prompts", - "Search Result Count": "Número de resultados de la búsqueda", - "Search the internet": "Buscar en internet", - "Search Tools": "Buscar Herramientas", - "SearchApi API Key": "Clave API de SearchApi", - "SearchApi Engine": "Motor SearchApi", - "Searched {{count}} sites": "{{count}} sitios buscados", - "Searching \"{{searchQuery}}\"": "Buscando \"{{searchQuery}}\"", - "Searching Knowledge for \"{{searchQuery}}\"": "Buscando \"{{searchQuery}}\" en Conocimiento", - "Searching the web...": "", - "Searxng Query URL": "Searxng URL de Consulta", - "See readme.md for instructions": "Ver readme.md para instrucciones", - "See what's new": "Ver las novedades", - "Seed": "Semilla", - "Select a base model": "Seleccionar un modelo base", - "Select a engine": "Seleccionar un motor", - "Select a function": "Seleccionar una función", - "Select a group": "Seleccionar un grupo", - "Select a model": "Selecciona un modelo", - "Select a pipeline": "Seleccionar una tubería", - "Select a pipeline url": "Seleccionar una url de tubería", - "Select a tool": "Seleccioanr una herramienta", - "Select an auth method": "Seleccionar un método de autentificación", - "Select an Ollama instance": "Seleccionar una instancia de Ollama", - "Select Engine": "Seleccionar Motor", - "Select Knowledge": "Seleccionar Conocimiento", - "Select only one model to call": "Seleccionar sólo un modelo a llamar", - "Selected model(s) do not support image inputs": "Modelo(s) seleccionado(s) no admiten entradas de imagen", - "Semantic distance to query": "Distancia semántica a la consulta", - "Send": "Enviar", - "Send a Message": "Enviar un Mensaje", - "Send message": "Enviar Mensaje", - "Sends `stream_options: { include_usage: true }` in the request.\nSupported providers will return token usage information in the response when set.": "Envia en la solicitud de transmisión la opción: `{ include_usage: true }`.\nSi se activa, los proveedores que soporten esta función devolverán en la respuesta información de uso de los token.", - "September": "Septiembre", - "SerpApi API Key": "Clave API de SerpApi", - "SerpApi Engine": "Motor de SerpApi", - "Serper API Key": "Clave API de Serper", - "Serply API Key": "Clave API de Serply", - "Serpstack API Key": "Clave API de Serpstack", - "Server connection verified": "Conexión al servidor verificada", - "Set as default": "Establecer como Predeterminado", - "Set CFG Scale": "Establecer la Escala CFG", - "Set Default Model": "Establecer Modelo Predeterminado", - "Set embedding model": "Establecer Modelo de Incrustación", - "Set embedding model (e.g. {{model}})": "Establecer Modelo para Incrustación (p.ej. {{model}})", - "Set Image Size": "Establecer Tamaño de Imagen", - "Set reranking model (e.g. {{model}})": "Establecer Modelo para Reclasificación (p.ej. {{model}})", - "Set Sampler": "Establecer Muestreador", - "Set Scheduler": "Establecer Programador", - "Set Steps": "Establecer Pasos", - "Set Task Model": "Establecer Modelo para Tareas", - "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.": "Establece el número de capas, que deben cargarse en la GPU. Aumentar este valor puede mejorar significativamente el rendimiento de los modelos optimizados para aceleración en GPU, pero también puede consumir más energía y recursos de la 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.": "Establece el número de hilos de trabajo utilizados para el computo. Esta opción controla cuántos hilos son usados para procesar solicitudes entrantes concurrentes. Aumentar este valor puede mejorar el rendimiento bajo cargas de trabajo de alta concurrencia, pero también puede consumir más recursos de la CPU.", - "Set Voice": "Establecer la voz", - "Set whisper model": "Establecer modelo whisper (transcripción)", - "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.": "Establece un sesgo plano contra los tokens que han aparecido al menos una vez. Un valor más alto (p.ej. 1.5) penalizará las repeticiones más fuertemente, mientras que un valor más bajo (p.ej. 0.9) será más indulgente. En 0, está deshabilitado.", - "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.": "Establece un sesgo escalado contra los tokens para penalizar las repeticiones, basado en cuántas veces han aparecido. Un valor más alto (por ejemplo, 1.5) penalizará las repeticiones más fuertemente, mientras que un valor más bajo (por ejemplo, 0.9) será más indulgente. En 0, está deshabilitado.", - "Sets how far back for the model to look back to prevent repetition.": "Establece cuántos tokens debe mirar atrás el modelo para prevenir la repetición. ", - "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.": "Establece la semilla de números aleatorios a usar para la generación. Establecer esto en un número específico hará que el modelo genere el mismo texto para el mismo prompt(prompt).", - "Sets the size of the context window used to generate the next token.": "Establece el tamaño de la ventana del contexto utilizada para generar el siguiente 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.": "Establece las secuencias de parada a usar. Cuando se encuentre este patrón, el LLM dejará de generar texto y retornará. Se pueden establecer varios patrones de parada especificando separadamente múltiples parámetros de parada en un archivo de modelo.", - "Settings": "Ajustes", - "Settings saved successfully!": "¡Ajustes guardados correctamente!", - "Share": "Compartir", - "Share Chat": "Compartir Chat", - "Share to Open WebUI Community": "Compartir con la Comunidad Open-WebUI", - "Sharing Permissions": "", - "Show": "Mostrar", - "Show \"What's New\" modal on login": "Mostrar modal \"Qué hay de Nuevo\" al iniciar sesión", - "Show Admin Details in Account Pending Overlay": "Mostrar Detalles Admin en la sobrecapa de 'Cuenta Pendiente'", - "Show All": "", - "Show Less": "", - "Show Model": "Mostrar Modelo", - "Show shortcuts": "Mostrar Atajos", - "Show your support!": "¡Muestra tu apoyo!", - "Showcased creativity": "Creatividad exhibida", - "Sign in": "Iniciar Sesión", - "Sign in to {{WEBUI_NAME}}": "Iniciar Sesión en {{WEBUI_NAME}}", - "Sign in to {{WEBUI_NAME}} with LDAP": "Iniciar Sesión en {{WEBUI_NAME}} con LDAP", - "Sign Out": "Cerrar Sesión", - "Sign up": "Crear una Cuenta", - "Sign up to {{WEBUI_NAME}}": "Crear una Cuenta en {{WEBUI_NAME}}", - "Signing in to {{WEBUI_NAME}}": "Iniciando Sesión en {{WEBUI_NAME}}", - "sk-1234": "sk-1234", - "Sougou Search API sID": "", - "Sougou Search API SK": "", - "Source": "Fuente", - "Speech Playback Speed": "Velocidad de Reproducción de Voz", - "Speech recognition error: {{error}}": "Error en reconocimiento de voz: {{error}}", - "Speech-to-Text Engine": "Motor Voz a Texto(STT)", - "Stop": "Detener", - "Stop Sequence": "Secuencia de Parada", - "Stream Chat Response": "Transmisión Directa de la Respuesta del Chat", - "STT Model": "Modelo STT", - "STT Settings": "Ajustes Voz a Texto (STT)", - "Stylized PDF Export": "", - "Subtitle (e.g. about the Roman Empire)": "Subtítulo (p.ej. sobre el Imperio Romano)", - "Success": "Correcto", - "Successfully updated.": "Actualizado correctamente.", - "Suggested": "Sugerido", - "Support": "Soportar", - "Support this plugin:": "Apoya este plugin:", - "Sync directory": "Sincroniza Directorio", - "System": "Sistema", - "System Instructions": "Instrucciones del sistema", - "System Prompt": "Prompt del sistema", - "Tags": "Etiquetas", - "Tags Generation": "Generación de Etiquetas", - "Tags Generation Prompt": "Prompt para la Generación de Etiquetas", - "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 Muestreo de cola libre(TFS_Z) es usado para reducir el impacto de los tokens menos probables en la salida. Un valor más alto (p.ej. 2.0) reduce más fuertemente el impacto, mientras que un valor de 1.0 deshabilita este ajuste.", - "Talk to model": "Hablar con el modelo", - "Tap to interrupt": "Toca para interrumpir", - "Tasks": "Tareas", - "Tavily API Key": "Clave API de Tavily", - "Tavily Extract Depth": "Parámetro Extract Depth de Taviliy", - "Tell us more:": "Dinos algo más:", - "Temperature": "Temperatura", - "Template": "Plantilla", - "Temporary Chat": "Chat Temporal", - "Text Splitter": "Divisor de Texto", - "Text-to-Speech Engine": "Motor Texto a Voz(TTS)", - "Tfs Z": "TFS Z", - "Thanks for your feedback!": "¡Gracias por tu comentario!", - "The Application Account DN you bind with for search": "Cuenta DN de la aplicación vinculada para búsqueda", - "The base to search for users": "Base para buscar usuarios", - "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.": "El tamaño de lote determina cuántas solicitudes de texto se procesan juntas de una vez. Un tamaño de lote más alto puede aumentar el rendimiento y la velocidad del modelo, pero también requiere más memoria.", - "The developers behind this plugin are passionate volunteers from the community. If you find this plugin helpful, please consider contributing to its development.": "Quienes desarollaron este complemento son apasionados voluntarios/as de la comunidad. Si este complemento te es útil, por favor considera contribuir a su desarrollo.", - "The evaluation leaderboard is based on the Elo rating system and is updated in real-time.": "La tabla clasificatoria de evaluación se basa en el sistema de clasificación Elo y se actualiza en tiempo real.", - "The LDAP attribute that maps to the mail that users use to sign in.": "El atributo LDAP que mapea el correo que los usuarios utilizan para iniciar sesión.", - "The LDAP attribute that maps to the username that users use to sign in.": "El atributo LDAP que mapea el nombre de usuario que los usuarios utilizan para iniciar sesión.", - "The leaderboard is currently in beta, and we may adjust the rating calculations as we refine the algorithm.": "La tabla clasificatoria está actualmente en beta, por lo que los cálculos de clasificación pueden reajustarse a medida que se refina el algoritmo.", - "The maximum file size in MB. If the file size exceeds this limit, the file will not be uploaded.": "El tamaño máximo del archivo en MB. Si el tamaño del archivo supera este límite, el archivo no se subirá.", - "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 número máximo de archivos que se pueden utilizar a la vez en el chat. Si se supera este límite, los archivos no se subirán.", - "The score should be a value between 0.0 (0%) and 1.0 (100%).": "La puntuación debe ser un valor entre 0.0 (0%) y 1.0 (100%).", - "The temperature of the model. Increasing the temperature will make the model answer more creatively.": "La temperatura del modelo. Aumentar la temperatura hará que el modelo responda de forma más creativa.", - "Theme": "Tema", - "Thinking...": "Pensando...", - "This action cannot be undone. Do you wish to continue?": "Esta acción no se puede deshacer. ¿Desea continuar?", - "This channel was created on {{createdAt}}. This is the very beginning of the {{channelName}} channel.": "Este canal fue creado el {{createdAt}}. Este es el comienzo del canal {{channelName}}.", - "This chat won’t appear in history and your messages will not be saved.": "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.": "", - "This option controls how many tokens are preserved when refreshing the context. For example, if set to 2, the last 2 tokens of the conversation context will be retained. Preserving context can help maintain the continuity of a conversation, but it may reduce the ability to respond to new topics.": "Esta opción controla cuántos tokens se conservan cuando se actualiza el contexto. Por ejemplo, si se establece en 2, se conservarán los primeros 2 tokens del contexto de la conversación. Conservar el contexto puede ayudar a mantener la continuidad de una conversación, pero puede reducir la habilidad para responder a nuevos temas.", - "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.": "Esta opción establece el número máximo de tokens que el modelo puede generar en sus respuestas. Aumentar este límite permite al modelo proporcionar respuestas más largas, pero también puede aumentar la probabilidad de que se genere contenido inútil o irrelevante.", - "This option will delete all existing files in the collection and replace them with newly uploaded files.": "Esta opción eliminará todos los archivos existentes en la colección y los reemplazará con los nuevos archivos subidos.", - "This response was generated by \"{{model}}\"": "Esta respuesta fue generada por \"{{model}}\"", - "This will delete": "Esto eliminará", - "This will delete {{NAME}} and all its contents.": "Esto eliminará {{NAME}} y todo su contenido.", - "This will delete all models including custom models": "Esto eliminará todos los modelos, incluidos los modelos personalizados", - "This will delete all models including custom models and cannot be undone.": "Esto eliminará todos los modelos, incluidos los modelos personalizados y no se puede deshacer.", - "This will reset the knowledge base and sync all files. Do you wish to continue?": "Esto reinicializará la base de conocimientos y sincronizará todos los archivos. ¿Desea continuar?", - "Thorough explanation": "Explicación exhaustiva", - "Thought for {{DURATION}}": "Pensando durante {{DURATION}}", - "Thought for {{DURATION}} seconds": "Persando durante {{DURATION}} segundos", - "Tika": "Tika", - "Tika Server URL required.": "URL del Servidor Tika necesaria", - "Tiktoken": "Tiktoken", - "Tip: Update multiple variable slots consecutively by pressing the tab key in the chat input after each replacement.": "Consejo: Actualiza múltiples variables encastradas en el chat consecutivamente pulsando la tecla tab en el chat después de cada reemplazo.", - "Title": "Título", - "Title (e.g. Tell me a fun fact)": "Título (p.ej. cuéntame un hecho divertidado)", - "Title Auto-Generation": "AutoGeneración de Títulos", - "Title cannot be an empty string.": "El título no puede ser una cadena vacía.", - "Title Generation": "Generación de Títulos", - "Title Generation Prompt": "Prompt para la Generación de Título", - "TLS": "TLS", - "To access the available model names for downloading,": "Para acceder a los nombres de modelos disponibles para descargar,", - "To access the GGUF models available for downloading,": "Para acceder a los modelos GGUF disponibles para descargar,", - "To access the WebUI, please reach out to the administrator. Admins can manage user statuses from the Admin Panel.": "Para acceder a WebUI, por favor contacte con Admins. Los administradores pueden gestionar los estados de los usuarios esde el panel de administración.", - "To attach knowledge base here, add them to the \"Knowledge\" workspace first.": "Para adjuntar la base de conocimientos aquí, primero añadirla a \"Conocimiento\" en el área de trabajo.", - "To learn more about available endpoints, visit our documentation.": "Para aprender más sobre los endpoints disponibles, visite nuestra documentación.", - "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.": "Para proteger tu privacidad, de tu realimentación solo se comparten las calificaciones, IDs de modelo, etiquetas y metadatos; tus chat registrados permanecen privados y no se incluyen.", - "To select actions here, add them to the \"Functions\" workspace first.": "Para seleccionar acciones aquí, primero añadirlas a \"Funciones\" en el área de trabajo.", - "To select filters here, add them to the \"Functions\" workspace first.": "Para seleccionar filtros aquí, primero añadirlos a \"Funciones\" en el área de trabajo.", - "To select toolkits here, add them to the \"Tools\" workspace first.": "Para seleccionar herramientas aquí, primero añadelas a \"Herramientas\" en el área de trabajo.", - "Toast notifications for new updates": "Notificaciones emergentes para nuevas actualizaciones", - "Today": "Hoy", - "Toggle settings": "Alternar Ajustes", - "Toggle sidebar": "Alternar Barra Lateral", - "Token": "Token", - "Tokens To Keep On Context Refresh (num_keep)": "Tokens a Mantener al Actualizar el Contexto (num_keep)", - "Too verbose": "Demasiado detallado", - "Tool created successfully": "Herramienta creada correctamente", - "Tool deleted successfully": "Herramienta eliminada correctamente", - "Tool Description": "Descripción de la Herramienta", - "Tool ID": "ID de la Herramienta", - "Tool imported successfully": "Herramienta importada correctamente", - "Tool Name": "Nombre de la Herramienta", - "Tool Servers": "Servidores de Herraientas", - "Tool updated successfully": "Herramienta actualizada correctamente", - "Tools": "Herramientas", - "Tools Access": "Acceso a Herramientas", - "Tools are a function calling system with arbitrary code execution": "Las herramientas son un sistema de llamada de funciones con ejecución de código arbitrario", - "Tools Function Calling Prompt": "Prompt para la Función de Llamada a las Herramientas", - "Tools have a function calling system that allows arbitrary code execution.": "Las herramientas tienen un sistema de llamada de funciones que permite la ejecución de código arbitrario.", - "Tools Public Sharing": "", - "Top K": "Top K", - "Top K Reranker": "Top K Reclasificador", - "Top P": "Top P", - "Transformers": "Transformadores", - "Trouble accessing Ollama?": "¿Problemas para acceder a Ollama?", - "Trust Proxy Environment": "Entorno Proxy Confiable", - "TTS Model": "Modelo TTS", - "TTS Settings": "Ajustes Texto a Voz (TTS)", - "TTS Voice": "Voz TTS", - "Type": "Tipo", - "Type Hugging Face Resolve (Download) URL": "Escribir la URL de Hugging Face Resolve (Descarga)", - "Uh-oh! There was an issue with the response.": "¡Vaya! Hubo un problema con la respuesta.", - "UI": "IU", - "Unarchive All": "Desarchivar Todo", - "Unarchive All Archived Chats": "Desarchivar Todos los Chats Archivados", - "Unarchive Chat": "Desarchivar Chat", - "Unlock mysteries": "Desbloquear misterios", - "Unpin": "Desfijar", - "Unravel secrets": "Desentrañar secretos", - "Untagged": "Desetiquetado", - "Untitled": "", - "Update": "Actualizar", - "Update and Copy Link": "Actualizar y Copiar Enlace", - "Update for the latest features and improvements.": "Actualizar para las últimas características y mejoras.", - "Update password": "Actualizar contraseña", - "Updated": "Actualizado", - "Updated at": "Actualizado el", - "Updated At": "Actualizado El", - "Upgrade to a licensed plan for enhanced capabilities, including custom theming and branding, and dedicated support.": "Mejore a un plan con licencia para tener capacidades mejoradas, incluyendo personalización de marca e interface, y soporte dedicado.", - "Upload": "Subir", - "Upload a GGUF model": "Subir un modelo GGUF", - "Upload Audio": "", - "Upload directory": "Directorio de Subidas", - "Upload files": "Subir archivos", - "Upload Files": "Subir Archivos", - "Upload Pipeline": "Subir Tubería", - "Upload Progress": "Progreso de la Subida", - "URL": "URL", - "URL Mode": "Modo URL", - "Use '#' in the prompt input to load and include your knowledge.": "Utilizar '#' en el prompt para cargar e incluir tu conocimiento.", - "Use Gravatar": "Usar Gravatar", - "Use groups to group your users and assign permissions.": "Usar grupos para agrupar a usuarios y asignar permisos.", - "Use Initials": "Usar Iniciales", - "Use no proxy to fetch page contents.": "No usar proxy para extraer contenidos", - "Use proxy designated by http_proxy and https_proxy environment variables to fetch page contents.": "Usar el proxy asignado en las variables del entorno http_proxy y/o https_proxy para extraer contenido", - "use_mlock (Ollama)": "use_mlock (Ollama)", - "use_mmap (Ollama)": "use_mmap (Ollama)", - "user": "usuario", - "User": "Usuario", - "User location successfully retrieved.": "Ubicación de usuario obtenida correctamente.", - "User Webhooks": "Usuario Webhooks", - "Username": "Nombre de Usuario", - "Users": "Usuarios", - "Using the default arena model with all models. Click the plus button to add custom models.": "Usando el modelo de arena predeterminado con todos los modelos. Pulsar en el botón + para agregar modelos personalizados.", - "Utilize": "Utilizar", - "Valid time units:": "Unidades de tiempo válidas:", - "Valves": "Válvulas", - "Valves updated": "Válvulas actualizadas", - "Valves updated successfully": "Válvulas actualizados correctamente", - "variable": "variable", - "variable to have them replaced with clipboard content.": "hace que la variable sea reemplazada con el contenido del portapapeles.", - "Verify Connection": "Verificar Conexión", - "Verify SSL Certificate": "", - "Version": "Versión", - "Version {{selectedVersion}} of {{totalVersions}}": "Versión {{selectedVersion}} de {{totalVersions}}", - "View Replies": "Ver Respuestas", - "View Result from **{{NAME}}**": "", - "Visibility": "Visibilidad", - "Voice": "Voz", - "Voice Input": "Entrada de Voz", - "Warning": "Aviso", - "Warning:": "Aviso:", - "Warning: Enabling this will allow users to upload arbitrary code on the server.": "Aviso: Habilitar esto permitirá a los usuarios subir código arbitrario al servidor.", - "Warning: If you update or change your embedding model, you will need to re-import all documents.": "Aviso: Si actualizas o cambias el modelo de incrustacción, necesitarás re-importar todos los documentos.", - "Warning: Jupyter execution enables arbitrary code execution, posing severe security risks—proceed with extreme caution.": "Aviso: La ejecución Jupyter habilita la ejecución de código arbitrario, planteando graves riesgos de seguridad; Proceder con extrema precaución.", - "Web": "Web", - "Web API": "API Web", - "Web Loader Engine": "", - "Web Search": "Búsqueda Web", - "Web Search Engine": "Motor Búsqueda Web", - "Web Search in Chat": "Búsqueda Web en Chat", - "Web Search Query Generation": "Generación de Consulta Búsqueda Web", - "Webhook URL": "URL EnganchesWeb(Webhook)", - "WebUI Settings": "WebUI Ajustes", - "WebUI URL": "WebUI URL", - "WebUI will make requests to \"{{url}}\"": "", - "WebUI will make requests to \"{{url}}/api/chat\"": "WebUI hará solicitudes a \"{{url}}/api/chat\"", - "WebUI will make requests to \"{{url}}/chat/completions\"": "WebUI hará solicitudes a \"{{url}}/chat/completions\"", - "What are you trying to achieve?": "¿Qué estás tratando de conseguir?", - "What are you working on?": "¿En qué estás trabajando?", - "What’s New in": "Que hay de Nuevo en", - "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.": "Cuando está habilitado, el modelo responderá a cada mensaje de chat en tiempo real, generando una respuesta tan pronto como se envíe un mensaje. Este modo es útil para aplicaciones de chat en vivo, pero puede afectar al rendimiento en equipos más lentos.", - "wherever you are": "dondequiera que estés", - "Whisper (Local)": "Whisper (Local)", - "Why?": "¿Por qué?", - "Widescreen Mode": "Modo Pantalla Ancha", - "Won": "Ganó", - "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.": "Trabaja conjuntamente con top-k. Un valor más alto (p.ej. 0.95) dará lugar a un texto más diverso, mientras que un valor más bajo (p.ej. 0.5) generará un texto más centrado y conservador.", - "Workspace": "Espacio de Trabajo", - "Workspace Permissions": "Permisos del Espacio de Trabajo", - "Write": "Escribir", - "Write a prompt suggestion (e.g. Who are you?)": "Escribe una sugerencia de prompt (p.ej. ¿quién eres?)", - "Write a summary in 50 words that summarizes [topic or keyword].": "Escribe un resumen en 50 palabras que resuma [tema o palabra clave].", - "Write something...": "Escribe algo...", - "Write your model template content here": "Escribe el contenido de la plantilla de tu modelo aquí", - "Yacy Instance URL": "", - "Yacy Password": "", - "Yacy Username": "", - "Yesterday": "Ayer", - "You": "Tu", - "You are currently using a trial license. Please contact support to upgrade your license.": "Actualmente estás utilizando una licencia de prueba. Por favor, para actualizar su licencia contacta con soporte.", - "You can only chat with a maximum of {{maxCount}} file(s) at a time.": "Solo puedes chatear con un máximo de {{maxCount}} archivo(s) a la vez.", - "You can personalize your interactions with LLMs by adding memories through the 'Manage' button below, making them more helpful and tailored to you.": "Puedes personalizar tus interacciones con los LLMs añadiendo memorias a través del botón 'Gestionar' debajo, haciendo que te sean más útiles y personalizados.", - "You cannot upload an empty file.": "No puedes subir un archivo vacío.", - "You do not have permission to upload files.": "No tienes permiso para subir archivos.", - "You have no archived conversations.": "No tienes conversaciones archivadas.", - "You have shared this chat": "Has compartido esta conversación", - "You're a helpful assistant.": "Eres un asistente atento, amable y servicial.", - "You're now logged in.": "Has iniciado sesión.", - "Your account status is currently pending activation.": "Tu cuenta está pendiente de activación.", - "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.": "Tu entera contribución irá directamente al desarrollador del complemento; Open-WebUI no recibe ningún porcentaje. Sin embargo, la plataforma de financiación elegida podría tener sus propias tarifas.", - "Youtube": "Youtube", - "Youtube Language": "Youtube Idioma", - "Youtube Proxy URL": "Youtube URL Proxy" + "-1 for no limit, or a positive integer for a specific limit": "-1 para ilimitado, o un número entero positivo para un límite específico.", + "'s', 'm', 'h', 'd', 'w' or '-1' for no expiration.": "'s', 'm', 'h', 'd', 'w' o '-1' para evitar expiración.", + "(e.g. `sh webui.sh --api --api-auth username_password`)": "(p.ej. `sh webui.sh --api --api-auth username_password`)", + "(e.g. `sh webui.sh --api`)": "(p.ej. `sh webui.sh --api`)", + "(latest)": "(último)", + "(leave blank for to use commercial endpoint)": "", + "(Ollama)": "(Ollama)", + "{{ models }}": "{{ models }}", + "{{COUNT}} Available Tools": "", + "{{COUNT}} hidden lines": "{{COUNT}} líneas ocultas", + "{{COUNT}} Replies": "{{COUNT}} Respuestas", + "{{user}}'s Chats": "Chats de {{user}}", + "{{webUIName}} Backend Required": "{{webUIName}} Servidor Requerido", + "*Prompt node ID(s) are required for image generation": "Los ID de nodo son requeridos para la generación de imágenes", + "A new version (v{{LATEST_VERSION}}) is now available.": "Nueva versión (v{{LATEST_VERSION}}) disponible.", + "A task model is used when performing tasks such as generating titles for chats and web search queries": "El modelo de tareas realiza tareas como la generación de títulos para chats y consultas de búsqueda web", + "a user": "un usuario", + "About": "Acerca de", + "Accept autocomplete generation / Jump to prompt variable": "Aceptar generación de autocompletado / Saltar a prompt variable", + "Access": "Acceso", + "Access Control": "Control de Acceso", + "Accessible to all users": "Accesible para todos los usuarios", + "Account": "Cuenta", + "Account Activation Pending": "Activación de cuenta Pendiente", + "Accurate information": "Información precisa", + "Actions": "Acciones", + "Activate": "Activar", + "Activate this command by typing \"/{{COMMAND}}\" to chat input.": "Activar este comando escribiendo \"/{{COMMAND}}\" en el chat", + "Active Users": "Usuarios activos", + "Add": "Añadir", + "Add a model ID": "Añadir un ID de modelo", + "Add a short description about what this model does": "Añadir una breve descripción sobre lo que hace este modelo", + "Add a tag": "Añadir una etiqueta", + "Add Arena Model": "Añadir modelo a la Arena", + "Add Connection": "Añadir Conexión", + "Add Content": "Añadir Contenido", + "Add content here": "Añadir contenido aquí", + "Add custom prompt": "Añadir un prompt personalizado", + "Add Files": "Añadir Archivos", + "Add Group": "Añadir Grupo", + "Add Memory": "Añadir Memoria", + "Add Model": "Añadir Modelo", + "Add Reaction": "Añadir Reacción", + "Add Tag": "Añadir etiqueta", + "Add Tags": "Añadir etiquetas", + "Add text content": "Añade contenido de texto", + "Add User": "Añadir Usuario", + "Add User Group": "Añadir grupo de usuarios", + "Adjusting these settings will apply changes universally to all users.": "El ajuste de estas opciones se aplicará globalmente a todos los usuarios.", + "admin": "admin", + "Admin": "Admin", + "Admin Panel": "Administración", + "Admin Settings": "Ajustes de Admin", + "Admins have access to all tools at all times; users need tools assigned per model in the workspace.": "Los administradores tienen acceso a todas las herramientas en todo momento; los usuarios necesitan que los modelos tengan asignadas las herramientas en el area de trabajo.", + "Advanced Parameters": "Parámetros Avanzados", + "Advanced Params": "Parámetros Avanzados", + "All": "Todos", + "All Documents": "Todos los Documentos", + "All models deleted successfully": "Todos los modelos borrados correctamnete", + "Allow Call": "Permitir Llamada", + "Allow Chat Controls": "Permitir Controles del Chat", + "Allow Chat Delete": "Permitir Borrar Chat", + "Allow Chat Deletion": "Permitir Borrado de Chat", + "Allow Chat Edit": "Pemritir Editar Chat", + "Allow Chat Export": "", + "Allow Chat Share": "", + "Allow File Upload": "Permitir Subida de Archivos", + "Allow Multiple Models in Chat": "", + "Allow non-local voices": "Permitir voces no locales", + "Allow Speech to Text": "", + "Allow Temporary Chat": "Permitir Chat Temporal", + "Allow Text to Speech": "", + "Allow User Location": "Permitir Ubicación de Usuario", + "Allow Voice Interruption in Call": "Permitir Interrupción de Voz en Llamada", + "Allowed Endpoints": "Endpoints Permitidos", + "Already have an account?": "¿Ya tienes una cuenta?", + "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 a top_p, como objetivo garantizar un equilibrio entre calidad y variedad. El parámetro p representa la mínima probabilidad para que un token sea considerado, relativo a la probabilidad del token más probable. Por ejemplo, con p=0.05 y la probabilidad del token más probable de 0.9, los resultados (logits) con un valor inferior a 0.045 son descartados.", + "Always": "Siempre", + "Always Collapse Code Blocks": "Plegar Siempre los Bloques de Código", + "Always Expand Details": "Expandir Siempre Detalles", + "Always Play Notification Sound": "", + "Amazing": "Emocionante", + "an assistant": "un asistente", + "Analyzed": "Analizado", + "Analyzing...": "Analizando..", + "and": "y", + "and {{COUNT}} more": "y {{COUNT}} más", + "and create a new shared link.": "y crear un nuevo enlace compartido.", + "Android": "", + "API Base URL": "URL Base API", + "API Key": "Clave API ", + "API Key created.": "Clave API creada.", + "API Key Endpoint Restrictions": "Clave API para Endpoints Restringidos", + "API keys": "Claves API", + "Application DN": "Aplicacion DN", + "Application DN Password": "Contraseña Aplicacion DN", + "applies to all users with the \"user\" role": "se aplica a todos los usuarios con el rol \"user\" ", + "April": "Abril", + "Archive": "Archivar", + "Archive All Chats": "Archivar Todos los Chats", + "Archived Chats": "Chats archivados", + "archived-chat-export": "exportar chats archivados", + "Are you sure you want to clear all memories? This action cannot be undone.": "¿Seguro que quieres borrar todas las memorias? (¡esta acción NO se puede deshacer!)", + "Are you sure you want to delete this channel?": "¿Seguro de que quieres eliminar este canal?", + "Are you sure you want to delete this message?": "¿Seguro de que quieres eliminar este mensaje? ", + "Are you sure you want to unarchive all archived chats?": "¿Seguro de que quieres desarchivar todos los chats archivados?", + "Are you sure you want to update this user's role to **{{ROLE}}**?": "", + "Are you sure?": "¿Estás seguro?", + "Arena Models": "Arena de Modelos", + "Artifacts": "Artefactos", + "Ask": "Preguntar", + "Ask a question": "Haz una pregunta", + "Assistant": "Asistente", + "Attach file from knowledge": "Adjuntar archivo desde conocimiento", + "Attention to detail": "Atención al detalle", + "Attribute for Mail": "Atributo para Correo", + "Attribute for Username": "Atributo para Nombre de Usuario", + "Audio": "Audio", + "August": "Agosto", + "Auth": "Autorización", + "Authenticate": "Autentificar", + "Authentication": "Autenticación", + "Auto": "Auto", + "Auto-Copy Response to Clipboard": "AutoCopiado de respuesta al Portapapeles", + "Auto-playback response": "Reproducir Respuesta automáticamente", + "Autocomplete Generation": "Generación de Autocompletado", + "Autocomplete Generation Input Max Length": "Max. Longitud de Entrada en Generación de Autocompletado", + "Automatic1111": "AUTOMATIC1111", + "AUTOMATIC1111 Api Auth String": "Auth API para AUTOMATIC1111", + "AUTOMATIC1111 Base URL": "URL Base de AUTOMATIC1111", + "AUTOMATIC1111 Base URL is required.": "la URL Base de AUTOMATIC1111 es necesaria.", + "Available list": "Lista disponible", + "Available Tools": "Herramientas Disponibles", + "available!": "¡disponible!", + "Awful": "Horrible", + "Azure AI Speech": "Voz Azure AI", + "Azure Region": "Región de Azure", + "Back": "Volver", + "Bad Response": "Mala Respuesta", + "Banners": "Banners", + "Base Model (From)": "Modelo Base (desde)", + "Batch Size (num_batch)": "Tamaño de Lote (num_batch)", + "before": "antes", + "Being lazy": "Ser perezoso", + "Beta": "Beta", + "Bing Search V7 Endpoint": "Endpoint de Bing Search V7", + "Bing Search V7 Subscription Key": "Clave de Suscripción de Bing Search V7", + "Bocha Search API Key": "Clave API de Bocha Search", + "Boosting or penalizing specific tokens for constrained responses. Bias values will be clamped between -100 and 100 (inclusive). (Default: none)": "Impulsando o penalizando tokens específicos para respuestas restringidas. Los valores de sesgo se limitarán entre -100 y 100 (inclusive). (Por defecto: ninguno)", + "Both Docling OCR Engine and Language(s) must be provided or both left empty.": "", + "Brave Search API Key": "Clave API de Brave Search", + "By {{name}}": "Por {{name}}", + "Bypass Embedding and Retrieval": "Evitar Incrustración y Recuperación", + "Calendar": "Calendario", + "Call": "Llamada", + "Call feature is not supported when using Web STT engine": "La funcionalidad de Llamada no está soportada cuando se usa el motor Web STT", + "Camera": "Cámara", + "Cancel": "Cancelar", + "Capabilities": "Capacidades", + "Capture": "Captura", + "Capture Audio": "", + "Certificate Path": "Ruta a Certificado", + "Change Password": "Cambiar Contraseña", + "Channel Name": "Nombre del Canal", + "Channels": "Canal", + "Character": "Carácter", + "Character limit for autocomplete generation input": "Límite de caracteres de entrada de la generación de autocompletado", + "Chart new frontiers": "Trazar nuevas fronteras", + "Chat": "Chat", + "Chat Background Image": "Imágen de Fondo del Chat", + "Chat Bubble UI": "Interface de Chat tipo Burbuja", + "Chat Controls": "Controles de chat", + "Chat direction": "Dirección de Chat", + "Chat Overview": "Vista General del Chat", + "Chat Permissions": "Permisos del Chat", + "Chat Tags Auto-Generation": "AutoGeneración de Etiquetas de Chat", + "Chats": "Chats", + "Check Again": "Verifica de nuevo", + "Check for updates": "Buscar actualizaciones", + "Checking for updates...": "Buscando actualizaciones...", + "Choose a model before saving...": "Escoge un modelo antes de guardar...", + "Chunk Overlap": "Superposición de Fragmentos", + "Chunk Size": "Tamaño de los Fragmentos", + "Ciphers": "Cifrado", + "Citation": "Cita", + "Clear memory": "Liberar memoria", + "Clear Memory": "Liberar Memoria", + "click here": "Pulsar aquí", + "Click here for filter guides.": "Pulsar aquí para guías de filtros", + "Click here for help.": "Pulsar aquí para Ayuda.", + "Click here to": "Pulsa aquí para", + "Click here to download user import template file.": "Pulsa aquí para descargar la plantilla para importar usuarios.", + "Click here to learn more about faster-whisper and see the available models.": "Pulsa aquí para saber más sobre faster-whisper y ver los modelos disponibles.", + "Click here to see available models.": "Pulsa aquí para ver modelos disponibles.", + "Click here to select": "Pulsa aquí para seleccionar", + "Click here to select a csv file.": "Pulsa aquí para seleccionar un fichero de Valores Separados por Comas (.csv)", + "Click here to select a py file.": "Pulsa aquí para seleccionar un fichero Python (.py)", + "Click here to upload a workflow.json file.": "Pulsa aquí para subir un fichero workflow.json", + "click here.": "Pulsa aquí.", + "Click on the user role button to change a user's role.": "Pulsa en el botón rol de usuario para cambiar su rol.", + "Clipboard write permission denied. Please check your browser settings to grant the necessary access.": "Permisos de escritura del portapapeles denegado. Por favor, comprueba la configuración de tu navegador para otorgar el permiso necesario.", + "Clone": "Clonar", + "Clone Chat": "Clonar Chat", + "Clone of {{TITLE}}": "Clon de {{TITLE}}", + "Close": "Cerrar", + "Code execution": "Ejecución de Código", + "Code Execution": "Ejecución de Código", + "Code Execution Engine": "Motor de Ejecución de Código", + "Code Execution Timeout": "Tiempo límite de espera para Ejecución de Código", + "Code formatted successfully": "El codigo se ha formateado correctamente.", + "Code Interpreter": "Interprete de Código", + "Code Interpreter Engine": "Motor del Interprete de Código", + "Code Interpreter Prompt Template": "Plantilla del Prompt del Interprete de Código", + "Collapse": "Plegar", + "Collection": "Colección", + "Color": "Color", + "ComfyUI": "ComfyUI", + "ComfyUI API Key": "Clave API de ComfyUI", + "ComfyUI Base URL": "URL Base de ComfyUI", + "ComfyUI Base URL is required.": "La URL Base de ComfyUI es necesaria.", + "ComfyUI Workflow": "Flujo de Trabajo de ComfyUI", + "ComfyUI Workflow Nodes": "Nodos del Flujo de Trabajo de ComfyUI", + "Command": "Comando", + "Completions": "Cumplimientos", + "Concurrent Requests": "Número de Solicitudes Concurrentes", + "Configure": "Configurar", + "Confirm": "Confirmar", + "Confirm Password": "Confirma Contraseña", + "Confirm your action": "Confirma tu acción", + "Confirm your new password": "Confirma tu nueva contraseña", + "Connect to your own OpenAI compatible API endpoints.": "Conectar a tus propios endpoints compatibles API OpenAI.", + "Connect to your own OpenAPI compatible external tool servers.": "Conectar a tus propios endpoints externos de herramientas compatibles API OpenAI.", + "Connection failed": "Conexión fallida", + "Connection successful": "Conexión realizada", + "Connections": "Conexiones", + "Connections saved successfully": "Conexiones grabadas correctamente", + "Constrains effort on reasoning for reasoning models. Only applicable to reasoning models from specific providers that support reasoning effort.": "Limita el esfuerzo de razonamiento para los modelos de razonamiento. Solo aplicable a modelos de razonamiento de proveedores específicos que soportan el esfuerzo de razonamiento.", + "Contact Admin for WebUI Access": "Contacta con Admin para obtener acceso a WebUI", + "Content": "Contenido", + "Content Extraction Engine": "Motor para la Extracción de Contenido", + "Context Length": "Longitud del Contexto", + "Continue Response": "Continuar Respuesta", + "Continue with {{provider}}": "Continuar con {{provider}}", + "Continue with Email": "Continuar con Email", + "Continue with LDAP": "Continuar con 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.": "Controlar como se divide el texto del mensaje para las solicitudes de locución (TTS). 'Punctuation' divide oraciones, 'paragraphs' divide párrafos y 'none' mantiene el mensaje como una sola cadena.", + "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.": "Controla la repetición de secuencias de tokens en el texto generado. Un valor más alto (p.ej., 1.5) penalizá más las repeticiones, mientras que un valor más bajo (p.ej., 1.1) sería más permisivo. En 1, el control está desactivado.", + "Controls": "Controles", + "Controls the balance between coherence and diversity of the output. A lower value will result in more focused and coherent text.": "Controles del equilibrio entre coherencia y diversidad de la salida. Un valor más bajo produce un texto más centrado y coherente.", + "Copied": "Copiado", + "Copied shared chat URL to clipboard!": "¡Copiada al portapapeles la URL del chat compartido!", + "Copied to clipboard": "Copiado al portapapeles", + "Copy": "Copiar", + "Copy Formatted Text": "", + "Copy last code block": "Copia el último bloque de código", + "Copy last response": "Copia la última respuesta", + "Copy Link": "Copiar enlace", + "Copy to clipboard": "Copia a portapapeles", + "Copying to clipboard was successful!": "¡La copia al portapapeles se ha realizado correctamente!", + "CORS must be properly configured by the provider to allow requests from Open WebUI.": "El protocolo CORS debe estar configurado correctamente por el proveedor para permitir solicitudes desde Open WebUI.", + "Create": "Crear", + "Create a knowledge base": "Crear Base de Conocimiento", + "Create a model": "Crear Modelo", + "Create Account": "Crear Cuenta", + "Create Admin Account": "Crear Cuenta Administrativa", + "Create Channel": "Crear Canal", + "Create Group": "Crear Grupo", + "Create Knowledge": "Crear Conocimiento", + "Create new key": "Crear Nueva Clave", + "Create new secret key": "Crear Nueva Clave Secreta", + "Create Note": "", + "Create your first note by clicking on the plus button below.": "", + "Created at": "Creado en", + "Created At": "Creado En", + "Created by": "Creado por", + "CSV Import": "Importar CSV", + "Ctrl+Enter to Send": "'Ctrl+Enter' para Enviar", + "Current Model": "Modelo Actual", + "Current Password": "Contraseña Actual", + "Custom": "Personalizado", + "Danger Zone": "Zona Peligrosa", + "Dark": "Oscuro", + "Database": "Base de datos", + "December": "Diciembre", + "Default": "Predeterminado", + "Default (Open AI)": "Predeterminado (Open AI)", + "Default (SentenceTransformers)": "Predeterminado (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.": "El modo Predeterminado funciona con una amplia gama de modelos llamando a las herramientas antes de la ejecución. El modo Nativo aprovecha la capacidad de llamada a herramientas integrada en el modelo, pero requiere que el modelo soporte esta función de manera inherente.", + "Default Model": "Modelo Predeterminado", + "Default model updated": "El modelo Predeterminado ha sido actualizado", + "Default Models": "Modelos Predeterminados", + "Default permissions": "Permisos Predeterminados", + "Default permissions updated successfully": "Permisos predeterminados actualizados correctamente", + "Default Prompt Suggestions": "Sugerencias Predeterminadas de Prompt", + "Default to 389 or 636 if TLS is enabled": "Predeterminado a 389, o 636 si TLS está habilitado", + "Default to ALL": "Predeterminado a TODOS", + "Default to segmented retrieval for focused and relevant content extraction, this is recommended for most cases.": "Por defecto está predeterminada una segmentación de la recuperación para una extracción de contenido centrado y relevante, recomendado para la mayoría de los casos.", + "Default User Role": "Rol predeterminado de los nuevos usuarios", + "Delete": "Borrar", + "Delete a model": "Borrar un modelo", + "Delete All Chats": "Borrar todos los chats", + "Delete All Models": "Borrar todos los modelos", + "Delete chat": "Borrar chat", + "Delete Chat": "Borrar Chat", + "Delete chat?": "¿Borrar el chat?", + "Delete folder?": "¿Borrar carpeta?", + "Delete function?": "Borrar la función?", + "Delete Message": "Borrar mensaje", + "Delete message?": "¿Borrar mensaje?", + "Delete note?": "", + "Delete prompt?": "¿Borrar el prompt?", + "delete this link": "Borrar este enlace", + "Delete tool?": "¿Borrar la herramienta?", + "Delete User": "Borrar Usuario", + "Deleted {{deleteModelTag}}": "{{deleteModelTag}} Borrado", + "Deleted {{name}}": "{{nombre}} Borrado", + "Deleted User": "Usuario Borrado", + "Describe your knowledge base and objectives": "Describe tu Base de Conocimientos y sus objetivos", + "Description": "Descripción", + "Detect Artifacts Automatically": "Detectar Artefactos Automáticamente", + "Didn't fully follow instructions": "No seguiste completamente las instrucciones", + "Direct": "Directo", + "Direct Connections": "Conexiones Directas", + "Direct Connections allow users to connect to their own OpenAI compatible API endpoints.": "Las Conexiones Directas permiten a los usuarios conectar a sus propios endpoints compatibles API OpenAI.", + "Direct Connections settings updated": "Se actualizaron las configuraciones de las Conexiones Directas", + "Direct Tool Servers": "Servidores de Herramientas Directos", + "Disabled": "Deshabilitado", + "Discover a function": "Descubrir Funciónes", + "Discover a model": "Descubrir Modelos", + "Discover a prompt": "Descubrir Prompts", + "Discover a tool": "Descubrir Herramientas", + "Discover how to use Open WebUI and seek support from the community.": "Descubre cómo usar Open WebUI y busca Soporte Comunitario.", + "Discover wonders": "Descubre Maravillas", + "Discover, download, and explore custom functions": "Descubre, descarga y explora funciones personalizadas", + "Discover, download, and explore custom prompts": "Descubre, descarga, y explora prompts personalizados", + "Discover, download, and explore custom tools": "Descubre, descarga y explora herramientas personalizadas", + "Discover, download, and explore model presets": "Descubre, descarga y explora modelos con preajustados", + "Dismissible": "Desestimable", + "Display": "Mostrar", + "Display Emoji in Call": "Muestra Emojis en Llamada", + "Display the username instead of You in the Chat": "Mostrar en el chat el nombre de usuario en lugar del genérico Tu", + "Displays citations in the response": "Mostrar citas en la respuesta", + "Dive into knowledge": "Sumérgete en el conocimiento", + "Do not install functions from sources you do not fully trust.": "¡No instalar funciones de fuentes en las que que no se confíe totalmente!", + "Do not install tools from sources you do not fully trust.": "¡No instalar herramientas de fuentes en las que no se confíe totalmente!", + "Docling": "Docling", + "Docling Server URL required.": "Docling URL del servidor necesaria.", + "Document": "Documento", + "Document Intelligence": "Azure Doc Intelligence", + "Document Intelligence endpoint and key required.": "Es neceario un endpoint y clave de Azure Document Intelligence.", + "Documentation": "Documentación", + "Documents": "Documentos", + "does not make any external connections, and your data stays securely on your locally hosted server.": "no se realiza ninguna conexión externa y tus datos permanecen seguros alojados localmente en tu servidor.", + "Domain Filter List": "Lista de Filtrado de Dominio", + "Don't have an account?": "¿No tienes una cuenta?", + "don't install random functions from sources you don't trust.": "¡no instalar funciones desconocidas de fuentes en las que no se confíe!", + "don't install random tools from sources you don't trust.": "¡no instalar herramientas desconocidas de fuentes en las que no se confíe!", + "Don't like the style": "¿No te gusta el estilo?", + "Done": "Hecho", + "Download": "Descargar", + "Download as SVG": "Descargar como SVG", + "Download canceled": "Descarga cancelada", + "Download Database": "Descargar Base de Datos", + "Drag and drop a file to upload or select a file to view": "Arrastra y suelta un archivo para subirlo o selecciona uno para verlo", + "Draw": "Dibujar", + "Drop any files here to upload": "", + "e.g. '30s','10m'. Valid time units are 's', 'm', 'h'.": "p.ej. '30s','10m'. Unidades de tiempo válidas son 's', 'm', 'h'.", + "e.g. \"json\" or a JSON schema": "p.ej. \"json\" o un esquema JSON", + "e.g. 60": "p.ej. 60", + "e.g. A filter to remove profanity from text": "p.ej. Un filtro para eliminar malas palabras del texto", + "e.g. My Filter": "p.ej. Mi Filtro", + "e.g. My Tools": "p.ej. Mis Herramientas", + "e.g. my_filter": "p.ej. mi_filtro", + "e.g. my_tools": "p.ej. mis_herramientas", + "e.g. Tools for performing various operations": "p.ej. Herramientas para realizar varias operaciones", + "e.g., 3, 4, 5 (leave blank for default)": "", + "e.g., en-US,ja-JP (leave blank for auto-detect)": "p. ej., en-US,ja-JP (dejar en blanco para detectar automáticamente)", + "e.g., westus (leave blank for eastus)": "", + "Edit": "Editar", + "Edit Arena Model": "Editar Modelo en Arena", + "Edit Channel": "Editar Canal", + "Edit Connection": "Editar Conexión", + "Edit Default Permissions": "Editar Permisos Predeterminados", + "Edit Memory": "Editar Memoria", + "Edit User": "Editar Usuario", + "Edit User Group": "Editar Grupo de Usuarios", + "ElevenLabs": "ElevenLabs", + "Email": "Email", + "Embark on adventures": "Embarcate en aventuras", + "Embedding": "Incrustación", + "Embedding Batch Size": "Tamaño del Lote de Incrustación", + "Embedding Model": "Modelo de Incrustación", + "Embedding Model Engine": "Motor del Modelo de Incrustación", + "Embedding model set to \"{{embedding_model}}\"": "Modelo de Incrustación configurado a \"{{embedding_model}}\"", + "Enable API Key": "Habilitar Clave API", + "Enable autocomplete generation for chat messages": "Habilitar generación de autocompletado para mensajes de chat", + "Enable Code Execution": "Habilitar Ejecución de Código", + "Enable Code Interpreter": "Habilitar Interprete de Código", + "Enable Community Sharing": "Habilitar Compartir con la Comunidad", + "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.": "Habilitar bloqueo de memoria (mlock) para prevenir que los datos del modelo se intercambien fuera de la RAM. Esta opción bloquea el conjunto de páginas de trabajo del modelo en RAM, asegurando que no se intercambiarán fuera a disco. Esto puede ayudar a mantener el rendimiento evitando fallos de página y asegurando un acceso rápido a los datos.", + "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.": "Habilitar Mapeado de Memoria (mmap) para cargar datos del modelo. Esta opción permite al sistema usar el almacenamiento del disco como una extensión de la RAM al tratar los archivos en disco como si estuvieran en la RAM. Esto puede mejorar el rendimiento del modelo al permitir un acceso más rápido a los datos. Sin embargo, puede no funcionar correctamente con todos los sistemas y puede consumir una cantidad significativa de espacio en disco.", + "Enable Message Rating": "Habilitar Calificación de los Mensajes", + "Enable Mirostat sampling for controlling perplexity.": "Algoritmo de decodificación de texto neuronal que controla activamente el proceso generativo para mantener la perplejidad del texto generado en un valor deseado. Previene las trampas de aburrimiento (por excesivas repeticiones) y de incoherencia (por generación de excesivo texto).", + "Enable New Sign Ups": "Habilitar Registros de Nuevos Usuarios", + "Enabled": "Habilitado", + "Endpoint URL": "", + "Enforce Temporary Chat": "Forzar el uso de Chat Temporal", + "Enhance": "", + "Ensure your CSV file includes 4 columns in this order: Name, Email, Password, Role.": "Asegúrese de que su archivo CSV incluya 4 columnas en este orden: Nombre, Correo Electrónico, Contraseña, Rol.", + "Enter {{role}} message here": "Ingresar mensaje {{role}} aquí", + "Enter a detail about yourself for your LLMs to recall": "Ingresar detalles sobre ti para que los recuerden sus LLMs", + "Enter api auth string (e.g. username:password)": "Ingresar campo de autorización de la api (p.ej. nombre:contraseña)", + "Enter Application DN": "Ingresar el DN de la Aplicación", + "Enter Application DN Password": "Ingresar la Contraseña del DN de la Aplicación", + "Enter Bing Search V7 Endpoint": "Ingresar el Endpoint de Bing Search V7", + "Enter Bing Search V7 Subscription Key": "Ingresar la Clave de Suscripción de Bing Search V7", + "Enter Bocha Search API Key": "Ingresar la Clave API de Bocha Search", + "Enter Brave Search API Key": "Ingresar la Clave API de Brave Search", + "Enter certificate path": "Ingresar la ruta del certificado", + "Enter CFG Scale (e.g. 7.0)": "Ingresa escala CFG (p.ej., 7.0)", + "Enter Chunk Overlap": "Ingresar Superposición de los Fragmentos", + "Enter Chunk Size": "Ingresar el Tamaño del Fragmento", + "Enter comma-separated \"token:bias_value\" pairs (example: 5432:100, 413:-100)": "Ingresar pares \"token:valor_sesgo\" separados por comas (ejemplo: 5432:100, 413:-100)", + "Enter description": "Ingresar Descripción", + "Enter Docling OCR Engine": "", + "Enter Docling OCR Language(s)": "", + "Enter Docling Server URL": "Ingresar URL del Servidor Docling", + "Enter Document Intelligence Endpoint": "Ingresar el Endpoint de Azure Document Intelligence", + "Enter Document Intelligence Key": "Ingresar Clave de Azure Document Intelligence", + "Enter domains separated by commas (e.g., example.com,site.org)": "Ingresar dominios separados por comas (p.ej., ejemplo.com,sitio.org)", + "Enter Exa API Key": "Ingresar Clave API de Exa", + "Enter External Web Loader API Key": "", + "Enter External Web Loader URL": "", + "Enter External Web Search API Key": "", + "Enter External Web Search URL": "", + "Enter Firecrawl API Base URL": "Ingresar URL Base del API de Firecrawl", + "Enter Firecrawl API Key": "Ingresar Clave del API de Firecrawl", + "Enter Github Raw URL": "Ingresar URL Github en Bruto(raw)", + "Enter Google PSE API Key": "Ingresar Clave API de Google PSE", + "Enter Google PSE Engine Id": "Ingresa ID del Motor PSE de Google", + "Enter Image Size (e.g. 512x512)": "Ingresar Tamaño de Imagen (p.ej. 512x512)", + "Enter Jina API Key": "Ingresar Clave API de Jina", + "Enter Jupyter Password": "Ingresar Contraseña de Jupyter", + "Enter Jupyter Token": "Ingresar Token de Jupyter", + "Enter Jupyter URL": "Ingresar URL de Jupyter", + "Enter Kagi Search API Key": "Ingresar Clave API de Kagi Search", + "Enter Key Behavior": "Comportamiento de la Tecla de Envío", + "Enter language codes": "Ingresar Códigos de Idioma", + "Enter Mistral API Key": "Ingresar Clave API de Mistral", + "Enter Model ID": "Ingresar ID del Modelo", + "Enter model tag (e.g. {{modelTag}})": "Ingresar la etiqueta del modelo (p.ej. {{modelTag}})", + "Enter Mojeek Search API Key": "Ingresar Clave API de Mojeek Search", + "Enter New Password": "", + "Enter Number of Steps (e.g. 50)": "Ingresar Número de Pasos (p.ej., 50)", + "Enter Perplexity API Key": "Ingresar Clave API de Perplexity", + "Enter Playwright Timeout": "Ingresar límite de tiempo de espera de Playwright", + "Enter Playwright WebSocket URL": "Ingresar URL de WebSocket de Playwright", + "Enter proxy URL (e.g. https://user:password@host:port)": "Ingresar URL del proxy (p.ej. https://user:password@host:port)", + "Enter reasoning effort": "Ingresar esfuerzo de razonamiento", + "Enter Sampler (e.g. Euler a)": "Ingresar Muestreador (p.ej., Euler a)", + "Enter Scheduler (e.g. Karras)": "Ingresar Planificador (p.ej., Karras)", + "Enter Score": "Ingresar Puntuación", + "Enter SearchApi API Key": "Ingresar Clave API de SearchApi", + "Enter SearchApi Engine": "Ingresar Motor de SearchApi", + "Enter Searxng Query URL": "Ingresar URL de la consulta Searxng", + "Enter Seed": "Ingresar Semilla", + "Enter SerpApi API Key": "Ingresar Clave API de SerpApi", + "Enter SerpApi Engine": "Ingresar Motor de SerpApi", + "Enter Serper API Key": "Ingresar Clave API de Serper", + "Enter Serply API Key": "Ingresar Clave API de Serply", + "Enter Serpstack API Key": "Ingresar Clave API de Serpstack", + "Enter server host": "Ingresar host del servidor", + "Enter server label": "Ingresar etiqueta del servidor", + "Enter server port": "Ingresar puerto del servidor", + "Enter Sougou Search API sID": "Ingresar Sougou Search API sID", + "Enter Sougou Search API SK": "Ingresar Sougou Search API SK", + "Enter stop sequence": "Ingresar secuencia de parada", + "Enter system prompt": "Ingresar Prompt del sistema", + "Enter system prompt here": "Ingresa aquí el prompt del sistema", + "Enter Tavily API Key": "Ingresar Clave API de Tavily", + "Enter Tavily Extract Depth": "Ingresar parámetro de Extract Depth de Taviliy", + "Enter the public URL of your WebUI. This URL will be used to generate links in the notifications.": "Ingresar URL pública de WebUI. Esta URL se usará para generar enlaces en las notificaciones.", + "Enter Tika Server URL": "Ingresar URL del servidor Tika", + "Enter timeout in seconds": "Ingresar tiempo límite de espera en segundos", + "Enter to Send": "'Enter' para Enviar", + "Enter Top K": "Ingresar Top K", + "Enter Top K Reranker": "Ingresar Top K Reclasificador", + "Enter URL (e.g. http://127.0.0.1:7860/)": "Ingresar URL (p.ej., http://127.0.0.1:7860/)", + "Enter URL (e.g. http://localhost:11434)": "Ingresar URL (p.ej., http://localhost:11434)", + "Enter Yacy Password": "", + "Enter Yacy URL (e.g. http://yacy.example.com:8090)": "", + "Enter Yacy Username": "", + "Enter your current password": "Ingresa tu contraseña actual", + "Enter Your Email": "Ingresa tu correo electrónico", + "Enter Your Full Name": "Ingresa su nombre completo", + "Enter your message": "Ingresa tu mensaje", + "Enter your name": "Ingresa tu nombre", + "Enter Your Name": "", + "Enter your new password": "Ingresa tu contraseña nueva", + "Enter Your Password": "Ingresa tu contraseña", + "Enter Your Role": "Ingresa tu rol", + "Enter Your Username": "Ingresa tu nombre de usuario", + "Enter your webhook URL": "Ingresa tu URL de webhook", + "Error": "Error", + "ERROR": "ERROR", + "Error accessing Google Drive: {{error}}": "Error accediendo a Google Drive: {{error}}", + "Error accessing media devices.": "", + "Error starting recording.": "", + "Error uploading file: {{error}}": "Error subiendo el archivo: {{error}}", + "Evaluations": "Evaluaciones", + "Exa API Key": "Clave API de Exa", + "Example: (&(objectClass=inetOrgPerson)(uid=%s))": "Ejemplo: (&(objectClass=inetOrgPerson)(uid=%s))", + "Example: ALL": "Ejemplo: TODOS", + "Example: mail": "Ejemplo: correo", + "Example: ou=users,dc=foo,dc=example": "Ejemplo: ou=usuarios,dc=foo,dc=ejemplo", + "Example: sAMAccountName or uid or userPrincipalName": "Ejemplo: sAMNombreCuenta o uid o userNombrePrincipal", + "Exceeded the number of seats in your license. Please contact support to increase the number of seats.": "Excedido el número de accesos de usuarios en tu licencia. Por favor, contacta con soporte para aumentar el número de accesos.", + "Exclude": "Excluir", + "Execute code for analysis": "Ejecutar código para análisis", + "Executing **{{NAME}}**...": "Ejecutando **{{NAME}}**...", + "Expand": "Expandir", + "Experimental": "Experimental", + "Explain": "Explicar", + "Explain this section to me in more detail": "Explícame esta sección con más detalle", + "Explore the cosmos": "Explora el cosmos", + "Export": "Exportar", + "Export All Archived Chats": "Exportar Todos los Chats Archivados", + "Export All Chats (All Users)": "Exportar Todos los Chats (Todos los Usuarios)", + "Export chat (.json)": "Exportar chat (.json)", + "Export Chats": "Exportar Chats", + "Export Config to JSON File": "Exportar Configuración a archivo JSON", + "Export Functions": "Exportar Funciones", + "Export Models": "Exportar Modelos", + "Export Presets": "Exportar Preajustes", + "Export Prompts": "Exportar Prompts", + "Export to CSV": "Exportar a CSV", + "Export Tools": "Exportar Herramientas", + "External": "Externo", + "External Models": "Modelos Externos", + "External Web Loader API Key": "", + "External Web Loader URL": "", + "External Web Search API Key": "", + "External Web Search URL": "", + "Failed to add file.": "Fallo al añadir el archivo.", + "Failed to connect to {{URL}} OpenAPI tool server": "Fallo al conectar al servidor de herramientas {{URL}}", + "Failed to create API Key.": "Fallo al crear la Clave API.", + "Failed to delete note": "", + "Failed to fetch models": "Fallo al obtener los modelos", + "Failed to load file content.": "", + "Failed to read clipboard contents": "Fallo al leer el contenido del portapapeles", + "Failed to save connections": "Fallo al grabar las conexiones", + "Failed to save models configuration": "Fallo al guardar la configuración de los modelos", + "Failed to update settings": "Fallo al actualizar los ajustes", + "Failed to upload file.": "Fallo al subir el archivo.", + "Features": "Características", + "Features Permissions": "Permisos de las Características", + "February": "Febrero", + "Feedback History": "Historial de Opiniones", + "Feedbacks": "Opiniones", + "Feel free to add specific details": "Añade libremente detalles específicos", + "File": "Archivo", + "File added successfully.": "Archivo añadido correctamente.", + "File content updated successfully.": "Contenido del archivo actualizado correctamente.", + "File Mode": "Modo de Archivo", + "File not found.": "Archivo no encontrado.", + "File removed successfully.": "Archivo eliminado correctamente.", + "File size should not exceed {{maxSize}} MB.": "Tamaño del archivo no debe exceder {{maxSize}} MB.", + "File uploaded successfully": "Archivo subido correctamente", + "Files": "Archivos", + "Filter is now globally disabled": "El filtro ahora está desactivado globalmente", + "Filter is now globally enabled": "El filtro ahora está habilitado globalmente", + "Filters": "Filtros", + "Fingerprint spoofing detected: Unable to use initials as avatar. Defaulting to default profile image.": "Se detectó suplantación de huellas: No se pueden usar las iniciales como avatar. Se establece la imagen de perfil predeterminada.", + "Firecrawl API Base URL": "URL Base de API de Firecrawl", + "Firecrawl API Key": "Clave de API de Firecrawl", + "Fluidly stream large external response chunks": "Transmisión fluida de fragmentos de grandes respuestas externas", + "Focus chat input": "Enfocar campo de chat", + "Folder deleted successfully": "Carpeta eliminada correctamente", + "Folder name cannot be empty.": "El nombre de la carpeta no puede estar vacío", + "Folder name updated successfully": "Nombre de la carpeta actualizado correctamente", + "Followed instructions perfectly": "Siguió las instrucciones perfectamente", + "Forge new paths": "Forjar nuevos caminos", + "Form": "Formulario", + "Format your variables using brackets like this:": "Formatea tus variables usando corchetes así:", + "Forwards system user session credentials to authenticate": "Reenvío de las credenciales de la sesión del usuario del sistema para autenticación", + "Frequency Penalty": "Penalización de Frecuencia", + "Full Context Mode": "Modo Contexto Completo", + "Function": "Función", + "Function Calling": "Modo de Llamada a Funciones (Herramientas)", + "Function created successfully": "Función creada correctamente", + "Function deleted successfully": "Función borrada correctamente", + "Function Description": "Descripción de la Función", + "Function ID": "ID de la Función", + "Function is now globally disabled": "La Función ahora está deshabilitada globalmente", + "Function is now globally enabled": "La Función ahora está habilitada globalmente", + "Function Name": "Nombre de la Función", + "Function updated successfully": "Función actualizada correctamente", + "Functions": "Funciones", + "Functions allow arbitrary code execution.": "Las Funciones habilitan la ejecución de código arbitrario.", + "Functions imported successfully": "Funciones importadas correctamente", + "Gemini": "Gemini", + "Gemini API Config": "Config API Gemini", + "Gemini API Key is required.": "Se requiere Clave API de Gemini.", + "General": "General", + "Generate": "", + "Generate an image": "Generar una imagen", + "Generate Image": "Generar imagen", + "Generate prompt pair": "Generar par de prompts", + "Generating search query": "Generando consulta de búsqueda", + "Generating...": "", + "Get started": "Empezar", + "Get started with {{WEBUI_NAME}}": "Empezar con {{WEBUI_NAME}}", + "Global": "Global", + "Good Response": "Buena Respuesta", + "Google Drive": "Google Drive", + "Google PSE API Key": "Clave API de Google PSE", + "Google PSE Engine Id": "ID del Motor PSE de Google", + "Group created successfully": "Grupo creado correctamente", + "Group deleted successfully": "Grupo eliminado correctamente", + "Group Description": "Descripción del Grupo", + "Group Name": "Nombre del Grupo", + "Group updated successfully": "Grupo actualizado correctamente", + "Groups": "Grupos", + "Haptic Feedback": "Realimentación Háptica", + "has no conversations.": "no tiene conversaciones.", + "Hello, {{name}}": "Hola, {{name}}", + "Help": "Ayuda", + "Help us create the best community leaderboard by sharing your feedback history!": "¡Ayúdanos a crear la mejor tabla clasificatoria comunitaria compartiendo tu historial de realimentación!", + "Hex Color": "Color Hex", + "Hex Color - Leave empty for default color": "Color Hex - Deja vacío para el color predeterminado", + "Hide": "Esconder", + "Hide Model": "Ocultar Modelo", + "Home": "Inicio", + "Host": "Host", + "How can I help you today?": "¿Cómo puedo ayudarte hoy?", + "How would you rate this response?": "¿Cómo calificarías esta respuesta?", + "Hybrid Search": "Búsqueda 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.": "Aseguro que he leído y entiendo las implicaciones de mi acción. Soy consciente de los riesgos asociados con la ejecución de código arbitrario y he verificado la confiabilidad de la fuente.", + "ID": "ID", + "iframe Sandbox Allow Forms": "", + "iframe Sandbox Allow Same Origin": "", + "Ignite curiosity": "Encender la curiosidad", + "Image": "Imagen", + "Image Compression": "Compresión de Imagen", + "Image Generation": "Generación de Imagen", + "Image Generation (Experimental)": "Generación de Imagen (experimental)", + "Image Generation Engine": "Motor de Generación de Imagen", + "Image Max Compression Size": "Tamaño Máximo de Compresión de Imagen", + "Image Prompt Generation": "Prompt para Generación de Imagen", + "Image Prompt Generation Prompt": "Prompt para la Generación de Imagen", + "Image Settings": "Configuración de Imágen", + "Images": "Imágenes", + "Import Chats": "Importar Chats", + "Import Config from JSON File": "Importar Config desde Archivo JSON", + "Import Functions": "Importar Funciones", + "Import Models": "Importar Modelos", + "Import Notes": "", + "Import Presets": "Importar Preajustes", + "Import Prompts": "Importar Prompts", + "Import Tools": "Importar Herramientas", + "Include": "Incluir", + "Include `--api-auth` flag when running stable-diffusion-webui": "Incluir el señalizador `--api-auth` al ejecutar stable-diffusion-webui", + "Include `--api` flag when running stable-diffusion-webui": "Incluir el señalizador `--api` al ejecutar stable-diffusion-webui", + "Influences how quickly the algorithm responds to feedback from the generated text. A lower learning rate will result in slower adjustments, while a higher learning rate will make the algorithm more responsive.": "Influye en la rápidez de respuesta a la realimentación desde el texto generado. Una tasa de aprendizaje más baja resulta en un ajustado más lento, mientras que una tasa de aprendizaje más alta hará que el algoritmo sea más reactivo.", + "Info": "Información", + "Inject the entire content as context for comprehensive processing, this is recommended for complex queries.": "Inyecta el contenido completo como contexto para un procesado comprensivo, recomendado para consultas complejas.", + "Input commands": "Ingresar comandos", + "Install from Github URL": "Instalar desde la URL de Github", + "Instant Auto-Send After Voice Transcription": "AutoEnvio Instantaneo tras la Transcripción de Voz", + "Integration": "Integración", + "Interface": "Interface", + "Invalid file content": "", + "Invalid file format.": "Formato de archivo Inválido.", + "Invalid JSON schema": "Esquema JSON Inválido", + "Invalid Tag": "Etiqueta Inválida", + "is typing...": "está escribiendo...", + "January": "Enero", + "Jina API Key": "Clave API de Jina", + "join our Discord for help.": "unete a nuestro Discord para ayuda.", + "JSON": "JSON", + "JSON Preview": "Prevista del JSON", + "July": "Julio", + "June": "Junio", + "Jupyter Auth": "Autenticación de Jupyter", + "Jupyter URL": "URL de Jupyter", + "JWT Expiration": "Expiración del JSON Web Token (JWT)", + "JWT Token": "JSON Web Token", + "Kagi Search API Key": "Clave API de Kagi Search", + "Keep Alive": "Mantener Vivo", + "Key": "Clave", + "Keyboard shortcuts": "Atajos de teclado", + "Knowledge": "Conocimiento", + "Knowledge Access": "Acceso a Conocimiento", + "Knowledge created successfully.": "Conocimiento creado correctamente.", + "Knowledge deleted successfully.": "Conocimiento eliminado correctamente.", + "Knowledge Public Sharing": "", + "Knowledge reset successfully.": "Conocimiento restablecido correctamente.", + "Knowledge updated successfully": "Conocimiento actualizado correctamente.", + "Kokoro.js (Browser)": "Kokoro.js (Navegador)", + "Kokoro.js Dtype": "Kokoro.js DType", + "Label": "Etiqueta", + "Landing Page Mode": "Modo Página Inicial", + "Language": "Idioma", + "Language Locales": "", + "Last Active": "Última Actividad", + "Last Modified": "Último Modificación", + "Last reply": "Última Respuesta", + "LDAP": "LDAP", + "LDAP server updated": "Servidor LDAP actualizado", + "Leaderboard": "Tabla Clasificatoria", + "Learn more about OpenAPI tool servers.": "Saber más sobre los servidores de herramientas OpenAPI", + "Leave empty for unlimited": "Dejar vacío para ilimitado", + "Leave empty to include all models from \"{{url}}/api/tags\" endpoint": "Dejar vacío para incluir todos los modelos desde el endpoint \"{{url}}/api/tags\"", + "Leave empty to include all models from \"{{url}}/models\" endpoint": "Dejar vacío para incluir todos los modelos desde el endpoint \"{{url}}/models\"", + "Leave empty to include all models or select specific models": "Dejar vacío para incluir todos los modelos o Seleccionar modelos específicos", + "Leave empty to use the default prompt, or enter a custom prompt": "Dejar vacío para usar el prompt predeterminado, o Ingresar un prompt personalizado", + "Leave model field empty to use the default model.": "Dejar vacío el campo modelo para usar el modelo predeterminado.", + "License": "Licencia", + "Light": "Claro", + "Listening...": "Escuchando...", + "Llama.cpp": "Llama.cpp", + "LLMs can make mistakes. Verify important information.": "Los LLMs pueden cometer errores. Verifica la información importante.", + "Loader": "Cargador", + "Loading Kokoro.js...": "Cargando Kokoro.js...", + "Local": "Local", + "Local Models": "Modelos Locales", + "Location access not allowed": "Sin acceso a la Ubicación", + "Logit Bias": "Sesgo de Logit", + "Lost": "Perdido", + "LTR": "LTR", + "Made by Open WebUI Community": "Creado por la Comunidad Open-WebUI", + "Make sure to enclose them with": "Asegúrate de delimitarlos con", + "Make sure to export a workflow.json file as API format from ComfyUI.": "Asegúrate de exportar un archivo workflow.json en formato API desde ComfyUI.", + "Manage": "Gestionar", + "Manage Direct Connections": "Gestionar Conexiones Directas", + "Manage Models": "Gestionar Modelos", + "Manage Ollama": "Gestionar Ollama", + "Manage Ollama API Connections": "Gestionar Conexiones API de Ollama", + "Manage OpenAI API Connections": "Gestionar Conexiones API de OpenAI", + "Manage Pipelines": "Gestionar Tuberías", + "Manage Tool Servers": "Gestionar Servidores de Herramientas", + "March": "Marzo", + "Max Speakers": "", + "Max Tokens (num_predict)": "Máx Tokens (num_predict)", + "Max Upload Count": "Número Max de Subidas", + "Max Upload Size": "Tamaño Max de Subidas", + "Maximum of 3 models can be downloaded simultaneously. Please try again later.": "Se puede descargar un máximo de 3 modelos simultáneamente. Por favor, reinténtelo más tarde.", + "May": "Mayo", + "Memories accessible by LLMs will be shown here.": "Las memorias accesibles por los LLMs se mostrarán aquí.", + "Memory": "Memoria", + "Memory added successfully": "Memoria añadida correctamente", + "Memory cleared successfully": "Memoria liberada correctamente", + "Memory deleted successfully": "Memoria borrada correctamente", + "Memory updated successfully": "Memoria actualizada correctamente", + "Merge Responses": "Fusionar Respuestas", + "Merged Response": "Respuesta combinada", + "Message rating should be enabled to use this feature": "Para usar esta función debe estar habilitada la calificación de mensajes", + "Messages you send after creating your link won't be shared. Users with the URL will be able to view the shared chat.": "Los mensajes que envíe después de la creación del enlace no se compartirán. Los usuarios con la URL del enlace podrán ver el chat compartido.", + "Microsoft OneDrive": "", + "Microsoft OneDrive (personal)": "", + "Microsoft OneDrive (work/school)": "", + "Min P": "Min P", + "Mirostat": "Mirostat", + "Mirostat Eta": "Mirostat Eta", + "Mirostat Tau": "Mirostat Tau", + "Mistral OCR": "OCR Mistral", + "Mistral OCR API Key required.": "Clave API de Mistral OCR requerida", + "Model": "Modelo", + "Model '{{modelName}}' has been successfully downloaded.": "Modelo '{{modelName}}' se ha descargado correctamente.", + "Model '{{modelTag}}' is already in queue for downloading.": "Modelo '{{modelTag}}' ya está en cola para descargar.", + "Model {{modelId}} not found": "Modelo {{modelId}} no encontrado", + "Model {{modelName}} is not vision capable": "Modelo {{modelName}} no esta capacitado para visión", + "Model {{name}} is now {{status}}": "Modelo {{name}} está ahora {{status}}", + "Model {{name}} is now hidden": "", + "Model {{name}} is now visible": "", + "Model accepts image inputs": "Modelo acepta entradas de imágen", + "Model created successfully!": "¡Modelo creado correctamente!", + "Model filesystem path detected. Model shortname is required for update, cannot continue.": "Detectada ruta del sistema al modelo. Para actualizar se requiere el nombre corto del modelo, no se puede continuar.", + "Model Filtering": "Filtrado de modelos", + "Model ID": "ID Modelo", + "Model IDs": "IDs Modelo", + "Model Name": "Nombre Modelo", + "Model not selected": "Modelo no seleccionado", + "Model Params": "Paráms Modelo", + "Model Permissions": "Permisos Modelo", + "Model updated successfully": "Modelo actualizado correctamente", + "Modelfile Content": "Contenido del Modelfile", + "Models": "Modelos", + "Models Access": "Acceso Modelos", + "Models configuration saved successfully": "Configuración de Modelos guardada correctamente", + "Models Public Sharing": "", + "Mojeek Search API Key": "Clave API de Mojeek Search", + "more": "más", + "More": "Más", + "My Notes": "", + "Name": "Nombre", + "Name your knowledge base": "Nombra tu base de conocimientos", + "Native": "Nativo", + "New Chat": "Nuevo Chat", + "New Folder": "Nueva Carpeta", + "New Note": "", + "New Password": "Nueva Contraseña", + "new-channel": "nuevo-canal", + "No content": "", + "No content found": "No se encontró contenido", + "No content found in file.": "", + "No content to speak": "No hay contenido para hablar", + "No distance available": "No hay distancia disponible", + "No feedbacks found": "No se encontraron realimentaciones", + "No file selected": "No se seleccionó archivo", + "No groups with access, add a group to grant access": "No hay grupos con acceso, añade un grupo para otorgar acceso", + "No HTML, CSS, or JavaScript content found.": "No se encontró contenido HTML, CSS, o JavaScript.", + "No inference engine with management support found": "No se encontró un motor de inferencia que soporte gestión", + "No knowledge found": "No se encontró ningún conocimiento", + "No memories to clear": "No hay memorias para borrar", + "No model IDs": "No hay IDs de modelo", + "No models found": "No se encontraron modelos", + "No models selected": "No se seleccionaron modelos", + "No Notes": "", + "No results found": "No se encontraron resultados", + "No search query generated": "No se generó ninguna consulta de búsqueda", + "No source available": "No hay fuente disponible", + "No users were found.": "No se encontraron usuarios.", + "No valves to update": "No hay válvulas para actualizar", + "None": "Ninguno", + "Not factually correct": "No es correcto en todos los aspectos", + "Not helpful": "No aprovechable", + "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.": "Nota: Si estableces una puntuación mínima, la búsqueda sólo devolverá documentos con una puntuación mayor o igual a la puntuación mínima establecida.", + "Notes": "Notas", + "Notification Sound": "Notificación Sonora", + "Notification Webhook": "Notificación Enganchada (webhook)", + "Notifications": "Notificaciones", + "November": "Noviembre", + "num_gpu (Ollama)": "num_gpu (capas Ollama)", + "num_thread (Ollama)": "num_thread (hilos Ollama)", + "OAuth ID": "OAuth ID", + "October": "Octubre", + "Off": "Desactivado", + "Okay, Let's Go!": "Vale, ¡Vamos!", + "OLED Dark": "Oscuro OLED", + "Ollama": "Ollama", + "Ollama API": "API Ollama", + "Ollama API settings updated": "Ajustes de la API de Ollama actualizados", + "Ollama Version": "Versión de Ollama", + "On": "Activado", + "OneDrive": "OneDrive", + "Only alphanumeric characters and hyphens are allowed": "Sólo están permitidos caracteres alfanuméricos y guiones", + "Only alphanumeric characters and hyphens are allowed in the command string.": "Sólo están permitidos en la cadena de comandos caracteres alfanuméricos y guiones.", + "Only collections can be edited, create a new knowledge base to edit/add documents.": "Solo se pueden editar las colecciones, para añadir/editar documentos hay que crear una nueva base de conocimientos", + "Only markdown files are allowed": "", + "Only select users and groups with permission can access": "Solo pueden acceder los usuarios y grupos con permiso", + "Oops! Looks like the URL is invalid. Please double-check and try again.": "¡vaya! Parece que la URL es inválida. Por favor, revisala y reintenta de nuevo.", + "Oops! There are files still uploading. Please wait for the upload to complete.": "¡vaya! Todavía hay archivos subiendose. Por favor, espera a que se complete la subida.", + "Oops! There was an error in the previous response.": "¡vaya! Hubo un error en la respuesta previa.", + "Oops! You're using an unsupported method (frontend only). Please serve the WebUI from the backend.": "¡vaya! Estás usando un método no soportado (solo interface frontal-frontend). Por favor sirve WebUI desde el interface trasero (servidor backend).", + "Open file": "Abrir archivo", + "Open in full screen": "Abrir en pantalla completa", + "Open new chat": "Abrir nuevo chat", + "Open WebUI can use tools provided by any OpenAPI server.": "Open-WebUI puede usar herramientas proporcionadas por cualquier servidor OpenAPI", + "Open WebUI uses faster-whisper internally.": "Open-WebUI usa faster-whisper internamente.", + "Open WebUI uses SpeechT5 and CMU Arctic speaker embeddings.": "Open-WebUI usa SpeechT5 y la incrustración de locutores de CMU Arctic.", + "Open WebUI version (v{{OPEN_WEBUI_VERSION}}) is lower than required version (v{{REQUIRED_VERSION}})": "La versión de Open-WebUI (v{{OPEN_WEBUI_VERSION}}) es inferior a la versión (v{{REQUIRED_VERSION}}) requerida", + "OpenAI": "OpenAI", + "OpenAI API": "API OpenAI", + "OpenAI API Config": "Config API OpenAI", + "OpenAI API Key is required.": "Clave API de OpenAI requerida.", + "OpenAI API settings updated": "Ajustes de API OpenAI actualizados", + "OpenAI URL/Key required.": "URL/Clave de OpenAI requerida.", + "openapi.json Path": "Ruta a openapi.json", + "or": "o", + "Organize your users": "Organiza tus usuarios", + "Other": "Otro", + "OUTPUT": "SALIDA", + "Output format": "Formato de salida", + "Overview": "Vista General", + "page": "página", + "Password": "Contraseña", + "Paste Large Text as File": "Pegar el Texto Largo como Archivo", + "PDF document (.pdf)": "Documento PDF (.pdf)", + "PDF Extract Images (OCR)": "Extraer imágenes del PDF (OCR)", + "pending": "pendiente", + "Permission denied when accessing media devices": "Permiso denegado accediendo a los dispositivos", + "Permission denied when accessing microphone": "Permiso denegado accediendo al micrófono", + "Permission denied when accessing microphone: {{error}}": "Permiso denegado accediendo al micrófono: {{error}}", + "Permissions": "Permisos", + "Perplexity API Key": "Clave API de Perplexity", + "Personalization": "Personalización", + "Pin": "Fijar", + "Pinned": "Fijado", + "Pioneer insights": "Descubrir nuevas perspectivas", + "Pipeline deleted successfully": "Tubería borrada correctamente", + "Pipeline downloaded successfully": "Tubería descargada correctamente", + "Pipelines": "Tuberías", + "Pipelines Not Detected": "Servicio de Tuberías (Pipelines) No Detectado", + "Pipelines Valves": "Válvulas de Tuberías", + "Plain text (.md)": "", + "Plain text (.txt)": "Texto plano (.txt)", + "Playground": "Zona de Pruebas", + "Playwright Timeout (ms)": "Tiempo Límite de Espera (ms) de Playwright", + "Playwright WebSocket URL": "URL de WebSocket de Playwright", + "Please carefully review the following warnings:": "Por favor revisar cuidadosamente los siguientes avisos:", + "Please do not close the settings page while loading the model.": "Por favor no cerrar la página de ajustes mientras se está descargando el modelo.", + "Please enter a prompt": "Por favor ingresar un prompt", + "Please enter a valid path": "Por favor, ingresa una ruta válida", + "Please enter a valid URL": "Por favor, ingresa una URL válida", + "Please fill in all fields.": "Por favor rellenar todos los campos.", + "Please select a model first.": "Por favor primero seleccionar un modelo.", + "Please select a model.": "Por favor seleccionar un modelo.", + "Please select a reason": "Por favor seleccionar un motivo", + "Port": "Puerto", + "Positive attitude": "Actitud Positiva", + "Prefix ID": "prefijo ID", + "Prefix ID is used to avoid conflicts with other connections by adding a prefix to the model IDs - leave empty to disable": "El prefijo ID se utiliza para evitar conflictos con otras conexiones al añadir un prefijo a los IDs de modelo, dejar vacío para deshabilitarlo", + "Presence Penalty": "Penalización de Presencia", + "Previous 30 days": "30 días previos", + "Previous 7 days": "7 días previos", + "Private": "Privado", + "Profile Image": "Imagen del Perfil", + "Prompt": "Prompt", + "Prompt (e.g. Tell me a fun fact about the Roman Empire)": "Prompt (p.ej. Cuéntame una cosa divertida sobre el Imperio Romano)", + "Prompt Autocompletion": "Autocompletado del Prompt", + "Prompt Content": "Contenido del Prompt", + "Prompt created successfully": "Prompt creado exitosamente", + "Prompt suggestions": "Prompts Sugeridos", + "Prompt updated successfully": "Prompt actualizado correctamente", + "Prompts": "Prompts", + "Prompts Access": "Acceso a Prompts", + "Prompts Public Sharing": "", + "Public": "Público", + "Pull \"{{searchValue}}\" from Ollama.com": "Extraer \"{{searchValue}}\" desde Ollama.com", + "Pull a model from Ollama.com": "Extraer un modelo desde Ollama.com", + "Query Generation Prompt": "Prompt para la Consulta de Generación", + "RAG Template": "Plantilla del RAG", + "Rating": "Calificación", + "Re-rank models by topic similarity": "Reclasificar modelos por similitud temática", + "Read": "Leer", + "Read Aloud": "Leer en voz alta", + "Reasoning Effort": "Esfuerzo del Razonamiento", + "Record": "", + "Record voice": "Grabar voz", + "Redirecting you to Open WebUI Community": "Redireccionando a la Comunidad 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.": "Reduce la probabilidad de generación sin sentido. Un valor más alto (p.ej. 100) dará respuestas más diversas, mientras que un valor más bajo (p.ej. 10) será más conservador.", + "Refer to yourself as \"User\" (e.g., \"User is learning Spanish\")": "Referir a ti mismo como \"Usuario\" (p.ej. \"Usuario está aprendiendo Español\")", + "References from": "Referencias desde", + "Refused when it shouldn't have": "Rechazado cuando no debería haberlo hecho", + "Regenerate": "Regenerar", + "Reindex": "Reindexar", + "Reindex Knowledge Base Vectors": "Reindexar Base Vectorial de Conocimiento", + "Release Notes": "Notas de la Versión", + "Relevance": "Relevancia", + "Relevance Threshold": "Umbral de Relevancia", + "Remove": "Eliminar", + "Remove Model": "Eliminar Modelo", + "Rename": "Renombrar", + "Reorder Models": "Reordenar Modelos", + "Repeat Last N": "Repetición - Últimos N", + "Repeat Penalty (Ollama)": "Penalización Repetición (Ollama)", + "Reply in Thread": "Responder en Hilo", + "Request Mode": "Modo de Petición", + "Reranking Engine": "", + "Reranking Model": "Modelo de Reclasificación", + "Reset": "Reiniciar", + "Reset All Models": "Reiniciar Todos los Modelos", + "Reset Upload Directory": "Reiniciar Directorio de Subidas", + "Reset Vector Storage/Knowledge": "Reiniciar Almacenamiento de Vectores/Conocimiento", + "Reset view": "Reiniciar Vista", + "Response notifications cannot be activated as the website permissions have been denied. Please visit your browser settings to grant the necessary access.": "Las notificaciones de respuesta no pueden activarse ya que los permisos del sitio web han sido denegados. Por favor, comprueba la configuración de tu navegador para otorgar el permiso necesario.", + "Response splitting": "Particionado de Respuesta", + "Result": "Resultado", + "Retrieval": "Recuperación", + "Retrieval Query Generation": "Consulta de Generación de Recuperación", + "Rich Text Input for Chat": "Entrada de Texto Enriquecido para el Chat", + "RK": "RK", + "Role": "Rol", + "Rosé Pine": "Pino Rosa", + "Rosé Pine Dawn": "Pino Rosa Amanecer", + "RTL": "RTL", + "Run": "Ejecutar", + "Running": "Ejecutando", + "Save": "Guardar", + "Save & Create": "Guardar y Crear", + "Save & Update": "Guardar y Actualizar", + "Save As Copy": "Guardar como Copia", + "Save Tag": "Guardar Etiqueta", + "Saved": "Guardado", + "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": "Ya no está soportado guardar registros de chat directamente en el almacenamiento del navegador. Por favor, dedica un momento a descargar y eliminar tus registros de chat pulsando en el botón de abajo. No te preocupes, puedes re-importar fácilmente tus registros desde las opciones de configuración", + "Scroll On Branch Change": "", + "Search": "Buscar", + "Search a model": "Buscar un Modelo", + "Search Base": "Busqueda Base", + "Search Chats": "Buscar Chats", + "Search Collection": "Buscar Colección", + "Search Filters": "Buscar Filtros", + "search for tags": "Buscar por etiquetas", + "Search Functions": "Buscar Funciones", + "Search Knowledge": "Buscar Conocimiento", + "Search Models": "Buscar Modelos", + "Search options": "Opciones de Búsqueda", + "Search Prompts": "Buscar Prompts", + "Search Result Count": "Número de resultados de la búsqueda", + "Search the internet": "Buscar en internet", + "Search Tools": "Buscar Herramientas", + "SearchApi API Key": "Clave API de SearchApi", + "SearchApi Engine": "Motor SearchApi", + "Searched {{count}} sites": "{{count}} sitios buscados", + "Searching \"{{searchQuery}}\"": "Buscando \"{{searchQuery}}\"", + "Searching Knowledge for \"{{searchQuery}}\"": "Buscando \"{{searchQuery}}\" en Conocimiento", + "Searching the web...": "", + "Searxng Query URL": "Searxng URL de Consulta", + "See readme.md for instructions": "Ver readme.md para instrucciones", + "See what's new": "Ver las novedades", + "Seed": "Semilla", + "Select a base model": "Seleccionar un modelo base", + "Select a engine": "Seleccionar un motor", + "Select a function": "Seleccionar una función", + "Select a group": "Seleccionar un grupo", + "Select a model": "Selecciona un modelo", + "Select a pipeline": "Seleccionar una tubería", + "Select a pipeline url": "Seleccionar una url de tubería", + "Select a tool": "Seleccioanr una herramienta", + "Select an auth method": "Seleccionar un método de autentificación", + "Select an Ollama instance": "Seleccionar una instancia de Ollama", + "Select Engine": "Seleccionar Motor", + "Select Knowledge": "Seleccionar Conocimiento", + "Select only one model to call": "Seleccionar sólo un modelo a llamar", + "Selected model(s) do not support image inputs": "Modelo(s) seleccionado(s) no admiten entradas de imagen", + "Semantic distance to query": "Distancia semántica a la consulta", + "Send": "Enviar", + "Send a Message": "Enviar un Mensaje", + "Send message": "Enviar Mensaje", + "Sends `stream_options: { include_usage: true }` in the request.\nSupported providers will return token usage information in the response when set.": "Envia en la solicitud de transmisión la opción: `{ include_usage: true }`.\nSi se activa, los proveedores que soporten esta función devolverán en la respuesta información de uso de los token.", + "September": "Septiembre", + "SerpApi API Key": "Clave API de SerpApi", + "SerpApi Engine": "Motor de SerpApi", + "Serper API Key": "Clave API de Serper", + "Serply API Key": "Clave API de Serply", + "Serpstack API Key": "Clave API de Serpstack", + "Server connection verified": "Conexión al servidor verificada", + "Set as default": "Establecer como Predeterminado", + "Set CFG Scale": "Establecer la Escala CFG", + "Set Default Model": "Establecer Modelo Predeterminado", + "Set embedding model": "Establecer Modelo de Incrustación", + "Set embedding model (e.g. {{model}})": "Establecer Modelo para Incrustación (p.ej. {{model}})", + "Set Image Size": "Establecer Tamaño de Imagen", + "Set reranking model (e.g. {{model}})": "Establecer Modelo para Reclasificación (p.ej. {{model}})", + "Set Sampler": "Establecer Muestreador", + "Set Scheduler": "Establecer Programador", + "Set Steps": "Establecer Pasos", + "Set Task Model": "Establecer Modelo para Tareas", + "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.": "Establece el número de capas, que deben cargarse en la GPU. Aumentar este valor puede mejorar significativamente el rendimiento de los modelos optimizados para aceleración en GPU, pero también puede consumir más energía y recursos de la 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.": "Establece el número de hilos de trabajo utilizados para el computo. Esta opción controla cuántos hilos son usados para procesar solicitudes entrantes concurrentes. Aumentar este valor puede mejorar el rendimiento bajo cargas de trabajo de alta concurrencia, pero también puede consumir más recursos de la CPU.", + "Set Voice": "Establecer la voz", + "Set whisper model": "Establecer modelo whisper (transcripción)", + "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.": "Establece un sesgo plano contra los tokens que han aparecido al menos una vez. Un valor más alto (p.ej. 1.5) penalizará las repeticiones más fuertemente, mientras que un valor más bajo (p.ej. 0.9) será más indulgente. En 0, está deshabilitado.", + "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.": "Establece un sesgo escalado contra los tokens para penalizar las repeticiones, basado en cuántas veces han aparecido. Un valor más alto (por ejemplo, 1.5) penalizará las repeticiones más fuertemente, mientras que un valor más bajo (por ejemplo, 0.9) será más indulgente. En 0, está deshabilitado.", + "Sets how far back for the model to look back to prevent repetition.": "Establece cuántos tokens debe mirar atrás el modelo para prevenir la repetición. ", + "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.": "Establece la semilla de números aleatorios a usar para la generación. Establecer esto en un número específico hará que el modelo genere el mismo texto para el mismo prompt(prompt).", + "Sets the size of the context window used to generate the next token.": "Establece el tamaño de la ventana del contexto utilizada para generar el siguiente 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.": "Establece las secuencias de parada a usar. Cuando se encuentre este patrón, el LLM dejará de generar texto y retornará. Se pueden establecer varios patrones de parada especificando separadamente múltiples parámetros de parada en un archivo de modelo.", + "Settings": "Ajustes", + "Settings saved successfully!": "¡Ajustes guardados correctamente!", + "Share": "Compartir", + "Share Chat": "Compartir Chat", + "Share to Open WebUI Community": "Compartir con la Comunidad Open-WebUI", + "Sharing Permissions": "", + "Show": "Mostrar", + "Show \"What's New\" modal on login": "Mostrar modal \"Qué hay de Nuevo\" al iniciar sesión", + "Show Admin Details in Account Pending Overlay": "Mostrar Detalles Admin en la sobrecapa de 'Cuenta Pendiente'", + "Show All": "", + "Show Less": "", + "Show Model": "Mostrar Modelo", + "Show shortcuts": "Mostrar Atajos", + "Show your support!": "¡Muestra tu apoyo!", + "Showcased creativity": "Creatividad exhibida", + "Sign in": "Iniciar Sesión", + "Sign in to {{WEBUI_NAME}}": "Iniciar Sesión en {{WEBUI_NAME}}", + "Sign in to {{WEBUI_NAME}} with LDAP": "Iniciar Sesión en {{WEBUI_NAME}} con LDAP", + "Sign Out": "Cerrar Sesión", + "Sign up": "Crear una Cuenta", + "Sign up to {{WEBUI_NAME}}": "Crear una Cuenta en {{WEBUI_NAME}}", + "Signing in to {{WEBUI_NAME}}": "Iniciando Sesión en {{WEBUI_NAME}}", + "sk-1234": "sk-1234", + "Sougou Search API sID": "", + "Sougou Search API SK": "", + "Source": "Fuente", + "Speech Playback Speed": "Velocidad de Reproducción de Voz", + "Speech recognition error: {{error}}": "Error en reconocimiento de voz: {{error}}", + "Speech-to-Text Engine": "Motor Voz a Texto(STT)", + "Stop": "Detener", + "Stop Sequence": "Secuencia de Parada", + "Stream Chat Response": "Transmisión Directa de la Respuesta del Chat", + "STT Model": "Modelo STT", + "STT Settings": "Ajustes Voz a Texto (STT)", + "Stylized PDF Export": "", + "Subtitle (e.g. about the Roman Empire)": "Subtítulo (p.ej. sobre el Imperio Romano)", + "Success": "Correcto", + "Successfully updated.": "Actualizado correctamente.", + "Suggested": "Sugerido", + "Support": "Soportar", + "Support this plugin:": "Apoya este plugin:", + "Sync directory": "Sincroniza Directorio", + "System": "Sistema", + "System Instructions": "Instrucciones del sistema", + "System Prompt": "Prompt del sistema", + "Tags": "Etiquetas", + "Tags Generation": "Generación de Etiquetas", + "Tags Generation Prompt": "Prompt para la Generación de Etiquetas", + "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 Muestreo de cola libre(TFS_Z) es usado para reducir el impacto de los tokens menos probables en la salida. Un valor más alto (p.ej. 2.0) reduce más fuertemente el impacto, mientras que un valor de 1.0 deshabilita este ajuste.", + "Talk to model": "Hablar con el modelo", + "Tap to interrupt": "Toca para interrumpir", + "Tasks": "Tareas", + "Tavily API Key": "Clave API de Tavily", + "Tavily Extract Depth": "Parámetro Extract Depth de Taviliy", + "Tell us more:": "Dinos algo más:", + "Temperature": "Temperatura", + "Template": "Plantilla", + "Temporary Chat": "Chat Temporal", + "Text Splitter": "Divisor de Texto", + "Text-to-Speech Engine": "Motor Texto a Voz(TTS)", + "Tfs Z": "TFS Z", + "Thanks for your feedback!": "¡Gracias por tu comentario!", + "The Application Account DN you bind with for search": "Cuenta DN de la aplicación vinculada para búsqueda", + "The base to search for users": "Base para buscar usuarios", + "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.": "El tamaño de lote determina cuántas solicitudes de texto se procesan juntas de una vez. Un tamaño de lote más alto puede aumentar el rendimiento y la velocidad del modelo, pero también requiere más memoria.", + "The developers behind this plugin are passionate volunteers from the community. If you find this plugin helpful, please consider contributing to its development.": "Quienes desarollaron este complemento son apasionados voluntarios/as de la comunidad. Si este complemento te es útil, por favor considera contribuir a su desarrollo.", + "The evaluation leaderboard is based on the Elo rating system and is updated in real-time.": "La tabla clasificatoria de evaluación se basa en el sistema de clasificación Elo y se actualiza en tiempo real.", + "The LDAP attribute that maps to the mail that users use to sign in.": "El atributo LDAP que mapea el correo que los usuarios utilizan para iniciar sesión.", + "The LDAP attribute that maps to the username that users use to sign in.": "El atributo LDAP que mapea el nombre de usuario que los usuarios utilizan para iniciar sesión.", + "The leaderboard is currently in beta, and we may adjust the rating calculations as we refine the algorithm.": "La tabla clasificatoria está actualmente en beta, por lo que los cálculos de clasificación pueden reajustarse a medida que se refina el algoritmo.", + "The maximum file size in MB. If the file size exceeds this limit, the file will not be uploaded.": "El tamaño máximo del archivo en MB. Si el tamaño del archivo supera este límite, el archivo no se subirá.", + "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 número máximo de archivos que se pueden utilizar a la vez en el chat. Si se supera este límite, los archivos no se subirán.", + "The score should be a value between 0.0 (0%) and 1.0 (100%).": "La puntuación debe ser un valor entre 0.0 (0%) y 1.0 (100%).", + "The temperature of the model. Increasing the temperature will make the model answer more creatively.": "La temperatura del modelo. Aumentar la temperatura hará que el modelo responda de forma más creativa.", + "Theme": "Tema", + "Thinking...": "Pensando...", + "This action cannot be undone. Do you wish to continue?": "Esta acción no se puede deshacer. ¿Desea continuar?", + "This channel was created on {{createdAt}}. This is the very beginning of the {{channelName}} channel.": "Este canal fue creado el {{createdAt}}. Este es el comienzo del canal {{channelName}}.", + "This chat won’t appear in history and your messages will not be saved.": "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.": "", + "This option controls how many tokens are preserved when refreshing the context. For example, if set to 2, the last 2 tokens of the conversation context will be retained. Preserving context can help maintain the continuity of a conversation, but it may reduce the ability to respond to new topics.": "Esta opción controla cuántos tokens se conservan cuando se actualiza el contexto. Por ejemplo, si se establece en 2, se conservarán los primeros 2 tokens del contexto de la conversación. Conservar el contexto puede ayudar a mantener la continuidad de una conversación, pero puede reducir la habilidad para responder a nuevos temas.", + "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.": "Esta opción establece el número máximo de tokens que el modelo puede generar en sus respuestas. Aumentar este límite permite al modelo proporcionar respuestas más largas, pero también puede aumentar la probabilidad de que se genere contenido inútil o irrelevante.", + "This option will delete all existing files in the collection and replace them with newly uploaded files.": "Esta opción eliminará todos los archivos existentes en la colección y los reemplazará con los nuevos archivos subidos.", + "This response was generated by \"{{model}}\"": "Esta respuesta fue generada por \"{{model}}\"", + "This will delete": "Esto eliminará", + "This will delete {{NAME}} and all its contents.": "Esto eliminará {{NAME}} y todo su contenido.", + "This will delete all models including custom models": "Esto eliminará todos los modelos, incluidos los modelos personalizados", + "This will delete all models including custom models and cannot be undone.": "Esto eliminará todos los modelos, incluidos los modelos personalizados y no se puede deshacer.", + "This will reset the knowledge base and sync all files. Do you wish to continue?": "Esto reinicializará la base de conocimientos y sincronizará todos los archivos. ¿Desea continuar?", + "Thorough explanation": "Explicación exhaustiva", + "Thought for {{DURATION}}": "Pensando durante {{DURATION}}", + "Thought for {{DURATION}} seconds": "Persando durante {{DURATION}} segundos", + "Tika": "Tika", + "Tika Server URL required.": "URL del Servidor Tika necesaria", + "Tiktoken": "Tiktoken", + "Tip: Update multiple variable slots consecutively by pressing the tab key in the chat input after each replacement.": "Consejo: Actualiza múltiples variables encastradas en el chat consecutivamente pulsando la tecla tab en el chat después de cada reemplazo.", + "Title": "Título", + "Title (e.g. Tell me a fun fact)": "Título (p.ej. cuéntame un hecho divertidado)", + "Title Auto-Generation": "AutoGeneración de Títulos", + "Title cannot be an empty string.": "El título no puede ser una cadena vacía.", + "Title Generation": "Generación de Títulos", + "Title Generation Prompt": "Prompt para la Generación de Título", + "TLS": "TLS", + "To access the available model names for downloading,": "Para acceder a los nombres de modelos disponibles para descargar,", + "To access the GGUF models available for downloading,": "Para acceder a los modelos GGUF disponibles para descargar,", + "To access the WebUI, please reach out to the administrator. Admins can manage user statuses from the Admin Panel.": "Para acceder a WebUI, por favor contacte con Admins. Los administradores pueden gestionar los estados de los usuarios esde el panel de administración.", + "To attach knowledge base here, add them to the \"Knowledge\" workspace first.": "Para adjuntar la base de conocimientos aquí, primero añadirla a \"Conocimiento\" en el área de trabajo.", + "To learn more about available endpoints, visit our documentation.": "Para aprender más sobre los endpoints disponibles, visite nuestra documentación.", + "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.": "Para proteger tu privacidad, de tu realimentación solo se comparten las calificaciones, IDs de modelo, etiquetas y metadatos; tus chat registrados permanecen privados y no se incluyen.", + "To select actions here, add them to the \"Functions\" workspace first.": "Para seleccionar acciones aquí, primero añadirlas a \"Funciones\" en el área de trabajo.", + "To select filters here, add them to the \"Functions\" workspace first.": "Para seleccionar filtros aquí, primero añadirlos a \"Funciones\" en el área de trabajo.", + "To select toolkits here, add them to the \"Tools\" workspace first.": "Para seleccionar herramientas aquí, primero añadelas a \"Herramientas\" en el área de trabajo.", + "Toast notifications for new updates": "Notificaciones emergentes para nuevas actualizaciones", + "Today": "Hoy", + "Toggle settings": "Alternar Ajustes", + "Toggle sidebar": "Alternar Barra Lateral", + "Token": "Token", + "Tokens To Keep On Context Refresh (num_keep)": "Tokens a Mantener al Actualizar el Contexto (num_keep)", + "Too verbose": "Demasiado detallado", + "Tool created successfully": "Herramienta creada correctamente", + "Tool deleted successfully": "Herramienta eliminada correctamente", + "Tool Description": "Descripción de la Herramienta", + "Tool ID": "ID de la Herramienta", + "Tool imported successfully": "Herramienta importada correctamente", + "Tool Name": "Nombre de la Herramienta", + "Tool Servers": "Servidores de Herraientas", + "Tool updated successfully": "Herramienta actualizada correctamente", + "Tools": "Herramientas", + "Tools Access": "Acceso a Herramientas", + "Tools are a function calling system with arbitrary code execution": "Las herramientas son un sistema de llamada de funciones con ejecución de código arbitrario", + "Tools Function Calling Prompt": "Prompt para la Función de Llamada a las Herramientas", + "Tools have a function calling system that allows arbitrary code execution.": "Las herramientas tienen un sistema de llamada de funciones que permite la ejecución de código arbitrario.", + "Tools Public Sharing": "", + "Top K": "Top K", + "Top K Reranker": "Top K Reclasificador", + "Top P": "Top P", + "Transformers": "Transformadores", + "Trouble accessing Ollama?": "¿Problemas para acceder a Ollama?", + "Trust Proxy Environment": "Entorno Proxy Confiable", + "TTS Model": "Modelo TTS", + "TTS Settings": "Ajustes Texto a Voz (TTS)", + "TTS Voice": "Voz TTS", + "Type": "Tipo", + "Type Hugging Face Resolve (Download) URL": "Escribir la URL de Hugging Face Resolve (Descarga)", + "Uh-oh! There was an issue with the response.": "¡Vaya! Hubo un problema con la respuesta.", + "UI": "IU", + "Unarchive All": "Desarchivar Todo", + "Unarchive All Archived Chats": "Desarchivar Todos los Chats Archivados", + "Unarchive Chat": "Desarchivar Chat", + "Unlock mysteries": "Desbloquear misterios", + "Unpin": "Desfijar", + "Unravel secrets": "Desentrañar secretos", + "Untagged": "Desetiquetado", + "Untitled": "", + "Update": "Actualizar", + "Update and Copy Link": "Actualizar y Copiar Enlace", + "Update for the latest features and improvements.": "Actualizar para las últimas características y mejoras.", + "Update password": "Actualizar contraseña", + "Updated": "Actualizado", + "Updated at": "Actualizado el", + "Updated At": "Actualizado El", + "Upgrade to a licensed plan for enhanced capabilities, including custom theming and branding, and dedicated support.": "Mejore a un plan con licencia para tener capacidades mejoradas, incluyendo personalización de marca e interface, y soporte dedicado.", + "Upload": "Subir", + "Upload a GGUF model": "Subir un modelo GGUF", + "Upload Audio": "", + "Upload directory": "Directorio de Subidas", + "Upload files": "Subir archivos", + "Upload Files": "Subir Archivos", + "Upload Pipeline": "Subir Tubería", + "Upload Progress": "Progreso de la Subida", + "URL": "URL", + "URL Mode": "Modo URL", + "Use '#' in the prompt input to load and include your knowledge.": "Utilizar '#' en el prompt para cargar e incluir tu conocimiento.", + "Use Gravatar": "Usar Gravatar", + "Use groups to group your users and assign permissions.": "Usar grupos para agrupar a usuarios y asignar permisos.", + "Use Initials": "Usar Iniciales", + "Use no proxy to fetch page contents.": "No usar proxy para extraer contenidos", + "Use proxy designated by http_proxy and https_proxy environment variables to fetch page contents.": "Usar el proxy asignado en las variables del entorno http_proxy y/o https_proxy para extraer contenido", + "use_mlock (Ollama)": "use_mlock (Ollama)", + "use_mmap (Ollama)": "use_mmap (Ollama)", + "user": "usuario", + "User": "Usuario", + "User location successfully retrieved.": "Ubicación de usuario obtenida correctamente.", + "User Webhooks": "Usuario Webhooks", + "Username": "Nombre de Usuario", + "Users": "Usuarios", + "Using the default arena model with all models. Click the plus button to add custom models.": "Usando el modelo de arena predeterminado con todos los modelos. Pulsar en el botón + para agregar modelos personalizados.", + "Utilize": "Utilizar", + "Valid time units:": "Unidades de tiempo válidas:", + "Valves": "Válvulas", + "Valves updated": "Válvulas actualizadas", + "Valves updated successfully": "Válvulas actualizados correctamente", + "variable": "variable", + "variable to have them replaced with clipboard content.": "hace que la variable sea reemplazada con el contenido del portapapeles.", + "Verify Connection": "Verificar Conexión", + "Verify SSL Certificate": "", + "Version": "Versión", + "Version {{selectedVersion}} of {{totalVersions}}": "Versión {{selectedVersion}} de {{totalVersions}}", + "View Replies": "Ver Respuestas", + "View Result from **{{NAME}}**": "", + "Visibility": "Visibilidad", + "Voice": "Voz", + "Voice Input": "Entrada de Voz", + "Warning": "Aviso", + "Warning:": "Aviso:", + "Warning: Enabling this will allow users to upload arbitrary code on the server.": "Aviso: Habilitar esto permitirá a los usuarios subir código arbitrario al servidor.", + "Warning: If you update or change your embedding model, you will need to re-import all documents.": "Aviso: Si actualizas o cambias el modelo de incrustacción, necesitarás re-importar todos los documentos.", + "Warning: Jupyter execution enables arbitrary code execution, posing severe security risks—proceed with extreme caution.": "Aviso: La ejecución Jupyter habilita la ejecución de código arbitrario, planteando graves riesgos de seguridad; Proceder con extrema precaución.", + "Web": "Web", + "Web API": "API Web", + "Web Loader Engine": "", + "Web Search": "Búsqueda Web", + "Web Search Engine": "Motor Búsqueda Web", + "Web Search in Chat": "Búsqueda Web en Chat", + "Web Search Query Generation": "Generación de Consulta Búsqueda Web", + "Webhook URL": "URL EnganchesWeb(Webhook)", + "WebUI Settings": "WebUI Ajustes", + "WebUI URL": "WebUI URL", + "WebUI will make requests to \"{{url}}\"": "", + "WebUI will make requests to \"{{url}}/api/chat\"": "WebUI hará solicitudes a \"{{url}}/api/chat\"", + "WebUI will make requests to \"{{url}}/chat/completions\"": "WebUI hará solicitudes a \"{{url}}/chat/completions\"", + "What are you trying to achieve?": "¿Qué estás tratando de conseguir?", + "What are you working on?": "¿En qué estás trabajando?", + "What’s New in": "Que hay de Nuevo en", + "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.": "Cuando está habilitado, el modelo responderá a cada mensaje de chat en tiempo real, generando una respuesta tan pronto como se envíe un mensaje. Este modo es útil para aplicaciones de chat en vivo, pero puede afectar al rendimiento en equipos más lentos.", + "wherever you are": "dondequiera que estés", + "Whisper (Local)": "Whisper (Local)", + "Why?": "¿Por qué?", + "Widescreen Mode": "Modo Pantalla Ancha", + "Won": "Ganó", + "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.": "Trabaja conjuntamente con top-k. Un valor más alto (p.ej. 0.95) dará lugar a un texto más diverso, mientras que un valor más bajo (p.ej. 0.5) generará un texto más centrado y conservador.", + "Workspace": "Espacio de Trabajo", + "Workspace Permissions": "Permisos del Espacio de Trabajo", + "Write": "Escribir", + "Write a prompt suggestion (e.g. Who are you?)": "Escribe una sugerencia de prompt (p.ej. ¿quién eres?)", + "Write a summary in 50 words that summarizes [topic or keyword].": "Escribe un resumen en 50 palabras que resuma [tema o palabra clave].", + "Write something...": "Escribe algo...", + "Write your model template content here": "Escribe el contenido de la plantilla de tu modelo aquí", + "Yacy Instance URL": "", + "Yacy Password": "", + "Yacy Username": "", + "Yesterday": "Ayer", + "You": "Tu", + "You are currently using a trial license. Please contact support to upgrade your license.": "Actualmente estás utilizando una licencia de prueba. Por favor, para actualizar su licencia contacta con soporte.", + "You can only chat with a maximum of {{maxCount}} file(s) at a time.": "Solo puedes chatear con un máximo de {{maxCount}} archivo(s) a la vez.", + "You can personalize your interactions with LLMs by adding memories through the 'Manage' button below, making them more helpful and tailored to you.": "Puedes personalizar tus interacciones con los LLMs añadiendo memorias a través del botón 'Gestionar' debajo, haciendo que te sean más útiles y personalizados.", + "You cannot upload an empty file.": "No puedes subir un archivo vacío.", + "You do not have permission to upload files.": "No tienes permiso para subir archivos.", + "You have no archived conversations.": "No tienes conversaciones archivadas.", + "You have shared this chat": "Has compartido esta conversación", + "You're a helpful assistant.": "Eres un asistente atento, amable y servicial.", + "You're now logged in.": "Has iniciado sesión.", + "Your account status is currently pending activation.": "Tu cuenta está pendiente de activación.", + "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.": "Tu entera contribución irá directamente al desarrollador del complemento; Open-WebUI no recibe ningún porcentaje. Sin embargo, la plataforma de financiación elegida podría tener sus propias tarifas.", + "Youtube": "Youtube", + "Youtube Language": "Youtube Idioma", + "Youtube Proxy URL": "Youtube URL Proxy" } From fb2950201a3dcfee7a4875c8c69db976f73caf2d Mon Sep 17 00:00:00 2001 From: hwzhuhao <923196325@qq.com> Date: Mon, 12 May 2025 22:18:47 +0800 Subject: [PATCH 006/100] refactor: replace print statements with logging --- backend/open_webui/utils/middleware.py | 2 +- backend/open_webui/utils/tools.py | 8 +++++--- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/backend/open_webui/utils/middleware.py b/backend/open_webui/utils/middleware.py index 442dfba76..03ff781e4 100644 --- a/backend/open_webui/utils/middleware.py +++ b/backend/open_webui/utils/middleware.py @@ -651,7 +651,7 @@ def apply_params_to_form_data(form_data, model): convert_logit_bias_input_to_json(params["logit_bias"]) ) except Exception as e: - print(f"Error parsing logit_bias: {e}") + log.exception(f"Error parsing logit_bias: {e}") return form_data diff --git a/backend/open_webui/utils/tools.py b/backend/open_webui/utils/tools.py index 123ec5fb9..f0b37b605 100644 --- a/backend/open_webui/utils/tools.py +++ b/backend/open_webui/utils/tools.py @@ -37,6 +37,7 @@ from open_webui.models.tools import Tools from open_webui.models.users import UserModel from open_webui.utils.plugin import load_tool_module_by_id from open_webui.env import ( + SRC_LOG_LEVELS, AIOHTTP_CLIENT_TIMEOUT_TOOL_SERVER_DATA, AIOHTTP_CLIENT_SESSION_TOOL_SERVER_SSL, ) @@ -44,6 +45,7 @@ from open_webui.env import ( import copy log = logging.getLogger(__name__) +log.setLevel(SRC_LOG_LEVELS["MODELS"]) def get_async_tool_function_and_apply_extra_params( @@ -477,7 +479,7 @@ async def get_tool_server_data(token: str, url: str) -> Dict[str, Any]: "specs": convert_openapi_to_tool_payload(res), } - print("Fetched data:", data) + log.info("Fetched data:", data) return data @@ -510,7 +512,7 @@ async def get_tool_servers_data( results = [] for (idx, server, url, _), response in zip(server_entries, responses): if isinstance(response, Exception): - print(f"Failed to connect to {url} OpenAPI tool server") + log.error(f"Failed to connect to {url} OpenAPI tool server") continue results.append( @@ -620,5 +622,5 @@ async def execute_tool_server( except Exception as err: error = str(err) - print("API Request Error:", error) + log.exception("API Request Error:", error) return {"error": error} From a904f874ee297402b694013620fd32b6825bc19d Mon Sep 17 00:00:00 2001 From: Timothy Jaeryang Baek Date: Mon, 12 May 2025 20:03:40 +0400 Subject: [PATCH 007/100] fix: admin signup logic --- backend/open_webui/routers/auths.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/backend/open_webui/routers/auths.py b/backend/open_webui/routers/auths.py index 309862ed5..70eea3c97 100644 --- a/backend/open_webui/routers/auths.py +++ b/backend/open_webui/routers/auths.py @@ -478,10 +478,6 @@ async def signup(request: Request, response: Response, form_data: SignupForm): "admin" if user_count == 0 else request.app.state.config.DEFAULT_USER_ROLE ) - if user_count == 0: - # Disable signup after the first user is created - request.app.state.config.ENABLE_SIGNUP = False - # The password passed to bcrypt must be 72 bytes or fewer. If it is longer, it will be truncated before hashing. if len(form_data.password.encode("utf-8")) > 72: raise HTTPException( @@ -541,6 +537,10 @@ async def signup(request: Request, response: Response, form_data: SignupForm): user.id, request.app.state.config.USER_PERMISSIONS ) + if user_count == 0: + # Disable signup after the first user is created + request.app.state.config.ENABLE_SIGNUP = False + return { "token": token, "token_type": "Bearer", From dfd4037132cfdb8bf4c2b942658ca5f78a9efa25 Mon Sep 17 00:00:00 2001 From: Jan Kessler Date: Tue, 13 May 2025 07:48:29 +0200 Subject: [PATCH 008/100] better handling of frontend updates, following svelte docs --- Dockerfile | 3 +++ src/routes/+layout.svelte | 10 ++++++++++ svelte.config.js | 8 +++++++- 3 files changed, 20 insertions(+), 1 deletion(-) diff --git a/Dockerfile b/Dockerfile index 5102afd28..d7de72f01 100644 --- a/Dockerfile +++ b/Dockerfile @@ -26,6 +26,9 @@ ARG BUILD_HASH WORKDIR /app +# to store git revision in build +RUN apk add --no-cache git + COPY package.json package-lock.json ./ RUN npm ci diff --git a/src/routes/+layout.svelte b/src/routes/+layout.svelte index 31bb6e884..f49788294 100644 --- a/src/routes/+layout.svelte +++ b/src/routes/+layout.svelte @@ -49,6 +49,16 @@ import AppSidebar from '$lib/components/app/AppSidebar.svelte'; import { chatCompletion } from '$lib/apis/openai'; + import { beforeNavigate } from '$app/navigation'; + import { updated } from '$app/state'; + + // handle frontend updates (https://svelte.dev/docs/kit/configuration#version) + beforeNavigate(({ willUnload, to }) => { + if (updated.current && !willUnload && to?.url) { + location.href = to.url.href; + } + }); + setContext('i18n', i18n); const bc = new BroadcastChannel('active-tab-channel'); diff --git a/svelte.config.js b/svelte.config.js index 0e5f9097b..19b397286 100644 --- a/svelte.config.js +++ b/svelte.config.js @@ -1,4 +1,5 @@ import adapter from '@sveltejs/adapter-static'; +import * as child_process from 'node:child_process'; import { vitePreprocess } from '@sveltejs/vite-plugin-svelte'; /** @type {import('@sveltejs/kit').Config} */ @@ -14,7 +15,12 @@ const config = { pages: 'build', assets: 'build', fallback: 'index.html' - }) + }), + // poll for new version name every 60 seconds (to trigger reload mechanic in +layout.svelte) + version: { + name: child_process.execSync('git rev-parse HEAD').toString().trim(), + pollInterval: 60000 + } }, vitePlugin: { // inspector: { From b41fc1d2f4b1bdb008591c377ae7f44683925868 Mon Sep 17 00:00:00 2001 From: Tiancong Li Date: Tue, 13 May 2025 16:30:59 +0800 Subject: [PATCH 009/100] i18n: update zh-TW --- src/lib/i18n/locales/zh-TW/translation.json | 136 ++++++++++---------- 1 file changed, 68 insertions(+), 68 deletions(-) diff --git a/src/lib/i18n/locales/zh-TW/translation.json b/src/lib/i18n/locales/zh-TW/translation.json index 81fe2cdec..6909696c3 100644 --- a/src/lib/i18n/locales/zh-TW/translation.json +++ b/src/lib/i18n/locales/zh-TW/translation.json @@ -4,7 +4,7 @@ "(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)": "", + "(leave blank for to use commercial endpoint)": "(留空以使用商業端點)", "(Ollama)": "(Ollama)", "{{ models }}": "{{ models }}", "{{COUNT}} Available Tools": "{{COUNT}} 個可用工具", @@ -13,8 +13,8 @@ "{{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 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": "接受自動完成生成/跳轉至提示變數", @@ -56,7 +56,7 @@ "Advanced Parameters": "進階參數", "Advanced Params": "進階參數", "All": "全部", - "All Documents": "所有文件", + "All Documents": "所有檔案", "All models deleted successfully": "成功刪除所有模型", "Allow Call": "允許通話", "Allow Chat Controls": "允許控制對話", @@ -83,12 +83,12 @@ "Amazing": "很棒", "an assistant": "助理", "Analyzed": "分析完畢", - "Analyzing...": "分析中……", + "Analyzing...": "正在分析……", "and": "和", "and {{COUNT}} more": "和另外 {{COUNT}} 個", "and create a new shared link.": "並建立新的共用連結。", "Android": "Android", - "API Base URL": "API 基礎 URL", + "API Base URL": "API Base URL", "API Key": "API 金鑰", "API Key created.": "API 金鑰已建立。", "API Key Endpoint Restrictions": "API 金鑰端點限制", @@ -128,8 +128,8 @@ "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。", + "AUTOMATIC1111 Base URL": "AUTOMATIC1111 Base URL", + "AUTOMATIC1111 Base URL is required.": "需要 AUTOMATIC1111 Base URL。", "Available list": "可用清單", "Available Tools": "可用工具", "available!": "可用!", @@ -174,12 +174,12 @@ "Chat direction": "對話方向", "Chat Overview": "對話概覽", "Chat Permissions": "對話權限", - "Chat Tags Auto-Generation": "自動產生對話標籤", + "Chat Tags Auto-Generation": "自動生成對話標籤", "Chats": "對話", "Check Again": "再次檢查", "Check for updates": "檢查更新", - "Checking for updates...": "正在檢查更新...", - "Choose a model before saving...": "儲存前請選擇一個模型...", + "Checking for updates...": "正在檢查更新……", + "Choose a model before saving...": "儲存前請選擇一個模型……", "Chunk Overlap": "區塊重疊", "Chunk Size": "區塊大小", "Ciphers": "加密方式", @@ -217,8 +217,8 @@ "Color": "顏色", "ComfyUI": "ComfyUI", "ComfyUI API Key": "ComfyUI API 金鑰", - "ComfyUI Base URL": "ComfyUI 基礎 URL", - "ComfyUI Base URL is required.": "需要 ComfyUI 基礎 URL。", + "ComfyUI Base URL": "ComfyUI Base URL", + "ComfyUI Base URL is required.": "需要 ComfyUI Base URL。", "ComfyUI Workflow": "ComfyUI 工作流程", "ComfyUI Workflow Nodes": "ComfyUI 工作流程節點", "Command": "命令", @@ -247,7 +247,7 @@ "Control how message text is split for TTS requests. 'Punctuation' splits into sentences, 'paragraphs' splits into paragraphs, and 'none' keeps the message as a single string.": "控制文字轉語音(TTS)請求中如何分割訊息文字。「標點符號」分割為句子,「段落」分割為段落,「無」則保持訊息為單一字串。", "Control the repetition of token sequences in the generated text. A higher value (e.g., 1.5) will penalize repetitions more strongly, while a lower value (e.g., 1.1) will be more lenient. At 1, it is disabled.": "控制生成文字中 token 序列的重複程度。較高的值(例如: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.": "控制輸出結果的連貫性與多樣性之間的平衡。數值越低會產生更集中且連貫的文字。", + "Controls the balance between coherence and diversity of the output. A lower value will result in more focused and coherent text.": "控制輸出結果的連貫性與多樣性之間的平衡。數值越低會生成更集中且連貫的文字。", "Copied": "已複製", "Copied shared chat URL to clipboard!": "已複製共用對話 URL 到剪貼簿!", "Copied to clipboard": "已複製到剪貼簿", @@ -346,11 +346,11 @@ "Do not install tools from sources you do not fully trust.": "請勿從您無法完全信任的來源安裝工具。", "Docling": "Docling", "Docling Server URL required.": "Docling 伺服器 URL 為必填。", - "Document": "文件", + "Document": "檔案", "Document Intelligence": "Document Intelligence", "Document Intelligence endpoint and key required.": "需提供 Document Intelligence 端點及金鑰", - "Documentation": "文件", - "Documents": "文件", + "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?": "還沒註冊帳號嗎?", @@ -376,7 +376,7 @@ "e.g. Tools for performing various operations": "例如:用於執行各種操作的工具", "e.g., 3, 4, 5 (leave blank for default)": "例如:3、4、5(留空使用預設值)", "e.g., en-US,ja-JP (leave blank for auto-detect)": "例如:en-US, ja-JP(留空以自動偵測)", - "e.g., westus (leave blank for eastus)": "", + "e.g., westus (leave blank for eastus)": "例如:westus(留空則使用 eastus)", "Edit": "編輯", "Edit Arena Model": "編輯競技場模型", "Edit Channel": "編輯頻道", @@ -404,7 +404,7 @@ "Enable Mirostat sampling for controlling perplexity.": "啟用 Mirostat 取樣以控制 perplexity。", "Enable New Sign Ups": "允許新使用者註冊", "Enabled": "已啟用", - "Endpoint URL": "", + "Endpoint URL": "端點 URL", "Enforce Temporary Chat": "強制使用臨時對話", "Enhance": "增強", "Ensure your CSV file includes 4 columns in this order: Name, Email, Password, Role.": "請確認您的 CSV 檔案包含以下 4 個欄位,並按照此順序排列:姓名、電子郵件、密碼、角色。", @@ -434,7 +434,7 @@ "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 Base URL": "輸入 Firecrawl API Base URL", "Enter Firecrawl API Key": "輸入 Firecrawl API 金鑰", "Enter Github Raw URL": "輸入 GitHub Raw URL", "Enter Google PSE API Key": "輸入 Google PSE API 金鑰", @@ -480,7 +480,7 @@ "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 public URL of your WebUI. This URL will be used to generate links in the notifications.": "請輸入您 WebUI 的公開 URL。此 URL 將用於在通知中生成連結。", "Enter Tika Server URL": "輸入 Tika 伺服器 URL", "Enter timeout in seconds": "請以秒為單位輸入超時時間", "Enter to Send": "使用 Enter 傳送", @@ -518,7 +518,7 @@ "Exceeded the number of seats in your license. Please contact support to increase the number of seats.": "您的授權名額已超過上限。請聯絡支援以增加授權名額。", "Exclude": "排除", "Execute code for analysis": "執行程式碼以進行分析", - "Executing **{{NAME}}**...": "正在執行 **{{NAME}}**...", + "Executing **{{NAME}}**...": "正在執行 **{{NAME}}** ……", "Expand": "展開", "Experimental": "實驗性功能", "Explain": "解釋", @@ -563,7 +563,7 @@ "File added successfully.": "檔案新增成功。", "File content updated successfully.": "檔案內容更新成功。", "File Mode": "檔案模式", - "File not found.": "找不到檔案。", + "File not found.": "未找到檔案。", "File removed successfully.": "成功移除檔案。", "File size should not exceed {{maxSize}} MB.": "檔案大小不應超過 {{maxSize}} MB。", "File uploaded successfully": "檔案上傳成功", @@ -572,7 +572,7 @@ "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 Base URL": "Firecrawl API Base URL", "Firecrawl API Key": "Firecrawl API 金鑰", "Fluidly stream large external response chunks": "流暢地串流大型外部回應區塊", "Focus chat input": "聚焦對話輸入", @@ -603,12 +603,12 @@ "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...": "", + "Generate": "生成", + "Generate an image": "生成圖片", + "Generate Image": "生成圖片", + "Generate prompt pair": "生成提示配對", + "Generating search query": "正在生成搜尋查詢", + "Generating...": "正在生成……", "Get started": "開始使用", "Get started with {{WEBUI_NAME}}": "開始使用 {{WEBUI_NAME}}", "Global": "全域", @@ -671,8 +671,8 @@ "Integration": "整合", "Interface": "介面", "Invalid file content": "檔案內容無效", - "Invalid file format.": "無效檔案格式。", - "Invalid JSON schema": "無效的 JSON schema", + "Invalid file format.": "檔案格式無效。", + "Invalid JSON schema": "JSON Schema 無效", "Invalid Tag": "無效標籤", "is typing...": "正在輸入……", "January": "1 月", @@ -718,7 +718,7 @@ "Leave model field empty to use the default model.": "留空模型欄位以使用預設模型。", "License": "授權", "Light": "淺色", - "Listening...": "正在聆聽...", + "Listening...": "正在聆聽……", "Llama.cpp": "Llama.cpp", "LLMs can make mistakes. Verify important information.": "大型語言模型可能會犯錯。請自行驗證重要資訊。", "Loader": "載入工具", @@ -747,7 +747,7 @@ "Max Upload Size": "最大上傳大小", "Maximum of 3 models can be downloaded simultaneously. Please try again later.": "最多可同時下載 3 個模型。請稍後再試。", "May": "5 月", - "Memories accessible by LLMs will be shown here.": "可被大型語言模型存取的記憶將顯示在這裡。", + "Memories accessible by LLMs will be shown here.": "可被大型語言模型存取的記憶將顯示在此。", "Memory": "記憶", "Memory added successfully": "成功新增記憶", "Memory cleared successfully": "成功清除記憶", @@ -759,7 +759,7 @@ "Messages you send after creating your link won't be shared. Users with the URL will be able to view the shared chat.": "建立連結後傳送的訊息不會被分享。擁有網址的使用者可檢視分享的對話內容。", "Microsoft OneDrive": "Microsoft OneDrive", "Microsoft OneDrive (personal)": "Microsoft OneDrive(個人版)", - "Microsoft OneDrive (work/school)": "Microsoft OneDrive(公司版/學校版)", + "Microsoft OneDrive (work/school)": "Microsoft OneDrive(公司版/學校版)", "Min P": "最小 P 值", "Mirostat": "Mirostat", "Mirostat Eta": "Mirostat Eta", @@ -769,7 +769,7 @@ "Model": "模型", "Model '{{modelName}}' has been successfully downloaded.": "模型「{{modelName}}」已成功下載。", "Model '{{modelTag}}' is already in queue for downloading.": "模型「{{modelTag}}」已在下載佇列中。", - "Model {{modelId}} not found": "找不到模型 {{modelId}}", + "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}} 已隱藏", @@ -803,31 +803,31 @@ "New Password": "新密碼", "new-channel": "new-channel", "No content": "無內容", - "No content found": "找不到內容", - "No content found in file.": "檔案中找不到內容。", + "No content found": "未找到內容", + "No content found in file.": "檔案中未找到內容。", "No content to speak": "無可朗讀的內容", "No distance available": "無可用距離", - "No feedbacks found": "找不到回饋", + "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 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 model IDs": "沒有模型 ID", + "No models found": "未找到模型", "No models selected": "未選取模型", "No Notes": "尚無筆記", - "No results found": "找不到任何結果", - "No search query generated": "未產生搜尋查詢", + "No results found": "未找到任何結果", + "No search query generated": "未生成搜尋查詢", "No source available": "無可用源", - "No users were found.": "找不到任何使用者", + "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.": "注意:如果您設定了最低分數,則搜尋只會回傳分數大於或等於最低分數的文件。", + "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", @@ -848,7 +848,7 @@ "OneDrive": "OneDrive", "Only alphanumeric characters and hyphens are allowed": "只允許使用英文字母、數字和連字號", "Only alphanumeric characters and hyphens are allowed in the command string.": "命令字串中只允許使用英文字母、數字和連字號。", - "Only collections can be edited, create a new knowledge base to edit/add documents.": "只能編輯集合,請建立新的知識以編輯或新增文件。", + "Only 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 似乎無效。請仔細檢查並再試一次。", @@ -878,7 +878,7 @@ "page": "頁面", "Password": "密碼", "Paste Large Text as File": "將大型文字以檔案貼上", - "PDF document (.pdf)": "PDF 文件 (.pdf)", + "PDF document (.pdf)": "PDF 檔案 (.pdf)", "PDF Extract Images (OCR)": "PDF 影像擷取(OCR 光學文字辨識)", "pending": "待處理", "Permission denied when accessing media devices": "存取媒體裝置時權限遭拒", @@ -941,11 +941,11 @@ "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)會更保守。", + "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": "重新產生", + "Regenerate": "重新生成", "Reindex": "重新索引", "Reindex Knowledge Base Vectors": "重新索引知識庫向量", "Release Notes": "釋出説明", @@ -959,7 +959,7 @@ "Repeat Penalty (Ollama)": "重複懲罰 (Ollama)", "Reply in Thread": "在討論串中回覆", "Request Mode": "請求模式", - "Reranking Engine": "", + "Reranking Engine": "重新排序引擎", "Reranking Model": "重新排序模型", "Reset": "重設", "Reset All Models": "重設所有模型", @@ -978,7 +978,7 @@ "Rosé Pine Dawn": "黎明玫瑰松", "RTL": "從右到左", "Run": "執行", - "Running": "運作中", + "Running": "正在執行", "Save": "儲存", "Save & Create": "儲存並建立", "Save & Update": "儲存並更新", @@ -1068,8 +1068,8 @@ "Show": "顯示", "Show \"What's New\" modal on login": "登入時顯示「新功能」對話框", "Show Admin Details in Account Pending Overlay": "在帳號待審覆蓋層中顯示管理員詳細資訊", - "Show All": "", - "Show Less": "", + "Show All": "顯示全部", + "Show Less": "顯示較少", "Show Model": "顯示模型", "Show shortcuts": "顯示快捷鍵", "Show your support!": "表達您的支持!", @@ -1093,7 +1093,7 @@ "Stream Chat Response": "串流式對話回應", "STT Model": "語音轉文字 (STT) 模型", "STT Settings": "語音轉文字 (STT) 設定", - "Stylized PDF Export": "", + "Stylized PDF Export": "風格化 PDF 匯出", "Subtitle (e.g. about the Roman Empire)": "副標題(例如:關於羅馬帝國)", "Success": "成功", "Successfully updated.": "更新成功。", @@ -1140,7 +1140,7 @@ "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 model is not publicly available. Please select another model.": "此模型未開放公眾使用,請選擇其他模型。", "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 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 數量。增加此限制允許模型提供更長的答案,但也可能增加生成無用或不相關內容的可能性。", "This option will delete all existing files in the collection and replace them with newly uploaded files.": "此選項將刪除集合中的所有現有檔案,並用新上傳的檔案取代它們。", @@ -1159,16 +1159,16 @@ "Tip: Update multiple variable slots consecutively by pressing the tab key in the chat input after each replacement.": "提示:在每次替換後按下對話輸入框中的 Tab 鍵,即可連續更新多個變數欄位。", "Title": "標題", "Title (e.g. Tell me a fun fact)": "標題(例如:告訴我一個有趣的事實)", - "Title Auto-Generation": "自動產生標題", + "Title Auto-Generation": "自動生成標題", "Title cannot be an empty string.": "標題不能是空字串。", - "Title Generation": "產生標題", - "Title Generation Prompt": "產生標題的提示詞", + "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 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.": "若要在此選擇篩選器,請先將它們新增到「函式」工作區。", @@ -1267,14 +1267,14 @@ "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 執行允許任意程式碼執行,構成嚴重安全風險——請務必極度謹慎。", + "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 in Chat": "在對話中進行網頁搜尋", "Web Search Query Generation": "網頁搜尋查詢生成", "Webhook URL": "Webhook URL", "WebUI Settings": "WebUI 設定", @@ -1291,13 +1291,13 @@ "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)將產生更集中和保守的文字。", + "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": "撰寫", "Write a prompt suggestion (e.g. Who are you?)": "撰寫提示詞建議(例如:你是誰?)", "Write a summary in 50 words that summarizes [topic or keyword].": "用 50 字寫一篇總結 [主題或關鍵字] 的摘要。", - "Write something...": "寫一些什麼...", + "Write something...": "寫一些什麼……", "Write your model template content here": "在此撰寫您的模型範本內容", "Yacy Instance URL": "Yacy 實例 URL", "Yacy Password": "Yacy 密碼", From 24c1b8911c07adaea2ea603d27575c45469ea498 Mon Sep 17 00:00:00 2001 From: Jesper Kristensen Date: Tue, 13 May 2025 10:36:48 +0200 Subject: [PATCH 010/100] Added build:watch script/command to package.json Should make it eaiser to automatically build the front-end when doing local development in docker node containers. --- package.json | 1 + 1 file changed, 1 insertion(+) diff --git a/package.json b/package.json index e7229fb5c..9ffa8298e 100644 --- a/package.json +++ b/package.json @@ -6,6 +6,7 @@ "dev": "npm run pyodide:fetch && vite dev --host", "dev:5050": "npm run pyodide:fetch && vite dev --port 5050", "build": "npm run pyodide:fetch && vite build", + "build:watch": "npm run pyodide:fetch && vite build --watch", "preview": "vite preview", "check": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json", "check:watch": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json --watch", From 66d73cb1dec7802693f7f607ba90682c58e736cd Mon Sep 17 00:00:00 2001 From: hary777 Date: Tue, 13 May 2025 15:24:48 +0200 Subject: [PATCH 011/100] Update translation.json fix typo Fix typo "amin". I can not look at this anymore. --- src/lib/i18n/locales/cs-CZ/translation.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/lib/i18n/locales/cs-CZ/translation.json b/src/lib/i18n/locales/cs-CZ/translation.json index 85c0c791c..3c1e55650 100644 --- a/src/lib/i18n/locales/cs-CZ/translation.json +++ b/src/lib/i18n/locales/cs-CZ/translation.json @@ -48,7 +48,7 @@ "Add User": "Přidat uživatele", "Add User Group": "Přidatg skupinu uživatelů", "Adjusting these settings will apply changes universally to all users.": "Úprava těchto nastavení se projeví univerzálně u všech uživatelů.", - "admin": "amin", + "admin": "admin", "Admin": "Admin", "Admin Panel": "Adminis panel", "Admin Settings": "Nastavení admina", From f63e76e653000d682b1f5568255ee5171b82e830 Mon Sep 17 00:00:00 2001 From: Hans Gaiser Date: Tue, 13 May 2025 17:36:50 +0200 Subject: [PATCH 012/100] Add option to disable certificate validation. --- backend/open_webui/config.py | 6 ++++++ backend/open_webui/main.py | 2 ++ backend/open_webui/routers/auths.py | 13 +++++++++++-- src/lib/components/admin/Settings/General.svelte | 7 +++++++ 4 files changed, 26 insertions(+), 2 deletions(-) diff --git a/backend/open_webui/config.py b/backend/open_webui/config.py index 38bd709f1..2312e31d5 100644 --- a/backend/open_webui/config.py +++ b/backend/open_webui/config.py @@ -2839,6 +2839,12 @@ LDAP_CA_CERT_FILE = PersistentConfig( os.environ.get("LDAP_CA_CERT_FILE", ""), ) +LDAP_VALIDATE_CERT = PersistentConfig( + "LDAP_VALIDATE_CERT", + "ldap.server.validate_cert", + os.environ.get("LDAP_USE_TLS", "True").lower() == "true", +) + LDAP_CIPHERS = PersistentConfig( "LDAP_CIPHERS", "ldap.server.ciphers", os.environ.get("LDAP_CIPHERS", "ALL") ) diff --git a/backend/open_webui/main.py b/backend/open_webui/main.py index e5fdace6d..7aaa598cd 100644 --- a/backend/open_webui/main.py +++ b/backend/open_webui/main.py @@ -317,6 +317,7 @@ from open_webui.config import ( LDAP_APP_PASSWORD, LDAP_USE_TLS, LDAP_CA_CERT_FILE, + LDAP_VALIDATE_CERT, LDAP_CIPHERS, # Misc ENV, @@ -609,6 +610,7 @@ app.state.config.LDAP_SEARCH_BASE = LDAP_SEARCH_BASE app.state.config.LDAP_SEARCH_FILTERS = LDAP_SEARCH_FILTERS app.state.config.LDAP_USE_TLS = LDAP_USE_TLS app.state.config.LDAP_CA_CERT_FILE = LDAP_CA_CERT_FILE +app.state.config.LDAP_VALIDATE_CERT = LDAP_VALIDATE_CERT app.state.config.LDAP_CIPHERS = LDAP_CIPHERS diff --git a/backend/open_webui/routers/auths.py b/backend/open_webui/routers/auths.py index 70eea3c97..f3d68ffe8 100644 --- a/backend/open_webui/routers/auths.py +++ b/backend/open_webui/routers/auths.py @@ -51,7 +51,7 @@ from open_webui.utils.access_control import get_permissions from typing import Optional, List -from ssl import CERT_REQUIRED, PROTOCOL_TLS +from ssl import CERT_NONE, CERT_REQUIRED, PROTOCOL_TLS if ENABLE_LDAP.value: from ldap3 import Server, Connection, NONE, Tls @@ -186,6 +186,11 @@ async def ldap_auth(request: Request, response: Response, form_data: LdapForm): LDAP_APP_PASSWORD = request.app.state.config.LDAP_APP_PASSWORD LDAP_USE_TLS = request.app.state.config.LDAP_USE_TLS LDAP_CA_CERT_FILE = request.app.state.config.LDAP_CA_CERT_FILE + LDAP_VALIDATE_CERT = ( + CERT_REQUIRED + if request.app.state.config.LDAP_VALIDATE_CERT + else CERT_NONE + ) LDAP_CIPHERS = ( request.app.state.config.LDAP_CIPHERS if request.app.state.config.LDAP_CIPHERS @@ -197,7 +202,7 @@ async def ldap_auth(request: Request, response: Response, form_data: LdapForm): try: tls = Tls( - validate=CERT_REQUIRED, + validate=LDAP_VALIDATE_CERT, version=PROTOCOL_TLS, ca_certs_file=LDAP_CA_CERT_FILE, ciphers=LDAP_CIPHERS, @@ -779,6 +784,7 @@ class LdapServerConfig(BaseModel): search_filters: str = "" use_tls: bool = True certificate_path: Optional[str] = None + validate_cert: bool = True ciphers: Optional[str] = "ALL" @@ -796,6 +802,7 @@ async def get_ldap_server(request: Request, user=Depends(get_admin_user)): "search_filters": request.app.state.config.LDAP_SEARCH_FILTERS, "use_tls": request.app.state.config.LDAP_USE_TLS, "certificate_path": request.app.state.config.LDAP_CA_CERT_FILE, + "validate_cert": request.app.state.config.LDAP_VALIDATE_CERT, "ciphers": request.app.state.config.LDAP_CIPHERS, } @@ -831,6 +838,7 @@ async def update_ldap_server( request.app.state.config.LDAP_SEARCH_FILTERS = form_data.search_filters request.app.state.config.LDAP_USE_TLS = form_data.use_tls request.app.state.config.LDAP_CA_CERT_FILE = form_data.certificate_path + request.app.state.config.LDAP_VALIDATE_CERT = form_data.validate_cert request.app.state.config.LDAP_CIPHERS = form_data.ciphers return { @@ -845,6 +853,7 @@ async def update_ldap_server( "search_filters": request.app.state.config.LDAP_SEARCH_FILTERS, "use_tls": request.app.state.config.LDAP_USE_TLS, "certificate_path": request.app.state.config.LDAP_CA_CERT_FILE, + "validate_cert": request.app.state.config.LDAP_VALIDATE_CERT, "ciphers": request.app.state.config.LDAP_CIPHERS, } diff --git a/src/lib/components/admin/Settings/General.svelte b/src/lib/components/admin/Settings/General.svelte index 3741168f8..743c3588c 100644 --- a/src/lib/components/admin/Settings/General.svelte +++ b/src/lib/components/admin/Settings/General.svelte @@ -559,6 +559,13 @@ /> +
+
Validate certificate
+ +
+ +
+
From f72fa9b269248b94f4f473d1621d4592709fda9f Mon Sep 17 00:00:00 2001 From: mini-777 Date: Wed, 14 May 2025 15:28:46 +0900 Subject: [PATCH 013/100] fix: update Korean translations for clarity and accuracy --- src/lib/i18n/locales/ko-KR/translation.json | 36 ++++++++++----------- 1 file changed, 18 insertions(+), 18 deletions(-) diff --git a/src/lib/i18n/locales/ko-KR/translation.json b/src/lib/i18n/locales/ko-KR/translation.json index 55bed1768..78010df7e 100644 --- a/src/lib/i18n/locales/ko-KR/translation.json +++ b/src/lib/i18n/locales/ko-KR/translation.json @@ -1,18 +1,18 @@ { - "-1 for no limit, or a positive integer for a specific limit": "제한 없음은 -1,, 특정 한계를 두려면 양의 정수를 입력하세요", - "'s', 'm', 'h', 'd', 'w' or '-1' for no expiration.": "만료되지 않도록 하려면 '-1', 그 외에는 's', 'm', 'h', 'd', 'w' 단위를를 사용하세요.", - "(e.g. `sh webui.sh --api --api-auth username_password`)": "(예: `sh webui.sh --api --api-auth 사용자이름_비밀번호`)", + "-1 for no limit, or a positive integer for a specific limit": "제한이 없으려면 -1, 한도를 두려면 양의 정수를 입력하세요.", + "'s', 'm', 'h', 'd', 'w' or '-1' for no expiration.": "만료를 원하지 않으면 '-1', 그렇지 않으면 's'·'m'·'h'·'d'·'w' 단위를 사용하세요.", + "(e.g. `sh webui.sh --api --api-auth username_password`)": "(예: sh webui.sh --api --api-auth <아이디:비밀번호>)", "(e.g. `sh webui.sh --api`)": "(예: `sh webui.sh --api`)", "(latest)": "(최신)", "(Ollama)": "(Ollama)", "{{ models }}": "{{ models }}", "{{COUNT}} Available Tools": "{{COUNT}} 사용 가능한 툴", - "{{COUNT}} hidden lines": "{{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}})을 사용할 수 있습니다.", + "*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": "정보", @@ -75,7 +75,7 @@ "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 Expand Details": "세부 정보 항상 펼치기", "Amazing": "훌륭함", "an assistant": "어시스턴트", "Analyzed": "분석 완료", @@ -83,7 +83,7 @@ "and": "그리고", "and {{COUNT}} more": "그리고 {{COUNT}} 더", "and create a new shared link.": "새로운 공유 링크를 생성합니다.", - "Android": "안드로이드드", + "Android": "안드로이드", "API Base URL": "API 기본 URL", "API Key": "API 키", "API Key created.": "API 키가 생성되었습니다.", @@ -104,7 +104,7 @@ "Are you sure?": "확실합니까?", "Arena Models": "Arena 모델", "Artifacts": "아티팩트", - "Ask": "질문문", + "Ask": "질문", "Ask a question": "질문하기", "Assistant": "어시스턴트", "Attach file from knowledge": "지식에서 파일 첨부", @@ -334,8 +334,8 @@ "Dive into knowledge": "지식 속으로 파고들기", "Do not install functions from sources you do not fully trust.": "불분명한 출처를 가진 함수를 설치하지마세요", "Do not install tools from sources you do not fully trust.": "불분명한 출처를 가진 도구를 설치하지마세요", - "Docling": "도킹", - "Docling Server URL required.": "도킹 서버 URL이 필요합니다.", + "Docling": "Docling", + "Docling Server URL required.": "Docling 서버 URL이 필요합니다.", "Document": "문서", "Document Intelligence": "문서 정보", "Document Intelligence endpoint and key required.": "문서 정보 endpoint와 키가 필요합니다.", @@ -375,7 +375,7 @@ "Edit User Group": "사용자 그룹 편집", "ElevenLabs": "ElevenLabs", "Email": "이메일", - "Embark on adventures": "모험을 떠나다", + "Embark on adventures": "모험을 떠나기", "Embedding": "임베딩", "Embedding Batch Size": "임베딩 배치 크기", "Embedding Model": "임베딩 모델", @@ -515,7 +515,7 @@ "Failed to connect to {{URL}} OpenAPI tool server": "{{URL}} OpenAPI 도구 서버에 연결하지 못했습니다", "Failed to create API Key.": "API 키 생성에 실패했습니다.", "Failed to fetch models": "모델 가져오기 실패", - "Failed to read clipboard contents": "클립보드 내용 가져오기를 실패하였습니다.", + "Failed to read clipboard contents": "클립보드 내용을 읽지 못했습니다.", "Failed to save connections": "연결 저장 실패", "Failed to save models configuration": "모델 구성 저장 실패", "Failed to update settings": "설정 업데이트에 실패하였습니다.", @@ -639,7 +639,7 @@ "Invalid file format.": "잘못된 파일 형식", "Invalid JSON schema": "잘못된 JSON schema", "Invalid Tag": "잘못된 태그", - "is typing...": "타이핑 중... ", + "is typing...": "입력 중... ", "January": "1월", "Jina API Key": "Jina API 키", "join our Discord for help.": "도움말을 보려면 Discord에 가입하세요.", @@ -950,7 +950,7 @@ "Search Functions": "함수 검색", "Search Knowledge": "지식 기반 검색", "Search Models": "모델 검색", - "Search options": "옵션 검색", + "Search options": "검색 옵션", "Search Prompts": "프롬프트 검색", "Search Result Count": "검색 결과 수", "Search the internet": "인터넷 검색", @@ -1127,7 +1127,7 @@ "Toggle sidebar": "사이드바 전환", "Token": "토큰", "Tokens To Keep On Context Refresh (num_keep)": "컨텍스트 새로 고침 시 유지할 토큰 수(num_keep)", - "Too verbose": "말이 너무 많은은", + "Too verbose": "말이 너무 많음", "Tool created successfully": "성공적으로 도구가 생성되었습니다.", "Tool deleted successfully": "성공적으로 도구가 삭제되었습니다.", "Tool Description": "도구 설명", @@ -1202,7 +1202,7 @@ "Valves updated successfully": "성공적으로 밸브가 업데이트되었습니다", "variable": "변수", "variable to have them replaced with clipboard content.": "변수를 사용하여 클립보드 내용으로 바꾸세요.", - "Verify Connection": "연결 확인인", + "Verify Connection": "연결 확인", "Verify SSL Certificate": "SSL 인증서 확인", "Version": "버전", "Version {{selectedVersion}} of {{totalVersions}}": "버전 {{totalVersions}}의 {{selectedVersion}}", @@ -1244,7 +1244,7 @@ "Write": "작성", "Write a prompt suggestion (e.g. Who are you?)": "프롬프트 제안 작성 (예: 당신은 누구인가요?)", "Write a summary in 50 words that summarizes [topic or keyword].": "[주제 또는 키워드]에 대한 50단어 요약문을 작성하시오.", - "Write something...": "아무거나 쓰세요...", + "Write something...": "내용을 입력하세요…", "Write your model template content here": "여기에 모델 템플릿 내용을 입력하세요.", "Yesterday": "어제", "You": "당신", From 571d078a828dcace23a021dd890dabb9f3151ecd Mon Sep 17 00:00:00 2001 From: mini-777 Date: Wed, 14 May 2025 15:37:59 +0900 Subject: [PATCH 014/100] fix: improve Korean translations for better readability (fixes mini-777/8dobibim#2) --- src/lib/i18n/locales/ko-KR/translation.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/lib/i18n/locales/ko-KR/translation.json b/src/lib/i18n/locales/ko-KR/translation.json index 78010df7e..a5dfb3b74 100644 --- a/src/lib/i18n/locales/ko-KR/translation.json +++ b/src/lib/i18n/locales/ko-KR/translation.json @@ -309,7 +309,7 @@ "Describe your knowledge base and objectives": "지식 기반에 대한 설명과 목적을 입력하세요", "Description": "설명", "Detect Artifacts Automatically": "Artifact 자동 감지", - "Didn't fully follow instructions": "완전히 지침을 따르지 않음", + "Didn't fully follow instructions": "지침을 완전히 따르지 않음", "Direct": "직접", "Direct Connections": "직접 연결", "Direct Connections allow users to connect to their own OpenAI compatible API endpoints.": "직접 연결을 통해 사용자는 자신의 OpenAI 호환 API endpoint에 연결할 수 있습니다.", @@ -409,7 +409,7 @@ "Enter Chunk Size": "청크 크기 입력", "Enter comma-seperated \"token:bias_value\" pairs (example: 5432:100, 413:-100)": "쉼표로 구분된 \"token:bias_value\" 쌍을 입력합니다(예: 5432:100, 413:-100)", "Enter description": "설명 입력", - "Enter Docling Server URL": "문서 서버 URL 입력", + "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 )", From 5cd0b99ae07f8b3a06e0a81472398ed3a7267035 Mon Sep 17 00:00:00 2001 From: Sine Jespersen Date: Wed, 14 May 2025 09:51:07 +0200 Subject: [PATCH 015/100] update toast contrast --- src/lib/components/layout/UpdateInfoToast.svelte | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/lib/components/layout/UpdateInfoToast.svelte b/src/lib/components/layout/UpdateInfoToast.svelte index 81451be0b..7e41ad547 100644 --- a/src/lib/components/layout/UpdateInfoToast.svelte +++ b/src/lib/components/layout/UpdateInfoToast.svelte @@ -14,7 +14,7 @@
{$i18n.t(`A new version (v{{LATEST_VERSION}}) is now available.`, { From 41f64da0d6b883bc30afc47fd0044b86f828d4c2 Mon Sep 17 00:00:00 2001 From: Sine Jespersen Date: Wed, 14 May 2025 09:51:38 +0200 Subject: [PATCH 016/100] update message input contrast --- src/lib/components/chat/MessageInput.svelte | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/lib/components/chat/MessageInput.svelte b/src/lib/components/chat/MessageInput.svelte index 9e5593ea9..26bc6e226 100644 --- a/src/lib/components/chat/MessageInput.svelte +++ b/src/lib/components/chat/MessageInput.svelte @@ -823,7 +823,7 @@ id="chat-input" dir="auto" bind:this={chatInputElement} - class="scrollbar-hidden bg-transparent dark:text-gray-100 outline-hidden w-full pt-3 px-1 resize-none" + class="scrollbar-hidden bg-transparent dark:text-gray-200 outline-hidden w-full pt-3 px-1 resize-none" placeholder={placeholder ? placeholder : $i18n.t('Send a Message')} bind:value={prompt} on:compositionstart={() => (isComposing = true)} From 43d0db5eeabc7607fc15f41ab156797ba23956b3 Mon Sep 17 00:00:00 2001 From: Sine Jespersen Date: Wed, 14 May 2025 09:52:10 +0200 Subject: [PATCH 017/100] model selector contrast --- src/lib/components/chat/ModelSelector.svelte | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/lib/components/chat/ModelSelector.svelte b/src/lib/components/chat/ModelSelector.svelte index 9c57a15ba..be8dd83a1 100644 --- a/src/lib/components/chat/ModelSelector.svelte +++ b/src/lib/components/chat/ModelSelector.svelte @@ -114,7 +114,9 @@
{#if showSetDefault} -
+
{/if} From 5db783d67b17674716d4bc3afc322d8e8c29cc57 Mon Sep 17 00:00:00 2001 From: Sine Jespersen Date: Wed, 14 May 2025 09:52:44 +0200 Subject: [PATCH 018/100] improve suggestions contrast --- src/lib/components/chat/Suggestions.svelte | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/src/lib/components/chat/Suggestions.svelte b/src/lib/components/chat/Suggestions.svelte index 5cf7567da..14d930401 100644 --- a/src/lib/components/chat/Suggestions.svelte +++ b/src/lib/components/chat/Suggestions.svelte @@ -64,7 +64,7 @@ } -
+
{#if filteredPrompts.length > 0} {$i18n.t('Suggested')} @@ -74,7 +74,7 @@
{$WEBUI_NAME} ‧ v{WEBUI_VERSION}
@@ -98,7 +98,7 @@ > {prompt.title[0]}
-
+
{prompt.title[1]}
{:else} @@ -107,7 +107,9 @@ > {prompt.content}
-
{$i18n.t('Prompt')}
+
+ {$i18n.t('Prompt')} +
{/if}
From b052b5ccedbf7ff5bd3da03b82cbe8140f3fa5d2 Mon Sep 17 00:00:00 2001 From: Sine Jespersen Date: Wed, 14 May 2025 10:15:31 +0200 Subject: [PATCH 019/100] remove whitespace --- src/lib/components/chat/ModelSelector.svelte | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/lib/components/chat/ModelSelector.svelte b/src/lib/components/chat/ModelSelector.svelte index be8dd83a1..f136d4cca 100644 --- a/src/lib/components/chat/ModelSelector.svelte +++ b/src/lib/components/chat/ModelSelector.svelte @@ -115,7 +115,7 @@ {#if showSetDefault}
From 90bcf45b7bbfcd6dd3d5f98e490ee02ad19665f5 Mon Sep 17 00:00:00 2001 From: Sine Jespersen Date: Wed, 14 May 2025 10:24:09 +0200 Subject: [PATCH 020/100] placeholder contrast changed --- src/app.css | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/app.css b/src/app.css index 5cfdd8df0..b9c8752a2 100644 --- a/src/app.css +++ b/src/app.css @@ -314,7 +314,9 @@ input[type='number'] { .ProseMirror p.is-editor-empty:first-child::before { content: attr(data-placeholder); float: left; - color: #adb5bd; + /* Below color is from tailwind, and has the proper contrast + text-gray-600 from: https://tailwindcss.com/docs/color */ + color: #676767; pointer-events: none; @apply line-clamp-1 absolute; From 8eacd2657336c3b015633077d10e962ef8c5e1e5 Mon Sep 17 00:00:00 2001 From: Sine Jespersen Date: Wed, 14 May 2025 12:50:47 +0200 Subject: [PATCH 021/100] add placeholder dark mode --- src/app.css | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/app.css b/src/app.css index b9c8752a2..925b9c52d 100644 --- a/src/app.css +++ b/src/app.css @@ -322,6 +322,12 @@ input[type='number'] { @apply line-clamp-1 absolute; } +@media (prefers-color-scheme: dark) { + .ProseMirror p.is-editor-empty:first-child::before { + color: #757575; + } +} + .ai-autocompletion::after { color: #a0a0a0; From a9c22bffc9bf999bc79295fb783defd6867144c0 Mon Sep 17 00:00:00 2001 From: Timothy Jaeryang Baek Date: Wed, 14 May 2025 15:15:05 +0400 Subject: [PATCH 022/100] refac/security: pipelines upload path traversal --- backend/open_webui/routers/pipelines.py | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/backend/open_webui/routers/pipelines.py b/backend/open_webui/routers/pipelines.py index f14002502..5a96f8cb5 100644 --- a/backend/open_webui/routers/pipelines.py +++ b/backend/open_webui/routers/pipelines.py @@ -197,8 +197,10 @@ async def upload_pipeline( user=Depends(get_admin_user), ): log.info(f"upload_pipeline: urlIdx={urlIdx}, filename={file.filename}") + filename = os.path.basename(file.filename) + # Check if the uploaded file is a python file - if not (file.filename and file.filename.endswith(".py")): + if not (filename and filename.endswith(".py")): raise HTTPException( status_code=status.HTTP_400_BAD_REQUEST, detail="Only Python (.py) files are allowed.", @@ -206,7 +208,7 @@ async def upload_pipeline( upload_folder = f"{CACHE_DIR}/pipelines" os.makedirs(upload_folder, exist_ok=True) - file_path = os.path.join(upload_folder, file.filename) + file_path = os.path.join(upload_folder, filename) r = None try: From 3c4accaeb390b3eb1006f7033242812b0f89d4db Mon Sep 17 00:00:00 2001 From: Timothy Jaeryang Baek Date: Wed, 14 May 2025 15:17:07 +0400 Subject: [PATCH 023/100] refac/security: ollama model upload path traversal --- backend/open_webui/routers/ollama.py | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/backend/open_webui/routers/ollama.py b/backend/open_webui/routers/ollama.py index 790f7dece..85349339f 100644 --- a/backend/open_webui/routers/ollama.py +++ b/backend/open_webui/routers/ollama.py @@ -1585,7 +1585,9 @@ async def upload_model( if url_idx is None: url_idx = 0 ollama_url = request.app.state.config.OLLAMA_BASE_URLS[url_idx] - file_path = os.path.join(UPLOAD_DIR, file.filename) + + filename = os.path.basename(file.filename) + file_path = os.path.join(UPLOAD_DIR, filename) os.makedirs(UPLOAD_DIR, exist_ok=True) # --- P1: save file locally --- @@ -1630,13 +1632,13 @@ async def upload_model( os.remove(file_path) # Create model in ollama - model_name, ext = os.path.splitext(file.filename) + model_name, ext = os.path.splitext(filename) log.info(f"Created Model: {model_name}") # DEBUG create_payload = { "model": model_name, # Reference the file by its original name => the uploaded blob's digest - "files": {file.filename: f"sha256:{file_hash}"}, + "files": {filename: f"sha256:{file_hash}"}, } log.info(f"Model Payload: {create_payload}") # DEBUG @@ -1653,7 +1655,7 @@ async def upload_model( done_msg = { "done": True, "blob": f"sha256:{file_hash}", - "name": file.filename, + "name": filename, "model_created": model_name, } yield f"data: {json.dumps(done_msg)}\n\n" From 92a8ea743a12061888554e28cc5df4aa1a2de77e Mon Sep 17 00:00:00 2001 From: Timothy Jaeryang Baek Date: Wed, 14 May 2025 15:22:38 +0400 Subject: [PATCH 024/100] refac: form data edge case --- backend/open_webui/main.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/backend/open_webui/main.py b/backend/open_webui/main.py index e5fdace6d..8c6d6c22f 100644 --- a/backend/open_webui/main.py +++ b/backend/open_webui/main.py @@ -1170,8 +1170,8 @@ async def chat_completion( "tool_ids": form_data.get("tool_ids", None), "tool_servers": form_data.pop("tool_servers", None), "files": form_data.get("files", None), - "features": form_data.get("features", None), - "variables": form_data.get("variables", None), + "features": form_data.get("features", {}), + "variables": form_data.get("variables", {}), "model": model, "direct": model_item.get("direct", False), **( From 8b194bc781d81f0e90b77a6c28727a887e9c1d05 Mon Sep 17 00:00:00 2001 From: Jesper Kristensen Date: Wed, 14 May 2025 14:53:36 +0200 Subject: [PATCH 025/100] Added missing "enable_direct_connections" to config type --- src/lib/stores/index.ts | 1 + 1 file changed, 1 insertion(+) diff --git a/src/lib/stores/index.ts b/src/lib/stores/index.ts index 87f48c72c..e00f458c6 100644 --- a/src/lib/stores/index.ts +++ b/src/lib/stores/index.ts @@ -213,6 +213,7 @@ type Config = { enable_admin_chat_access: boolean; enable_community_sharing: boolean; enable_autocomplete_generation: boolean; + enable_direct_connections: boolean; }; oauth: { providers: { From 6f869ded436b68dead5fe3480bd4b962d81a2a80 Mon Sep 17 00:00:00 2001 From: hwzhuhao <923196325@qq.com> Date: Mon, 12 May 2025 23:15:32 +0800 Subject: [PATCH 026/100] feat:Add vector type and vector factory class for vector database integration --- backend/open_webui/retrieval/utils.py | 2 +- .../open_webui/retrieval/vector/connector.py | 30 ------------ .../open_webui/retrieval/vector/factory.py | 48 +++++++++++++++++++ backend/open_webui/retrieval/vector/type.py | 11 +++++ backend/open_webui/routers/knowledge.py | 2 +- backend/open_webui/routers/memories.py | 2 +- backend/open_webui/routers/retrieval.py | 2 +- 7 files changed, 63 insertions(+), 34 deletions(-) delete mode 100644 backend/open_webui/retrieval/vector/connector.py create mode 100644 backend/open_webui/retrieval/vector/factory.py create mode 100644 backend/open_webui/retrieval/vector/type.py diff --git a/backend/open_webui/retrieval/utils.py b/backend/open_webui/retrieval/utils.py index 2df6a0ab5..a132d7201 100644 --- a/backend/open_webui/retrieval/utils.py +++ b/backend/open_webui/retrieval/utils.py @@ -12,7 +12,7 @@ from langchain_community.retrievers import BM25Retriever from langchain_core.documents import Document from open_webui.config import VECTOR_DB -from open_webui.retrieval.vector.connector import VECTOR_DB_CLIENT +from open_webui.retrieval.vector.factory import VECTOR_DB_CLIENT from open_webui.models.users import UserModel from open_webui.models.files import Files diff --git a/backend/open_webui/retrieval/vector/connector.py b/backend/open_webui/retrieval/vector/connector.py deleted file mode 100644 index 198e6f176..000000000 --- a/backend/open_webui/retrieval/vector/connector.py +++ /dev/null @@ -1,30 +0,0 @@ -from open_webui.config import VECTOR_DB - -if VECTOR_DB == "milvus": - from open_webui.retrieval.vector.dbs.milvus import MilvusClient - - VECTOR_DB_CLIENT = MilvusClient() -elif VECTOR_DB == "qdrant": - from open_webui.retrieval.vector.dbs.qdrant import QdrantClient - - VECTOR_DB_CLIENT = QdrantClient() -elif VECTOR_DB == "opensearch": - from open_webui.retrieval.vector.dbs.opensearch import OpenSearchClient - - VECTOR_DB_CLIENT = OpenSearchClient() -elif VECTOR_DB == "pgvector": - from open_webui.retrieval.vector.dbs.pgvector import PgvectorClient - - VECTOR_DB_CLIENT = PgvectorClient() -elif VECTOR_DB == "elasticsearch": - from open_webui.retrieval.vector.dbs.elasticsearch import ElasticsearchClient - - VECTOR_DB_CLIENT = ElasticsearchClient() -elif VECTOR_DB == "pinecone": - from open_webui.retrieval.vector.dbs.pinecone import PineconeClient - - VECTOR_DB_CLIENT = PineconeClient() -else: - from open_webui.retrieval.vector.dbs.chroma import ChromaClient - - VECTOR_DB_CLIENT = ChromaClient() diff --git a/backend/open_webui/retrieval/vector/factory.py b/backend/open_webui/retrieval/vector/factory.py new file mode 100644 index 000000000..0216d62a0 --- /dev/null +++ b/backend/open_webui/retrieval/vector/factory.py @@ -0,0 +1,48 @@ +from open_webui.retrieval.vector.main import VectorDBBase +from open_webui.retrieval.vector.type import VectorType +from open_webui.config import VECTOR_DB + + +class Vector: + + @staticmethod + def get_vector(vector_type: str) -> VectorDBBase: + """ + get vector db instance by vector type + """ + match vector_type: + case VectorType.MILVUS: + from open_webui.retrieval.vector.dbs.milvus import MilvusClient + + return MilvusClient() + case VectorType.QDRANT: + from open_webui.retrieval.vector.dbs.qdrant import QdrantClient + + return QdrantClient() + case VectorType.PINECONE: + from open_webui.retrieval.vector.dbs.pinecone import PineconeClient + + return PineconeClient() + case VectorType.OPENSEARCH: + from open_webui.retrieval.vector.dbs.opensearch import OpenSearchClient + + return OpenSearchClient() + case VectorType.PGVECTOR: + from open_webui.retrieval.vector.dbs.pgvector import PgvectorClient + + return PgvectorClient() + case VectorType.ELASTICSEARCH: + from open_webui.retrieval.vector.dbs.elasticsearch import ( + ElasticsearchClient, + ) + + return ElasticsearchClient() + case VectorType.CHROMA: + from open_webui.retrieval.vector.dbs.chroma import ChromaClient + + return ChromaClient() + case _: + raise ValueError(f"Unsupported vector type: {vector_type}") + + +VECTOR_DB_CLIENT = Vector.get_vector(VECTOR_DB) diff --git a/backend/open_webui/retrieval/vector/type.py b/backend/open_webui/retrieval/vector/type.py new file mode 100644 index 000000000..b03bcb482 --- /dev/null +++ b/backend/open_webui/retrieval/vector/type.py @@ -0,0 +1,11 @@ +from enum import StrEnum + + +class VectorType(StrEnum): + MILVUS = "milvus" + QDRANT = "qdrant" + CHROMA = "chroma" + PINECONE = "pinecone" + ELASTICSEARCH = "elasticsearch" + OPENSEARCH = "opensearch" + PGVECTOR = "pgvector" diff --git a/backend/open_webui/routers/knowledge.py b/backend/open_webui/routers/knowledge.py index 920130858..e6e55f4d3 100644 --- a/backend/open_webui/routers/knowledge.py +++ b/backend/open_webui/routers/knowledge.py @@ -10,7 +10,7 @@ from open_webui.models.knowledge import ( KnowledgeUserResponse, ) from open_webui.models.files import Files, FileModel, FileMetadataResponse -from open_webui.retrieval.vector.connector import VECTOR_DB_CLIENT +from open_webui.retrieval.vector.factory import VECTOR_DB_CLIENT from open_webui.routers.retrieval import ( process_file, ProcessFileForm, diff --git a/backend/open_webui/routers/memories.py b/backend/open_webui/routers/memories.py index 6d54c9c17..333e9ecc6 100644 --- a/backend/open_webui/routers/memories.py +++ b/backend/open_webui/routers/memories.py @@ -4,7 +4,7 @@ import logging from typing import Optional from open_webui.models.memories import Memories, MemoryModel -from open_webui.retrieval.vector.connector import VECTOR_DB_CLIENT +from open_webui.retrieval.vector.factory import VECTOR_DB_CLIENT from open_webui.utils.auth import get_verified_user from open_webui.env import SRC_LOG_LEVELS diff --git a/backend/open_webui/routers/retrieval.py b/backend/open_webui/routers/retrieval.py index efefa12fc..0b414a551 100644 --- a/backend/open_webui/routers/retrieval.py +++ b/backend/open_webui/routers/retrieval.py @@ -36,7 +36,7 @@ from open_webui.models.knowledge import Knowledges from open_webui.storage.provider import Storage -from open_webui.retrieval.vector.connector import VECTOR_DB_CLIENT +from open_webui.retrieval.vector.factory import VECTOR_DB_CLIENT # Document loaders from open_webui.retrieval.loaders.main import Loader From 6b6ce36c9636a09b75d3a3db623c25668f211932 Mon Sep 17 00:00:00 2001 From: Thomas Rehn <271119+tremlin@users.noreply.github.com> Date: Wed, 14 May 2025 15:33:32 +0200 Subject: [PATCH 027/100] fix: add unique key to model list to avoid state confusion when filtering --- src/lib/components/workspace/Models.svelte | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/lib/components/workspace/Models.svelte b/src/lib/components/workspace/Models.svelte index 5d1c47abf..ae378af1a 100644 --- a/src/lib/components/workspace/Models.svelte +++ b/src/lib/components/workspace/Models.svelte @@ -243,7 +243,7 @@
- {#each filteredModels as model} + {#each filteredModels as model (model.id)}
Date: Wed, 14 May 2025 17:58:20 +0200 Subject: [PATCH 028/100] feat custom text and title --- backend/open_webui/config.py | 12 +++++++++ backend/open_webui/routers/auths.py | 9 +++++++ .../components/admin/Settings/General.svelte | 26 +++++++++++++++++++ .../layout/Overlay/AccountPending.svelte | 23 ++++++++++------ 4 files changed, 62 insertions(+), 8 deletions(-) diff --git a/backend/open_webui/config.py b/backend/open_webui/config.py index 38bd709f1..f0c7720ab 100644 --- a/backend/open_webui/config.py +++ b/backend/open_webui/config.py @@ -989,6 +989,18 @@ DEFAULT_USER_ROLE = PersistentConfig( os.getenv("DEFAULT_USER_ROLE", "pending"), ) +ACCOUNT_PENDING_TITLE = PersistentConfig( + "ACCOUNT_PENDING_TITLE", + "ui.account_pending_title", + os.environ.get("ACCOUNT_PENDING_TITLE", "") +) + +ACCOUNT_PENDING_TEXT = PersistentConfig( + "ACCOUNT_PENDING_TEXT", + "ui.account_pending_text", + os.environ.get("ACCOUNT_PENDING_TEXT", "") +) + USER_PERMISSIONS_WORKSPACE_MODELS_ACCESS = ( os.environ.get("USER_PERMISSIONS_WORKSPACE_MODELS_ACCESS", "False").lower() == "true" diff --git a/backend/open_webui/routers/auths.py b/backend/open_webui/routers/auths.py index 309862ed5..2c22db7a8 100644 --- a/backend/open_webui/routers/auths.py +++ b/backend/open_webui/routers/auths.py @@ -696,6 +696,8 @@ async def get_admin_config(request: Request, user=Depends(get_admin_user)): "ENABLE_CHANNELS": request.app.state.config.ENABLE_CHANNELS, "ENABLE_NOTES": request.app.state.config.ENABLE_NOTES, "ENABLE_USER_WEBHOOKS": request.app.state.config.ENABLE_USER_WEBHOOKS, + "ACCOUNT_PENDING_TEXT": request.app.state.config.ACCOUNT_PENDING_TEXT, + "ACCOUNT_PENDING_TITLE": request.app.state.config.ACCOUNT_PENDING_TITLE, } @@ -713,6 +715,8 @@ class AdminConfig(BaseModel): ENABLE_CHANNELS: bool ENABLE_NOTES: bool ENABLE_USER_WEBHOOKS: bool + ACCOUNT_PENDING_TEXT: Optional[str] = None + ACCOUNT_PENDING_TITLE: Optional[str] = None @router.post("/admin/config") @@ -750,6 +754,9 @@ async def update_admin_config( request.app.state.config.ENABLE_USER_WEBHOOKS = form_data.ENABLE_USER_WEBHOOKS + request.app.state.config.ACCOUNT_PENDING_TEXT = form_data.ACCOUNT_PENDING_TEXT + request.app.state.config.ACCOUNT_PENDING_TITLE = form_data.ACCOUNT_PENDING_TITLE + return { "SHOW_ADMIN_DETAILS": request.app.state.config.SHOW_ADMIN_DETAILS, "WEBUI_URL": request.app.state.config.WEBUI_URL, @@ -764,6 +771,8 @@ async def update_admin_config( "ENABLE_CHANNELS": request.app.state.config.ENABLE_CHANNELS, "ENABLE_NOTES": request.app.state.config.ENABLE_NOTES, "ENABLE_USER_WEBHOOKS": request.app.state.config.ENABLE_USER_WEBHOOKS, + "ACCOUNT_PENDING_TEXT": request.app.state.config.ACCOUNT_PENDING_TEXT, + "ACCOUNT_PENDING_TITLE": request.app.state.config.ACCOUNT_PENDING_TITLE, } diff --git a/src/lib/components/admin/Settings/General.svelte b/src/lib/components/admin/Settings/General.svelte index 3741168f8..747cff566 100644 --- a/src/lib/components/admin/Settings/General.svelte +++ b/src/lib/components/admin/Settings/General.svelte @@ -305,6 +305,32 @@
+
+
{$i18n.t('Custom Account Pending Title')}
+ +
+ {$i18n.t('This title displays on the account pending screen. If empty, the default title is shown.')} +
+
+ +
+
{$i18n.t('Custom Account Pending Text')}
+ +
+ {$i18n.t('This text displays on the account pending screen. If empty, the default message is shown.')} +
+
+
{$i18n.t('Enable API Key')}
diff --git a/src/lib/components/layout/Overlay/AccountPending.svelte b/src/lib/components/layout/Overlay/AccountPending.svelte index 028702a13..674f6e1a1 100644 --- a/src/lib/components/layout/Overlay/AccountPending.svelte +++ b/src/lib/components/layout/Overlay/AccountPending.svelte @@ -1,6 +1,7 @@ + + + + \ No newline at end of file diff --git a/src/lib/components/workspace/Models/Capabilities.svelte b/src/lib/components/workspace/Models/Capabilities.svelte index cbccef1ff..affbc4d26 100644 --- a/src/lib/components/workspace/Models/Capabilities.svelte +++ b/src/lib/components/workspace/Models/Capabilities.svelte @@ -11,13 +11,15 @@ usage: $i18n.t( 'Sends `stream_options: { include_usage: true }` in the request.\nSupported providers will return token usage information in the response when set.' ), - citations: $i18n.t('Displays citations in the response') + citations: $i18n.t('Displays citations in the response'), + switch_thinking: $i18n.t('Sends `enable_thinking: true` in the request. \nSupported toggle providers will return thinking content') }; export let capabilities: { vision?: boolean; usage?: boolean; citations?: boolean; + switch_thinking?: boolean; } = {}; diff --git a/src/lib/components/workspace/Models/ModelEditor.svelte b/src/lib/components/workspace/Models/ModelEditor.svelte index 1965db103..c0f883257 100644 --- a/src/lib/components/workspace/Models/ModelEditor.svelte +++ b/src/lib/components/workspace/Models/ModelEditor.svelte @@ -78,7 +78,8 @@ let capabilities = { vision: true, usage: undefined, - citations: true + citations: true, + switch_thinking: false, }; let knowledge = []; diff --git a/src/lib/i18n/locales/zh-CN/translation.json b/src/lib/i18n/locales/zh-CN/translation.json index 84c0d2f45..58397473d 100644 --- a/src/lib/i18n/locales/zh-CN/translation.json +++ b/src/lib/i18n/locales/zh-CN/translation.json @@ -1031,6 +1031,7 @@ "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 `enable_thinking: true` in the request. \nSupported toggle providers will return thinking content": "在请求中发送 `enable_thinking: true`。设置后,支持的供应商会返回深度思考的能力", "September": "九月", "SerpApi API Key": "SerpApi API 密钥", "SerpApi Engine": "SerpApi 引擎", @@ -1134,6 +1135,7 @@ "The score should be a value between 0.0 (0%) and 1.0 (100%).": "分值应介于 0.0(0%)和 1.0(100%)之间。", "The temperature of the model. Increasing the temperature will make the model answer more creatively.": "模型的温度。增加温度将使模型的回答更有创意。", "Theme": "主题", + "Thinking...": "深度思考", "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}}频道的开始", From df5ef8e5533df94584bc3262e8f7dfa76829d703 Mon Sep 17 00:00:00 2001 From: Tiancong Li Date: Thu, 15 May 2025 21:15:22 +0800 Subject: [PATCH 058/100] i18n: update zh-TW --- src/lib/i18n/locales/zh-TW/translation.json | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/lib/i18n/locales/zh-TW/translation.json b/src/lib/i18n/locales/zh-TW/translation.json index 2ad55898e..ff51220a2 100644 --- a/src/lib/i18n/locales/zh-TW/translation.json +++ b/src/lib/i18n/locales/zh-TW/translation.json @@ -316,7 +316,7 @@ "Deleted {{deleteModelTag}}": "已刪除 {{deleteModelTag}}", "Deleted {{name}}": "已刪除 {{name}}", "Deleted User": "刪除使用者?", - "Describe Pictures in Documents": "", + "Describe Pictures in Documents": "檔案中的圖片描述", "Describe your knowledge base and objectives": "描述您的知識庫和目標", "Description": "描述", "Detect Artifacts Automatically": "自動偵測 Artifacts", @@ -411,7 +411,7 @@ "Ensure your CSV file includes 4 columns in this order: Name, Email, Password, Role.": "請確認您的 CSV 檔案包含以下 4 個欄位,並按照此順序排列:姓名、電子郵件、密碼、角色。", "Enter {{role}} message here": "在此輸入 {{role}} 訊息", "Enter a detail about yourself for your LLMs to recall": "輸入有關您的詳細資訊,讓您的大型語言模型可以回想起來", - "Enter a title for the pending user info overlay. Leave empty for default.": "", + "Enter a title for the pending user info overlay. Leave empty for default.": "為待處理的使用者訊息覆蓋層輸入標題。留空以使用預設值。", "Enter api auth string (e.g. username:password)": "輸入 API 驗證字串(例如:username:password)", "Enter Application DN": "輸入應用程式 DN", "Enter Application DN Password": "輸入應用程式 DN 密碼", @@ -424,7 +424,7 @@ "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 content for the pending user info overlay. Leave empty for default.": "", + "Enter content for the pending user info overlay. Leave empty for default.": "為待處理的使用者訊息覆蓋層輸入內容。留空以使用預設值。", "Enter description": "輸入描述", "Enter Docling OCR Engine": "輸入 Docling OCR 引擎", "Enter Docling OCR Language(s)": "輸入 Docling OCR 語言", @@ -884,8 +884,8 @@ "PDF document (.pdf)": "PDF 檔案 (.pdf)", "PDF Extract Images (OCR)": "PDF 影像擷取(OCR 光學文字辨識)", "pending": "待處理", - "Pending User Overlay Content": "", - "Pending User Overlay Title": "", + "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}}", From 2a4fe1335e07cf7f526eaeb3c5e82b9e79982a92 Mon Sep 17 00:00:00 2001 From: mini-777 Date: Fri, 16 May 2025 02:45:19 +0900 Subject: [PATCH 059/100] i18n: update Korean translations with new entries and corrections --- src/lib/i18n/locales/ko-KR/translation.json | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/src/lib/i18n/locales/ko-KR/translation.json b/src/lib/i18n/locales/ko-KR/translation.json index 347df7185..5e2f5d11a 100644 --- a/src/lib/i18n/locales/ko-KR/translation.json +++ b/src/lib/i18n/locales/ko-KR/translation.json @@ -499,6 +499,7 @@ "Enter Your Full Name": "전체 이름 입력", "Enter your message": "메세지 입력", "Enter your name": "이름 입력", + "Enter Your Name": "이름 입력", "Enter your new password": "새로운 비밀번호를 입력해 주세요", "Enter Your Password": "비밀번호 입력", "Enter Your Role": "역할 입력", @@ -506,8 +507,10 @@ "Enter your webhook URL": "웹훅 URL을 입력해 주세요", "Error": "오류", "ERROR": "오류", - "Error accessing Google Drive: {{error}}": "Google 드라이브에 액세스하는 동안 오류 발생: {{error}}", - "Error uploading file: {{error}}": "파일 업로드 에러: {{error}}", + "Error accessing Google Drive: {{error}}": "Google Drive 액세스 오류: {{error}}", + "Error accessing media devices.": "미디어 장치 액세스 오류", + "Error starting recording.": "녹화 시작 오류", + "Error uploading file: {{error}}": "파일 업로드 오류: {{error}}", "Evaluations": "평가", "Exa API Key": "Exa API 키", "Example: (&(objectClass=inetOrgPerson)(uid=%s))": "예: (&(objectClass=inetOrgPerson)(uid=%s))", @@ -597,13 +600,13 @@ "Function Name": "함수 이름", "Function updated successfully": "성공적으로 함수가 업데이트되었습니다", "Functions": "함수", - "Functions allow arbitrary code execution": "함수로 임의의 코드를 실행할 수 있습니다.", "Functions allow arbitrary code execution.": "함수가 임의의 코드를 실행하도록 허용하였습니다", "Functions imported successfully": "성공적으로 함수를 가져왔습니다", "Gemini": "Gemini", "Gemini API Config": "Gemini API 구성", "Gemini API Key is required.": "Gemini API 키가 필요합니다.", "General": "일반", + "Generate": "생성", "Generate an image": "이미지 생성", "Generate Image": "이미지 생성", "Generate prompt pair": "프롬프트 쌍 생성", @@ -1301,13 +1304,15 @@ "Write a summary in 50 words that summarizes [topic or keyword].": "[주제 또는 키워드]에 대한 50단어 요약문을 작성하시오.", "Write something...": "내용을 입력하세요…", "Write your model template content here": "여기에 모델 템플릿 내용을 입력하세요.", + "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 do not have permission to upload files.": "파일을 업로드할 권한이 없습니다.", "You have no archived conversations.": "채팅을 보관한 적이 없습니다.", "You have shared this chat": "이 채팅을 공유했습니다.", From 20c1c3f66b218945e367b7c90b488613baa4a1de Mon Sep 17 00:00:00 2001 From: Jesper Kristensen Date: Thu, 15 May 2025 21:35:07 +0200 Subject: [PATCH 060/100] Changed console logging of errors to use console error logging --- src/lib/apis/audio/index.ts | 12 +++--- src/lib/apis/auths/index.ts | 48 +++++++++++----------- src/lib/apis/channels/index.ts | 24 +++++------ src/lib/apis/chats/index.ts | 62 ++++++++++++++--------------- src/lib/apis/configs/index.ts | 28 ++++++------- src/lib/apis/evaluations/index.ts | 16 ++++---- src/lib/apis/files/index.ts | 14 +++---- src/lib/apis/folders/index.ts | 14 +++---- src/lib/apis/functions/index.ts | 28 ++++++------- src/lib/apis/groups/index.ts | 10 ++--- src/lib/apis/images/index.ts | 14 +++---- src/lib/apis/index.ts | 66 +++++++++++++++---------------- src/lib/apis/knowledge/index.ts | 22 +++++------ src/lib/apis/memories/index.ts | 12 +++--- src/lib/apis/models/index.ts | 16 ++++---- src/lib/apis/notes/index.ts | 10 ++--- src/lib/apis/ollama/index.ts | 22 +++++------ src/lib/apis/openai/index.ts | 16 ++++---- src/lib/apis/prompts/index.ts | 12 +++--- src/lib/apis/retrieval/index.ts | 24 +++++------ src/lib/apis/tools/index.ts | 26 ++++++------ src/lib/apis/users/index.ts | 28 ++++++------- src/lib/apis/utils/index.ts | 14 +++---- 23 files changed, 269 insertions(+), 269 deletions(-) diff --git a/src/lib/apis/audio/index.ts b/src/lib/apis/audio/index.ts index 5cd6ab949..f6354da77 100644 --- a/src/lib/apis/audio/index.ts +++ b/src/lib/apis/audio/index.ts @@ -15,7 +15,7 @@ export const getAudioConfig = async (token: string) => { return res.json(); }) .catch((err) => { - console.log(err); + console.error(err); error = err.detail; return null; }); @@ -52,7 +52,7 @@ export const updateAudioConfig = async (token: string, payload: OpenAIConfigForm return res.json(); }) .catch((err) => { - console.log(err); + console.error(err); error = err.detail; return null; }); @@ -83,7 +83,7 @@ export const transcribeAudio = async (token: string, file: File) => { }) .catch((err) => { error = err.detail; - console.log(err); + console.error(err); return null; }); @@ -120,7 +120,7 @@ export const synthesizeOpenAISpeech = async ( }) .catch((err) => { error = err.detail; - console.log(err); + console.error(err); return null; }); @@ -152,7 +152,7 @@ export const getModels = async (token: string = ''): Promise { error = err.detail; - console.log(err); + console.error(err); return null; }); @@ -180,7 +180,7 @@ export const getVoices = async (token: string = '') => { }) .catch((err) => { error = err.detail; - console.log(err); + console.error(err); return null; }); diff --git a/src/lib/apis/auths/index.ts b/src/lib/apis/auths/index.ts index 75252fd71..a23e4cdc6 100644 --- a/src/lib/apis/auths/index.ts +++ b/src/lib/apis/auths/index.ts @@ -15,7 +15,7 @@ export const getAdminDetails = async (token: string) => { return res.json(); }) .catch((err) => { - console.log(err); + console.error(err); error = err.detail; return null; }); @@ -42,7 +42,7 @@ export const getAdminConfig = async (token: string) => { return res.json(); }) .catch((err) => { - console.log(err); + console.error(err); error = err.detail; return null; }); @@ -70,7 +70,7 @@ export const updateAdminConfig = async (token: string, body: object) => { return res.json(); }) .catch((err) => { - console.log(err); + console.error(err); error = err.detail; return null; }); @@ -98,7 +98,7 @@ export const getSessionUser = async (token: string) => { return res.json(); }) .catch((err) => { - console.log(err); + console.error(err); error = err.detail; return null; }); @@ -129,7 +129,7 @@ export const ldapUserSignIn = async (user: string, password: string) => { return res.json(); }) .catch((err) => { - console.log(err); + console.error(err); error = err.detail; return null; @@ -157,7 +157,7 @@ export const getLdapConfig = async (token: string = '') => { return res.json(); }) .catch((err) => { - console.log(err); + console.error(err); error = err.detail; return null; }); @@ -187,7 +187,7 @@ export const updateLdapConfig = async (token: string = '', enable_ldap: boolean) return res.json(); }) .catch((err) => { - console.log(err); + console.error(err); error = err.detail; return null; }); @@ -214,7 +214,7 @@ export const getLdapServer = async (token: string = '') => { return res.json(); }) .catch((err) => { - console.log(err); + console.error(err); error = err.detail; return null; }); @@ -242,7 +242,7 @@ export const updateLdapServer = async (token: string = '', body: object) => { return res.json(); }) .catch((err) => { - console.log(err); + console.error(err); error = err.detail; return null; }); @@ -273,7 +273,7 @@ export const userSignIn = async (email: string, password: string) => { return res.json(); }) .catch((err) => { - console.log(err); + console.error(err); error = err.detail; return null; @@ -312,7 +312,7 @@ export const userSignUp = async ( return res.json(); }) .catch((err) => { - console.log(err); + console.error(err); error = err.detail; return null; }); @@ -339,7 +339,7 @@ export const userSignOut = async () => { return res; }) .catch((err) => { - console.log(err); + console.error(err); error = err.detail; return null; }); @@ -378,7 +378,7 @@ export const addUser = async ( return res.json(); }) .catch((err) => { - console.log(err); + console.error(err); error = err.detail; return null; }); @@ -409,7 +409,7 @@ export const updateUserProfile = async (token: string, name: string, profileImag return res.json(); }) .catch((err) => { - console.log(err); + console.error(err); error = err.detail; return null; }); @@ -440,7 +440,7 @@ export const updateUserPassword = async (token: string, password: string, newPas return res.json(); }) .catch((err) => { - console.log(err); + console.error(err); error = err.detail; return null; }); @@ -467,7 +467,7 @@ export const getSignUpEnabledStatus = async (token: string) => { return res.json(); }) .catch((err) => { - console.log(err); + console.error(err); error = err.detail; return null; }); @@ -494,7 +494,7 @@ export const getDefaultUserRole = async (token: string) => { return res.json(); }) .catch((err) => { - console.log(err); + console.error(err); error = err.detail; return null; }); @@ -524,7 +524,7 @@ export const updateDefaultUserRole = async (token: string, role: string) => { return res.json(); }) .catch((err) => { - console.log(err); + console.error(err); error = err.detail; return null; }); @@ -551,7 +551,7 @@ export const toggleSignUpEnabledStatus = async (token: string) => { return res.json(); }) .catch((err) => { - console.log(err); + console.error(err); error = err.detail; return null; }); @@ -578,7 +578,7 @@ export const getJWTExpiresDuration = async (token: string) => { return res.json(); }) .catch((err) => { - console.log(err); + console.error(err); error = err.detail; return null; }); @@ -608,7 +608,7 @@ export const updateJWTExpiresDuration = async (token: string, duration: string) return res.json(); }) .catch((err) => { - console.log(err); + console.error(err); error = err.detail; return null; }); @@ -635,7 +635,7 @@ export const createAPIKey = async (token: string) => { return res.json(); }) .catch((err) => { - console.log(err); + console.error(err); error = err.detail; return null; }); @@ -660,7 +660,7 @@ export const getAPIKey = async (token: string) => { return res.json(); }) .catch((err) => { - console.log(err); + console.error(err); error = err.detail; return null; }); @@ -685,7 +685,7 @@ export const deleteAPIKey = async (token: string) => { return res.json(); }) .catch((err) => { - console.log(err); + console.error(err); error = err.detail; return null; }); diff --git a/src/lib/apis/channels/index.ts b/src/lib/apis/channels/index.ts index cd46410c7..548572c6f 100644 --- a/src/lib/apis/channels/index.ts +++ b/src/lib/apis/channels/index.ts @@ -28,7 +28,7 @@ export const createNewChannel = async (token: string = '', channel: ChannelForm) }) .catch((err) => { error = err.detail; - console.log(err); + console.error(err); return null; }); @@ -59,7 +59,7 @@ export const getChannels = async (token: string = '') => { }) .catch((err) => { error = err.detail; - console.log(err); + console.error(err); return null; }); @@ -90,7 +90,7 @@ export const getChannelById = async (token: string = '', channel_id: string) => }) .catch((err) => { error = err.detail; - console.log(err); + console.error(err); return null; }); @@ -126,7 +126,7 @@ export const updateChannelById = async ( }) .catch((err) => { error = err.detail; - console.log(err); + console.error(err); return null; }); @@ -157,7 +157,7 @@ export const deleteChannelById = async (token: string = '', channel_id: string) }) .catch((err) => { error = err.detail; - console.log(err); + console.error(err); return null; }); @@ -196,7 +196,7 @@ export const getChannelMessages = async ( }) .catch((err) => { error = err.detail; - console.log(err); + console.error(err); return null; }); @@ -236,7 +236,7 @@ export const getChannelThreadMessages = async ( }) .catch((err) => { error = err.detail; - console.log(err); + console.error(err); return null; }); @@ -275,7 +275,7 @@ export const sendMessage = async (token: string = '', channel_id: string, messag }) .catch((err) => { error = err.detail; - console.log(err); + console.error(err); return null; }); @@ -315,7 +315,7 @@ export const updateMessage = async ( }) .catch((err) => { error = err.detail; - console.log(err); + console.error(err); return null; }); @@ -355,7 +355,7 @@ export const addReaction = async ( }) .catch((err) => { error = err.detail; - console.log(err); + console.error(err); return null; }); @@ -395,7 +395,7 @@ export const removeReaction = async ( }) .catch((err) => { error = err.detail; - console.log(err); + console.error(err); return null; }); @@ -429,7 +429,7 @@ export const deleteMessage = async (token: string = '', channel_id: string, mess }) .catch((err) => { error = err.detail; - console.log(err); + console.error(err); return null; }); diff --git a/src/lib/apis/chats/index.ts b/src/lib/apis/chats/index.ts index 02bdd4eb3..0ff56ea23 100644 --- a/src/lib/apis/chats/index.ts +++ b/src/lib/apis/chats/index.ts @@ -21,7 +21,7 @@ export const createNewChat = async (token: string, chat: object) => { }) .catch((err) => { error = err; - console.log(err); + console.error(err); return null; }); @@ -61,7 +61,7 @@ export const importChat = async ( }) .catch((err) => { error = err; - console.log(err); + console.error(err); return null; }); @@ -97,7 +97,7 @@ export const getChatList = async (token: string = '', page: number | null = null }) .catch((err) => { error = err; - console.log(err); + console.error(err); return null; }); @@ -131,7 +131,7 @@ export const getChatListByUserId = async (token: string = '', userId: string) => }) .catch((err) => { error = err; - console.log(err); + console.error(err); return null; }); @@ -165,7 +165,7 @@ export const getArchivedChatList = async (token: string = '') => { }) .catch((err) => { error = err; - console.log(err); + console.error(err); return null; }); @@ -196,7 +196,7 @@ export const getAllChats = async (token: string) => { }) .catch((err) => { error = err; - console.log(err); + console.error(err); return null; }); @@ -231,7 +231,7 @@ export const getChatListBySearchText = async (token: string, text: string, page: }) .catch((err) => { error = err; - console.log(err); + console.error(err); return null; }); @@ -265,7 +265,7 @@ export const getChatsByFolderId = async (token: string, folderId: string) => { }) .catch((err) => { error = err; - console.log(err); + console.error(err); return null; }); @@ -296,7 +296,7 @@ export const getAllArchivedChats = async (token: string) => { }) .catch((err) => { error = err; - console.log(err); + console.error(err); return null; }); @@ -327,7 +327,7 @@ export const getAllUserChats = async (token: string) => { }) .catch((err) => { error = err; - console.log(err); + console.error(err); return null; }); @@ -358,7 +358,7 @@ export const getAllTags = async (token: string) => { }) .catch((err) => { error = err; - console.log(err); + console.error(err); return null; }); @@ -389,7 +389,7 @@ export const getPinnedChatList = async (token: string = '') => { }) .catch((err) => { error = err; - console.log(err); + console.error(err); return null; }); @@ -426,7 +426,7 @@ export const getChatListByTagName = async (token: string = '', tagName: string) }) .catch((err) => { error = err; - console.log(err); + console.error(err); return null; }); @@ -461,7 +461,7 @@ export const getChatById = async (token: string, id: string) => { .catch((err) => { error = err.detail; - console.log(err); + console.error(err); return null; }); @@ -493,7 +493,7 @@ export const getChatByShareId = async (token: string, share_id: string) => { .catch((err) => { error = err; - console.log(err); + console.error(err); return null; }); @@ -531,7 +531,7 @@ export const getChatPinnedStatusById = async (token: string, id: string) => { error = err; } - console.log(err); + console.error(err); return null; }); @@ -569,7 +569,7 @@ export const toggleChatPinnedStatusById = async (token: string, id: string) => { error = err; } - console.log(err); + console.error(err); return null; }); @@ -610,7 +610,7 @@ export const cloneChatById = async (token: string, id: string, title?: string) = error = err; } - console.log(err); + console.error(err); return null; }); @@ -648,7 +648,7 @@ export const cloneSharedChatById = async (token: string, id: string) => { error = err; } - console.log(err); + console.error(err); return null; }); @@ -680,7 +680,7 @@ export const shareChatById = async (token: string, id: string) => { .catch((err) => { error = err; - console.log(err); + console.error(err); return null; }); @@ -715,7 +715,7 @@ export const updateChatFolderIdById = async (token: string, id: string, folderId .catch((err) => { error = err; - console.log(err); + console.error(err); return null; }); @@ -747,7 +747,7 @@ export const archiveChatById = async (token: string, id: string) => { .catch((err) => { error = err; - console.log(err); + console.error(err); return null; }); @@ -779,7 +779,7 @@ export const deleteSharedChatById = async (token: string, id: string) => { .catch((err) => { error = err; - console.log(err); + console.error(err); return null; }); @@ -814,7 +814,7 @@ export const updateChatById = async (token: string, id: string, chat: object) => .catch((err) => { error = err; - console.log(err); + console.error(err); return null; }); @@ -846,7 +846,7 @@ export const deleteChatById = async (token: string, id: string) => { .catch((err) => { error = err.detail; - console.log(err); + console.error(err); return null; }); @@ -878,7 +878,7 @@ export const getTagsById = async (token: string, id: string) => { .catch((err) => { error = err; - console.log(err); + console.error(err); return null; }); @@ -912,7 +912,7 @@ export const addTagById = async (token: string, id: string, tagName: string) => }) .catch((err) => { error = err.detail; - console.log(err); + console.error(err); return null; }); @@ -947,7 +947,7 @@ export const deleteTagById = async (token: string, id: string, tagName: string) .catch((err) => { error = err; - console.log(err); + console.error(err); return null; }); @@ -978,7 +978,7 @@ export const deleteTagsById = async (token: string, id: string) => { .catch((err) => { error = err; - console.log(err); + console.error(err); return null; }); @@ -1010,7 +1010,7 @@ export const deleteAllChats = async (token: string) => { .catch((err) => { error = err.detail; - console.log(err); + console.error(err); return null; }); @@ -1042,7 +1042,7 @@ export const archiveAllChats = async (token: string) => { .catch((err) => { error = err.detail; - console.log(err); + console.error(err); return null; }); diff --git a/src/lib/apis/configs/index.ts b/src/lib/apis/configs/index.ts index 5872303f6..26dec26c9 100644 --- a/src/lib/apis/configs/index.ts +++ b/src/lib/apis/configs/index.ts @@ -19,7 +19,7 @@ export const importConfig = async (token: string, config) => { return res.json(); }) .catch((err) => { - console.log(err); + console.error(err); error = err.detail; return null; }); @@ -46,7 +46,7 @@ export const exportConfig = async (token: string) => { return res.json(); }) .catch((err) => { - console.log(err); + console.error(err); error = err.detail; return null; }); @@ -73,7 +73,7 @@ export const getDirectConnectionsConfig = async (token: string) => { return res.json(); }) .catch((err) => { - console.log(err); + console.error(err); error = err.detail; return null; }); @@ -103,7 +103,7 @@ export const setDirectConnectionsConfig = async (token: string, config: object) return res.json(); }) .catch((err) => { - console.log(err); + console.error(err); error = err.detail; return null; }); @@ -130,7 +130,7 @@ export const getToolServerConnections = async (token: string) => { return res.json(); }) .catch((err) => { - console.log(err); + console.error(err); error = err.detail; return null; }); @@ -160,7 +160,7 @@ export const setToolServerConnections = async (token: string, connections: objec return res.json(); }) .catch((err) => { - console.log(err); + console.error(err); error = err.detail; return null; }); @@ -190,7 +190,7 @@ export const verifyToolServerConnection = async (token: string, connection: obje return res.json(); }) .catch((err) => { - console.log(err); + console.error(err); error = err.detail; return null; }); @@ -217,7 +217,7 @@ export const getCodeExecutionConfig = async (token: string) => { return res.json(); }) .catch((err) => { - console.log(err); + console.error(err); error = err.detail; return null; }); @@ -247,7 +247,7 @@ export const setCodeExecutionConfig = async (token: string, config: object) => { return res.json(); }) .catch((err) => { - console.log(err); + console.error(err); error = err.detail; return null; }); @@ -274,7 +274,7 @@ export const getModelsConfig = async (token: string) => { return res.json(); }) .catch((err) => { - console.log(err); + console.error(err); error = err.detail; return null; }); @@ -304,7 +304,7 @@ export const setModelsConfig = async (token: string, config: object) => { return res.json(); }) .catch((err) => { - console.log(err); + console.error(err); error = err.detail; return null; }); @@ -334,7 +334,7 @@ export const setDefaultPromptSuggestions = async (token: string, promptSuggestio return res.json(); }) .catch((err) => { - console.log(err); + console.error(err); error = err.detail; return null; }); @@ -361,7 +361,7 @@ export const getBanners = async (token: string): Promise => { return res.json(); }) .catch((err) => { - console.log(err); + console.error(err); error = err.detail; return null; }); @@ -391,7 +391,7 @@ export const setBanners = async (token: string, banners: Banner[]) => { return res.json(); }) .catch((err) => { - console.log(err); + console.error(err); error = err.detail; return null; }); diff --git a/src/lib/apis/evaluations/index.ts b/src/lib/apis/evaluations/index.ts index f6f35f7c1..96a689fcb 100644 --- a/src/lib/apis/evaluations/index.ts +++ b/src/lib/apis/evaluations/index.ts @@ -20,7 +20,7 @@ export const getConfig = async (token: string = '') => { }) .catch((err) => { error = err.detail; - console.log(err); + console.error(err); return null; }); @@ -51,7 +51,7 @@ export const updateConfig = async (token: string, config: object) => { }) .catch((err) => { error = err.detail; - console.log(err); + console.error(err); return null; }); @@ -82,7 +82,7 @@ export const getAllFeedbacks = async (token: string = '') => { }) .catch((err) => { error = err.detail; - console.log(err); + console.error(err); return null; }); @@ -113,7 +113,7 @@ export const exportAllFeedbacks = async (token: string = '') => { }) .catch((err) => { error = err.detail; - console.log(err); + console.error(err); return null; }); @@ -144,7 +144,7 @@ export const createNewFeedback = async (token: string, feedback: object) => { }) .catch((err) => { error = err.detail; - console.log(err); + console.error(err); return null; }); @@ -175,7 +175,7 @@ export const getFeedbackById = async (token: string, feedbackId: string) => { }) .catch((err) => { error = err.detail; - console.log(err); + console.error(err); return null; }); @@ -206,7 +206,7 @@ export const updateFeedbackById = async (token: string, feedbackId: string, feed }) .catch((err) => { error = err.detail; - console.log(err); + console.error(err); return null; }); @@ -234,7 +234,7 @@ export const deleteFeedbackById = async (token: string, feedbackId: string) => { }) .catch((err) => { error = err.detail; - console.log(err); + console.error(err); return null; }); diff --git a/src/lib/apis/files/index.ts b/src/lib/apis/files/index.ts index 6a42ec614..261fe56db 100644 --- a/src/lib/apis/files/index.ts +++ b/src/lib/apis/files/index.ts @@ -19,7 +19,7 @@ export const uploadFile = async (token: string, file: File) => { }) .catch((err) => { error = err.detail; - console.log(err); + console.error(err); return null; }); @@ -76,7 +76,7 @@ export const getFiles = async (token: string = '') => { }) .catch((err) => { error = err.detail; - console.log(err); + console.error(err); return null; }); @@ -107,7 +107,7 @@ export const getFileById = async (token: string, id: string) => { }) .catch((err) => { error = err.detail; - console.log(err); + console.error(err); return null; }); @@ -141,7 +141,7 @@ export const updateFileDataContentById = async (token: string, id: string, conte }) .catch((err) => { error = err.detail; - console.log(err); + console.error(err); return null; }); @@ -168,7 +168,7 @@ export const getFileContentById = async (id: string) => { }) .catch((err) => { error = err.detail; - console.log(err); + console.error(err); return null; }); @@ -200,7 +200,7 @@ export const deleteFileById = async (token: string, id: string) => { }) .catch((err) => { error = err.detail; - console.log(err); + console.error(err); return null; }); @@ -231,7 +231,7 @@ export const deleteAllFiles = async (token: string) => { }) .catch((err) => { error = err.detail; - console.log(err); + console.error(err); return null; }); diff --git a/src/lib/apis/folders/index.ts b/src/lib/apis/folders/index.ts index f1a1f5b48..21ec426b0 100644 --- a/src/lib/apis/folders/index.ts +++ b/src/lib/apis/folders/index.ts @@ -50,7 +50,7 @@ export const getFolders = async (token: string = '') => { }) .catch((err) => { error = err.detail; - console.log(err); + console.error(err); return null; }); @@ -81,7 +81,7 @@ export const getFolderById = async (token: string, id: string) => { }) .catch((err) => { error = err.detail; - console.log(err); + console.error(err); return null; }); @@ -115,7 +115,7 @@ export const updateFolderNameById = async (token: string, id: string, name: stri }) .catch((err) => { error = err.detail; - console.log(err); + console.error(err); return null; }); @@ -153,7 +153,7 @@ export const updateFolderIsExpandedById = async ( }) .catch((err) => { error = err.detail; - console.log(err); + console.error(err); return null; }); @@ -187,7 +187,7 @@ export const updateFolderParentIdById = async (token: string, id: string, parent }) .catch((err) => { error = err.detail; - console.log(err); + console.error(err); return null; }); @@ -226,7 +226,7 @@ export const updateFolderItemsById = async (token: string, id: string, items: Fo }) .catch((err) => { error = err.detail; - console.log(err); + console.error(err); return null; }); @@ -257,7 +257,7 @@ export const deleteFolderById = async (token: string, id: string) => { }) .catch((err) => { error = err.detail; - console.log(err); + console.error(err); return null; }); diff --git a/src/lib/apis/functions/index.ts b/src/lib/apis/functions/index.ts index ed3306b32..f1a9bf5a0 100644 --- a/src/lib/apis/functions/index.ts +++ b/src/lib/apis/functions/index.ts @@ -20,7 +20,7 @@ export const createNewFunction = async (token: string, func: object) => { }) .catch((err) => { error = err.detail; - console.log(err); + console.error(err); return null; }); @@ -51,7 +51,7 @@ export const getFunctions = async (token: string = '') => { }) .catch((err) => { error = err.detail; - console.log(err); + console.error(err); return null; }); @@ -82,7 +82,7 @@ export const exportFunctions = async (token: string = '') => { }) .catch((err) => { error = err.detail; - console.log(err); + console.error(err); return null; }); @@ -114,7 +114,7 @@ export const getFunctionById = async (token: string, id: string) => { .catch((err) => { error = err.detail; - console.log(err); + console.error(err); return null; }); @@ -149,7 +149,7 @@ export const updateFunctionById = async (token: string, id: string, func: object .catch((err) => { error = err.detail; - console.log(err); + console.error(err); return null; }); @@ -181,7 +181,7 @@ export const deleteFunctionById = async (token: string, id: string) => { .catch((err) => { error = err.detail; - console.log(err); + console.error(err); return null; }); @@ -213,7 +213,7 @@ export const toggleFunctionById = async (token: string, id: string) => { .catch((err) => { error = err.detail; - console.log(err); + console.error(err); return null; }); @@ -245,7 +245,7 @@ export const toggleGlobalById = async (token: string, id: string) => { .catch((err) => { error = err.detail; - console.log(err); + console.error(err); return null; }); @@ -277,7 +277,7 @@ export const getFunctionValvesById = async (token: string, id: string) => { .catch((err) => { error = err.detail; - console.log(err); + console.error(err); return null; }); @@ -309,7 +309,7 @@ export const getFunctionValvesSpecById = async (token: string, id: string) => { .catch((err) => { error = err.detail; - console.log(err); + console.error(err); return null; }); @@ -344,7 +344,7 @@ export const updateFunctionValvesById = async (token: string, id: string, valves .catch((err) => { error = err.detail; - console.log(err); + console.error(err); return null; }); @@ -376,7 +376,7 @@ export const getUserValvesById = async (token: string, id: string) => { .catch((err) => { error = err.detail; - console.log(err); + console.error(err); return null; }); @@ -408,7 +408,7 @@ export const getUserValvesSpecById = async (token: string, id: string) => { .catch((err) => { error = err.detail; - console.log(err); + console.error(err); return null; }); @@ -443,7 +443,7 @@ export const updateUserValvesById = async (token: string, id: string, valves: ob .catch((err) => { error = err.detail; - console.log(err); + console.error(err); return null; }); diff --git a/src/lib/apis/groups/index.ts b/src/lib/apis/groups/index.ts index b7d4f8ef9..c55f477af 100644 --- a/src/lib/apis/groups/index.ts +++ b/src/lib/apis/groups/index.ts @@ -20,7 +20,7 @@ export const createNewGroup = async (token: string, group: object) => { }) .catch((err) => { error = err.detail; - console.log(err); + console.error(err); return null; }); @@ -51,7 +51,7 @@ export const getGroups = async (token: string = '') => { }) .catch((err) => { error = err.detail; - console.log(err); + console.error(err); return null; }); @@ -83,7 +83,7 @@ export const getGroupById = async (token: string, id: string) => { .catch((err) => { error = err.detail; - console.log(err); + console.error(err); return null; }); @@ -118,7 +118,7 @@ export const updateGroupById = async (token: string, id: string, group: object) .catch((err) => { error = err.detail; - console.log(err); + console.error(err); return null; }); @@ -150,7 +150,7 @@ export const deleteGroupById = async (token: string, id: string) => { .catch((err) => { error = err.detail; - console.log(err); + console.error(err); return null; }); diff --git a/src/lib/apis/images/index.ts b/src/lib/apis/images/index.ts index 2e6510437..a58d16085 100644 --- a/src/lib/apis/images/index.ts +++ b/src/lib/apis/images/index.ts @@ -16,7 +16,7 @@ export const getConfig = async (token: string = '') => { return res.json(); }) .catch((err) => { - console.log(err); + console.error(err); if ('detail' in err) { error = err.detail; } else { @@ -51,7 +51,7 @@ export const updateConfig = async (token: string = '', config: object) => { return res.json(); }) .catch((err) => { - console.log(err); + console.error(err); if ('detail' in err) { error = err.detail; } else { @@ -83,7 +83,7 @@ export const verifyConfigUrl = async (token: string = '') => { return res.json(); }) .catch((err) => { - console.log(err); + console.error(err); if ('detail' in err) { error = err.detail; } else { @@ -115,7 +115,7 @@ export const getImageGenerationConfig = async (token: string = '') => { return res.json(); }) .catch((err) => { - console.log(err); + console.error(err); if ('detail' in err) { error = err.detail; } else { @@ -148,7 +148,7 @@ export const updateImageGenerationConfig = async (token: string = '', config: ob return res.json(); }) .catch((err) => { - console.log(err); + console.error(err); if ('detail' in err) { error = err.detail; } else { @@ -180,7 +180,7 @@ export const getImageGenerationModels = async (token: string = '') => { return res.json(); }) .catch((err) => { - console.log(err); + console.error(err); if ('detail' in err) { error = err.detail; } else { @@ -215,7 +215,7 @@ export const imageGenerations = async (token: string = '', prompt: string) => { return res.json(); }) .catch((err) => { - console.log(err); + console.error(err); if ('detail' in err) { error = err.detail; } else { diff --git a/src/lib/apis/index.ts b/src/lib/apis/index.ts index 3892afeb8..710179c12 100644 --- a/src/lib/apis/index.ts +++ b/src/lib/apis/index.ts @@ -25,7 +25,7 @@ export const getModels = async ( }) .catch((err) => { error = err; - console.log(err); + console.error(err); return null; }); @@ -173,7 +173,7 @@ export const chatCompleted = async (token: string, body: ChatCompletedForm) => { return res.json(); }) .catch((err) => { - console.log(err); + console.error(err); if ('detail' in err) { error = err.detail; } else { @@ -212,7 +212,7 @@ export const chatAction = async (token: string, action_id: string, body: ChatAct return res.json(); }) .catch((err) => { - console.log(err); + console.error(err); if ('detail' in err) { error = err.detail; } else { @@ -244,7 +244,7 @@ export const stopTask = async (token: string, id: string) => { return res.json(); }) .catch((err) => { - console.log(err); + console.error(err); if ('detail' in err) { error = err.detail; } else { @@ -276,7 +276,7 @@ export const getTaskIdsByChatId = async (token: string, chat_id: string) => { return res.json(); }) .catch((err) => { - console.log(err); + console.error(err); if ('detail' in err) { error = err.detail; } else { @@ -315,7 +315,7 @@ export const getToolServerData = async (token: string, url: string) => { } }) .catch((err) => { - console.log(err); + console.error(err); if ('detail' in err) { error = err.detail; } else { @@ -491,7 +491,7 @@ export const getTaskConfig = async (token: string = '') => { return res.json(); }) .catch((err) => { - console.log(err); + console.error(err); error = err; return null; }); @@ -520,7 +520,7 @@ export const updateTaskConfig = async (token: string, config: object) => { return res.json(); }) .catch((err) => { - console.log(err); + console.error(err); if ('detail' in err) { error = err.detail; } else { @@ -562,7 +562,7 @@ export const generateTitle = async ( return res.json(); }) .catch((err) => { - console.log(err); + console.error(err); if ('detail' in err) { error = err.detail; } @@ -634,7 +634,7 @@ export const generateTags = async ( return res.json(); }) .catch((err) => { - console.log(err); + console.error(err); if ('detail' in err) { error = err.detail; } @@ -706,7 +706,7 @@ export const generateEmoji = async ( return res.json(); }) .catch((err) => { - console.log(err); + console.error(err); if ('detail' in err) { error = err.detail; } @@ -756,7 +756,7 @@ export const generateQueries = async ( return res.json(); }) .catch((err) => { - console.log(err); + console.error(err); if ('detail' in err) { error = err.detail; } @@ -828,7 +828,7 @@ export const generateAutoCompletion = async ( return res.json(); }) .catch((err) => { - console.log(err); + console.error(err); if ('detail' in err) { error = err.detail; } @@ -892,7 +892,7 @@ export const generateMoACompletion = async ( stream: true }) }).catch((err) => { - console.log(err); + console.error(err); error = err; return null; }); @@ -920,7 +920,7 @@ export const getPipelinesList = async (token: string = '') => { return res.json(); }) .catch((err) => { - console.log(err); + console.error(err); error = err; return null; }); @@ -954,7 +954,7 @@ export const uploadPipeline = async (token: string, file: File, urlIdx: string) return res.json(); }) .catch((err) => { - console.log(err); + console.error(err); if ('detail' in err) { error = err.detail; } else { @@ -990,7 +990,7 @@ export const downloadPipeline = async (token: string, url: string, urlIdx: strin return res.json(); }) .catch((err) => { - console.log(err); + console.error(err); if ('detail' in err) { error = err.detail; } else { @@ -1026,7 +1026,7 @@ export const deletePipeline = async (token: string, id: string, urlIdx: string) return res.json(); }) .catch((err) => { - console.log(err); + console.error(err); if ('detail' in err) { error = err.detail; } else { @@ -1063,7 +1063,7 @@ export const getPipelines = async (token: string, urlIdx?: string) => { return res.json(); }) .catch((err) => { - console.log(err); + console.error(err); error = err; return null; }); @@ -1100,7 +1100,7 @@ export const getPipelineValves = async (token: string, pipeline_id: string, urlI return res.json(); }) .catch((err) => { - console.log(err); + console.error(err); error = err; return null; }); @@ -1136,7 +1136,7 @@ export const getPipelineValvesSpec = async (token: string, pipeline_id: string, return res.json(); }) .catch((err) => { - console.log(err); + console.error(err); error = err; return null; }); @@ -1178,7 +1178,7 @@ export const updatePipelineValves = async ( return res.json(); }) .catch((err) => { - console.log(err); + console.error(err); if ('detail' in err) { error = err.detail; @@ -1210,7 +1210,7 @@ export const getBackendConfig = async () => { return res.json(); }) .catch((err) => { - console.log(err); + console.error(err); error = err; return null; }); @@ -1236,7 +1236,7 @@ export const getChangelog = async () => { return res.json(); }) .catch((err) => { - console.log(err); + console.error(err); error = err; return null; }); @@ -1263,7 +1263,7 @@ export const getVersionUpdates = async (token: string) => { return res.json(); }) .catch((err) => { - console.log(err); + console.error(err); error = err; return null; }); @@ -1290,7 +1290,7 @@ export const getModelFilterConfig = async (token: string) => { return res.json(); }) .catch((err) => { - console.log(err); + console.error(err); error = err; return null; }); @@ -1325,7 +1325,7 @@ export const updateModelFilterConfig = async ( return res.json(); }) .catch((err) => { - console.log(err); + console.error(err); error = err; return null; }); @@ -1352,7 +1352,7 @@ export const getWebhookUrl = async (token: string) => { return res.json(); }) .catch((err) => { - console.log(err); + console.error(err); error = err; return null; }); @@ -1382,7 +1382,7 @@ export const updateWebhookUrl = async (token: string, url: string) => { return res.json(); }) .catch((err) => { - console.log(err); + console.error(err); error = err; return null; }); @@ -1409,7 +1409,7 @@ export const getCommunitySharingEnabledStatus = async (token: string) => { return res.json(); }) .catch((err) => { - console.log(err); + console.error(err); error = err; return null; }); @@ -1436,7 +1436,7 @@ export const toggleCommunitySharingEnabledStatus = async (token: string) => { return res.json(); }) .catch((err) => { - console.log(err); + console.error(err); error = err.detail; return null; }); @@ -1463,7 +1463,7 @@ export const getModelConfig = async (token: string): Promise return res.json(); }) .catch((err) => { - console.log(err); + console.error(err); error = err; return null; }); @@ -1511,7 +1511,7 @@ export const updateModelConfig = async (token: string, config: GlobalModelConfig return res.json(); }) .catch((err) => { - console.log(err); + console.error(err); error = err; return null; }); diff --git a/src/lib/apis/knowledge/index.ts b/src/lib/apis/knowledge/index.ts index 92fda2a95..c01c986a2 100644 --- a/src/lib/apis/knowledge/index.ts +++ b/src/lib/apis/knowledge/index.ts @@ -27,7 +27,7 @@ export const createNewKnowledge = async ( }) .catch((err) => { error = err.detail; - console.log(err); + console.error(err); return null; }); @@ -58,7 +58,7 @@ export const getKnowledgeBases = async (token: string = '') => { }) .catch((err) => { error = err.detail; - console.log(err); + console.error(err); return null; }); @@ -89,7 +89,7 @@ export const getKnowledgeBaseList = async (token: string = '') => { }) .catch((err) => { error = err.detail; - console.log(err); + console.error(err); return null; }); @@ -121,7 +121,7 @@ export const getKnowledgeById = async (token: string, id: string) => { .catch((err) => { error = err.detail; - console.log(err); + console.error(err); return null; }); @@ -166,7 +166,7 @@ export const updateKnowledgeById = async (token: string, id: string, form: Knowl .catch((err) => { error = err.detail; - console.log(err); + console.error(err); return null; }); @@ -201,7 +201,7 @@ export const addFileToKnowledgeById = async (token: string, id: string, fileId: .catch((err) => { error = err.detail; - console.log(err); + console.error(err); return null; }); @@ -236,7 +236,7 @@ export const updateFileFromKnowledgeById = async (token: string, id: string, fil .catch((err) => { error = err.detail; - console.log(err); + console.error(err); return null; }); @@ -271,7 +271,7 @@ export const removeFileFromKnowledgeById = async (token: string, id: string, fil .catch((err) => { error = err.detail; - console.log(err); + console.error(err); return null; }); @@ -303,7 +303,7 @@ export const resetKnowledgeById = async (token: string, id: string) => { .catch((err) => { error = err.detail; - console.log(err); + console.error(err); return null; }); @@ -335,7 +335,7 @@ export const deleteKnowledgeById = async (token: string, id: string) => { .catch((err) => { error = err.detail; - console.log(err); + console.error(err); return null; }); @@ -363,7 +363,7 @@ export const reindexKnowledgeFiles = async (token: string) => { }) .catch((err) => { error = err.detail; - console.log(err); + console.error(err); return null; }); diff --git a/src/lib/apis/memories/index.ts b/src/lib/apis/memories/index.ts index 3fd83ca9e..d8fdc638f 100644 --- a/src/lib/apis/memories/index.ts +++ b/src/lib/apis/memories/index.ts @@ -17,7 +17,7 @@ export const getMemories = async (token: string) => { }) .catch((err) => { error = err.detail; - console.log(err); + console.error(err); return null; }); @@ -48,7 +48,7 @@ export const addNewMemory = async (token: string, content: string) => { }) .catch((err) => { error = err.detail; - console.log(err); + console.error(err); return null; }); @@ -79,7 +79,7 @@ export const updateMemoryById = async (token: string, id: string, content: strin }) .catch((err) => { error = err.detail; - console.log(err); + console.error(err); return null; }); @@ -110,7 +110,7 @@ export const queryMemory = async (token: string, content: string) => { }) .catch((err) => { error = err.detail; - console.log(err); + console.error(err); return null; }); @@ -142,7 +142,7 @@ export const deleteMemoryById = async (token: string, id: string) => { .catch((err) => { error = err.detail; - console.log(err); + console.error(err); return null; }); @@ -174,7 +174,7 @@ export const deleteMemoriesByUserId = async (token: string) => { .catch((err) => { error = err.detail; - console.log(err); + console.error(err); return null; }); diff --git a/src/lib/apis/models/index.ts b/src/lib/apis/models/index.ts index 9cf625d03..3e6e0d0c0 100644 --- a/src/lib/apis/models/index.ts +++ b/src/lib/apis/models/index.ts @@ -20,7 +20,7 @@ export const getModels = async (token: string = '') => { }) .catch((err) => { error = err; - console.log(err); + console.error(err); return null; }); @@ -51,7 +51,7 @@ export const getBaseModels = async (token: string = '') => { }) .catch((err) => { error = err; - console.log(err); + console.error(err); return null; }); @@ -80,7 +80,7 @@ export const createNewModel = async (token: string, model: object) => { }) .catch((err) => { error = err.detail; - console.log(err); + console.error(err); return null; }); @@ -115,7 +115,7 @@ export const getModelById = async (token: string, id: string) => { .catch((err) => { error = err; - console.log(err); + console.error(err); return null; }); @@ -150,7 +150,7 @@ export const toggleModelById = async (token: string, id: string) => { .catch((err) => { error = err; - console.log(err); + console.error(err); return null; }); @@ -186,7 +186,7 @@ export const updateModelById = async (token: string, id: string, model: object) .catch((err) => { error = err; - console.log(err); + console.error(err); return null; }); @@ -221,7 +221,7 @@ export const deleteModelById = async (token: string, id: string) => { .catch((err) => { error = err.detail; - console.log(err); + console.error(err); return null; }); @@ -253,7 +253,7 @@ export const deleteAllModels = async (token: string) => { .catch((err) => { error = err; - console.log(err); + console.error(err); return null; }); diff --git a/src/lib/apis/notes/index.ts b/src/lib/apis/notes/index.ts index 23bec36f2..df0be7262 100644 --- a/src/lib/apis/notes/index.ts +++ b/src/lib/apis/notes/index.ts @@ -28,7 +28,7 @@ export const createNewNote = async (token: string, note: NoteItem) => { }) .catch((err) => { error = err.detail; - console.log(err); + console.error(err); return null; }); @@ -59,7 +59,7 @@ export const getNotes = async (token: string = '') => { }) .catch((err) => { error = err.detail; - console.log(err); + console.error(err); return null; }); @@ -108,7 +108,7 @@ export const getNoteById = async (token: string, id: string) => { .catch((err) => { error = err.detail; - console.log(err); + console.error(err); return null; }); @@ -143,7 +143,7 @@ export const updateNoteById = async (token: string, id: string, note: NoteItem) .catch((err) => { error = err.detail; - console.log(err); + console.error(err); return null; }); @@ -175,7 +175,7 @@ export const deleteNoteById = async (token: string, id: string) => { .catch((err) => { error = err.detail; - console.log(err); + console.error(err); return null; }); diff --git a/src/lib/apis/ollama/index.ts b/src/lib/apis/ollama/index.ts index b96567e63..74f2914a9 100644 --- a/src/lib/apis/ollama/index.ts +++ b/src/lib/apis/ollama/index.ts @@ -51,7 +51,7 @@ export const getOllamaConfig = async (token: string = '') => { return res.json(); }) .catch((err) => { - console.log(err); + console.error(err); if ('detail' in err) { error = err.detail; } else { @@ -92,7 +92,7 @@ export const updateOllamaConfig = async (token: string = '', config: OllamaConfi return res.json(); }) .catch((err) => { - console.log(err); + console.error(err); if ('detail' in err) { error = err.detail; } else { @@ -124,7 +124,7 @@ export const getOllamaUrls = async (token: string = '') => { return res.json(); }) .catch((err) => { - console.log(err); + console.error(err); if ('detail' in err) { error = err.detail; } else { @@ -159,7 +159,7 @@ export const updateOllamaUrls = async (token: string = '', urls: string[]) => { return res.json(); }) .catch((err) => { - console.log(err); + console.error(err); if ('detail' in err) { error = err.detail; } else { @@ -191,7 +191,7 @@ export const getOllamaVersion = async (token: string, urlIdx?: number) => { return res.json(); }) .catch((err) => { - console.log(err); + console.error(err); if ('detail' in err) { error = err.detail; } else { @@ -223,7 +223,7 @@ export const getOllamaModels = async (token: string = '', urlIdx: null | number return res.json(); }) .catch((err) => { - console.log(err); + console.error(err); if ('detail' in err) { error = err.detail; } else { @@ -268,7 +268,7 @@ export const generatePrompt = async (token: string = '', model: string, conversa ` }) }).catch((err) => { - console.log(err); + console.error(err); if ('detail' in err) { error = err.detail; } @@ -412,7 +412,7 @@ export const deleteModel = async (token: string, tagName: string, urlIdx: string return true; }) .catch((err) => { - console.log(err); + console.error(err); error = err; if ('detail' in err) { @@ -445,7 +445,7 @@ export const pullModel = async (token: string, tagName: string, urlIdx: number | name: tagName }) }).catch((err) => { - console.log(err); + console.error(err); error = err; if ('detail' in err) { @@ -481,7 +481,7 @@ export const downloadModel = async ( }) } ).catch((err) => { - console.log(err); + console.error(err); error = err; if ('detail' in err) { @@ -512,7 +512,7 @@ export const uploadModel = async (token: string, file: File, urlIdx: string | nu body: formData } ).catch((err) => { - console.log(err); + console.error(err); error = err; if ('detail' in err) { diff --git a/src/lib/apis/openai/index.ts b/src/lib/apis/openai/index.ts index bab2d6e36..f6cf76a73 100644 --- a/src/lib/apis/openai/index.ts +++ b/src/lib/apis/openai/index.ts @@ -16,7 +16,7 @@ export const getOpenAIConfig = async (token: string = '') => { return res.json(); }) .catch((err) => { - console.log(err); + console.error(err); if ('detail' in err) { error = err.detail; } else { @@ -58,7 +58,7 @@ export const updateOpenAIConfig = async (token: string = '', config: OpenAIConfi return res.json(); }) .catch((err) => { - console.log(err); + console.error(err); if ('detail' in err) { error = err.detail; } else { @@ -90,7 +90,7 @@ export const getOpenAIUrls = async (token: string = '') => { return res.json(); }) .catch((err) => { - console.log(err); + console.error(err); if ('detail' in err) { error = err.detail; } else { @@ -125,7 +125,7 @@ export const updateOpenAIUrls = async (token: string = '', urls: string[]) => { return res.json(); }) .catch((err) => { - console.log(err); + console.error(err); if ('detail' in err) { error = err.detail; } else { @@ -157,7 +157,7 @@ export const getOpenAIKeys = async (token: string = '') => { return res.json(); }) .catch((err) => { - console.log(err); + console.error(err); if ('detail' in err) { error = err.detail; } else { @@ -192,7 +192,7 @@ export const updateOpenAIKeys = async (token: string = '', keys: string[]) => { return res.json(); }) .catch((err) => { - console.log(err); + console.error(err); if ('detail' in err) { error = err.detail; } else { @@ -346,7 +346,7 @@ export const chatCompletion = async ( }, body: JSON.stringify(body) }).catch((err) => { - console.log(err); + console.error(err); error = err; return null; }); @@ -409,7 +409,7 @@ export const synthesizeOpenAISpeech = async ( voice: speaker }) }).catch((err) => { - console.log(err); + console.error(err); error = err; return null; }); diff --git a/src/lib/apis/prompts/index.ts b/src/lib/apis/prompts/index.ts index f1c54b109..4129ea62a 100644 --- a/src/lib/apis/prompts/index.ts +++ b/src/lib/apis/prompts/index.ts @@ -28,7 +28,7 @@ export const createNewPrompt = async (token: string, prompt: PromptItem) => { }) .catch((err) => { error = err.detail; - console.log(err); + console.error(err); return null; }); @@ -59,7 +59,7 @@ export const getPrompts = async (token: string = '') => { }) .catch((err) => { error = err.detail; - console.log(err); + console.error(err); return null; }); @@ -90,7 +90,7 @@ export const getPromptList = async (token: string = '') => { }) .catch((err) => { error = err.detail; - console.log(err); + console.error(err); return null; }); @@ -122,7 +122,7 @@ export const getPromptByCommand = async (token: string, command: string) => { .catch((err) => { error = err.detail; - console.log(err); + console.error(err); return null; }); @@ -158,7 +158,7 @@ export const updatePromptByCommand = async (token: string, prompt: PromptItem) = .catch((err) => { error = err.detail; - console.log(err); + console.error(err); return null; }); @@ -192,7 +192,7 @@ export const deletePromptByCommand = async (token: string, command: string) => { .catch((err) => { error = err.detail; - console.log(err); + console.error(err); return null; }); diff --git a/src/lib/apis/retrieval/index.ts b/src/lib/apis/retrieval/index.ts index f4b937b68..8fa6578ed 100644 --- a/src/lib/apis/retrieval/index.ts +++ b/src/lib/apis/retrieval/index.ts @@ -15,7 +15,7 @@ export const getRAGConfig = async (token: string) => { return res.json(); }) .catch((err) => { - console.log(err); + console.error(err); error = err.detail; return null; }); @@ -77,7 +77,7 @@ export const updateRAGConfig = async (token: string, payload: RAGConfigForm) => return res.json(); }) .catch((err) => { - console.log(err); + console.error(err); error = err.detail; return null; }); @@ -104,7 +104,7 @@ export const getQuerySettings = async (token: string) => { return res.json(); }) .catch((err) => { - console.log(err); + console.error(err); error = err.detail; return null; }); @@ -140,7 +140,7 @@ export const updateQuerySettings = async (token: string, settings: QuerySettings return res.json(); }) .catch((err) => { - console.log(err); + console.error(err); error = err.detail; return null; }); @@ -167,7 +167,7 @@ export const getEmbeddingConfig = async (token: string) => { return res.json(); }) .catch((err) => { - console.log(err); + console.error(err); error = err.detail; return null; }); @@ -209,7 +209,7 @@ export const updateEmbeddingConfig = async (token: string, payload: EmbeddingMod return res.json(); }) .catch((err) => { - console.log(err); + console.error(err); error = err.detail; return null; }); @@ -236,7 +236,7 @@ export const getRerankingConfig = async (token: string) => { return res.json(); }) .catch((err) => { - console.log(err); + console.error(err); error = err.detail; return null; }); @@ -270,7 +270,7 @@ export const updateRerankingConfig = async (token: string, payload: RerankingMod return res.json(); }) .catch((err) => { - console.log(err); + console.error(err); error = err.detail; return null; }); @@ -313,7 +313,7 @@ export const processFile = async ( }) .catch((err) => { error = err.detail; - console.log(err); + console.error(err); return null; }); @@ -344,7 +344,7 @@ export const processYoutubeVideo = async (token: string, url: string) => { }) .catch((err) => { error = err.detail; - console.log(err); + console.error(err); return null; }); @@ -376,7 +376,7 @@ export const processWeb = async (token: string, collection_name: string, url: st }) .catch((err) => { error = err.detail; - console.log(err); + console.error(err); return null; }); @@ -410,7 +410,7 @@ export const processWebSearch = async ( return res.json(); }) .catch((err) => { - console.log(err); + console.error(err); error = err.detail; return null; }); diff --git a/src/lib/apis/tools/index.ts b/src/lib/apis/tools/index.ts index d1dc11c16..52501a0e0 100644 --- a/src/lib/apis/tools/index.ts +++ b/src/lib/apis/tools/index.ts @@ -20,7 +20,7 @@ export const createNewTool = async (token: string, tool: object) => { }) .catch((err) => { error = err.detail; - console.log(err); + console.error(err); return null; }); @@ -51,7 +51,7 @@ export const getTools = async (token: string = '') => { }) .catch((err) => { error = err.detail; - console.log(err); + console.error(err); return null; }); @@ -82,7 +82,7 @@ export const getToolList = async (token: string = '') => { }) .catch((err) => { error = err.detail; - console.log(err); + console.error(err); return null; }); @@ -113,7 +113,7 @@ export const exportTools = async (token: string = '') => { }) .catch((err) => { error = err.detail; - console.log(err); + console.error(err); return null; }); @@ -145,7 +145,7 @@ export const getToolById = async (token: string, id: string) => { .catch((err) => { error = err.detail; - console.log(err); + console.error(err); return null; }); @@ -180,7 +180,7 @@ export const updateToolById = async (token: string, id: string, tool: object) => .catch((err) => { error = err.detail; - console.log(err); + console.error(err); return null; }); @@ -212,7 +212,7 @@ export const deleteToolById = async (token: string, id: string) => { .catch((err) => { error = err.detail; - console.log(err); + console.error(err); return null; }); @@ -244,7 +244,7 @@ export const getToolValvesById = async (token: string, id: string) => { .catch((err) => { error = err.detail; - console.log(err); + console.error(err); return null; }); @@ -276,7 +276,7 @@ export const getToolValvesSpecById = async (token: string, id: string) => { .catch((err) => { error = err.detail; - console.log(err); + console.error(err); return null; }); @@ -311,7 +311,7 @@ export const updateToolValvesById = async (token: string, id: string, valves: ob .catch((err) => { error = err.detail; - console.log(err); + console.error(err); return null; }); @@ -343,7 +343,7 @@ export const getUserValvesById = async (token: string, id: string) => { .catch((err) => { error = err.detail; - console.log(err); + console.error(err); return null; }); @@ -375,7 +375,7 @@ export const getUserValvesSpecById = async (token: string, id: string) => { .catch((err) => { error = err.detail; - console.log(err); + console.error(err); return null; }); @@ -410,7 +410,7 @@ export const updateUserValvesById = async (token: string, id: string, valves: ob .catch((err) => { error = err.detail; - console.log(err); + console.error(err); return null; }); diff --git a/src/lib/apis/users/index.ts b/src/lib/apis/users/index.ts index be82454c2..48ef343f9 100644 --- a/src/lib/apis/users/index.ts +++ b/src/lib/apis/users/index.ts @@ -16,7 +16,7 @@ export const getUserGroups = async (token: string) => { return res.json(); }) .catch((err) => { - console.log(err); + console.error(err); error = err.detail; return null; }); @@ -43,7 +43,7 @@ export const getUserDefaultPermissions = async (token: string) => { return res.json(); }) .catch((err) => { - console.log(err); + console.error(err); error = err.detail; return null; }); @@ -73,7 +73,7 @@ export const updateUserDefaultPermissions = async (token: string, permissions: o return res.json(); }) .catch((err) => { - console.log(err); + console.error(err); error = err.detail; return null; }); @@ -104,7 +104,7 @@ export const updateUserRole = async (token: string, id: string, role: string) => return res.json(); }) .catch((err) => { - console.log(err); + console.error(err); error = err.detail; return null; }); @@ -154,7 +154,7 @@ export const getUsers = async ( return res.json(); }) .catch((err) => { - console.log(err); + console.error(err); error = err.detail; return null; }); @@ -182,7 +182,7 @@ export const getAllUsers = async (token: string) => { return res.json(); }) .catch((err) => { - console.log(err); + console.error(err); error = err.detail; return null; }); @@ -208,7 +208,7 @@ export const getUserSettings = async (token: string) => { return res.json(); }) .catch((err) => { - console.log(err); + console.error(err); error = err.detail; return null; }); @@ -238,7 +238,7 @@ export const updateUserSettings = async (token: string, settings: object) => { return res.json(); }) .catch((err) => { - console.log(err); + console.error(err); error = err.detail; return null; }); @@ -265,7 +265,7 @@ export const getUserById = async (token: string, userId: string) => { return res.json(); }) .catch((err) => { - console.log(err); + console.error(err); error = err.detail; return null; }); @@ -291,7 +291,7 @@ export const getUserInfo = async (token: string) => { return res.json(); }) .catch((err) => { - console.log(err); + console.error(err); error = err.detail; return null; }); @@ -321,7 +321,7 @@ export const updateUserInfo = async (token: string, info: object) => { return res.json(); }) .catch((err) => { - console.log(err); + console.error(err); error = err.detail; return null; }); @@ -335,7 +335,7 @@ export const updateUserInfo = async (token: string, info: object) => { export const getAndUpdateUserLocation = async (token: string) => { const location = await getUserPosition().catch((err) => { - console.log(err); + console.error(err); return null; }); @@ -363,7 +363,7 @@ export const deleteUserById = async (token: string, userId: string) => { return res.json(); }) .catch((err) => { - console.log(err); + console.error(err); error = err.detail; return null; }); @@ -403,7 +403,7 @@ export const updateUserById = async (token: string, userId: string, user: UserUp return res.json(); }) .catch((err) => { - console.log(err); + console.error(err); error = err.detail; return null; }); diff --git a/src/lib/apis/utils/index.ts b/src/lib/apis/utils/index.ts index 64db56124..1fc30ddbb 100644 --- a/src/lib/apis/utils/index.ts +++ b/src/lib/apis/utils/index.ts @@ -15,7 +15,7 @@ export const getGravatarUrl = async (token: string, email: string) => { return res.json(); }) .catch((err) => { - console.log(err); + console.error(err); error = err; return null; }); @@ -41,7 +41,7 @@ export const executeCode = async (token: string, code: string) => { return res.json(); }) .catch((err) => { - console.log(err); + console.error(err); error = err; if (err.detail) { @@ -75,7 +75,7 @@ export const formatPythonCode = async (token: string, code: string) => { return res.json(); }) .catch((err) => { - console.log(err); + console.error(err); error = err; if (err.detail) { @@ -110,7 +110,7 @@ export const downloadChatAsPDF = async (token: string, title: string, messages: return res.blob(); }) .catch((err) => { - console.log(err); + console.error(err); error = err; return null; }); @@ -136,7 +136,7 @@ export const getHTMLFromMarkdown = async (token: string, md: string) => { return res.json(); }) .catch((err) => { - console.log(err); + console.error(err); error = err; return null; }); @@ -170,7 +170,7 @@ export const downloadDatabase = async (token: string) => { window.URL.revokeObjectURL(url); }) .catch((err) => { - console.log(err); + console.error(err); error = err.detail; return null; }); @@ -206,7 +206,7 @@ export const downloadLiteLLMConfig = async (token: string) => { window.URL.revokeObjectURL(url); }) .catch((err) => { - console.log(err); + console.error(err); error = err.detail; return null; }); From 84e06058353a1bd9d87c09c650654df36940f78a Mon Sep 17 00:00:00 2001 From: Jesper Kristensen Date: Thu, 15 May 2025 21:53:07 +0200 Subject: [PATCH 061/100] Cleaning up usage of console log in front end --- src/lib/apis/ollama/index.ts | 2 +- src/lib/apis/users/index.ts | 2 +- .../admin/Functions/FunctionEditor.svelte | 2 +- .../admin/Settings/Documents.svelte | 4 +-- .../components/admin/Settings/General.svelte | 4 +-- .../components/admin/Settings/Images.svelte | 4 +-- .../admin/Settings/Interface.svelte | 2 +- .../components/admin/Settings/Models.svelte | 2 +- .../Models/Manage/ManageOllama.svelte | 32 +++++++++---------- .../admin/Settings/Pipelines.svelte | 4 +-- src/lib/components/admin/Users/Groups.svelte | 2 +- .../admin/Users/Groups/AddGroupModal.svelte | 4 --- .../admin/Users/Groups/EditGroupModal.svelte | 1 - .../admin/Users/UserList/AddUserModal.svelte | 2 +- .../components/channel/MessageInput.svelte | 15 ++++----- src/lib/components/channel/Messages.svelte | 2 +- src/lib/components/channel/Thread.svelte | 2 +- src/lib/components/chat/Artifacts.svelte | 2 +- 18 files changed, 40 insertions(+), 48 deletions(-) diff --git a/src/lib/apis/ollama/index.ts b/src/lib/apis/ollama/index.ts index 74f2914a9..2f6278fe9 100644 --- a/src/lib/apis/ollama/index.ts +++ b/src/lib/apis/ollama/index.ts @@ -408,7 +408,7 @@ export const deleteModel = async (token: string, tagName: string, urlIdx: string return res.json(); }) .then((json) => { - console.log(json); + console.debug(json); return true; }) .catch((err) => { diff --git a/src/lib/apis/users/index.ts b/src/lib/apis/users/index.ts index 48ef343f9..f8ab88ff5 100644 --- a/src/lib/apis/users/index.ts +++ b/src/lib/apis/users/index.ts @@ -343,7 +343,7 @@ export const getAndUpdateUserLocation = async (token: string) => { await updateUserInfo(token, { location: location }); return location; } else { - console.log('Failed to get user location'); + console.info('Failed to get user location'); return null; } }; diff --git a/src/lib/components/admin/Functions/FunctionEditor.svelte b/src/lib/components/admin/Functions/FunctionEditor.svelte index 9b2355fe4..1ef7bddc1 100644 --- a/src/lib/components/admin/Functions/FunctionEditor.svelte +++ b/src/lib/components/admin/Functions/FunctionEditor.svelte @@ -277,7 +277,7 @@ class Pipe: await tick(); if (res) { - console.log('Code formatted successfully'); + console.info('Code formatted successfully'); saveHandler(); } diff --git a/src/lib/components/admin/Settings/Documents.svelte b/src/lib/components/admin/Settings/Documents.svelte index 498ff2c1e..3a3c361cf 100644 --- a/src/lib/components/admin/Settings/Documents.svelte +++ b/src/lib/components/admin/Settings/Documents.svelte @@ -91,7 +91,7 @@ return; } - console.log('Update embedding model attempt:', embeddingModel); + console.debug('Update embedding model attempt:', embeddingModel); updateEmbeddingModelLoading = true; const res = await updateEmbeddingConfig(localStorage.token, { @@ -114,7 +114,7 @@ updateEmbeddingModelLoading = false; if (res) { - console.log('embeddingModelUpdateHandler:', res); + console.debug('embeddingModelUpdateHandler:', res); if (res.status === true) { toast.success($i18n.t('Embedding model set to "{{embedding_model}}"', res), { duration: 1000 * 10 diff --git a/src/lib/components/admin/Settings/General.svelte b/src/lib/components/admin/Settings/General.svelte index 86cc876ef..85f21824f 100644 --- a/src/lib/components/admin/Settings/General.svelte +++ b/src/lib/components/admin/Settings/General.svelte @@ -59,10 +59,10 @@ }; }); - console.log(version); + console.info(version); updateAvailable = compareVersion(version.latest, version.current); - console.log(updateAvailable); + console.info(updateAvailable); }; const updateLdapServerHandler = async () => { diff --git a/src/lib/components/admin/Settings/Images.svelte b/src/lib/components/admin/Settings/Images.svelte index 64fa249dc..003b991a0 100644 --- a/src/lib/components/admin/Settings/Images.svelte +++ b/src/lib/components/admin/Settings/Images.svelte @@ -198,14 +198,14 @@ 2 ); } catch (e) { - console.log(e); + console.error(e); } } requiredWorkflowNodes = requiredWorkflowNodes.map((node) => { const n = config.comfyui.COMFYUI_WORKFLOW_NODES.find((n) => n.type === node.type) ?? node; - console.log(n); + console.debug(n); return { type: n.type, diff --git a/src/lib/components/admin/Settings/Interface.svelte b/src/lib/components/admin/Settings/Interface.svelte index c70259983..53d4f29e4 100644 --- a/src/lib/components/admin/Settings/Interface.svelte +++ b/src/lib/components/admin/Settings/Interface.svelte @@ -90,7 +90,7 @@ } }); - console.log('models', models); + console.debug('models', models); }; diff --git a/src/lib/components/admin/Settings/Models.svelte b/src/lib/components/admin/Settings/Models.svelte index d5b2fc627..5775abf85 100644 --- a/src/lib/components/admin/Settings/Models.svelte +++ b/src/lib/components/admin/Settings/Models.svelte @@ -166,7 +166,7 @@ hidden: !(model?.meta?.hidden ?? false) }; - console.log(model); + console.debug(model); toast.success( model.meta.hidden diff --git a/src/lib/components/admin/Settings/Models/Manage/ManageOllama.svelte b/src/lib/components/admin/Settings/Models/Manage/ManageOllama.svelte index feb5010d2..51f45df5a 100644 --- a/src/lib/components/admin/Settings/Models/Manage/ManageOllama.svelte +++ b/src/lib/components/admin/Settings/Models/Manage/ManageOllama.svelte @@ -66,7 +66,7 @@ const updateModelsHandler = async () => { for (const model of ollamaModels) { - console.log(model); + console.debug(model); updateModelId = model.id; const [res, controller] = await pullModel(localStorage.token, model.id, urlIdx).catch( @@ -114,8 +114,8 @@ } } } - } catch (error) { - console.log(error); + } catch (err) { + console.error(err); } } } @@ -215,13 +215,13 @@ } } } - } catch (error) { - console.log(error); - if (typeof error !== 'string') { - error = error.message; + } catch (err) { + console.error(err); + if (typeof err !== 'string') { + err = err.message; } - toast.error(`${error}`); + toast.error(`${err}`); // opts.callback({ success: false, error, modelName: opts.modelName }); } } @@ -319,8 +319,8 @@ } } } - } catch (error) { - console.log(error); + } catch (err) { + console.error(err); } } } else { @@ -382,9 +382,9 @@ } } } - } catch (error) { - console.log(error); - toast.error(`${error}`); + } catch (err) { + console.error(err); + toast.error(`${err}`); } } } @@ -514,9 +514,9 @@ } } } - } catch (error) { - console.log(error); - toast.error(`${error}`); + } catch (err) { + console.error(err); + toast.error(`${err}`); } } } diff --git a/src/lib/components/admin/Settings/Pipelines.svelte b/src/lib/components/admin/Settings/Pipelines.svelte index e37d39748..635a83df5 100644 --- a/src/lib/components/admin/Settings/Pipelines.svelte +++ b/src/lib/components/admin/Settings/Pipelines.svelte @@ -104,7 +104,7 @@ valves_spec = null; if (PIPELINES_LIST.length > 0) { - console.log(selectedPipelinesUrlIdx); + console.debug(selectedPipelinesUrlIdx); pipelines = await getPipelines(localStorage.token, selectedPipelinesUrlIdx); if (pipelines.length > 0) { @@ -151,7 +151,7 @@ const res = await uploadPipeline(localStorage.token, file, selectedPipelinesUrlIdx).catch( (error) => { - console.log(error); + console.error(error); toast.error('Something went wrong :/'); return null; } diff --git a/src/lib/components/admin/Users/Groups.svelte b/src/lib/components/admin/Users/Groups.svelte index 5847ebbb1..70e5832ea 100644 --- a/src/lib/components/admin/Users/Groups.svelte +++ b/src/lib/components/admin/Users/Groups.svelte @@ -106,7 +106,7 @@ }; const updateDefaultPermissionsHandler = async (group) => { - console.log(group.permissions); + console.debug(group.permissions); const res = await updateUserDefaultPermissions(localStorage.token, group.permissions).catch( (error) => { diff --git a/src/lib/components/admin/Users/Groups/AddGroupModal.svelte b/src/lib/components/admin/Users/Groups/AddGroupModal.svelte index b37da5a18..12cddf398 100644 --- a/src/lib/components/admin/Users/Groups/AddGroupModal.svelte +++ b/src/lib/components/admin/Users/Groups/AddGroupModal.svelte @@ -31,10 +31,6 @@ description = ''; userIds = []; }; - - onMount(() => { - console.log('mounted'); - }); diff --git a/src/lib/components/admin/Users/Groups/EditGroupModal.svelte b/src/lib/components/admin/Users/Groups/EditGroupModal.svelte index 5b6bf6aab..8cc353064 100644 --- a/src/lib/components/admin/Users/Groups/EditGroupModal.svelte +++ b/src/lib/components/admin/Users/Groups/EditGroupModal.svelte @@ -91,7 +91,6 @@ } onMount(() => { - console.log(tabs); selectedTab = tabs[0]; init(); }); diff --git a/src/lib/components/admin/Users/UserList/AddUserModal.svelte b/src/lib/components/admin/Users/UserList/AddUserModal.svelte index 8b3d74c52..cad799eb5 100644 --- a/src/lib/components/admin/Users/UserList/AddUserModal.svelte +++ b/src/lib/components/admin/Users/UserList/AddUserModal.svelte @@ -73,7 +73,7 @@ for (const [idx, row] of rows.entries()) { const columns = row.split(',').map((col) => col.trim()); - console.log(idx, columns); + console.debug(idx, columns); if (idx > 0) { if ( diff --git a/src/lib/components/channel/MessageInput.svelte b/src/lib/components/channel/MessageInput.svelte index d60851fc8..2ad4faa93 100644 --- a/src/lib/components/channel/MessageInput.svelte +++ b/src/lib/components/channel/MessageInput.svelte @@ -80,7 +80,7 @@ const inputFilesHandler = async (inputFiles) => { inputFiles.forEach((file) => { - console.log('Processing file:', { + console.info('Processing file:', { name: file.name, type: file.type, size: file.size, @@ -91,7 +91,7 @@ ($config?.file?.max_size ?? null) !== null && file.size > ($config?.file?.max_size ?? 0) * 1024 * 1024 ) { - console.log('File exceeds max size limit:', { + console.error('File exceeds max size limit:', { fileSize: file.size, maxSize: ($config?.file?.max_size ?? 0) * 1024 * 1024 }); @@ -163,14 +163,14 @@ const uploadedFile = await uploadFile(localStorage.token, file); if (uploadedFile) { - console.log('File upload completed:', { + console.info('File upload completed:', { id: uploadedFile.id, name: fileItem.name, collection: uploadedFile?.meta?.collection_name }); if (uploadedFile.error) { - console.warn('File upload warning:', uploadedFile.error); + console.error('File upload warning:', uploadedFile.error); toast.warning(uploadedFile.error); } @@ -193,7 +193,6 @@ const handleKeyDown = (event: KeyboardEvent) => { if (event.key === 'Escape') { - console.log('Escape'); draggedOver = false; } }; @@ -215,7 +214,6 @@ const onDrop = async (e) => { e.preventDefault(); - console.log(e); if (e.dataTransfer?.files) { const inputFiles = Array.from(e.dataTransfer?.files); @@ -270,7 +268,6 @@ }); onDestroy(() => { - console.log('destroy'); window.removeEventListener('keydown', handleKeyDown); const dropzoneElement = document.getElementById('channel-container'); @@ -479,12 +476,12 @@ } if (e.key === 'Escape') { - console.log('Escape'); + console.info('Escape'); } }} on:paste={async (e) => { e = e.detail.event; - console.log(e); + console.info(e); }} />
diff --git a/src/lib/components/channel/Messages.svelte b/src/lib/components/channel/Messages.svelte index e1bc326b3..9a2bf4cb2 100644 --- a/src/lib/components/channel/Messages.svelte +++ b/src/lib/components/channel/Messages.svelte @@ -51,7 +51,7 @@ {#if !top} { - console.log('visible'); + console.info('visible'); if (!messagesLoading) { loadMoreMessages(); } diff --git a/src/lib/components/channel/Thread.svelte b/src/lib/components/channel/Thread.svelte index 287c7b06a..0b328dc23 100644 --- a/src/lib/components/channel/Thread.svelte +++ b/src/lib/components/channel/Thread.svelte @@ -54,7 +54,7 @@ }; const channelEventHandler = async (event) => { - console.log(event); + console.debug(event); if (event.channel_id === channel.id) { const type = event?.data?.type ?? null; const data = event?.data?.data ?? null; diff --git a/src/lib/components/chat/Artifacts.svelte b/src/lib/components/chat/Artifacts.svelte index b15f38d22..f53e75507 100644 --- a/src/lib/components/chat/Artifacts.svelte +++ b/src/lib/components/chat/Artifacts.svelte @@ -154,7 +154,7 @@ url.pathname + url.search + url.hash ); } else { - console.log('External navigation blocked:', url.href); + console.info('External navigation blocked:', url.href); } } }, From 21e96247a9b0a804de69b8899813d22282a8922d Mon Sep 17 00:00:00 2001 From: Taner Sezer Date: Fri, 16 May 2025 01:19:53 +0300 Subject: [PATCH 062/100] Update translation.json Added new translations --- src/lib/i18n/locales/tr-TR/translation.json | 232 ++++++++++---------- 1 file changed, 116 insertions(+), 116 deletions(-) diff --git a/src/lib/i18n/locales/tr-TR/translation.json b/src/lib/i18n/locales/tr-TR/translation.json index eb754eb10..8d24d1c28 100644 --- a/src/lib/i18n/locales/tr-TR/translation.json +++ b/src/lib/i18n/locales/tr-TR/translation.json @@ -63,10 +63,10 @@ "Allow Chat Delete": "Sohbet Silmeye İzin Ver", "Allow Chat Deletion": "Sohbet Silmeye İzin Ver", "Allow Chat Edit": "Sohbet Silmeye İzin Ver", - "Allow Chat Export": "", - "Allow Chat Share": "", + "Allow Chat Export": "Sohbetin Dışa Aktarımına İzin Ver", + "Allow Chat Share": "Sohbetin Paylaşılmasına İzin Ver", "Allow File Upload": "Dosya Yüklemeye İzin Ver", - "Allow Multiple Models in Chat": "", + "Allow Multiple Models in Chat": "Sohbette Birden Fazla Modele İzin Ver", "Allow non-local voices": "Yerel olmayan seslere izin verin", "Allow Speech to Text": "", "Allow Temporary Chat": "Geçici Sohbetlere İzin Ver", @@ -118,7 +118,7 @@ "Attribute for Username": "Kullanıcı Adı için Özellik", "Audio": "Ses", "August": "Ağustos", - "Auth": "", + "Auth": "Yetki", "Authenticate": "Kimlik Doğrulama", "Authentication": "Kimlik Doğrulama", "Auto": "", @@ -131,7 +131,7 @@ "AUTOMATIC1111 Base URL": "AUTOMATIC1111 Temel URL", "AUTOMATIC1111 Base URL is required.": "AUTOMATIC1111 Temel URL gereklidir.", "Available list": "Mevcut liste", - "Available Tools": "", + "Available Tools": "MEvcut Araçlar", "available!": "mevcut!", "Awful": "Berbat", "Azure AI Speech": "Azure AI Konuşma", @@ -146,7 +146,7 @@ "Beta": "Beta", "Bing Search V7 Endpoint": "Bing Arama V7 Uç Noktası", "Bing Search V7 Subscription Key": "Bing Arama V7 Abonelik Anahtarı", - "Bocha Search API Key": "", + "Bocha Search API Key": "Bocha Arama API Anahtarı", "Boosting or penalizing specific tokens for constrained responses. Bias values will be clamped between -100 and 100 (inclusive). (Default: none)": "", "Both Docling OCR Engine and Language(s) must be provided or both left empty.": "", "Brave Search API Key": "Brave Search API Anahtarı", @@ -159,7 +159,7 @@ "Cancel": "İptal", "Capabilities": "Yetenekler", "Capture": "Kayıt", - "Capture Audio": "", + "Capture Audio": "Sesi Kaydet", "Certificate Path": "Sertifika Yolu", "Change Password": "Parola Değiştir", "Channel Name": "Kanal Adı", @@ -185,14 +185,14 @@ "Ciphers": "Şifreler", "Citation": "Alıntı", "Clear memory": "Belleği temizle", - "Clear Memory": "", + "Clear Memory": "Belleği Temizle", "click here": "buraya tıklayın", "Click here for filter guides.": "Filtre kılavuzları için buraya tıklayın.", "Click here for help.": "Yardım için buraya tıklayın.", "Click here to": "Şunu yapmak için buraya tıklayın:", "Click here to download user import template file.": "Kullanıcı içe aktarma şablon dosyasını indirmek için buraya tıklayın.", "Click here to learn more about faster-whisper and see the available models.": "faster-whisper hakkında daha fazla bilgi edinmek ve mevcut modelleri görmek için buraya tıklayın.", - "Click here to see available models.": "", + "Click here to see available models.": "Erişilebilir Modelleri Görmek İçin Buraya Tıklayın", "Click here to select": "Seçmek için buraya tıklayın", "Click here to select a csv file.": "Bir CSV dosyası seçmek için buraya tıklayın.", "Click here to select a py file.": "Bir py dosyası seçmek için buraya tıklayın.", @@ -202,16 +202,16 @@ "Clipboard write permission denied. Please check your browser settings to grant the necessary access.": "Panoya yazma izni reddedildi. Tarayıcı ayarlarını kontrol ederek gerekli izinleri sağlayabilirsiniz.", "Clone": "Klon", "Clone Chat": "Sohbeti Klonla", - "Clone of {{TITLE}}": "", + "Clone of {{TITLE}}": "{{TITLE}}'ın kopyası", "Close": "Kapat", "Code execution": "Kod yürütme", - "Code Execution": "", + "Code Execution": "Kod Çalıştırma", "Code Execution Engine": "", "Code Execution Timeout": "", "Code formatted successfully": "Kod başarıyla biçimlendirildi", - "Code Interpreter": "", - "Code Interpreter Engine": "", - "Code Interpreter Prompt Template": "", + "Code Interpreter": "Kod Yorumlayıcısı", + "Code Interpreter Engine": "Kod Yorumlama Motoru", + "Code Interpreter Prompt Template": "Kod Yorumlama İstem Şablonu", "Collapse": "", "Collection": "Koleksiyon", "Color": "Renk", @@ -234,11 +234,11 @@ "Connection failed": "", "Connection successful": "", "Connections": "Bağlantılar", - "Connections saved successfully": "", + "Connections saved successfully": "Bağlantılar başarıyla kaydedildi", "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 Erişimi için Yöneticiyle İletişime Geçin", "Content": "İçerik", - "Content Extraction Engine": "", + "Content Extraction Engine": "İçerik Çıkarma Motoru", "Context Length": "Bağlam Uzunluğu", "Continue Response": "Yanıta Devam Et", "Continue with {{provider}}": "{{provider}} ile devam et", @@ -252,7 +252,7 @@ "Copied shared chat URL to clipboard!": "Paylaşılan sohbet URL'si panoya kopyalandı!", "Copied to clipboard": "Panoya kopyalandı", "Copy": "Kopyala", - "Copy Formatted Text": "", + "Copy Formatted Text": "Biçimlenirilmiş Metni Kopyala", "Copy last code block": "Son kod bloğunu kopyala", "Copy last response": "Son yanıtı kopyala", "Copy Link": "Bağlantıyı Kopyala", @@ -269,8 +269,8 @@ "Create Knowledge": "Bilgi Oluştur", "Create new key": "Yeni anahtar oluştur", "Create new secret key": "Yeni gizli anahtar oluştur", - "Create Note": "", - "Create your first note by clicking on the plus button below.": "", + "Create Note": "Not Oluştur", + "Create your first note by clicking on the plus button below.": "İlk notunuzu aşağıdaki artı düğmesine basarak oluşturun.", "Created at": "Oluşturulma tarihi", "Created At": "Şu Tarihte Oluşturuldu:", "Created by": "Şunun tarafından oluşturuldu:", @@ -279,14 +279,14 @@ "Current Model": "Mevcut Model", "Current Password": "Mevcut Parola", "Custom": "Özel", - "Danger Zone": "", + "Danger Zone": "Tehlikeli Bölge", "Dark": "Koyu", "Database": "Veritabanı", "December": "Aralık", "Default": "Varsayılan", "Default (Open AI)": "Varsayılan (Open AI)", "Default (SentenceTransformers)": "Varsayılan (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 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.": "Varsayılan mod, araçları yürütmeden önce bir kez çağırarak daha geniş bir model yelpazesiyle çalışır. Yerel mod, modelin yerleşik araç çağırma yeteneklerinden yararlanır, ancak modelin bu özelliği doğal olarak desteklemesini gerektirir.", "Default Model": "Varsayılan Model", "Default model updated": "Varsayılan model güncellendi", "Default Models": "Varsayılan Modeller", @@ -307,8 +307,8 @@ "Delete folder?": "Klasörü sil?", "Delete function?": "Fonksiyonu sil?", "Delete Message": "Mesajı Sil", - "Delete message?": "", - "Delete note?": "", + "Delete message?": "Mesaj Silinsin mi?", + "Delete note?": "Not Silinsin mi?", "Delete prompt?": "Promptu sil?", "delete this link": "bu bağlantıyı sil", "Delete tool?": "Aracı sil?", @@ -320,8 +320,8 @@ "Description": "Açıklama", "Detect Artifacts Automatically": "", "Didn't fully follow instructions": "Talimatları tam olarak takip etmedi", - "Direct": "", - "Direct Connections": "", + "Direct": "Doğrudan", + "Direct Connections": "Doğrudan Bağlantılar", "Direct Connections allow users to connect to their own OpenAI compatible API endpoints.": "", "Direct Connections settings updated": "", "Direct Tool Servers": "", @@ -366,17 +366,17 @@ "Draw": "Çiz", "Drop any files here to upload": "", "e.g. '30s','10m'. Valid time units are 's', 'm', 'h'.": "örn. '30s', '10m'. Geçerli zaman birimleri 's', 'm', 'h'.", - "e.g. \"json\" or a JSON schema": "", - "e.g. 60": "", + "e.g. \"json\" or a JSON schema": "örn. \"json\" veya JSON şablonu", + "e.g. 60": "örn. 60", "e.g. A filter to remove profanity from text": "örn. Metinden küfürleri kaldırmak için bir filtre", "e.g. My Filter": "örn. Benim Filtrem", "e.g. My Tools": "örn. Benim Araçlarım", "e.g. my_filter": "örn. benim_filtrem", "e.g. my_tools": "örn. benim_araçlarım", "e.g. Tools for performing various operations": " örn.Çeşitli işlemleri gerçekleştirmek için araçlar", - "e.g., 3, 4, 5 (leave blank for default)": "", - "e.g., en-US,ja-JP (leave blank for auto-detect)": "", - "e.g., westus (leave blank for eastus)": "", + "e.g., 3, 4, 5 (leave blank for default)": "örn. 3, 4, 5 (öntanımlı değer için boş bırakın)", + "e.g., en-US,ja-JP (leave blank for auto-detect)": "örn. en-US, ja-JP (otomatik tanıma için boş bırakın)", + "e.g., westus (leave blank for eastus)": "ö", "Edit": "Düzenle", "Edit Arena Model": "Arena Modelini Düzenle", "Edit Channel": "Kanalı Düzenle", @@ -385,18 +385,18 @@ "Edit Memory": "Belleği Düzenle", "Edit User": "Kullanıcıyı Düzenle", "Edit User Group": "Kullanıcı Grubunu Düzenle", - "ElevenLabs": "", + "ElevenLabs": "ElevenLabs", "Email": "E-posta", "Embark on adventures": "Maceralara atıl", - "Embedding": "", + "Embedding": "Gömme", "Embedding Batch Size": "Gömme Yığın Boyutu", "Embedding Model": "Gömme Modeli", "Embedding Model Engine": "Gömme Modeli Motoru", "Embedding model set to \"{{embedding_model}}\"": "Gömme modeli \"{{embedding_model}}\" olarak ayarlandı", "Enable API Key": "API Anahtarını Etkinleştir", "Enable autocomplete generation for chat messages": "Sohbet mesajları için otomatik tamamlama üretimini etkinleştir", - "Enable Code Execution": "", - "Enable Code Interpreter": "", + "Enable Code Execution": "Kod Çalıştırmayı Etkinleştir", + "Enable Code Interpreter": "Kod Yorumlayıcıyı Etkinleştir", "Enable Community Sharing": "Topluluk Paylaşımını Etkinleştir", "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.": "", "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.": "", @@ -404,9 +404,9 @@ "Enable Mirostat sampling for controlling perplexity.": "", "Enable New Sign Ups": "Yeni Kayıtları Etkinleştir", "Enabled": "Etkin", - "Endpoint URL": "", - "Enforce Temporary Chat": "", - "Enhance": "", + "Endpoint URL": "Uçnokta URL", + "Enforce Temporary Chat": "Geçici Sohbete Zorla", + "Enhance": "İyileştir", "Ensure your CSV file includes 4 columns in this order: Name, Email, Password, Role.": "CSV dosyanızın şu sırayla 4 sütun içerdiğinden emin olun: İsim, E-posta, Şifre, Rol.", "Enter {{role}} message here": "Buraya {{role}} mesajını girin", "Enter a detail about yourself for your LLMs to recall": "LLM'lerinizin hatırlaması için kendiniz hakkında bir bilgi girin", @@ -509,7 +509,7 @@ "Error starting recording.": "", "Error uploading file: {{error}}": "Dosya yüklenirken hata oluştu: {{error}}", "Evaluations": "Değerlendirmeler", - "Exa API Key": "", + "Exa API Key": "Exa API Anahtarı", "Example: (&(objectClass=inetOrgPerson)(uid=%s))": "Örnek: (&(objectClass=inetOrgPerson)(uid=%s))", "Example: ALL": "Örnek: ALL", "Example: mail": "Örnek: mail", @@ -522,7 +522,7 @@ "Expand": "Genişlet", "Experimental": "Deneysel", "Explain": "Açıkla", - "Explain this section to me in more detail": "", + "Explain this section to me in more detail": "Bu bölümü detaylı açıkla", "Explore the cosmos": "Evreni keşfet", "Export": "Dışa Aktar", "Export All Archived Chats": "Tüm Arşivlenmiş Sohbetleri Dışa Aktar", @@ -599,16 +599,16 @@ "Functions": "Fonksiyonlar", "Functions allow arbitrary code execution.": "Fonksiyonlar keyfi kod yürütülmesine izin verir.", "Functions imported successfully": "Fonksiyonlar başarıyla içe aktarıldı", - "Gemini": "", + "Gemini": "Gemini", "Gemini API Config": "", "Gemini API Key is required.": "", "General": "Genel", - "Generate": "", + "Generate": "Oluştur", "Generate an image": "Bir Görsel Oluştur", "Generate Image": "Görsel Üret", "Generate prompt pair": "", "Generating search query": "Arama sorgusu oluşturma", - "Generating...": "", + "Generating...": "Oluşturuluyor...", "Get started": "Başlayın", "Get started with {{WEBUI_NAME}}": "{{WEBUI_NAME}} ile başlayın", "Global": "Evrensel", @@ -630,20 +630,20 @@ "Hex Color": "", "Hex Color - Leave empty for default color": "", "Hide": "Gizle", - "Hide Model": "", + "Hide Model": "Modeli Gizle", "Home": "", "Host": "Ana bilgisayar", "How can I help you today?": "Bugün size nasıl yardımcı olabilirim?", "How would you rate this response?": "Bu yanıtı nasıl değerlendirirsiniz?", "Hybrid Search": "Karma Arama", "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.": "Eylemimin sonuçlarını okuduğumu ve anladığımı kabul ediyorum. Rastgele kod çalıştırmayla ilgili risklerin farkındayım ve kaynağın güvenilirliğini doğruladım.", - "ID": "", + "ID": "ID", "iframe Sandbox Allow Forms": "", "iframe Sandbox Allow Same Origin": "", "Ignite curiosity": "Merak uyandırın", "Image": "Görsel", "Image Compression": "Görüntü Sıkıştırma", - "Image Generation": "", + "Image Generation": "Görüntü Oluşturma", "Image Generation (Experimental)": "Görüntü Oluşturma (Deneysel)", "Image Generation Engine": "Görüntü Oluşturma Motoru", "Image Max Compression Size": "Görüntü Maksimum Sıkıştırma Boyutu", @@ -655,7 +655,7 @@ "Import Config from JSON File": "Yapılandırmayı JSON Dosyasından İçe Aktar", "Import Functions": "Fonksiyonları İçe Aktar", "Import Models": "Modelleri İçe Aktar", - "Import Notes": "", + "Import Notes": "Notları İçe Aktar", "Import Presets": "Ön Ayarları İçe Aktar", "Import Prompts": "Promptları İçe Aktar", "Import Tools": "Araçları İçe Aktar", @@ -672,11 +672,11 @@ "Interface": "Arayüz", "Invalid file content": "", "Invalid file format.": "Geçersiz dosya biçimi.", - "Invalid JSON schema": "", + "Invalid JSON schema": "Geçersiz JSON şablonu", "Invalid Tag": "Geçersiz etiket", "is typing...": "yazıyor...", "January": "Ocak", - "Jina API Key": "", + "Jina API Key": "Jina API Anahtarı", "join our Discord for help.": "yardım için Discord'umuza katılın.", "JSON": "JSON", "JSON Preview": "JSON Önizlemesi", @@ -686,7 +686,7 @@ "Jupyter URL": "", "JWT Expiration": "JWT Bitişi", "JWT Token": "JWT Token", - "Kagi Search API Key": "", + "Kagi Search API Key": "Kagi Arama API Anahtarı", "Keep Alive": "Canlı Tut", "Key": "Anahtar", "Keyboard shortcuts": "Klavye kısayolları", @@ -699,8 +699,8 @@ "Knowledge updated successfully": "Bilgi başarıyla güncellendi", "Kokoro.js (Browser)": "", "Kokoro.js Dtype": "", - "Label": "", - "Landing Page Mode": "", + "Label": "Etiket", + "Landing Page Mode": "Açılış Sayfa Modu", "Language": "Dil", "Language Locales": "", "Last Active": "Son Aktivite", @@ -721,8 +721,8 @@ "Listening...": "Dinleniyor...", "Llama.cpp": "", "LLMs can make mistakes. Verify important information.": "LLM'ler hata yapabilir. Önemli bilgileri doğrulayın.", - "Loader": "", - "Loading Kokoro.js...": "", + "Loader": "Yükleyici", + "Loading Kokoro.js...": "Kokoro.js Yükleniyor...", "Local": "Yerel", "Local Models": "Yerel Modeller", "Location access not allowed": "", @@ -733,8 +733,8 @@ "Make sure to enclose them with": "Değişkenlerinizi şu şekilde biçimlendirin:", "Make sure to export a workflow.json file as API format from ComfyUI.": "ComfyUI'dan API formatında bir workflow.json dosyası olarak dışa aktardığınızdan emin olun.", "Manage": "Yönet", - "Manage Direct Connections": "", - "Manage Models": "", + "Manage Direct Connections": "Doğrudan Bağlantıları Yönet", + "Manage Models": "Modelleri Yönet", "Manage Ollama": "Ollama'yı Yönet", "Manage Ollama API Connections": "Ollama API Bağlantılarını Yönet", "Manage OpenAI API Connections": "OpenAI API Bağlantılarını Yönet", @@ -757,23 +757,23 @@ "Merged Response": "Birleştirilmiş Yanıt", "Message rating should be enabled to use this feature": "Bu özelliği kullanmak için mesaj derecelendirmesi etkinleştirilmelidir", "Messages you send after creating your link won't be shared. Users with the URL will be able to view the shared chat.": "Bağlantınızı oluşturduktan sonra gönderdiğiniz mesajlar paylaşılmayacaktır. URL'ye sahip kullanıcılar paylaşılan sohbeti görüntüleyebilecektir.", - "Microsoft OneDrive": "", - "Microsoft OneDrive (personal)": "", - "Microsoft OneDrive (work/school)": "", + "Microsoft OneDrive": "Microsoft OneDrive", + "Microsoft OneDrive (personal)": "Microsoft OneDrive (kişisel)", + "Microsoft OneDrive (work/school)": "Microsoft OneDrive (iş/okul)", "Min P": "Min P", "Mirostat": "Mirostat", "Mirostat Eta": "Mirostat Eta", "Mirostat Tau": "Mirostat Tau", - "Mistral OCR": "", - "Mistral OCR API Key required.": "", + "Mistral OCR": "Mistral OCR", + "Mistral OCR API Key required.": "Mistral OCR API Anahtarı Gerekli", "Model": "Model", "Model '{{modelName}}' has been successfully downloaded.": "'{{modelName}}' başarıyla indirildi.", "Model '{{modelTag}}' is already in queue for downloading.": "'{{modelTag}}' zaten indirme sırasında.", "Model {{modelId}} not found": "{{modelId}} bulunamadı", "Model {{modelName}} is not vision capable": "Model {{modelName}} görüntü yeteneğine sahip değil", "Model {{name}} is now {{status}}": "{{name}} modeli artık {{status}}", - "Model {{name}} is now hidden": "", - "Model {{name}} is now visible": "", + "Model {{name}} is now hidden": "Model {{name}} artık gizli", + "Model {{name}} is now visible": "Model {{name}} artık görünür", "Model accepts image inputs": "Model görüntü girdilerini kabul eder", "Model created successfully!": "Model başarıyla oluşturuldu!", "Model filesystem path detected. Model shortname is required for update, cannot continue.": "Model dosya sistemi yolu algılandı. Güncelleme için model kısa adı gerekli, devam edilemiyor.", @@ -793,18 +793,18 @@ "Mojeek Search API Key": "Mojeek Search API Anahtarı", "more": "daha fazla", "More": "Daha Fazla", - "My Notes": "", + "My Notes": "Notlarım", "Name": "Ad", "Name your knowledge base": "Bilgi tabanınıza bir ad verin", "Native": "", "New Chat": "Yeni Sohbet", "New Folder": "Yeni Klasör", - "New Note": "", + "New Note": "Yeni Not", "New Password": "Yeni Parola", "new-channel": "yeni-kanal", - "No content": "", + "No content": "İçerik yok", "No content found": "İçerik bulunamadı", - "No content found in file.": "", + "No content found in file.": "Dosyada içerik bulunamadı", "No content to speak": "Konuşacak içerik yok", "No distance available": "Mesafe mevcut değil", "No feedbacks found": "Geri bildirim bulunamadı", @@ -813,11 +813,11 @@ "No HTML, CSS, or JavaScript content found.": "HTML, CSS veya JavaScript içeriği bulunamadı.", "No inference engine with management support found": "", "No knowledge found": "Bilgi bulunamadı", - "No memories to clear": "", + "No memories to clear": "Temizlenecek bellek yok", "No model IDs": "Model ID yok", "No models found": "Model bulunamadı", "No models selected": "Model seçilmedi", - "No Notes": "", + "No Notes": "Not Yok", "No results found": "Sonuç bulunamadı", "No search query generated": "Hiç arama sorgusu oluşturulmadı", "No source available": "Kaynak mevcut değil", @@ -826,7 +826,7 @@ "None": "Yok", "Not factually correct": "Gerçeklere göre doğru değil", "Not helpful": "Yardımcı olmadı", - "Note deleted successfully": "", + "Note deleted successfully": "Not başarıyla silindi", "Note: If you set a minimum score, the search will only return documents with a score greater than or equal to the minimum score.": "Not: Minimum bir skor belirlerseniz, arama yalnızca minimum skora eşit veya daha yüksek bir skora sahip belgeleri getirecektir.", "Notes": "Notlar", "Notification Sound": "Bildirim Sesi", @@ -845,11 +845,11 @@ "Ollama API settings updated": "Ollama API ayarları güncellendi", "Ollama Version": "Ollama Sürümü", "On": "Açık", - "OneDrive": "", + "OneDrive": "OneDrive", "Only alphanumeric characters and hyphens are allowed": "Yalnızca alfasayısal karakterler ve tireler kabul edilir", "Only alphanumeric characters and hyphens are allowed in the command string.": "Komut dizisinde yalnızca alfasayısal karakterler ve tireler kabul edilir.", "Only collections can be edited, create a new knowledge base to edit/add documents.": "Yalnızca koleksiyonlar düzenlenebilir, belgeleri düzenlemek/eklemek için yeni bir bilgi tabanı oluşturun.", - "Only markdown files are allowed": "", + "Only markdown files are allowed": "Yalnızca markdown biçimli dosyalar kullanılabilir", "Only select users and groups with permission can access": "İzinli kullanıcılar ve gruplar yalnızca erişebilir", "Oops! Looks like the URL is invalid. Please double-check and try again.": "Hop! URL geçersiz gibi görünüyor. Lütfen tekrar kontrol edin ve yeniden deneyin.", "Oops! There are files still uploading. Please wait for the upload to complete.": "Hop! Hala yüklenen dosyalar var. Yüklemenin tamamlanmasını bekleyin.", @@ -858,7 +858,7 @@ "Open file": "Dosyayı aç", "Open in full screen": "Tam ekranda aç", "Open new chat": "Yeni sohbet aç", - "Open WebUI can use tools provided by any OpenAPI server.": "", + "Open WebUI can use tools provided by any OpenAPI server.": "Open WebUI OpenAPI tarafından sağlanan araçları kullanabilir", "Open WebUI uses faster-whisper internally.": "Open WebUI, dahili olarak daha hızlı-fısıltı kullanır.", "Open WebUI uses SpeechT5 and CMU Arctic speaker embeddings.": "Open WebUI, SpeechT5 ve CMU Arctic konuşmacı gömme kullanır.", "Open WebUI version (v{{OPEN_WEBUI_VERSION}}) is lower than required version (v{{REQUIRED_VERSION}})": "Open-WebUI sürümü (v{{OPEN_WEBUI_VERSION}}) gerekli sürümden (v{{REQUIRED_VERSION}}) düşük", @@ -868,7 +868,7 @@ "OpenAI API Key is required.": "OpenAI API Anahtarı gereklidir.", "OpenAI API settings updated": "OpenAI API ayarları güncellendi", "OpenAI URL/Key required.": "OpenAI URL/Anahtar gereklidir.", - "openapi.json Path": "", + "openapi.json Path": "openapi.json Yolu", "or": "veya", "Organize your users": "Kullanıcılarınızı düzenleyin", "Other": "Diğer", @@ -885,7 +885,7 @@ "Permission denied when accessing microphone": "Mikrofona erişim izni reddedildi", "Permission denied when accessing microphone: {{error}}": "Mikrofona erişim izni reddedildi: {{error}}", "Permissions": "İzinler", - "Perplexity API Key": "", + "Perplexity API Key": "Perplexity API Anahtarı", "Personalization": "Kişiselleştirme", "Pin": "Sabitle", "Pinned": "Sabitlenmiş", @@ -895,19 +895,19 @@ "Pipelines": "Pipelinelar", "Pipelines Not Detected": "Pipeline Tespit Edilmedi", "Pipelines Valves": "Pipeline Valvleri", - "Plain text (.md)": "", + "Plain text (.md)": "Düz Metin (.md)", "Plain text (.txt)": "Düz metin (.txt)", "Playground": "Oyun Alanı", - "Playwright Timeout (ms)": "", - "Playwright WebSocket URL": "", + "Playwright Timeout (ms)": "Playwright Zamanaşımı (ms)", + "Playwright WebSocket URL": "Playwright WebSocket URL", "Please carefully review the following warnings:": "Lütfen aşağıdaki uyarıları dikkatlice inceleyin:", - "Please do not close the settings page while loading the model.": "", + "Please do not close the settings page while loading the model.": "Lütfen model yüklenirken ayarlar sayfasını kapatmayınız", "Please enter a prompt": "Lütfen bir prompt girin", - "Please enter a valid path": "", - "Please enter a valid URL": "", + "Please enter a valid path": "Lütfen geçerli bir yol giriniz", + "Please enter a valid URL": "Lütfen geçerli bir URL adresi giriniz", "Please fill in all fields.": "Lütfen tüm alanları doldurun.", "Please select a model first.": "Lütfen önce bir model seçin.", - "Please select a model.": "", + "Please select a model.": "Lütfen bir model seçin", "Please select a reason": "Lütfen bir neden seçin", "Port": "Port", "Positive attitude": "Olumlu yaklaşım", @@ -918,15 +918,15 @@ "Previous 7 days": "Önceki 7 gün", "Private": "Gizli", "Profile Image": "Profil Fotoğrafı", - "Prompt": "", + "Prompt": "İstem", "Prompt (e.g. Tell me a fun fact about the Roman Empire)": "Prompt (örn. Roma İmparatorluğu hakkında ilginç bir bilgi verin)", "Prompt Autocompletion": "", - "Prompt Content": "Prompt İçeriği", + "Prompt Content": "İstem İçeriği", "Prompt created successfully": "Prompt başarıyla oluşturuldu", - "Prompt suggestions": "Prompt önerileri", + "Prompt suggestions": "İstem önerileri", "Prompt updated successfully": "Prompt başarıyla güncellendi", - "Prompts": "Promptlar", - "Prompts Access": "Promptlara Erişim", + "Prompts": "İstemler", + "Prompts Access": "İstemlere Erişim", "Prompts Public Sharing": "", "Public": "", "Pull \"{{searchValue}}\" from Ollama.com": "Ollama.com'dan \"{{searchValue}}\" çekin", @@ -938,7 +938,7 @@ "Read": "Oku", "Read Aloud": "Sesli Oku", "Reasoning Effort": "", - "Record": "", + "Record": "Kaydet", "Record voice": "Ses kaydı yap", "Redirecting you to Open WebUI Community": "OpenWebUI Topluluğuna yönlendiriliyorsunuz", "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.": "", @@ -950,7 +950,7 @@ "Reindex Knowledge Base Vectors": "", "Release Notes": "Sürüm Notları", "Relevance": "İlgili", - "Relevance Threshold": "", + "Relevance Threshold": "İlgi Eşiği", "Remove": "Kaldır", "Remove Model": "Modeli Kaldır", "Rename": "Yeniden Adlandır", @@ -1000,14 +1000,14 @@ "Search options": "Arama seçenekleri", "Search Prompts": "Prompt Ara", "Search Result Count": "Arama Sonucu Sayısı", - "Search the internet": "", + "Search the internet": "İNternette Ara", "Search Tools": "Arama Araçları", "SearchApi API Key": "Arama-API API Anahtarı", "SearchApi Engine": "Arama-API Motoru", "Searched {{count}} sites": "{{count}} site arandı", "Searching \"{{searchQuery}}\"": "\"{{searchQuery}}\" aranıyor", "Searching Knowledge for \"{{searchQuery}}\"": "\"{{searchQuery}}\" için Bilgi aranıyor", - "Searching the web...": "", + "Searching the web...": "İnternette aranıyor...", "Searxng Query URL": "Searxng Sorgu URL'si", "See readme.md for instructions": "Yönergeler için readme.md dosyasına bakın", "See what's new": "Yeniliklere göz atın", @@ -1020,7 +1020,7 @@ "Select a pipeline": "Bir pipeline seç", "Select a pipeline url": "Bir pipeline URL'si seç", "Select a tool": "Bir araç seç", - "Select an auth method": "", + "Select an auth method": "Yetkilendirme yöntemi seç", "Select an Ollama instance": "", "Select Engine": "Motor Seç", "Select Knowledge": "Bilgi Seç", @@ -1032,8 +1032,8 @@ "Send message": "Mesaj gönder", "Sends `stream_options: { include_usage: true }` in the request.\nSupported providers will return token usage information in the response when set.": "İsteğe `stream_options: { include_usage: true }` gönderir.\nDesteklenen sağlayıcılar, ayarlandığında yanıtta token kullanım bilgilerini döndürecektir.", "September": "Eylül", - "SerpApi API Key": "", - "SerpApi Engine": "", + "SerpApi API Key": "SerpApi API Anahtarı", + "SerpApi Engine": "SerpApi Motoru", "Serper API Key": "Serper API Anahtarı", "Serply API Key": "Serply API Anahtarı", "Serpstack API Key": "Serpstack API Anahtarı", @@ -1068,9 +1068,9 @@ "Show": "Göster", "Show \"What's New\" modal on login": "Girişte \"Yenilikler\" modalını göster", "Show Admin Details in Account Pending Overlay": "Yönetici Ayrıntılarını Hesap Bekliyor Ekranında Göster", - "Show All": "", - "Show Less": "", - "Show Model": "", + "Show All": "Tümünü Göster", + "Show Less": "Daha az Göster", + "Show Model": "Modeli Göster", "Show shortcuts": "Kısayolları göster", "Show your support!": "Desteğinizi gösterin!", "Showcased creativity": "Sergilenen yaratıcılık", @@ -1104,7 +1104,7 @@ "System": "Sistem", "System Instructions": "Sistem Talimatları", "System Prompt": "Sistem Promptu", - "Tags": "", + "Tags": "Etiketler", "Tags Generation": "Etiketler Oluşturma", "Tags Generation Prompt": "Etiketler Oluşturma Promptu", "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.": "", @@ -1151,9 +1151,9 @@ "This will delete all models including custom models and cannot be undone.": "Bu, özel modeller dahil olmak üzere tüm modelleri silecek ve geri alınamaz.", "This will reset the knowledge base and sync all files. Do you wish to continue?": "Bu, bilgi tabanını sıfırlayacak ve tüm dosyaları senkronize edecek. Devam etmek istiyor musunuz?", "Thorough explanation": "Kapsamlı açıklama", - "Thought for {{DURATION}}": "", - "Thought for {{DURATION}} seconds": "", - "Tika": "", + "Thought for {{DURATION}}": "{{DURATION}} saniye düşünüldü", + "Thought for {{DURATION}} seconds": "{{DURATION}} saniye düşünüldü", + "Tika": "Tika", "Tika Server URL required.": "Tika Sunucu URL'si gereklidir.", "Tiktoken": "Tiktoken", "Tip: Update multiple variable slots consecutively by pressing the tab key in the chat input after each replacement.": "İpucu: Her değiştirmeden sonra sohbet girişinde tab tuşuna basarak birden fazla değişken yuvasını art arda güncelleyin.", @@ -1161,8 +1161,8 @@ "Title (e.g. Tell me a fun fact)": "Başlık (e.g. Bana ilginç bir bilgi ver)", "Title Auto-Generation": "Otomatik Başlık Oluşturma", "Title cannot be an empty string.": "Başlık boş bir dize olamaz.", - "Title Generation": "", - "Title Generation Prompt": "Başlık Oluşturma Promptu", + "Title Generation": "Başlık Oluşturma", + "Title Generation Prompt": "Başlık Oluşturma İstemi", "TLS": "TLS", "To access the available model names for downloading,": "İndirilebilir mevcut model adlarına erişmek için,", "To access the GGUF models available for downloading,": "İndirilebilir mevcut GGUF modellerine erişmek için,", @@ -1177,8 +1177,8 @@ "Today": "Bugün", "Toggle settings": "Ayarları Aç/Kapat", "Toggle sidebar": "Kenar Çubuğunu Aç/Kapat", - "Token": "", - "Tokens To Keep On Context Refresh (num_keep)": "Bağlam Yenilemesinde Korunacak Tokenler (num_keep)", + "Token": "Birim", + "Tokens To Keep On Context Refresh (num_keep)": "Bağlam Yenilemesinde Korunacak Birimler (num_keep)", "Too verbose": "Çok ayrıntılı", "Tool created successfully": "Araç başarıyla oluşturuldu", "Tool deleted successfully": "Araç başarıyla silindi", @@ -1186,7 +1186,7 @@ "Tool ID": "", "Tool imported successfully": "Araç başarıyla içe aktarıldı", "Tool Name": "Araç Adı", - "Tool Servers": "", + "Tool Servers": "Araç Sunucuları", "Tool updated successfully": "Araç başarıyla güncellendi", "Tools": "Araçlar", "Tools Access": "Araçlara Erişim", @@ -1205,16 +1205,16 @@ "TTS Voice": "TTS Sesi", "Type": "Tür", "Type Hugging Face Resolve (Download) URL": "HuggingFace Çözümleme (İndirme) URL'sini Yazın", - "Uh-oh! There was an issue with the response.": "", + "Uh-oh! There was an issue with the response.": "Opps! Yanıtla ilgili bir sorun oluştu", "UI": "Arayüz", - "Unarchive All": "", - "Unarchive All Archived Chats": "", - "Unarchive Chat": "", + "Unarchive All": "Tümünü Arşivden Çıkar", + "Unarchive All Archived Chats": "Arşivlenmiş Tüm Sohbetleri Arşivden Çıkar", + "Unarchive Chat": "Sohbeti Arşivden Çıkar", "Unlock mysteries": "", "Unpin": "Sabitlemeyi Kaldır", "Unravel secrets": "", "Untagged": "Etiketsiz", - "Untitled": "", + "Untitled": "Başlıksız", "Update": "Güncelle", "Update and Copy Link": "Güncelle ve Bağlantıyı Kopyala", "Update for the latest features and improvements.": "En son özellikler ve iyileştirmeler için güncelleyin.", @@ -1225,7 +1225,7 @@ "Upgrade to a licensed plan for enhanced capabilities, including custom theming and branding, and dedicated support.": "", "Upload": "Yükle", "Upload a GGUF model": "Bir GGUF modeli yükle", - "Upload Audio": "", + "Upload Audio": "Sesi Yükle", "Upload directory": "Dizini yükle", "Upload files": "Dosyaları yükle", "Upload Files": "Dosyaları Yükle", @@ -1255,8 +1255,8 @@ "Valves updated successfully": "Valvler başarıyla güncellendi", "variable": "değişken", "variable to have them replaced with clipboard content.": "panodaki içerikle değiştirilmesi için değişken.", - "Verify Connection": "", - "Verify SSL Certificate": "", + "Verify Connection": "Bağlantıyı Doğrula", + "Verify SSL Certificate": "SSL Sertifikasını Doğrula", "Version": "Sürüm", "Version {{selectedVersion}} of {{totalVersions}}": "Sürüm {{selectedVersion}} / {{totalVersions}}", "View Replies": "Yanıtları Görüntüle", @@ -1300,8 +1300,8 @@ "Write something...": "Bir şeyler yazın...", "Write your model template content here": "Model şablon içeriğinizi buraya yazın", "Yacy Instance URL": "", - "Yacy Password": "", - "Yacy Username": "", + "Yacy Password": "Yacy Parolası", + "Yacy Username": "Yacy Kullanıcı Adı", "Yesterday": "Dün", "You": "Sen", "You are currently using a trial license. Please contact support to upgrade your license.": "", @@ -1317,5 +1317,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.": "Tüm katkınız doğrudan eklenti geliştiricisine gidecektir; Open WebUI herhangi bir yüzde almaz. Ancak seçilen finansman platformunun kendi ücretleri olabilir.", "Youtube": "Youtube", "Youtube Language": "Youtube Dili", - "Youtube Proxy URL": "" + "Youtube Proxy URL": "Youtube Vekil URL'si" } From 351f0186b97110f80ff883f278118530b4430ade Mon Sep 17 00:00:00 2001 From: dongfangzan <787814104@qq.com> Date: Fri, 16 May 2025 08:05:49 +0800 Subject: [PATCH 063/100] fix: typo --- src/lib/components/chat/Chat.svelte | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/lib/components/chat/Chat.svelte b/src/lib/components/chat/Chat.svelte index 776555227..33aa0ec8f 100644 --- a/src/lib/components/chat/Chat.svelte +++ b/src/lib/components/chat/Chat.svelte @@ -148,7 +148,7 @@ files = []; selectedToolIds = []; webSearchEnabled = false; - webSearchEnabled = false; + thinkingEnabled = false; imageGenerationEnabled = false; if (localStorage.getItem(`chat-input${chatIdProp ? `-${chatIdProp}` : ''}`)) { From 53dcaa63d4ffdf6b252a5c5a83fea6bc58a8307d Mon Sep 17 00:00:00 2001 From: uryukikutani Date: Fri, 16 May 2025 17:41:56 +0900 Subject: [PATCH 064/100] made the chat response messages readable with a screen reader --- .../chat/Messages/ResponseMessage.svelte | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/src/lib/components/chat/Messages/ResponseMessage.svelte b/src/lib/components/chat/Messages/ResponseMessage.svelte index f48c69a59..ffdbb4779 100644 --- a/src/lib/components/chat/Messages/ResponseMessage.svelte +++ b/src/lib/components/chat/Messages/ResponseMessage.svelte @@ -580,6 +580,14 @@ }); } }); + + let screenReaderDiv: HTMLDivElement; + + $: if (message.done) { + if (screenReaderDiv) { + screenReaderDiv.textContent = message.content; + } + } +
+ {message.done ? message.content : ''} +
+ {#key message.id}
Date: Fri, 16 May 2025 15:39:26 +0400 Subject: [PATCH 065/100] refac: command arrow up/down behaviour --- src/lib/components/chat/MessageInput.svelte | 22 +++++++++++++++++-- .../MessageInput/Commands/Knowledge.svelte | 9 ++++---- .../chat/MessageInput/Commands/Models.svelte | 9 ++++---- .../chat/MessageInput/Commands/Prompts.svelte | 9 ++++---- 4 files changed, 35 insertions(+), 14 deletions(-) diff --git a/src/lib/components/chat/MessageInput.svelte b/src/lib/components/chat/MessageInput.svelte index 26bc6e226..ba705146f 100644 --- a/src/lib/components/chat/MessageInput.svelte +++ b/src/lib/components/chat/MessageInput.svelte @@ -878,20 +878,38 @@ e.preventDefault(); commandsElement.selectUp(); + const container = document.getElementById('command-options-container'); const commandOptionButton = [ ...document.getElementsByClassName('selected-command-option-button') ]?.at(-1); - commandOptionButton.scrollIntoView({ block: 'center' }); + + if (commandOptionButton && container) { + const elTop = commandOptionButton.offsetTop; + const elHeight = commandOptionButton.offsetHeight; + const containerHeight = container.clientHeight; + + // Center the selected button in the container + container.scrollTop = elTop - containerHeight / 2 + elHeight / 2; + } } if (commandsContainerElement && e.key === 'ArrowDown') { e.preventDefault(); commandsElement.selectDown(); + const container = document.getElementById('command-options-container'); const commandOptionButton = [ ...document.getElementsByClassName('selected-command-option-button') ]?.at(-1); - commandOptionButton.scrollIntoView({ block: 'center' }); + + if (commandOptionButton && container) { + const elTop = commandOptionButton.offsetTop; + const elHeight = commandOptionButton.offsetHeight; + const containerHeight = container.clientHeight; + + // Center the selected button in the container + container.scrollTop = elTop - containerHeight / 2 + elHeight / 2; + } } if (commandsContainerElement && e.key === 'Enter') { diff --git a/src/lib/components/chat/MessageInput/Commands/Knowledge.svelte b/src/lib/components/chat/MessageInput/Commands/Knowledge.svelte index adf82bb0f..d215dda42 100644 --- a/src/lib/components/chat/MessageInput/Commands/Knowledge.svelte +++ b/src/lib/components/chat/MessageInput/Commands/Knowledge.svelte @@ -170,10 +170,11 @@ class="px-2 mb-2 text-left w-full absolute bottom-0 left-0 right-0 z-10" >
-
-
+
+
{#each filteredItems as item, idx} +
+
+
{$i18n.t('Landing Page Mode')}
From bb06df80a2fd697ee1d53ff061b7caa4b52710cf Mon Sep 17 00:00:00 2001 From: Timothy Jaeryang Baek Date: Fri, 16 May 2025 17:07:52 +0400 Subject: [PATCH 068/100] refac --- src/lib/components/chat/Settings/Interface.svelte | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/lib/components/chat/Settings/Interface.svelte b/src/lib/components/chat/Settings/Interface.svelte index ad41c05be..03141583a 100644 --- a/src/lib/components/chat/Settings/Interface.svelte +++ b/src/lib/components/chat/Settings/Interface.svelte @@ -288,6 +288,8 @@ titleAutoGenerate = $settings?.title?.auto ?? true; autoTags = $settings.autoTags ?? true; + highContrastMode = $settings.highContrastMode ?? false; + detectArtifacts = $settings.detectArtifacts ?? true; responseAutoCopy = $settings.responseAutoCopy ?? false; From dec9dd1ac048df4c349b681f0afdf60dcb78194e Mon Sep 17 00:00:00 2001 From: Timothy Jaeryang Baek Date: Fri, 16 May 2025 17:11:42 +0400 Subject: [PATCH 069/100] refac: web search queries --- backend/open_webui/utils/middleware.py | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/backend/open_webui/utils/middleware.py b/backend/open_webui/utils/middleware.py index 03ff781e4..2c7acbb78 100644 --- a/backend/open_webui/utils/middleware.py +++ b/backend/open_webui/utils/middleware.py @@ -340,6 +340,11 @@ async def chat_web_search_handler( log.exception(e) queries = [user_message] + # Check if generated queries are empty + if len(queries) == 1 and queries[0].strip() == "": + queries = [user_message] + + # Check if queries are not found if len(queries) == 0: await event_emitter( { From 2aa5e7372809c2b80e831e23dec0b0f6e435bcdb Mon Sep 17 00:00:00 2001 From: Timothy Jaeryang Baek Date: Fri, 16 May 2025 18:01:55 +0400 Subject: [PATCH 070/100] refac: filter details --- backend/open_webui/utils/middleware.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/backend/open_webui/utils/middleware.py b/backend/open_webui/utils/middleware.py index 2c7acbb78..21495f04a 100644 --- a/backend/open_webui/utils/middleware.py +++ b/backend/open_webui/utils/middleware.py @@ -949,15 +949,15 @@ async def process_chat_response( if message: messages = get_message_list(message_map, message.get("id")) - # Remove reasoning details and files from the messages. + # Remove details tags and files from the messages. # as get_message_list creates a new list, it does not affect # the original messages outside of this handler for message in messages: message["content"] = re.sub( - r"]*>.*?<\/details>", + r"]*>.*?<\/details>", "", message["content"], - flags=re.S, + flags=re.S | re.I, ).strip() if message.get("files"): From 528a2cf96a8bef32fd9f8fdc8467908b52895a3a Mon Sep 17 00:00:00 2001 From: Timothy Jaeryang Baek Date: Fri, 16 May 2025 18:19:28 +0400 Subject: [PATCH 071/100] refac --- backend/open_webui/utils/middleware.py | 26 ++++++++++++++++++-------- 1 file changed, 18 insertions(+), 8 deletions(-) diff --git a/backend/open_webui/utils/middleware.py b/backend/open_webui/utils/middleware.py index 21495f04a..323fd200a 100644 --- a/backend/open_webui/utils/middleware.py +++ b/backend/open_webui/utils/middleware.py @@ -953,15 +953,25 @@ async def process_chat_response( # as get_message_list creates a new list, it does not affect # the original messages outside of this handler for message in messages: - message["content"] = re.sub( - r"]*>.*?<\/details>", - "", - message["content"], - flags=re.S | re.I, - ).strip() + content = message.get("content", "") + if isinstance(content, list): + for item in content: + if item.get("type") == "text": + content = item["text"] + break - if message.get("files"): - message["files"] = [] + if isinstance(content, str): + content = re.sub( + r"]*>.*?<\/details>", + "", + content, + flags=re.S | re.I, + ).strip() + + message = { + "role": message["role"], + "content": content, + } if tasks and messages: if TASKS.TITLE_GENERATION in tasks: From 2bd7db12a29cd2ed986b1fcacd3390caaf7d0fae Mon Sep 17 00:00:00 2001 From: Timothy Jaeryang Baek Date: Fri, 16 May 2025 21:05:52 +0400 Subject: [PATCH 072/100] enh: ALLOWED_FILE_EXTENSIONS ui --- backend/open_webui/config.py | 10 +++++-- backend/open_webui/routers/files.py | 4 +++ backend/open_webui/routers/retrieval.py | 8 +++++ .../admin/Settings/Documents.svelte | 29 ++++++++++++++++++- src/lib/i18n/locales/ar-BH/translation.json | 4 +++ src/lib/i18n/locales/ar/translation.json | 4 +++ src/lib/i18n/locales/bg-BG/translation.json | 4 +++ src/lib/i18n/locales/bn-BD/translation.json | 4 +++ src/lib/i18n/locales/bo-TB/translation.json | 4 +++ src/lib/i18n/locales/ca-ES/translation.json | 4 +++ src/lib/i18n/locales/ceb-PH/translation.json | 4 +++ src/lib/i18n/locales/cs-CZ/translation.json | 4 +++ src/lib/i18n/locales/da-DK/translation.json | 4 +++ src/lib/i18n/locales/de-DE/translation.json | 4 +++ src/lib/i18n/locales/dg-DG/translation.json | 4 +++ src/lib/i18n/locales/el-GR/translation.json | 4 +++ src/lib/i18n/locales/en-GB/translation.json | 4 +++ src/lib/i18n/locales/en-US/translation.json | 4 +++ src/lib/i18n/locales/es-ES/translation.json | 4 +++ src/lib/i18n/locales/et-EE/translation.json | 4 +++ src/lib/i18n/locales/eu-ES/translation.json | 4 +++ src/lib/i18n/locales/fa-IR/translation.json | 4 +++ src/lib/i18n/locales/fi-FI/translation.json | 4 +++ src/lib/i18n/locales/fr-CA/translation.json | 4 +++ src/lib/i18n/locales/fr-FR/translation.json | 4 +++ src/lib/i18n/locales/he-IL/translation.json | 4 +++ src/lib/i18n/locales/hi-IN/translation.json | 4 +++ src/lib/i18n/locales/hr-HR/translation.json | 4 +++ src/lib/i18n/locales/hu-HU/translation.json | 4 +++ src/lib/i18n/locales/id-ID/translation.json | 4 +++ src/lib/i18n/locales/ie-GA/translation.json | 4 +++ src/lib/i18n/locales/it-IT/translation.json | 4 +++ src/lib/i18n/locales/ja-JP/translation.json | 4 +++ src/lib/i18n/locales/ka-GE/translation.json | 4 +++ src/lib/i18n/locales/ko-KR/translation.json | 4 +++ src/lib/i18n/locales/lt-LT/translation.json | 4 +++ src/lib/i18n/locales/ms-MY/translation.json | 4 +++ src/lib/i18n/locales/nb-NO/translation.json | 4 +++ src/lib/i18n/locales/nl-NL/translation.json | 4 +++ src/lib/i18n/locales/pa-IN/translation.json | 4 +++ src/lib/i18n/locales/pl-PL/translation.json | 4 +++ src/lib/i18n/locales/pt-BR/translation.json | 4 +++ src/lib/i18n/locales/pt-PT/translation.json | 4 +++ src/lib/i18n/locales/ro-RO/translation.json | 4 +++ src/lib/i18n/locales/ru-RU/translation.json | 4 +++ src/lib/i18n/locales/sk-SK/translation.json | 4 +++ src/lib/i18n/locales/sr-RS/translation.json | 4 +++ src/lib/i18n/locales/sv-SE/translation.json | 4 +++ src/lib/i18n/locales/th-TH/translation.json | 4 +++ src/lib/i18n/locales/tk-TW/translation.json | 4 +++ src/lib/i18n/locales/tr-TR/translation.json | 4 +++ src/lib/i18n/locales/uk-UA/translation.json | 4 +++ src/lib/i18n/locales/ur-PK/translation.json | 4 +++ src/lib/i18n/locales/vi-VN/translation.json | 4 +++ src/lib/i18n/locales/zh-CN/translation.json | 4 +++ src/lib/i18n/locales/zh-TW/translation.json | 4 +++ 56 files changed, 256 insertions(+), 3 deletions(-) diff --git a/backend/open_webui/config.py b/backend/open_webui/config.py index 25f0e6897..b1955b056 100644 --- a/backend/open_webui/config.py +++ b/backend/open_webui/config.py @@ -1751,7 +1751,9 @@ QDRANT_API_KEY = os.environ.get("QDRANT_API_KEY", None) QDRANT_ON_DISK = os.environ.get("QDRANT_ON_DISK", "false").lower() == "true" QDRANT_PREFER_GRPC = os.environ.get("QDRANT_PREFER_GRPC", "False").lower() == "true" QDRANT_GRPC_PORT = int(os.environ.get("QDRANT_GRPC_PORT", "6334")) -ENABLE_QDRANT_MULTITENANCY_MODE = os.environ.get("ENABLE_QDRANT_MULTITENANCY_MODE", "false").lower() == "true" +ENABLE_QDRANT_MULTITENANCY_MODE = ( + os.environ.get("ENABLE_QDRANT_MULTITENANCY_MODE", "false").lower() == "true" +) # OpenSearch OPENSEARCH_URI = os.environ.get("OPENSEARCH_URI", "https://localhost:9200") @@ -1962,7 +1964,11 @@ RAG_FILE_MAX_SIZE = PersistentConfig( RAG_ALLOWED_FILE_EXTENSIONS = PersistentConfig( "RAG_ALLOWED_FILE_EXTENSIONS", "rag.file.allowed_extensions", - os.environ.get("RAG_ALLOWED_FILE_EXTENSIONS", "").split(","), + [ + ext.strip() + for ext in os.environ.get("RAG_ALLOWED_FILE_EXTENSIONS", "").split(",") + if ext.strip() + ], ) RAG_EMBEDDING_ENGINE = PersistentConfig( diff --git a/backend/open_webui/routers/files.py b/backend/open_webui/routers/files.py index ec76d7e63..4ba57f56b 100644 --- a/backend/open_webui/routers/files.py +++ b/backend/open_webui/routers/files.py @@ -97,6 +97,10 @@ def upload_file( file_extension = os.path.splitext(filename)[1] if request.app.state.config.ALLOWED_FILE_EXTENSIONS: + request.app.state.config.ALLOWED_FILE_EXTENSIONS = [ + ext for ext in request.app.state.config.ALLOWED_FILE_EXTENSIONS if ext + ] + if file_extension not in request.app.state.config.ALLOWED_FILE_EXTENSIONS: raise HTTPException( status_code=status.HTTP_400_BAD_REQUEST, diff --git a/backend/open_webui/routers/retrieval.py b/backend/open_webui/routers/retrieval.py index 1d0af3029..5cb47373f 100644 --- a/backend/open_webui/routers/retrieval.py +++ b/backend/open_webui/routers/retrieval.py @@ -374,6 +374,7 @@ async def get_rag_config(request: Request, user=Depends(get_admin_user)): # File upload settings "FILE_MAX_SIZE": request.app.state.config.FILE_MAX_SIZE, "FILE_MAX_COUNT": request.app.state.config.FILE_MAX_COUNT, + "ALLOWED_FILE_EXTENSIONS": request.app.state.config.ALLOWED_FILE_EXTENSIONS, # Integration settings "ENABLE_GOOGLE_DRIVE_INTEGRATION": request.app.state.config.ENABLE_GOOGLE_DRIVE_INTEGRATION, "ENABLE_ONEDRIVE_INTEGRATION": request.app.state.config.ENABLE_ONEDRIVE_INTEGRATION, @@ -521,6 +522,7 @@ class ConfigForm(BaseModel): # File upload settings FILE_MAX_SIZE: Optional[int] = None FILE_MAX_COUNT: Optional[int] = None + ALLOWED_FILE_EXTENSIONS: Optional[List[str]] = None # Integration settings ENABLE_GOOGLE_DRIVE_INTEGRATION: Optional[bool] = None @@ -712,6 +714,11 @@ async def update_rag_config( if form_data.FILE_MAX_COUNT is not None else request.app.state.config.FILE_MAX_COUNT ) + request.app.state.config.ALLOWED_FILE_EXTENSIONS = ( + form_data.ALLOWED_FILE_EXTENSIONS + if form_data.ALLOWED_FILE_EXTENSIONS is not None + else request.app.state.config.ALLOWED_FILE_EXTENSIONS + ) # Integration settings request.app.state.config.ENABLE_GOOGLE_DRIVE_INTEGRATION = ( @@ -855,6 +862,7 @@ async def update_rag_config( # File upload settings "FILE_MAX_SIZE": request.app.state.config.FILE_MAX_SIZE, "FILE_MAX_COUNT": request.app.state.config.FILE_MAX_COUNT, + "ALLOWED_FILE_EXTENSIONS": request.app.state.config.ALLOWED_FILE_EXTENSIONS, # Integration settings "ENABLE_GOOGLE_DRIVE_INTEGRATION": request.app.state.config.ENABLE_GOOGLE_DRIVE_INTEGRATION, "ENABLE_ONEDRIVE_INTEGRATION": request.app.state.config.ENABLE_ONEDRIVE_INTEGRATION, diff --git a/src/lib/components/admin/Settings/Documents.svelte b/src/lib/components/admin/Settings/Documents.svelte index 3a3c361cf..d1ba533c0 100644 --- a/src/lib/components/admin/Settings/Documents.svelte +++ b/src/lib/components/admin/Settings/Documents.svelte @@ -170,6 +170,10 @@ await embeddingModelUpdateHandler(); } + RAGConfig.ALLOWED_FILE_EXTENSIONS = RAGConfig.ALLOWED_FILE_EXTENSIONS.split(',') + .map((ext) => ext.trim()) + .filter((ext) => ext !== ''); + const res = await updateRAGConfig(localStorage.token, RAGConfig); dispatch('save'); }; @@ -192,7 +196,10 @@ onMount(async () => { await setEmbeddingConfig(); - RAGConfig = await getRAGConfig(localStorage.token); + const config = await getRAGConfig(localStorage.token); + config.ALLOWED_FILE_EXTENSIONS = config.ALLOWED_FILE_EXTENSIONS.join(', '); + + RAGConfig = config; }); @@ -792,6 +799,26 @@
+
+
{$i18n.t('Allowed File Extensions')}
+
+ + + +
+
+
{$i18n.t('Max Upload Size')}
diff --git a/src/lib/i18n/locales/ar-BH/translation.json b/src/lib/i18n/locales/ar-BH/translation.json index 83ec1f638..0c1dd7a8f 100644 --- a/src/lib/i18n/locales/ar-BH/translation.json +++ b/src/lib/i18n/locales/ar-BH/translation.json @@ -74,6 +74,8 @@ "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.": "", "Always": "", @@ -374,6 +376,7 @@ "e.g. My Tools": "", "e.g. my_filter": "", "e.g. my_tools": "", + "e.g. pdf, docx, txt": "", "e.g. Tools for performing various operations": "", "e.g., 3, 4, 5 (leave blank for default)": "", "e.g., en-US,ja-JP (leave blank for auto-detect)": "", @@ -638,6 +641,7 @@ "Hex Color - Leave empty for default color": "", "Hide": "أخفاء", "Hide Model": "", + "High Contrast Mode": "", "Home": "", "Host": "", "How can I help you today?": "كيف استطيع مساعدتك اليوم؟", diff --git a/src/lib/i18n/locales/ar/translation.json b/src/lib/i18n/locales/ar/translation.json index ef894323e..8a727be93 100644 --- a/src/lib/i18n/locales/ar/translation.json +++ b/src/lib/i18n/locales/ar/translation.json @@ -74,6 +74,8 @@ "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": "دائمًا", @@ -374,6 +376,7 @@ "e.g. My Tools": "مثال: أدواتي", "e.g. my_filter": "مثال: my_filter", "e.g. my_tools": "مثال: my_tools", + "e.g. pdf, docx, txt": "", "e.g. Tools for performing various operations": "مثال: أدوات لتنفيذ عمليات متنوعة", "e.g., 3, 4, 5 (leave blank for default)": "", "e.g., en-US,ja-JP (leave blank for auto-detect)": "", @@ -638,6 +641,7 @@ "Hex Color - Leave empty for default color": "اللون السداسي - اتركه فارغًا لاستخدام اللون الافتراضي", "Hide": "أخفاء", "Hide Model": "", + "High Contrast Mode": "", "Home": "الصفحة الرئيسية", "Host": "المضيف", "How can I help you today?": "كيف استطيع مساعدتك اليوم؟", diff --git a/src/lib/i18n/locales/bg-BG/translation.json b/src/lib/i18n/locales/bg-BG/translation.json index 74c071de1..69e290dc7 100644 --- a/src/lib/i18n/locales/bg-BG/translation.json +++ b/src/lib/i18n/locales/bg-BG/translation.json @@ -74,6 +74,8 @@ "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.": "", "Always": "Винаги", @@ -374,6 +376,7 @@ "e.g. My Tools": "напр. Моите инструменти", "e.g. my_filter": "напр. моят_филтър", "e.g. my_tools": "напр. моите_инструменти", + "e.g. pdf, docx, txt": "", "e.g. Tools for performing various operations": "напр. Инструменти за извършване на различни операции", "e.g., 3, 4, 5 (leave blank for default)": "", "e.g., en-US,ja-JP (leave blank for auto-detect)": "", @@ -638,6 +641,7 @@ "Hex Color - Leave empty for default color": "Hex цвят - Оставете празно за цвят по подразбиране", "Hide": "Скрий", "Hide Model": "", + "High Contrast Mode": "", "Home": "Начало", "Host": "Хост", "How can I help you today?": "Как мога да ви помогна днес?", diff --git a/src/lib/i18n/locales/bn-BD/translation.json b/src/lib/i18n/locales/bn-BD/translation.json index ec52a0f3e..e12651f76 100644 --- a/src/lib/i18n/locales/bn-BD/translation.json +++ b/src/lib/i18n/locales/bn-BD/translation.json @@ -74,6 +74,8 @@ "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.": "", "Always": "", @@ -374,6 +376,7 @@ "e.g. My Tools": "", "e.g. my_filter": "", "e.g. my_tools": "", + "e.g. pdf, docx, txt": "", "e.g. Tools for performing various operations": "", "e.g., 3, 4, 5 (leave blank for default)": "", "e.g., en-US,ja-JP (leave blank for auto-detect)": "", @@ -638,6 +641,7 @@ "Hex Color - Leave empty for default color": "", "Hide": "লুকান", "Hide Model": "", + "High Contrast Mode": "", "Home": "", "Host": "", "How can I help you today?": "আপনাকে আজ কিভাবে সাহায্য করতে পারি?", diff --git a/src/lib/i18n/locales/bo-TB/translation.json b/src/lib/i18n/locales/bo-TB/translation.json index aea792245..16f4afeb3 100644 --- a/src/lib/i18n/locales/bo-TB/translation.json +++ b/src/lib/i18n/locales/bo-TB/translation.json @@ -74,6 +74,8 @@ "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": "རྟག་ཏུ།", @@ -374,6 +376,7 @@ "e.g. My Tools": "དཔེར་ན། ངའི་ལག་ཆ།", "e.g. my_filter": "དཔེར་ན། my_filter", "e.g. my_tools": "དཔེར་ན། my_tools", + "e.g. pdf, docx, txt": "", "e.g. Tools for performing various operations": "དཔེར་ན། ལས་ཀ་སྣ་ཚོགས་སྒྲུབ་བྱེད་ཀྱི་ལག་ཆ།", "e.g., 3, 4, 5 (leave blank for default)": "", "e.g., en-US,ja-JP (leave blank for auto-detect)": "", @@ -638,6 +641,7 @@ "Hex Color - Leave empty for default color": "Hex ཚོན་མདོག - སྔོན་སྒྲིག་ཚོན་མདོག་གི་ཆེད་དུ་སྟོང་པ་བཞག་པ།", "Hide": "སྦ་བ།", "Hide Model": "དཔེ་དབྱིབས་སྦ་བ།", + "High Contrast Mode": "", "Home": "གཙོ་ངོས།", "Host": "Host", "How can I help you today?": "དེ་རིང་ངས་ཁྱེད་ལ་རོགས་པ་ཅི་ཞིག་བྱེད་ཐུབ་བམ།", diff --git a/src/lib/i18n/locales/ca-ES/translation.json b/src/lib/i18n/locales/ca-ES/translation.json index 4968cecac..b39464414 100644 --- a/src/lib/i18n/locales/ca-ES/translation.json +++ b/src/lib/i18n/locales/ca-ES/translation.json @@ -74,6 +74,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.": "", "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", @@ -374,6 +376,7 @@ "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. 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., 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)", @@ -638,6 +641,7 @@ "Hex Color - Leave empty for default color": "Color hexadecimal - Deixar buit per a color per defecte", "Hide": "Amaga", "Hide Model": "Amagar el model", + "High Contrast Mode": "", "Home": "Inici", "Host": "Servidor", "How can I help you today?": "Com et puc ajudar avui?", diff --git a/src/lib/i18n/locales/ceb-PH/translation.json b/src/lib/i18n/locales/ceb-PH/translation.json index f0b0589db..4477de603 100644 --- a/src/lib/i18n/locales/ceb-PH/translation.json +++ b/src/lib/i18n/locales/ceb-PH/translation.json @@ -74,6 +74,8 @@ "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?": "Naa na kay 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.": "", "Always": "", @@ -374,6 +376,7 @@ "e.g. My Tools": "", "e.g. my_filter": "", "e.g. my_tools": "", + "e.g. pdf, docx, txt": "", "e.g. Tools for performing various operations": "", "e.g., 3, 4, 5 (leave blank for default)": "", "e.g., en-US,ja-JP (leave blank for auto-detect)": "", @@ -638,6 +641,7 @@ "Hex Color - Leave empty for default color": "", "Hide": "Tagoa", "Hide Model": "", + "High Contrast Mode": "", "Home": "", "Host": "", "How can I help you today?": "Unsaon nako pagtabang kanimo karon?", diff --git a/src/lib/i18n/locales/cs-CZ/translation.json b/src/lib/i18n/locales/cs-CZ/translation.json index f55917969..42c0ad320 100644 --- a/src/lib/i18n/locales/cs-CZ/translation.json +++ b/src/lib/i18n/locales/cs-CZ/translation.json @@ -74,6 +74,8 @@ "Allow User Location": "Povolit uživatelskou polohu", "Allow Voice Interruption in Call": "Povolit přerušení hlasu při hovoru", "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?": "Už máte účet?", "Alternative to the top_p, and aims to ensure a balance of quality and variety. The parameter p represents the minimum probability for a token to be considered, relative to the probability of the most likely token. For example, with p=0.05 and the most likely token having a probability of 0.9, logits with a value less than 0.045 are filtered out.": "", "Always": "", @@ -374,6 +376,7 @@ "e.g. My Tools": "", "e.g. my_filter": "", "e.g. my_tools": "", + "e.g. pdf, docx, txt": "", "e.g. Tools for performing various operations": "", "e.g., 3, 4, 5 (leave blank for default)": "", "e.g., en-US,ja-JP (leave blank for auto-detect)": "", @@ -638,6 +641,7 @@ "Hex Color - Leave empty for default color": "", "Hide": "Schovej", "Hide Model": "", + "High Contrast Mode": "", "Home": "", "Host": "", "How can I help you today?": "Jak vám mohu dnes pomoci?", diff --git a/src/lib/i18n/locales/da-DK/translation.json b/src/lib/i18n/locales/da-DK/translation.json index 4d983cc0c..ef889bd6e 100644 --- a/src/lib/i18n/locales/da-DK/translation.json +++ b/src/lib/i18n/locales/da-DK/translation.json @@ -74,6 +74,8 @@ "Allow User Location": "Tillad bruger-lokation", "Allow Voice Interruption in Call": "Tillad afbrydelser i stemme i opkald", "Allowed Endpoints": "Tilladte endpoints", + "Allowed File Extensions": "", + "Allowed file extensions for upload. Separate multiple extensions with commas. Leave empty for all file types.": "", "Already have an account?": "Har du allerede en profil?", "Alternative to the top_p, and aims to ensure a balance of quality and variety. The parameter p represents the minimum probability for a token to be considered, relative to the probability of the most likely token. For example, with p=0.05 and the most likely token having a probability of 0.9, logits with a value less than 0.045 are filtered out.": "", "Always": "Altid", @@ -374,6 +376,7 @@ "e.g. My Tools": "", "e.g. my_filter": "", "e.g. my_tools": "", + "e.g. pdf, docx, txt": "", "e.g. Tools for performing various operations": "", "e.g., 3, 4, 5 (leave blank for default)": "", "e.g., en-US,ja-JP (leave blank for auto-detect)": "", @@ -638,6 +641,7 @@ "Hex Color - Leave empty for default color": "Hex farve - Lad stå tomt for standard farve", "Hide": "Skjul", "Hide Model": "Skjul model", + "High Contrast Mode": "", "Home": "Hjem", "Host": "Vært", "How can I help you today?": "Hvordan kan jeg hjælpe dig i dag?", diff --git a/src/lib/i18n/locales/de-DE/translation.json b/src/lib/i18n/locales/de-DE/translation.json index eab3fe3c4..2f7d7b1e6 100644 --- a/src/lib/i18n/locales/de-DE/translation.json +++ b/src/lib/i18n/locales/de-DE/translation.json @@ -74,6 +74,8 @@ "Allow User Location": "Standort freigeben", "Allow Voice Interruption in Call": "Unterbrechung durch Stimme im Anruf zulassen", "Allowed Endpoints": "Erlaubte Endpunkte", + "Allowed File Extensions": "", + "Allowed file extensions for upload. Separate multiple extensions with commas. Leave empty for all file types.": "", "Already have an account?": "Haben Sie bereits einen 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.": "", "Always": "Immer", @@ -374,6 +376,7 @@ "e.g. My Tools": "z. B. Meine Werkzeuge", "e.g. my_filter": "z. B. mein_filter", "e.g. my_tools": "z. B. meine_werkzeuge", + "e.g. 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)": "", "e.g., en-US,ja-JP (leave blank for auto-detect)": "z. B. en-US,de-DE (freilassen für automatische Erkennung)", @@ -638,6 +641,7 @@ "Hex Color - Leave empty for default color": "Hex-Farbe - Leer lassen für Standardfarbe", "Hide": "Verbergen", "Hide Model": "Modell verstecken", + "High Contrast Mode": "", "Home": "", "Host": "Host", "How can I help you today?": "Wie kann ich Ihnen heute helfen?", diff --git a/src/lib/i18n/locales/dg-DG/translation.json b/src/lib/i18n/locales/dg-DG/translation.json index c4b528155..d110e0491 100644 --- a/src/lib/i18n/locales/dg-DG/translation.json +++ b/src/lib/i18n/locales/dg-DG/translation.json @@ -74,6 +74,8 @@ "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?": "Such account exists?", "Alternative to the top_p, and aims to ensure a balance of quality and variety. The parameter p represents the minimum probability for a token to be considered, relative to the probability of the most likely token. For example, with p=0.05 and the most likely token having a probability of 0.9, logits with a value less than 0.045 are filtered out.": "", "Always": "", @@ -374,6 +376,7 @@ "e.g. My Tools": "", "e.g. my_filter": "", "e.g. my_tools": "", + "e.g. pdf, docx, txt": "", "e.g. Tools for performing various operations": "", "e.g., 3, 4, 5 (leave blank for default)": "", "e.g., en-US,ja-JP (leave blank for auto-detect)": "", @@ -638,6 +641,7 @@ "Hex Color - Leave empty for default color": "", "Hide": "Hide", "Hide Model": "", + "High Contrast Mode": "", "Home": "", "Host": "", "How can I help you today?": "How can I halp u today?", diff --git a/src/lib/i18n/locales/el-GR/translation.json b/src/lib/i18n/locales/el-GR/translation.json index b5ea13133..4941e702c 100644 --- a/src/lib/i18n/locales/el-GR/translation.json +++ b/src/lib/i18n/locales/el-GR/translation.json @@ -74,6 +74,8 @@ "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.": "", "Always": "", @@ -374,6 +376,7 @@ "e.g. My Tools": "π.χ. Τα Εργαλεία Μου", "e.g. my_filter": "π.χ. my_filter", "e.g. my_tools": "π.χ. my_tools", + "e.g. pdf, docx, txt": "", "e.g. Tools for performing various operations": "π.χ. Εργαλεία για την εκτέλεση διάφορων λειτουργιών", "e.g., 3, 4, 5 (leave blank for default)": "", "e.g., en-US,ja-JP (leave blank for auto-detect)": "", @@ -638,6 +641,7 @@ "Hex Color - Leave empty for default color": "Χρώμα Hex - Αφήστε κενό για προεπιλεγμένο χρώμα", "Hide": "Απόκρυψη", "Hide Model": "", + "High Contrast Mode": "", "Home": "", "Host": "Διακομιστής", "How can I help you today?": "Πώς μπορώ να σας βοηθήσω σήμερα;", diff --git a/src/lib/i18n/locales/en-GB/translation.json b/src/lib/i18n/locales/en-GB/translation.json index 755530b33..c3ec0ae47 100644 --- a/src/lib/i18n/locales/en-GB/translation.json +++ b/src/lib/i18n/locales/en-GB/translation.json @@ -74,6 +74,8 @@ "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.": "", "Always": "", @@ -374,6 +376,7 @@ "e.g. My Tools": "", "e.g. my_filter": "", "e.g. my_tools": "", + "e.g. pdf, docx, txt": "", "e.g. Tools for performing various operations": "", "e.g., 3, 4, 5 (leave blank for default)": "", "e.g., en-US,ja-JP (leave blank for auto-detect)": "", @@ -638,6 +641,7 @@ "Hex Color - Leave empty for default color": "", "Hide": "", "Hide Model": "", + "High Contrast Mode": "", "Home": "", "Host": "", "How can I help you today?": "", diff --git a/src/lib/i18n/locales/en-US/translation.json b/src/lib/i18n/locales/en-US/translation.json index 755530b33..c3ec0ae47 100644 --- a/src/lib/i18n/locales/en-US/translation.json +++ b/src/lib/i18n/locales/en-US/translation.json @@ -74,6 +74,8 @@ "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.": "", "Always": "", @@ -374,6 +376,7 @@ "e.g. My Tools": "", "e.g. my_filter": "", "e.g. my_tools": "", + "e.g. pdf, docx, txt": "", "e.g. Tools for performing various operations": "", "e.g., 3, 4, 5 (leave blank for default)": "", "e.g., en-US,ja-JP (leave blank for auto-detect)": "", @@ -638,6 +641,7 @@ "Hex Color - Leave empty for default color": "", "Hide": "", "Hide Model": "", + "High Contrast Mode": "", "Home": "", "Host": "", "How can I help you today?": "", diff --git a/src/lib/i18n/locales/es-ES/translation.json b/src/lib/i18n/locales/es-ES/translation.json index 874be9c20..9d0c8951b 100644 --- a/src/lib/i18n/locales/es-ES/translation.json +++ b/src/lib/i18n/locales/es-ES/translation.json @@ -74,6 +74,8 @@ "Allow User Location": "Permitir Ubicación de Usuario", "Allow Voice Interruption in Call": "Permitir Interrupción de Voz en Llamada", "Allowed Endpoints": "Endpoints Permitidos", + "Allowed File Extensions": "", + "Allowed file extensions for upload. Separate multiple extensions with commas. Leave empty for all file types.": "", "Already have an account?": "¿Ya tienes una cuenta?", "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 a top_p, como objetivo garantizar un equilibrio entre calidad y variedad. El parámetro p representa la mínima probabilidad para que un token sea considerado, relativo a la probabilidad del token más probable. Por ejemplo, con p=0.05 y la probabilidad del token más probable de 0.9, los resultados (logits) con un valor inferior a 0.045 son descartados.", "Always": "Siempre", @@ -374,6 +376,7 @@ "e.g. My Tools": "p.ej. Mis Herramientas", "e.g. my_filter": "p.ej. mi_filtro", "e.g. my_tools": "p.ej. mis_herramientas", + "e.g. pdf, docx, txt": "", "e.g. Tools for performing various operations": "p.ej. Herramientas para realizar varias operaciones", "e.g., 3, 4, 5 (leave blank for default)": "", "e.g., en-US,ja-JP (leave blank for auto-detect)": "p. ej., en-US,ja-JP (dejar en blanco para detectar automáticamente)", @@ -638,6 +641,7 @@ "Hex Color - Leave empty for default color": "Color Hex - Deja vacío para el color predeterminado", "Hide": "Esconder", "Hide Model": "Ocultar Modelo", + "High Contrast Mode": "", "Home": "Inicio", "Host": "Host", "How can I help you today?": "¿Cómo puedo ayudarte hoy?", diff --git a/src/lib/i18n/locales/et-EE/translation.json b/src/lib/i18n/locales/et-EE/translation.json index 5455060dd..72ecd8bba 100644 --- a/src/lib/i18n/locales/et-EE/translation.json +++ b/src/lib/i18n/locales/et-EE/translation.json @@ -74,6 +74,8 @@ "Allow User Location": "Luba kasutaja asukoht", "Allow Voice Interruption in Call": "Luba hääle katkestamine kõnes", "Allowed Endpoints": "Lubatud lõpp-punktid", + "Allowed File Extensions": "", + "Allowed file extensions for upload. Separate multiple extensions with commas. Leave empty for all file types.": "", "Already have an account?": "Kas teil on juba konto?", "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.": "Alternatiiv top_p-le ja eesmärk on tagada kvaliteedi ja mitmekesisuse tasakaal. Parameeter p esindab minimaalset tõenäosust tokeni arvesse võtmiseks, võrreldes kõige tõenäolisema tokeni tõenäosusega. Näiteks p=0.05 korral, kui kõige tõenäolisema tokeni tõenäosus on 0.9, filtreeritakse välja logitid väärtusega alla 0.045.", "Always": "Alati", @@ -374,6 +376,7 @@ "e.g. My Tools": "nt Minu Tööriistad", "e.g. my_filter": "nt minu_filter", "e.g. my_tools": "nt minu_toriistad", + "e.g. pdf, docx, txt": "", "e.g. Tools for performing various operations": "nt tööriistad mitmesuguste operatsioonide teostamiseks", "e.g., 3, 4, 5 (leave blank for default)": "", "e.g., en-US,ja-JP (leave blank for auto-detect)": "", @@ -638,6 +641,7 @@ "Hex Color - Leave empty for default color": "Hex värv - jätke tühjaks vaikevärvi jaoks", "Hide": "Peida", "Hide Model": "", + "High Contrast Mode": "", "Home": "Avaleht", "Host": "Host", "How can I help you today?": "Kuidas saan teid täna aidata?", diff --git a/src/lib/i18n/locales/eu-ES/translation.json b/src/lib/i18n/locales/eu-ES/translation.json index c8e14c215..f345f2d83 100644 --- a/src/lib/i18n/locales/eu-ES/translation.json +++ b/src/lib/i18n/locales/eu-ES/translation.json @@ -74,6 +74,8 @@ "Allow User Location": "Baimendu Erabiltzailearen Kokapena", "Allow Voice Interruption in Call": "Baimendu Ahots Etena Deietan", "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?": "Baduzu kontu bat?", "Alternative to the top_p, and aims to ensure a balance of quality and variety. The parameter p represents the minimum probability for a token to be considered, relative to the probability of the most likely token. For example, with p=0.05 and the most likely token having a probability of 0.9, logits with a value less than 0.045 are filtered out.": "", "Always": "", @@ -374,6 +376,7 @@ "e.g. My Tools": "adib. Nire Tresnak", "e.g. my_filter": "adib. nire_iragazkia", "e.g. my_tools": "adib. nire_tresnak", + "e.g. pdf, docx, txt": "", "e.g. Tools for performing various operations": "adib. Hainbat eragiketa egiteko tresnak", "e.g., 3, 4, 5 (leave blank for default)": "", "e.g., en-US,ja-JP (leave blank for auto-detect)": "", @@ -638,6 +641,7 @@ "Hex Color - Leave empty for default color": "Hex Kolorea - Utzi hutsik kolore lehenetsia erabiltzeko", "Hide": "Ezkutatu", "Hide Model": "", + "High Contrast Mode": "", "Home": "", "Host": "Ostalaria", "How can I help you today?": "Zertan lagun zaitzaket gaur?", diff --git a/src/lib/i18n/locales/fa-IR/translation.json b/src/lib/i18n/locales/fa-IR/translation.json index 6e21b52f3..934ea68cf 100644 --- a/src/lib/i18n/locales/fa-IR/translation.json +++ b/src/lib/i18n/locales/fa-IR/translation.json @@ -74,6 +74,8 @@ "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 نشان\u200cدهنده حداقل احتمال برای در نظر گرفتن یک توکن نسبت به احتمال محتمل\u200cترین توکن است. به عنوان مثال، با p=0.05 و محتمل\u200cترین توکن با احتمال 0.9، لاگیت\u200cهای با مقدار کمتر از 0.045 فیلتر می\u200cشوند.", "Always": "همیشه", @@ -374,6 +376,7 @@ "e.g. My Tools": "مثلا ابزارهای من", "e.g. my_filter": "مثلا my_filter", "e.g. my_tools": "مثلا my_tools", + "e.g. pdf, docx, txt": "", "e.g. Tools for performing various operations": "مثلا ابزارهایی برای انجام عملیات مختلف", "e.g., 3, 4, 5 (leave blank for default)": "", "e.g., en-US,ja-JP (leave blank for auto-detect)": "مثلا en-US,ja-JP (برای تشخیص خودکار خالی بگذارید)", @@ -638,6 +641,7 @@ "Hex Color - Leave empty for default color": "رنگ هگز - برای رنگ پیش\u200cفرض خالی بگذارید", "Hide": "پنهان\u200cسازی", "Hide Model": "پنهان کردن مدل", + "High Contrast Mode": "", "Home": "خانه", "Host": "میزبان", "How can I help you today?": "امروز چطور می توانم کمک تان کنم؟", diff --git a/src/lib/i18n/locales/fi-FI/translation.json b/src/lib/i18n/locales/fi-FI/translation.json index e1181e056..cac937d6c 100644 --- a/src/lib/i18n/locales/fi-FI/translation.json +++ b/src/lib/i18n/locales/fi-FI/translation.json @@ -74,6 +74,8 @@ "Allow User Location": "Salli käyttäjän sijainti", "Allow Voice Interruption in Call": "Salli äänen keskeytys puhelussa", "Allowed Endpoints": "Hyväksytyt päätepisteet", + "Allowed File Extensions": "", + "Allowed file extensions for upload. Separate multiple extensions with commas. Leave empty for all file types.": "", "Already have an account?": "Onko sinulla jo tili?", "Alternative to the top_p, and aims to ensure a balance of quality and variety. The parameter p represents the minimum probability for a token to be considered, relative to the probability of the most likely token. For example, with p=0.05 and the most likely token having a probability of 0.9, logits with a value less than 0.045 are filtered out.": "", "Always": "Aina", @@ -374,6 +376,7 @@ "e.g. My Tools": "esim. Omat työkalut", "e.g. my_filter": "esim. oma_suodatin", "e.g. my_tools": "esim. omat_työkalut", + "e.g. pdf, docx, txt": "", "e.g. Tools for performing various operations": "esim. työkaluja erilaisten toimenpiteiden suorittamiseen", "e.g., 3, 4, 5 (leave blank for default)": "esim. 3, 4, 5 (jätä tyhjäksi, jos haluat oletusarvon)", "e.g., en-US,ja-JP (leave blank for auto-detect)": "esim. en-US,ja-JP (Tyhjäksi jättämällä, automaattinen tunnistus)", @@ -638,6 +641,7 @@ "Hex Color - Leave empty for default color": "Heksadesimaaliväri - Jätä tyhjäksi, jos haluat oletusvärin", "Hide": "Piilota", "Hide Model": "Piilota malli", + "High Contrast Mode": "", "Home": "Koti", "Host": "Palvelin", "How can I help you today?": "Miten voin auttaa sinua tänään?", diff --git a/src/lib/i18n/locales/fr-CA/translation.json b/src/lib/i18n/locales/fr-CA/translation.json index 56fef1b82..ee9cc080a 100644 --- a/src/lib/i18n/locales/fr-CA/translation.json +++ b/src/lib/i18n/locales/fr-CA/translation.json @@ -74,6 +74,8 @@ "Allow User Location": "Autoriser l'emplacement de l'utilisateur", "Allow Voice Interruption in Call": "Autoriser l'interruption vocale pendant un appel", "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?": "Avez-vous déjà 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.": "", "Always": "", @@ -374,6 +376,7 @@ "e.g. My Tools": "", "e.g. my_filter": "", "e.g. my_tools": "", + "e.g. pdf, docx, txt": "", "e.g. Tools for performing various operations": "", "e.g., 3, 4, 5 (leave blank for default)": "", "e.g., en-US,ja-JP (leave blank for auto-detect)": "", @@ -638,6 +641,7 @@ "Hex Color - Leave empty for default color": "", "Hide": "Cacher", "Hide Model": "", + "High Contrast Mode": "", "Home": "", "Host": "", "How can I help you today?": "Comment puis-je vous être utile aujourd'hui ?", diff --git a/src/lib/i18n/locales/fr-FR/translation.json b/src/lib/i18n/locales/fr-FR/translation.json index 8bc7fed40..884107b3c 100644 --- a/src/lib/i18n/locales/fr-FR/translation.json +++ b/src/lib/i18n/locales/fr-FR/translation.json @@ -74,6 +74,8 @@ "Allow User Location": "Autoriser l'emplacement de l'utilisateur", "Allow Voice Interruption in Call": "Autoriser l'interruption vocale pendant un appel", "Allowed Endpoints": "Points de terminaison autorisés", + "Allowed File Extensions": "", + "Allowed file extensions for upload. Separate multiple extensions with commas. Leave empty for all file types.": "", "Already have an account?": "Avez-vous déjà 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.": "", "Always": "", @@ -374,6 +376,7 @@ "e.g. My Tools": "par ex. Mes Outils", "e.g. my_filter": "par ex. mon_filtre", "e.g. my_tools": "par ex. mes_outils", + "e.g. pdf, docx, txt": "", "e.g. Tools for performing various operations": "par ex. Outils pour effectuer diverses opérations", "e.g., 3, 4, 5 (leave blank for default)": "", "e.g., en-US,ja-JP (leave blank for auto-detect)": "par ex., en-US, ja-JP (laisser vide pour détection automatique)", @@ -638,6 +641,7 @@ "Hex Color - Leave empty for default color": "Couleur Hex - Laissez vide pour la couleur par défaut", "Hide": "Cacher", "Hide Model": "Cache le Model", + "High Contrast Mode": "", "Home": "Home", "Host": "Hôte", "How can I help you today?": "Comment puis-je vous aider aujourd'hui ?", diff --git a/src/lib/i18n/locales/he-IL/translation.json b/src/lib/i18n/locales/he-IL/translation.json index 19f60c4a3..06c0f253a 100644 --- a/src/lib/i18n/locales/he-IL/translation.json +++ b/src/lib/i18n/locales/he-IL/translation.json @@ -74,6 +74,8 @@ "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.": "", "Always": "", @@ -374,6 +376,7 @@ "e.g. My Tools": "", "e.g. my_filter": "", "e.g. my_tools": "", + "e.g. pdf, docx, txt": "", "e.g. Tools for performing various operations": "", "e.g., 3, 4, 5 (leave blank for default)": "", "e.g., en-US,ja-JP (leave blank for auto-detect)": "", @@ -638,6 +641,7 @@ "Hex Color - Leave empty for default color": "", "Hide": "הסתר", "Hide Model": "", + "High Contrast Mode": "", "Home": "", "Host": "", "How can I help you today?": "כיצד אוכל לעזור לך היום?", diff --git a/src/lib/i18n/locales/hi-IN/translation.json b/src/lib/i18n/locales/hi-IN/translation.json index 716a26224..7e684e22e 100644 --- a/src/lib/i18n/locales/hi-IN/translation.json +++ b/src/lib/i18n/locales/hi-IN/translation.json @@ -74,6 +74,8 @@ "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.": "", "Always": "", @@ -374,6 +376,7 @@ "e.g. My Tools": "", "e.g. my_filter": "", "e.g. my_tools": "", + "e.g. pdf, docx, txt": "", "e.g. Tools for performing various operations": "", "e.g., 3, 4, 5 (leave blank for default)": "", "e.g., en-US,ja-JP (leave blank for auto-detect)": "", @@ -638,6 +641,7 @@ "Hex Color - Leave empty for default color": "", "Hide": "छुपाएं", "Hide Model": "", + "High Contrast Mode": "", "Home": "", "Host": "", "How can I help you today?": "आज मैं आपकी कैसे मदद कर सकता हूँ?", diff --git a/src/lib/i18n/locales/hr-HR/translation.json b/src/lib/i18n/locales/hr-HR/translation.json index 066bf92cb..2734d0026 100644 --- a/src/lib/i18n/locales/hr-HR/translation.json +++ b/src/lib/i18n/locales/hr-HR/translation.json @@ -74,6 +74,8 @@ "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?": "Već imate račun?", "Alternative to the top_p, and aims to ensure a balance of quality and variety. The parameter p represents the minimum probability for a token to be considered, relative to the probability of the most likely token. For example, with p=0.05 and the most likely token having a probability of 0.9, logits with a value less than 0.045 are filtered out.": "", "Always": "", @@ -374,6 +376,7 @@ "e.g. My Tools": "", "e.g. my_filter": "", "e.g. my_tools": "", + "e.g. pdf, docx, txt": "", "e.g. Tools for performing various operations": "", "e.g., 3, 4, 5 (leave blank for default)": "", "e.g., en-US,ja-JP (leave blank for auto-detect)": "", @@ -638,6 +641,7 @@ "Hex Color - Leave empty for default color": "", "Hide": "Sakrij", "Hide Model": "", + "High Contrast Mode": "", "Home": "", "Host": "", "How can I help you today?": "Kako vam mogu pomoći danas?", diff --git a/src/lib/i18n/locales/hu-HU/translation.json b/src/lib/i18n/locales/hu-HU/translation.json index 62599fd0c..c76a0c18c 100644 --- a/src/lib/i18n/locales/hu-HU/translation.json +++ b/src/lib/i18n/locales/hu-HU/translation.json @@ -74,6 +74,8 @@ "Allow User Location": "Felhasználói helyzet engedélyezése", "Allow Voice Interruption in Call": "Hang megszakítás engedélyezése hívás közben", "Allowed Endpoints": "Engedélyezett végpontok", + "Allowed File Extensions": "", + "Allowed file extensions for upload. Separate multiple extensions with commas. Leave empty for all file types.": "", "Already have an account?": "Már van fiókod?", "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.": "Alternatíva a top_p helyett, célja a minőség és változatosság egyensúlyának biztosítása. A p paraméter a token figyelembevételének minimális valószínűségét jelzi a legvalószínűbb token valószínűségéhez képest. Például, ha p=0,05 és a legvalószínűbb token valószínűsége 0,9, a 0,045-nél kisebb értékű logitok kiszűrésre kerülnek.", "Always": "Mindig", @@ -374,6 +376,7 @@ "e.g. My Tools": "pl. Az én eszközeim", "e.g. my_filter": "pl. az_en_szűrőm", "e.g. my_tools": "pl. az_en_eszkozeim", + "e.g. pdf, docx, txt": "", "e.g. Tools for performing various operations": "pl. Eszközök különböző műveletek elvégzéséhez", "e.g., 3, 4, 5 (leave blank for default)": "", "e.g., en-US,ja-JP (leave blank for auto-detect)": "", @@ -638,6 +641,7 @@ "Hex Color - Leave empty for default color": "Hexa szín - Hagyd üresen az alapértelmezett színhez", "Hide": "Elrejtés", "Hide Model": "Modell elrejtése", + "High Contrast Mode": "", "Home": "Kezdőlap", "Host": "Hoszt", "How can I help you today?": "Hogyan segíthetek ma?", diff --git a/src/lib/i18n/locales/id-ID/translation.json b/src/lib/i18n/locales/id-ID/translation.json index 44d858a08..9a3e08de2 100644 --- a/src/lib/i18n/locales/id-ID/translation.json +++ b/src/lib/i18n/locales/id-ID/translation.json @@ -74,6 +74,8 @@ "Allow User Location": "Izinkan Lokasi Pengguna", "Allow Voice Interruption in Call": "Izinkan Gangguan Suara dalam Panggilan", "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?": "Sudah memiliki akun?", "Alternative to the top_p, and aims to ensure a balance of quality and variety. The parameter p represents the minimum probability for a token to be considered, relative to the probability of the most likely token. For example, with p=0.05 and the most likely token having a probability of 0.9, logits with a value less than 0.045 are filtered out.": "", "Always": "", @@ -374,6 +376,7 @@ "e.g. My Tools": "", "e.g. my_filter": "", "e.g. my_tools": "", + "e.g. pdf, docx, txt": "", "e.g. Tools for performing various operations": "", "e.g., 3, 4, 5 (leave blank for default)": "", "e.g., en-US,ja-JP (leave blank for auto-detect)": "", @@ -638,6 +641,7 @@ "Hex Color - Leave empty for default color": "", "Hide": "Sembunyikan", "Hide Model": "", + "High Contrast Mode": "", "Home": "", "Host": "", "How can I help you today?": "Ada yang bisa saya bantu hari ini?", diff --git a/src/lib/i18n/locales/ie-GA/translation.json b/src/lib/i18n/locales/ie-GA/translation.json index 7b8728a97..2f7e6f0d4 100644 --- a/src/lib/i18n/locales/ie-GA/translation.json +++ b/src/lib/i18n/locales/ie-GA/translation.json @@ -74,6 +74,8 @@ "Allow User Location": "Ceadaigh Suíomh Úsáideora", "Allow Voice Interruption in Call": "Ceadaigh Briseadh Guth i nGlao", "Allowed Endpoints": "Críochphointí Ceadaithe", + "Allowed File Extensions": "", + "Allowed file extensions for upload. Separate multiple extensions with commas. Leave empty for all file types.": "", "Already have an account?": "Tá cuntas agat cheana féin?", "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.": "Rogha eile seachas an top_p, agus tá sé mar aidhm aige cothromaíocht cáilíochta agus éagsúlachta a chinntiú. Léiríonn an paraiméadar p an dóchúlacht íosta go mbreithneofar comhartha, i gcoibhneas le dóchúlacht an chomhartha is dóichí. Mar shampla, le p=0.05 agus dóchúlacht 0.9 ag an comhartha is dóichí, déantar logits le luach níos lú ná 0.045 a scagadh amach.", "Always": "I gcónaí", @@ -374,6 +376,7 @@ "e.g. My Tools": "m.sh. Mo Uirlisí", "e.g. my_filter": "m.sh. mo_scagaire", "e.g. my_tools": "m.sh. mo_uirlisí", + "e.g. pdf, docx, txt": "", "e.g. Tools for performing various operations": "m.sh. Uirlisí chun oibríochtaí éagsúla a dhéanamh", "e.g., 3, 4, 5 (leave blank for default)": "", "e.g., en-US,ja-JP (leave blank for auto-detect)": "m.sh., en-US, ja-JP (fág bán le haghaidh uathbhraite)", @@ -638,6 +641,7 @@ "Hex Color - Leave empty for default color": "Dath Heics - Fág folamh don dath réamhshocraithe", "Hide": "Folaigh", "Hide Model": "Folaigh Múnla", + "High Contrast Mode": "", "Home": "Baile", "Host": "Óstach", "How can I help you today?": "Conas is féidir liom cabhrú leat inniu?", diff --git a/src/lib/i18n/locales/it-IT/translation.json b/src/lib/i18n/locales/it-IT/translation.json index 3197755b6..3411b4368 100644 --- a/src/lib/i18n/locales/it-IT/translation.json +++ b/src/lib/i18n/locales/it-IT/translation.json @@ -74,6 +74,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.": "", "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", @@ -374,6 +376,7 @@ "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_strumenti", + "e.g. pdf, docx, txt": "", "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., en-US,ja-JP (leave blank for auto-detect)": "ad esempio, en-US,ja-JP (lascia vuoto per auto-rilevamento)", @@ -638,6 +641,7 @@ "Hex Color - Leave empty for default color": "Colore esadecimale - Lascia vuoto per il colore predefinito", "Hide": "Nascondi", "Hide Model": "Nascondi modello", + "High Contrast Mode": "", "Home": "Home", "Host": "Host", "How can I help you today?": "Come posso aiutarti oggi?", diff --git a/src/lib/i18n/locales/ja-JP/translation.json b/src/lib/i18n/locales/ja-JP/translation.json index 592b7e3af..bb90c884c 100644 --- a/src/lib/i18n/locales/ja-JP/translation.json +++ b/src/lib/i18n/locales/ja-JP/translation.json @@ -74,6 +74,8 @@ "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.": "", "Always": "常に", @@ -374,6 +376,7 @@ "e.g. My Tools": "", "e.g. my_filter": "", "e.g. my_tools": "", + "e.g. pdf, docx, txt": "", "e.g. Tools for performing various operations": "", "e.g., 3, 4, 5 (leave blank for default)": "", "e.g., en-US,ja-JP (leave blank for auto-detect)": "", @@ -638,6 +641,7 @@ "Hex Color - Leave empty for default color": "デフォルトの色を使用する場合は空のままにしてください", "Hide": "非表示", "Hide Model": "モデルを非表示", + "High Contrast Mode": "", "Home": "ホーム", "Host": "ホスト", "How can I help you today?": "今日はどのようにお手伝いしましょうか?", diff --git a/src/lib/i18n/locales/ka-GE/translation.json b/src/lib/i18n/locales/ka-GE/translation.json index 55ae9e241..51bc05f32 100644 --- a/src/lib/i18n/locales/ka-GE/translation.json +++ b/src/lib/i18n/locales/ka-GE/translation.json @@ -74,6 +74,8 @@ "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.": "", "Always": "ყოველთვის", @@ -374,6 +376,7 @@ "e.g. My Tools": "მაგ: ჩემი ხელსაწყოები", "e.g. my_filter": "მაგ: ჩემი_ფილტრი", "e.g. my_tools": "მაგ: ჩემი_ხელსაწყოები", + "e.g. pdf, docx, txt": "", "e.g. Tools for performing various operations": "", "e.g., 3, 4, 5 (leave blank for default)": "", "e.g., en-US,ja-JP (leave blank for auto-detect)": "", @@ -638,6 +641,7 @@ "Hex Color - Leave empty for default color": "", "Hide": "დამალვა", "Hide Model": "", + "High Contrast Mode": "", "Home": "მთავარი", "Host": "ჰოსტი", "How can I help you today?": "რით შემიძლია დაგეხმაროთ დღეს?", diff --git a/src/lib/i18n/locales/ko-KR/translation.json b/src/lib/i18n/locales/ko-KR/translation.json index fdc123b3e..ff3edeb13 100644 --- a/src/lib/i18n/locales/ko-KR/translation.json +++ b/src/lib/i18n/locales/ko-KR/translation.json @@ -74,6 +74,8 @@ "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": "항상", @@ -374,6 +376,7 @@ "e.g. My Tools": "예: 내 도구", "e.g. my_filter": "예: my_filter", "e.g. my_tools": "예: my_tools", + "e.g. pdf, docx, txt": "", "e.g. Tools for performing various operations": "예: 다양한 작업을 수행하는 도구", "e.g., 3, 4, 5 (leave blank for default)": "예: 3, 4, 5 (기본값을 위해 비워 두세요)", "e.g., en-US,ja-JP (leave blank for auto-detect)": "예: en-US, ja-JP (자동 감지를 위해 비워 두세요)", @@ -638,6 +641,7 @@ "Hex Color - Leave empty for default color": "Hex 색상 - 기본 색상의 경우 빈 상태로 유지", "Hide": "숨기기", "Hide Model": "모델 숨기기", + "High Contrast Mode": "", "Home": "홈", "Host": "호스트", "How can I help you today?": "오늘 어떻게 도와드릴까요?", diff --git a/src/lib/i18n/locales/lt-LT/translation.json b/src/lib/i18n/locales/lt-LT/translation.json index d20684b29..f26c49a84 100644 --- a/src/lib/i18n/locales/lt-LT/translation.json +++ b/src/lib/i18n/locales/lt-LT/translation.json @@ -74,6 +74,8 @@ "Allow User Location": "Leisti naudotojo vietos matymą", "Allow Voice Interruption in Call": "Leisti pertraukimą skambučio metu", "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?": "Ar jau turite paskyrą?", "Alternative to the top_p, and aims to ensure a balance of quality and variety. The parameter p represents the minimum probability for a token to be considered, relative to the probability of the most likely token. For example, with p=0.05 and the most likely token having a probability of 0.9, logits with a value less than 0.045 are filtered out.": "", "Always": "", @@ -374,6 +376,7 @@ "e.g. My Tools": "", "e.g. my_filter": "", "e.g. my_tools": "", + "e.g. pdf, docx, txt": "", "e.g. Tools for performing various operations": "", "e.g., 3, 4, 5 (leave blank for default)": "", "e.g., en-US,ja-JP (leave blank for auto-detect)": "", @@ -638,6 +641,7 @@ "Hex Color - Leave empty for default color": "", "Hide": "Paslėpti", "Hide Model": "", + "High Contrast Mode": "", "Home": "", "Host": "", "How can I help you today?": "Kuo galėčiau Jums padėti ?", diff --git a/src/lib/i18n/locales/ms-MY/translation.json b/src/lib/i18n/locales/ms-MY/translation.json index 109711274..25a9d7d91 100644 --- a/src/lib/i18n/locales/ms-MY/translation.json +++ b/src/lib/i18n/locales/ms-MY/translation.json @@ -74,6 +74,8 @@ "Allow User Location": "Benarkan Lokasi Pengguna", "Allow Voice Interruption in Call": "Benarkan gangguan suara dalam panggilan", "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?": "Telah mempunyai akaun?", "Alternative to the top_p, and aims to ensure a balance of quality and variety. The parameter p represents the minimum probability for a token to be considered, relative to the probability of the most likely token. For example, with p=0.05 and the most likely token having a probability of 0.9, logits with a value less than 0.045 are filtered out.": "", "Always": "", @@ -374,6 +376,7 @@ "e.g. My Tools": "", "e.g. my_filter": "", "e.g. my_tools": "", + "e.g. pdf, docx, txt": "", "e.g. Tools for performing various operations": "", "e.g., 3, 4, 5 (leave blank for default)": "", "e.g., en-US,ja-JP (leave blank for auto-detect)": "", @@ -638,6 +641,7 @@ "Hex Color - Leave empty for default color": "", "Hide": "Sembunyi", "Hide Model": "", + "High Contrast Mode": "", "Home": "", "Host": "", "How can I help you today?": "Bagaimana saya boleh membantu anda hari ini?", diff --git a/src/lib/i18n/locales/nb-NO/translation.json b/src/lib/i18n/locales/nb-NO/translation.json index 07bfdd6e5..526eba9c3 100644 --- a/src/lib/i18n/locales/nb-NO/translation.json +++ b/src/lib/i18n/locales/nb-NO/translation.json @@ -74,6 +74,8 @@ "Allow User Location": "Aktiver stedstjenester", "Allow Voice Interruption in Call": "Muliggjør taleavbrytelse i samtaler", "Allowed Endpoints": "Tillatte endepunkter", + "Allowed File Extensions": "", + "Allowed file extensions for upload. Separate multiple extensions with commas. Leave empty for all file types.": "", "Already have an account?": "Har du allerede en konto?", "Alternative to the top_p, and aims to ensure a balance of quality and variety. The parameter p represents the minimum probability for a token to be considered, relative to the probability of the most likely token. For example, with p=0.05 and the most likely token having a probability of 0.9, logits with a value less than 0.045 are filtered out.": "", "Always": "Alltid", @@ -374,6 +376,7 @@ "e.g. My Tools": "f.eks. Mine verktøy", "e.g. my_filter": "f.eks. mitt_filter", "e.g. my_tools": "f.eks. mine_verktøy", + "e.g. pdf, docx, txt": "", "e.g. Tools for performing various operations": "f.eks. Verktøy for å gjøre ulike handlinger", "e.g., 3, 4, 5 (leave blank for default)": "", "e.g., en-US,ja-JP (leave blank for auto-detect)": "", @@ -638,6 +641,7 @@ "Hex Color - Leave empty for default color": "Hex-farge – la stå tom for standard farge", "Hide": "Skjul", "Hide Model": "", + "High Contrast Mode": "", "Home": "Hjem", "Host": "Host", "How can I help you today?": "Hva kan jeg hjelpe deg med i dag?", diff --git a/src/lib/i18n/locales/nl-NL/translation.json b/src/lib/i18n/locales/nl-NL/translation.json index 345759b5c..cf8b8440a 100644 --- a/src/lib/i18n/locales/nl-NL/translation.json +++ b/src/lib/i18n/locales/nl-NL/translation.json @@ -74,6 +74,8 @@ "Allow User Location": "Gebruikerslocatie toestaan", "Allow Voice Interruption in Call": "Stemonderbreking tijdens gesprek toestaan", "Allowed Endpoints": "Endpoints toestaan", + "Allowed File Extensions": "", + "Allowed file extensions for upload. Separate multiple extensions with commas. Leave empty for all file types.": "", "Already have an account?": "Heb je al een 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.": "Alternatief voor top_p, en streeft naar een evenwicht tussen kwaliteit en variatie. De parameter p vertegenwoordigt de minimumwaarschijnlijkheid dat een token in aanmerking wordt genomen, in verhouding tot de waarschijnlijkheid van het meest waarschijnlijke token. Bijvoorbeeld, met p=0,05 en het meest waarschijnlijke token met een waarschijnlijkheid van 0,9, worden logits met een waarde kleiner dan 0,045 uitgefilterd.", "Always": "Altijd", @@ -374,6 +376,7 @@ "e.g. My Tools": "bijv. Mijn gereedschappen", "e.g. my_filter": "bijv. mijn_filter", "e.g. my_tools": "bijv. mijn_gereedschappen", + "e.g. pdf, docx, txt": "", "e.g. Tools for performing various operations": "Gereedschappen om verschillende bewerkingen uit te voeren", "e.g., 3, 4, 5 (leave blank for default)": "", "e.g., en-US,ja-JP (leave blank for auto-detect)": "", @@ -638,6 +641,7 @@ "Hex Color - Leave empty for default color": "Hex-kleur - laat leeg voor standaardkleur", "Hide": "Verberg", "Hide Model": "Verberg model", + "High Contrast Mode": "", "Home": "Thuis", "Host": "Host", "How can I help you today?": "Hoe kan ik je vandaag helpen?", diff --git a/src/lib/i18n/locales/pa-IN/translation.json b/src/lib/i18n/locales/pa-IN/translation.json index e856035f4..e57e5c5f3 100644 --- a/src/lib/i18n/locales/pa-IN/translation.json +++ b/src/lib/i18n/locales/pa-IN/translation.json @@ -74,6 +74,8 @@ "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.": "", "Always": "", @@ -374,6 +376,7 @@ "e.g. My Tools": "", "e.g. my_filter": "", "e.g. my_tools": "", + "e.g. pdf, docx, txt": "", "e.g. Tools for performing various operations": "", "e.g., 3, 4, 5 (leave blank for default)": "", "e.g., en-US,ja-JP (leave blank for auto-detect)": "", @@ -638,6 +641,7 @@ "Hex Color - Leave empty for default color": "", "Hide": "ਲੁਕਾਓ", "Hide Model": "", + "High Contrast Mode": "", "Home": "", "Host": "", "How can I help you today?": "ਮੈਂ ਅੱਜ ਤੁਹਾਡੀ ਕਿਵੇਂ ਮਦਦ ਕਰ ਸਕਦਾ ਹਾਂ?", diff --git a/src/lib/i18n/locales/pl-PL/translation.json b/src/lib/i18n/locales/pl-PL/translation.json index 8fc6f4ccb..79fc444ee 100644 --- a/src/lib/i18n/locales/pl-PL/translation.json +++ b/src/lib/i18n/locales/pl-PL/translation.json @@ -74,6 +74,8 @@ "Allow User Location": "Zezwól na lokalizację użytkownika", "Allow Voice Interruption in Call": "Zezwól na przerwanie połączenia głosowego", "Allowed Endpoints": "Dozwolone punkty końcowe", + "Allowed File Extensions": "", + "Allowed file extensions for upload. Separate multiple extensions with commas. Leave empty for all file types.": "", "Already have an account?": "Czy masz już konto?", "Alternative to the top_p, and aims to ensure a balance of quality and variety. The parameter p represents the minimum probability for a token to be considered, relative to the probability of the most likely token. For example, with p=0.05 and the most likely token having a probability of 0.9, logits with a value less than 0.045 are filtered out.": "", "Always": "Zawsze", @@ -374,6 +376,7 @@ "e.g. My Tools": "np. Moje narzędzia", "e.g. my_filter": "np. moj_filtr", "e.g. my_tools": "np. moje_narzędzia", + "e.g. pdf, docx, txt": "", "e.g. Tools for performing various operations": "np. Narzędzia do wykonywania różnych operacji", "e.g., 3, 4, 5 (leave blank for default)": "", "e.g., en-US,ja-JP (leave blank for auto-detect)": "", @@ -638,6 +641,7 @@ "Hex Color - Leave empty for default color": "Kolor heksadecymalny - pozostaw puste dla domyślnego koloru", "Hide": "Ukryj", "Hide Model": "", + "High Contrast Mode": "", "Home": "Dom", "Host": "Serwer", "How can I help you today?": "Jak mogę Ci dzisiaj pomóc?", diff --git a/src/lib/i18n/locales/pt-BR/translation.json b/src/lib/i18n/locales/pt-BR/translation.json index bb4eb24f3..a7c3a5f0c 100644 --- a/src/lib/i18n/locales/pt-BR/translation.json +++ b/src/lib/i18n/locales/pt-BR/translation.json @@ -74,6 +74,8 @@ "Allow User Location": "Permitir Localização do Usuário", "Allow Voice Interruption in Call": "Permitir Interrupção de Voz na Chamada", "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?": "Já tem uma conta?", "Alternative to the top_p, and aims to ensure a balance of quality and variety. The parameter p represents the minimum probability for a token to be considered, relative to the probability of the most likely token. For example, with p=0.05 and the most likely token having a probability of 0.9, logits with a value less than 0.045 are filtered out.": "", "Always": "", @@ -374,6 +376,7 @@ "e.g. My Tools": "Exemplo: Minhas Ferramentas", "e.g. my_filter": "Exemplo: my_filter", "e.g. my_tools": "Exemplo: my_tools", + "e.g. pdf, docx, txt": "", "e.g. Tools for performing various operations": "Exemplo: Ferramentas para executar operações diversas", "e.g., 3, 4, 5 (leave blank for default)": "", "e.g., en-US,ja-JP (leave blank for auto-detect)": "", @@ -638,6 +641,7 @@ "Hex Color - Leave empty for default color": "Cor Hexadecimal - Deixe em branco para a cor padrão", "Hide": "Ocultar", "Hide Model": "", + "High Contrast Mode": "", "Home": "", "Host": "Servidor", "How can I help you today?": "Como posso ajudar você hoje?", diff --git a/src/lib/i18n/locales/pt-PT/translation.json b/src/lib/i18n/locales/pt-PT/translation.json index 0d5537dda..29607a0a5 100644 --- a/src/lib/i18n/locales/pt-PT/translation.json +++ b/src/lib/i18n/locales/pt-PT/translation.json @@ -74,6 +74,8 @@ "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?": "Já tem uma conta?", "Alternative to the top_p, and aims to ensure a balance of quality and variety. The parameter p represents the minimum probability for a token to be considered, relative to the probability of the most likely token. For example, with p=0.05 and the most likely token having a probability of 0.9, logits with a value less than 0.045 are filtered out.": "", "Always": "", @@ -374,6 +376,7 @@ "e.g. My Tools": "", "e.g. my_filter": "", "e.g. my_tools": "", + "e.g. pdf, docx, txt": "", "e.g. Tools for performing various operations": "", "e.g., 3, 4, 5 (leave blank for default)": "", "e.g., en-US,ja-JP (leave blank for auto-detect)": "", @@ -638,6 +641,7 @@ "Hex Color - Leave empty for default color": "", "Hide": "Ocultar", "Hide Model": "", + "High Contrast Mode": "", "Home": "", "Host": "", "How can I help you today?": "Como posso ajudá-lo hoje?", diff --git a/src/lib/i18n/locales/ro-RO/translation.json b/src/lib/i18n/locales/ro-RO/translation.json index c08474c6f..b5df5a998 100644 --- a/src/lib/i18n/locales/ro-RO/translation.json +++ b/src/lib/i18n/locales/ro-RO/translation.json @@ -74,6 +74,8 @@ "Allow User Location": "Permite localizarea utilizatorului", "Allow Voice Interruption in Call": "Permite intreruperea vocii în apel", "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?": "Deja ai un cont?", "Alternative to the top_p, and aims to ensure a balance of quality and variety. The parameter p represents the minimum probability for a token to be considered, relative to the probability of the most likely token. For example, with p=0.05 and the most likely token having a probability of 0.9, logits with a value less than 0.045 are filtered out.": "", "Always": "Întotdeauna", @@ -374,6 +376,7 @@ "e.g. My Tools": "", "e.g. my_filter": "", "e.g. my_tools": "", + "e.g. pdf, docx, txt": "", "e.g. Tools for performing various operations": "", "e.g., 3, 4, 5 (leave blank for default)": "", "e.g., en-US,ja-JP (leave blank for auto-detect)": "", @@ -638,6 +641,7 @@ "Hex Color - Leave empty for default color": "", "Hide": "Ascunde", "Hide Model": "", + "High Contrast Mode": "", "Home": "", "Host": "", "How can I help you today?": "Cum te pot ajuta astăzi?", diff --git a/src/lib/i18n/locales/ru-RU/translation.json b/src/lib/i18n/locales/ru-RU/translation.json index ef9e445aa..c0fb18203 100644 --- a/src/lib/i18n/locales/ru-RU/translation.json +++ b/src/lib/i18n/locales/ru-RU/translation.json @@ -74,6 +74,8 @@ "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": "Всегда", @@ -374,6 +376,7 @@ "e.g. My Tools": "например, мой инструмент", "e.g. my_filter": "например, мой_фильтр", "e.g. my_tools": "например, мой_инструмент", + "e.g. pdf, docx, txt": "", "e.g. Tools for performing various operations": "например, инструменты для выполнения различных операций", "e.g., 3, 4, 5 (leave blank for default)": "например, 3, 4, 5 (оставьте поле пустым по умолчанию)", "e.g., en-US,ja-JP (leave blank for auto-detect)": "например, en-US,ja-JP (оставьте поле пустым для автоматического определения)", @@ -638,6 +641,7 @@ "Hex Color - Leave empty for default color": "Цвет Hex - оставьте пустым значение цвета по умолчанию", "Hide": "Скрыть", "Hide Model": "Скрыть модель", + "High Contrast Mode": "", "Home": "Домой", "Host": "Хост", "How can I help you today?": "Чем я могу помочь вам сегодня?", diff --git a/src/lib/i18n/locales/sk-SK/translation.json b/src/lib/i18n/locales/sk-SK/translation.json index 8b23b11f6..5008324f4 100644 --- a/src/lib/i18n/locales/sk-SK/translation.json +++ b/src/lib/i18n/locales/sk-SK/translation.json @@ -74,6 +74,8 @@ "Allow User Location": "Povoliť užívateľskú polohu", "Allow Voice Interruption in Call": "Povoliť prerušenie hlasu počas hovoru", "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?": "Už máte účet?", "Alternative to the top_p, and aims to ensure a balance of quality and variety. The parameter p represents the minimum probability for a token to be considered, relative to the probability of the most likely token. For example, with p=0.05 and the most likely token having a probability of 0.9, logits with a value less than 0.045 are filtered out.": "", "Always": "", @@ -374,6 +376,7 @@ "e.g. My Tools": "", "e.g. my_filter": "", "e.g. my_tools": "", + "e.g. pdf, docx, txt": "", "e.g. Tools for performing various operations": "", "e.g., 3, 4, 5 (leave blank for default)": "", "e.g., en-US,ja-JP (leave blank for auto-detect)": "", @@ -638,6 +641,7 @@ "Hex Color - Leave empty for default color": "", "Hide": "Skryť", "Hide Model": "", + "High Contrast Mode": "", "Home": "", "Host": "", "How can I help you today?": "Ako vám môžem dnes pomôcť?", diff --git a/src/lib/i18n/locales/sr-RS/translation.json b/src/lib/i18n/locales/sr-RS/translation.json index 39caa3c42..790e0ba5d 100644 --- a/src/lib/i18n/locales/sr-RS/translation.json +++ b/src/lib/i18n/locales/sr-RS/translation.json @@ -74,6 +74,8 @@ "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.": "", "Always": "", @@ -374,6 +376,7 @@ "e.g. My Tools": "", "e.g. my_filter": "", "e.g. my_tools": "", + "e.g. pdf, docx, txt": "", "e.g. Tools for performing various operations": "", "e.g., 3, 4, 5 (leave blank for default)": "", "e.g., en-US,ja-JP (leave blank for auto-detect)": "", @@ -638,6 +641,7 @@ "Hex Color - Leave empty for default color": "Хекс боја (празно за подразумевано)", "Hide": "Сакриј", "Hide Model": "", + "High Contrast Mode": "", "Home": "", "Host": "Домаћин", "How can I help you today?": "Како могу да вам помогнем данас?", diff --git a/src/lib/i18n/locales/sv-SE/translation.json b/src/lib/i18n/locales/sv-SE/translation.json index 9265bd166..6f302b12a 100644 --- a/src/lib/i18n/locales/sv-SE/translation.json +++ b/src/lib/i18n/locales/sv-SE/translation.json @@ -74,6 +74,8 @@ "Allow User Location": "Tillåt användarplats", "Allow Voice Interruption in Call": "Tillåt röstavbrott under samtal", "Allowed Endpoints": "Tillåtna Endpoints", + "Allowed File Extensions": "", + "Allowed file extensions for upload. Separate multiple extensions with commas. Leave empty for all file types.": "", "Already have an account?": "Har du redan ett konto?", "Alternative to the top_p, and aims to ensure a balance of quality and variety. The parameter p represents the minimum probability for a token to be considered, relative to the probability of the most likely token. For example, with p=0.05 and the most likely token having a probability of 0.9, logits with a value less than 0.045 are filtered out.": "", "Always": "Alltid", @@ -374,6 +376,7 @@ "e.g. My Tools": "", "e.g. my_filter": "", "e.g. my_tools": "", + "e.g. pdf, docx, txt": "", "e.g. Tools for performing various operations": "", "e.g., 3, 4, 5 (leave blank for default)": "", "e.g., en-US,ja-JP (leave blank for auto-detect)": "", @@ -638,6 +641,7 @@ "Hex Color - Leave empty for default color": "", "Hide": "Dölj", "Hide Model": "", + "High Contrast Mode": "", "Home": "", "Host": "", "How can I help you today?": "Hur kan jag hjälpa dig idag?", diff --git a/src/lib/i18n/locales/th-TH/translation.json b/src/lib/i18n/locales/th-TH/translation.json index b8ccf9685..836a8cf99 100644 --- a/src/lib/i18n/locales/th-TH/translation.json +++ b/src/lib/i18n/locales/th-TH/translation.json @@ -74,6 +74,8 @@ "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.": "", "Always": "", @@ -374,6 +376,7 @@ "e.g. My Tools": "", "e.g. my_filter": "", "e.g. my_tools": "", + "e.g. pdf, docx, txt": "", "e.g. Tools for performing various operations": "", "e.g., 3, 4, 5 (leave blank for default)": "", "e.g., en-US,ja-JP (leave blank for auto-detect)": "", @@ -638,6 +641,7 @@ "Hex Color - Leave empty for default color": "", "Hide": "ซ่อน", "Hide Model": "", + "High Contrast Mode": "", "Home": "", "Host": "", "How can I help you today?": "วันนี้ฉันจะช่วยอะไรคุณได้บ้าง?", diff --git a/src/lib/i18n/locales/tk-TW/translation.json b/src/lib/i18n/locales/tk-TW/translation.json index 524cdf2cc..7e4fb8789 100644 --- a/src/lib/i18n/locales/tk-TW/translation.json +++ b/src/lib/i18n/locales/tk-TW/translation.json @@ -74,6 +74,8 @@ "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.": "", "Always": "", @@ -374,6 +376,7 @@ "e.g. My Tools": "", "e.g. my_filter": "", "e.g. my_tools": "", + "e.g. pdf, docx, txt": "", "e.g. Tools for performing various operations": "", "e.g., 3, 4, 5 (leave blank for default)": "", "e.g., en-US,ja-JP (leave blank for auto-detect)": "", @@ -638,6 +641,7 @@ "Hex Color - Leave empty for default color": "", "Hide": "", "Hide Model": "", + "High Contrast Mode": "", "Home": "", "Host": "", "How can I help you today?": "", diff --git a/src/lib/i18n/locales/tr-TR/translation.json b/src/lib/i18n/locales/tr-TR/translation.json index 8e8e1d204..7df6a548f 100644 --- a/src/lib/i18n/locales/tr-TR/translation.json +++ b/src/lib/i18n/locales/tr-TR/translation.json @@ -74,6 +74,8 @@ "Allow User Location": "Kullanıcı Konumuna İzin Ver", "Allow Voice Interruption in Call": "Aramada Ses Kesintisine İzin Ver", "Allowed Endpoints": "İzin Verilen Uç Noktalar", + "Allowed File Extensions": "", + "Allowed file extensions for upload. Separate multiple extensions with commas. Leave empty for all file types.": "", "Already have an account?": "Zaten bir hesabınız mı var?", "Alternative to the top_p, and aims to ensure a balance of quality and variety. The parameter p represents the minimum probability for a token to be considered, relative to the probability of the most likely token. For example, with p=0.05 and the most likely token having a probability of 0.9, logits with a value less than 0.045 are filtered out.": "", "Always": "Daima", @@ -374,6 +376,7 @@ "e.g. My Tools": "örn. Benim Araçlarım", "e.g. my_filter": "örn. benim_filtrem", "e.g. my_tools": "örn. benim_araçlarım", + "e.g. pdf, docx, txt": "", "e.g. Tools for performing various operations": " örn.Çeşitli işlemleri gerçekleştirmek için araçlar", "e.g., 3, 4, 5 (leave blank for default)": "örn. 3, 4, 5 (öntanımlı değer için boş bırakın)", "e.g., en-US,ja-JP (leave blank for auto-detect)": "örn. en-US, ja-JP (otomatik tanıma için boş bırakın)", @@ -638,6 +641,7 @@ "Hex Color - Leave empty for default color": "", "Hide": "Gizle", "Hide Model": "Modeli Gizle", + "High Contrast Mode": "", "Home": "", "Host": "Ana bilgisayar", "How can I help you today?": "Bugün size nasıl yardımcı olabilirim?", diff --git a/src/lib/i18n/locales/uk-UA/translation.json b/src/lib/i18n/locales/uk-UA/translation.json index a23306dcd..23587fbc2 100644 --- a/src/lib/i18n/locales/uk-UA/translation.json +++ b/src/lib/i18n/locales/uk-UA/translation.json @@ -74,6 +74,8 @@ "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": "Завжди", @@ -374,6 +376,7 @@ "e.g. My Tools": "напр., Мої інструменти", "e.g. my_filter": "напр., my_filter", "e.g. my_tools": "напр., my_tools", + "e.g. pdf, docx, txt": "", "e.g. Tools for performing various operations": "напр., Інструменти для виконання різних операцій", "e.g., 3, 4, 5 (leave blank for default)": "", "e.g., en-US,ja-JP (leave blank for auto-detect)": "", @@ -638,6 +641,7 @@ "Hex Color - Leave empty for default color": "Шістнадцятковий колір — залиште порожнім для кольору за замовчуванням", "Hide": "Приховати", "Hide Model": "Приховати модель", + "High Contrast Mode": "", "Home": "Головна", "Host": "Хост", "How can I help you today?": "Чим я можу допомогти вам сьогодні?", diff --git a/src/lib/i18n/locales/ur-PK/translation.json b/src/lib/i18n/locales/ur-PK/translation.json index 19eb2d18a..5821934ae 100644 --- a/src/lib/i18n/locales/ur-PK/translation.json +++ b/src/lib/i18n/locales/ur-PK/translation.json @@ -74,6 +74,8 @@ "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.": "", "Always": "", @@ -374,6 +376,7 @@ "e.g. My Tools": "", "e.g. my_filter": "", "e.g. my_tools": "", + "e.g. pdf, docx, txt": "", "e.g. Tools for performing various operations": "", "e.g., 3, 4, 5 (leave blank for default)": "", "e.g., en-US,ja-JP (leave blank for auto-detect)": "", @@ -638,6 +641,7 @@ "Hex Color - Leave empty for default color": "", "Hide": "چھپائیں", "Hide Model": "", + "High Contrast Mode": "", "Home": "", "Host": "", "How can I help you today?": "میں آج آپ کی کس طرح مدد کر سکتا ہوں؟", diff --git a/src/lib/i18n/locales/vi-VN/translation.json b/src/lib/i18n/locales/vi-VN/translation.json index ea2ee9e42..4339b004f 100644 --- a/src/lib/i18n/locales/vi-VN/translation.json +++ b/src/lib/i18n/locales/vi-VN/translation.json @@ -74,6 +74,8 @@ "Allow User Location": "Cho phép sử dụng vị trí người dùng", "Allow Voice Interruption in Call": "Cho phép gián đoạn giọng nói trong cuộc gọi", "Allowed Endpoints": "Các Endpoint được phép", + "Allowed File Extensions": "", + "Allowed file extensions for upload. Separate multiple extensions with commas. Leave empty for all file types.": "", "Already have an account?": "Bạn đã có tài khoản?", "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.": "Thay thế cho top_p, nhằm đảm bảo cân bằng giữa chất lượng và sự đa dạng. Tham số p đại diện cho xác suất tối thiểu để một token được xem xét, tương đối so với xác suất của token có khả năng cao nhất. Ví dụ: với p=0.05 và token có khả năng cao nhất có xác suất 0.9, các logit có giá trị nhỏ hơn 0.045 sẽ bị lọc ra.", "Always": "Luôn luôn", @@ -374,6 +376,7 @@ "e.g. My Tools": "vd: Công cụ của tôi", "e.g. my_filter": "vd: bo_loc_cua_toi", "e.g. my_tools": "vd: cong_cu_cua_toi", + "e.g. pdf, docx, txt": "", "e.g. Tools for performing various operations": "vd: Các công cụ để thực hiện các hoạt động khác nhau", "e.g., 3, 4, 5 (leave blank for default)": "", "e.g., en-US,ja-JP (leave blank for auto-detect)": "", @@ -638,6 +641,7 @@ "Hex Color - Leave empty for default color": "Màu Hex - Để trống để dùng màu mặc định", "Hide": "Ẩn", "Hide Model": "Ẩn Mô hình", + "High Contrast Mode": "", "Home": "Trang chủ", "Host": "Host", "How can I help you today?": "Tôi có thể giúp gì cho bạn hôm nay?", diff --git a/src/lib/i18n/locales/zh-CN/translation.json b/src/lib/i18n/locales/zh-CN/translation.json index 8e665dc3f..e7647edab 100644 --- a/src/lib/i18n/locales/zh-CN/translation.json +++ b/src/lib/i18n/locales/zh-CN/translation.json @@ -74,6 +74,8 @@ "Allow User Location": "允许获取您的位置", "Allow Voice Interruption in Call": "允许通话中的打断语音", "Allowed Endpoints": "允许的 API 端点", + "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": "保持", @@ -374,6 +376,7 @@ "e.g. My Tools": "例如:我的工具", "e.g. my_filter": "例如:my_filter", "e.g. my_tools": "例如:my_tools", + "e.g. pdf, docx, txt": "", "e.g. Tools for performing various operations": "例如:用于执行各种操作的工具", "e.g., 3, 4, 5 (leave blank for default)": "例如:3、4、5(留空为默认值)", "e.g., en-US,ja-JP (leave blank for auto-detect)": "例如,'en-US,ja-JP'(留空以便自动检测)", @@ -638,6 +641,7 @@ "Hex Color - Leave empty for default color": "十六进制颜色代码 - 留空使用默认颜色", "Hide": "隐藏", "Hide Model": "隐藏模型", + "High Contrast Mode": "", "Home": "主页", "Host": "主机", "How can I help you today?": "有什么我能帮您的吗?", diff --git a/src/lib/i18n/locales/zh-TW/translation.json b/src/lib/i18n/locales/zh-TW/translation.json index d31a8e54c..39f782763 100644 --- a/src/lib/i18n/locales/zh-TW/translation.json +++ b/src/lib/i18n/locales/zh-TW/translation.json @@ -74,6 +74,8 @@ "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 代表一個 token 被考慮的最低機率,相對於最有可能 token 的機率。例如,當 p=0.05 且最有可能 token 的機率為 0.9 時,機率小於 0.045 的 logits 將被過濾掉。", "Always": "總是", @@ -374,6 +376,7 @@ "e.g. My Tools": "例如:我的工具", "e.g. my_filter": "例如:my_filter", "e.g. my_tools": "例如:my_tools", + "e.g. pdf, docx, txt": "", "e.g. Tools for performing various operations": "例如:用於執行各種操作的工具", "e.g., 3, 4, 5 (leave blank for default)": "例如:3、4、5(留空使用預設值)", "e.g., en-US,ja-JP (leave blank for auto-detect)": "例如:en-US, ja-JP(留空以自動偵測)", @@ -638,6 +641,7 @@ "Hex Color - Leave empty for default color": "Hex 顔色 —— 留空以使用預設顔色", "Hide": "隱藏", "Hide Model": "隱藏模型", + "High Contrast Mode": "", "Home": "首頁", "Host": "主機", "How can I help you today?": "今天我能為您做些什麼?", From 07b5e842211fdaf3ff37142a2ba4a59ca3087f51 Mon Sep 17 00:00:00 2001 From: Timothy Jaeryang Baek Date: Fri, 16 May 2025 21:29:50 +0400 Subject: [PATCH 073/100] refac --- backend/open_webui/utils/middleware.py | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/backend/open_webui/utils/middleware.py b/backend/open_webui/utils/middleware.py index 323fd200a..1b8b5c9bd 100644 --- a/backend/open_webui/utils/middleware.py +++ b/backend/open_webui/utils/middleware.py @@ -947,12 +947,14 @@ async def process_chat_response( message = message_map.get(metadata["message_id"]) if message_map else None if message: - messages = get_message_list(message_map, message.get("id")) + message_list = get_message_list(message_map, message.get("id")) # Remove details tags and files from the messages. # as get_message_list creates a new list, it does not affect # the original messages outside of this handler - for message in messages: + + messages = [] + for message in message_list: content = message.get("content", "") if isinstance(content, list): for item in content: @@ -968,10 +970,12 @@ async def process_chat_response( flags=re.S | re.I, ).strip() - message = { - "role": message["role"], - "content": content, - } + messages.append( + { + "role": message["role"], + "content": content, + } + ) if tasks and messages: if TASKS.TITLE_GENERATION in tasks: From 54dc24986ff45eb9804850b2a8220e64cb4d4ad3 Mon Sep 17 00:00:00 2001 From: Timothy Jaeryang Baek Date: Fri, 16 May 2025 21:47:43 +0400 Subject: [PATCH 074/100] feat: preview html --- src/lib/components/chat/Artifacts.svelte | 11 ++++++-- src/lib/components/chat/MessageInput.svelte | 2 -- .../components/chat/Messages/CodeBlock.svelte | 26 +++++++++++++++++-- .../chat/Messages/ContentRenderer.svelte | 24 +++++++++++++---- .../components/chat/Messages/Markdown.svelte | 14 +++++++++- .../Messages/Markdown/MarkdownTokens.svelte | 4 +++ .../chat/Messages/ResponseMessage.svelte | 18 ++----------- src/lib/stores/index.ts | 2 ++ 8 files changed, 73 insertions(+), 28 deletions(-) diff --git a/src/lib/components/chat/Artifacts.svelte b/src/lib/components/chat/Artifacts.svelte index f53e75507..180ed7277 100644 --- a/src/lib/components/chat/Artifacts.svelte +++ b/src/lib/components/chat/Artifacts.svelte @@ -4,7 +4,7 @@ const i18n = getContext('i18n'); const dispatch = createEventDispatcher(); - import { chatId, settings, showArtifacts, showControls } from '$lib/stores'; + import { artifactCode, chatId, settings, showArtifacts, showControls } from '$lib/stores'; import XMark from '../icons/XMark.svelte'; import { copyToClipboard, createMessagesList } from '$lib/utils'; import ArrowsPointingOut from '../icons/ArrowsPointingOut.svelte'; @@ -180,7 +180,14 @@ } }; - onMount(() => {}); + onMount(() => { + artifactCode.subscribe((value) => { + if (contents) { + const codeIdx = contents.findIndex((content) => content.content.includes(value)); + selectedContentIdx = codeIdx !== -1 ? codeIdx : 0; + } + }); + });
diff --git a/src/lib/components/chat/MessageInput.svelte b/src/lib/components/chat/MessageInput.svelte index ba705146f..867bb9f24 100644 --- a/src/lib/components/chat/MessageInput.svelte +++ b/src/lib/components/chat/MessageInput.svelte @@ -957,8 +957,6 @@ ? (e.key === 'Enter' || e.keyCode === 13) && isCtrlPressed : (e.key === 'Enter' || e.keyCode === 13) && !e.shiftKey; - console.log('Enter pressed:', enterPressed); - if (enterPressed) { e.preventDefault(); } diff --git a/src/lib/components/chat/Messages/CodeBlock.svelte b/src/lib/components/chat/Messages/CodeBlock.svelte index ca663f61d..bd5195870 100644 --- a/src/lib/components/chat/Messages/CodeBlock.svelte +++ b/src/lib/components/chat/Messages/CodeBlock.svelte @@ -17,6 +17,7 @@ import ChevronUp from '$lib/components/icons/ChevronUp.svelte'; import ChevronUpDown from '$lib/components/icons/ChevronUpDown.svelte'; import CommandLine from '$lib/components/icons/CommandLine.svelte'; + import Cube from '$lib/components/icons/Cube.svelte'; const i18n = getContext('i18n'); @@ -24,9 +25,11 @@ export let onSave = (e) => {}; export let onCode = (e) => {}; + export let onPreview = (e) => {}; export let save = false; export let run = true; + export let preview = false; export let collapsed = false; export let token; @@ -88,6 +91,10 @@ }, 1000); }; + const previewCode = () => { + onPreview(code); + }; + const checkPythonCode = (str) => { // Check if the string contains typical Python syntax characters const pythonSyntax = [ @@ -430,7 +437,7 @@ class="flex gap-1 items-center bg-none border-none bg-gray-50 hover:bg-gray-100 dark:bg-gray-850 dark:hover:bg-gray-800 transition rounded-md px-1.5 py-0.5" on:click={collapseCodeBlock} > -
+
@@ -439,6 +446,21 @@
+ {#if preview && ['html', 'svg'].includes(lang)} + + {/if} + {#if ($config?.features?.enable_code_execution ?? true) && (lang.toLowerCase() === 'python' || lang.toLowerCase() === 'py' || (lang === '' && checkPythonCode(code)))} {#if executing}
@@ -453,7 +475,7 @@ executePython(code); }} > -
+
diff --git a/src/lib/components/chat/Messages/ContentRenderer.svelte b/src/lib/components/chat/Messages/ContentRenderer.svelte index 74487255d..895390c8e 100644 --- a/src/lib/components/chat/Messages/ContentRenderer.svelte +++ b/src/lib/components/chat/Messages/ContentRenderer.svelte @@ -1,10 +1,17 @@ {#key id} - + {/key} diff --git a/src/lib/components/chat/Messages/Markdown/MarkdownTokens.svelte b/src/lib/components/chat/Messages/Markdown/MarkdownTokens.svelte index 9f80fbc77..53c61fe80 100644 --- a/src/lib/components/chat/Messages/Markdown/MarkdownTokens.svelte +++ b/src/lib/components/chat/Messages/Markdown/MarkdownTokens.svelte @@ -29,9 +29,11 @@ export let attributes = {}; export let save = false; + export let preview = false; export let onUpdate: Function = () => {}; export let onCode: Function = () => {}; + export let onPreview: Function = () => {}; export let onTaskClick: Function = () => {}; export let onSourceClick: Function = () => {}; @@ -95,7 +97,9 @@ code={token?.text ?? ''} {attributes} {save} + {preview} {onCode} + {onPreview} onSave={(value) => { onUpdate({ raw: token.raw, diff --git a/src/lib/components/chat/Messages/ResponseMessage.svelte b/src/lib/components/chat/Messages/ResponseMessage.svelte index 1caea61c9..eae35bbb3 100644 --- a/src/lib/components/chat/Messages/ResponseMessage.svelte +++ b/src/lib/components/chat/Messages/ResponseMessage.svelte @@ -806,6 +806,7 @@ sources={message.sources} floatingButtons={message?.done && !readOnly} save={!readOnly} + preview={!readOnly} {model} onTaskClick={async (e) => { console.log(e); @@ -840,28 +841,13 @@ onAddMessages={({ modelId, parentId, messages }) => { addMessages({ modelId, parentId, messages }); }} - on:update={(e) => { - const { raw, oldContent, newContent } = e.detail; - + onUpdate={({ raw, oldContent, newContent }) => { history.messages[message.id].content = history.messages[ message.id ].content.replace(raw, raw.replace(oldContent, newContent)); updateChat(); }} - on:select={(e) => { - const { type, content } = e.detail; - - if (type === 'explain') { - submitMessage( - message.id, - `Explain this section to me in more detail\n\n\`\`\`\n${content}\n\`\`\`` - ); - } else if (type === 'ask') { - const input = e.detail?.input ?? ''; - submitMessage(message.id, `\`\`\`\n${content}\n\`\`\`\n${input}`); - } - }} /> {/if} diff --git a/src/lib/stores/index.ts b/src/lib/stores/index.ts index 7142cd35b..614085236 100644 --- a/src/lib/stores/index.ts +++ b/src/lib/stores/index.ts @@ -74,6 +74,8 @@ export const showOverview = writable(false); export const showArtifacts = writable(false); export const showCallOverlay = writable(false); +export const artifactCode = writable(null); + export const temporaryChatEnabled = writable(false); export const scrollPaginationEnabled = writable(false); export const currentChatPage = writable(1); From 27bb5f5369615e80e05c5f024d97eebc39842713 Mon Sep 17 00:00:00 2001 From: Timothy Jaeryang Baek Date: Fri, 16 May 2025 21:51:29 +0400 Subject: [PATCH 075/100] fix/refac: tts remove formattings --- src/lib/utils/index.ts | 1 - 1 file changed, 1 deletion(-) diff --git a/src/lib/utils/index.ts b/src/lib/utils/index.ts index 25aea433b..acdcbe1c8 100644 --- a/src/lib/utils/index.ts +++ b/src/lib/utils/index.ts @@ -750,7 +750,6 @@ export const removeFormattings = (str: string) => { // Cleanup .replace(/\[\^[^\]]*\]/g, '') // Footnotes - .replace(/[-*_~]/g, '') // Remaining markers .replace(/\n{2,}/g, '\n') ); // Multiple newlines }; From 363ac35c093f07cdb438d7a452dd7b70ca68e2cb Mon Sep 17 00:00:00 2001 From: Timothy Jaeryang Baek Date: Fri, 16 May 2025 22:17:47 +0400 Subject: [PATCH 076/100] refac --- backend/open_webui/utils/middleware.py | 4 +- src/lib/components/chat/Chat.svelte | 20 +++++----- src/lib/components/chat/MessageInput.svelte | 37 ++++++++++--------- src/lib/components/chat/Placeholder.svelte | 4 +- .../{Thinking.svelte => LightBulb.svelte} | 0 .../workspace/Models/Capabilities.svelte | 6 ++- .../workspace/Models/ModelEditor.svelte | 4 +- 7 files changed, 39 insertions(+), 36 deletions(-) rename src/lib/components/icons/{Thinking.svelte => LightBulb.svelte} (100%) diff --git a/backend/open_webui/utils/middleware.py b/backend/open_webui/utils/middleware.py index ebbe5e96a..5ad1e3883 100644 --- a/backend/open_webui/utils/middleware.py +++ b/backend/open_webui/utils/middleware.py @@ -790,8 +790,8 @@ async def process_chat_payload(request, form_data, user, metadata, model): ), form_data["messages"], ) - if "thinking" in features: - form_data["enable_thinking"] = features["thinking"] + if "reasoning" in features: + form_data["enable_thinking"] = features["reasoning"] form_data["chat_template_kwargs"] = { "enable_thinking": features["thinking"] } diff --git a/src/lib/components/chat/Chat.svelte b/src/lib/components/chat/Chat.svelte index 33aa0ec8f..98434986f 100644 --- a/src/lib/components/chat/Chat.svelte +++ b/src/lib/components/chat/Chat.svelte @@ -122,7 +122,7 @@ let imageGenerationEnabled = false; let webSearchEnabled = false; let codeInterpreterEnabled = false; - let thinkingEnabled = false; + let reasoningEnabled = false; let chat = null; let tags = []; @@ -148,7 +148,7 @@ files = []; selectedToolIds = []; webSearchEnabled = false; - thinkingEnabled = false; + reasoningEnabled = false; imageGenerationEnabled = false; if (localStorage.getItem(`chat-input${chatIdProp ? `-${chatIdProp}` : ''}`)) { @@ -162,7 +162,7 @@ files = input.files; selectedToolIds = input.selectedToolIds; webSearchEnabled = input.webSearchEnabled; - thinkingEnabled = input.thinkingEnabled; + reasoningEnabled = input.reasoningEnabled; imageGenerationEnabled = input.imageGenerationEnabled; codeInterpreterEnabled = input.codeInterpreterEnabled; } @@ -428,7 +428,7 @@ files = []; selectedToolIds = []; webSearchEnabled = false; - thinkingEnabled = false; + reasoningEnabled = false; imageGenerationEnabled = false; codeInterpreterEnabled = false; @@ -444,7 +444,7 @@ webSearchEnabled = input.webSearchEnabled; imageGenerationEnabled = input.imageGenerationEnabled; codeInterpreterEnabled = input.codeInterpreterEnabled; - thinkingEnabled = input.thinkingEnabled; + reasoningEnabled = input.reasoningEnabled; } } catch (e) {} } @@ -753,8 +753,8 @@ webSearchEnabled = true; } - if ($page.url.searchParams.get('thinking') === 'true') { - thinkingEnabled = true; + if ($page.url.searchParams.get('reasoning') === 'true') { + reasoningEnabled = true; } if ($page.url.searchParams.get('image-generation') === 'true') { @@ -1645,7 +1645,7 @@ ($user?.role === 'admin' || $user?.permissions?.features?.web_search) ? webSearchEnabled || ($settings?.webSearch ?? false) === 'always' : false, - thinking: thinkingEnabled + reasoning: reasoningEnabled }, variables: { ...getPromptVariables( @@ -2071,7 +2071,7 @@ bind:imageGenerationEnabled bind:codeInterpreterEnabled bind:webSearchEnabled - bind:thinkingEnabled + bind:reasoningEnabled bind:atSelectedModel toolServers={$toolServers} transparentBackground={$settings?.backgroundImageUrl ?? false} @@ -2128,7 +2128,7 @@ bind:imageGenerationEnabled bind:codeInterpreterEnabled bind:webSearchEnabled - bind:thinkingEnabled + bind:reasoningEnabled bind:atSelectedModel transparentBackground={$settings?.backgroundImageUrl ?? false} toolServers={$toolServers} diff --git a/src/lib/components/chat/MessageInput.svelte b/src/lib/components/chat/MessageInput.svelte index 9c8902dc5..bb7aa611c 100644 --- a/src/lib/components/chat/MessageInput.svelte +++ b/src/lib/components/chat/MessageInput.svelte @@ -38,6 +38,7 @@ import VoiceRecording from './MessageInput/VoiceRecording.svelte'; import FilesOverlay from './MessageInput/FilesOverlay.svelte'; import Commands from './MessageInput/Commands.svelte'; + import ToolServersModal from './ToolServersModal.svelte'; import RichTextInput from '../common/RichTextInput.svelte'; import Tooltip from '../common/Tooltip.svelte'; @@ -47,13 +48,12 @@ import XMark from '../icons/XMark.svelte'; import Headphone from '../icons/Headphone.svelte'; import GlobeAlt from '../icons/GlobeAlt.svelte'; - import Thinking from "../icons/Thinking.svelte"; - import PhotoSolid from '../icons/PhotoSolid.svelte'; import Photo from '../icons/Photo.svelte'; - import CommandLine from '../icons/CommandLine.svelte'; - import { KokoroWorker } from '$lib/workers/KokoroWorker'; - import ToolServersModal from './ToolServersModal.svelte'; + import LightBlub from '../icons/LightBlub.svelte'; import Wrench from '../icons/Wrench.svelte'; + import CommandLine from '../icons/CommandLine.svelte'; + + import { KokoroWorker } from '$lib/workers/KokoroWorker'; const i18n = getContext('i18n'); @@ -84,7 +84,7 @@ export let imageGenerationEnabled = false; export let webSearchEnabled = false; export let codeInterpreterEnabled = false; - export let thinkingEnabled = false; + export let reasoningEnabled = false; $: onChange({ prompt, @@ -93,7 +93,7 @@ imageGenerationEnabled, webSearchEnabled, codeInterpreterEnabled, - thinkingEnabled + reasoningEnabled }); let showTools = false; @@ -120,9 +120,10 @@ (model) => $models.find((m) => m.id === model)?.info?.meta?.capabilities?.vision ?? true ); - let switchThinkingCapableModels = []; - $: switchThinkingCapableModels = $models.filter((model) => model.info?.meta?.capabilities?.switch_thinking ?? false) - .map((model) => model.id) + let reasoningCapableModels = []; + $: reasoningCapableModels = $models + .filter((model) => model.info?.meta?.capabilities?.reasoning ?? false) + .map((model) => model.id); const scrollToBottom = () => { const element = document.getElementById('messages-container'); @@ -780,7 +781,7 @@ selectedToolIds = []; webSearchEnabled = false; imageGenerationEnabled = false; - thinkingEnabled = false; + reasoningEnabled = false; } }} on:paste={async (e) => { @@ -1004,7 +1005,7 @@ selectedToolIds = []; webSearchEnabled = false; imageGenerationEnabled = false; - thinkingEnabled = false; + reasoningEnabled = false; } }} rows="1" @@ -1152,19 +1153,19 @@ {/if} {#if $_user} - {#if selectedModels.length > 0 && selectedModels.some((model) => switchThinkingCapableModels.includes(model))} - + {#if selectedModels.length > 0 && selectedModels.some( (model) => reasoningCapableModels.includes(model) )} + diff --git a/src/lib/components/chat/Placeholder.svelte b/src/lib/components/chat/Placeholder.svelte index cc46ae3b6..fa43eb2b1 100644 --- a/src/lib/components/chat/Placeholder.svelte +++ b/src/lib/components/chat/Placeholder.svelte @@ -37,7 +37,7 @@ export let imageGenerationEnabled = false; export let codeInterpreterEnabled = false; export let webSearchEnabled = false; - export let thinkingEnabled = false; + export let reasoningEnabled = false; export let toolServers = []; @@ -196,7 +196,7 @@ bind:imageGenerationEnabled bind:codeInterpreterEnabled bind:webSearchEnabled - bind:thinkingEnabled + bind:reasoningEnabled bind:atSelectedModel {toolServers} {transparentBackground} diff --git a/src/lib/components/icons/Thinking.svelte b/src/lib/components/icons/LightBulb.svelte similarity index 100% rename from src/lib/components/icons/Thinking.svelte rename to src/lib/components/icons/LightBulb.svelte diff --git a/src/lib/components/workspace/Models/Capabilities.svelte b/src/lib/components/workspace/Models/Capabilities.svelte index affbc4d26..a08f8a503 100644 --- a/src/lib/components/workspace/Models/Capabilities.svelte +++ b/src/lib/components/workspace/Models/Capabilities.svelte @@ -12,14 +12,16 @@ 'Sends `stream_options: { include_usage: true }` in the request.\nSupported providers will return token usage information in the response when set.' ), citations: $i18n.t('Displays citations in the response'), - switch_thinking: $i18n.t('Sends `enable_thinking: true` in the request. \nSupported toggle providers will return thinking content') + reasoning: $i18n.t( + 'Sends `enable_thinking: true` in the request. \nSupported toggle providers will return thinking content' + ) }; export let capabilities: { vision?: boolean; usage?: boolean; citations?: boolean; - switch_thinking?: boolean; + reasoning?: boolean; } = {}; diff --git a/src/lib/components/workspace/Models/ModelEditor.svelte b/src/lib/components/workspace/Models/ModelEditor.svelte index c0f883257..6b348a57f 100644 --- a/src/lib/components/workspace/Models/ModelEditor.svelte +++ b/src/lib/components/workspace/Models/ModelEditor.svelte @@ -77,9 +77,9 @@ }; let capabilities = { vision: true, - usage: undefined, citations: true, - switch_thinking: false, + usage: undefined, + reasoning: false }; let knowledge = []; From 34ef249a1076fd41423ecaa816b0a00a770a27c9 Mon Sep 17 00:00:00 2001 From: Timothy Jaeryang Baek Date: Fri, 16 May 2025 22:24:23 +0400 Subject: [PATCH 077/100] revert: remove reasoning capability --- src/lib/components/workspace/Models/Capabilities.svelte | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/src/lib/components/workspace/Models/Capabilities.svelte b/src/lib/components/workspace/Models/Capabilities.svelte index a08f8a503..cbccef1ff 100644 --- a/src/lib/components/workspace/Models/Capabilities.svelte +++ b/src/lib/components/workspace/Models/Capabilities.svelte @@ -11,17 +11,13 @@ usage: $i18n.t( 'Sends `stream_options: { include_usage: true }` in the request.\nSupported providers will return token usage information in the response when set.' ), - citations: $i18n.t('Displays citations in the response'), - reasoning: $i18n.t( - 'Sends `enable_thinking: true` in the request. \nSupported toggle providers will return thinking content' - ) + citations: $i18n.t('Displays citations in the response') }; export let capabilities: { vision?: boolean; usage?: boolean; citations?: boolean; - reasoning?: boolean; } = {}; From 7bbeaec93b566e83bcca9e997300280f321f4074 Mon Sep 17 00:00:00 2001 From: Timothy Jaeryang Baek Date: Fri, 16 May 2025 22:43:42 +0400 Subject: [PATCH 078/100] revert --- backend/open_webui/utils/middleware.py | 5 ---- src/lib/components/chat/Chat.svelte | 22 +++++++--------- src/lib/components/chat/MessageInput.svelte | 26 +++---------------- src/lib/components/chat/Placeholder.svelte | 5 ++-- .../workspace/Models/Capabilities.svelte | 2 +- 5 files changed, 16 insertions(+), 44 deletions(-) diff --git a/backend/open_webui/utils/middleware.py b/backend/open_webui/utils/middleware.py index 5ad1e3883..1b8b5c9bd 100644 --- a/backend/open_webui/utils/middleware.py +++ b/backend/open_webui/utils/middleware.py @@ -790,11 +790,6 @@ async def process_chat_payload(request, form_data, user, metadata, model): ), form_data["messages"], ) - if "reasoning" in features: - form_data["enable_thinking"] = features["reasoning"] - form_data["chat_template_kwargs"] = { - "enable_thinking": features["thinking"] - } tool_ids = form_data.pop("tool_ids", None) files = form_data.pop("files", None) diff --git a/src/lib/components/chat/Chat.svelte b/src/lib/components/chat/Chat.svelte index 98434986f..b162d0522 100644 --- a/src/lib/components/chat/Chat.svelte +++ b/src/lib/components/chat/Chat.svelte @@ -119,10 +119,10 @@ $: selectedModelIds = atSelectedModel !== undefined ? [atSelectedModel.id] : selectedModels; let selectedToolIds = []; + let selectedFilterIds = []; let imageGenerationEnabled = false; let webSearchEnabled = false; let codeInterpreterEnabled = false; - let reasoningEnabled = false; let chat = null; let tags = []; @@ -147,8 +147,8 @@ prompt = ''; files = []; selectedToolIds = []; + selectedFilterIds = []; webSearchEnabled = false; - reasoningEnabled = false; imageGenerationEnabled = false; if (localStorage.getItem(`chat-input${chatIdProp ? `-${chatIdProp}` : ''}`)) { @@ -161,8 +161,8 @@ prompt = input.prompt; files = input.files; selectedToolIds = input.selectedToolIds; + selectedFilterIds = input.selectedFilterIds; webSearchEnabled = input.webSearchEnabled; - reasoningEnabled = input.reasoningEnabled; imageGenerationEnabled = input.imageGenerationEnabled; codeInterpreterEnabled = input.codeInterpreterEnabled; } @@ -427,8 +427,8 @@ prompt = ''; files = []; selectedToolIds = []; + selectedFilterIds = []; webSearchEnabled = false; - reasoningEnabled = false; imageGenerationEnabled = false; codeInterpreterEnabled = false; @@ -441,10 +441,10 @@ prompt = input.prompt; files = input.files; selectedToolIds = input.selectedToolIds; + selectedFilterIds = input.selectedFilterIds; webSearchEnabled = input.webSearchEnabled; imageGenerationEnabled = input.imageGenerationEnabled; codeInterpreterEnabled = input.codeInterpreterEnabled; - reasoningEnabled = input.reasoningEnabled; } } catch (e) {} } @@ -753,10 +753,6 @@ webSearchEnabled = true; } - if ($page.url.searchParams.get('reasoning') === 'true') { - reasoningEnabled = true; - } - if ($page.url.searchParams.get('image-generation') === 'true') { imageGenerationEnabled = true; } @@ -1626,6 +1622,7 @@ }, files: (files?.length ?? 0) > 0 ? files : undefined, + filter_ids: selectedFilterIds.length > 0 ? selectedFilterIds : undefined, tool_ids: selectedToolIds.length > 0 ? selectedToolIds : undefined, tool_servers: $toolServers, @@ -1644,8 +1641,7 @@ $config?.features?.enable_web_search && ($user?.role === 'admin' || $user?.permissions?.features?.web_search) ? webSearchEnabled || ($settings?.webSearch ?? false) === 'always' - : false, - reasoning: reasoningEnabled + : false }, variables: { ...getPromptVariables( @@ -2068,10 +2064,10 @@ bind:prompt bind:autoScroll bind:selectedToolIds + bind:selectedFilterIds bind:imageGenerationEnabled bind:codeInterpreterEnabled bind:webSearchEnabled - bind:reasoningEnabled bind:atSelectedModel toolServers={$toolServers} transparentBackground={$settings?.backgroundImageUrl ?? false} @@ -2125,10 +2121,10 @@ bind:prompt bind:autoScroll bind:selectedToolIds + bind:selectedFilterIds bind:imageGenerationEnabled bind:codeInterpreterEnabled bind:webSearchEnabled - bind:reasoningEnabled bind:atSelectedModel transparentBackground={$settings?.backgroundImageUrl ?? false} toolServers={$toolServers} diff --git a/src/lib/components/chat/MessageInput.svelte b/src/lib/components/chat/MessageInput.svelte index bb7aa611c..5d9bc4916 100644 --- a/src/lib/components/chat/MessageInput.svelte +++ b/src/lib/components/chat/MessageInput.svelte @@ -80,20 +80,20 @@ export let toolServers = []; export let selectedToolIds = []; + export let selectedFilterIds = []; export let imageGenerationEnabled = false; export let webSearchEnabled = false; export let codeInterpreterEnabled = false; - export let reasoningEnabled = false; $: onChange({ prompt, files: files.filter((file) => file.type !== 'image'), selectedToolIds, + selectedFilterIds, imageGenerationEnabled, webSearchEnabled, - codeInterpreterEnabled, - reasoningEnabled + codeInterpreterEnabled }); let showTools = false; @@ -781,7 +781,6 @@ selectedToolIds = []; webSearchEnabled = false; imageGenerationEnabled = false; - reasoningEnabled = false; } }} on:paste={async (e) => { @@ -1005,7 +1004,6 @@ selectedToolIds = []; webSearchEnabled = false; imageGenerationEnabled = false; - reasoningEnabled = false; } }} rows="1" @@ -1153,24 +1151,6 @@ {/if} {#if $_user} - {#if selectedModels.length > 0 && selectedModels.some( (model) => reasoningCapableModels.includes(model) )} - - - - {/if} - {#if $config?.features?.enable_web_search && ($_user.role === 'admin' || $_user?.permissions?.features?.web_search)}
- {#each Object.keys(capabilities) as capability} + {#each Object.keys(helpText) as capability}
Date: Fri, 16 May 2025 22:44:47 +0400 Subject: [PATCH 079/100] refac --- src/lib/components/workspace/Models/Capabilities.svelte | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/lib/components/workspace/Models/Capabilities.svelte b/src/lib/components/workspace/Models/Capabilities.svelte index 3620ce0c0..56a6cf4d6 100644 --- a/src/lib/components/workspace/Models/Capabilities.svelte +++ b/src/lib/components/workspace/Models/Capabilities.svelte @@ -6,7 +6,7 @@ const i18n = getContext('i18n'); - const helpText = { + const capabilityLabels = { vision: $i18n.t('Model accepts image inputs'), usage: $i18n.t( 'Sends `stream_options: { include_usage: true }` in the request.\nSupported providers will return token usage information in the response when set.' @@ -26,7 +26,7 @@
{$i18n.t('Capabilities')}
- {#each Object.keys(helpText) as capability} + {#each Object.keys(capabilityLabels) as capability}
- + {$i18n.t(capability)}
From b61efcf54ad3882e4489279918c49c6e92d0443f Mon Sep 17 00:00:00 2001 From: Timothy Jaeryang Baek Date: Fri, 16 May 2025 22:59:02 +0400 Subject: [PATCH 080/100] feat: toggle filter --- backend/open_webui/utils/models.py | 52 ++++++++++++++++++++++++++++++ 1 file changed, 52 insertions(+) diff --git a/backend/open_webui/utils/models.py b/backend/open_webui/utils/models.py index 245eaf874..9823cb09b 100644 --- a/backend/open_webui/utils/models.py +++ b/backend/open_webui/utils/models.py @@ -110,6 +110,14 @@ async def get_all_models(request, user: UserModel = None): for function in Functions.get_functions_by_type("action", active_only=True) ] + global_filter_ids = [ + function.id for function in Functions.get_global_filter_functions() + ] + enabled_filter_ids = [ + function.id + for function in Functions.get_functions_by_type("filter", active_only=True) + ] + custom_models = Models.get_all_models() for custom_model in custom_models: if custom_model.base_model_id is None: @@ -125,13 +133,20 @@ async def get_all_models(request, user: UserModel = None): model["name"] = custom_model.name model["info"] = custom_model.model_dump() + # Set action_ids and filter_ids action_ids = [] + filter_ids = [] + if "info" in model and "meta" in model["info"]: action_ids.extend( model["info"]["meta"].get("actionIds", []) ) + filter_ids.extend( + model["info"]["meta"].get("filterIds", []) + ) model["action_ids"] = action_ids + model["filter_ids"] = filter_ids else: models.remove(model) @@ -140,7 +155,9 @@ async def get_all_models(request, user: UserModel = None): ): owned_by = "openai" pipe = None + action_ids = [] + filter_ids = [] for model in models: if ( @@ -154,9 +171,13 @@ async def get_all_models(request, user: UserModel = None): if custom_model.meta: meta = custom_model.meta.model_dump() + if "actionIds" in meta: action_ids.extend(meta["actionIds"]) + if "filterIds" in meta: + filter_ids.extend(meta["filterIds"]) + models.append( { "id": f"{custom_model.id}", @@ -168,6 +189,7 @@ async def get_all_models(request, user: UserModel = None): "preset": True, **({"pipe": pipe} if pipe is not None else {}), "action_ids": action_ids, + "filter_ids": filter_ids, } ) @@ -197,6 +219,17 @@ async def get_all_models(request, user: UserModel = None): } ] + # Process filter_ids to get the filters + def get_filter_items_from_module(function, module): + return [ + { + "id": function.id, + "name": function.name, + "description": function.meta.description, + "icon_url": function.meta.manifest.get("icon_url", None), + } + ] + def get_function_module_by_id(function_id): if function_id in request.app.state.FUNCTIONS: function_module = request.app.state.FUNCTIONS[function_id] @@ -211,6 +244,11 @@ async def get_all_models(request, user: UserModel = None): for action_id in list(set(model.pop("action_ids", []) + global_action_ids)) if action_id in enabled_action_ids ] + filter_ids = [ + filter_id + for filter_id in list(set(model.pop("filter_ids", []) + global_filter_ids)) + if filter_id in enabled_filter_ids + ] model["actions"] = [] for action_id in action_ids: @@ -222,6 +260,20 @@ async def get_all_models(request, user: UserModel = None): model["actions"].extend( get_action_items_from_module(action_function, function_module) ) + + model["filters"] = [] + for filter_id in filter_ids: + filter_function = Functions.get_function_by_id(filter_id) + if filter_function is None: + raise Exception(f"Filter not found: {filter_id}") + + function_module = get_function_module_by_id(filter_id) + + if getattr(function_module, "toggle", None): + model["filters"].extend( + get_filter_items_from_module(filter_function, function_module) + ) + log.debug(f"get_all_models() returned {len(models)} models") request.app.state.MODELS = {model["id"]: model for model in models} From e37433f2b14f16f511c9c1de3bcd46a324e21e54 Mon Sep 17 00:00:00 2001 From: Timothy Jaeryang Baek Date: Fri, 16 May 2025 23:21:08 +0400 Subject: [PATCH 081/100] refac --- src/lib/components/chat/Chat.svelte | 13 ++++++ src/lib/components/chat/MessageInput.svelte | 52 ++++++++++++++++++--- 2 files changed, 59 insertions(+), 6 deletions(-) diff --git a/src/lib/components/chat/Chat.svelte b/src/lib/components/chat/Chat.svelte index b162d0522..5e5fadf50 100644 --- a/src/lib/components/chat/Chat.svelte +++ b/src/lib/components/chat/Chat.svelte @@ -195,10 +195,12 @@ $: if (selectedModels) { setToolIds(); + setFilterIds(); } $: if (atSelectedModel || selectedModels) { setToolIds(); + setFilterIds(); } const setToolIds = async () => { @@ -218,6 +220,17 @@ } }; + const setFilterIds = async () => { + if (selectedModels.length !== 1 && !atSelectedModel) { + selectedFilterIds = []; + } + + const model = atSelectedModel ?? $models.find((m) => m.id === selectedModels[0]); + if (model) { + selectedFilterIds = model?.info?.meta?.filterIds ?? []; + } + }; + const showMessage = async (message) => { const _chatId = JSON.parse(JSON.stringify($chatId)); let _messageId = JSON.parse(JSON.stringify(message.id)); diff --git a/src/lib/components/chat/MessageInput.svelte b/src/lib/components/chat/MessageInput.svelte index 5d9bc4916..b46b21cbe 100644 --- a/src/lib/components/chat/MessageInput.svelte +++ b/src/lib/components/chat/MessageInput.svelte @@ -49,9 +49,9 @@ import Headphone from '../icons/Headphone.svelte'; import GlobeAlt from '../icons/GlobeAlt.svelte'; import Photo from '../icons/Photo.svelte'; - import LightBlub from '../icons/LightBlub.svelte'; import Wrench from '../icons/Wrench.svelte'; import CommandLine from '../icons/CommandLine.svelte'; + import Sparkles from '../icons/Sparkles.svelte'; import { KokoroWorker } from '$lib/workers/KokoroWorker'; @@ -120,10 +120,10 @@ (model) => $models.find((m) => m.id === model)?.info?.meta?.capabilities?.vision ?? true ); - let reasoningCapableModels = []; - $: reasoningCapableModels = $models - .filter((model) => model.info?.meta?.capabilities?.reasoning ?? false) - .map((model) => model.id); + let toggleFilters = []; + $: toggleFilters = (atSelectedModel?.id || selectedModels) + .map((id) => ($models.find((model) => model.id === id) || {})?.filters ?? []) + .reduce((acc, filters) => acc.filter((f1) => filters.some((f2) => f2.id === f1.id))); const scrollToBottom = () => { const element = document.getElementById('messages-container'); @@ -363,7 +363,6 @@ - {#if loaded} @@ -1151,6 +1150,47 @@ {/if} {#if $_user} + {#each toggleFilters as filter, filterIdx (filter.id)} + + + + {/each} + {#if $config?.features?.enable_web_search && ($_user.role === 'admin' || $_user?.permissions?.features?.web_search)} -
+
-
+
+ + + + {#if contents[selectedContentIdx].type === 'iframe'}
diff --git a/src/lib/components/workspace/Models/ModelEditor.svelte b/src/lib/components/workspace/Models/ModelEditor.svelte index 6b348a57f..c8934eb00 100644 --- a/src/lib/components/workspace/Models/ModelEditor.svelte +++ b/src/lib/components/workspace/Models/ModelEditor.svelte @@ -77,9 +77,11 @@ }; let capabilities = { vision: true, + web_search: true, + image_generation: true, + code_interpreter: true, citations: true, - usage: undefined, - reasoning: false + usage: undefined }; let knowledge = []; From 6692fb2181f689d13e6a241c4727067a00f1040a Mon Sep 17 00:00:00 2001 From: Timothy Jaeryang Baek Date: Sat, 17 May 2025 01:00:37 +0400 Subject: [PATCH 091/100] chore: format --- .../open_webui/retrieval/vector/factory.py | 4 ++- package-lock.json | 4 +-- package.json | 2 +- src/lib/components/icons/LightBulb.svelte | 28 +++++++++---------- src/lib/i18n/locales/ar-BH/translation.json | 7 +++++ src/lib/i18n/locales/ar/translation.json | 7 +++++ src/lib/i18n/locales/bg-BG/translation.json | 7 +++++ src/lib/i18n/locales/bn-BD/translation.json | 7 +++++ src/lib/i18n/locales/bo-TB/translation.json | 7 +++++ src/lib/i18n/locales/ca-ES/translation.json | 7 +++++ src/lib/i18n/locales/ceb-PH/translation.json | 7 +++++ src/lib/i18n/locales/cs-CZ/translation.json | 7 +++++ src/lib/i18n/locales/da-DK/translation.json | 7 +++++ src/lib/i18n/locales/de-DE/translation.json | 7 +++++ src/lib/i18n/locales/dg-DG/translation.json | 7 +++++ src/lib/i18n/locales/el-GR/translation.json | 7 +++++ src/lib/i18n/locales/en-GB/translation.json | 7 +++++ src/lib/i18n/locales/en-US/translation.json | 7 +++++ src/lib/i18n/locales/es-ES/translation.json | 7 +++++ src/lib/i18n/locales/et-EE/translation.json | 7 +++++ src/lib/i18n/locales/eu-ES/translation.json | 7 +++++ src/lib/i18n/locales/fa-IR/translation.json | 7 +++++ src/lib/i18n/locales/fi-FI/translation.json | 7 +++++ src/lib/i18n/locales/fr-CA/translation.json | 7 +++++ src/lib/i18n/locales/fr-FR/translation.json | 7 +++++ src/lib/i18n/locales/he-IL/translation.json | 7 +++++ src/lib/i18n/locales/hi-IN/translation.json | 7 +++++ src/lib/i18n/locales/hr-HR/translation.json | 7 +++++ src/lib/i18n/locales/hu-HU/translation.json | 7 +++++ src/lib/i18n/locales/id-ID/translation.json | 7 +++++ src/lib/i18n/locales/ie-GA/translation.json | 7 +++++ src/lib/i18n/locales/it-IT/translation.json | 7 +++++ src/lib/i18n/locales/ja-JP/translation.json | 7 +++++ src/lib/i18n/locales/ka-GE/translation.json | 7 +++++ src/lib/i18n/locales/ko-KR/translation.json | 7 +++++ src/lib/i18n/locales/lt-LT/translation.json | 7 +++++ src/lib/i18n/locales/ms-MY/translation.json | 7 +++++ src/lib/i18n/locales/nb-NO/translation.json | 7 +++++ src/lib/i18n/locales/nl-NL/translation.json | 7 +++++ src/lib/i18n/locales/pa-IN/translation.json | 7 +++++ src/lib/i18n/locales/pl-PL/translation.json | 7 +++++ src/lib/i18n/locales/pt-BR/translation.json | 7 +++++ src/lib/i18n/locales/pt-PT/translation.json | 7 +++++ src/lib/i18n/locales/ro-RO/translation.json | 7 +++++ src/lib/i18n/locales/ru-RU/translation.json | 7 +++++ src/lib/i18n/locales/sk-SK/translation.json | 7 +++++ src/lib/i18n/locales/sr-RS/translation.json | 7 +++++ src/lib/i18n/locales/sv-SE/translation.json | 7 +++++ src/lib/i18n/locales/th-TH/translation.json | 7 +++++ src/lib/i18n/locales/tk-TW/translation.json | 7 +++++ src/lib/i18n/locales/tr-TR/translation.json | 7 +++++ src/lib/i18n/locales/uk-UA/translation.json | 7 +++++ src/lib/i18n/locales/ur-PK/translation.json | 7 +++++ src/lib/i18n/locales/vi-VN/translation.json | 7 +++++ src/lib/i18n/locales/zh-CN/translation.json | 9 ++++-- src/lib/i18n/locales/zh-TW/translation.json | 7 +++++ 56 files changed, 384 insertions(+), 20 deletions(-) diff --git a/backend/open_webui/retrieval/vector/factory.py b/backend/open_webui/retrieval/vector/factory.py index 84126724a..72a3f6ceb 100644 --- a/backend/open_webui/retrieval/vector/factory.py +++ b/backend/open_webui/retrieval/vector/factory.py @@ -17,7 +17,9 @@ class Vector: return MilvusClient() case VectorType.QDRANT: if ENABLE_QDRANT_MULTITENANCY_MODE: - from open_webui.retrieval.vector.dbs.qdrant_multitenancy import QdrantClient + from open_webui.retrieval.vector.dbs.qdrant_multitenancy import ( + QdrantClient, + ) return QdrantClient() else: diff --git a/package-lock.json b/package-lock.json index ff0414895..1c3bc8571 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "open-webui", - "version": "0.6.9", + "version": "0.6.10", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "open-webui", - "version": "0.6.9", + "version": "0.6.10", "dependencies": { "@azure/msal-browser": "^4.5.0", "@codemirror/lang-javascript": "^6.2.2", diff --git a/package.json b/package.json index 9ffa8298e..744315c3b 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "open-webui", - "version": "0.6.9", + "version": "0.6.10", "private": true, "scripts": { "dev": "npm run pyodide:fetch && vite dev --host", diff --git a/src/lib/components/icons/LightBulb.svelte b/src/lib/components/icons/LightBulb.svelte index 119f49f6e..0778e6dad 100644 --- a/src/lib/components/icons/LightBulb.svelte +++ b/src/lib/components/icons/LightBulb.svelte @@ -1,19 +1,19 @@ - - \ No newline at end of file + + diff --git a/src/lib/i18n/locales/ar-BH/translation.json b/src/lib/i18n/locales/ar-BH/translation.json index 0c1dd7a8f..883f497a5 100644 --- a/src/lib/i18n/locales/ar-BH/translation.json +++ b/src/lib/i18n/locales/ar-BH/translation.json @@ -186,6 +186,7 @@ "Chunk Size": "Chunk حجم", "Ciphers": "", "Citation": "اقتباس", + "Citations": "", "Clear memory": "", "Clear Memory": "", "click here": "", @@ -786,6 +787,9 @@ "Model {{name}} is now hidden": "", "Model {{name}} is now visible": "", "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": "", @@ -927,6 +931,7 @@ "Prefix ID": "", "Prefix ID is used to avoid conflicts with other connections by adding a prefix to the model IDs - leave empty to disable": "", "Presence Penalty": "", + "Preview": "", "Previous 30 days": "أخر 30 يوم", "Previous 7 days": "أخر 7 أيام", "Private": "", @@ -1247,6 +1252,7 @@ "Upload Progress": "جاري التحميل", "URL": "", "URL Mode": "رابط الموديل", + "Usage": "", "Use '#' in the prompt input to load and include your knowledge.": "", "Use Gravatar": "Gravatar أستخدم", "Use groups to group your users and assign permissions.": "", @@ -1276,6 +1282,7 @@ "View Replies": "", "View Result from **{{NAME}}**": "", "Visibility": "", + "Vision": "", "Voice": "", "Voice Input": "", "Warning": "تحذير", diff --git a/src/lib/i18n/locales/ar/translation.json b/src/lib/i18n/locales/ar/translation.json index 8a727be93..3a1e2d15f 100644 --- a/src/lib/i18n/locales/ar/translation.json +++ b/src/lib/i18n/locales/ar/translation.json @@ -186,6 +186,7 @@ "Chunk Size": "حجم القطعة", "Ciphers": "التشفيرات", "Citation": "اقتباس", + "Citations": "", "Clear memory": "مسح الذاكرة", "Clear Memory": "مسح الذاكرة", "click here": "انقر هنا", @@ -786,6 +787,9 @@ "Model {{name}} is now hidden": "", "Model {{name}} is now visible": "", "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": "تصفية النماذج", @@ -927,6 +931,7 @@ "Prefix ID": "معرف البادئة", "Prefix ID is used to avoid conflicts with other connections by adding a prefix to the model IDs - leave empty to disable": "يُستخدم معرف البادئة لتفادي التعارض مع الاتصالات الأخرى من خلال إضافة بادئة إلى معرفات النماذج – اتركه فارغًا لتعطيله", "Presence Penalty": "عقوبة التكرار", + "Preview": "", "Previous 30 days": "أخر 30 يوم", "Previous 7 days": "أخر 7 أيام", "Private": "", @@ -1247,6 +1252,7 @@ "Upload Progress": "جاري التحميل", "URL": "الرابط", "URL Mode": "رابط الموديل", + "Usage": "", "Use '#' in the prompt input to load and include your knowledge.": "استخدم الرمز '#' في خانة التوجيه لتحميل وإدراج المعرفة الخاصة بك.", "Use Gravatar": "Gravatar أستخدم", "Use groups to group your users and assign permissions.": "استخدم المجموعات لتجميع المستخدمين وتحديد الصلاحيات.", @@ -1276,6 +1282,7 @@ "View Replies": "عرض الردود", "View Result from **{{NAME}}**": "", "Visibility": "مستوى الظهور", + "Vision": "", "Voice": "الصوت", "Voice Input": "إدخال صوتي", "Warning": "تحذير", diff --git a/src/lib/i18n/locales/bg-BG/translation.json b/src/lib/i18n/locales/bg-BG/translation.json index 69e290dc7..4afe9e946 100644 --- a/src/lib/i18n/locales/bg-BG/translation.json +++ b/src/lib/i18n/locales/bg-BG/translation.json @@ -186,6 +186,7 @@ "Chunk Size": "Размер на чънк", "Ciphers": "Шифри", "Citation": "Цитат", + "Citations": "", "Clear memory": "Изчистване на паметта", "Clear Memory": "", "click here": "натиснете тук", @@ -786,6 +787,9 @@ "Model {{name}} is now hidden": "", "Model {{name}} is now visible": "", "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": "Филтриране на модели", @@ -927,6 +931,7 @@ "Prefix ID": "Префикс ID", "Prefix ID is used to avoid conflicts with other connections by adding a prefix to the model IDs - leave empty to disable": "Префикс ID се използва за избягване на конфликти с други връзки чрез добавяне на префикс към ID-тата на моделите - оставете празно, за да деактивирате", "Presence Penalty": "Наказание за присъствие", + "Preview": "", "Previous 30 days": "Предишните 30 дни", "Previous 7 days": "Предишните 7 дни", "Private": "", @@ -1247,6 +1252,7 @@ "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.": "Използвайте групи, за да групирате вашите потребители и да присвоите разрешения.", @@ -1276,6 +1282,7 @@ "View Replies": "Преглед на отговорите", "View Result from **{{NAME}}**": "", "Visibility": "Видимост", + "Vision": "", "Voice": "Глас", "Voice Input": "Гласов вход", "Warning": "Предупреждение", diff --git a/src/lib/i18n/locales/bn-BD/translation.json b/src/lib/i18n/locales/bn-BD/translation.json index e12651f76..f8c5e74e3 100644 --- a/src/lib/i18n/locales/bn-BD/translation.json +++ b/src/lib/i18n/locales/bn-BD/translation.json @@ -186,6 +186,7 @@ "Chunk Size": "চাঙ্ক সাইজ", "Ciphers": "", "Citation": "উদ্ধৃতি", + "Citations": "", "Clear memory": "", "Clear Memory": "", "click here": "", @@ -786,6 +787,9 @@ "Model {{name}} is now hidden": "", "Model {{name}} is now visible": "", "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": "", @@ -927,6 +931,7 @@ "Prefix ID": "", "Prefix ID is used to avoid conflicts with other connections by adding a prefix to the model IDs - leave empty to disable": "", "Presence Penalty": "", + "Preview": "", "Previous 30 days": "পূর্ব ৩০ দিন", "Previous 7 days": "পূর্ব ৭ দিন", "Private": "", @@ -1247,6 +1252,7 @@ "Upload Progress": "আপলোড হচ্ছে", "URL": "", "URL Mode": "ইউআরএল মোড", + "Usage": "", "Use '#' in the prompt input to load and include your knowledge.": "", "Use Gravatar": "Gravatar ব্যবহার করুন", "Use groups to group your users and assign permissions.": "", @@ -1276,6 +1282,7 @@ "View Replies": "", "View Result from **{{NAME}}**": "", "Visibility": "", + "Vision": "", "Voice": "", "Voice Input": "", "Warning": "সতর্কীকরণ", diff --git a/src/lib/i18n/locales/bo-TB/translation.json b/src/lib/i18n/locales/bo-TB/translation.json index 16f4afeb3..392e547d8 100644 --- a/src/lib/i18n/locales/bo-TB/translation.json +++ b/src/lib/i18n/locales/bo-TB/translation.json @@ -186,6 +186,7 @@ "Chunk Size": "དུམ་བུའི་ཆེ་ཆུང་།", "Ciphers": "གསང་སྦྱོར།", "Citation": "ལུང་འདྲེན།", + "Citations": "", "Clear memory": "དྲན་ཤེས་གཙང་སེལ།", "Clear Memory": "དྲན་ཤེས་གཙང་སེལ།", "click here": "འདིར་མནན་པ།", @@ -786,6 +787,9 @@ "Model {{name}} is now hidden": "དཔེ་དབྱིབས། {{name}} ད་ལྟ་སྦས་ཡོད།", "Model {{name}} is now visible": "དཔེ་དབྱིབས། {{name}} ད་ལྟ་མཐོང་ཐུབ།", "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": "དཔེ་དབྱིབས་འཚག་མ།", @@ -927,6 +931,7 @@ "Prefix ID": "སྔོན་སྦྱོར་ ID", "Prefix ID is used to avoid conflicts with other connections by adding a prefix to the model IDs - leave empty to disable": "སྔོན་སྦྱོར་ ID ནི་དཔེ་དབྱིབས་ཀྱི་ IDs ལ་སྔོན་སྦྱོར་ཞིག་སྣོན་ནས་སྦྲེལ་མཐུད་གཞན་དང་གདོང་ཐུག་ལས་གཡོལ་བར་བེད་སྤྱོད་བྱེད། - ནུས་མེད་བཏང་བར་སྟོང་པ་བཞག་པ།", "Presence Penalty": "ད་ཡོད་ཀྱི་ཆད་པ།", + "Preview": "", "Previous 30 days": "ཉིན་ ༣༠ སྔོན་མ།", "Previous 7 days": "ཉིན་ ༧ སྔོན་མ།", "Private": "སྒེར།", @@ -1247,6 +1252,7 @@ "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.": "ཁྱེད་ཀྱི་བེད་སྤྱོད་མཁན་ཚོགས་པ་བཟོ་བ་དང་དབང་ཚད་སྤྲོད་པར་ཚོགས་པ་བེད་སྤྱོད་གཏོང་བ།", @@ -1276,6 +1282,7 @@ "View Replies": "ལན་ལྟ་བ།", "View Result from **{{NAME}}**": "", "Visibility": "མཐོང་ཐུབ་རང་བཞིན།", + "Vision": "", "Voice": "སྐད།", "Voice Input": "སྐད་ཀྱི་ནང་འཇུག", "Warning": "ཉེན་བརྡ།", diff --git a/src/lib/i18n/locales/ca-ES/translation.json b/src/lib/i18n/locales/ca-ES/translation.json index b39464414..58a1cf1bb 100644 --- a/src/lib/i18n/locales/ca-ES/translation.json +++ b/src/lib/i18n/locales/ca-ES/translation.json @@ -186,6 +186,7 @@ "Chunk Size": "Mida del bloc", "Ciphers": "Xifradors", "Citation": "Cita", + "Citations": "", "Clear memory": "Esborrar la memòria", "Clear Memory": "Esborrar la memòria", "click here": "prem aquí", @@ -786,6 +787,9 @@ "Model {{name}} is now hidden": "El model {{name}} està ara amagat", "Model {{name}} is now visible": "El model {{name}} està ara visible", "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 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", @@ -927,6 +931,7 @@ "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.", "Presence Penalty": "Penalització de presència", + "Preview": "", "Previous 30 days": "30 dies anteriors", "Previous 7 days": "7 dies anteriors", "Private": "Privat", @@ -1247,6 +1252,7 @@ "Upload Progress": "Progrés de càrrega", "URL": "URL", "URL Mode": "Mode URL", + "Usage": "", "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.", @@ -1276,6 +1282,7 @@ "View Replies": "Veure les respostes", "View Result from **{{NAME}}**": "Veure el resultat de **{{NAME}}**", "Visibility": "Visibilitat", + "Vision": "", "Voice": "Veu", "Voice Input": "Entrada de veu", "Warning": "Avís", diff --git a/src/lib/i18n/locales/ceb-PH/translation.json b/src/lib/i18n/locales/ceb-PH/translation.json index 4477de603..400610b23 100644 --- a/src/lib/i18n/locales/ceb-PH/translation.json +++ b/src/lib/i18n/locales/ceb-PH/translation.json @@ -186,6 +186,7 @@ "Chunk Size": "Gidak-on sa block", "Ciphers": "", "Citation": "Mga kinutlo", + "Citations": "", "Clear memory": "", "Clear Memory": "", "click here": "", @@ -786,6 +787,9 @@ "Model {{name}} is now hidden": "", "Model {{name}} is now visible": "", "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": "", @@ -927,6 +931,7 @@ "Prefix ID": "", "Prefix ID is used to avoid conflicts with other connections by adding a prefix to the model IDs - leave empty to disable": "", "Presence Penalty": "", + "Preview": "", "Previous 30 days": "", "Previous 7 days": "", "Private": "", @@ -1247,6 +1252,7 @@ "Upload Progress": "Pag-uswag sa Pag-upload", "URL": "", "URL Mode": "URL mode", + "Usage": "", "Use '#' in the prompt input to load and include your knowledge.": "", "Use Gravatar": "Paggamit sa Gravatar", "Use groups to group your users and assign permissions.": "", @@ -1276,6 +1282,7 @@ "View Replies": "", "View Result from **{{NAME}}**": "", "Visibility": "", + "Vision": "", "Voice": "", "Voice Input": "", "Warning": "", diff --git a/src/lib/i18n/locales/cs-CZ/translation.json b/src/lib/i18n/locales/cs-CZ/translation.json index 42c0ad320..83699a737 100644 --- a/src/lib/i18n/locales/cs-CZ/translation.json +++ b/src/lib/i18n/locales/cs-CZ/translation.json @@ -186,6 +186,7 @@ "Chunk Size": "", "Ciphers": "", "Citation": "Odkaz", + "Citations": "", "Clear memory": "Vymazat paměť", "Clear Memory": "", "click here": "", @@ -786,6 +787,9 @@ "Model {{name}} is now hidden": "", "Model {{name}} is now visible": "", "Model accepts image inputs": "Model přijímá vstupy ve formě obrázků", + "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 byl úspěšně vytvořen!", "Model filesystem path detected. Model shortname is required for update, cannot continue.": "Detekována cesta v\u00a0souborovém systému. Je vyžadován krátký název modelu pro aktualizaci, nelze pokračovat.", "Model Filtering": "", @@ -927,6 +931,7 @@ "Prefix ID": "", "Prefix ID is used to avoid conflicts with other connections by adding a prefix to the model IDs - leave empty to disable": "", "Presence Penalty": "", + "Preview": "", "Previous 30 days": "Předchozích 30 dnů", "Previous 7 days": "Předchozích 7 dní", "Private": "", @@ -1247,6 +1252,7 @@ "Upload Progress": "Průběh nahrávání", "URL": "", "URL Mode": "Režim URL", + "Usage": "", "Use '#' in the prompt input to load and include your knowledge.": "Použijte '#' ve vstupu příkazu k načtení a zahrnutí vašich znalostí.", "Use Gravatar": "Použití Gravatar", "Use groups to group your users and assign permissions.": "", @@ -1276,6 +1282,7 @@ "View Replies": "", "View Result from **{{NAME}}**": "", "Visibility": "Viditelnost", + "Vision": "", "Voice": "Hlas", "Voice Input": "Hlasový vstup", "Warning": "Varování", diff --git a/src/lib/i18n/locales/da-DK/translation.json b/src/lib/i18n/locales/da-DK/translation.json index ef889bd6e..83fb71170 100644 --- a/src/lib/i18n/locales/da-DK/translation.json +++ b/src/lib/i18n/locales/da-DK/translation.json @@ -186,6 +186,7 @@ "Chunk Size": "Chunk størrelse", "Ciphers": "Ciphers", "Citation": "Citat", + "Citations": "", "Clear memory": "Slet hukommelse", "Clear Memory": "Slet hukommelse", "click here": "klik her", @@ -786,6 +787,9 @@ "Model {{name}} is now hidden": "", "Model {{name}} is now visible": "", "Model accepts image inputs": "Model accepterer billedinput", + "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 oprettet!", "Model filesystem path detected. Model shortname is required for update, cannot continue.": "Model filsystemsti registreret. Modelkortnavn er påkrævet til opdatering, kan ikke fortsætte.", "Model Filtering": "", @@ -927,6 +931,7 @@ "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 bruges til at undgå konflikter med andre forbindelser ved at tilføje et prefix til model-ID'erne - lad være tom for at deaktivere", "Presence Penalty": "", + "Preview": "", "Previous 30 days": "Seneste 30 dage", "Previous 7 days": "Seneste 7 dage", "Private": "Privat", @@ -1247,6 +1252,7 @@ "Upload Progress": "Uploadfremdrift", "URL": "URL", "URL Mode": "URL-tilstand", + "Usage": "", "Use '#' in the prompt input to load and include your knowledge.": "Brug '#' i promptinput for at indlæse og inkludere din viden.", "Use Gravatar": "Brug Gravatar", "Use groups to group your users and assign permissions.": "Brug grupper til at gruppere dine brugere og tildele rettigheder.", @@ -1276,6 +1282,7 @@ "View Replies": "Vis svar", "View Result from **{{NAME}}**": "Vis resultat fra **{{NAME}}**", "Visibility": "Synlighed", + "Vision": "", "Voice": "Stemme", "Voice Input": "Stemme Input", "Warning": "Advarsel", diff --git a/src/lib/i18n/locales/de-DE/translation.json b/src/lib/i18n/locales/de-DE/translation.json index 2f7d7b1e6..6bf804f89 100644 --- a/src/lib/i18n/locales/de-DE/translation.json +++ b/src/lib/i18n/locales/de-DE/translation.json @@ -186,6 +186,7 @@ "Chunk Size": "Blockgröße", "Ciphers": "Verschlüsselungen", "Citation": "Zitate", + "Citations": "", "Clear memory": "Alle Erinnerungen entfernen", "Clear Memory": "Alle Erinnerungen entfernen", "click here": "hier klicken", @@ -786,6 +787,9 @@ "Model {{name}} is now hidden": "Modell {{name}} ist jetzt versteckt.", "Model {{name}} is now visible": "Modell {{name}} ist jetzt sichtbar.", "Model accepts image inputs": "Modell akzeptiert Bildeingaben", + "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!": "Modell erfolgreich erstellt!", "Model filesystem path detected. Model shortname is required for update, cannot continue.": "Modell-Dateisystempfad erkannt. Modellkurzname ist für das Update erforderlich, Fortsetzung nicht möglich.", "Model Filtering": "Modellfilterung", @@ -927,6 +931,7 @@ "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", "Presence Penalty": "", + "Preview": "", "Previous 30 days": "Vorherige 30 Tage", "Previous 7 days": "Vorherige 7 Tage", "Private": "Privat", @@ -1247,6 +1252,7 @@ "Upload Progress": "Hochladefortschritt", "URL": "URL", "URL Mode": "URL-Modus", + "Usage": "", "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.", @@ -1276,6 +1282,7 @@ "View Replies": "Antworten anzeigen", "View Result from **{{NAME}}**": "", "Visibility": "Sichtbarkeit", + "Vision": "", "Voice": "Stimme", "Voice Input": "Spracheingabe", "Warning": "Warnung", diff --git a/src/lib/i18n/locales/dg-DG/translation.json b/src/lib/i18n/locales/dg-DG/translation.json index d110e0491..7854dbc3d 100644 --- a/src/lib/i18n/locales/dg-DG/translation.json +++ b/src/lib/i18n/locales/dg-DG/translation.json @@ -186,6 +186,7 @@ "Chunk Size": "Chunk Size", "Ciphers": "", "Citation": "", + "Citations": "", "Clear memory": "", "Clear Memory": "", "click here": "", @@ -786,6 +787,9 @@ "Model {{name}} is now hidden": "", "Model {{name}} is now visible": "", "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 filesystem bark detected. Model shortname is required for update, cannot continue.", "Model Filtering": "", @@ -927,6 +931,7 @@ "Prefix ID": "", "Prefix ID is used to avoid conflicts with other connections by adding a prefix to the model IDs - leave empty to disable": "", "Presence Penalty": "", + "Preview": "", "Previous 30 days": "", "Previous 7 days": "", "Private": "", @@ -1247,6 +1252,7 @@ "Upload Progress": "Upload Progress much progress", "URL": "", "URL Mode": "URL Mode much mode", + "Usage": "", "Use '#' in the prompt input to load and include your knowledge.": "", "Use Gravatar": "Use Gravatar much avatar", "Use groups to group your users and assign permissions.": "", @@ -1276,6 +1282,7 @@ "View Replies": "", "View Result from **{{NAME}}**": "", "Visibility": "", + "Vision": "", "Voice": "", "Voice Input": "", "Warning": "", diff --git a/src/lib/i18n/locales/el-GR/translation.json b/src/lib/i18n/locales/el-GR/translation.json index 4941e702c..bebceb047 100644 --- a/src/lib/i18n/locales/el-GR/translation.json +++ b/src/lib/i18n/locales/el-GR/translation.json @@ -186,6 +186,7 @@ "Chunk Size": "Μέγεθος Τμημάτων", "Ciphers": "Κρυπτογραφήσεις", "Citation": "Παράθεση", + "Citations": "", "Clear memory": "Καθαρισμός μνήμης", "Clear Memory": "", "click here": "κλικ εδώ", @@ -786,6 +787,9 @@ "Model {{name}} is now hidden": "", "Model {{name}} is now visible": "", "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": "Φιλτράρισμα Μοντέλων", @@ -927,6 +931,7 @@ "Prefix ID": "ID Προθέματος", "Prefix ID is used to avoid conflicts with other connections by adding a prefix to the model IDs - leave empty to disable": "Το ID Προθέματος χρησιμοποιείται για να αποφεύγονται συγκρούσεις με άλλες συνδέσεις προσθέτοντας ένα πρόθεμα στα IDs των μοντέλων - αφήστε κενό για απενεργοποίηση", "Presence Penalty": "", + "Preview": "", "Previous 30 days": "Προηγούμενες 30 ημέρες", "Previous 7 days": "Προηγούμενες 7 ημέρες", "Private": "", @@ -1247,6 +1252,7 @@ "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.": "Χρησιμοποιήστε ομάδες για να ομαδοποιήσετε τους χρήστες σας και να αναθέσετε δικαιώματα.", @@ -1276,6 +1282,7 @@ "View Replies": "", "View Result from **{{NAME}}**": "", "Visibility": "Ορατότητα", + "Vision": "", "Voice": "Φωνή", "Voice Input": "Εισαγωγή Φωνής", "Warning": "Προειδοποίηση", diff --git a/src/lib/i18n/locales/en-GB/translation.json b/src/lib/i18n/locales/en-GB/translation.json index c3ec0ae47..6e54c3f10 100644 --- a/src/lib/i18n/locales/en-GB/translation.json +++ b/src/lib/i18n/locales/en-GB/translation.json @@ -186,6 +186,7 @@ "Chunk Size": "", "Ciphers": "", "Citation": "", + "Citations": "", "Clear memory": "", "Clear Memory": "", "click here": "", @@ -786,6 +787,9 @@ "Model {{name}} is now hidden": "", "Model {{name}} is now visible": "", "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": "", @@ -927,6 +931,7 @@ "Prefix ID": "", "Prefix ID is used to avoid conflicts with other connections by adding a prefix to the model IDs - leave empty to disable": "", "Presence Penalty": "", + "Preview": "", "Previous 30 days": "", "Previous 7 days": "", "Private": "", @@ -1247,6 +1252,7 @@ "Upload Progress": "", "URL": "", "URL Mode": "", + "Usage": "", "Use '#' in the prompt input to load and include your knowledge.": "", "Use Gravatar": "", "Use groups to group your users and assign permissions.": "", @@ -1276,6 +1282,7 @@ "View Replies": "", "View Result from **{{NAME}}**": "", "Visibility": "", + "Vision": "", "Voice": "", "Voice Input": "", "Warning": "", diff --git a/src/lib/i18n/locales/en-US/translation.json b/src/lib/i18n/locales/en-US/translation.json index c3ec0ae47..6e54c3f10 100644 --- a/src/lib/i18n/locales/en-US/translation.json +++ b/src/lib/i18n/locales/en-US/translation.json @@ -186,6 +186,7 @@ "Chunk Size": "", "Ciphers": "", "Citation": "", + "Citations": "", "Clear memory": "", "Clear Memory": "", "click here": "", @@ -786,6 +787,9 @@ "Model {{name}} is now hidden": "", "Model {{name}} is now visible": "", "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": "", @@ -927,6 +931,7 @@ "Prefix ID": "", "Prefix ID is used to avoid conflicts with other connections by adding a prefix to the model IDs - leave empty to disable": "", "Presence Penalty": "", + "Preview": "", "Previous 30 days": "", "Previous 7 days": "", "Private": "", @@ -1247,6 +1252,7 @@ "Upload Progress": "", "URL": "", "URL Mode": "", + "Usage": "", "Use '#' in the prompt input to load and include your knowledge.": "", "Use Gravatar": "", "Use groups to group your users and assign permissions.": "", @@ -1276,6 +1282,7 @@ "View Replies": "", "View Result from **{{NAME}}**": "", "Visibility": "", + "Vision": "", "Voice": "", "Voice Input": "", "Warning": "", diff --git a/src/lib/i18n/locales/es-ES/translation.json b/src/lib/i18n/locales/es-ES/translation.json index 9d0c8951b..439f6a6de 100644 --- a/src/lib/i18n/locales/es-ES/translation.json +++ b/src/lib/i18n/locales/es-ES/translation.json @@ -186,6 +186,7 @@ "Chunk Size": "Tamaño de los Fragmentos", "Ciphers": "Cifrado", "Citation": "Cita", + "Citations": "", "Clear memory": "Liberar memoria", "Clear Memory": "Liberar Memoria", "click here": "Pulsar aquí", @@ -786,6 +787,9 @@ "Model {{name}} is now hidden": "", "Model {{name}} is now visible": "", "Model accepts image inputs": "Modelo acepta entradas de imágen", + "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!": "¡Modelo creado correctamente!", "Model filesystem path detected. Model shortname is required for update, cannot continue.": "Detectada ruta del sistema al modelo. Para actualizar se requiere el nombre corto del modelo, no se puede continuar.", "Model Filtering": "Filtrado de modelos", @@ -927,6 +931,7 @@ "Prefix ID": "prefijo ID", "Prefix ID is used to avoid conflicts with other connections by adding a prefix to the model IDs - leave empty to disable": "El prefijo ID se utiliza para evitar conflictos con otras conexiones al añadir un prefijo a los IDs de modelo, dejar vacío para deshabilitarlo", "Presence Penalty": "Penalización de Presencia", + "Preview": "", "Previous 30 days": "30 días previos", "Previous 7 days": "7 días previos", "Private": "Privado", @@ -1247,6 +1252,7 @@ "Upload Progress": "Progreso de la Subida", "URL": "URL", "URL Mode": "Modo URL", + "Usage": "", "Use '#' in the prompt input to load and include your knowledge.": "Utilizar '#' en el prompt para cargar e incluir tu conocimiento.", "Use Gravatar": "Usar Gravatar", "Use groups to group your users and assign permissions.": "Usar grupos para agrupar a usuarios y asignar permisos.", @@ -1276,6 +1282,7 @@ "View Replies": "Ver Respuestas", "View Result from **{{NAME}}**": "", "Visibility": "Visibilidad", + "Vision": "", "Voice": "Voz", "Voice Input": "Entrada de Voz", "Warning": "Aviso", diff --git a/src/lib/i18n/locales/et-EE/translation.json b/src/lib/i18n/locales/et-EE/translation.json index 72ecd8bba..e142903ae 100644 --- a/src/lib/i18n/locales/et-EE/translation.json +++ b/src/lib/i18n/locales/et-EE/translation.json @@ -186,6 +186,7 @@ "Chunk Size": "Tüki suurus", "Ciphers": "Šifrid", "Citation": "Viide", + "Citations": "", "Clear memory": "Tühjenda mälu", "Clear Memory": "Tühjenda mälu", "click here": "klõpsake siia", @@ -786,6 +787,9 @@ "Model {{name}} is now hidden": "", "Model {{name}} is now visible": "", "Model accepts image inputs": "Mudel võtab vastu pilte sisendina", + "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!": "Mudel edukalt loodud!", "Model filesystem path detected. Model shortname is required for update, cannot continue.": "Tuvastati mudeli failisüsteemi tee. Uuendamiseks on vajalik mudeli lühinimi, ei saa jätkata.", "Model Filtering": "Mudeli filtreerimine", @@ -927,6 +931,7 @@ "Prefix ID": "Prefiksi ID", "Prefix ID is used to avoid conflicts with other connections by adding a prefix to the model IDs - leave empty to disable": "Prefiksi ID-d kasutatakse teiste ühendustega konfliktide vältimiseks, lisades mudeli ID-dele prefiksi - jätke tühjaks keelamiseks", "Presence Penalty": "Kohaloleku karistus", + "Preview": "", "Previous 30 days": "Eelmised 30 päeva", "Previous 7 days": "Eelmised 7 päeva", "Private": "", @@ -1247,6 +1252,7 @@ "Upload Progress": "Üleslaadimise progress", "URL": "URL", "URL Mode": "URL režiim", + "Usage": "", "Use '#' in the prompt input to load and include your knowledge.": "Kasutage '#' vihjete sisendis, et laadida ja kaasata oma teadmised.", "Use Gravatar": "Kasuta Gravatari", "Use groups to group your users and assign permissions.": "Kasutage gruppe oma kasutajate grupeerimiseks ja õiguste määramiseks.", @@ -1276,6 +1282,7 @@ "View Replies": "Vaata vastuseid", "View Result from **{{NAME}}**": "", "Visibility": "Nähtavus", + "Vision": "", "Voice": "Hääl", "Voice Input": "Hääle sisend", "Warning": "Hoiatus", diff --git a/src/lib/i18n/locales/eu-ES/translation.json b/src/lib/i18n/locales/eu-ES/translation.json index f345f2d83..66ec5f4a6 100644 --- a/src/lib/i18n/locales/eu-ES/translation.json +++ b/src/lib/i18n/locales/eu-ES/translation.json @@ -186,6 +186,7 @@ "Chunk Size": "Zati Tamaina", "Ciphers": "Zifratuak", "Citation": "Aipamena", + "Citations": "", "Clear memory": "Garbitu memoria", "Clear Memory": "", "click here": "klikatu hemen", @@ -786,6 +787,9 @@ "Model {{name}} is now hidden": "", "Model {{name}} is now visible": "", "Model accepts image inputs": "Modeloak irudi sarrerak onartzen ditu", + "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!": "Modeloa ongi sortu da!", "Model filesystem path detected. Model shortname is required for update, cannot continue.": "Modeloaren fitxategi sistemaren bidea detektatu da. Modeloaren izen laburra behar da eguneratzeko, ezin da jarraitu.", "Model Filtering": "Modelo iragazketa", @@ -927,6 +931,7 @@ "Prefix ID": "Aurrizki ID", "Prefix ID is used to avoid conflicts with other connections by adding a prefix to the model IDs - leave empty to disable": "Aurrizki IDa erabiltzen da beste konexioekin gatazkak saihesteko modelo IDei aurrizki bat gehituz - utzi hutsik desgaitzeko", "Presence Penalty": "", + "Preview": "", "Previous 30 days": "Aurreko 30 egunak", "Previous 7 days": "Aurreko 7 egunak", "Private": "", @@ -1247,6 +1252,7 @@ "Upload Progress": "Kargaren aurrerapena", "URL": "URLa", "URL Mode": "URL modua", + "Usage": "", "Use '#' in the prompt input to load and include your knowledge.": "Erabili '#' prompt sarreran zure ezagutza kargatu eta sartzeko.", "Use Gravatar": "Erabili Gravatar", "Use groups to group your users and assign permissions.": "Erabili taldeak zure erabiltzaileak taldekatu eta baimenak esleitzeko.", @@ -1276,6 +1282,7 @@ "View Replies": "", "View Result from **{{NAME}}**": "", "Visibility": "Ikusgarritasuna", + "Vision": "", "Voice": "Ahotsa", "Voice Input": "Ahots sarrera", "Warning": "Abisua", diff --git a/src/lib/i18n/locales/fa-IR/translation.json b/src/lib/i18n/locales/fa-IR/translation.json index 934ea68cf..496403633 100644 --- a/src/lib/i18n/locales/fa-IR/translation.json +++ b/src/lib/i18n/locales/fa-IR/translation.json @@ -186,6 +186,7 @@ "Chunk Size": "اندازه تکه", "Ciphers": "رمزها", "Citation": "استناد", + "Citations": "", "Clear memory": "پاک کردن حافظه", "Clear Memory": "پاک کردن حافظه", "click here": "اینجا کلیک کنید", @@ -786,6 +787,9 @@ "Model {{name}} is now hidden": "مدل {{name}} اکنون مخفی است", "Model {{name}} is now visible": "مدل {{name}} اکنون قابل مشاهده است", "Model accepts image inputs": "مدل ورودی تصویر را می\u200cپذیرد", + "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": "فیلتر کردن مدل", @@ -927,6 +931,7 @@ "Prefix ID": "شناسه پیشوند", "Prefix ID is used to avoid conflicts with other connections by adding a prefix to the model IDs - leave empty to disable": "شناسه پیشوند برای جلوگیری از تداخل با سایر اتصالات با افزودن پیشوند به شناسه\u200cهای مدل استفاده می\u200cشود - برای غیرفعال کردن خالی بگذارید", "Presence Penalty": "جریمه حضور", + "Preview": "", "Previous 30 days": "30 روز قبل", "Previous 7 days": "7 روز قبل", "Private": "خصوصی", @@ -1247,6 +1252,7 @@ "Upload Progress": "پیشرفت آپلود", "URL": "آدرس اینترنتی", "URL Mode": "حالت URL", + "Usage": "", "Use '#' in the prompt input to load and include your knowledge.": "از '#' در ورودی پرامپت برای بارگیری و شامل کردن دانش خود استفاده کنید.", "Use Gravatar": "استفاده از گراواتار", "Use groups to group your users and assign permissions.": "از گروه\u200cها برای گروه\u200cبندی کاربران و تخصیص مجوزها استفاده کنید.", @@ -1276,6 +1282,7 @@ "View Replies": "مشاهده پاسخ\u200cها", "View Result from **{{NAME}}**": "مشاهده نتیجه از **{{NAME}}**", "Visibility": "قابلیت مشاهده", + "Vision": "", "Voice": "صوت", "Voice Input": "ورودی صوتی", "Warning": "هشدار", diff --git a/src/lib/i18n/locales/fi-FI/translation.json b/src/lib/i18n/locales/fi-FI/translation.json index cac937d6c..a2744f779 100644 --- a/src/lib/i18n/locales/fi-FI/translation.json +++ b/src/lib/i18n/locales/fi-FI/translation.json @@ -186,6 +186,7 @@ "Chunk Size": "Osien koko", "Ciphers": "Salausalgoritmi", "Citation": "Lähdeviite", + "Citations": "", "Clear memory": "Tyhjennä muisti", "Clear Memory": "Tyhjennä Muisti", "click here": "klikkaa tästä", @@ -786,6 +787,9 @@ "Model {{name}} is now hidden": "Malli {{name}} on nyt piilotettu", "Model {{name}} is now visible": "Malli {{name}} on nyt näkyvissä", "Model accepts image inputs": "Malli hyväksyy kuvasyötteitä", + "Model can execute code and perform calculations": "", + "Model can generate images based on text prompts": "", + "Model can search the web for information": "", "Model created successfully!": "Malli luotu onnistuneesti!", "Model filesystem path detected. Model shortname is required for update, cannot continue.": "Mallin tiedostojärjestelmäpolku havaittu. Mallin lyhytnimi vaaditaan päivitykseen, ei voida jatkaa.", "Model Filtering": "Mallin suodatus", @@ -927,6 +931,7 @@ "Prefix ID": "Etuliite-ID", "Prefix ID is used to avoid conflicts with other connections by adding a prefix to the model IDs - leave empty to disable": "Etuliite-ID:tä käytetään välttämään ristiriidat muiden yhteyksien kanssa lisäämällä etuliite mallitunnuksiin - jätä tyhjäksi, jos haluat ottaa sen pois käytöstä", "Presence Penalty": "", + "Preview": "", "Previous 30 days": "Edelliset 30 päivää", "Previous 7 days": "Edelliset 7 päivää", "Private": "Yksityinen", @@ -1247,6 +1252,7 @@ "Upload Progress": "Latauksen edistyminen", "URL": "URL", "URL Mode": "URL-tila", + "Usage": "", "Use '#' in the prompt input to load and include your knowledge.": "Käytä '#' -merkkiä kehotekenttään ladataksesi ja sisällyttääksesi tietämystäsi.", "Use Gravatar": "Käytä Gravataria", "Use groups to group your users and assign permissions.": "Käytä ryhmiä jäsentääksesi käyttäjiä ja antaaksesi käyttöoikeuksia.", @@ -1276,6 +1282,7 @@ "View Replies": "Näytä vastaukset", "View Result from **{{NAME}}**": "Näytä **{{NAME}}** tulokset", "Visibility": "Näkyvyys", + "Vision": "", "Voice": "Ääni", "Voice Input": "Äänitulolaitteen käyttö", "Warning": "Varoitus", diff --git a/src/lib/i18n/locales/fr-CA/translation.json b/src/lib/i18n/locales/fr-CA/translation.json index ee9cc080a..765586d84 100644 --- a/src/lib/i18n/locales/fr-CA/translation.json +++ b/src/lib/i18n/locales/fr-CA/translation.json @@ -186,6 +186,7 @@ "Chunk Size": "Taille de bloc", "Ciphers": "", "Citation": "Citation", + "Citations": "", "Clear memory": "Libérer la mémoire", "Clear Memory": "", "click here": "", @@ -786,6 +787,9 @@ "Model {{name}} is now hidden": "", "Model {{name}} is now visible": "", "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!": "Le modèle a été créé avec succès !", "Model filesystem path detected. Model shortname is required for update, cannot continue.": "Chemin du système de fichiers de modèle détecté. Le nom court du modèle est requis pour la mise à jour, l'opération ne peut pas être poursuivie.", "Model Filtering": "", @@ -927,6 +931,7 @@ "Prefix ID": "", "Prefix ID is used to avoid conflicts with other connections by adding a prefix to the model IDs - leave empty to disable": "", "Presence Penalty": "", + "Preview": "", "Previous 30 days": "30 derniers jours", "Previous 7 days": "7 derniers jours", "Private": "", @@ -1247,6 +1252,7 @@ "Upload Progress": "Progression de l'envoi", "URL": "", "URL Mode": "Mode d'URL", + "Usage": "", "Use '#' in the prompt input to load and include your knowledge.": "", "Use Gravatar": "Utilisez Gravatar", "Use groups to group your users and assign permissions.": "", @@ -1276,6 +1282,7 @@ "View Replies": "", "View Result from **{{NAME}}**": "", "Visibility": "", + "Vision": "", "Voice": "Voix", "Voice Input": "", "Warning": "Avertissement !", diff --git a/src/lib/i18n/locales/fr-FR/translation.json b/src/lib/i18n/locales/fr-FR/translation.json index 884107b3c..1bf3e346e 100644 --- a/src/lib/i18n/locales/fr-FR/translation.json +++ b/src/lib/i18n/locales/fr-FR/translation.json @@ -186,6 +186,7 @@ "Chunk Size": "Taille des chunks", "Ciphers": "Chiffres", "Citation": "Citation", + "Citations": "", "Clear memory": "Effacer la mémoire", "Clear Memory": "Effacer la mémoire", "click here": "cliquez ici", @@ -786,6 +787,9 @@ "Model {{name}} is now hidden": "Le modèle {{name}} est maintenant masqué", "Model {{name}} is now visible": "Le modèle {{name}} est maintenant visible", "Model accepts image inputs": "Le modèle accepte les images en entrée", + "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!": "Le modèle a été créé avec succès !", "Model filesystem path detected. Model shortname is required for update, cannot continue.": "Chemin du système de fichiers de modèle détecté. Le nom court du modèle est requis pour la mise à jour, l'opération ne peut pas être poursuivie.", "Model Filtering": "Filtrage de modèle", @@ -927,6 +931,7 @@ "Prefix ID": "ID de préfixe", "Prefix ID is used to avoid conflicts with other connections by adding a prefix to the model IDs - leave empty to disable": "Le préfixe ID est utilisé pour éviter les conflits avec d'autres connexions en ajoutant un préfixe aux ID de modèle - laissez vide pour désactiver", "Presence Penalty": "Pénalité de présence", + "Preview": "", "Previous 30 days": "30 derniers jours", "Previous 7 days": "7 derniers jours", "Private": "Privé", @@ -1247,6 +1252,7 @@ "Upload Progress": "Progression de l'envoi", "URL": "URL", "URL Mode": "Mode d'URL", + "Usage": "", "Use '#' in the prompt input to load and include your knowledge.": "Utilisez '#' dans la zone de saisie du prompt pour charger et inclure vos connaissances.", "Use Gravatar": "Utiliser Gravatar", "Use groups to group your users and assign permissions.": "Utilisez des groupes pour regrouper vos utilisateurs et attribuer des permissions.", @@ -1276,6 +1282,7 @@ "View Replies": "Voir les réponses", "View Result from **{{NAME}}**": "Voir le résultat de **{{NAME}}**", "Visibility": "Visibilité", + "Vision": "", "Voice": "Voix", "Voice Input": "Saisie vocale", "Warning": "Avertissement", diff --git a/src/lib/i18n/locales/he-IL/translation.json b/src/lib/i18n/locales/he-IL/translation.json index 06c0f253a..85abce146 100644 --- a/src/lib/i18n/locales/he-IL/translation.json +++ b/src/lib/i18n/locales/he-IL/translation.json @@ -186,6 +186,7 @@ "Chunk Size": "גודל נתונים", "Ciphers": "", "Citation": "ציטוט", + "Citations": "", "Clear memory": "", "Clear Memory": "", "click here": "", @@ -786,6 +787,9 @@ "Model {{name}} is now hidden": "", "Model {{name}} is now visible": "", "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": "", @@ -927,6 +931,7 @@ "Prefix ID": "", "Prefix ID is used to avoid conflicts with other connections by adding a prefix to the model IDs - leave empty to disable": "", "Presence Penalty": "", + "Preview": "", "Previous 30 days": "30 הימים הקודמים", "Previous 7 days": "7 הימים הקודמים", "Private": "", @@ -1247,6 +1252,7 @@ "Upload Progress": "תקדמות העלאה", "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.": "", @@ -1276,6 +1282,7 @@ "View Replies": "", "View Result from **{{NAME}}**": "", "Visibility": "", + "Vision": "", "Voice": "", "Voice Input": "", "Warning": "אזהרה", diff --git a/src/lib/i18n/locales/hi-IN/translation.json b/src/lib/i18n/locales/hi-IN/translation.json index 7e684e22e..5bcf7a580 100644 --- a/src/lib/i18n/locales/hi-IN/translation.json +++ b/src/lib/i18n/locales/hi-IN/translation.json @@ -186,6 +186,7 @@ "Chunk Size": "चंक आकार", "Ciphers": "", "Citation": "उद्धरण", + "Citations": "", "Clear memory": "", "Clear Memory": "", "click here": "", @@ -786,6 +787,9 @@ "Model {{name}} is now hidden": "", "Model {{name}} is now visible": "", "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": "", @@ -927,6 +931,7 @@ "Prefix ID": "", "Prefix ID is used to avoid conflicts with other connections by adding a prefix to the model IDs - leave empty to disable": "", "Presence Penalty": "", + "Preview": "", "Previous 30 days": "पिछले 30 दिन", "Previous 7 days": "पिछले 7 दिन", "Private": "", @@ -1247,6 +1252,7 @@ "Upload Progress": "प्रगति अपलोड करें", "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.": "", @@ -1276,6 +1282,7 @@ "View Replies": "", "View Result from **{{NAME}}**": "", "Visibility": "", + "Vision": "", "Voice": "", "Voice Input": "", "Warning": "चेतावनी", diff --git a/src/lib/i18n/locales/hr-HR/translation.json b/src/lib/i18n/locales/hr-HR/translation.json index 2734d0026..2354179e0 100644 --- a/src/lib/i18n/locales/hr-HR/translation.json +++ b/src/lib/i18n/locales/hr-HR/translation.json @@ -186,6 +186,7 @@ "Chunk Size": "Veličina dijela", "Ciphers": "", "Citation": "Citiranje", + "Citations": "", "Clear memory": "Očisti memoriju", "Clear Memory": "", "click here": "", @@ -786,6 +787,9 @@ "Model {{name}} is now hidden": "", "Model {{name}} is now visible": "", "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.": "Otkriven put datotečnog sustava modela. Kratko ime modela je potrebno za ažuriranje, nije moguće nastaviti.", "Model Filtering": "", @@ -927,6 +931,7 @@ "Prefix ID": "", "Prefix ID is used to avoid conflicts with other connections by adding a prefix to the model IDs - leave empty to disable": "", "Presence Penalty": "", + "Preview": "", "Previous 30 days": "Prethodnih 30 dana", "Previous 7 days": "Prethodnih 7 dana", "Private": "", @@ -1247,6 +1252,7 @@ "Upload Progress": "Napredak učitavanja", "URL": "", "URL Mode": "URL način", + "Usage": "", "Use '#' in the prompt input to load and include your knowledge.": "", "Use Gravatar": "Koristi Gravatar", "Use groups to group your users and assign permissions.": "", @@ -1276,6 +1282,7 @@ "View Replies": "", "View Result from **{{NAME}}**": "", "Visibility": "", + "Vision": "", "Voice": "", "Voice Input": "", "Warning": "Upozorenje", diff --git a/src/lib/i18n/locales/hu-HU/translation.json b/src/lib/i18n/locales/hu-HU/translation.json index c76a0c18c..b8c852634 100644 --- a/src/lib/i18n/locales/hu-HU/translation.json +++ b/src/lib/i18n/locales/hu-HU/translation.json @@ -186,6 +186,7 @@ "Chunk Size": "Darab méret", "Ciphers": "Titkosítási algoritmusok", "Citation": "Idézet", + "Citations": "", "Clear memory": "Memória törlése", "Clear Memory": "Memória törlése", "click here": "kattints ide", @@ -786,6 +787,9 @@ "Model {{name}} is now hidden": "A {{name}} modell most elrejtve", "Model {{name}} is now visible": "A {{name}} modell most látható", "Model accepts image inputs": "A modell elfogad képbemenetet", + "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!": "Modell sikeresen létrehozva!", "Model filesystem path detected. Model shortname is required for update, cannot continue.": "Modell fájlrendszer útvonal észlelve. A modell rövid neve szükséges a frissítéshez, nem folytatható.", "Model Filtering": "Modellszűrés", @@ -927,6 +931,7 @@ "Prefix ID": "Előtag azonosító", "Prefix ID is used to avoid conflicts with other connections by adding a prefix to the model IDs - leave empty to disable": "Az előtag azonosító a modell azonosítókhoz hozzáadott előtag segítségével elkerüli az egyéb kapcsolatokkal való ütközéseket - hagyja üresen a letiltáshoz", "Presence Penalty": "Jelenléti büntetés", + "Preview": "", "Previous 30 days": "Előző 30 nap", "Previous 7 days": "Előző 7 nap", "Private": "Privát", @@ -1247,6 +1252,7 @@ "Upload Progress": "Feltöltési folyamat", "URL": "URL", "URL Mode": "URL mód", + "Usage": "", "Use '#' in the prompt input to load and include your knowledge.": "Használja a '#' karaktert a prompt bevitelénél a tudásbázis betöltéséhez és felhasználásához.", "Use Gravatar": "Gravatar használata", "Use groups to group your users and assign permissions.": "Használj csoportokat a felhasználók csoportosításához és engedélyek hozzárendeléséhez.", @@ -1276,6 +1282,7 @@ "View Replies": "Válaszok megtekintése", "View Result from **{{NAME}}**": "Eredmény megtekintése innen: **{{NAME}}**", "Visibility": "Láthatóság", + "Vision": "", "Voice": "Hang", "Voice Input": "Hangbevitel", "Warning": "Figyelmeztetés", diff --git a/src/lib/i18n/locales/id-ID/translation.json b/src/lib/i18n/locales/id-ID/translation.json index 9a3e08de2..4ee69f6cf 100644 --- a/src/lib/i18n/locales/id-ID/translation.json +++ b/src/lib/i18n/locales/id-ID/translation.json @@ -186,6 +186,7 @@ "Chunk Size": "Ukuran Potongan", "Ciphers": "", "Citation": "Kutipan", + "Citations": "", "Clear memory": "Menghapus memori", "Clear Memory": "", "click here": "", @@ -786,6 +787,9 @@ "Model {{name}} is now hidden": "", "Model {{name}} is now visible": "", "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 berhasil dibuat!", "Model filesystem path detected. Model shortname is required for update, cannot continue.": "Jalur sistem berkas model terdeteksi. Nama pendek model diperlukan untuk pembaruan, tidak dapat dilanjutkan.", "Model Filtering": "", @@ -927,6 +931,7 @@ "Prefix ID": "", "Prefix ID is used to avoid conflicts with other connections by adding a prefix to the model IDs - leave empty to disable": "", "Presence Penalty": "", + "Preview": "", "Previous 30 days": "30 hari sebelumnya", "Previous 7 days": "7 hari sebelumnya", "Private": "", @@ -1247,6 +1252,7 @@ "Upload Progress": "Kemajuan Unggah", "URL": "", "URL Mode": "Mode URL", + "Usage": "", "Use '#' in the prompt input to load and include your knowledge.": "", "Use Gravatar": "Gunakan Gravatar", "Use groups to group your users and assign permissions.": "", @@ -1276,6 +1282,7 @@ "View Replies": "", "View Result from **{{NAME}}**": "", "Visibility": "", + "Vision": "", "Voice": "Suara", "Voice Input": "", "Warning": "Peringatan", diff --git a/src/lib/i18n/locales/ie-GA/translation.json b/src/lib/i18n/locales/ie-GA/translation.json index 2f7e6f0d4..1f79ffc40 100644 --- a/src/lib/i18n/locales/ie-GA/translation.json +++ b/src/lib/i18n/locales/ie-GA/translation.json @@ -186,6 +186,7 @@ "Chunk Size": "Méid an Píosa", "Ciphers": "Cipéirí", "Citation": "Lua", + "Citations": "", "Clear memory": "Cuimhne ghlan", "Clear Memory": "Glan Cuimhne", "click here": "cliceáil anseo", @@ -786,6 +787,9 @@ "Model {{name}} is now hidden": "Tá múnla {{name}} i bhfolach anois", "Model {{name}} is now visible": "Tá múnla {{name}} le feiceáil anois", "Model accepts image inputs": "Glacann múnla le hionchuir", + "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!": "Cruthaíodh múnla go rathúil!", "Model filesystem path detected. Model shortname is required for update, cannot continue.": "Fuarthas cosán an múnla. Teastaíonn ainm gearr an mhúnla le haghaidh nuashonraithe, ní féidir leanúint ar aghaidh.", "Model Filtering": "Scagadh Múnla", @@ -927,6 +931,7 @@ "Prefix ID": "Aitheantas Réimír", "Prefix ID is used to avoid conflicts with other connections by adding a prefix to the model IDs - leave empty to disable": "Úsáidtear Aitheantas Réimír chun coinbhleachtaí le naisc eile a sheachaint trí réimír a chur le haitheantas na samhla - fág folamh le díchumasú", "Presence Penalty": "Pionós Láithreacht", + "Preview": "", "Previous 30 days": "30 lá roimhe seo", "Previous 7 days": "7 lá roimhe seo", "Private": "Príobháideach", @@ -1247,6 +1252,7 @@ "Upload Progress": "Dul Chun Cinn an Uaslódála", "URL": "URL", "URL Mode": "Mód URL", + "Usage": "", "Use '#' in the prompt input to load and include your knowledge.": "Úsáid '#' san ionchur leid chun do chuid eolais a lódáil agus a chur san áireamh.", "Use Gravatar": "Úsáid Gravatar", "Use groups to group your users and assign permissions.": "Úsáid grúpaí chun d'úsáideoirí a ghrúpáil agus ceadanna a shannadh", @@ -1276,6 +1282,7 @@ "View Replies": "Féach ar Fhreagraí", "View Result from **{{NAME}}**": "Féach ar Thoradh ó **{{NAME}}**", "Visibility": "Infheictheacht", + "Vision": "", "Voice": "Guth", "Voice Input": "Ionchur Gutha", "Warning": "Rabhadh", diff --git a/src/lib/i18n/locales/it-IT/translation.json b/src/lib/i18n/locales/it-IT/translation.json index 3411b4368..1e85a0504 100644 --- a/src/lib/i18n/locales/it-IT/translation.json +++ b/src/lib/i18n/locales/it-IT/translation.json @@ -186,6 +186,7 @@ "Chunk Size": "Dimensione chunk", "Ciphers": "Cifrari", "Citation": "Citazione", + "Citations": "", "Clear memory": "Cancella memoria", "Clear Memory": "Cancella memoria", "click here": "clicca qui", @@ -786,6 +787,9 @@ "Model {{name}} is now hidden": "Il modello {{name}} è ora nascosto", "Model {{name}} is now visible": "Il modello {{name}} è ora visibile", "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 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", @@ -927,6 +931,7 @@ "Prefix ID": "ID prefisso", "Prefix ID is used to avoid conflicts with other connections by adding a prefix to the model IDs - leave empty to disable": "L'ID prefisso viene utilizzato per evitare conflitti con altre connessioni aggiungendo un prefisso agli ID dei modelli - lasciare vuoto per disabilitare", "Presence Penalty": "Penalità di presenza", + "Preview": "", "Previous 30 days": "Ultimi 30 giorni", "Previous 7 days": "Ultimi 7 giorni", "Private": "Privato", @@ -1247,6 +1252,7 @@ "Upload Progress": "Avanzamento caricamento", "URL": "", "URL Mode": "Modalità URL", + "Usage": "", "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.", @@ -1276,6 +1282,7 @@ "View Replies": "Visualizza risposte", "View Result from **{{NAME}}**": "Visualizza risultato da **{{NAME}}**", "Visibility": "Visibilità", + "Vision": "", "Voice": "Voce", "Voice Input": "Input vocale", "Warning": "Attenzione", diff --git a/src/lib/i18n/locales/ja-JP/translation.json b/src/lib/i18n/locales/ja-JP/translation.json index bb90c884c..35c05b427 100644 --- a/src/lib/i18n/locales/ja-JP/translation.json +++ b/src/lib/i18n/locales/ja-JP/translation.json @@ -186,6 +186,7 @@ "Chunk Size": "チャンクサイズ", "Ciphers": "", "Citation": "引用文", + "Citations": "", "Clear memory": "メモリをクリア", "Clear Memory": "", "click here": "", @@ -786,6 +787,9 @@ "Model {{name}} is now hidden": "モデル {{name}} は非表示になりました。", "Model {{name}} is now visible": "モデル {{name}} は表示されました。", "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": "モデルフィルタリング", @@ -927,6 +931,7 @@ "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 に接頭辞を追加することで、他の接続との競合を避けるために使用されます - 空の場合は無効にします", "Presence Penalty": "", + "Preview": "", "Previous 30 days": "前の30日間", "Previous 7 days": "前の7日間", "Private": "プライベート", @@ -1247,6 +1252,7 @@ "Upload Progress": "アップロードの進行状況", "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.": "グループを使用してユーザーをグループ化し、権限を割り当てます。", @@ -1276,6 +1282,7 @@ "View Replies": "リプライを表示", "View Result from **{{NAME}}**": "**{{NAME}}**の結果を表示", "Visibility": "", + "Vision": "", "Voice": "ボイス", "Voice Input": "音声入力", "Warning": "警告", diff --git a/src/lib/i18n/locales/ka-GE/translation.json b/src/lib/i18n/locales/ka-GE/translation.json index 51bc05f32..a1d3f9978 100644 --- a/src/lib/i18n/locales/ka-GE/translation.json +++ b/src/lib/i18n/locales/ka-GE/translation.json @@ -186,6 +186,7 @@ "Chunk Size": "ფრაგმენტის ზომა", "Ciphers": "", "Citation": "ციტატა", + "Citations": "", "Clear memory": "", "Clear Memory": "", "click here": "აქ დააწკაპუნეთ", @@ -786,6 +787,9 @@ "Model {{name}} is now hidden": "", "Model {{name}} is now visible": "", "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": "მოდელების გაფილტვრა", @@ -927,6 +931,7 @@ "Prefix ID": "პრეფიქსის ", "Prefix ID is used to avoid conflicts with other connections by adding a prefix to the model IDs - leave empty to disable": "", "Presence Penalty": "", + "Preview": "", "Previous 30 days": "წინა 30 დღე", "Previous 7 days": "წინა 7 დღე", "Private": "", @@ -1247,6 +1252,7 @@ "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.": "", @@ -1276,6 +1282,7 @@ "View Replies": "", "View Result from **{{NAME}}**": "", "Visibility": "ხილვადობა", + "Vision": "", "Voice": "ხმა", "Voice Input": "", "Warning": "გაფრთხილება", diff --git a/src/lib/i18n/locales/ko-KR/translation.json b/src/lib/i18n/locales/ko-KR/translation.json index ff3edeb13..6a789b583 100644 --- a/src/lib/i18n/locales/ko-KR/translation.json +++ b/src/lib/i18n/locales/ko-KR/translation.json @@ -186,6 +186,7 @@ "Chunk Size": "Chunk 크기", "Ciphers": "암호", "Citation": "인용", + "Citations": "", "Clear memory": "메모리 초기화", "Clear Memory": "메모리 지우기", "click here": "여기를 클릭하세요", @@ -786,6 +787,9 @@ "Model {{name}} is now hidden": "모델 {{name}}은/는 이제 숨겨졌습니다.", "Model {{name}} is now visible": "모델 {{name}}은/는 이제 볼 수 있습니다.", "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": "모델 필터링", @@ -927,6 +931,7 @@ "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에 접두사를 추가하여 다른 연결과의 충돌을 방지하는 데 사용됩니다. - 비활성화하려면 비워 둡니다.", "Presence Penalty": "Presence Penalty", + "Preview": "", "Previous 30 days": "이전 30일", "Previous 7 days": "이전 7일", "Private": "비공개", @@ -1247,6 +1252,7 @@ "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.": "그룹을 사용하여 사용자를 그룹화하고 권한을 할당하세요.", @@ -1276,6 +1282,7 @@ "View Replies": "답글 보기", "View Result from **{{NAME}}**": "**{{NAME}}**의 결과 보기", "Visibility": "공개 범위", + "Vision": "", "Voice": "음성", "Voice Input": "음성 입력", "Warning": "경고", diff --git a/src/lib/i18n/locales/lt-LT/translation.json b/src/lib/i18n/locales/lt-LT/translation.json index f26c49a84..8ea693e4f 100644 --- a/src/lib/i18n/locales/lt-LT/translation.json +++ b/src/lib/i18n/locales/lt-LT/translation.json @@ -186,6 +186,7 @@ "Chunk Size": "Blokų dydis", "Ciphers": "", "Citation": "Citata", + "Citations": "", "Clear memory": "Ištrinti atmintį", "Clear Memory": "", "click here": "", @@ -786,6 +787,9 @@ "Model {{name}} is now hidden": "", "Model {{name}} is now visible": "", "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!": "Modelis sukurtas sėkmingai", "Model filesystem path detected. Model shortname is required for update, cannot continue.": "Modelio failų sistemos kelias aptiktas. Reikalingas trumpas modelio pavadinimas atnaujinimui.", "Model Filtering": "", @@ -927,6 +931,7 @@ "Prefix ID": "", "Prefix ID is used to avoid conflicts with other connections by adding a prefix to the model IDs - leave empty to disable": "", "Presence Penalty": "", + "Preview": "", "Previous 30 days": "Paskutinės 30 dienų", "Previous 7 days": "Paskutinės 7 dienos", "Private": "", @@ -1247,6 +1252,7 @@ "Upload Progress": "Įkėlimo progresas", "URL": "", "URL Mode": "URL režimas", + "Usage": "", "Use '#' in the prompt input to load and include your knowledge.": "", "Use Gravatar": "Naudoti Gravatar", "Use groups to group your users and assign permissions.": "", @@ -1276,6 +1282,7 @@ "View Replies": "", "View Result from **{{NAME}}**": "", "Visibility": "", + "Vision": "", "Voice": "Balsas", "Voice Input": "", "Warning": "Perspėjimas", diff --git a/src/lib/i18n/locales/ms-MY/translation.json b/src/lib/i18n/locales/ms-MY/translation.json index 25a9d7d91..3c65bbe6f 100644 --- a/src/lib/i18n/locales/ms-MY/translation.json +++ b/src/lib/i18n/locales/ms-MY/translation.json @@ -186,6 +186,7 @@ "Chunk Size": "Saiz 'Chunk'", "Ciphers": "", "Citation": "Petikan", + "Citations": "", "Clear memory": "Kosongkan memori", "Clear Memory": "", "click here": "", @@ -786,6 +787,9 @@ "Model {{name}} is now hidden": "", "Model {{name}} is now visible": "", "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 berjaya dibuat!", "Model filesystem path detected. Model shortname is required for update, cannot continue.": "Laluan sistem fail model dikesan. Nama pendek model diperlukan untuk kemas kini, tidak boleh diteruskan.", "Model Filtering": "", @@ -927,6 +931,7 @@ "Prefix ID": "", "Prefix ID is used to avoid conflicts with other connections by adding a prefix to the model IDs - leave empty to disable": "", "Presence Penalty": "", + "Preview": "", "Previous 30 days": "30 hari sebelumnya", "Previous 7 days": "7 hari sebelumnya", "Private": "", @@ -1247,6 +1252,7 @@ "Upload Progress": "Kemajuan Muatnaik", "URL": "", "URL Mode": "Mod URL", + "Usage": "", "Use '#' in the prompt input to load and include your knowledge.": "", "Use Gravatar": "Gunakan Gravatar", "Use groups to group your users and assign permissions.": "", @@ -1276,6 +1282,7 @@ "View Replies": "", "View Result from **{{NAME}}**": "", "Visibility": "", + "Vision": "", "Voice": "Suara", "Voice Input": "", "Warning": "Amaran", diff --git a/src/lib/i18n/locales/nb-NO/translation.json b/src/lib/i18n/locales/nb-NO/translation.json index 526eba9c3..3fb25f6d1 100644 --- a/src/lib/i18n/locales/nb-NO/translation.json +++ b/src/lib/i18n/locales/nb-NO/translation.json @@ -186,6 +186,7 @@ "Chunk Size": "Chunk-størrelse", "Ciphers": "Chiffer", "Citation": "Kildehenvisning", + "Citations": "", "Clear memory": "Tøm minnet", "Clear Memory": "", "click here": "Klikk her", @@ -786,6 +787,9 @@ "Model {{name}} is now hidden": "", "Model {{name}} is now visible": "", "Model accepts image inputs": "Modellen godtar bildeinndata", + "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!": "Modellen er opprettet!", "Model filesystem path detected. Model shortname is required for update, cannot continue.": "Modellfilsystembane oppdaget. Kan ikke fortsette fordi modellens kortnavn er påkrevd for oppdatering.", "Model Filtering": "Filtrering av modeller", @@ -927,6 +931,7 @@ "Prefix ID": "Prefiks-ID", "Prefix ID is used to avoid conflicts with other connections by adding a prefix to the model IDs - leave empty to disable": "Prefiks-ID brukes for å unngå konflikter med andre tilkoblinger ved å legge til et prefiks til modell-ID-ene. La det stå tomt for å deaktivere", "Presence Penalty": "Straff for opptreden", + "Preview": "", "Previous 30 days": "Siste 30 dager", "Previous 7 days": "Siste 7 dager", "Private": "", @@ -1247,6 +1252,7 @@ "Upload Progress": "Opplastingsfremdrift", "URL": "URL", "URL Mode": "URL-modus", + "Usage": "", "Use '#' in the prompt input to load and include your knowledge.": "Bruk # i ledetekstens inntastingsfelt for å laste inn og inkludere kunnskapene dine.", "Use Gravatar": "Bruk Gravatar", "Use groups to group your users and assign permissions.": "Bruk grupper til å samle brukere og tildele tillatelser.", @@ -1276,6 +1282,7 @@ "View Replies": "Vis svar", "View Result from **{{NAME}}**": "", "Visibility": "Synlighet", + "Vision": "", "Voice": "Stemme", "Voice Input": "Taleinndata", "Warning": "Advarsel", diff --git a/src/lib/i18n/locales/nl-NL/translation.json b/src/lib/i18n/locales/nl-NL/translation.json index cf8b8440a..dd2dcf9a4 100644 --- a/src/lib/i18n/locales/nl-NL/translation.json +++ b/src/lib/i18n/locales/nl-NL/translation.json @@ -186,6 +186,7 @@ "Chunk Size": "Chunkgrootte", "Ciphers": "Versleutelingen", "Citation": "Citaat", + "Citations": "", "Clear memory": "Geheugen wissen", "Clear Memory": "Geheugen wissen", "click here": "klik hier", @@ -786,6 +787,9 @@ "Model {{name}} is now hidden": "Model {{naam}} is nu verborgen", "Model {{name}} is now visible": "Model {{naam}} is nu zichtbaar", "Model accepts image inputs": "Model accepteerd afbeeldingsinvoer", + "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 succesvol gecreëerd", "Model filesystem path detected. Model shortname is required for update, cannot continue.": "Model filesystem path gedetecteerd. Model shortname is vereist voor update, kan niet doorgaan.", "Model Filtering": "Modelfiltratie", @@ -927,6 +931,7 @@ "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", "Presence Penalty": "Aanwezigheidsstraf", + "Preview": "", "Previous 30 days": "Afgelopen 30 dagen", "Previous 7 days": "Afgelopen 7 dagen", "Private": "Privé", @@ -1247,6 +1252,7 @@ "Upload Progress": "Upload Voortgang", "URL": "URL", "URL Mode": "URL-modus", + "Usage": "", "Use '#' in the prompt input to load and include your knowledge.": "Gebruik '#' in de promptinvoer om je kennis te laden en op te nemen.", "Use Gravatar": "Gebruik Gravatar", "Use groups to group your users and assign permissions.": "Gebruik groepen om gebruikers te groeperen en rechten aan te wijzen", @@ -1276,6 +1282,7 @@ "View Replies": "Bekijke resultaten", "View Result from **{{NAME}}**": "", "Visibility": "Zichtbaarheid", + "Vision": "", "Voice": "Stem", "Voice Input": "Steminvoer", "Warning": "Waarschuwing", diff --git a/src/lib/i18n/locales/pa-IN/translation.json b/src/lib/i18n/locales/pa-IN/translation.json index e57e5c5f3..3e02f0d6b 100644 --- a/src/lib/i18n/locales/pa-IN/translation.json +++ b/src/lib/i18n/locales/pa-IN/translation.json @@ -186,6 +186,7 @@ "Chunk Size": "ਚੰਕ ਆਕਾਰ", "Ciphers": "", "Citation": "ਹਵਾਲਾ", + "Citations": "", "Clear memory": "", "Clear Memory": "", "click here": "", @@ -786,6 +787,9 @@ "Model {{name}} is now hidden": "", "Model {{name}} is now visible": "", "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": "", @@ -927,6 +931,7 @@ "Prefix ID": "", "Prefix ID is used to avoid conflicts with other connections by adding a prefix to the model IDs - leave empty to disable": "", "Presence Penalty": "", + "Preview": "", "Previous 30 days": "ਪਿਛਲੇ 30 ਦਿਨ", "Previous 7 days": "ਪਿਛਲੇ 7 ਦਿਨ", "Private": "", @@ -1247,6 +1252,7 @@ "Upload Progress": "ਅਪਲੋਡ ਪ੍ਰਗਤੀ", "URL": "", "URL Mode": "URL ਮੋਡ", + "Usage": "", "Use '#' in the prompt input to load and include your knowledge.": "", "Use Gravatar": "ਗ੍ਰਾਵਾਟਾਰ ਵਰਤੋ", "Use groups to group your users and assign permissions.": "", @@ -1276,6 +1282,7 @@ "View Replies": "", "View Result from **{{NAME}}**": "", "Visibility": "", + "Vision": "", "Voice": "", "Voice Input": "", "Warning": "ਚੇਤਾਵਨੀ", diff --git a/src/lib/i18n/locales/pl-PL/translation.json b/src/lib/i18n/locales/pl-PL/translation.json index 79fc444ee..91268479d 100644 --- a/src/lib/i18n/locales/pl-PL/translation.json +++ b/src/lib/i18n/locales/pl-PL/translation.json @@ -186,6 +186,7 @@ "Chunk Size": "Rozmiar bloku", "Ciphers": "Szyfry", "Citation": "Cytat", + "Citations": "", "Clear memory": "Wyczyść pamięć", "Clear Memory": "Wyczyść pamięć", "click here": "kliknij tutaj", @@ -786,6 +787,9 @@ "Model {{name}} is now hidden": "", "Model {{name}} is now visible": "", "Model accepts image inputs": "Model przyjmuje wejścia obrazowe", + "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 utworzony pomyślnie!", "Model filesystem path detected. Model shortname is required for update, cannot continue.": "Wykryto ścieżkę systemu plików modelu. Podanie krótkiej nazwy modelu jest wymagane do aktualizacji, nie można kontynuować.", "Model Filtering": "Filtracja modeli", @@ -927,6 +931,7 @@ "Prefix ID": "Identyfikator prefiksu", "Prefix ID is used to avoid conflicts with other connections by adding a prefix to the model IDs - leave empty to disable": "ID prefiksu jest używane do unikania konfliktów z innymi połączeniami poprzez dodanie prefiksu do ID modelu - pozostaw puste, aby wyłączyć", "Presence Penalty": "Kara za obecność", + "Preview": "", "Previous 30 days": "Ostatnie 30 dni", "Previous 7 days": "Ostatnie 7 dni", "Private": "", @@ -1247,6 +1252,7 @@ "Upload Progress": "Postęp przesyłania plików", "URL": "Adres URL", "URL Mode": "Tryb URL", + "Usage": "", "Use '#' in the prompt input to load and include your knowledge.": "Użyj '#' w polu wprowadzania zapytania, aby załadować i uwzględnić swoją wiedzę.", "Use Gravatar": "Użyj Gravatara", "Use groups to group your users and assign permissions.": "Wykorzystaj grupy do grupowania użytkowników i przypisywania uprawnień.", @@ -1276,6 +1282,7 @@ "View Replies": "Wyświetl odpowiedzi", "View Result from **{{NAME}}**": "", "Visibility": "Widoczność", + "Vision": "", "Voice": "Głos", "Voice Input": "Wprowadzanie głosowe", "Warning": "Uwaga", diff --git a/src/lib/i18n/locales/pt-BR/translation.json b/src/lib/i18n/locales/pt-BR/translation.json index a7c3a5f0c..8de71b265 100644 --- a/src/lib/i18n/locales/pt-BR/translation.json +++ b/src/lib/i18n/locales/pt-BR/translation.json @@ -186,6 +186,7 @@ "Chunk Size": "Tamanho do Chunk", "Ciphers": "Cifras", "Citation": "Citação", + "Citations": "", "Clear memory": "Limpar memória", "Clear Memory": "", "click here": "Clique aqui", @@ -786,6 +787,9 @@ "Model {{name}} is now hidden": "", "Model {{name}} is now visible": "", "Model accepts image inputs": "Modelo aceita entradas de imagens", + "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!": "Modelo criado com sucesso!", "Model filesystem path detected. Model shortname is required for update, cannot continue.": "Caminho do sistema de arquivos do modelo detectado. Nome curto do modelo é necessário para atualização, não é possível continuar.", "Model Filtering": "Filtrando modelo", @@ -927,6 +931,7 @@ "Prefix ID": "Prefixo ID", "Prefix ID is used to avoid conflicts with other connections by adding a prefix to the model IDs - leave empty to disable": "O ID de prefixo é utilizado para evitar conflitos com outras conexões, adicionando um prefixo aos IDs dos modelos - deixe em branco para desativar.", "Presence Penalty": "", + "Preview": "", "Previous 30 days": "Últimos 30 dias", "Previous 7 days": "Últimos 7 dias", "Private": "", @@ -1247,6 +1252,7 @@ "Upload Progress": "Progresso do Upload", "URL": "", "URL Mode": "Modo URL", + "Usage": "", "Use '#' in the prompt input to load and include your knowledge.": "Usar '#' no prompt para carregar e incluir seus conhecimentos.", "Use Gravatar": "Usar Gravatar", "Use groups to group your users and assign permissions.": "Use grupos para agrupar seus usuários e atribuir permissões.", @@ -1276,6 +1282,7 @@ "View Replies": "", "View Result from **{{NAME}}**": "", "Visibility": "Visibilidade", + "Vision": "", "Voice": "Voz", "Voice Input": "Entrada de voz", "Warning": "Aviso", diff --git a/src/lib/i18n/locales/pt-PT/translation.json b/src/lib/i18n/locales/pt-PT/translation.json index 29607a0a5..e21f0baa4 100644 --- a/src/lib/i18n/locales/pt-PT/translation.json +++ b/src/lib/i18n/locales/pt-PT/translation.json @@ -186,6 +186,7 @@ "Chunk Size": "Tamanho do Fragmento", "Ciphers": "", "Citation": "Citação", + "Citations": "", "Clear memory": "Limpar memória", "Clear Memory": "", "click here": "", @@ -786,6 +787,9 @@ "Model {{name}} is now hidden": "", "Model {{name}} is now visible": "", "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.": "Dtectado caminho do sistema de ficheiros do modelo. É necessário o nome curto do modelo para atualização, não é possível continuar.", "Model Filtering": "", @@ -927,6 +931,7 @@ "Prefix ID": "", "Prefix ID is used to avoid conflicts with other connections by adding a prefix to the model IDs - leave empty to disable": "", "Presence Penalty": "", + "Preview": "", "Previous 30 days": "Últimos 30 dias", "Previous 7 days": "Últimos 7 dias", "Private": "", @@ -1247,6 +1252,7 @@ "Upload Progress": "Progresso do Carregamento", "URL": "", "URL Mode": "Modo de URL", + "Usage": "", "Use '#' in the prompt input to load and include your knowledge.": "", "Use Gravatar": "Usar Gravatar", "Use groups to group your users and assign permissions.": "", @@ -1276,6 +1282,7 @@ "View Replies": "", "View Result from **{{NAME}}**": "", "Visibility": "", + "Vision": "", "Voice": "", "Voice Input": "", "Warning": "Aviso", diff --git a/src/lib/i18n/locales/ro-RO/translation.json b/src/lib/i18n/locales/ro-RO/translation.json index b5df5a998..27b2e66e2 100644 --- a/src/lib/i18n/locales/ro-RO/translation.json +++ b/src/lib/i18n/locales/ro-RO/translation.json @@ -186,6 +186,7 @@ "Chunk Size": "Dimensiune Bloc", "Ciphers": "Cifruri", "Citation": "Citație", + "Citations": "", "Clear memory": "Șterge memoria", "Clear Memory": "", "click here": "apasă aici.", @@ -786,6 +787,9 @@ "Model {{name}} is now hidden": "", "Model {{name}} is now visible": "", "Model accepts image inputs": "Modelul acceptă imagini ca intrări.", + "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!": "Modelul a fost creat cu succes!", "Model filesystem path detected. Model shortname is required for update, cannot continue.": "Calea sistemului de fișiere al modelului detectată. Este necesar numele scurt al modelului pentru actualizare, nu se poate continua.", "Model Filtering": "", @@ -927,6 +931,7 @@ "Prefix ID": "", "Prefix ID is used to avoid conflicts with other connections by adding a prefix to the model IDs - leave empty to disable": "", "Presence Penalty": "", + "Preview": "", "Previous 30 days": "Ultimele 30 de zile", "Previous 7 days": "Ultimele 7 zile", "Private": "", @@ -1247,6 +1252,7 @@ "Upload Progress": "Progres Încărcare", "URL": "", "URL Mode": "Mod URL", + "Usage": "", "Use '#' in the prompt input to load and include your knowledge.": "Folosește '#' în prompt pentru a încărca și include cunoștințele tale.", "Use Gravatar": "Folosește Gravatar", "Use groups to group your users and assign permissions.": "", @@ -1276,6 +1282,7 @@ "View Replies": "Vezi răspunsurile", "View Result from **{{NAME}}**": "", "Visibility": "Vizibilitate", + "Vision": "", "Voice": "Voce", "Voice Input": "Intrare vocală", "Warning": "Avertisment", diff --git a/src/lib/i18n/locales/ru-RU/translation.json b/src/lib/i18n/locales/ru-RU/translation.json index c0fb18203..370b9959d 100644 --- a/src/lib/i18n/locales/ru-RU/translation.json +++ b/src/lib/i18n/locales/ru-RU/translation.json @@ -186,6 +186,7 @@ "Chunk Size": "Размер фрагмента", "Ciphers": "Шифры", "Citation": "Цитирование", + "Citations": "", "Clear memory": "Очистить воспоминания", "Clear Memory": "Очисить память", "click here": "кликните сюда", @@ -786,6 +787,9 @@ "Model {{name}} is now hidden": "Модель {{name}} теперь скрыта", "Model {{name}} is now visible": "Модель {{name}} теперь видна", "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": "Фильтрация Моделей", @@ -927,6 +931,7 @@ "Prefix ID": "ID префикса", "Prefix ID is used to avoid conflicts with other connections by adding a prefix to the model IDs - leave empty to disable": "ID префикса используется для предотвращения конфликтов с другими подключениями путем добавления префикса к идентификаторам моделей - оставьте пустым, чтобы отключить", "Presence Penalty": "Штраф за присутствие", + "Preview": "", "Previous 30 days": "Предыдущие 30 дней", "Previous 7 days": "Предыдущие 7 дней", "Private": "Частное", @@ -1247,6 +1252,7 @@ "Upload Progress": "Прогресс загрузки", "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.": "Используйте группы, чтобы группировать пользователей и назначать разрешения.", @@ -1276,6 +1282,7 @@ "View Replies": "С ответами", "View Result from **{{NAME}}**": "Просмотр результата от **{{NAME}}**", "Visibility": "Видимость", + "Vision": "", "Voice": "Голос", "Voice Input": "Ввод голоса", "Warning": "Предупреждение", diff --git a/src/lib/i18n/locales/sk-SK/translation.json b/src/lib/i18n/locales/sk-SK/translation.json index 5008324f4..2769c2aa5 100644 --- a/src/lib/i18n/locales/sk-SK/translation.json +++ b/src/lib/i18n/locales/sk-SK/translation.json @@ -186,6 +186,7 @@ "Chunk Size": "", "Ciphers": "", "Citation": "Odkaz", + "Citations": "", "Clear memory": "Vymazať pamäť", "Clear Memory": "", "click here": "", @@ -786,6 +787,9 @@ "Model {{name}} is now hidden": "", "Model {{name}} is now visible": "", "Model accepts image inputs": "Model prijíma vstupy vo forme obrázkov", + "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 bol úspešne vytvorený!", "Model filesystem path detected. Model shortname is required for update, cannot continue.": "Zistená cesta v súborovom systéme. Je vyžadovaný krátky názov modelu pre aktualizáciu, nemožno pokračovať.", "Model Filtering": "", @@ -927,6 +931,7 @@ "Prefix ID": "", "Prefix ID is used to avoid conflicts with other connections by adding a prefix to the model IDs - leave empty to disable": "", "Presence Penalty": "", + "Preview": "", "Previous 30 days": "Predchádzajúcich 30 dní", "Previous 7 days": "Predchádzajúcich 7 dní", "Private": "", @@ -1247,6 +1252,7 @@ "Upload Progress": "Priebeh nahrávania", "URL": "", "URL Mode": "Režim URL", + "Usage": "", "Use '#' in the prompt input to load and include your knowledge.": "Použite '#' vo vstupe promptu na načítanie a zahrnutie vašich vedomostí.", "Use Gravatar": "Použiť Gravatar", "Use groups to group your users and assign permissions.": "", @@ -1276,6 +1282,7 @@ "View Replies": "", "View Result from **{{NAME}}**": "", "Visibility": "Viditeľnosť", + "Vision": "", "Voice": "Hlas", "Voice Input": "Hlasový vstup", "Warning": "Varovanie", diff --git a/src/lib/i18n/locales/sr-RS/translation.json b/src/lib/i18n/locales/sr-RS/translation.json index 790e0ba5d..8d268aaee 100644 --- a/src/lib/i18n/locales/sr-RS/translation.json +++ b/src/lib/i18n/locales/sr-RS/translation.json @@ -186,6 +186,7 @@ "Chunk Size": "Величина дела", "Ciphers": "Шифре", "Citation": "Цитат", + "Citations": "", "Clear memory": "Очисти сећања", "Clear Memory": "", "click here": "кликни овде", @@ -786,6 +787,9 @@ "Model {{name}} is now hidden": "", "Model {{name}} is now visible": "", "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": "", @@ -927,6 +931,7 @@ "Prefix ID": "", "Prefix ID is used to avoid conflicts with other connections by adding a prefix to the model IDs - leave empty to disable": "", "Presence Penalty": "", + "Preview": "", "Previous 30 days": "Претходних 30 дана", "Previous 7 days": "Претходних 7 дана", "Private": "", @@ -1247,6 +1252,7 @@ "Upload Progress": "Напредак отпремања", "URL": "УРЛ", "URL Mode": "Режим адресе", + "Usage": "", "Use '#' in the prompt input to load and include your knowledge.": "", "Use Gravatar": "Користи Граватар", "Use groups to group your users and assign permissions.": "Користите групе да бисте разврстали ваше кориснике и доделили овлашћења.", @@ -1276,6 +1282,7 @@ "View Replies": "Погледај одговоре", "View Result from **{{NAME}}**": "", "Visibility": "Видљивост", + "Vision": "", "Voice": "Глас", "Voice Input": "Гласовни унос", "Warning": "Упозорење", diff --git a/src/lib/i18n/locales/sv-SE/translation.json b/src/lib/i18n/locales/sv-SE/translation.json index 6f302b12a..b773ec1d9 100644 --- a/src/lib/i18n/locales/sv-SE/translation.json +++ b/src/lib/i18n/locales/sv-SE/translation.json @@ -186,6 +186,7 @@ "Chunk Size": "Chunk-storlek", "Ciphers": "Chiffer", "Citation": "Citat", + "Citations": "", "Clear memory": "Rensa minnet", "Clear Memory": "", "click here": "klicka här", @@ -786,6 +787,9 @@ "Model {{name}} is now hidden": "", "Model {{name}} is now visible": "", "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.": "Modellens filsystemväg upptäckt. Modellens kortnamn krävs för uppdatering, kan inte fortsätta.", "Model Filtering": "", @@ -927,6 +931,7 @@ "Prefix ID": "", "Prefix ID is used to avoid conflicts with other connections by adding a prefix to the model IDs - leave empty to disable": "", "Presence Penalty": "", + "Preview": "", "Previous 30 days": "Föregående 30 dagar", "Previous 7 days": "Föregående 7 dagar", "Private": "", @@ -1247,6 +1252,7 @@ "Upload Progress": "Uppladdningsframsteg", "URL": "", "URL Mode": "URL-läge", + "Usage": "", "Use '#' in the prompt input to load and include your knowledge.": "Använd '#' i prompten för att läsa in och inkludera din kunskap", "Use Gravatar": "Använd Gravatar", "Use groups to group your users and assign permissions.": "Använd grupper för att gruppera dina användare och tilldela behörigheter.", @@ -1276,6 +1282,7 @@ "View Replies": "Se svar", "View Result from **{{NAME}}**": "", "Visibility": "Synlighet", + "Vision": "", "Voice": "Röst", "Voice Input": "Röstinmatning", "Warning": "Varning", diff --git a/src/lib/i18n/locales/th-TH/translation.json b/src/lib/i18n/locales/th-TH/translation.json index 836a8cf99..30cb79ff0 100644 --- a/src/lib/i18n/locales/th-TH/translation.json +++ b/src/lib/i18n/locales/th-TH/translation.json @@ -186,6 +186,7 @@ "Chunk Size": "ขนาดส่วนข้อมูล", "Ciphers": "", "Citation": "การอ้างอิง", + "Citations": "", "Clear memory": "ล้างความจำ", "Clear Memory": "", "click here": "", @@ -786,6 +787,9 @@ "Model {{name}} is now hidden": "", "Model {{name}} is now visible": "", "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": "", @@ -927,6 +931,7 @@ "Prefix ID": "", "Prefix ID is used to avoid conflicts with other connections by adding a prefix to the model IDs - leave empty to disable": "", "Presence Penalty": "", + "Preview": "", "Previous 30 days": "30 วันที่ผ่านมา", "Previous 7 days": "7 วันที่ผ่านมา", "Private": "", @@ -1247,6 +1252,7 @@ "Upload Progress": "ความคืบหน้าการอัปโหลด", "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.": "", @@ -1276,6 +1282,7 @@ "View Replies": "", "View Result from **{{NAME}}**": "", "Visibility": "", + "Vision": "", "Voice": "เสียง", "Voice Input": "", "Warning": "คำเตือน", diff --git a/src/lib/i18n/locales/tk-TW/translation.json b/src/lib/i18n/locales/tk-TW/translation.json index 7e4fb8789..9403c43f6 100644 --- a/src/lib/i18n/locales/tk-TW/translation.json +++ b/src/lib/i18n/locales/tk-TW/translation.json @@ -186,6 +186,7 @@ "Chunk Size": "", "Ciphers": "", "Citation": "", + "Citations": "", "Clear memory": "", "Clear Memory": "", "click here": "", @@ -786,6 +787,9 @@ "Model {{name}} is now hidden": "", "Model {{name}} is now visible": "", "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": "", @@ -927,6 +931,7 @@ "Prefix ID": "", "Prefix ID is used to avoid conflicts with other connections by adding a prefix to the model IDs - leave empty to disable": "", "Presence Penalty": "", + "Preview": "", "Previous 30 days": "", "Previous 7 days": "", "Private": "", @@ -1247,6 +1252,7 @@ "Upload Progress": "", "URL": "", "URL Mode": "", + "Usage": "", "Use '#' in the prompt input to load and include your knowledge.": "", "Use Gravatar": "", "Use groups to group your users and assign permissions.": "", @@ -1276,6 +1282,7 @@ "View Replies": "", "View Result from **{{NAME}}**": "", "Visibility": "", + "Vision": "", "Voice": "", "Voice Input": "", "Warning": "", diff --git a/src/lib/i18n/locales/tr-TR/translation.json b/src/lib/i18n/locales/tr-TR/translation.json index 7df6a548f..3f6bf4ccd 100644 --- a/src/lib/i18n/locales/tr-TR/translation.json +++ b/src/lib/i18n/locales/tr-TR/translation.json @@ -186,6 +186,7 @@ "Chunk Size": "Chunk Boyutu", "Ciphers": "Şifreler", "Citation": "Alıntı", + "Citations": "", "Clear memory": "Belleği temizle", "Clear Memory": "Belleği Temizle", "click here": "buraya tıklayın", @@ -786,6 +787,9 @@ "Model {{name}} is now hidden": "Model {{name}} artık gizli", "Model {{name}} is now visible": "Model {{name}} artık görünür", "Model accepts image inputs": "Model görüntü girdilerini kabul eder", + "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 başarıyla oluşturuldu!", "Model filesystem path detected. Model shortname is required for update, cannot continue.": "Model dosya sistemi yolu algılandı. Güncelleme için model kısa adı gerekli, devam edilemiyor.", "Model Filtering": "Model Filtreleme", @@ -927,6 +931,7 @@ "Prefix ID": "", "Prefix ID is used to avoid conflicts with other connections by adding a prefix to the model IDs - leave empty to disable": "", "Presence Penalty": "", + "Preview": "", "Previous 30 days": "Önceki 30 gün", "Previous 7 days": "Önceki 7 gün", "Private": "Gizli", @@ -1247,6 +1252,7 @@ "Upload Progress": "Yükleme İlerlemesi", "URL": "URL", "URL Mode": "URL Modu", + "Usage": "", "Use '#' in the prompt input to load and include your knowledge.": "Bilginizi yüklemek ve dahil etmek için prompt girişinde '#' kullanın.", "Use Gravatar": "Gravatar Kullan", "Use groups to group your users and assign permissions.": "Kullanıcılarınızı gruplamak ve izinler atamak için grupları kullanın.", @@ -1276,6 +1282,7 @@ "View Replies": "Yanıtları Görüntüle", "View Result from **{{NAME}}**": "", "Visibility": "Görünürlük", + "Vision": "", "Voice": "Ses", "Voice Input": "Ses Girişi", "Warning": "Uyarı", diff --git a/src/lib/i18n/locales/uk-UA/translation.json b/src/lib/i18n/locales/uk-UA/translation.json index 23587fbc2..445a80980 100644 --- a/src/lib/i18n/locales/uk-UA/translation.json +++ b/src/lib/i18n/locales/uk-UA/translation.json @@ -186,6 +186,7 @@ "Chunk Size": "Розмір фрагменту", "Ciphers": "Шифри", "Citation": "Цитування", + "Citations": "", "Clear memory": "Очистити пам'ять", "Clear Memory": "Очистити пам'ять", "click here": "натисніть тут", @@ -786,6 +787,9 @@ "Model {{name}} is now hidden": "Модель {{name}} тепер схована", "Model {{name}} is now visible": "Модель {{name}} тепер видима", "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": "Фільтрація моделей", @@ -927,6 +931,7 @@ "Prefix ID": "ID префікса", "Prefix ID is used to avoid conflicts with other connections by adding a prefix to the model IDs - leave empty to disable": "ID префікса використовується для уникнення конфліктів з іншими підключеннями шляхом додавання префікса до ID моделей — залиште порожнім, щоб вимкнути", "Presence Penalty": "Штраф за присутність", + "Preview": "", "Previous 30 days": "Попередні 30 днів", "Previous 7 days": "Попередні 7 днів", "Private": "Приватний", @@ -1247,6 +1252,7 @@ "Upload Progress": "Прогрес завантаження", "URL": "URL", "URL Mode": "Режим URL-адреси", + "Usage": "", "Use '#' in the prompt input to load and include your knowledge.": "Використовуйте '#' у полі введення підказки, щоб завантажити та включити свої знання.", "Use Gravatar": "Змінити аватар", "Use groups to group your users and assign permissions.": "Використовуйте групи, щоб об’єднувати користувачів і призначати дозволи.", @@ -1276,6 +1282,7 @@ "View Replies": "Переглянути відповіді", "View Result from **{{NAME}}**": "", "Visibility": "Видимість", + "Vision": "", "Voice": "Голос", "Voice Input": "Голосове введення", "Warning": "Увага!", diff --git a/src/lib/i18n/locales/ur-PK/translation.json b/src/lib/i18n/locales/ur-PK/translation.json index 5821934ae..0ce0e8d05 100644 --- a/src/lib/i18n/locales/ur-PK/translation.json +++ b/src/lib/i18n/locales/ur-PK/translation.json @@ -186,6 +186,7 @@ "Chunk Size": "چنک سائز", "Ciphers": "", "Citation": "حوالہ", + "Citations": "", "Clear memory": "میموری صاف کریں", "Clear Memory": "", "click here": "", @@ -786,6 +787,9 @@ "Model {{name}} is now hidden": "", "Model {{name}} is now visible": "", "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": "", @@ -927,6 +931,7 @@ "Prefix ID": "", "Prefix ID is used to avoid conflicts with other connections by adding a prefix to the model IDs - leave empty to disable": "", "Presence Penalty": "", + "Preview": "", "Previous 30 days": "پچھلے 30 دن", "Previous 7 days": "پچھلے 7 دن", "Private": "", @@ -1247,6 +1252,7 @@ "Upload Progress": "اپ لوڈ کی پیش رفت", "URL": "", "URL Mode": "یو آر ایل موڈ", + "Usage": "", "Use '#' in the prompt input to load and include your knowledge.": "پرامپٹ ان پٹ میں '#' استعمال کریں تاکہ اپنی معلومات کو لوڈ اور شامل کریں", "Use Gravatar": "گراویٹر استعمال کریں", "Use groups to group your users and assign permissions.": "", @@ -1276,6 +1282,7 @@ "View Replies": "", "View Result from **{{NAME}}**": "", "Visibility": "", + "Vision": "", "Voice": "آواز", "Voice Input": "آواز داخل کریں", "Warning": "انتباہ", diff --git a/src/lib/i18n/locales/vi-VN/translation.json b/src/lib/i18n/locales/vi-VN/translation.json index 4339b004f..7dc21e568 100644 --- a/src/lib/i18n/locales/vi-VN/translation.json +++ b/src/lib/i18n/locales/vi-VN/translation.json @@ -186,6 +186,7 @@ "Chunk Size": "Kích thước khối (size)", "Ciphers": "Bộ mã hóa", "Citation": "Trích dẫn", + "Citations": "", "Clear memory": "Xóa bộ nhớ", "Clear Memory": "Xóa Bộ nhớ", "click here": "nhấn vào đây", @@ -786,6 +787,9 @@ "Model {{name}} is now hidden": "Mô hình {{name}} hiện đã bị ẩn", "Model {{name}} is now visible": "Mô hình {{name}} hiện có thể nhìn thấy", "Model accepts image inputs": "Mô hình chấp nhận đầu vào hình ảnh", + "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 đã được tạo thành công", "Model filesystem path detected. Model shortname is required for update, cannot continue.": "Đường dẫn hệ thống tệp mô hình được phát hiện. Tên viết tắt mô hình là bắt buộc để cập nhật, không thể tiếp tục.", "Model Filtering": "Lọc Mô hình", @@ -927,6 +931,7 @@ "Prefix ID": "Tiền tố ID", "Prefix ID is used to avoid conflicts with other connections by adding a prefix to the model IDs - leave empty to disable": "Tiền tố ID được sử dụng để tránh xung đột với các kết nối khác bằng cách thêm tiền tố vào ID mô hình - để trống để tắt", "Presence Penalty": "Hình phạt Hiện diện", + "Preview": "", "Previous 30 days": "30 ngày trước", "Previous 7 days": "7 ngày trước", "Private": "Riêng tư", @@ -1247,6 +1252,7 @@ "Upload Progress": "Tiến trình tải tệp lên hệ thống", "URL": "URL", "URL Mode": "Chế độ URL", + "Usage": "", "Use '#' in the prompt input to load and include your knowledge.": "Sử dụng '#' trong ô nhập prompt để tải và bao gồm kiến thức của bạn.", "Use Gravatar": "Sử dụng Gravatar", "Use groups to group your users and assign permissions.": "Sử dụng nhóm để nhóm người dùng của bạn và gán quyền.", @@ -1276,6 +1282,7 @@ "View Replies": "Xem các Trả lời", "View Result from **{{NAME}}**": "Xem Kết quả từ **{{NAME}}**", "Visibility": "Hiển thị", + "Vision": "", "Voice": "Giọng nói", "Voice Input": "Nhập liệu bằng Giọng nói", "Warning": "Cảnh báo", diff --git a/src/lib/i18n/locales/zh-CN/translation.json b/src/lib/i18n/locales/zh-CN/translation.json index c060d6165..66b9de536 100644 --- a/src/lib/i18n/locales/zh-CN/translation.json +++ b/src/lib/i18n/locales/zh-CN/translation.json @@ -186,6 +186,7 @@ "Chunk Size": "块大小 (Chunk Size)", "Ciphers": "加密算法 (Ciphers)", "Citation": "引文", + "Citations": "", "Clear memory": "清除记忆", "Clear Memory": "清除记忆", "click here": "点击此处", @@ -786,6 +787,9 @@ "Model {{name}} is now hidden": "模型 {{name}} 现已隐藏", "Model {{name}} is now visible": "模型 {{name}} 现已可见", "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": "模型白名单", @@ -927,6 +931,7 @@ "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 添加前缀来避免与其他连接发生冲突 - 留空则禁用此功能", "Presence Penalty": "重复惩罚 (Presence Penalty)", + "Preview": "", "Previous 30 days": "过去 30 天", "Previous 7 days": "过去 7 天", "Private": "私有", @@ -1045,7 +1050,6 @@ "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 `enable_thinking: true` in the request. \nSupported toggle providers will return thinking content": "在请求中发送 `enable_thinking: true`。设置后,支持的供应商会返回深度思考的能力", "September": "九月", "SerpApi API Key": "SerpApi API 密钥", "SerpApi Engine": "SerpApi 引擎", @@ -1149,7 +1153,6 @@ "The score should be a value between 0.0 (0%) and 1.0 (100%).": "分值应介于 0.0(0%)和 1.0(100%)之间。", "The temperature of the model. Increasing the temperature will make the model answer more creatively.": "模型的温度。增加温度将使模型的回答更有创意。", "Theme": "主题", - "Thinking...": "深度思考", "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}}频道的开始", @@ -1249,6 +1252,7 @@ "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.": "使用权限组来组织用户并分配权限。", @@ -1278,6 +1282,7 @@ "View Replies": "查看回复", "View Result from **{{NAME}}**": "查看来自 **{{NAME}}** 的结果", "Visibility": "可见性", + "Vision": "", "Voice": "语音", "Voice Input": "语音输入", "Warning": "警告", diff --git a/src/lib/i18n/locales/zh-TW/translation.json b/src/lib/i18n/locales/zh-TW/translation.json index 39f782763..81457fbc7 100644 --- a/src/lib/i18n/locales/zh-TW/translation.json +++ b/src/lib/i18n/locales/zh-TW/translation.json @@ -186,6 +186,7 @@ "Chunk Size": "區塊大小", "Ciphers": "加密方式", "Citation": "引用", + "Citations": "", "Clear memory": "清除記憶", "Clear Memory": "清除記憶", "click here": "點選這裡", @@ -786,6 +787,9 @@ "Model {{name}} is now hidden": "模型 {{name}} 已隱藏", "Model {{name}} is now visible": "模型 {{name}} 已顯示", "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": "模型篩選", @@ -927,6 +931,7 @@ "Prefix ID": "前置 ID", "Prefix ID is used to avoid conflicts with other connections by adding a prefix to the model IDs - leave empty to disable": "前置 ID 用於透過為模型 ID 新增字首以避免與其他連線衝突 - 留空以停用", "Presence Penalty": "在場懲罰", + "Preview": "", "Previous 30 days": "過去 30 天", "Previous 7 days": "過去 7 天", "Private": "私有", @@ -1247,6 +1252,7 @@ "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.": "使用群組來組織您的使用者並分配權限。", @@ -1276,6 +1282,7 @@ "View Replies": "檢視回覆", "View Result from **{{NAME}}**": "檢視來自 **{{NAME}}** 的結果", "Visibility": "可見度", + "Vision": "", "Voice": "語音", "Voice Input": "語音輸入", "Warning": "警告", From df853246f3301030af929265c59ff0476393d0bf Mon Sep 17 00:00:00 2001 From: Jarrod Lowe Date: Sat, 17 May 2025 09:11:26 +1200 Subject: [PATCH 092/100] Add user details to otel span --- backend/open_webui/utils/auth.py | 30 +++++++++++++++++++++++++++++- 1 file changed, 29 insertions(+), 1 deletion(-) diff --git a/backend/open_webui/utils/auth.py b/backend/open_webui/utils/auth.py index 118ac049e..2db0da7e5 100644 --- a/backend/open_webui/utils/auth.py +++ b/backend/open_webui/utils/auth.py @@ -13,6 +13,8 @@ import pytz from pytz import UTC from typing import Optional, Union, List, Dict +from opentelemetry import trace + from open_webui.models.users import Users from open_webui.constants import ERROR_MESSAGES @@ -194,7 +196,17 @@ def get_current_user( status.HTTP_403_FORBIDDEN, detail=ERROR_MESSAGES.API_KEY_NOT_ALLOWED ) - return get_current_user_by_api_key(token) + user = get_current_user_by_api_key(token) + + # Add user info to current span + current_span = trace.get_current_span() + if current_span: + current_span.set_attribute("client.user.id", user.id) + current_span.set_attribute("client.user.email", user.email) + current_span.set_attribute("client.user.role", user.role) + current_span.set_attribute("client.auth.type", "api_key") + + return user # auth by jwt token try: @@ -213,6 +225,14 @@ def get_current_user( detail=ERROR_MESSAGES.INVALID_TOKEN, ) else: + # Add user info to current span + current_span = trace.get_current_span() + if current_span: + current_span.set_attribute("client.user.id", user.id) + current_span.set_attribute("client.user.email", user.email) + current_span.set_attribute("client.user.role", user.role) + current_span.set_attribute("client.auth.type", "jwt") + # Refresh the user's last active timestamp asynchronously # to prevent blocking the request if background_tasks: @@ -234,6 +254,14 @@ def get_current_user_by_api_key(api_key: str): detail=ERROR_MESSAGES.INVALID_TOKEN, ) else: + # Add user info to current span + current_span = trace.get_current_span() + if current_span: + current_span.set_attribute("client.user.id", user.id) + current_span.set_attribute("client.user.email", user.email) + current_span.set_attribute("client.user.role", user.role) + current_span.set_attribute("client.auth.type", "api_key") + Users.update_user_last_active_by_id(user.id) return user From c3acb30bb19ee11b39172a522a447194e0c7e1f8 Mon Sep 17 00:00:00 2001 From: Timothy Jaeryang Baek Date: Sat, 17 May 2025 01:13:13 +0400 Subject: [PATCH 093/100] feat: model file upload capability --- src/lib/components/chat/MessageInput.svelte | 7 + .../chat/MessageInput/InputMenu.svelte | 324 ++++++++++-------- .../workspace/Models/Capabilities.svelte | 5 + .../workspace/Models/ModelEditor.svelte | 1 + 4 files changed, 185 insertions(+), 152 deletions(-) diff --git a/src/lib/components/chat/MessageInput.svelte b/src/lib/components/chat/MessageInput.svelte index 9ee9bf606..1e7d30410 100644 --- a/src/lib/components/chat/MessageInput.svelte +++ b/src/lib/components/chat/MessageInput.svelte @@ -120,6 +120,11 @@ (model) => $models.find((m) => m.id === model)?.info?.meta?.capabilities?.vision ?? true ); + let fileUploadCapableModels = []; + $: fileUploadCapableModels = (atSelectedModel?.id ? [atSelectedModel.id] : selectedModels).filter( + (model) => $models.find((m) => m.id === model)?.info?.meta?.capabilities?.file_upload ?? true + ); + let webSearchCapableModels = []; $: webSearchCapableModels = (atSelectedModel?.id ? [atSelectedModel.id] : selectedModels).filter( (model) => $models.find((m) => m.id === model)?.info?.meta?.capabilities?.web_search ?? true @@ -1086,6 +1091,8 @@
{ diff --git a/src/lib/components/chat/MessageInput/InputMenu.svelte b/src/lib/components/chat/MessageInput/InputMenu.svelte index 6a024af51..5013f18f0 100644 --- a/src/lib/components/chat/MessageInput/InputMenu.svelte +++ b/src/lib/components/chat/MessageInput/InputMenu.svelte @@ -20,6 +20,11 @@ const i18n = getContext('i18n'); + export let selectedToolIds: string[] = []; + + export let selectedModels: string[] = []; + export let fileUploadCapableModels: string[] = []; + export let screenCaptureHandler: Function; export let uploadFilesHandler: Function; export let inputFilesHandler: Function; @@ -27,8 +32,6 @@ export let uploadGoogleDriveHandler: Function; export let uploadOneDriveHandler: Function; - export let selectedToolIds: string[] = []; - export let onClose: Function; let tools = {}; @@ -40,7 +43,9 @@ } let fileUploadEnabled = true; - $: fileUploadEnabled = $user?.role === 'admin' || $user?.permissions?.chat?.file_upload; + $: fileUploadEnabled = + fileUploadCapableModels.length === selectedModels.length && + ($user?.role === 'admin' || $user?.permissions?.chat?.file_upload); const init = async () => { if ($_tools === null) { @@ -169,7 +174,11 @@ {/if} - {#if $config?.features?.enable_google_drive_integration} - { - uploadGoogleDriveHandler(); - }} - > - - - - - - - - -
{$i18n.t('Google Drive')}
-
- {/if} - - {#if $config?.features?.enable_onedrive_integration} - - { + uploadGoogleDriveHandler(); + }} > - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + -
{$i18n.t('Microsoft OneDrive')}
-
- - { - uploadOneDriveHandler('personal'); - }} +
{$i18n.t('Google Drive')}
+
+ {/if} + + {#if $config?.features?.enable_onedrive_integration} + + -
{$i18n.t('Microsoft OneDrive (personal)')}
-
- { - uploadOneDriveHandler('organizations'); - }} + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
{$i18n.t('Microsoft OneDrive')}
+ + -
-
{$i18n.t('Microsoft OneDrive (work/school)')}
-
Includes SharePoint
-
-
- - + { + uploadOneDriveHandler('personal'); + }} + > +
{$i18n.t('Microsoft OneDrive (personal)')}
+
+ { + uploadOneDriveHandler('organizations'); + }} + > +
+
{$i18n.t('Microsoft OneDrive (work/school)')}
+
Includes SharePoint
+
+
+ + + {/if} {/if}
diff --git a/src/lib/components/workspace/Models/Capabilities.svelte b/src/lib/components/workspace/Models/Capabilities.svelte index baf9cd915..1e47ba7b0 100644 --- a/src/lib/components/workspace/Models/Capabilities.svelte +++ b/src/lib/components/workspace/Models/Capabilities.svelte @@ -11,6 +11,10 @@ label: $i18n.t('Vision'), description: $i18n.t('Model accepts image inputs') }, + file_upload: { + label: $i18n.t('File Upload'), + description: $i18n.t('Model accepts file inputs') + }, web_search: { label: $i18n.t('Web Search'), description: $i18n.t('Model can search the web for information') @@ -37,6 +41,7 @@ export let capabilities: { vision?: boolean; + file_upload?: boolean; web_search?: boolean; image_generation?: boolean; code_interpreter?: boolean; diff --git a/src/lib/components/workspace/Models/ModelEditor.svelte b/src/lib/components/workspace/Models/ModelEditor.svelte index c8934eb00..4484bb459 100644 --- a/src/lib/components/workspace/Models/ModelEditor.svelte +++ b/src/lib/components/workspace/Models/ModelEditor.svelte @@ -77,6 +77,7 @@ }; let capabilities = { vision: true, + file_upload: true, web_search: true, image_generation: true, code_interpreter: true, From 000906cd997869a96057f23691b2ea56d96ba66e Mon Sep 17 00:00:00 2001 From: Timothy Jaeryang Baek Date: Sat, 17 May 2025 01:13:36 +0400 Subject: [PATCH 094/100] chore: format --- src/lib/i18n/locales/ar-BH/translation.json | 3 +++ src/lib/i18n/locales/ar/translation.json | 3 +++ src/lib/i18n/locales/bg-BG/translation.json | 3 +++ src/lib/i18n/locales/bn-BD/translation.json | 3 +++ src/lib/i18n/locales/bo-TB/translation.json | 3 +++ src/lib/i18n/locales/ca-ES/translation.json | 3 +++ src/lib/i18n/locales/ceb-PH/translation.json | 3 +++ src/lib/i18n/locales/cs-CZ/translation.json | 3 +++ src/lib/i18n/locales/da-DK/translation.json | 3 +++ src/lib/i18n/locales/de-DE/translation.json | 3 +++ src/lib/i18n/locales/dg-DG/translation.json | 3 +++ src/lib/i18n/locales/el-GR/translation.json | 3 +++ src/lib/i18n/locales/en-GB/translation.json | 3 +++ src/lib/i18n/locales/en-US/translation.json | 3 +++ src/lib/i18n/locales/es-ES/translation.json | 3 +++ src/lib/i18n/locales/et-EE/translation.json | 3 +++ src/lib/i18n/locales/eu-ES/translation.json | 3 +++ src/lib/i18n/locales/fa-IR/translation.json | 3 +++ src/lib/i18n/locales/fi-FI/translation.json | 3 +++ src/lib/i18n/locales/fr-CA/translation.json | 3 +++ src/lib/i18n/locales/fr-FR/translation.json | 3 +++ src/lib/i18n/locales/he-IL/translation.json | 3 +++ src/lib/i18n/locales/hi-IN/translation.json | 3 +++ src/lib/i18n/locales/hr-HR/translation.json | 3 +++ src/lib/i18n/locales/hu-HU/translation.json | 3 +++ src/lib/i18n/locales/id-ID/translation.json | 3 +++ src/lib/i18n/locales/ie-GA/translation.json | 3 +++ src/lib/i18n/locales/it-IT/translation.json | 3 +++ src/lib/i18n/locales/ja-JP/translation.json | 3 +++ src/lib/i18n/locales/ka-GE/translation.json | 3 +++ src/lib/i18n/locales/ko-KR/translation.json | 3 +++ src/lib/i18n/locales/lt-LT/translation.json | 3 +++ src/lib/i18n/locales/ms-MY/translation.json | 3 +++ src/lib/i18n/locales/nb-NO/translation.json | 3 +++ src/lib/i18n/locales/nl-NL/translation.json | 3 +++ src/lib/i18n/locales/pa-IN/translation.json | 3 +++ src/lib/i18n/locales/pl-PL/translation.json | 3 +++ src/lib/i18n/locales/pt-BR/translation.json | 3 +++ src/lib/i18n/locales/pt-PT/translation.json | 3 +++ src/lib/i18n/locales/ro-RO/translation.json | 3 +++ src/lib/i18n/locales/ru-RU/translation.json | 3 +++ src/lib/i18n/locales/sk-SK/translation.json | 3 +++ src/lib/i18n/locales/sr-RS/translation.json | 3 +++ src/lib/i18n/locales/sv-SE/translation.json | 3 +++ src/lib/i18n/locales/th-TH/translation.json | 3 +++ src/lib/i18n/locales/tk-TW/translation.json | 3 +++ src/lib/i18n/locales/tr-TR/translation.json | 3 +++ src/lib/i18n/locales/uk-UA/translation.json | 3 +++ src/lib/i18n/locales/ur-PK/translation.json | 3 +++ src/lib/i18n/locales/vi-VN/translation.json | 3 +++ src/lib/i18n/locales/zh-CN/translation.json | 3 +++ src/lib/i18n/locales/zh-TW/translation.json | 3 +++ 52 files changed, 156 insertions(+) diff --git a/src/lib/i18n/locales/ar-BH/translation.json b/src/lib/i18n/locales/ar-BH/translation.json index 883f497a5..7cc82e17d 100644 --- a/src/lib/i18n/locales/ar-BH/translation.json +++ b/src/lib/i18n/locales/ar-BH/translation.json @@ -577,6 +577,7 @@ "File not found.": "لم يتم العثور على الملف.", "File removed successfully.": "", "File size should not exceed {{maxSize}} MB.": "", + "File Upload": "", "File uploaded successfully": "", "Files": "", "Filter is now globally disabled": "", @@ -786,6 +787,7 @@ "Model {{name}} is now {{status}}": "نموذج {{name}} هو الآن {{status}}", "Model {{name}} is now hidden": "", "Model {{name}} is now visible": "", + "Model accepts file inputs": "", "Model accepts image inputs": "", "Model can execute code and perform calculations": "", "Model can generate images based on text prompts": "", @@ -800,6 +802,7 @@ "Model Params": "معلمات النموذج", "Model Permissions": "", "Model updated successfully": "", + "Model(s) do not support file upload": "", "Modelfile Content": "محتوى الملف النموذجي", "Models": "الموديلات", "Models Access": "", diff --git a/src/lib/i18n/locales/ar/translation.json b/src/lib/i18n/locales/ar/translation.json index 3a1e2d15f..a012aac56 100644 --- a/src/lib/i18n/locales/ar/translation.json +++ b/src/lib/i18n/locales/ar/translation.json @@ -577,6 +577,7 @@ "File not found.": "لم يتم العثور على الملف.", "File removed successfully.": "تم حذف الملف بنجاح.", "File size should not exceed {{maxSize}} MB.": "يجب ألا يتجاوز حجم الملف {{maxSize}} ميغابايت.", + "File Upload": "", "File uploaded successfully": "تم رفع الملف بنجاح", "Files": "الملفات", "Filter is now globally disabled": "تم الآن تعطيل الفلتر على مستوى النظام", @@ -786,6 +787,7 @@ "Model {{name}} is now {{status}}": "نموذج {{name}} هو الآن {{status}}", "Model {{name}} is now hidden": "", "Model {{name}} is now visible": "", + "Model accepts file inputs": "", "Model accepts image inputs": "النموذج يقبل إدخالات الصور", "Model can execute code and perform calculations": "", "Model can generate images based on text prompts": "", @@ -800,6 +802,7 @@ "Model Params": "معلمات النموذج", "Model Permissions": "أذونات النموذج", "Model updated successfully": "تم تحديث النموذج بنجاح", + "Model(s) do not support file upload": "", "Modelfile Content": "محتوى الملف النموذجي", "Models": "الموديلات", "Models Access": "الوصول إلى النماذج", diff --git a/src/lib/i18n/locales/bg-BG/translation.json b/src/lib/i18n/locales/bg-BG/translation.json index 4afe9e946..c6f9a1d2e 100644 --- a/src/lib/i18n/locales/bg-BG/translation.json +++ b/src/lib/i18n/locales/bg-BG/translation.json @@ -577,6 +577,7 @@ "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": "Филтърът вече е глобално деактивиран", @@ -786,6 +787,7 @@ "Model {{name}} is now {{status}}": "Моделът {{name}} сега е {{status}}", "Model {{name}} is now hidden": "", "Model {{name}} is now visible": "", + "Model accepts file inputs": "", "Model accepts image inputs": "Моделът приема входни изображения", "Model can execute code and perform calculations": "", "Model can generate images based on text prompts": "", @@ -800,6 +802,7 @@ "Model Params": "Параметри на модела", "Model Permissions": "Разрешения на модела", "Model updated successfully": "Моделът е актуализиран успешно", + "Model(s) do not support file upload": "", "Modelfile Content": "Съдържание на модфайл", "Models": "Модели", "Models Access": "Достъп до модели", diff --git a/src/lib/i18n/locales/bn-BD/translation.json b/src/lib/i18n/locales/bn-BD/translation.json index f8c5e74e3..d975dd124 100644 --- a/src/lib/i18n/locales/bn-BD/translation.json +++ b/src/lib/i18n/locales/bn-BD/translation.json @@ -577,6 +577,7 @@ "File not found.": "ফাইল পাওয়া যায়নি", "File removed successfully.": "", "File size should not exceed {{maxSize}} MB.": "", + "File Upload": "", "File uploaded successfully": "", "Files": "", "Filter is now globally disabled": "", @@ -786,6 +787,7 @@ "Model {{name}} is now {{status}}": "মডেল {{name}} এখন {{status}}", "Model {{name}} is now hidden": "", "Model {{name}} is now visible": "", + "Model accepts file inputs": "", "Model accepts image inputs": "", "Model can execute code and perform calculations": "", "Model can generate images based on text prompts": "", @@ -800,6 +802,7 @@ "Model Params": "মডেল প্যারাম", "Model Permissions": "", "Model updated successfully": "", + "Model(s) do not support file upload": "", "Modelfile Content": "মডেলফাইল কনটেন্ট", "Models": "মডেলসমূহ", "Models Access": "", diff --git a/src/lib/i18n/locales/bo-TB/translation.json b/src/lib/i18n/locales/bo-TB/translation.json index 392e547d8..9f947e058 100644 --- a/src/lib/i18n/locales/bo-TB/translation.json +++ b/src/lib/i18n/locales/bo-TB/translation.json @@ -577,6 +577,7 @@ "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": "འཚག་མ་དེ་ད་ལྟ་འཛམ་གླིང་ཡོངས་ནས་ནུས་མེད་བཏང་ཡོད།", @@ -786,6 +787,7 @@ "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": "", @@ -800,6 +802,7 @@ "Model Params": "དཔེ་དབྱིབས་ཀྱི་ཞུགས་གྲངས།", "Model Permissions": "དཔེ་དབྱིབས་ཀྱི་དབང་ཚད།", "Model updated successfully": "དཔེ་དབྱིབས་ལེགས་པར་གསར་སྒྱུར་བྱས།", + "Model(s) do not support file upload": "", "Modelfile Content": "Modelfile ནང་དོན།", "Models": "དཔེ་དབྱིབས།", "Models Access": "དཔེ་དབྱིབས་འཛུལ་སྤྱོད།", diff --git a/src/lib/i18n/locales/ca-ES/translation.json b/src/lib/i18n/locales/ca-ES/translation.json index 58a1cf1bb..b27f20be2 100644 --- a/src/lib/i18n/locales/ca-ES/translation.json +++ b/src/lib/i18n/locales/ca-ES/translation.json @@ -577,6 +577,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 uploaded successfully": "arxiu pujat satisfactòriament", "Files": "Arxius", "Filter is now globally disabled": "El filtre ha estat desactivat globalment", @@ -786,6 +787,7 @@ "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 image inputs": "El model accepta entrades d'imatge", "Model can execute code and perform calculations": "", "Model can generate images based on text prompts": "", @@ -800,6 +802,7 @@ "Model Params": "Paràmetres del model", "Model Permissions": "Permisos dels models", "Model updated successfully": "Model actualitzat correctament", + "Model(s) do not support file upload": "", "Modelfile Content": "Contingut del Modelfile", "Models": "Models", "Models Access": "Accés als models", diff --git a/src/lib/i18n/locales/ceb-PH/translation.json b/src/lib/i18n/locales/ceb-PH/translation.json index 400610b23..82f01f257 100644 --- a/src/lib/i18n/locales/ceb-PH/translation.json +++ b/src/lib/i18n/locales/ceb-PH/translation.json @@ -577,6 +577,7 @@ "File not found.": "Wala makit-an ang file.", "File removed successfully.": "", "File size should not exceed {{maxSize}} MB.": "", + "File Upload": "", "File uploaded successfully": "", "Files": "", "Filter is now globally disabled": "", @@ -786,6 +787,7 @@ "Model {{name}} is now {{status}}": "", "Model {{name}} is now hidden": "", "Model {{name}} is now visible": "", + "Model accepts file inputs": "", "Model accepts image inputs": "", "Model can execute code and perform calculations": "", "Model can generate images based on text prompts": "", @@ -800,6 +802,7 @@ "Model Params": "", "Model Permissions": "", "Model updated successfully": "", + "Model(s) do not support file upload": "", "Modelfile Content": "Mga sulod sa template file", "Models": "Mga modelo", "Models Access": "", diff --git a/src/lib/i18n/locales/cs-CZ/translation.json b/src/lib/i18n/locales/cs-CZ/translation.json index 83699a737..64308aa36 100644 --- a/src/lib/i18n/locales/cs-CZ/translation.json +++ b/src/lib/i18n/locales/cs-CZ/translation.json @@ -577,6 +577,7 @@ "File not found.": "Soubor nenalezen.", "File removed successfully.": "Soubor byl úspěšně odstraněn.", "File size should not exceed {{maxSize}} MB.": "Velikost souboru by neměla překročit {{maxSize}} MB.", + "File Upload": "", "File uploaded successfully": "", "Files": "Soubory", "Filter is now globally disabled": "Filtr je nyní globálně zakázán", @@ -786,6 +787,7 @@ "Model {{name}} is now {{status}}": "Model {{name}} je nyní {{status}}.", "Model {{name}} is now hidden": "", "Model {{name}} is now visible": "", + "Model accepts file inputs": "", "Model accepts image inputs": "Model přijímá vstupy ve formě obrázků", "Model can execute code and perform calculations": "", "Model can generate images based on text prompts": "", @@ -800,6 +802,7 @@ "Model Params": "Parametry modelu", "Model Permissions": "", "Model updated successfully": "Model byl úspěšně aktualizován", + "Model(s) do not support file upload": "", "Modelfile Content": "Obsah souboru modelfile", "Models": "Modely", "Models Access": "", diff --git a/src/lib/i18n/locales/da-DK/translation.json b/src/lib/i18n/locales/da-DK/translation.json index 83fb71170..c5aa07107 100644 --- a/src/lib/i18n/locales/da-DK/translation.json +++ b/src/lib/i18n/locales/da-DK/translation.json @@ -577,6 +577,7 @@ "File not found.": "Filen blev ikke fundet.", "File removed successfully.": "Fil fjernet.", "File size should not exceed {{maxSize}} MB.": "Filstørrelsen må ikke overstige {{maxSize}} MB.", + "File Upload": "", "File uploaded successfully": "Fil uploadet.", "Files": "Filer", "Filter is now globally disabled": "Filter er nu globalt deaktiveret", @@ -786,6 +787,7 @@ "Model {{name}} is now {{status}}": "Model {{name}} er nu {{status}}", "Model {{name}} is now hidden": "", "Model {{name}} is now visible": "", + "Model accepts file inputs": "", "Model accepts image inputs": "Model accepterer billedinput", "Model can execute code and perform calculations": "", "Model can generate images based on text prompts": "", @@ -800,6 +802,7 @@ "Model Params": "Modelparametre", "Model Permissions": "", "Model updated successfully": "Model opdateret.", + "Model(s) do not support file upload": "", "Modelfile Content": "Modelfilindhold", "Models": "Modeller", "Models Access": "", diff --git a/src/lib/i18n/locales/de-DE/translation.json b/src/lib/i18n/locales/de-DE/translation.json index 6bf804f89..f4f672f4a 100644 --- a/src/lib/i18n/locales/de-DE/translation.json +++ b/src/lib/i18n/locales/de-DE/translation.json @@ -577,6 +577,7 @@ "File not found.": "Datei nicht gefunden.", "File removed successfully.": "Datei erfolgreich entfernt.", "File size should not exceed {{maxSize}} MB.": "Datei darf nicht größer als {{maxSize}} MB sein.", + "File Upload": "", "File uploaded successfully": "Datei erfolgreich hochgeladen", "Files": "Dateien", "Filter is now globally disabled": "Filter ist jetzt global deaktiviert", @@ -786,6 +787,7 @@ "Model {{name}} is now {{status}}": "Modell {{name}} ist jetzt {{status}}", "Model {{name}} is now hidden": "Modell {{name}} ist jetzt versteckt.", "Model {{name}} is now visible": "Modell {{name}} ist jetzt sichtbar.", + "Model accepts file inputs": "", "Model accepts image inputs": "Modell akzeptiert Bildeingaben", "Model can execute code and perform calculations": "", "Model can generate images based on text prompts": "", @@ -800,6 +802,7 @@ "Model Params": "Modell-Parameter", "Model Permissions": "Modellberechtigungen", "Model updated successfully": "Modell erfolgreich aktualisiert", + "Model(s) do not support file upload": "", "Modelfile Content": "Modelfile-Inhalt", "Models": "Modelle", "Models Access": "Modell-Zugriff", diff --git a/src/lib/i18n/locales/dg-DG/translation.json b/src/lib/i18n/locales/dg-DG/translation.json index 7854dbc3d..a9a2baad4 100644 --- a/src/lib/i18n/locales/dg-DG/translation.json +++ b/src/lib/i18n/locales/dg-DG/translation.json @@ -577,6 +577,7 @@ "File not found.": "Bark not found.", "File removed successfully.": "", "File size should not exceed {{maxSize}} MB.": "", + "File Upload": "", "File uploaded successfully": "", "Files": "", "Filter is now globally disabled": "", @@ -786,6 +787,7 @@ "Model {{name}} is now {{status}}": "", "Model {{name}} is now hidden": "", "Model {{name}} is now visible": "", + "Model accepts file inputs": "", "Model accepts image inputs": "", "Model can execute code and perform calculations": "", "Model can generate images based on text prompts": "", @@ -800,6 +802,7 @@ "Model Params": "", "Model Permissions": "", "Model updated successfully": "", + "Model(s) do not support file upload": "", "Modelfile Content": "Modelfile Content", "Models": "Wowdels", "Models Access": "", diff --git a/src/lib/i18n/locales/el-GR/translation.json b/src/lib/i18n/locales/el-GR/translation.json index bebceb047..42d61aed5 100644 --- a/src/lib/i18n/locales/el-GR/translation.json +++ b/src/lib/i18n/locales/el-GR/translation.json @@ -577,6 +577,7 @@ "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": "Το φίλτρο είναι τώρα καθολικά απενεργοποιημένο", @@ -786,6 +787,7 @@ "Model {{name}} is now {{status}}": "Το μοντέλο {{name}} είναι τώρα {{status}}", "Model {{name}} is now hidden": "", "Model {{name}} is now visible": "", + "Model accepts file inputs": "", "Model accepts image inputs": "Το μοντέλο δέχεται είσοδο εικόνας", "Model can execute code and perform calculations": "", "Model can generate images based on text prompts": "", @@ -800,6 +802,7 @@ "Model Params": "Παράμετροι Μοντέλου", "Model Permissions": "Δικαιώματα Μοντέλου", "Model updated successfully": "Το μοντέλο ενημερώθηκε με επιτυχία", + "Model(s) do not support file upload": "", "Modelfile Content": "Περιεχόμενο Αρχείου Μοντέλου", "Models": "Μοντέλα", "Models Access": "Πρόσβαση Μοντέλων", diff --git a/src/lib/i18n/locales/en-GB/translation.json b/src/lib/i18n/locales/en-GB/translation.json index 6e54c3f10..73e9afb19 100644 --- a/src/lib/i18n/locales/en-GB/translation.json +++ b/src/lib/i18n/locales/en-GB/translation.json @@ -577,6 +577,7 @@ "File not found.": "", "File removed successfully.": "", "File size should not exceed {{maxSize}} MB.": "", + "File Upload": "", "File uploaded successfully": "", "Files": "", "Filter is now globally disabled": "", @@ -786,6 +787,7 @@ "Model {{name}} is now {{status}}": "", "Model {{name}} is now hidden": "", "Model {{name}} is now visible": "", + "Model accepts file inputs": "", "Model accepts image inputs": "", "Model can execute code and perform calculations": "", "Model can generate images based on text prompts": "", @@ -800,6 +802,7 @@ "Model Params": "", "Model Permissions": "", "Model updated successfully": "", + "Model(s) do not support file upload": "", "Modelfile Content": "", "Models": "", "Models Access": "", diff --git a/src/lib/i18n/locales/en-US/translation.json b/src/lib/i18n/locales/en-US/translation.json index 6e54c3f10..73e9afb19 100644 --- a/src/lib/i18n/locales/en-US/translation.json +++ b/src/lib/i18n/locales/en-US/translation.json @@ -577,6 +577,7 @@ "File not found.": "", "File removed successfully.": "", "File size should not exceed {{maxSize}} MB.": "", + "File Upload": "", "File uploaded successfully": "", "Files": "", "Filter is now globally disabled": "", @@ -786,6 +787,7 @@ "Model {{name}} is now {{status}}": "", "Model {{name}} is now hidden": "", "Model {{name}} is now visible": "", + "Model accepts file inputs": "", "Model accepts image inputs": "", "Model can execute code and perform calculations": "", "Model can generate images based on text prompts": "", @@ -800,6 +802,7 @@ "Model Params": "", "Model Permissions": "", "Model updated successfully": "", + "Model(s) do not support file upload": "", "Modelfile Content": "", "Models": "", "Models Access": "", diff --git a/src/lib/i18n/locales/es-ES/translation.json b/src/lib/i18n/locales/es-ES/translation.json index 439f6a6de..631cc1585 100644 --- a/src/lib/i18n/locales/es-ES/translation.json +++ b/src/lib/i18n/locales/es-ES/translation.json @@ -577,6 +577,7 @@ "File not found.": "Archivo no encontrado.", "File removed successfully.": "Archivo eliminado correctamente.", "File size should not exceed {{maxSize}} MB.": "Tamaño del archivo no debe exceder {{maxSize}} MB.", + "File Upload": "", "File uploaded successfully": "Archivo subido correctamente", "Files": "Archivos", "Filter is now globally disabled": "El filtro ahora está desactivado globalmente", @@ -786,6 +787,7 @@ "Model {{name}} is now {{status}}": "Modelo {{name}} está ahora {{status}}", "Model {{name}} is now hidden": "", "Model {{name}} is now visible": "", + "Model accepts file inputs": "", "Model accepts image inputs": "Modelo acepta entradas de imágen", "Model can execute code and perform calculations": "", "Model can generate images based on text prompts": "", @@ -800,6 +802,7 @@ "Model Params": "Paráms Modelo", "Model Permissions": "Permisos Modelo", "Model updated successfully": "Modelo actualizado correctamente", + "Model(s) do not support file upload": "", "Modelfile Content": "Contenido del Modelfile", "Models": "Modelos", "Models Access": "Acceso Modelos", diff --git a/src/lib/i18n/locales/et-EE/translation.json b/src/lib/i18n/locales/et-EE/translation.json index e142903ae..5460e82de 100644 --- a/src/lib/i18n/locales/et-EE/translation.json +++ b/src/lib/i18n/locales/et-EE/translation.json @@ -577,6 +577,7 @@ "File not found.": "Faili ei leitud.", "File removed successfully.": "Fail edukalt eemaldatud.", "File size should not exceed {{maxSize}} MB.": "Faili suurus ei tohiks ületada {{maxSize}} MB.", + "File Upload": "", "File uploaded successfully": "Fail edukalt üles laaditud", "Files": "Failid", "Filter is now globally disabled": "Filter on nüüd globaalselt keelatud", @@ -786,6 +787,7 @@ "Model {{name}} is now {{status}}": "Mudel {{name}} on nüüd {{status}}", "Model {{name}} is now hidden": "", "Model {{name}} is now visible": "", + "Model accepts file inputs": "", "Model accepts image inputs": "Mudel võtab vastu pilte sisendina", "Model can execute code and perform calculations": "", "Model can generate images based on text prompts": "", @@ -800,6 +802,7 @@ "Model Params": "Mudeli parameetrid", "Model Permissions": "Mudeli õigused", "Model updated successfully": "Mudel edukalt uuendatud", + "Model(s) do not support file upload": "", "Modelfile Content": "Modelfile sisu", "Models": "Mudelid", "Models Access": "Mudelite juurdepääs", diff --git a/src/lib/i18n/locales/eu-ES/translation.json b/src/lib/i18n/locales/eu-ES/translation.json index 66ec5f4a6..190aef235 100644 --- a/src/lib/i18n/locales/eu-ES/translation.json +++ b/src/lib/i18n/locales/eu-ES/translation.json @@ -577,6 +577,7 @@ "File not found.": "Ez da fitxategia aurkitu.", "File removed successfully.": "Fitxategia ongi ezabatu da.", "File size should not exceed {{maxSize}} MB.": "Fitxategiaren tamainak ez luke {{maxSize}} MB gainditu behar.", + "File Upload": "", "File uploaded successfully": "", "Files": "Fitxategiak", "Filter is now globally disabled": "Iragazkia orain globalki desgaituta dago", @@ -786,6 +787,7 @@ "Model {{name}} is now {{status}}": "{{name}} modeloa orain {{status}} dago", "Model {{name}} is now hidden": "", "Model {{name}} is now visible": "", + "Model accepts file inputs": "", "Model accepts image inputs": "Modeloak irudi sarrerak onartzen ditu", "Model can execute code and perform calculations": "", "Model can generate images based on text prompts": "", @@ -800,6 +802,7 @@ "Model Params": "Modelo parametroak", "Model Permissions": "Modelo baimenak", "Model updated successfully": "Modeloa ongi eguneratu da", + "Model(s) do not support file upload": "", "Modelfile Content": "Modelfile edukia", "Models": "Modeloak", "Models Access": "Modeloen sarbidea", diff --git a/src/lib/i18n/locales/fa-IR/translation.json b/src/lib/i18n/locales/fa-IR/translation.json index 496403633..9386b4cf7 100644 --- a/src/lib/i18n/locales/fa-IR/translation.json +++ b/src/lib/i18n/locales/fa-IR/translation.json @@ -577,6 +577,7 @@ "File not found.": "پرونده یافت نشد.", "File removed successfully.": "پرونده با موفقیت حذف شد.", "File size should not exceed {{maxSize}} MB.": "حجم پرونده نبایستی از {{maxSize}} MB بیشتر باشد.", + "File Upload": "", "File uploaded successfully": "پرونده با موفقیت بارگذاری شد", "Files": "پرونده\u200cها", "Filter is now globally disabled": "فیلتر به صورت سراسری غیرفعال شد", @@ -786,6 +787,7 @@ "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": "مدل ورودی تصویر را می\u200cپذیرد", "Model can execute code and perform calculations": "", "Model can generate images based on text prompts": "", @@ -800,6 +802,7 @@ "Model Params": "مدل پارامز", "Model Permissions": "مجوزهای مدل", "Model updated successfully": "مدل با موفقیت به\u200cروز شد", + "Model(s) do not support file upload": "", "Modelfile Content": "محتویات فایل مدل", "Models": "مدل\u200cها", "Models Access": "دسترسی به مدل\u200cها", diff --git a/src/lib/i18n/locales/fi-FI/translation.json b/src/lib/i18n/locales/fi-FI/translation.json index a2744f779..f61bb7fd9 100644 --- a/src/lib/i18n/locales/fi-FI/translation.json +++ b/src/lib/i18n/locales/fi-FI/translation.json @@ -577,6 +577,7 @@ "File not found.": "Tiedostoa ei löytynyt.", "File removed successfully.": "Tiedosto poistettu onnistuneesti.", "File size should not exceed {{maxSize}} MB.": "Tiedoston koko ei saa ylittää {{maxSize}} MB.", + "File Upload": "", "File uploaded successfully": "Tiedosto ladattiin onnistuneesti", "Files": "Tiedostot", "Filter is now globally disabled": "Suodatin on nyt poistettu käytöstä globaalisti", @@ -786,6 +787,7 @@ "Model {{name}} is now {{status}}": "Malli {{name}} on nyt {{status}}", "Model {{name}} is now hidden": "Malli {{name}} on nyt piilotettu", "Model {{name}} is now visible": "Malli {{name}} on nyt näkyvissä", + "Model accepts file inputs": "", "Model accepts image inputs": "Malli hyväksyy kuvasyötteitä", "Model can execute code and perform calculations": "", "Model can generate images based on text prompts": "", @@ -800,6 +802,7 @@ "Model Params": "Mallin parametrit", "Model Permissions": "Mallin käyttöoikeudet", "Model updated successfully": "Malli päivitetty onnistuneesti", + "Model(s) do not support file upload": "", "Modelfile Content": "Mallitiedoston sisältö", "Models": "Mallit", "Models Access": "Mallien käyttöoikeudet", diff --git a/src/lib/i18n/locales/fr-CA/translation.json b/src/lib/i18n/locales/fr-CA/translation.json index 765586d84..ad5f062b4 100644 --- a/src/lib/i18n/locales/fr-CA/translation.json +++ b/src/lib/i18n/locales/fr-CA/translation.json @@ -577,6 +577,7 @@ "File not found.": "Fichier introuvable.", "File removed successfully.": "", "File size should not exceed {{maxSize}} MB.": "", + "File Upload": "", "File uploaded successfully": "", "Files": "", "Filter is now globally disabled": "Le filtre est maintenant désactivé globalement", @@ -786,6 +787,7 @@ "Model {{name}} is now {{status}}": "Le modèle {{name}} est désormais {{status}}.", "Model {{name}} is now hidden": "", "Model {{name}} is now visible": "", + "Model accepts file inputs": "", "Model accepts image inputs": "", "Model can execute code and perform calculations": "", "Model can generate images based on text prompts": "", @@ -800,6 +802,7 @@ "Model Params": "Paramètres du modèle", "Model Permissions": "", "Model updated successfully": "Le modèle a été mis à jour avec succès", + "Model(s) do not support file upload": "", "Modelfile Content": "Contenu du Fichier de Modèle", "Models": "Modèles", "Models Access": "", diff --git a/src/lib/i18n/locales/fr-FR/translation.json b/src/lib/i18n/locales/fr-FR/translation.json index 1bf3e346e..93818015a 100644 --- a/src/lib/i18n/locales/fr-FR/translation.json +++ b/src/lib/i18n/locales/fr-FR/translation.json @@ -577,6 +577,7 @@ "File not found.": "Fichier introuvable.", "File removed successfully.": "Fichier supprimé avec succès.", "File size should not exceed {{maxSize}} MB.": "La taille du fichier ne doit pas dépasser {{maxSize}} Mo.", + "File Upload": "", "File uploaded successfully": "Fichier téléversé avec succès", "Files": "Fichiers", "Filter is now globally disabled": "Le filtre est maintenant désactivé globalement", @@ -786,6 +787,7 @@ "Model {{name}} is now {{status}}": "Le modèle {{name}} est désormais {{status}}.", "Model {{name}} is now hidden": "Le modèle {{name}} est maintenant masqué", "Model {{name}} is now visible": "Le modèle {{name}} est maintenant visible", + "Model accepts file inputs": "", "Model accepts image inputs": "Le modèle accepte les images en entrée", "Model can execute code and perform calculations": "", "Model can generate images based on text prompts": "", @@ -800,6 +802,7 @@ "Model Params": "Paramètres du modèle", "Model Permissions": "Autorisations du modèle", "Model updated successfully": "Le modèle a été mis à jour avec succès", + "Model(s) do not support file upload": "", "Modelfile Content": "Contenu du Fichier de Modèle", "Models": "Modèles", "Models Access": "Accès aux modèles", diff --git a/src/lib/i18n/locales/he-IL/translation.json b/src/lib/i18n/locales/he-IL/translation.json index 85abce146..8ebc4c970 100644 --- a/src/lib/i18n/locales/he-IL/translation.json +++ b/src/lib/i18n/locales/he-IL/translation.json @@ -577,6 +577,7 @@ "File not found.": "הקובץ לא נמצא.", "File removed successfully.": "", "File size should not exceed {{maxSize}} MB.": "", + "File Upload": "", "File uploaded successfully": "", "Files": "", "Filter is now globally disabled": "", @@ -786,6 +787,7 @@ "Model {{name}} is now {{status}}": "דגם {{name}} הוא כעת {{status}}", "Model {{name}} is now hidden": "", "Model {{name}} is now visible": "", + "Model accepts file inputs": "", "Model accepts image inputs": "", "Model can execute code and perform calculations": "", "Model can generate images based on text prompts": "", @@ -800,6 +802,7 @@ "Model Params": "פרמס מודל", "Model Permissions": "", "Model updated successfully": "", + "Model(s) do not support file upload": "", "Modelfile Content": "תוכן קובץ מודל", "Models": "מודלים", "Models Access": "", diff --git a/src/lib/i18n/locales/hi-IN/translation.json b/src/lib/i18n/locales/hi-IN/translation.json index 5bcf7a580..7ac69855e 100644 --- a/src/lib/i18n/locales/hi-IN/translation.json +++ b/src/lib/i18n/locales/hi-IN/translation.json @@ -577,6 +577,7 @@ "File not found.": "फ़ाइल प्राप्त नहीं हुई।", "File removed successfully.": "", "File size should not exceed {{maxSize}} MB.": "", + "File Upload": "", "File uploaded successfully": "", "Files": "", "Filter is now globally disabled": "", @@ -786,6 +787,7 @@ "Model {{name}} is now {{status}}": "मॉडल {{name}} अब {{status}} है", "Model {{name}} is now hidden": "", "Model {{name}} is now visible": "", + "Model accepts file inputs": "", "Model accepts image inputs": "", "Model can execute code and perform calculations": "", "Model can generate images based on text prompts": "", @@ -800,6 +802,7 @@ "Model Params": "मॉडल Params", "Model Permissions": "", "Model updated successfully": "", + "Model(s) do not support file upload": "", "Modelfile Content": "मॉडल फ़ाइल सामग्री", "Models": "सभी मॉडल", "Models Access": "", diff --git a/src/lib/i18n/locales/hr-HR/translation.json b/src/lib/i18n/locales/hr-HR/translation.json index 2354179e0..1d3649b64 100644 --- a/src/lib/i18n/locales/hr-HR/translation.json +++ b/src/lib/i18n/locales/hr-HR/translation.json @@ -577,6 +577,7 @@ "File not found.": "Datoteka nije pronađena.", "File removed successfully.": "", "File size should not exceed {{maxSize}} MB.": "", + "File Upload": "", "File uploaded successfully": "", "Files": "", "Filter is now globally disabled": "", @@ -786,6 +787,7 @@ "Model {{name}} is now {{status}}": "Model {{name}} sada je {{status}}", "Model {{name}} is now hidden": "", "Model {{name}} is now visible": "", + "Model accepts file inputs": "", "Model accepts image inputs": "", "Model can execute code and perform calculations": "", "Model can generate images based on text prompts": "", @@ -800,6 +802,7 @@ "Model Params": "Model parametri", "Model Permissions": "", "Model updated successfully": "", + "Model(s) do not support file upload": "", "Modelfile Content": "Sadržaj datoteke modela", "Models": "Modeli", "Models Access": "", diff --git a/src/lib/i18n/locales/hu-HU/translation.json b/src/lib/i18n/locales/hu-HU/translation.json index b8c852634..c736f66c2 100644 --- a/src/lib/i18n/locales/hu-HU/translation.json +++ b/src/lib/i18n/locales/hu-HU/translation.json @@ -577,6 +577,7 @@ "File not found.": "Fájl nem található.", "File removed successfully.": "Fájl sikeresen eltávolítva.", "File size should not exceed {{maxSize}} MB.": "A fájl mérete nem haladhatja meg a {{maxSize}} MB-ot.", + "File Upload": "", "File uploaded successfully": "Fájl sikeresen feltöltve", "Files": "Fájlok", "Filter is now globally disabled": "A szűrő globálisan letiltva", @@ -786,6 +787,7 @@ "Model {{name}} is now {{status}}": "A {{name}} modell most {{status}} állapotban van", "Model {{name}} is now hidden": "A {{name}} modell most elrejtve", "Model {{name}} is now visible": "A {{name}} modell most látható", + "Model accepts file inputs": "", "Model accepts image inputs": "A modell elfogad képbemenetet", "Model can execute code and perform calculations": "", "Model can generate images based on text prompts": "", @@ -800,6 +802,7 @@ "Model Params": "Modell paraméterek", "Model Permissions": "Modell engedélyek", "Model updated successfully": "Modell sikeresen frissítve", + "Model(s) do not support file upload": "", "Modelfile Content": "Modellfájl tartalom", "Models": "Modellek", "Models Access": "Modellek hozzáférése", diff --git a/src/lib/i18n/locales/id-ID/translation.json b/src/lib/i18n/locales/id-ID/translation.json index 4ee69f6cf..6cc4bb515 100644 --- a/src/lib/i18n/locales/id-ID/translation.json +++ b/src/lib/i18n/locales/id-ID/translation.json @@ -577,6 +577,7 @@ "File not found.": "File tidak ditemukan.", "File removed successfully.": "", "File size should not exceed {{maxSize}} MB.": "", + "File Upload": "", "File uploaded successfully": "", "Files": "", "Filter is now globally disabled": "Filter sekarang dinonaktifkan secara global", @@ -786,6 +787,7 @@ "Model {{name}} is now {{status}}": "Model {{name}} sekarang menjadi {{status}}", "Model {{name}} is now hidden": "", "Model {{name}} is now visible": "", + "Model accepts file inputs": "", "Model accepts image inputs": "", "Model can execute code and perform calculations": "", "Model can generate images based on text prompts": "", @@ -800,6 +802,7 @@ "Model Params": "Parameter Model", "Model Permissions": "", "Model updated successfully": "Model berhasil diperbarui", + "Model(s) do not support file upload": "", "Modelfile Content": "Konten File Model", "Models": "Model", "Models Access": "", diff --git a/src/lib/i18n/locales/ie-GA/translation.json b/src/lib/i18n/locales/ie-GA/translation.json index 1f79ffc40..58fadbaf2 100644 --- a/src/lib/i18n/locales/ie-GA/translation.json +++ b/src/lib/i18n/locales/ie-GA/translation.json @@ -577,6 +577,7 @@ "File not found.": "Níor aimsíodh an comhad.", "File removed successfully.": "D'éirigh le baint an chomhaid.", "File size should not exceed {{maxSize}} MB.": "Níor chóir go mbeadh méid an chomhaid níos mó ná {{maxSize}} MB.", + "File Upload": "", "File uploaded successfully": "D'éirigh le huaslódáil an chomhaid", "Files": "Comhaid", "Filter is now globally disabled": "Tá an scagaire faoi mhíchumas go domhanda", @@ -786,6 +787,7 @@ "Model {{name}} is now {{status}}": "Tá samhail {{name}} {{status}} anois", "Model {{name}} is now hidden": "Tá múnla {{name}} i bhfolach anois", "Model {{name}} is now visible": "Tá múnla {{name}} le feiceáil anois", + "Model accepts file inputs": "", "Model accepts image inputs": "Glacann múnla le hionchuir", "Model can execute code and perform calculations": "", "Model can generate images based on text prompts": "", @@ -800,6 +802,7 @@ "Model Params": "Múnla Params", "Model Permissions": "Ceadanna Múnla", "Model updated successfully": "An tsamhail nuashonraithe", + "Model(s) do not support file upload": "", "Modelfile Content": "Ábhar Comhad Múnla", "Models": "Múnlaí", "Models Access": "Rochtain Múnlaí", diff --git a/src/lib/i18n/locales/it-IT/translation.json b/src/lib/i18n/locales/it-IT/translation.json index 1e85a0504..e1dc58caa 100644 --- a/src/lib/i18n/locales/it-IT/translation.json +++ b/src/lib/i18n/locales/it-IT/translation.json @@ -577,6 +577,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 uploaded successfully": "Caricamento file riuscito", "Files": "File", "Filter is now globally disabled": "Il filtro è ora disabilitato globalmente", @@ -786,6 +787,7 @@ "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 image inputs": "Il modello accetta input immagine", "Model can execute code and perform calculations": "", "Model can generate images based on text prompts": "", @@ -800,6 +802,7 @@ "Model Params": "Parametri del modello", "Model Permissions": "Permessi del modello", "Model updated successfully": "Modello aggiornato con successo", + "Model(s) do not support file upload": "", "Modelfile Content": "Contenuto del file modello", "Models": "Modelli", "Models Access": "Accesso ai modelli", diff --git a/src/lib/i18n/locales/ja-JP/translation.json b/src/lib/i18n/locales/ja-JP/translation.json index 35c05b427..8715f6431 100644 --- a/src/lib/i18n/locales/ja-JP/translation.json +++ b/src/lib/i18n/locales/ja-JP/translation.json @@ -577,6 +577,7 @@ "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": "グローバルフィルタが無効です。", @@ -786,6 +787,7 @@ "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": "", @@ -800,6 +802,7 @@ "Model Params": "モデルパラメータ", "Model Permissions": "モデルの許可", "Model updated successfully": "モデルが正常に更新されました", + "Model(s) do not support file upload": "", "Modelfile Content": "モデルファイルの内容", "Models": "モデル", "Models Access": "モデルアクセス", diff --git a/src/lib/i18n/locales/ka-GE/translation.json b/src/lib/i18n/locales/ka-GE/translation.json index a1d3f9978..fbb5d9b8b 100644 --- a/src/lib/i18n/locales/ka-GE/translation.json +++ b/src/lib/i18n/locales/ka-GE/translation.json @@ -577,6 +577,7 @@ "File not found.": "ფაილი ნაპოვნი არაა.", "File removed successfully.": "", "File size should not exceed {{maxSize}} MB.": "", + "File Upload": "", "File uploaded successfully": "", "Files": "ფაილი", "Filter is now globally disabled": "", @@ -786,6 +787,7 @@ "Model {{name}} is now {{status}}": "Model {{name}} is now {{status}}", "Model {{name}} is now hidden": "", "Model {{name}} is now visible": "", + "Model accepts file inputs": "", "Model accepts image inputs": "", "Model can execute code and perform calculations": "", "Model can generate images based on text prompts": "", @@ -800,6 +802,7 @@ "Model Params": "მოდელის პარამეტრები", "Model Permissions": "მოდელის წვდომები", "Model updated successfully": "", + "Model(s) do not support file upload": "", "Modelfile Content": "მოდელის ფაილის შემცველობა", "Models": "მოდელები", "Models Access": "მოდელის წვდომა", diff --git a/src/lib/i18n/locales/ko-KR/translation.json b/src/lib/i18n/locales/ko-KR/translation.json index 6a789b583..a1f70ed94 100644 --- a/src/lib/i18n/locales/ko-KR/translation.json +++ b/src/lib/i18n/locales/ko-KR/translation.json @@ -577,6 +577,7 @@ "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": "전반적으로 필터 비활성화됨", @@ -786,6 +787,7 @@ "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": "", @@ -800,6 +802,7 @@ "Model Params": "모델 파라미터", "Model Permissions": "모델 권한", "Model updated successfully": "성공적으로 모델이 업데이트되었습니다", + "Model(s) do not support file upload": "", "Modelfile Content": "모델 파일 내용", "Models": "모델", "Models Access": "모델 접근", diff --git a/src/lib/i18n/locales/lt-LT/translation.json b/src/lib/i18n/locales/lt-LT/translation.json index 8ea693e4f..8e52a7de9 100644 --- a/src/lib/i18n/locales/lt-LT/translation.json +++ b/src/lib/i18n/locales/lt-LT/translation.json @@ -577,6 +577,7 @@ "File not found.": "Failas nerastas.", "File removed successfully.": "", "File size should not exceed {{maxSize}} MB.": "", + "File Upload": "", "File uploaded successfully": "", "Files": "Rinkmenos", "Filter is now globally disabled": "Filtrai nėra leidžiami globaliai", @@ -786,6 +787,7 @@ "Model {{name}} is now {{status}}": "Modelis {{name}} dabar {{status}}", "Model {{name}} is now hidden": "", "Model {{name}} is now visible": "", + "Model accepts file inputs": "", "Model accepts image inputs": "", "Model can execute code and perform calculations": "", "Model can generate images based on text prompts": "", @@ -800,6 +802,7 @@ "Model Params": "Modelio parametrai", "Model Permissions": "", "Model updated successfully": "Modelis atnaujintas sėkmingai", + "Model(s) do not support file upload": "", "Modelfile Content": "Modelio failo turinys", "Models": "Modeliai", "Models Access": "", diff --git a/src/lib/i18n/locales/ms-MY/translation.json b/src/lib/i18n/locales/ms-MY/translation.json index 3c65bbe6f..328501b46 100644 --- a/src/lib/i18n/locales/ms-MY/translation.json +++ b/src/lib/i18n/locales/ms-MY/translation.json @@ -577,6 +577,7 @@ "File not found.": "Fail tidak dijumpai", "File removed successfully.": "", "File size should not exceed {{maxSize}} MB.": "", + "File Upload": "", "File uploaded successfully": "", "Files": "Fail-Fail", "Filter is now globally disabled": "Tapisan kini dilumpuhkan secara global", @@ -786,6 +787,7 @@ "Model {{name}} is now {{status}}": "Model {{name}} kini {{status}}", "Model {{name}} is now hidden": "", "Model {{name}} is now visible": "", + "Model accepts file inputs": "", "Model accepts image inputs": "", "Model can execute code and perform calculations": "", "Model can generate images based on text prompts": "", @@ -800,6 +802,7 @@ "Model Params": "Model Params", "Model Permissions": "", "Model updated successfully": "Model berjaya dikemas kini", + "Model(s) do not support file upload": "", "Modelfile Content": "Kandungan Modelfail", "Models": "Model", "Models Access": "", diff --git a/src/lib/i18n/locales/nb-NO/translation.json b/src/lib/i18n/locales/nb-NO/translation.json index 3fb25f6d1..d6474bf19 100644 --- a/src/lib/i18n/locales/nb-NO/translation.json +++ b/src/lib/i18n/locales/nb-NO/translation.json @@ -577,6 +577,7 @@ "File not found.": "Finner ikke filen.", "File removed successfully.": "Filen er fjernet.", "File size should not exceed {{maxSize}} MB.": "Filstørrelser kan ikke være på mer enn {{maxSize} MB", + "File Upload": "", "File uploaded successfully": "Filen er lastet opp", "Files": "Filer", "Filter is now globally disabled": "Filteret er nå globalt deaktivert", @@ -786,6 +787,7 @@ "Model {{name}} is now {{status}}": "Modellen {{name}} er nå {{status}}", "Model {{name}} is now hidden": "", "Model {{name}} is now visible": "", + "Model accepts file inputs": "", "Model accepts image inputs": "Modellen godtar bildeinndata", "Model can execute code and perform calculations": "", "Model can generate images based on text prompts": "", @@ -800,6 +802,7 @@ "Model Params": "Modellparametere", "Model Permissions": "Modelltillatelser", "Model updated successfully": "Modell oppdatert", + "Model(s) do not support file upload": "", "Modelfile Content": "Modellfilinnhold", "Models": "Modeller", "Models Access": "Tilgang til modeller", diff --git a/src/lib/i18n/locales/nl-NL/translation.json b/src/lib/i18n/locales/nl-NL/translation.json index dd2dcf9a4..228766018 100644 --- a/src/lib/i18n/locales/nl-NL/translation.json +++ b/src/lib/i18n/locales/nl-NL/translation.json @@ -577,6 +577,7 @@ "File not found.": "Bestand niet gevonden.", "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", "Files": "Bestanden", "Filter is now globally disabled": "Filter is nu globaal uitgeschakeld", @@ -786,6 +787,7 @@ "Model {{name}} is now {{status}}": "Model {{name}} is nu {{status}}", "Model {{name}} is now hidden": "Model {{naam}} is nu verborgen", "Model {{name}} is now visible": "Model {{naam}} is nu zichtbaar", + "Model accepts file inputs": "", "Model accepts image inputs": "Model accepteerd afbeeldingsinvoer", "Model can execute code and perform calculations": "", "Model can generate images based on text prompts": "", @@ -800,6 +802,7 @@ "Model Params": "Modelparams", "Model Permissions": "Modeltoestemmingen", "Model updated successfully": "Model succesvol bijgewerkt", + "Model(s) do not support file upload": "", "Modelfile Content": "Modelfile-inhoud", "Models": "Modellen", "Models Access": "Modellentoegang", diff --git a/src/lib/i18n/locales/pa-IN/translation.json b/src/lib/i18n/locales/pa-IN/translation.json index 3e02f0d6b..508d14c76 100644 --- a/src/lib/i18n/locales/pa-IN/translation.json +++ b/src/lib/i18n/locales/pa-IN/translation.json @@ -577,6 +577,7 @@ "File not found.": "ਫਾਈਲ ਨਹੀਂ ਮਿਲੀ।", "File removed successfully.": "", "File size should not exceed {{maxSize}} MB.": "", + "File Upload": "", "File uploaded successfully": "", "Files": "", "Filter is now globally disabled": "", @@ -786,6 +787,7 @@ "Model {{name}} is now {{status}}": "ਮਾਡਲ {{name}} ਹੁਣ {{status}} ਹੈ", "Model {{name}} is now hidden": "", "Model {{name}} is now visible": "", + "Model accepts file inputs": "", "Model accepts image inputs": "", "Model can execute code and perform calculations": "", "Model can generate images based on text prompts": "", @@ -800,6 +802,7 @@ "Model Params": "ਮਾਡਲ ਪਰਮਜ਼", "Model Permissions": "", "Model updated successfully": "", + "Model(s) do not support file upload": "", "Modelfile Content": "ਮਾਡਲਫਾਈਲ ਸਮੱਗਰੀ", "Models": "ਮਾਡਲ", "Models Access": "", diff --git a/src/lib/i18n/locales/pl-PL/translation.json b/src/lib/i18n/locales/pl-PL/translation.json index 91268479d..51b20799f 100644 --- a/src/lib/i18n/locales/pl-PL/translation.json +++ b/src/lib/i18n/locales/pl-PL/translation.json @@ -577,6 +577,7 @@ "File not found.": "Plik nie został znaleziony.", "File removed successfully.": "Plik został usunięty pomyślnie.", "File size should not exceed {{maxSize}} MB.": "Rozmiar pliku nie powinien przekraczać {{maxSize}} MB.", + "File Upload": "", "File uploaded successfully": "Plik został pomyślnie przesłany", "Files": "Pliki", "Filter is now globally disabled": "Filtr jest teraz globalnie wyłączony", @@ -786,6 +787,7 @@ "Model {{name}} is now {{status}}": "Model {{name}} jest teraz {{status}}", "Model {{name}} is now hidden": "", "Model {{name}} is now visible": "", + "Model accepts file inputs": "", "Model accepts image inputs": "Model przyjmuje wejścia obrazowe", "Model can execute code and perform calculations": "", "Model can generate images based on text prompts": "", @@ -800,6 +802,7 @@ "Model Params": "Parametry modelu", "Model Permissions": "Uprawnienia modelu", "Model updated successfully": "Model został zaktualizowany pomyślnie", + "Model(s) do not support file upload": "", "Modelfile Content": "Treść pliku modelu", "Models": "Modele", "Models Access": "Dostęp do modeli", diff --git a/src/lib/i18n/locales/pt-BR/translation.json b/src/lib/i18n/locales/pt-BR/translation.json index 8de71b265..5d5ffa0f7 100644 --- a/src/lib/i18n/locales/pt-BR/translation.json +++ b/src/lib/i18n/locales/pt-BR/translation.json @@ -577,6 +577,7 @@ "File not found.": "Arquivo não encontrado.", "File removed successfully.": "Arquivo removido com sucesso.", "File size should not exceed {{maxSize}} MB.": "Arquivo não pode exceder {{maxSize}} MB.", + "File Upload": "", "File uploaded successfully": "", "Files": "Arquivos", "Filter is now globally disabled": "O filtro está agora desativado globalmente", @@ -786,6 +787,7 @@ "Model {{name}} is now {{status}}": "Modelo {{name}} está agora {{status}}", "Model {{name}} is now hidden": "", "Model {{name}} is now visible": "", + "Model accepts file inputs": "", "Model accepts image inputs": "Modelo aceita entradas de imagens", "Model can execute code and perform calculations": "", "Model can generate images based on text prompts": "", @@ -800,6 +802,7 @@ "Model Params": "Parâmetros do Modelo", "Model Permissions": "Permissões do Modelo", "Model updated successfully": "Modelo atualizado com sucesso", + "Model(s) do not support file upload": "", "Modelfile Content": "Conteúdo do Arquivo do Modelo", "Models": "Modelos", "Models Access": "Acesso aos Modelos", diff --git a/src/lib/i18n/locales/pt-PT/translation.json b/src/lib/i18n/locales/pt-PT/translation.json index e21f0baa4..2d7f2ca1a 100644 --- a/src/lib/i18n/locales/pt-PT/translation.json +++ b/src/lib/i18n/locales/pt-PT/translation.json @@ -577,6 +577,7 @@ "File not found.": "Ficheiro não encontrado.", "File removed successfully.": "", "File size should not exceed {{maxSize}} MB.": "", + "File Upload": "", "File uploaded successfully": "", "Files": "", "Filter is now globally disabled": "", @@ -786,6 +787,7 @@ "Model {{name}} is now {{status}}": "Modelo {{name}} agora é {{status}}", "Model {{name}} is now hidden": "", "Model {{name}} is now visible": "", + "Model accepts file inputs": "", "Model accepts image inputs": "", "Model can execute code and perform calculations": "", "Model can generate images based on text prompts": "", @@ -800,6 +802,7 @@ "Model Params": "Params Modelo", "Model Permissions": "", "Model updated successfully": "", + "Model(s) do not support file upload": "", "Modelfile Content": "Conteúdo do Ficheiro do Modelo", "Models": "Modelos", "Models Access": "", diff --git a/src/lib/i18n/locales/ro-RO/translation.json b/src/lib/i18n/locales/ro-RO/translation.json index 27b2e66e2..5e4a0d6a7 100644 --- a/src/lib/i18n/locales/ro-RO/translation.json +++ b/src/lib/i18n/locales/ro-RO/translation.json @@ -577,6 +577,7 @@ "File not found.": "Fișierul nu a fost găsit.", "File removed successfully.": "Fișierul a fost eliminat cu succes.", "File size should not exceed {{maxSize}} MB.": "Dimensiunea fișierului nu ar trebui să depășească {{maxSize}} MB.", + "File Upload": "", "File uploaded successfully": "", "Files": "Fișiere", "Filter is now globally disabled": "Filtrul este acum dezactivat global", @@ -786,6 +787,7 @@ "Model {{name}} is now {{status}}": "Modelul {{name}} este acum {{status}}", "Model {{name}} is now hidden": "", "Model {{name}} is now visible": "", + "Model accepts file inputs": "", "Model accepts image inputs": "Modelul acceptă imagini ca intrări.", "Model can execute code and perform calculations": "", "Model can generate images based on text prompts": "", @@ -800,6 +802,7 @@ "Model Params": "Parametri Model", "Model Permissions": "", "Model updated successfully": "Modelul a fost actualizat cu succes", + "Model(s) do not support file upload": "", "Modelfile Content": "Conținutul Fișierului Model", "Models": "Modele", "Models Access": "", diff --git a/src/lib/i18n/locales/ru-RU/translation.json b/src/lib/i18n/locales/ru-RU/translation.json index 370b9959d..64d652ce3 100644 --- a/src/lib/i18n/locales/ru-RU/translation.json +++ b/src/lib/i18n/locales/ru-RU/translation.json @@ -577,6 +577,7 @@ "File not found.": "Файл не найден.", "File removed successfully.": "Файл успешно удален.", "File size should not exceed {{maxSize}} MB.": "Размер файла не должен превышать {{maxSize}} МБ.", + "File Upload": "", "File uploaded successfully": "Файл успешно загружен", "Files": "Файлы", "Filter is now globally disabled": "Фильтр теперь отключен глобально", @@ -786,6 +787,7 @@ "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": "", @@ -800,6 +802,7 @@ "Model Params": "Параметры модели", "Model Permissions": "Разрешения Модели", "Model updated successfully": "Модель успешно обновлена", + "Model(s) do not support file upload": "", "Modelfile Content": "Содержимое файла модели", "Models": "Модели", "Models Access": "Доступ к моделям", diff --git a/src/lib/i18n/locales/sk-SK/translation.json b/src/lib/i18n/locales/sk-SK/translation.json index 2769c2aa5..13d5f429b 100644 --- a/src/lib/i18n/locales/sk-SK/translation.json +++ b/src/lib/i18n/locales/sk-SK/translation.json @@ -577,6 +577,7 @@ "File not found.": "Súbor nenájdený.", "File removed successfully.": "Súbor bol úspešne odstránený.", "File size should not exceed {{maxSize}} MB.": "Veľkosť súboru by nemala presiahnuť {{maxSize}} MB.", + "File Upload": "", "File uploaded successfully": "", "Files": "Súbory", "Filter is now globally disabled": "Filter je teraz globálne zakázaný", @@ -786,6 +787,7 @@ "Model {{name}} is now {{status}}": "Model {{name}} je teraz {{status}}.", "Model {{name}} is now hidden": "", "Model {{name}} is now visible": "", + "Model accepts file inputs": "", "Model accepts image inputs": "Model prijíma vstupy vo forme obrázkov", "Model can execute code and perform calculations": "", "Model can generate images based on text prompts": "", @@ -800,6 +802,7 @@ "Model Params": "Parametre modelu", "Model Permissions": "", "Model updated successfully": "Model bol úspešne aktualizovaný", + "Model(s) do not support file upload": "", "Modelfile Content": "Obsah súboru modelfile", "Models": "Modely", "Models Access": "", diff --git a/src/lib/i18n/locales/sr-RS/translation.json b/src/lib/i18n/locales/sr-RS/translation.json index 8d268aaee..350a4368a 100644 --- a/src/lib/i18n/locales/sr-RS/translation.json +++ b/src/lib/i18n/locales/sr-RS/translation.json @@ -577,6 +577,7 @@ "File not found.": "Датотека није пронађена.", "File removed successfully.": "", "File size should not exceed {{maxSize}} MB.": "", + "File Upload": "", "File uploaded successfully": "", "Files": "Датотеке", "Filter is now globally disabled": "", @@ -786,6 +787,7 @@ "Model {{name}} is now {{status}}": "Модел {{наме}} је сада {{статус}}", "Model {{name}} is now hidden": "", "Model {{name}} is now visible": "", + "Model accepts file inputs": "", "Model accepts image inputs": "", "Model can execute code and perform calculations": "", "Model can generate images based on text prompts": "", @@ -800,6 +802,7 @@ "Model Params": "Модел Парамс", "Model Permissions": "", "Model updated successfully": "", + "Model(s) do not support file upload": "", "Modelfile Content": "Садржај модел-датотеке", "Models": "Модели", "Models Access": "", diff --git a/src/lib/i18n/locales/sv-SE/translation.json b/src/lib/i18n/locales/sv-SE/translation.json index b773ec1d9..b51a459a9 100644 --- a/src/lib/i18n/locales/sv-SE/translation.json +++ b/src/lib/i18n/locales/sv-SE/translation.json @@ -577,6 +577,7 @@ "File not found.": "Fil hittades inte.", "File removed successfully.": "", "File size should not exceed {{maxSize}} MB.": "", + "File Upload": "", "File uploaded successfully": "", "Files": "", "Filter is now globally disabled": "", @@ -786,6 +787,7 @@ "Model {{name}} is now {{status}}": "Modellen {{name}} är nu {{status}}", "Model {{name}} is now hidden": "", "Model {{name}} is now visible": "", + "Model accepts file inputs": "", "Model accepts image inputs": "", "Model can execute code and perform calculations": "", "Model can generate images based on text prompts": "", @@ -800,6 +802,7 @@ "Model Params": "Modell Params", "Model Permissions": "", "Model updated successfully": "", + "Model(s) do not support file upload": "", "Modelfile Content": "Modelfilens innehåll", "Models": "Modeller", "Models Access": "", diff --git a/src/lib/i18n/locales/th-TH/translation.json b/src/lib/i18n/locales/th-TH/translation.json index 30cb79ff0..b78d597bb 100644 --- a/src/lib/i18n/locales/th-TH/translation.json +++ b/src/lib/i18n/locales/th-TH/translation.json @@ -577,6 +577,7 @@ "File not found.": "ไม่พบไฟล์", "File removed successfully.": "", "File size should not exceed {{maxSize}} MB.": "", + "File Upload": "", "File uploaded successfully": "", "Files": "ไฟล์", "Filter is now globally disabled": "การกรองถูกปิดใช้งานทั่วโลกแล้ว", @@ -786,6 +787,7 @@ "Model {{name}} is now {{status}}": "โมเดล {{name}} ขณะนี้ {{status}}", "Model {{name}} is now hidden": "", "Model {{name}} is now visible": "", + "Model accepts file inputs": "", "Model accepts image inputs": "", "Model can execute code and perform calculations": "", "Model can generate images based on text prompts": "", @@ -800,6 +802,7 @@ "Model Params": "พารามิเตอร์ของโมเดล", "Model Permissions": "", "Model updated successfully": "อัปเดตโมเดลเรียบร้อยแล้ว", + "Model(s) do not support file upload": "", "Modelfile Content": "เนื้อหาของไฟล์โมเดล", "Models": "โมเดล", "Models Access": "", diff --git a/src/lib/i18n/locales/tk-TW/translation.json b/src/lib/i18n/locales/tk-TW/translation.json index 9403c43f6..37f570c93 100644 --- a/src/lib/i18n/locales/tk-TW/translation.json +++ b/src/lib/i18n/locales/tk-TW/translation.json @@ -577,6 +577,7 @@ "File not found.": "", "File removed successfully.": "", "File size should not exceed {{maxSize}} MB.": "", + "File Upload": "", "File uploaded successfully": "", "Files": "", "Filter is now globally disabled": "", @@ -786,6 +787,7 @@ "Model {{name}} is now {{status}}": "", "Model {{name}} is now hidden": "", "Model {{name}} is now visible": "", + "Model accepts file inputs": "", "Model accepts image inputs": "", "Model can execute code and perform calculations": "", "Model can generate images based on text prompts": "", @@ -800,6 +802,7 @@ "Model Params": "", "Model Permissions": "", "Model updated successfully": "", + "Model(s) do not support file upload": "", "Modelfile Content": "", "Models": "", "Models Access": "", diff --git a/src/lib/i18n/locales/tr-TR/translation.json b/src/lib/i18n/locales/tr-TR/translation.json index 3f6bf4ccd..7f4f8cb01 100644 --- a/src/lib/i18n/locales/tr-TR/translation.json +++ b/src/lib/i18n/locales/tr-TR/translation.json @@ -577,6 +577,7 @@ "File not found.": "Dosya bulunamadı.", "File removed successfully.": "Dosya başarıyla kaldırıldı.", "File size should not exceed {{maxSize}} MB.": "Dosya boyutu {{maxSize}} MB'yi aşmamalıdır.", + "File Upload": "", "File uploaded successfully": "Dosya başarıyla yüklendi", "Files": "Dosyalar", "Filter is now globally disabled": "Filtre artık global olarak devre dışı", @@ -786,6 +787,7 @@ "Model {{name}} is now {{status}}": "{{name}} modeli artık {{status}}", "Model {{name}} is now hidden": "Model {{name}} artık gizli", "Model {{name}} is now visible": "Model {{name}} artık görünür", + "Model accepts file inputs": "", "Model accepts image inputs": "Model görüntü girdilerini kabul eder", "Model can execute code and perform calculations": "", "Model can generate images based on text prompts": "", @@ -800,6 +802,7 @@ "Model Params": "Model Parametreleri", "Model Permissions": "Model İzinleri", "Model updated successfully": "Model başarıyla güncellendi", + "Model(s) do not support file upload": "", "Modelfile Content": "Model Dosyası İçeriği", "Models": "Modeller", "Models Access": "Modellere Erişim", diff --git a/src/lib/i18n/locales/uk-UA/translation.json b/src/lib/i18n/locales/uk-UA/translation.json index 445a80980..196c8ef3b 100644 --- a/src/lib/i18n/locales/uk-UA/translation.json +++ b/src/lib/i18n/locales/uk-UA/translation.json @@ -577,6 +577,7 @@ "File not found.": "Файл не знайдено.", "File removed successfully.": "Файл успішно видалено.", "File size should not exceed {{maxSize}} MB.": "Розмір файлу не повинен перевищувати {{maxSize}} МБ.", + "File Upload": "", "File uploaded successfully": "Файл успішно завантажено", "Files": "Файли", "Filter is now globally disabled": "Фільтр глобально вимкнено", @@ -786,6 +787,7 @@ "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": "", @@ -800,6 +802,7 @@ "Model Params": "Параметри моделі", "Model Permissions": "Дозволи моделей", "Model updated successfully": "Модель успішно оновлено", + "Model(s) do not support file upload": "", "Modelfile Content": "Вміст файлу моделі", "Models": "Моделі", "Models Access": "Доступ до моделей", diff --git a/src/lib/i18n/locales/ur-PK/translation.json b/src/lib/i18n/locales/ur-PK/translation.json index 0ce0e8d05..1d5849761 100644 --- a/src/lib/i18n/locales/ur-PK/translation.json +++ b/src/lib/i18n/locales/ur-PK/translation.json @@ -577,6 +577,7 @@ "File not found.": "فائل نہیں ملی", "File removed successfully.": "فائل کامیابی سے ہٹا دی گئی", "File size should not exceed {{maxSize}} MB.": "فائل کا سائز {{maxSize}} ایم بی سے زیادہ نہیں ہونا چاہیے", + "File Upload": "", "File uploaded successfully": "", "Files": "فائلز", "Filter is now globally disabled": "فلٹر اب عالمی طور پر غیر فعال ہے", @@ -786,6 +787,7 @@ "Model {{name}} is now {{status}}": "ماڈل {{name}} اب {{status}} ہے", "Model {{name}} is now hidden": "", "Model {{name}} is now visible": "", + "Model accepts file inputs": "", "Model accepts image inputs": "ماڈل تصویری ان پٹس قبول کرتا ہے", "Model can execute code and perform calculations": "", "Model can generate images based on text prompts": "", @@ -800,6 +802,7 @@ "Model Params": "ماڈل پیرامیٹرز", "Model Permissions": "", "Model updated successfully": "ماڈل کامیابی کے ساتھ اپ ڈیٹ ہو گیا", + "Model(s) do not support file upload": "", "Modelfile Content": "ماڈل فائل مواد", "Models": "ماڈلز", "Models Access": "", diff --git a/src/lib/i18n/locales/vi-VN/translation.json b/src/lib/i18n/locales/vi-VN/translation.json index 7dc21e568..764806c1d 100644 --- a/src/lib/i18n/locales/vi-VN/translation.json +++ b/src/lib/i18n/locales/vi-VN/translation.json @@ -577,6 +577,7 @@ "File not found.": "Không tìm thấy tệp.", "File removed successfully.": "Xóa tệp thành công.", "File size should not exceed {{maxSize}} MB.": "Kích thước tệp không được vượt quá {{maxSize}} MB.", + "File Upload": "", "File uploaded successfully": "Tải tệp lên thành công", "Files": "Tệp", "Filter is now globally disabled": "Bộ lọc hiện đã bị vô hiệu hóa trên toàn hệ thống", @@ -786,6 +787,7 @@ "Model {{name}} is now {{status}}": "Model {{name}} bây giờ là {{status}}", "Model {{name}} is now hidden": "Mô hình {{name}} hiện đã bị ẩn", "Model {{name}} is now visible": "Mô hình {{name}} hiện có thể nhìn thấy", + "Model accepts file inputs": "", "Model accepts image inputs": "Mô hình chấp nhận đầu vào hình ảnh", "Model can execute code and perform calculations": "", "Model can generate images based on text prompts": "", @@ -800,6 +802,7 @@ "Model Params": "Mô hình Params", "Model Permissions": "Quyền Mô hình", "Model updated successfully": "Model đã được cập nhật thành công", + "Model(s) do not support file upload": "", "Modelfile Content": "Nội dung Tệp Mô hình", "Models": "Mô hình", "Models Access": "Truy cập Mô hình", diff --git a/src/lib/i18n/locales/zh-CN/translation.json b/src/lib/i18n/locales/zh-CN/translation.json index 66b9de536..30034ebb7 100644 --- a/src/lib/i18n/locales/zh-CN/translation.json +++ b/src/lib/i18n/locales/zh-CN/translation.json @@ -577,6 +577,7 @@ "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": "过滤器已全局禁用", @@ -786,6 +787,7 @@ "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": "", @@ -800,6 +802,7 @@ "Model Params": "模型参数", "Model Permissions": "模型权限", "Model updated successfully": "模型更新成功", + "Model(s) do not support file upload": "", "Modelfile Content": "模型文件内容", "Models": "模型", "Models Access": "访问模型列表", diff --git a/src/lib/i18n/locales/zh-TW/translation.json b/src/lib/i18n/locales/zh-TW/translation.json index 81457fbc7..ab1c4d399 100644 --- a/src/lib/i18n/locales/zh-TW/translation.json +++ b/src/lib/i18n/locales/zh-TW/translation.json @@ -577,6 +577,7 @@ "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": "篩選器現在已全域停用", @@ -786,6 +787,7 @@ "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": "", @@ -800,6 +802,7 @@ "Model Params": "模型參數", "Model Permissions": "模型權限", "Model updated successfully": "成功更新模型", + "Model(s) do not support file upload": "", "Modelfile Content": "模型檔案內容", "Models": "模型", "Models Access": "模型存取", From 08e4c163ea99d5310f50da6959b0d694a4e441c8 Mon Sep 17 00:00:00 2001 From: Timothy Jaeryang Baek Date: Sat, 17 May 2025 01:47:48 +0400 Subject: [PATCH 095/100] feat: local/external connections --- backend/open_webui/routers/ollama.py | 12 ++++-- backend/open_webui/routers/openai.py | 18 +++++---- backend/open_webui/utils/models.py | 1 + src/lib/components/AddConnectionModal.svelte | 38 ++++++++++++++++++- .../admin/Settings/Interface.svelte | 10 ++--- .../chat/ModelSelector/Selector.svelte | 28 +++++++------- 6 files changed, 74 insertions(+), 33 deletions(-) diff --git a/backend/open_webui/routers/ollama.py b/backend/open_webui/routers/ollama.py index 85349339f..7c313ea97 100644 --- a/backend/open_webui/routers/ollama.py +++ b/backend/open_webui/routers/ollama.py @@ -340,6 +340,8 @@ async def get_all_models(request: Request, user: UserModel = None): ), # Legacy support ) + connection_type = api_config.get("connection_type", "local") + prefix_id = api_config.get("prefix_id", None) tags = api_config.get("tags", []) model_ids = api_config.get("model_ids", []) @@ -352,14 +354,16 @@ async def get_all_models(request: Request, user: UserModel = None): ) ) - if prefix_id: - for model in response.get("models", []): + for model in response.get("models", []): + if prefix_id: model["model"] = f"{prefix_id}.{model['model']}" - if tags: - for model in response.get("models", []): + if tags: model["tags"] = tags + if connection_type: + model["connection_type"] = connection_type + def merge_models_lists(model_lists): merged_models = {} diff --git a/backend/open_webui/routers/openai.py b/backend/open_webui/routers/openai.py index 02a81209c..a196eca26 100644 --- a/backend/open_webui/routers/openai.py +++ b/backend/open_webui/routers/openai.py @@ -353,21 +353,22 @@ async def get_all_models_responses(request: Request, user: UserModel) -> list: ), # Legacy support ) + connection_type = api_config.get("connection_type", "external") prefix_id = api_config.get("prefix_id", None) tags = api_config.get("tags", []) - if prefix_id: - for model in ( - response if isinstance(response, list) else response.get("data", []) - ): + for model in ( + response if isinstance(response, list) else response.get("data", []) + ): + if prefix_id: model["id"] = f"{prefix_id}.{model['id']}" - if tags: - for model in ( - response if isinstance(response, list) else response.get("data", []) - ): + if tags: model["tags"] = tags + if connection_type: + model["connection_type"] = connection_type + log.debug(f"get_all_models:responses() {responses}") return responses @@ -415,6 +416,7 @@ async def get_all_models(request: Request, user: UserModel) -> dict[str, list]: "name": model.get("name", model["id"]), "owned_by": "openai", "openai": model, + "connection_type": model.get("connection_type", "external"), "urlIdx": idx, } for model in models diff --git a/backend/open_webui/utils/models.py b/backend/open_webui/utils/models.py index 952786691..77ff0c932 100644 --- a/backend/open_webui/utils/models.py +++ b/backend/open_webui/utils/models.py @@ -49,6 +49,7 @@ async def get_all_base_models(request: Request, user: UserModel = None): "created": int(time.time()), "owned_by": "ollama", "ollama": model, + "connection_type": model.get("connection_type", "local"), "tags": model.get("tags", []), } for model in ollama_models["models"] diff --git a/src/lib/components/AddConnectionModal.svelte b/src/lib/components/AddConnectionModal.svelte index 864d850a6..629f19f1b 100644 --- a/src/lib/components/AddConnectionModal.svelte +++ b/src/lib/components/AddConnectionModal.svelte @@ -30,6 +30,9 @@ let url = ''; let key = ''; + let connectionType = 'external'; + let azure = false; + let prefixId = ''; let enable = true; let tags = []; @@ -95,7 +98,9 @@ enable: enable, tags: tags, prefix_id: prefixId, - model_ids: modelIds + model_ids: modelIds, + connection_type: connectionType, + ...(!ollama && azure ? { azure: true } : {}) } }; @@ -120,6 +125,13 @@ tags = connection.config?.tags ?? []; prefixId = connection.config?.prefix_id ?? ''; modelIds = connection.config?.model_ids ?? []; + + if (ollama) { + connectionType = connection.config?.connection_type ?? 'local'; + } else { + connectionType = connection.config?.connection_type ?? 'external'; + azure = connection.config?.azure ?? false; + } } }; @@ -134,7 +146,7 @@
-
+
{#if edit} {$i18n.t('Edit Connection')} @@ -172,6 +184,28 @@ >
+
+
{$i18n.t('Connection Type')}
+ +
+ +
+
+
+ +
{$i18n.t('URL')}
diff --git a/src/lib/components/admin/Settings/Interface.svelte b/src/lib/components/admin/Settings/Interface.svelte index 53d4f29e4..866237973 100644 --- a/src/lib/components/admin/Settings/Interface.svelte +++ b/src/lib/components/admin/Settings/Interface.svelte @@ -108,8 +108,8 @@
-
-
{$i18n.t('Set Task Model')}
+
+
{$i18n.t('Task Model')}
-
{$i18n.t('Local Models')}
+
{$i18n.t('Local Task Model')}
{ if (selectedConnectionType === '') { return true; - } else if (selectedConnectionType === 'ollama') { - return item.model?.owned_by === 'ollama'; - } else if (selectedConnectionType === 'openai') { - return item.model?.owned_by === 'openai'; + } else if (selectedConnectionType === 'local') { + return item.model?.connection_type === 'local'; + } else if (selectedConnectionType === 'external') { + return item.model?.connection_type === 'external'; } else if (selectedConnectionType === 'direct') { return item.model?.direct; } @@ -118,10 +118,10 @@ .filter((item) => { if (selectedConnectionType === '') { return true; - } else if (selectedConnectionType === 'ollama') { - return item.model?.owned_by === 'ollama'; - } else if (selectedConnectionType === 'openai') { - return item.model?.owned_by === 'openai'; + } else if (selectedConnectionType === 'local') { + return item.model?.connection_type === 'local'; + } else if (selectedConnectionType === 'external') { + return item.model?.connection_type === 'external'; } else if (selectedConnectionType === 'direct') { return item.model?.direct; } @@ -393,7 +393,7 @@ class="flex gap-1 w-fit text-center text-sm font-medium rounded-full bg-transparent px-1.5 pb-0.5" bind:this={tagsContainerElement} > - {#if (items.find((item) => item.model?.owned_by === 'ollama') && items.find((item) => item.model?.owned_by === 'openai')) || items.find((item) => item.model?.direct) || tags.length > 0} + {#if (items.find((item) => item.model?.connection_type === 'local') && items.find((item) => item.model?.connection_type === 'external')) || items.find((item) => item.model?.direct) || tags.length > 0}
diff --git a/src/lib/components/chat/Messages/Markdown.svelte b/src/lib/components/chat/Messages/Markdown.svelte index 6f90c407a..2978def3e 100644 --- a/src/lib/components/chat/Messages/Markdown.svelte +++ b/src/lib/components/chat/Messages/Markdown.svelte @@ -16,8 +16,9 @@ export let sourceIds = []; + export let onSave = () => {}; export let onUpdate = () => {}; - export let onCode = () => {}; + export let onPreview = () => {}; export let onSourceClick = () => {}; @@ -49,8 +50,8 @@ {preview} {onTaskClick} {onSourceClick} + {onSave} {onUpdate} - {onCode} {onPreview} /> {/key} diff --git a/src/lib/components/chat/Messages/Markdown/MarkdownTokens.svelte b/src/lib/components/chat/Messages/Markdown/MarkdownTokens.svelte index 53c61fe80..dbe77a414 100644 --- a/src/lib/components/chat/Messages/Markdown/MarkdownTokens.svelte +++ b/src/lib/components/chat/Messages/Markdown/MarkdownTokens.svelte @@ -31,8 +31,8 @@ export let save = false; export let preview = false; + export let onSave: Function = () => {}; export let onUpdate: Function = () => {}; - export let onCode: Function = () => {}; export let onPreview: Function = () => {}; export let onTaskClick: Function = () => {}; @@ -98,15 +98,15 @@ {attributes} {save} {preview} - {onCode} - {onPreview} onSave={(value) => { - onUpdate({ + onSave({ raw: token.raw, oldContent: token.text, newContent: value }); }} + {onUpdate} + {onPreview} /> {:else} {token.text} diff --git a/src/lib/components/chat/Messages/ResponseMessage.svelte b/src/lib/components/chat/Messages/ResponseMessage.svelte index c421529e4..deb96c153 100644 --- a/src/lib/components/chat/Messages/ResponseMessage.svelte +++ b/src/lib/components/chat/Messages/ResponseMessage.svelte @@ -841,7 +841,7 @@ onAddMessages={({ modelId, parentId, messages }) => { addMessages({ modelId, parentId, messages }); }} - onUpdate={({ raw, oldContent, newContent }) => { + onSave={({ raw, oldContent, newContent }) => { history.messages[message.id].content = history.messages[ message.id ].content.replace(raw, raw.replace(oldContent, newContent)); From 765acc4cad58aa809f688d1aac777a293b7f3a0f Mon Sep 17 00:00:00 2001 From: Timothy Jaeryang Baek Date: Sat, 17 May 2025 21:53:31 +0400 Subject: [PATCH 100/100] chore: dep bump --- backend/requirements.txt | 3 ++- pyproject.toml | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/backend/requirements.txt b/backend/requirements.txt index 1eb9af757..07dc09be6 100644 --- a/backend/requirements.txt +++ b/backend/requirements.txt @@ -37,7 +37,8 @@ asgiref==3.8.1 # AI libraries openai anthropic -google-generativeai==0.8.4 +google-genai==1.15.0 +google-generativeai==0.8.5 tiktoken langchain==0.3.24 diff --git a/pyproject.toml b/pyproject.toml index 50765c179..01e6bd72c 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -45,7 +45,8 @@ dependencies = [ "openai", "anthropic", - "google-generativeai==0.8.4", + "google-genai==1.15.0", + "google-generativeai==0.8.5", "tiktoken", "langchain==0.3.24",