{
  "title": "設定",
  "tabs": {
    "basic": "基本設定",
    "ai": "AI 設定",
    "aiConfig": "模型服務",
    "aiDefaultModel": "預設模型",
    "aiPrompt": "聊天設定",
    "aiPreprocess": "前處理",
    "dataManage": "資料管理",
    "storage": "儲存管理",
    "storageManage": "儲存管理",
    "sessionManage": "會話管理",
    "about": "關於 ChatLab",
    "api": "自動化",
    "apiSubTabs": {
      "autoSync": "自動同步",
      "apiService": "API 服務"
    }
  },
  "basic": {
    "general": {
      "title": "一般"
    },
    "preferences": {
      "title": "偏好設定"
    },
    "language": {
      "title": "語言",
      "description": "選擇軟體顯示語言"
    },
    "appearance": {
      "title": "外觀設定",
      "themeMode": "主題模式",
      "auto": "依系統設定",
      "light": "淺色模式",
      "dark": "深色模式"
    },
    "defaultTab": {
      "title": "預設標籤頁",
      "description": "進入聊天對話後預設顯示的頁面",
      "overview": "總覽",
      "aiChat": "AI 對話"
    },
    "autoLaunch": {
      "title": "啟動設定",
      "openAtLogin": "開機自動啟動",
      "openAtLoginDesc": "系統啟動時自動執行 ChatLab",
      "devModeHint": "開發模式下不可用"
    },
    "toolsPanel": {
      "positionLabel": "快捷工具入口位置",
      "positionDesc": "選擇快捷工具面板的顯示位置",
      "positionSide": "右側",
      "positionHeader": "頂部"
    },
    "screenshot": {
      "title": "截圖設定",
      "mobileAdapt": "行動畫面適配",
      "mobileAdaptDesc": "截圖時會自動縮放寬度，方便在行動裝置上查看"
    },
    "network": {
      "title": "網路設定",
      "proxyMode": "代理模式",
      "proxyModeDesc": "存取網路時使用的代理方式",
      "modeOff": "關閉",
      "modeSystem": "跟隨系統",
      "modeManual": "手動設定",
      "proxyAddress": "代理地址",
      "proxyPlaceholder": "http://127.0.0.1:7890",
      "proxyHelp": "支援 HTTP/HTTPS 代理，格式如：http://127.0.0.1:7890",
      "testConnection": "測試連線",
      "testing": "測試中...",
      "connectionSuccess": "代理連線成功！",
      "connectionFailed": "連線失敗",
      "enterProxyFirst": "請先輸入代理地址",
      "invalidProxyUrl": "請輸入有效的代理地址，格式如 http://127.0.0.1:7890",
      "onlyHttpSupported": "僅支援 http:// 或 https:// 協定",
      "saveFailed": "儲存失敗"
    }
  },
  "defaultModel": {
    "title": "預設模型",
    "noConfigs": "請先在「模型服務」中新增模型設定",
    "selectProvider": "選擇提供商",
    "selectModel": "選擇模型",
    "assistantModel": {
      "label": "預設助手模型",
      "description": "用於 AI 對話、工具呼叫、SQL 助手、上下文壓縮"
    },
    "fastModel": {
      "label": "快速模型",
      "description": "用於會話摘要生成，未設定時使用預設助手模型",
      "followAssistant": "跟隨預設助手模型"
    }
  },
  "aiConfig": {
    "title": "模型服務",
    "providerTitle": "服務提供商",
    "loading": "載入中...",
    "inUse": "使用中",
    "defaultModel": "預設模型",
    "localService": "本機服務",
    "edit": "編輯",
    "delete": "刪除",
    "empty": {
      "title": "尚未設定 AI 服務",
      "description": "新增一組設定後即可開始使用 AI 功能"
    },
    "addConfig": "新增服務",
    "maxConfigs": "已達設定上限（最多 10 組）",
    "modal": {
      "addConfig": "新增服務",
      "editConfig": "編輯服務",
      "officialApi": "官方API",
      "officialApiDesc": "DeepSeek、Gemini 等",
      "localService": "本機服務",
      "localServiceDesc": "Ollama 等",
      "openaiCompatible": "OpenAI 相容",
      "openaiCompatibleDesc": "自訂端點",
      "configName": "設定名稱",
      "optional": "（選填）",
      "configNamePlaceholderPreset": "留空則使用服務商名稱",
      "configNamePlaceholderCustom": "留空則使用 API 端點網址",
      "aiProvider": "AI 服務商",
      "apiKeyPlaceholder": "輸入你的 API Key",
      "apiKeyPlaceholderEdit": "輸入新的 API Key（留空保持原有）",
      "apiKeyPlaceholderLocal": "本機服務通常不需要",
      "apiKeyHintLocal": "如果服務設定了認證，在此輸入",
      "validate": "驗證",
      "validationSuccess": "連線驗證成功",
      "validationFailed": "連線驗證失敗",
      "validationFailedTitle": "API 連線驗證失敗",
      "saveAnywayHint": "驗證未通過，設定資訊可能有誤。是否仍然儲存？",
      "saveAnyway": "仍然儲存",
      "validationError": "驗證失敗：",
      "model": "模型",
      "modelName": "模型名稱",
      "modelNamePlaceholder": "如 gpt-4、claude-3",
      "modelNamePlaceholderLocal": "如 qwen3、deepseek-r1",
      "modelNameHint": "輸入 API 支援的模型名稱",
      "modelNameHintLocal": "輸入本機部署的模型名稱",
      "apiEndpoint": "API 位址",
      "apiEndpointHint": "相容 OpenAI 格式的 API 端點",
      "resolvedUrl": "實際請求地址:",
      "fetchModels": "從 API 獲取",
      "fetchModelsTitle": "瀏覽遠端模型",
      "fetchModelsLoading": "正在獲取模型列表...",
      "fetchModelsEmpty": "未獲取到模型",
      "fetchModelsError": "獲取模型列表失敗",
      "fetchModelsCount": "共 {total} 個模型，當前顯示 {shown} 個",
      "modelAdded": "已添加",
      "addAllModels": "全部添加",
      "searchModels": "搜尋模型...",
      "apiEndpointOverrideHint": "預設地址已填入，可按需改為完整 URL",
      "disableThinking": "關閉思考模式",
      "disableThinkingDesc": "針對 Qwen3、DeepSeek-R1 等模型，停用後使用標準工具呼叫格式",
      "isReasoningModel": "推理模型",
      "isReasoningModelDesc": "啟用後將提取思考過程並停用工具呼叫（如 DeepSeek-R1、QwQ 等）",
      "advancedOptions": "進階設定",
      "customService": "自訂服務",
      "unnamedConfig": "未命名設定",
      "visitWebsite": "訪問官網",
      "getApiKey": "取得 API Key",
      "presetService": "預設服務",
      "thirdPartyService": "第三方服務",
      "customModelInput": "手動輸入模型",
      "selectFromList": "從列表選擇",
      "addCustomModel": "新增模型",
      "deleteCustomModel": "刪除選中",
      "customModelId": "模型端點名稱",
      "customModelIdHint": "API 呼叫時使用的模型識別碼",
      "customModelDisplayName": "顯示名稱",
      "customModelDisplayNamePlaceholder": "自訂顯示名稱",
      "editModel": "編輯模型",
      "contextWindow": "上下文視窗",
      "contextWindowPlaceholder": "如 128000",
      "contextWindowHint": "模型支援的最大上下文 token 數（用於上下文壓縮）",
      "contextWindowMissing": "未設定上下文視窗，將使用預設值，建議點擊「編輯模型」手動填寫",
      "modelRequired": "至少新增一個模型才能儲存",
      "modelCapabilities": "模型能力標註",
      "apiFormat": "API 介面類型",
      "apiFormatOpenAI": "OpenAI Completions",
      "apiFormatAnthropic": "Anthropic",
      "apiFormatGemini": "Gemini",
      "apiFormatOpenAIResponses": "OpenAI Responses"
    },
    "providerKind": {
      "official": "官方",
      "aggregator": "聚合",
      "custom": "自訂"
    },
    "capabilities": {
      "chat": "對話",
      "reasoning": "推理",
      "vision": "視覺",
      "function_calling": "工具呼叫",
      "embedding": "向量",
      "ranking": "排序"
    }
  },
  "storage": {
    "title": "本機儲存管理",
    "description": "管理 ChatLab 在本機儲存的資料檔案",
    "dataLocation": {
      "title": "資料目錄位置",
      "description": "自訂本機資料與快取的存放位置",
      "choose": "選擇位置",
      "reset": "還原預設",
      "open": "開啟",
      "restartTip": "切換目錄後請重新啟動應用程式，舊目錄下快取會跟隨遷移",
      "confirmTitle": "確認切換資料目錄",
      "confirmMessage": "您即將切換資料儲存位置，現有資料將被遷移到新目錄。",
      "newPath": "新目錄路徑",
      "defaultPath": "預設位置",
      "confirmWarning": "重新啟動應用程式後，舊資料目錄將被自動刪除。請確保新目錄路徑正確。",
      "installDirForbidden": "不能將資料目錄放在應用程式安裝目錄下，應用程式更新時該目錄會被清空",
      "cancel": "取消",
      "confirm": "確認切換",
      "migrationSuccessTitle": "資料遷移完成",
      "migrationSuccessMessage": "應用程式需要重新啟動以使變更生效。",
      "relaunchNow": "立即重新啟動"
    },
    "totalUsage": "總佔用：",
    "loading": "載入中...",
    "files": "檔案",
    "notExist": "不存在",
    "clear": "清理",
    "open": "開啟",
    "cache": {
      "databases": {
        "name": "聊天紀錄資料庫",
        "description": "匯入的聊天紀錄分析資料"
      },
      "ai": {
        "name": "AI 對話資料庫",
        "description": "AI 對話歷史與設定檔"
      },
      "downloads": {
        "name": "下載目錄",
        "description": "包含截圖檔案、分析結果等"
      },
      "statsCache": {
        "name": "快取資料",
        "description": "聊天記錄的統計快取，清理後會自動重建"
      },
      "logs": {
        "name": "日誌檔案",
        "description": "軟體的執行日誌，包含匯入、AI、錯誤等日誌"
      }
    },
    "session": {
      "title": "會話索引設定",
      "description": "會話索引會依時間間隔自動將聊天紀錄切分成對話段落，方便 AI 分析與瀏覽",
      "defaultThreshold": "預設分割間隔",
      "thresholdUnit": "分鐘",
      "thresholdHelp": "超過該時間間隔的訊息將被分到新的會話段落",
      "notGenerated": "尚未產生會話索引",
      "generateHint": "產生索引後，可讓 AI 更精準地理解對話上下文",
      "generate": "產生索引",
      "regenerate": "重新產生",
      "generating": "產生中",
      "sessionCount": "{count} 個會話",
      "generated": "已產生會話索引",
      "generateSuccess": "會話索引已成功產生，共 {count} 個會話",
      "generateError": "產生失敗",
      "batchTitle": "批次產生索引",
      "totalSessions": "共 {count} 個聊天",
      "generatedCount": "已產生 {count} 個",
      "notGeneratedCount": "未產生 {count} 個",
      "loadingStatus": "載入中...",
      "batchGenerate": "產生未索引項目",
      "batchRegenerate": "全部重新產生"
    }
  },
  "aiPrompt": {
    "chatSettings": {
      "title": "工具設定"
    },
    "exportSettings": {
      "title": "匯出設定"
    },
    "skillSettings": {
      "title": "技能設定",
      "enableAutoSkill": "AI 自主選擇技能",
      "enableAutoSkillDesc": "啟用後，AI 會根據使用者的問題自動匹配並啟用合適的分析技能；關閉後僅在手動選擇技能時生效"
    },
    "maxMessages": {
      "title": "傳送條數限制",
      "description": "每次提交給 AI 的最大訊息數，數值越大 Token 消耗越多，分析也更準確（新手建議2000）"
    },
    "searchContext": {
      "title": "搜尋上下文視窗",
      "description": "搜尋命中訊息時自動攜帶前後的對話上下文，幫助 AI 理解訊息背景。設為 0 則不攜帶上下文",
      "before": "前",
      "after": "後"
    },
    "exportFormat": {
      "title": "對話匯出格式",
      "description": "匯出 AI 對話時使用的檔案格式",
      "txtLabel": "TXT"
    },
    "sqlExportFormat": {
      "title": "SQL Lab 匯出格式",
      "description": "匯出 SQL 查詢結果時使用的檔案格式"
    },
    "compression": {
      "title": "上下文壓縮",
      "enable": "自動壓縮上下文",
      "enableDesc": "對話過長時自動壓縮歷史為摘要，保留關鍵資訊的同時降低 Token 消耗",
      "threshold": "壓縮閾值",
      "thresholdDesc": "上下文 Token 達到模型視窗的百分比時觸發壓縮",
      "buffer": "緩衝區大小",
      "bufferDesc": "保留最近訊息原文的比例，不參與壓縮",
      "maxToolResultPercent": "工具結果上限",
      "maxToolResultPercentDesc": "單次工具回傳給 AI 的最大資料量占比（基於模型上下文視窗計算），超出部分會被智慧截斷"
    },
    "presets": {
      "title": "系統提示詞",
      "add": "新增預設",
      "import": "匯入預設",
      "description": "提示詞同時用於群聊和私聊分析，系統會自動根據分析類型調整相關內容"
    },
    "preset": {
      "builtIn": "內建",
      "groupOnly": "僅群聊",
      "privateOnly": "僅私聊",
      "view": "檢視",
      "edit": "編輯",
      "copy": "複製",
      "delete": "刪除"
    },
    "modal": {
      "editBuiltin": "編輯系統提示詞",
      "editCustom": "編輯自訂提示詞",
      "addCustom": "新增自訂提示詞",
      "presetName": "預設名稱",
      "presetNamePlaceholder": "為預設取個名字",
      "applicableTo": "適用場景",
      "applicableToHint": "（勾選後可在對應分析類型中使用）",
      "groupChat": "群聊分析",
      "privateChat": "私聊分析",
      "systemPrompt": "系統提示詞",
      "systemPromptPlaceholder": "定義 AI 助手的角色、任務和回答要求...",
      "preview": "完整提示詞預覽",
      "previewHint": "（預覽為群聊模式，實際會根據分析類型自動調整）",
      "resetToDefault": "還原為預設",
      "saveChanges": "儲存修改",
      "addPreset": "新增預設"
    },
    "importPreset": {
      "title": "匯入預設",
      "description": "從遠端取得推薦的系統提示詞預設",
      "loading": "正在載入遠端預設...",
      "loadError": "載入遠端預設失敗",
      "noPresets": "暫無可用的遠端預設",
      "commonPresets": "通用預設",
      "groupPresets": "群聊專用預設",
      "privatePresets": "私聊專用預設",
      "add": "新增",
      "added": "已新增",
      "preview": "預覽",
      "systemPrompt": "系統提示詞",
      "noDescription": "暫無描述",
      "fetchingContent": "正在載入內容...",
      "fetchError": "載入內容失敗"
    }
  },
  "about": {
    "title": "關於 ChatLab",
    "description": "在本機運作的聊天紀錄分析工具，透過 SQL 和 AI Agent 幫你回顧社交記憶。",
    "version": "版本",
    "checkUpdate": "檢查更新",
    "checking": "檢查中...",
    "unknown": "未知",
    "privacy": {
      "title": "隱私設定",
      "analytics": "匿名使用統計",
      "analyticsDesc": "開啟後，軟體會收集版本號、作業系統版本等非敏感資料，用於幫助最佳化產品"
    },
    "developer": {
      "title": "開發者選項",
      "debugMode": "DEBUG 模式",
      "debugModeDesc": "開啟後，將顯示除錯面板和快捷除錯工具，可用於查看資料庫、執行測試工具，並記錄更詳細的除錯日誌。"
    }
  },
  "aiPreprocess": {
    "title": "聊天紀錄預處理",
    "description": "在聊天紀錄傳送給 AI 前進行預處理，節省 Token 並過濾雜訊。原始資料不會被修改。",
    "dataCleaning": "資料清洗",
    "dataCleaningDesc": "自動清理 XML 卡片訊息（如分享連結、小程式等），提取有效內容，大幅節省 Token。建議保持開啟。",
    "mergeConsecutive": "合併連續發言",
    "mergeConsecutiveDesc": "同一人在短時間內的連續訊息合併為一條",
    "mergeWindow": "合併時間視窗（秒）",
    "denoise": "智慧去雜訊",
    "denoiseDesc": "過濾純語氣詞、純表情、系統佔位符（如 [圖片]）等無意義訊息",
    "desensitize": "資料脫敏",
    "desensitizeDesc": "根據規則將敏感資訊（手機號、電子郵件、證件號等）替換為佔位符",
    "desensitizeRules": "脫敏規則",
    "desensitizeRulesDesc": "勾選需要啟用的脫敏規則，按清單順序優先匹配",
    "desensitizeBuiltin": "預置規則",
    "desensitizeCustom": "自訂規則",
    "desensitizeAddCustom": "新增自訂規則",
    "desensitizeRuleName": "規則名稱",
    "desensitizeRulePattern": "正規表達式",
    "desensitizeRuleReplacement": "替換文字",
    "desensitizeRuleAdd": "新增",
    "desensitizeRuleInvalidRegex": "正規表達式語法錯誤",
    "desensitizeRuleNamePlaceholder": "例如：員工工號",
    "desensitizeRulePatternPlaceholder": "例如：EMP-\\d+",
    "desensitizeRuleReplacementPlaceholder": "替換文字，如 [工號]",
    "anonymizeNames": "暱稱匿名化",
    "anonymizeNamesDesc": "用編號（U1、U2…）替代真實暱稱傳送給 AI，減少幻覺並節省 Token",
    "blacklist": "黑名單關鍵詞",
    "blacklistDesc": "包含以下任一關鍵詞的訊息將被整條過濾",
    "blacklistPlaceholder": "輸入關鍵詞後按 Enter 新增",
    "blacklistAdd": "新增"
  },
  "desensitize": {
    "rules": {
      "cn_phone": "中國手機號",
      "cn_phone_desc": "1xx xxxx xxxx 格式的 11 位號碼",
      "cn_id_card": "中國身份證號",
      "cn_id_card_desc": "18 位，末位可含 X",
      "cn_bank_card": "中國銀行卡號",
      "cn_bank_card_desc": "16-19 位連續數字",
      "cn_landline": "中國市話號碼",
      "cn_landline_desc": "區號-號碼，如 010-12345678",
      "us_ssn": "美國社會安全號 (SSN)",
      "us_ssn_desc": "XXX-XX-XXXX 格式",
      "us_phone": "美國電話號碼",
      "us_phone_desc": "+1 (XXX) XXX-XXXX 格式",
      "us_drivers_license": "美國駕照號",
      "us_drivers_license_desc": "字母開頭 + 7-8 位數字",
      "jp_phone": "日本電話號碼",
      "jp_phone_desc": "0x0-XXXX-XXXX 格式",
      "jp_my_number": "日本個人編號",
      "jp_my_number_desc": "12 位數字（マイナンバー）",
      "kr_phone": "韓國電話號碼",
      "kr_phone_desc": "01X-XXXX-XXXX 格式",
      "kr_rrn": "韓國身份證號",
      "kr_rrn_desc": "XXXXXX-XXXXXXX 格式（주민번호）",
      "api_key_prefix": "API Key / Token（已知前綴）",
      "api_key_prefix_desc": "sk-、ghp_、AKIA 等開頭的長字串",
      "bearer_token": "Bearer Token",
      "bearer_token_desc": "Bearer 後的授權權杖值",
      "email": "電子郵件地址",
      "email_desc": "user{'@'}domain.com 標準格式",
      "credit_card": "信用卡號",
      "credit_card_desc": "Visa / MasterCard / AmEx 等卡號",
      "ipv4": "IPv4 地址",
      "ipv4_desc": "如 192.168.1.1",
      "url": "URL 連結",
      "url_desc": "http:// 或 https:// 開頭的連結"
    }
  },
  "api": {
    "betaWarning": "當前 API 版本僅為測試版（Beta），介面可能會發生調整",
    "service": {
      "title": "API 服務",
      "enable": "啟用 API 服務",
      "enableDesc": "開啟後，外部工具可透過 HTTP API 查詢、匯出和匯入聊天數據。僅本機可存取 (127.0.0.1)",
      "portInUseHint": "連接埠被佔用，請在下方修改連接埠或關閉佔用該連接埠的程式後重試"
    },
    "status": {
      "running": "執行中",
      "stopped": "已停止",
      "starting": "啟動中...",
      "portInUse": "連接埠被佔用",
      "error": "啟動失敗"
    },
    "port": {
      "title": "連接埠配置",
      "label": "監聽連接埠",
      "desc": "API 服務監聽的本機連接埠號（1024-65535）",
      "edit": "修改",
      "save": "儲存",
      "cancel": "取消"
    },
    "token": {
      "title": "存取權杖",
      "label": "Bearer Token",
      "desc": "所有 API 請求需要在 Authorization 標頭中攜帶此 Token",
      "noToken": "尚未產生 Token，請先啟用服務",
      "regenerate": "重新產生"
    },
    "dataSources": {
      "title": "資料來源",
      "desc": "設定外部資料來源 URL，ChatLab 將按設定間隔自動拉取並匯入聊天資料。",
      "empty": "暫無資料來源",
      "disabled": "已暫停",
      "every": "每",
      "minutes": "分鐘",
      "lastSync": "上次同步",
      "addBtn": "新增資料來源",
      "form": {
        "modalTitle": "新增資料來源",
        "name": "名稱",
        "namePlaceholder": "例如：我的聊天伺服器",
        "url": "資料來源 URL",
        "token": "存取權杖（可選）",
        "tokenPlaceholder": "遠端 API 的 Bearer Token",
        "interval": "拉取間隔（分鐘）",
        "pullLimit": "每次拉取訊息數",
        "pullLimitPlaceholder": "預設 1000",
        "targetSession": "目標會話 ID（可選）",
        "targetSessionPlaceholder": "留空則每次新建會話",
        "add": "新增"
      },
      "discovery": {
        "directMode": "直接 URL",
        "remoteMode": "遠端伺服器",
        "baseUrl": "伺服器地址",
        "baseUrlPlaceholder": "示例：http://127.0.0.1:2333/api/v1",
        "browse": "瀏覽遠端會話",
        "found": "發現 {count} 個會話",
        "search": "搜尋",
        "searchPlaceholder": "依會話名稱搜尋",
        "selectAll": "全選",
        "deselectAll": "取消全選",
        "selectByType": "會話類型",
        "typeAll": "全部",
        "typePrivate": "私訊",
        "typeGroup": "群組",
        "typeOther": "其他",
        "loadMore": "載入更多",
        "subscribe": "訂閱 {count} 個會話",
        "messages": "則訊息",
        "error": "連線遠端伺服器失敗"
      },
      "noSessions": "暫無匯入會話，點擊上方「管理訂閱」新增",
      "edit": {
        "title": "修改配置",
        "save": "儲存",
        "cancel": "取消",
        "editSource": "修改配置",
        "manageSessions": "管理訂閱",
        "manageSessionsDesc": "重新選擇要同步的遠端會話",
        "syncAll": "一鍵同步",
        "subscribed": "已訂閱"
      },
      "deleteConfirm": {
        "title": "刪除資料來源",
        "message": "確認刪除資料來源「{name}」？該資料來源下的所有匯入配置將被移除。已匯入的本機對話不會被刪除。"
      }
    },
    "usage": {
      "title": "使用說明",
      "desc": "啟用服務後，外部工具可透過 API 查詢和匯入資料。所有請求需攜帶 Bearer Token 認證。",
      "authHint": "請求標頭範例：",
      "docLink": "查看完整 API 文件"
    }
  }
}
