功能: - LibraryView 添加批量 unregister 按钮(勾选多个已注册文件后显示) - 添加确认对话框,支持批量取消注册 - 添加中英日三语翻译 性能优化: - search_agents API timeout 提升到 90s(避免前端超时) - thumbnail 并发数从 32 降到 10(减少服务器压力) 修复: - PeopleView 添加 group_uuid 字段映射 - LibraryView 排序优化(scanning/preparing 优先)
455 lines
14 KiB
JSON
455 lines
14 KiB
JSON
{
|
||
"common": {
|
||
"loading": "載入中...",
|
||
"error": "錯誤",
|
||
"success": "成功",
|
||
"cancel": "取消",
|
||
"confirm": "確認",
|
||
"delete": "刪除",
|
||
"save": "儲存",
|
||
"edit": "編輯",
|
||
"search": "搜尋",
|
||
"back": "返回",
|
||
"close": "關閉",
|
||
"play": "播放",
|
||
"logout": "登出",
|
||
"login": "登入"
|
||
},
|
||
"library": {
|
||
"sort": {
|
||
"title": "排序方式",
|
||
"time_desc": "依時間・由近到遠",
|
||
"time_asc": "依時間・由遠到近",
|
||
"size_desc": "依大小・由大到小",
|
||
"size_asc": "依大小・由小到大",
|
||
"name_asc": "依檔名・由 A 到 Z",
|
||
"name_desc": "依檔名・由 Z 到 A"
|
||
},
|
||
"filter": {
|
||
"title": "過濾方式",
|
||
"unregistered": "未註冊",
|
||
"registered": "已註冊",
|
||
"pending": "待處理",
|
||
"completed": "已完成",
|
||
"videos_only": "僅顯示影片",
|
||
"photos_only": "僅顯示照片"
|
||
},
|
||
"size": {
|
||
"title": "大小",
|
||
"min_mb": "最小 MB",
|
||
"max_mb": "最大 MB"
|
||
},
|
||
"duration": {
|
||
"title": "影片時長",
|
||
"min_minutes": "最小分鐘",
|
||
"max_minutes": "最大分鐘"
|
||
},
|
||
"status": {
|
||
"files": "{count} 個檔案",
|
||
"registered": "已註冊",
|
||
"unregistered": "未註冊",
|
||
"pending": "等待中",
|
||
"preparing": "準備中",
|
||
"processing": "處理中",
|
||
"completed": "已完成",
|
||
"scanning": "掃描中",
|
||
"ready": "就緒",
|
||
"keyword_ready": "關鍵字可用",
|
||
"semantic_ready": "語意可用",
|
||
"face_mgmt_ready": "臉部管理可用",
|
||
"agent_ready": "Agent 可用"
|
||
},
|
||
"thumbnail": {
|
||
"register_to_preview": "註冊以預覽"
|
||
},
|
||
"context": {
|
||
"register_file": "註冊檔案",
|
||
"process_file": "處理檔案",
|
||
"reprocess": "重新處理",
|
||
"unregister": "取消註冊",
|
||
"play_video": "播放影片",
|
||
"processor_selection": "處理器選擇",
|
||
"overall_progress": "整體進度",
|
||
"missing_file_path": "缺少檔案路徑",
|
||
"file_not_registered": "檔案未註冊",
|
||
"select_processor": "請選擇至少一個處理器",
|
||
"file_must_be_completed": "檔案必須先完成處理",
|
||
"face_deduplication": "人臉去重",
|
||
"qc_check": "品質檢查"
|
||
},
|
||
"pipeline": {
|
||
"processors": "處理器",
|
||
"rule1_ingestion": "Rule1 入庫",
|
||
"face_tracing": "Face Tracing",
|
||
"tkg_nodes": "TKG Nodes",
|
||
"tkg_edges": "TKG Edges",
|
||
"rule2_ingestion": "Rule2 入庫"
|
||
},
|
||
"phase": {
|
||
"processor_output": "Rule1: 處理器輸出",
|
||
"postgresql_ingestion": "Rule1: PostgreSQL 入庫",
|
||
"qdrant_ingestion": "Rule1: Qdrant 入庫"
|
||
},
|
||
"action": {
|
||
"registering": "註冊中...",
|
||
"registered": "註冊成功:{name}",
|
||
"registration_failed": "註冊失敗:{message}",
|
||
"registration_error": "註冊錯誤:{error}",
|
||
"processing": "處理中...",
|
||
"processing_started": "處理已觸發:{name}",
|
||
"processing_failed": "處理失敗:{message}",
|
||
"processing_error": "處理錯誤:{error}",
|
||
"removing": "移除中...",
|
||
"removed": "移除成功:{name}",
|
||
"removal_failed": "移除失敗:{message}",
|
||
"removal_error": "移除錯誤:{error}",
|
||
"clear_filters": "清除篩選"
|
||
},
|
||
"qc": {
|
||
"audio_info": "音軌資訊",
|
||
"audio_track": "音軌",
|
||
"has_audio": "✓ 有音軌",
|
||
"no_audio": "✗ 無音軌",
|
||
"speech": "語音",
|
||
"has_speech": "✓ 有語音",
|
||
"no_speech": "🔇 無語音",
|
||
"language": "語言",
|
||
"sample_rate": "取樣率",
|
||
"uuid_label": "UUID:",
|
||
"track_processor_output": "路徑一:處理器輸出",
|
||
"track_ingestion": "路徑二:資料入庫",
|
||
"track_status_change": "終點:狀態改變",
|
||
"output_ingestion_done": "📥 輸出 + 入庫 完成",
|
||
"items": "{count} 筆"
|
||
},
|
||
"refresh": "重新整理",
|
||
"refresh_status": "重新整理狀態",
|
||
"confirm": {
|
||
"title_register": "📥 註冊",
|
||
"title_process": "🔍 深度掃描",
|
||
"title_rescan": "🔄 重新掃描",
|
||
"message_register": "檔案將以預設設定註冊並處理。",
|
||
"message_register_no_scan": "僅註冊,不自動掃描。",
|
||
"message_process": "將使用預設設定對選定的處理器執行處理。",
|
||
"message_rescan": "將執行取消註冊 → 註冊 → 深度掃描(使用選擇的處理器)。",
|
||
"cancel": "取消",
|
||
"proceed": "開始",
|
||
"rerun_processor": "重新執行 {processor}?",
|
||
"run_processor": "在 {filename} 上執行 {processor}?",
|
||
"unregister_title": "取消註冊",
|
||
"unregister_message": "取消註冊「{filename}」?\n\n這將移除檔案及其輸出資料。",
|
||
"batch_unregister_message": "取消註冊 {count} 個檔案?\n\n這將移除檔案及其輸出資料。"
|
||
},
|
||
"processor": {
|
||
"started": "{processor} 已開始",
|
||
"failed": "失敗:{message}",
|
||
"error": "錯誤:{message}",
|
||
"no_file": "錯誤:未選擇檔案",
|
||
"vlm_failed": "無法觸發 VLM 摘要:{message}",
|
||
"pipeline_qc": "管道品質檢查"
|
||
},
|
||
"settings": {
|
||
"auto_scan": "註冊後自動深度掃描"
|
||
}
|
||
},
|
||
"people": {
|
||
"toolbar": {
|
||
"all_files": "全部檔案",
|
||
"view_all_people": "查看所有人物",
|
||
"view_starred_people": "查看重要人物",
|
||
"refresh": "重新整理",
|
||
"pending_people": "人物",
|
||
"skipped_people": "已略過",
|
||
"pending_faces": "人臉",
|
||
"face_group": "人臉群組"
|
||
},
|
||
"section": {
|
||
"known_people": "已知人物",
|
||
"pending_people": "人物",
|
||
"skipped_people": "已略過",
|
||
"pending_faces": "人臉",
|
||
"face_group": "人臉群組",
|
||
"unassigned": "未分組"
|
||
},
|
||
"sort": {
|
||
"title": "排序方式",
|
||
"recent": "最近瀏覽",
|
||
"file_name": "依檔案名稱",
|
||
"name_az": "依檔名・由 A 到 Z",
|
||
"name_za": "依檔名・由 Z 到 A",
|
||
"time_desc": "依時間・由近到遠",
|
||
"time_asc": "依時間・由遠到近"
|
||
},
|
||
"search": {
|
||
"known_people": "搜尋已知人物",
|
||
"pending_people": "搜尋待定人物",
|
||
"person_name": "搜尋人物名稱..."
|
||
},
|
||
"action_history": {
|
||
"title": "操作記錄 · {name}",
|
||
"undo_all": "全部復原",
|
||
"redo_all": "全部重做",
|
||
"delete_person": "刪除此人物",
|
||
"no_history": "尚無操作記錄"
|
||
},
|
||
"expand": {
|
||
"collapse": "收起",
|
||
"expand": "展開",
|
||
"view_faces": "查看面孔",
|
||
"appears_in": "出現檔案:",
|
||
"faces": "{count} 面孔",
|
||
"set_as_profile": "設為大頭貼",
|
||
"no_face_data": "無面孔資料"
|
||
},
|
||
"context": {
|
||
"star_person": "★ 標為重要人物",
|
||
"unstar_person": "☆ 取消重要人物",
|
||
"details": "📋 詳情",
|
||
"confirm_person": "✓ 確認人物",
|
||
"pending": "待定",
|
||
"edit_name": "✎ 編輯名稱",
|
||
"merge_person": "⇄ 已有此人物",
|
||
"skip_person": "✕ 略過此人物",
|
||
"undo": "↩ 復原",
|
||
"redo": "↪ 重做",
|
||
"delete_person": "🗑 刪除此人物"
|
||
},
|
||
"face_context": {
|
||
"details": "📋 詳情",
|
||
"assign_existing": "⇄ 指派給現有人物",
|
||
"skip_face": "✕ 略過此人臉"
|
||
},
|
||
"assign": {
|
||
"title": "指派給現有人物",
|
||
"search_placeholder": "搜尋人物名稱...",
|
||
"no_results": "沒有找到符合的人物",
|
||
"confirm_assign": "確認指派"
|
||
},
|
||
"face_detail": {
|
||
"title": "待定人臉詳情",
|
||
"file": "檔案:",
|
||
"trace_id": "Trace ID:",
|
||
"frame_number": "帧號:",
|
||
"confidence": "置信度:",
|
||
"face_id": "Face ID:",
|
||
"play_segment": "播放影片片段",
|
||
"new_identity": "新增為新人物",
|
||
"enter_name": "輸入人物名稱...",
|
||
"add": "新增",
|
||
"close": "關閉"
|
||
},
|
||
"detail": {
|
||
"back": "返回",
|
||
"edit": "編輯",
|
||
"role": "角色",
|
||
"description": "描述",
|
||
"enter_name": "加入人名",
|
||
"enter_alias": "輸入別名後按 Enter",
|
||
"add_alias": "+ 別名",
|
||
"collapse": "收起",
|
||
"role_name": "角色名稱",
|
||
"custom_description": "自訂描述",
|
||
"saving": "儲存中...",
|
||
"save_changes": "✓ 儲存更改",
|
||
"cancel": "取消",
|
||
"add_same_person": "加入相同人物",
|
||
"play": "▶ 播放",
|
||
"unbind": "✕ 解綁",
|
||
"segments": "{count} 個片段",
|
||
"traces": "{count} 個追蹤",
|
||
"all_segments": "所有片段",
|
||
"mode_trace": "追蹤",
|
||
"mode_segment": "片段",
|
||
"mode_continuous": "連續",
|
||
"status": "狀態:",
|
||
"confirm": "✓ 確認",
|
||
"skip": "略過",
|
||
"bind_face": "+ 綁定人臉",
|
||
"merge_other": "⇄ 合併到其他人物",
|
||
"delete_person": "刪除此人物",
|
||
"bind_face_title": "Bind Face",
|
||
"merge_title": "⇄ 合併到其他人物",
|
||
"unbind_trace": "解綁 trace T{trace_id}(face_id: {face_id})?",
|
||
"no_face_id": "此 trace 沒有 face_id,無法解綁",
|
||
"unbind_failed": "解綁失敗:{error}",
|
||
"merge_confirm": "合併「{source}」到「{target}」?",
|
||
"not_this_person": "不是此人物",
|
||
"delete_confirm": "刪除「{name}」?",
|
||
"delete_confirm_message": "刪除「{name}」?此操作無法復原。",
|
||
"delete_failed": "刪除失敗:{error}",
|
||
"create_identity_failed": "新增人物失敗:API 未返回 identity_uuid",
|
||
"create_identity_error": "新增人物失敗:{error}",
|
||
"assign_failed": "指派失敗:{error}"
|
||
},
|
||
"action": {
|
||
"delete_person": "刪除人物",
|
||
"update_person": "更新人物",
|
||
"bind_face": "綁定面部",
|
||
"unbind_face": "解綁面部",
|
||
"bind_trace": "綁定軌跡"
|
||
}
|
||
},
|
||
"agent": {
|
||
"welcome": {
|
||
"title": "👋 歡迎使用 Momentry Studio",
|
||
"intro": "我會幫助你更好地使用系統。讓我介紹一下主要功能:",
|
||
"smart_search": {
|
||
"title": "智能搜索",
|
||
"desc": "關鍵詞、語義、人物三種搜索模式"
|
||
},
|
||
"people_management": {
|
||
"title": "人物管理",
|
||
"desc": "識別視頻中的人物,建立人物庫"
|
||
},
|
||
"file_management": {
|
||
"title": "文件管理",
|
||
"desc": "管理和處理你的視頻、照片文件"
|
||
},
|
||
"got_it": "知道了,開始使用"
|
||
}
|
||
},
|
||
"login": {
|
||
"title": "Momentry Studio",
|
||
"subtitle": "Login to continue",
|
||
"username": "Username",
|
||
"password": "Password",
|
||
"username_placeholder": "Enter username",
|
||
"password_placeholder": "Enter password",
|
||
"login_button": "Login",
|
||
"logging_in": "Logging in...",
|
||
"login_success": "Login successful!",
|
||
"default_credentials": "Default credentials: demo / demo123"
|
||
},
|
||
"nav": {
|
||
"search": "Search",
|
||
"library": "Library",
|
||
"people": "People",
|
||
"admin": "Admin",
|
||
"client": "Client"
|
||
},
|
||
"time": {
|
||
"just_now": "剛剛",
|
||
"minutes_ago": "{count} 分鐘前",
|
||
"hours_ago": "{count} 小時前"
|
||
},
|
||
"video": {
|
||
"prev": "上一個",
|
||
"next": "下一個",
|
||
"key_frame": "定位關鍵影格"
|
||
},
|
||
"language": {
|
||
"en": "English",
|
||
"zh-TW": "繁體中文",
|
||
"zh-CN": "简体中文",
|
||
"ja": "日本語",
|
||
"ko": "한국어",
|
||
"auto": "自動偵測"
|
||
},
|
||
"client": {
|
||
"title": "檔案管理器",
|
||
"search": {
|
||
"placeholder": "搜尋檔案..."
|
||
},
|
||
"table": {
|
||
"name": "名稱",
|
||
"size": "大小",
|
||
"type": "類型",
|
||
"modified": "修改時間"
|
||
},
|
||
"button": {
|
||
"upload": "上傳",
|
||
"newFolder": "新建資料夾",
|
||
"refresh": "刷新",
|
||
"create": "創建",
|
||
"cancel": "取消",
|
||
"delete": "刪除",
|
||
"rename": "重命名",
|
||
"move": "移動",
|
||
"preview": "預覽",
|
||
"download": "下載"
|
||
},
|
||
"dialog": {
|
||
"createFolder": "創建新資料夾",
|
||
"folderName": "資料夾名稱",
|
||
"deleteTitle": "刪除「{name}」",
|
||
"deleteMessage": "確定要刪除此{type}嗎?此操作無法撤銷。",
|
||
"renameTitle": "重命名「{name}」",
|
||
"newName": "新名稱",
|
||
"previewTitle": "檔案預覽:{name}",
|
||
"uploadTitle": "上傳檔案{s}",
|
||
"moveTitle": "移動{type}「{name}」",
|
||
"selectFiles": "選擇檔案"
|
||
},
|
||
"type": {
|
||
"file": "檔案",
|
||
"folder": "資料夾",
|
||
"files": "個檔案"
|
||
},
|
||
"status": {
|
||
"uploading": "上傳中...",
|
||
"success": "成功",
|
||
"error": "錯誤"
|
||
}
|
||
},
|
||
"admin": {
|
||
"title": "管理面板",
|
||
"tab": {
|
||
"dashboard": "儀表板",
|
||
"users": "用戶",
|
||
"shares": "共享",
|
||
"config": "配置",
|
||
"settings": "設定"
|
||
},
|
||
"section": {
|
||
"systemResources": "系統資源",
|
||
"validation": "驗證",
|
||
"configuration": "管理配置",
|
||
"vlmPrompts": "VLM 提示詞",
|
||
"languagePacks": "語言包",
|
||
"llmConfig": "LLM 配置",
|
||
"processorConfig": "處理器配置",
|
||
"filterConfig": "過濾器配置",
|
||
"searchConfig": "搜索配置",
|
||
"systemConfig": "系統配置",
|
||
"uploadPath": "上傳路徑",
|
||
"serviceUrls": "服務 URL"
|
||
},
|
||
"resource": {
|
||
"cpu": "CPU",
|
||
"memory": "記憶體",
|
||
"swap": "交換空間",
|
||
"gpu": "GPU",
|
||
"gpuFreq": "GPU 頻率",
|
||
"systemPower": "系統功耗"
|
||
},
|
||
"table": {
|
||
"username": "用戶名",
|
||
"homeDir": "主目錄",
|
||
"status": "狀態",
|
||
"name": "名稱",
|
||
"port": "端口",
|
||
"filter": "過濾器",
|
||
"parameters": "參數"
|
||
},
|
||
"config": {
|
||
"systemPrompt": "系統提示詞",
|
||
"prompt": "提示詞",
|
||
"userPrompt": "用戶提示詞",
|
||
"maxTokens": "最大 Token 數",
|
||
"url": "URL",
|
||
"model": "模型",
|
||
"availableLanguages": "可用語言",
|
||
"importLanguagePack": "導入語言包",
|
||
"tools": "工具"
|
||
},
|
||
"stat": {
|
||
"users": "用戶",
|
||
"shares": "共享"
|
||
}
|
||
},
|
||
"app": {
|
||
"productName": "Momentry Studio",
|
||
"tagline": "Turn Every Moment Into Intelligence"
|
||
}
|
||
}
|