2025-09-11 17:10:50 +08:00
export default {
2025-09-17 11:36:25 +08:00
// Login page related prompt text
'login.requiredUsername' : 'Username cannot be empty' ,
'login.requiredPassword' : 'Password cannot be empty' ,
'login.requiredCaptcha' : 'Captcha cannot be empty' ,
'login.requiredMobile' : 'Please enter a valid mobile phone number' ,
'login.loginSuccess' : 'Login successful!' ,
2025-09-26 23:39:27 +08:00
2025-09-11 17:10:50 +08:00
// HeaderBar组件文本
2025-09-12 18:09:09 +08:00
'header.smartManagement' : 'Agents' ,
'header.modelConfig' : 'Models' ,
2025-11-04 16:21:01 +08:00
'header.knowledgeBase' : 'Knowledge' ,
2025-10-07 23:54:42 +08:00
'header.voiceCloneManagement' : 'Voice Clone' ,
'header.voiceResourceManagement' : 'Voice Resource' ,
2025-09-12 18:09:09 +08:00
'header.userManagement' : 'Users' ,
2025-10-07 23:54:42 +08:00
'header.otaManagement' : 'OTA Management' ,
2025-09-12 18:09:09 +08:00
'header.paramDictionary' : 'More' ,
'header.paramManagement' : 'Params Management' ,
'header.dictManagement' : 'Dict Management' ,
2025-09-18 16:54:00 +08:00
'header.agentTemplate' : 'Default Role Templates' , // 添加这一行
2025-10-01 02:52:32 +08:00
'header.searchHistory' : 'Search History' ,
'header.clearHistory' : 'Clear History' ,
2025-10-10 14:35:35 +08:00
'header.providerManagement' : 'Provider Management' ,
'header.serverSideManagement' : 'Server Management' ,
2026-04-23 17:50:57 +08:00
'header.replacementWordManagement' : 'Replacement Word Management' ,
2025-12-05 14:35:53 +08:00
'header.featureManagement' : 'System Feature Management' ,
2025-10-10 14:35:35 +08:00
'header.changePassword' : 'Change Password' ,
'header.logout' : 'Logout' ,
2026-02-28 17:51:46 +08:00
'header.searchPlaceholder' : 'Name, tag or MAC search' ,
2025-09-12 18:09:09 +08:00
2025-09-16 00:06:57 +08:00
// McpToolCallDialog component text
'mcpToolCall.title' : 'Tool Call' ,
'mcpToolCall.execute' : 'Execute' ,
'mcpToolCall.chooseFunction' : '1、Choose Function' ,
'mcpToolCall.searchFunction' : 'Search Function' ,
'mcpToolCall.noResults' : 'No matching functions found' ,
'mcpToolCall.settings' : '2、Parameter Settings' ,
'mcpToolCall.inputPlaceholder' : 'Please enter {label}' ,
'mcpToolCall.valueRange' : 'Value range: {min} - {max}' ,
'mcpToolCall.selectPlaceholder' : 'Please select {label}' ,
'mcpToolCall.lightTheme' : 'Light Theme' ,
'mcpToolCall.darkTheme' : 'Dark Theme' ,
'mcpToolCall.pleaseSelect' : 'Please select a function' ,
'mcpToolCall.cancel' : 'Cancel' ,
'mcpToolCall.requiredField' : 'Please enter {field}' ,
'mcpToolCall.minValue' : 'Minimum value is {value}' ,
'mcpToolCall.maxValue' : 'Maximum value is {value}' ,
'mcpToolCall.selectTool' : 'Please select a tool to execute' ,
'mcpToolCall.executionResult' : '3、Execution Result' ,
'mcpToolCall.copyResult' : 'Copy Result' ,
'mcpToolCall.noResultYet' : 'No result yet' ,
2025-09-18 14:42:03 +08:00
'mcpToolCall.loadingToolList' : 'Loading tool list...' ,
2025-09-26 23:39:27 +08:00
2025-09-18 14:42:03 +08:00
// Tool names
'mcpToolCall.toolName.getDeviceStatus' : 'View Device Status' ,
'mcpToolCall.toolName.setVolume' : 'Set Volume' ,
'mcpToolCall.toolName.setBrightness' : 'Set Brightness' ,
'mcpToolCall.toolName.setTheme' : 'Set Theme' ,
'mcpToolCall.toolName.takePhoto' : 'Take Photo & Recognize' ,
'mcpToolCall.toolName.getSystemInfo' : 'System Info' ,
'mcpToolCall.toolName.reboot' : 'Reboot Device' ,
'mcpToolCall.toolName.upgradeFirmware' : 'Upgrade Firmware' ,
'mcpToolCall.toolName.getScreenInfo' : 'Screen Info' ,
'mcpToolCall.toolName.snapshot' : 'Screen Snapshot' ,
'mcpToolCall.toolName.previewImage' : 'Preview Image' ,
'mcpToolCall.toolName.setDownloadUrl' : 'Set Download URL' ,
2025-09-26 23:39:27 +08:00
2025-09-18 14:42:03 +08:00
// Tool categories
'mcpToolCall.category.audio' : 'Audio' ,
'mcpToolCall.category.display' : 'Display' ,
'mcpToolCall.category.camera' : 'Camera' ,
'mcpToolCall.category.system' : 'System' ,
'mcpToolCall.category.assets' : 'Assets' ,
'mcpToolCall.category.deviceInfo' : 'Device Info' ,
2025-09-26 23:39:27 +08:00
2025-09-18 14:42:03 +08:00
// Table categories and properties
'mcpToolCall.table.audioSpeaker' : 'Audio Speaker' ,
'mcpToolCall.table.screen' : 'Screen' ,
'mcpToolCall.table.network' : 'Network' ,
'mcpToolCall.table.audioControl' : 'Audio Control' ,
'mcpToolCall.table.screenControl' : 'Screen Control' ,
'mcpToolCall.table.systemControl' : 'System Control' ,
'mcpToolCall.table.screenInfo' : 'Screen Info' ,
'mcpToolCall.table.hardwareInfo' : 'Hardware Info' ,
'mcpToolCall.table.memoryInfo' : 'Memory Info' ,
'mcpToolCall.table.applicationInfo' : 'Application Info' ,
'mcpToolCall.table.networkInfo' : 'Network Info' ,
'mcpToolCall.table.displayInfo' : 'Display Info' ,
'mcpToolCall.table.deviceInfo' : 'Device Info' ,
'mcpToolCall.table.systemInfo' : 'System Info' ,
// Table column headers
'mcpToolCall.table.component' : 'Component' ,
'mcpToolCall.table.property' : 'Property' ,
'mcpToolCall.table.value' : 'Value' ,
2025-09-26 23:39:27 +08:00
2025-09-18 14:42:03 +08:00
'mcpToolCall.prop.volume' : 'Volume' ,
'mcpToolCall.prop.brightness' : 'Brightness' ,
'mcpToolCall.prop.theme' : 'Theme' ,
'mcpToolCall.prop.type' : 'Type' ,
'mcpToolCall.prop.ssid' : 'SSID' ,
'mcpToolCall.prop.signalStrength' : 'Signal Strength' ,
'mcpToolCall.prop.operationResult' : 'Operation Result' ,
'mcpToolCall.prop.width' : 'Width' ,
'mcpToolCall.prop.height' : 'Height' ,
'mcpToolCall.prop.screenType' : 'Type' ,
'mcpToolCall.prop.chipModel' : 'Chip Model' ,
'mcpToolCall.prop.cpuCores' : 'CPU Cores' ,
'mcpToolCall.prop.chipVersion' : 'Chip Version' ,
'mcpToolCall.prop.flashSize' : 'Flash Size' ,
'mcpToolCall.prop.minFreeHeap' : 'Minimum Free Heap' ,
'mcpToolCall.prop.applicationName' : 'Application Name' ,
'mcpToolCall.prop.applicationVersion' : 'Application Version' ,
'mcpToolCall.prop.compileTime' : 'Compile Time' ,
'mcpToolCall.prop.idfVersion' : 'IDF Version' ,
'mcpToolCall.prop.macAddress' : 'MAC Address' ,
'mcpToolCall.prop.ipAddress' : 'IP Address' ,
'mcpToolCall.prop.wifiName' : 'WiFi Name' ,
'mcpToolCall.prop.wifiChannel' : 'WiFi Channel' ,
'mcpToolCall.prop.screenSize' : 'Screen Size' ,
'mcpToolCall.prop.deviceUuid' : 'Device UUID' ,
'mcpToolCall.prop.systemLanguage' : 'System Language' ,
'mcpToolCall.prop.currentOtaPartition' : 'Current OTA Partition' ,
'mcpToolCall.prop.getResult' : 'Get Result' ,
'mcpToolCall.prop.url' : 'URL' ,
'mcpToolCall.prop.quality' : 'Quality' ,
'mcpToolCall.prop.question' : 'Question' ,
2025-09-26 23:39:27 +08:00
2025-09-18 14:42:03 +08:00
// Tool help texts
'mcpToolCall.help.getDeviceStatus' : 'View the current running status of the device, including volume, screen, battery and other information.' ,
'mcpToolCall.help.setVolume' : 'Adjust the volume of the device, please enter a value between 0-100.' ,
'mcpToolCall.help.setBrightness' : 'Adjust the brightness of the device screen, please enter a value between 0-100.' ,
'mcpToolCall.help.setTheme' : 'Switch the display theme of the device screen, you can choose light or dark mode.' ,
'mcpToolCall.help.takePhoto' : 'Take photos with the device camera and perform recognition analysis, please enter the question you want to ask.' ,
'mcpToolCall.help.getSystemInfo' : 'Get the system information of the device, including hardware specifications, software version, etc.' ,
'mcpToolCall.help.reboot' : 'Reboot the device, the device will restart after execution.' ,
'mcpToolCall.help.upgradeFirmware' : 'Download and upgrade the device firmware from the specified URL, the device will restart automatically after the upgrade.' ,
'mcpToolCall.help.getScreenInfo' : 'Get detailed information about the screen, such as resolution, size and other parameters.' ,
'mcpToolCall.help.snapshot' : 'Take a screenshot of the current screen and upload it to the specified URL.' ,
'mcpToolCall.help.previewImage' : 'Preview images from the specified URL on the device screen.' ,
'mcpToolCall.help.setDownloadUrl' : 'Set the download address for device resource files.' ,
2025-09-26 23:39:27 +08:00
2025-09-18 14:42:03 +08:00
// Other text
'mcpToolCall.text.strong' : 'Strong' ,
'mcpToolCall.text.medium' : 'Medium' ,
'mcpToolCall.text.weak' : 'Weak' ,
'mcpToolCall.text.dark' : 'Dark' ,
'mcpToolCall.text.light' : 'Light' ,
'mcpToolCall.text.setSuccess' : 'Setting successful' ,
'mcpToolCall.text.setFailed' : 'Setting failed' ,
'mcpToolCall.text.brightnessSetSuccess' : 'Brightness setting successful' ,
'mcpToolCall.text.brightnessSetFailed' : 'Brightness setting failed' ,
'mcpToolCall.text.themeSetSuccess' : 'Theme setting successful' ,
'mcpToolCall.text.themeSetFailed' : 'Theme setting failed' ,
'mcpToolCall.text.rebootCommandSent' : 'Reboot command sent' ,
'mcpToolCall.text.rebootFailed' : 'Reboot failed' ,
'mcpToolCall.text.monochrome' : 'Monochrome Screen' ,
'mcpToolCall.text.color' : 'Color Screen' ,
'mcpToolCall.text.getSuccessParseFailed' : 'Get successful, but parse failed' ,
'mcpToolCall.text.getFailed' : 'Get failed' ,
'mcpToolCall.text.getSuccessFormatError' : 'Get successful, but data format is abnormal' ,
2025-09-16 00:06:57 +08:00
2025-09-11 17:10:50 +08:00
// Dictionary data dialog related
'dictDataDialog.addDictData' : 'Add Dictionary Data' ,
'dictDataDialog.dictLabel' : 'Dictionary Label' ,
'dictDataDialog.dictLabelPlaceholder' : 'Please enter dictionary label' ,
'dictDataDialog.dictValue' : 'Dictionary Value' ,
'dictDataDialog.dictValuePlaceholder' : 'Please enter dictionary value' ,
'dictDataDialog.sort' : 'Sort' ,
'dictDataDialog.requiredDictLabel' : 'Please enter dictionary label' ,
'dictDataDialog.requiredDictValue' : 'Please enter dictionary value' ,
2025-09-12 18:09:09 +08:00
2025-09-11 17:10:50 +08:00
// Dictionary type dialog related
'dictTypeDialog.addDictType' : 'Add Dictionary Type' ,
'dictTypeDialog.dictName' : 'Dictionary Type Name' ,
'dictTypeDialog.dictNamePlaceholder' : 'Please enter dictionary type name' ,
'dictTypeDialog.dictType' : 'Dictionary Type Code' ,
'dictTypeDialog.dictTypePlaceholder' : 'Please enter dictionary type code' ,
'dictTypeDialog.requiredDictName' : 'Please enter dictionary type name' ,
'dictTypeDialog.requiredDictType' : 'Please enter dictionary type code' ,
// Audio edit dialog related
'editVoiceDialog.voiceCode' : 'Voice Code' ,
'editVoiceDialog.voiceCodePlaceholder' : 'Please enter voice code' ,
'editVoiceDialog.voiceName' : 'Voice Name' ,
'editVoiceDialog.voiceNamePlaceholder' : 'Please enter voice name' ,
'editVoiceDialog.languageType' : 'Language Type' ,
'editVoiceDialog.languageTypePlaceholder' : 'Please enter language type' ,
'editVoiceDialog.sortNumber' : 'Sort Number' ,
'editVoiceDialog.remark' : 'Remark' ,
'editVoiceDialog.remarkPlaceholder' : 'Please enter remark content' ,
'editVoiceDialog.generatePreview' : 'Generate Preview' ,
'editVoiceDialog.defaultVoiceName' : 'Wawa Xiaohe' ,
'editVoiceDialog.defaultLanguageType' : 'Chinese' ,
'editVoiceDialog.requiredVoiceCode' : 'Please enter voice code' ,
'editVoiceDialog.requiredVoiceName' : 'Please enter voice name' ,
// Firmware dialog related
'firmwareDialog.firmwareName' : 'Firmware Name' ,
'firmwareDialog.firmwareNamePlaceholder' : 'Please enter firmware name (board + version)' ,
'firmwareDialog.firmwareType' : 'Firmware Type' ,
'firmwareDialog.firmwareTypePlaceholder' : 'Please select firmware type' ,
2025-10-10 14:35:35 +08:00
'firmwareDialog.version' : 'Version' ,
'firmwareDialog.versionPlaceholder' : 'Please enter version (x.x.x format)' ,
'firmwareDialog.firmwareFile' : 'Firmware File' ,
'firmwareDialog.clickUpload' : 'Click to Upload' ,
'firmwareDialog.uploadTip' : 'Only firmware files (.bin/.apk) are supported, and size should not exceed 100MB' ,
'firmwareDialog.uploadHint' : 'Warm reminder: Please upload the pre-merged xiaozhi.bin file, not the merged merged-binary.bin file' ,
'firmwareDialog.remark' : 'Remark' ,
'firmwareDialog.remarkPlaceholder' : 'Please enter remark information' ,
'firmwareDialog.requiredFirmwareName' : 'Please enter firmware name (board + version)' ,
'firmwareDialog.requiredFirmwareType' : 'Please select firmware type' ,
'firmwareDialog.requiredVersion' : 'Please enter version' ,
'firmwareDialog.versionFormatError' : 'Version format is incorrect, please enter x.x.x format' ,
'firmwareDialog.requiredFirmwareFile' : 'Please upload firmware file' ,
'firmwareDialog.invalidFileType' : 'Only .bin/.apk format firmware files are supported!' ,
'firmwareDialog.invalidFileSize' : 'Firmware file size cannot exceed 100MB!' ,
'firmwareDialog.uploadSuccess' : 'Firmware file uploaded successfully' ,
'firmwareDialog.uploadFailed' : 'File upload failed' ,
2025-09-11 17:10:50 +08:00
// Voice print dialog related
'voicePrintDialog.addSpeaker' : 'Add Speaker' ,
'voicePrintDialog.voicePrintVector' : 'Voice Print Vector' ,
'voicePrintDialog.selectVoiceMessage' : 'Please select a voice message' ,
'voicePrintDialog.name' : 'Name' ,
'voicePrintDialog.enterName' : 'Please enter name' ,
'voicePrintDialog.description' : 'Description' ,
'voicePrintDialog.enterDescription' : 'Please enter description' ,
'voicePrintDialog.save' : 'Save' ,
'voicePrintDialog.cancel' : 'Cancel' ,
'voicePrintDialog.requiredDescription' : 'Please enter description' ,
'voicePrintDialog.requiredName' : 'Please enter name' ,
'voicePrintDialog.requiredAudioVector' : 'Please select audio vector' ,
2025-12-10 10:26:27 +08:00
// Context provider dialog related
'contextProviderDialog.title' : 'Edit Source' ,
'contextProviderDialog.noContextApi' : 'No Context API' ,
'contextProviderDialog.add' : 'Add' ,
'contextProviderDialog.apiUrl' : 'API URL' ,
'contextProviderDialog.apiUrlPlaceholder' : 'http://api.example.com/data' ,
'contextProviderDialog.requestHeaders' : 'Request Headers' ,
'contextProviderDialog.headerKeyPlaceholder' : 'Key' ,
'contextProviderDialog.headerValuePlaceholder' : 'Value' ,
'contextProviderDialog.noHeaders' : 'No Headers' ,
'contextProviderDialog.addHeader' : 'Add Header' ,
'contextProviderDialog.cancel' : 'Cancel' ,
'contextProviderDialog.confirm' : 'Confirm' ,
// Role config page - context provider related
'roleConfig.contextProvider' : 'Context' ,
'roleConfig.contextProviderSuccess' : 'Successfully added {count} sources.' ,
'roleConfig.contextProviderDocLink' : 'How to deploy context provider' ,
'roleConfig.editContextProvider' : 'Edit Source' ,
2025-09-11 17:10:50 +08:00
// Voice print page related
'voicePrint.pageTitle' : 'Voice Print Recognition' ,
'voicePrint.name' : 'Name' ,
'voicePrint.description' : 'Description' ,
'voicePrint.createTime' : 'Creation Time' ,
'voicePrint.action' : 'Action' ,
'voicePrint.edit' : 'Edit' ,
'voicePrint.delete' : 'Delete' ,
'voicePrint.add' : 'Add' ,
'voicePrint.addSpeaker' : 'Add Speaker' ,
'voicePrint.editSpeaker' : 'Edit Speaker' ,
'voicePrint.fetchFailed' : 'Failed to fetch voice print list' ,
'voicePrint.updateSuccess' : 'Update successful' ,
'voicePrint.addSuccess' : 'Add successful' ,
'voicePrint.confirmDelete' : 'Are you sure you want to delete this voice print?' ,
'voicePrint.warning' : 'Warning' ,
'voicePrint.confirm' : 'Confirm' ,
'voicePrint.cancel' : 'Cancel' ,
'voicePrint.deleteSuccess' : 'Successfully deleted this voice print' ,
'voicePrint.deleteFailed' : 'Deletion failed, please try again' ,
'voicePrint.cancelDelete' : 'Deletion operation canceled' ,
'voicePrint.closeOperation' : 'Operation closed' ,
'voicePrint.loading' : 'Loading...' ,
2025-09-12 18:09:09 +08:00
2025-09-11 17:10:50 +08:00
// Manual add device dialog related
'manualAddDeviceDialog.title' : 'Manual Add Device' ,
2025-10-10 14:35:35 +08:00
'manualAddDeviceDialog.deviceType' : 'Device Type' ,
'manualAddDeviceDialog.deviceTypePlaceholder' : 'Please select device type' ,
'manualAddDeviceDialog.firmwareVersion' : 'Firmware Version' ,
'manualAddDeviceDialog.firmwareVersionPlaceholder' : 'Please enter firmware version' ,
'manualAddDeviceDialog.macAddress' : 'Mac Address' ,
'manualAddDeviceDialog.macAddressPlaceholder' : 'Please enter Mac address' ,
'manualAddDeviceDialog.confirm' : 'Confirm' ,
'manualAddDeviceDialog.cancel' : 'Cancel' ,
'manualAddDeviceDialog.requiredMacAddress' : 'Please enter Mac address' ,
'manualAddDeviceDialog.invalidMacAddress' : 'Please enter correct Mac address format, e.g.: 00:1A:2B:3C:4D:5E' ,
'manualAddDeviceDialog.requiredDeviceType' : 'Please select device type' ,
'manualAddDeviceDialog.requiredFirmwareVersion' : 'Please enter firmware version' ,
'manualAddDeviceDialog.getFirmwareTypeFailed' : 'Failed to get firmware type' ,
'manualAddDeviceDialog.addSuccess' : 'Device added successfully' ,
'manualAddDeviceDialog.addFailed' : 'Failed to add' ,
2025-09-17 11:36:25 +08:00
// AddModelDialog component related
'addModelDialog.requiredSupplier' : 'Please select a supplier' ,
2025-09-26 23:39:27 +08:00
2025-09-17 11:36:25 +08:00
// Register page related
'register.title' : 'Create Account' ,
'register.welcome' : 'Welcome to XiaoZhi AI' ,
'register.usernamePlaceholder' : 'Please enter username' ,
'register.mobilePlaceholder' : 'Please enter mobile phone number' ,
'register.captchaPlaceholder' : 'Please enter captcha' ,
'register.mobileCaptchaPlaceholder' : 'Please enter SMS verification code' ,
'register.passwordPlaceholder' : 'Please set password' ,
'register.confirmPasswordPlaceholder' : 'Please confirm password' ,
'register.goToLogin' : 'Already have an account? Login' ,
'register.registerButton' : 'Register' ,
'register.agreeTo' : 'By registering, you agree to our' ,
'register.userAgreement' : 'User Agreement' ,
'register.privacyPolicy' : 'Privacy Policy' ,
'register.notAllowRegister' : 'User registration is not allowed' ,
'register.captchaLoadFailed' : 'Failed to load captcha' ,
'register.inputCaptcha' : 'Please enter captcha' ,
'register.inputCorrectMobile' : 'Please enter correct mobile phone number' ,
'register.captchaSendSuccess' : 'Verification code sent successfully' ,
'register.captchaSendFailed' : 'Failed to send verification code' ,
'register.passwordsNotMatch' : 'Passwords do not match' ,
'register.registerSuccess' : 'Registration successful!' ,
'register.registerFailed' : 'Registration failed' ,
'register.requiredUsername' : 'Username cannot be empty' ,
'register.requiredPassword' : 'Password cannot be empty' ,
'register.requiredCaptcha' : 'Captcha cannot be empty' ,
'register.requiredMobileCaptcha' : 'Please enter SMS verification code' ,
2025-10-10 14:35:35 +08:00
'register.invalidCaptcha' : 'Invalid verification code' ,
'register.passwordLength' : 'Password length must be between 6-20 characters' ,
'register.usernameFormat' : 'Invalid username format' ,
'register.confirmPasswordRequired' : 'Confirm password cannot be empty' ,
'register.sendCaptcha' : 'Get Verification Code' ,
'register.secondsLater' : 'seconds later' ,
2025-09-12 18:09:09 +08:00
2025-09-11 17:10:50 +08:00
// Parameter dialog related
'paramDialog.paramCode' : 'Parameter Code' ,
'paramDialog.paramCodePlaceholder' : 'Please enter parameter code' ,
'paramDialog.paramValue' : 'Parameter Value' ,
'paramDialog.paramValuePlaceholder' : 'Please enter parameter value' ,
'paramDialog.valueType' : 'Value Type' ,
'paramDialog.valueTypePlaceholder' : 'Please select value type' ,
'paramDialog.remark' : 'Remark' ,
'paramDialog.remarkPlaceholder' : 'Please enter remark' ,
'paramDialog.save' : 'Save' ,
'paramDialog.cancel' : 'Cancel' ,
'paramDialog.requiredParamCode' : 'Please enter parameter code' ,
'paramDialog.requiredParamValue' : 'Please enter parameter value' ,
'paramDialog.requiredValueType' : 'Please select value type' ,
'paramDialog.stringType' : 'String' ,
'paramDialog.numberType' : 'Number' ,
'paramDialog.booleanType' : 'Boolean' ,
'paramDialog.arrayType' : 'Array' ,
'paramDialog.jsonType' : 'JSON Object' ,
2025-09-12 18:09:09 +08:00
2026-04-23 17:50:57 +08:00
// Replacement word management page related
'replacementWordManagement.pageTitle' : 'Replacement Word Management' ,
2026-06-17 14:20:48 +08:00
'replacementWordManagement.searchPlaceholder' : 'Please enter file name to search' ,
'replacementWordManagement.search' : 'Search' ,
2026-04-23 17:50:57 +08:00
'replacementWordManagement.fileName' : 'File Name' ,
'replacementWordManagement.replacementWordCount' : 'Replacement Word Count' ,
'replacementWordManagement.replacementWordContent' : 'Replacement Word Content' ,
'replacementWordManagement.operation' : 'Operation' ,
'replacementWordManagement.createTime' : 'Create Time' ,
'replacementWordManagement.updateTime' : 'Update Time' ,
'replacementWordManagement.addFile' : 'Add Replacement File' ,
'replacementWordManagement.edit' : 'Edit' ,
'replacementWordManagement.download' : 'Download' ,
'replacementWordManagement.delete' : 'Delete' ,
2026-05-28 15:18:54 +08:00
// Replacement word dialog related
2026-04-23 17:50:57 +08:00
'replacementDialog.fileName' : 'File Name' ,
'replacementDialog.fileNamePlaceholder' : 'Please enter file name' ,
'replacementDialog.content' : 'Replacement Content' ,
'replacementDialog.contentPlaceholder' : 'Enter replacement content, format: original|replacement per line' ,
'replacementDialog.formatTip' : 'Format per line: original|replacement' ,
'replacementDialog.wordCountUnit' : 'replacement words' ,
'replacementDialog.uploadTxt' : 'Upload txt' ,
'replacementDialog.uploadReplacementFile' : 'Upload Replacement File' ,
'replacementDialog.clickUploadTip' : 'Click to upload replacement file' ,
'replacementDialog.uploadCoverTip' : 'Uploading overwrites current content' ,
'replacementDialog.save' : 'Save' ,
'replacementDialog.cancel' : 'Cancel' ,
'replacementDialog.requiredFileName' : 'Please enter file name' ,
'replacementDialog.requiredContent' : 'Please enter replacement content' ,
'replacementDialog.invalidFormat' : 'Line {line} format error, each line must contain | separator' ,
'replacementDialog.invalidPipeCount' : 'Line {line} format error, each line can only contain one | separator' ,
'replacementDialog.emptyOriginal' : 'Line {line} original word cannot be empty' ,
'replacementDialog.emptyReplacement' : 'Line {line} replacement word cannot be empty' ,
'replacementDialog.invalidOriginalChar' : 'Line {line} original word contains special characters' ,
'replacementDialog.invalidReplacementChar' : 'Line {line} replacement word contains special characters' ,
'replacementDialog.readFileError' : 'Failed to read file' ,
2026-04-24 14:54:37 +08:00
'replacementDialog.maxWordCountExceeded' : 'Replacement word count cannot exceed {max}' ,
2026-04-23 17:50:57 +08:00
// Replacement Word Management page text
'replacementWordManagement.getListFailed' : 'Failed to get list' ,
'replacementWordManagement.confirmDelete' : 'Are you sure you want to delete this file?' ,
'replacementWordManagement.deleteHint' : 'Hint' ,
'replacementWordManagement.saveSuccess' : 'Saved successfully' ,
'replacementWordManagement.saveFailed' : 'Save failed' ,
'replacementWordManagement.addFailed' : 'Add failed' ,
'replacementWordManagement.batchDelete' : 'Batch Delete' ,
'replacementWordManagement.confirmBatchDelete' : 'Are you sure you want to delete the selected {count} files?' ,
'replacementWordManagement.batchDeleteHint' : 'Batch Delete Hint' ,
2025-09-11 17:10:50 +08:00
// Login page text
2025-09-12 18:09:09 +08:00
'login.title' : 'Login' ,
2025-09-11 17:10:50 +08:00
'login.welcome' : 'WELCOME TO LOGIN' ,
'login.username' : 'Username' ,
'login.usernamePlaceholder' : 'Please enter username' ,
'login.mobilePlaceholder' : 'Please enter mobile number' ,
'login.password' : 'Password' ,
'login.passwordPlaceholder' : 'Please enter password' ,
'login.captchaPlaceholder' : 'Please enter verification code' ,
'login.loginButton' : 'Login' ,
'login.login' : 'Login' ,
'login.register' : 'Register' ,
'login.forgotPassword' : 'Forgot Password' ,
'login.forgetPassword' : 'Forgot Password?' ,
'login.mobileLogin' : 'Mobile Login' ,
'login.usernameLogin' : 'Username Login' ,
2025-09-12 18:09:09 +08:00
'login.agreeTo' : 'Login implies acceptance of' ,
2025-09-11 17:10:50 +08:00
'login.userAgreement' : 'User Agreement' ,
'login.and' : 'and' ,
'login.privacyPolicy' : 'Privacy Policy' ,
'login.registerAccount' : 'Register Account' ,
2025-09-12 18:09:09 +08:00
2025-09-11 17:10:50 +08:00
// Retrieve password page text
'retrievePassword.title' : 'Reset Password' ,
'retrievePassword.welcome' : 'PASSWORD RETRIEVE' ,
2025-09-29 16:51:23 +08:00
'retrievePassword.subtitle' : 'Retrieve Password' ,
2025-09-11 17:10:50 +08:00
'retrievePassword.mobile' : 'Mobile' ,
'retrievePassword.mobilePlaceholder' : 'Please enter mobile number' ,
'retrievePassword.captcha' : 'Verification Code' ,
'retrievePassword.captchaPlaceholder' : 'Please enter verification code' ,
'retrievePassword.mobileCaptcha' : 'Mobile Verification Code' ,
'retrievePassword.mobileCaptchaPlaceholder' : 'Please enter mobile verification code' ,
'retrievePassword.newPassword' : 'New Password' ,
'retrievePassword.newPasswordPlaceholder' : 'Please enter new password' ,
'retrievePassword.confirmNewPassword' : 'Confirm New Password' ,
'retrievePassword.confirmNewPasswordPlaceholder' : 'Please confirm new password' ,
'retrievePassword.getMobileCaptcha' : 'Get Verification Code' ,
2025-09-29 16:51:23 +08:00
'retrievePassword.resetButton' : 'Reset Password' ,
2025-09-11 17:10:50 +08:00
'retrievePassword.updateButton' : 'Update Now' ,
'retrievePassword.goToLogin' : 'Back to Login' ,
'retrievePassword.inputCorrectMobile' : 'Please enter correct mobile number' ,
'retrievePassword.captchaSendSuccess' : 'Verification code sent successfully' ,
'retrievePassword.passwordsNotMatch' : 'Two password entries do not match' ,
'retrievePassword.passwordLength' : 'Password length must be between 6-20 characters' ,
'retrievePassword.mobileRequired' : 'Mobile number cannot be empty' ,
'retrievePassword.captchaRequired' : 'Verification code cannot be empty' ,
'retrievePassword.mobileCaptchaRequired' : 'Mobile verification code cannot be empty' ,
'retrievePassword.newPasswordRequired' : 'New password cannot be empty' ,
'retrievePassword.confirmNewPasswordRequired' : 'Confirm new password cannot be empty' ,
'retrievePassword.passwordUpdateSuccess' : 'Password updated successfully' ,
2025-09-29 16:51:23 +08:00
'retrievePassword.agreeTo' : 'Reset means agree' ,
2025-09-12 18:09:09 +08:00
2025-09-11 17:10:50 +08:00
// Change password page text
'changePassword.title' : 'Change Password' ,
'changePassword.oldPasswordLabel' : 'Old Password:' ,
'changePassword.oldPasswordPlaceholder' : 'Please enter old password' ,
'changePassword.newPasswordLabel' : 'New Password:' ,
'changePassword.newPasswordPlaceholder' : 'Please enter new password' ,
'changePassword.confirmPasswordLabel' : 'Confirm New Password:' ,
'changePassword.confirmPasswordPlaceholder' : 'Please re-enter new password' ,
'changePassword.confirmButton' : 'Confirm' ,
'changePassword.cancelButton' : 'Cancel' ,
'changePassword.allFieldsRequired' : 'Please fill in all fields' ,
'changePassword.passwordsNotMatch' : 'Two new password entries do not match' ,
'changePassword.newPasswordSameAsOld' : 'New password cannot be the same as old password' ,
'changePassword.passwordChangedSuccessfully' : 'Password changed successfully, please login again' ,
'changePassword.changeFailed' : 'Password change failed' ,
2025-09-12 18:09:09 +08:00
2025-09-11 17:10:50 +08:00
// Device management page text
'device.management' : 'Device Management' ,
'device.add' : 'Add Device' ,
'device.edit' : 'Edit Device' ,
'device.delete' : 'Delete Device' ,
'device.name' : 'Device Name' ,
'device.type' : 'Device Type' ,
'device.status' : 'Device Status' ,
'device.dialogTitle' : 'Add Device' ,
'device.verificationCode' : 'Verification Code:' ,
'device.verificationCodePlaceholder' : 'Please enter the 6-digit verification code broadcasted by the device..' ,
'device.confirmButton' : 'Confirm' ,
'device.cancelButton' : 'Cancel' ,
'device.input6DigitCode' : 'Please enter a 6-digit verification code' ,
'device.bindSuccess' : 'Device binding successful' ,
'device.bindFailed' : 'Binding failed' ,
'device.searchPlaceholder' : 'Please enter device model or Mac address to search' ,
'device.model' : 'Device Model' ,
'device.macAddress' : 'Mac Address' ,
'device.firmwareVersion' : 'Firmware Version' ,
'device.bindTime' : 'Binding Time' ,
'device.lastConversation' : 'Last Conversation' ,
'device.remark' : 'Remark' ,
'device.autoUpdate' : 'Auto Update' ,
'device.operation' : 'Operation' ,
'device.search' : 'Search' ,
'device.selectAll' : 'Select All/Deselect All' ,
2025-09-15 11:32:57 +08:00
'deviceManagement.loading' : 'Loading...' ,
2025-09-17 14:10:07 +08:00
'device.bindWithCode' : '6-digit Verification Code Binding' ,
2025-09-11 17:10:50 +08:00
'device.manualAdd' : 'Manual Add' ,
'device.unbind' : 'Unbind' ,
2026-01-16 14:52:40 +08:00
'device.deviceThemeGeneration' : 'Device theme generation' ,
2025-09-16 00:06:57 +08:00
'device.toolCall' : 'Tool Call' ,
2025-09-11 17:10:50 +08:00
'device.selectAtLeastOne' : 'Please select at least one record' ,
'device.confirmBatchUnbind' : 'Are you sure you want to unbind {count} selected devices?' ,
'device.batchUnbindSuccess' : 'Successfully unbound {count} devices' ,
'device.batchUnbindError' : 'Error occurred during batch unbinding' ,
'device.remarkTooLong' : 'Remark cannot exceed 64 characters' ,
'device.remarkSaved' : 'Remark saved successfully' ,
'device.remarkSaveFailed' : 'Failed to save remark' ,
'device.confirmUnbind' : 'Are you sure you want to unbind this device?' ,
'device.unbindSuccess' : 'Device unbound successfully' ,
'device.unbindFailed' : 'Failed to unbind device' ,
'device.getListFailed' : 'Failed to fetch device list' ,
'device.autoUpdateEnabled' : 'Auto update enabled' ,
'device.autoUpdateDisabled' : 'Auto update disabled' ,
'device.getFirmwareTypeFailed' : 'Failed to fetch firmware type' ,
2025-09-17 11:36:20 +08:00
'device.deviceStatus' : 'Status' ,
'device.online' : 'Online' ,
'device.offline' : 'Offline' ,
2025-09-12 18:09:09 +08:00
2025-09-11 17:10:50 +08:00
// Message tips
'message.success' : 'Operation Successful' ,
'message.error' : 'Operation Failed' ,
'message.warning' : 'Warning' ,
'message.info' : 'Information' ,
2025-09-12 18:09:09 +08:00
2025-09-11 17:10:50 +08:00
// Cache related
'cache.viewer' : 'Cache Viewer' ,
2025-09-12 18:09:09 +08:00
2025-09-11 17:10:50 +08:00
// Chat history dialog related
'chatHistory.with' : 'With' ,
'chatHistory.dialogTitle' : "'s Chat History" ,
'chatHistory.loading' : 'Loading...' ,
'chatHistory.noMoreRecords' : 'No more records' ,
'chatHistory.selectSession' : 'Please select a session to view chat history' ,
'chatHistory.today' : 'Today' ,
'chatHistory.yesterday' : 'Yesterday' ,
2025-10-01 01:24:13 +08:00
'chatHistory.downloadCurrentSession' : 'Download current session chat history' ,
'chatHistory.downloadCurrentWithPreviousSessions' : 'Download current and previous 20 sessions chat history' ,
'chatHistory.downloadLinkFailed' : 'Failed to get download link' ,
2025-10-10 14:35:35 +08:00
2025-09-11 17:10:50 +08:00
'cache.status' : 'Cache Status' ,
'cache.cdnEnabled' : 'CDN Mode Enabled' ,
'cache.cdnDisabled' : 'CDN Mode Disabled' ,
'cache.serviceWorkerRegistered' : 'Service Worker Registered' ,
'cache.serviceWorkerNotRegistered' : 'Service Worker Not Registered' ,
'cache.noCacheDetected' : 'No cache detected yet, please refresh the page or wait for cache to be established' ,
'cache.swDevEnvWarning' : 'In development environment, Service Worker may not initialize cache properly' ,
'cache.swCheckMethods' : 'Please try the following methods to check if Service Worker is working:' ,
'cache.swCheckMethod1' : 'Check Service Worker status in Application/Application tab of developer tools' ,
'cache.swCheckMethod2' : 'View cache content in Application/Cache/Cache Storage of developer tools' ,
'cache.swCheckMethod3' : 'Use production build (npm run build) and access through HTTP server to test full functionality' ,
'cache.swDevEnvNormal' : 'In development environment, this is normal' ,
'cache.swProdOnly' : 'Service Worker usually only works in production environment' ,
'cache.swTestingTitle' : 'To test Service Worker functionality:' ,
'cache.swTestingStep1' : 'Run npm run build to build production version' ,
'cache.swTestingStep2' : 'Access the built page through HTTP server' ,
'cache.swNotSupported' : 'The current browser does not support Service Worker, CDN resource caching function is unavailable' ,
'cache.dialogTitle' : 'CDN Resource Cache Status' ,
'cache.loading' : 'Loading cache information...' ,
'cache.notSupported' : 'Your browser does not support Cache API or Service Worker is not installed' ,
'cache.refreshPage' : 'Refresh Page' ,
'cache.noCachedResources' : 'No cached CDN resources found' ,
'cache.noCachedResourcesDesc' : 'Service Worker may not have completed initialization or cache has not been established. Please refresh the page or try again later.' ,
'cache.cdnCacheStatus' : 'CDN Resource Cache Status' ,
'cache.totalCachedResources' : 'Found {count} cached resources in total' ,
'cache.jsResources' : 'JavaScript Resources ({count})' ,
'cache.cssResources' : 'CSS Resources ({count})' ,
'cache.cached' : 'Cached' ,
'cache.notCached' : 'Not Cached' ,
'cache.refreshStatus' : 'Refresh Cache Status' ,
'cache.clearCache' : 'Clear Cache' ,
'cache.refreshingStatus' : 'Refreshing cache status' ,
'cache.confirmClear' : 'Are you sure you want to clear all cache?' ,
'cache.clearedSuccess' : 'Cache cleared successfully' ,
'cache.clearFailed' : 'Failed to clear cache' ,
'cache.clearCanceled' : 'Clear operation canceled' ,
2025-09-12 18:09:09 +08:00
2025-09-11 17:10:50 +08:00
// Common buttons
'button.ok' : 'OK' ,
'button.cancel' : 'Cancel' ,
'button.save' : 'Save' ,
'button.close' : 'Close' ,
2025-09-12 18:09:09 +08:00
2025-09-11 17:10:50 +08:00
// System information
'system.name' : 'XiaoZhi Service' ,
2025-09-12 18:09:09 +08:00
2025-09-11 17:10:50 +08:00
// Voiceprint related
'voiceprint.management' : 'Voiceprint Management' ,
'voiceprint.add' : 'Add Voiceprint' ,
'voiceprint.delete' : 'Delete Voiceprint' ,
2025-09-12 18:09:09 +08:00
2025-09-11 17:10:50 +08:00
// Dictionary management page text
'dictManagement.pageTitle' : 'Dictionary Management' ,
2026-06-18 16:49:15 +08:00
'dictManagement.dictTypeCategory' : 'Dict Category' ,
2025-09-11 17:10:50 +08:00
'dictManagement.searchPlaceholder' : 'Please enter dict value label to search' ,
'dictManagement.search' : 'Search' ,
'dictManagement.dictTypeName' : 'Dict Type Name' ,
'dictManagement.operation' : 'Operation' ,
'dictManagement.edit' : 'Edit' ,
'dictManagement.dictLabel' : 'Dict Label' ,
'dictManagement.dictValue' : 'Dict Value' ,
'dictManagement.sort' : 'Sort' ,
'dictManagement.delete' : 'Delete' ,
'dictManagement.selectAll' : 'Select All' ,
'dictManagement.deselectAll' : 'Deselect All' ,
'dictManagement.addDictType' : 'Add Dict Type' ,
'dictManagement.batchDeleteDictType' : 'Batch Delete Dict Types' ,
'dictManagement.addDictData' : 'Add Dict Data' ,
'dictManagement.batchDeleteDictData' : 'Batch Delete Dict Data' ,
'dictManagement.itemsPerPage' : '{items} items/page' ,
'dictManagement.firstPage' : 'First Page' ,
'dictManagement.prevPage' : 'Previous Page' ,
'dictManagement.nextPage' : 'Next Page' ,
'dictManagement.totalRecords' : 'Total {total} records' ,
'dictManagement.editDictType' : 'Edit Dict Type' ,
'dictManagement.editDictData' : 'Edit Dict Data' ,
'dictManagement.saveSuccess' : 'Save Success' ,
'dictManagement.deleteSuccess' : 'Delete Success' ,
'dictManagement.selectDictTypeToDelete' : 'Please select dict types to delete' ,
'dictManagement.confirmDeleteDictType' : 'Are you sure you want to delete the selected dict types?' ,
'dictManagement.confirm' : 'Confirm' ,
'dictManagement.cancel' : 'Cancel' ,
'dictManagement.selectDictTypeFirst' : 'Please select a dict type first' ,
'dictManagement.confirmDeleteDictData' : 'Are you sure you want to delete this dict data?' ,
'dictManagement.selectDictDataToDelete' : 'Please select dict data to delete' ,
'dictManagement.confirmBatchDeleteDictData' : 'Are you sure you want to delete {count} selected dict data items?' ,
'dictManagement.getDictDataFailed' : 'Failed to get dict data' ,
2025-09-12 18:09:09 +08:00
2025-09-11 17:10:50 +08:00
// User information
'user.info' : 'User Information' ,
'user.username' : 'Username' ,
'user.mobile' : 'Mobile Phone' ,
'user.userid' : 'User ID' ,
'user.deviceCount' : 'Device Count' ,
'user.createDate' : 'Registration Time' ,
'user.status' : 'Status' ,
'user.normal' : 'Normal' ,
'user.disabled' : 'Disabled' ,
'user.resetPassword' : 'Reset Password' ,
'user.disableAccount' : 'Disable Account' ,
'user.enableAccount' : 'Enable Account' ,
'user.deleteUser' : 'Delete User' ,
'user.deselectAll' : 'Deselect All' ,
'user.selectAll' : 'Select All' ,
'user.enable' : 'Enable' ,
'user.disable' : 'Disable' ,
'user.delete' : 'Delete' ,
'user.selectUsersFirst' : 'Please select users to delete first' ,
2026-06-16 10:39:52 +08:00
'user.selectUsersToDisable' : 'Please select users to disable' ,
'user.selectUsersToEnable' : 'Please select users to enable' ,
2025-09-11 17:10:50 +08:00
'user.confirmDeleteSelected' : 'Are you sure you want to delete {count} selected users?' ,
'user.deleting' : 'Deleting...' ,
'user.deleteSuccess' : 'Successfully deleted {count} users' ,
'user.deleteFailed' : 'Deletion failed, please try again' ,
'user.partialDelete' : 'Successfully deleted {successCount} users, {failCount} failed to delete' ,
'user.deleteError' : 'An error occurred during deletion' ,
'user.deleteCancelled' : 'Deletion cancelled' ,
'user.confirmResetPassword' : 'A new password will be generated after reset. Continue?' ,
'user.resetPasswordSuccess' : 'Password has been reset, please notify the user to log in with the new password' ,
2025-09-23 10:16:17 +08:00
'user.generatedPassword' : 'Generated Default Password' ,
2025-09-11 17:10:50 +08:00
'user.confirmDeleteUser' : 'Are you sure you want to delete this user?' ,
'user.deleteUserSuccess' : 'Deletion successful' ,
'user.operationFailed' : 'Operation failed, please try again' ,
'user.confirmStatusChange' : 'Are you sure you want to {action} {count} selected users?' ,
'user.statusChangeSuccess' : 'Successfully {action} {count} users' ,
'user.invalidUserId' : 'There are invalid user IDs' ,
'user.searchPhone' : 'Please enter mobile phone number to search' ,
'user.search' : 'Search' ,
2025-09-12 18:09:09 +08:00
2025-09-22 14:55:22 +08:00
// Provider Management Page Text
'providerManagement.categoryFilter' : 'Category Filter' ,
'providerManagement.searchPlaceholder' : 'Please enter provider name to search' ,
'providerManagement.category' : 'Category' ,
'providerManagement.providerCode' : 'Provider Code' ,
'providerManagement.fieldConfig' : 'Field Configuration' ,
'providerManagement.selectToDelete' : 'Please select providers to delete first' ,
'providerManagement.confirmDelete' : 'Are you sure to delete the selected {count} providers?' ,
'providerManagement.viewFields' : 'View Fields' ,
2025-09-26 23:39:27 +08:00
2025-09-22 14:55:22 +08:00
// Common Text
'common.all' : 'All' ,
'common.search' : 'Search' ,
'common.name' : 'Name' ,
'common.sort' : 'Sort' ,
'common.action' : 'Action' ,
'common.edit' : 'Edit' ,
'common.delete' : 'Delete' ,
'common.selectAll' : 'Select All' ,
'common.deselectAll' : 'Deselect All' ,
'common.add' : 'Add' ,
'common.perPage' : '{number}/page' ,
'common.firstPage' : 'First Page' ,
'common.prevPage' : 'Previous Page' ,
'common.nextPage' : 'Next Page' ,
'common.totalRecords' : 'Total {number} records' ,
'common.addProvider' : 'Add Provider' ,
2025-09-23 10:16:17 +08:00
'common.success' : 'Success' ,
2025-09-22 14:55:22 +08:00
'common.editProvider' : 'Edit Provider' ,
'common.updateSuccess' : 'Update Success' ,
'common.addSuccess' : 'Add Success' ,
'common.deleteSuccess' : 'Delete Success' ,
'common.deleteFailure' : 'Delete Failed, Please Try Again' ,
'common.deleteCancelled' : 'Delete Cancelled' ,
'common.warning' : 'Warning' ,
'common.tip' : 'Tip' ,
'common.confirm' : 'Confirm' ,
'common.cancel' : 'Cancel' ,
'common.sensitive' : 'Sensitive' ,
2025-11-04 16:21:01 +08:00
'common.loading' : 'Loading' ,
2026-06-18 10:26:06 +08:00
'common.copySuccess' : 'Copy successful' ,
'common.copyFailed' : 'Copy failed' ,
'common.copyAddress' : 'Copy address' ,
2025-09-26 23:39:27 +08:00
2025-09-11 17:10:50 +08:00
// Language switch
2025-09-12 18:09:09 +08:00
'language.zhCN' : '中文简体' ,
'language.zhTW' : '中文繁體' ,
2025-09-11 17:10:50 +08:00
'language.en' : 'English' ,
2025-11-15 17:24:47 +08:00
'language.de' : 'Deutsch' ,
'language.vi' : 'Tiếng Việt' ,
2026-02-19 17:44:25 +00:00
'language.ptBR' : 'Português (Brasil)' ,
2025-09-12 18:09:09 +08:00
2025-09-11 17:10:50 +08:00
// Home page text
'home.addAgent' : 'Add Agent' ,
2025-11-16 17:18:49 +08:00
'home.greeting' : 'Hi XiaoZhi' ,
2025-09-12 18:33:14 +08:00
'home.wish' : "Let's have a wonderful day!" ,
2025-09-12 18:09:09 +08:00
'home.languageModel' : 'LLM' ,
'home.voiceModel' : 'TTS' ,
'home.configureRole' : 'Config Role' ,
'home.voiceprintRecognition' : 'Voiceprint' ,
'home.deviceManagement' : 'Devices' ,
2025-09-11 17:10:50 +08:00
'home.chatHistory' : 'Chat History' ,
'home.lastConversation' : 'Last Conversation' ,
2025-09-22 14:55:22 +08:00
'home.noConversation' : 'No conversation' ,
'home.justNow' : 'Just now' ,
'home.minutesAgo' : '{minutes} minutes ago' ,
'home.hoursAgo' : '{hours} hours {minutes} minutes ago' ,
'home.confirmDeleteAgent' : 'Are you sure you want to delete this agent?' ,
'home.deleteSuccess' : 'Delete successful' ,
'home.deleteFailed' : 'Delete failed' ,
'home.enableMemory' : 'Please enable memory in the "Config Role" page first' ,
2025-09-12 18:09:09 +08:00
2025-09-11 17:10:50 +08:00
// Parameter management page text
'paramManagement.pageTitle' : 'Parameter Management' ,
'paramManagement.searchPlaceholder' : 'Please enter parameter code or remark to search' ,
'paramManagement.search' : 'Search' ,
'paramManagement.paramCode' : 'Parameter Code' ,
'paramManagement.paramValue' : 'Parameter Value' ,
'paramManagement.remark' : 'Remark' ,
'paramManagement.operation' : 'Operation' ,
'paramManagement.hide' : 'Hide' ,
'paramManagement.view' : 'View' ,
'paramManagement.deselectAll' : 'Deselect All' ,
'paramManagement.selectAll' : 'Select All' ,
'paramManagement.add' : 'Add' ,
'paramManagement.delete' : 'Delete' ,
'paramManagement.edit' : 'Edit' ,
'paramManagement.itemsPerPage' : 'items/page' ,
'paramManagement.firstPage' : 'First Page' ,
'paramManagement.prevPage' : 'Previous Page' ,
'paramManagement.nextPage' : 'Next Page' ,
'paramManagement.totalRecords' : 'Total {total} records' ,
'paramManagement.addParam' : 'Add Parameter' ,
'paramManagement.editParam' : 'Edit Parameter' ,
'paramManagement.getParamsListFailed' : 'Failed to get parameter list' ,
'paramManagement.selectParamsFirst' : 'Please select parameters to delete first' ,
'paramManagement.confirmBatchDelete' : 'Are you sure you want to delete {paramCount} selected parameters?' ,
'paramManagement.invalidParamId' : 'There are invalid parameter IDs' ,
'paramManagement.batchDeleteSuccess' : 'Successfully deleted {paramCount} parameters' ,
'paramManagement.deleteFailed' : 'Deletion failed, please try again' ,
'paramManagement.operationCancelled' : 'Deletion cancelled' ,
'paramManagement.operationClosed' : 'Operation closed' ,
2025-12-13 15:34:11 +08:00
'paramManagement.updateSuccess' : 'Update successful. Some configurations will take effect only after restarting the xiaozhi-server module.' ,
2025-09-11 17:10:50 +08:00
'paramManagement.addSuccess' : 'Add successful' ,
'paramManagement.updateFailed' : 'Update failed' ,
'paramManagement.addFailed' : 'Add failed' ,
2025-09-12 18:09:09 +08:00
2025-09-11 17:10:50 +08:00
// Server side management page text
'serverSideManager.pageTitle' : 'Server Management' ,
'serverSideManager.wsAddress' : 'WS Address' ,
'serverSideManager.operation' : 'Operation' ,
'serverSideManager.restart' : 'Restart' ,
'serverSideManager.updateConfig' : 'Update Config' ,
'serverSideManager.restartServer' : 'Restart Server' ,
'serverSideManager.updateConfigTitle' : 'Update Config' ,
'serverSideManager.confirmRestart' : 'Are you sure you want to restart the server?' ,
'serverSideManager.confirmUpdateConfig' : 'Are you sure you want to update the config?' ,
'serverSideManager.loading' : 'Loading...' ,
'serverSideManager.getServerListFailed' : 'Failed to get server list' ,
'serverSideManager.operationFailed' : 'Operation failed' ,
'serverSideManager.restartSuccess' : 'Restart successful' ,
'serverSideManager.updateConfigSuccess' : 'Config update successful' ,
2025-09-12 18:09:09 +08:00
2025-09-11 17:10:50 +08:00
// Add agent dialog text
'addAgentDialog.title' : 'Add Agent' ,
'addAgentDialog.agentName' : 'Agent Name' ,
'addAgentDialog.placeholder' : 'Please enter agent name..' ,
'addAgentDialog.confirm' : 'Confirm' ,
'addAgentDialog.cancel' : 'Cancel' ,
'addAgentDialog.nameRequired' : 'Please enter agent name' ,
'addAgentDialog.addSuccess' : 'Add successful' ,
2025-09-12 18:09:09 +08:00
2025-09-11 17:10:50 +08:00
// Role configuration page text
'roleConfig.title' : 'Role Configuration' ,
2026-02-28 17:51:46 +08:00
'roleConfig.addTag' : 'Add New Tag' ,
2025-09-11 17:10:50 +08:00
'roleConfig.restartNotice' : 'After saving the configuration, you need to restart the device for the new configuration to take effect.' ,
'roleConfig.saveConfig' : 'Save Configuration' ,
2026-07-07 17:49:34 +08:00
'roleConfig.snapshotHistory' : 'History' ,
2025-09-11 17:10:50 +08:00
'roleConfig.reset' : 'Reset' ,
2025-09-12 18:09:09 +08:00
'roleConfig.agentName' : 'Nickname' ,
'roleConfig.roleTemplate' : 'Template' ,
'roleConfig.roleIntroduction' : 'Introduction' ,
2025-09-11 17:10:50 +08:00
'roleConfig.languageCode' : 'Language Code' ,
'roleConfig.interactionLanguage' : 'Interaction Language' ,
2025-09-12 18:09:09 +08:00
'roleConfig.vad' : 'Voice Detect' ,
'roleConfig.asr' : 'Speech Recognition' ,
2026-04-02 09:45:33 +08:00
'roleConfig.llm' : 'Main Language Model' ,
'roleConfig.slm' : 'Small Language Model' ,
2025-09-12 18:09:09 +08:00
'roleConfig.vllm' : 'Vision Model' ,
'roleConfig.tts' : 'Text-to-Speech' ,
2025-09-13 00:47:48 +08:00
'roleConfig.memoryHis' : 'Memory' ,
'roleConfig.memory' : 'Memory Model' ,
2025-09-12 18:09:09 +08:00
'roleConfig.intent' : 'Intent Recognition' ,
2026-02-09 15:28:31 +08:00
'roleConfig.language' : 'Select Language' ,
2026-03-03 11:25:37 +08:00
'roleConfig.selectLanguage' : 'Please select language' ,
2025-09-11 17:10:50 +08:00
'roleConfig.voiceType' : 'Voice Type' ,
2026-02-27 11:17:08 +08:00
'roleConfig.ttsVolume' : 'Volume' ,
'roleConfig.ttsRate' : 'Speed' ,
'roleConfig.ttsPitch' : 'Pitch' ,
'roleConfig.ttsAdvanced' : 'TTS Parameters' ,
2026-04-23 17:50:57 +08:00
'roleConfig.advancedSettings' : 'Pitch pronunciation replacement word' ,
2026-02-27 11:17:08 +08:00
'roleConfig.volumeHint' : '-100=Min, 0=Standard, 100=Max' ,
'roleConfig.speedHint' : '-100=Slowest, 0=Standard, 100=Fastest' ,
'roleConfig.pitchHint' : '-100=Lowest, 0=Standard, 100=Highest' ,
2026-04-23 17:50:57 +08:00
'roleConfig.replacementWordLabel' : 'Associated replacement words' ,
'roleConfig.replacementWordTip' : 'During speech synthesis, forcefully replace misrecognized words, polyphonic characters, proper nouns, and sensitive words with your specified correct text/pronunciation to improve accuracy, compliance, and experience' ,
'replacementDialog.selectPlaceholder' : 'Please select' ,
2025-09-11 17:10:50 +08:00
'roleConfig.pleaseEnterContent' : 'Please enter content' ,
'roleConfig.pleaseEnterLangCode' : 'Please enter language code, e.g.: en_US' ,
'roleConfig.pleaseEnterLangName' : 'Please enter interaction language, e.g.: English' ,
'roleConfig.pleaseSelect' : 'Please select' ,
'roleConfig.editFunctions' : 'Edit Functions' ,
2025-09-13 00:47:48 +08:00
'roleConfig.reportText' : 'Text Only' ,
'roleConfig.reportTextVoice' : 'Text & Voice' ,
2025-09-11 17:10:50 +08:00
'roleConfig.saveSuccess' : 'Configuration saved successfully' ,
'roleConfig.saveFailed' : 'Configuration save failed' ,
'roleConfig.confirmReset' : 'Are you sure you want to reset the configuration?' ,
'roleConfig.resetSuccess' : 'Configuration has been reset' ,
'roleConfig.fetchTemplatesFailed' : 'Failed to fetch template list' ,
'roleConfig.templateApplied' : 'template has been applied' ,
'roleConfig.applyTemplateFailed' : 'Failed to apply template' ,
'roleConfig.fetchConfigFailed' : 'Failed to fetch configuration' ,
'roleConfig.fetchModelsFailed' : 'Failed to fetch model list' ,
'roleConfig.fetchPluginsFailed' : 'Failed to fetch plugin list' ,
2026-01-07 17:03:56 +08:00
'roleConfig.cannotResumeAudio' : 'Cannot resume audio playback' ,
'roleConfig.selectVoiceFirst' : 'Please select a voice first' ,
'roleConfig.audioLoadTimeout' : 'Audio loading takes too long, please try again later' ,
'roleConfig.cloneAudioPlayFailed' : 'Clone audio playback failed' ,
'roleConfig.cannotPlayCloneAudio' : 'Cannot play clone audio' ,
'roleConfig.getCloneAudioFailed' : 'Failed to get clone audio' ,
'roleConfig.noPreviewAudio' : 'This voice has no preview audio available' ,
'roleConfig.audioPlayFailed' : 'Audio playback failed' ,
'roleConfig.cannotPlayAudio' : 'Cannot play audio' ,
'roleConfig.audioPlayError' : 'Error occurred during audio playback' ,
2025-09-12 18:09:09 +08:00
2026-07-07 17:49:34 +08:00
'agentSnapshot.title' : 'Version History' ,
'agentSnapshot.empty' : 'No versions yet' ,
'agentSnapshot.version' : 'Version' ,
'agentSnapshot.createdAt' : 'Saved At' ,
'agentSnapshot.source' : 'Source' ,
'agentSnapshot.changedFields' : 'Changes' ,
'agentSnapshot.actions' : 'Actions' ,
'agentSnapshot.view' : 'View' ,
'agentSnapshot.restore' : 'Restore' ,
'agentSnapshot.detailTitle' : 'Change Details' ,
'agentSnapshot.restorePreviewTitle' : 'Restore Preview' ,
'agentSnapshot.confirmRestore' : 'Confirm Restore' ,
'agentSnapshot.before' : 'Before' ,
'agentSnapshot.after' : 'After' ,
'agentSnapshot.emptyValue' : 'None' ,
'agentSnapshot.noChangedContent' : 'No changes to display' ,
'agentSnapshot.restoreConfirm' : 'Restore to version #{version}? The current configuration will be saved as a new version first.' ,
'agentSnapshot.restoreSuccess' : 'Version restored' ,
'agentSnapshot.restoreFailed' : 'Failed to restore version' ,
'agentSnapshot.fetchFailed' : 'Failed to fetch versions' ,
'agentSnapshot.detailFailed' : 'Failed to fetch snapshot details' ,
'agentSnapshot.currentVersion' : 'Current Version' ,
'agentSnapshot.source.config' : 'Config Save' ,
'agentSnapshot.source.current' : 'Current Config' ,
'agentSnapshot.source.restore' : 'Before Restore' ,
'agentSnapshot.field.restore' : 'Restore' ,
'agentSnapshot.field.agentCode' : 'Agent Code' ,
'agentSnapshot.field.agentName' : 'Nickname' ,
'agentSnapshot.field.asrModelId' : 'Speech Recognition' ,
'agentSnapshot.field.vadModelId' : 'Voice Detect' ,
'agentSnapshot.field.llmModelId' : 'Main Language Model' ,
'agentSnapshot.field.slmModelId' : 'Small Language Model' ,
'agentSnapshot.field.vllmModelId' : 'Vision Model' ,
'agentSnapshot.field.ttsModelId' : 'Text-to-Speech' ,
'agentSnapshot.field.ttsVoiceId' : 'Voice' ,
'agentSnapshot.field.ttsLanguage' : 'Language' ,
'agentSnapshot.field.ttsVolume' : 'Volume' ,
'agentSnapshot.field.ttsRate' : 'Speed' ,
'agentSnapshot.field.ttsPitch' : 'Pitch' ,
'agentSnapshot.field.memModelId' : 'Memory Model' ,
'agentSnapshot.field.intentModelId' : 'Intent Recognition' ,
'agentSnapshot.field.chatHistoryConf' : 'Chat History' ,
'agentSnapshot.field.systemPrompt' : 'Introduction' ,
'agentSnapshot.field.summaryMemory' : 'Memory' ,
'agentSnapshot.field.langCode' : 'Language Code' ,
'agentSnapshot.field.language' : 'Interaction Language' ,
'agentSnapshot.field.sort' : 'Sort' ,
'agentSnapshot.field.functions' : 'Functions' ,
'agentSnapshot.field.contextProviders' : 'Context Providers' ,
'agentSnapshot.field.correctWordFileIds' : 'Replacement Words' ,
'agentSnapshot.field.tagNames' : 'Tags' ,
'agentSnapshot.field.tagIds' : 'Tag IDs' ,
2026-04-02 09:45:33 +08:00
// Form field Tooltip descriptions
'roleConfig.tooltip.agentName' : 'Set the name of your AI agent for identification and recognition' ,
'roleConfig.tooltip.roleTemplate' : 'Choose from preset role templates to quickly configure your agent\'s basic settings' ,
'roleConfig.tooltip.contextProvider' : 'When XiaoZhi is awakened, fetch external system data and dynamically inject it into the LLM system prompt' ,
'roleConfig.tooltip.roleIntroduction' : 'Define the AI agent\'s role positioning, personality traits, behavioral norms, and professional knowledge background' ,
'roleConfig.tooltip.memoryHis' : 'Summarize chat record content' ,
'roleConfig.tooltip.languageCode' : 'Set language code such as zh-CN, en-US, etc., used for specific feature recognition' ,
'roleConfig.tooltip.interactionLanguage' : 'Set the interaction language, specifying the primary language the AI agent uses for communication' ,
'roleConfig.tooltip.vad' : 'Voice Activity Detection: Detects when the user starts or stops speaking, used to determine conversation start and end, enabling interrupt functionality' ,
'roleConfig.tooltip.asr' : 'Automatic Speech Recognition: Converts user speech to text, the first step in human-computer dialogue, supporting multilingual recognition' ,
'roleConfig.tooltip.llm' : 'Main Language Model (Large Language Model): The "brain" of the AI agent, responsible for understanding user intent, generating responses, and executing various tasks' ,
'roleConfig.tooltip.slm' : 'Small Parameter Model (Small Language Model): Used for AI agent wake-up, generating memory summary titles' ,
'roleConfig.tooltip.vllm' : 'Visual Large Language Model: Processes image and video understanding, enabling the AI agent to analyze and describe camera-captured content' ,
'roleConfig.tooltip.intent' : 'Intent Detection: Analyzes user speech or text to determine the user\'s true intent, such as queries, chat, device control, etc.' ,
'roleConfig.tooltip.memory' : 'Memory Model: Manages conversation history storage and summarization, determining whether the AI can remember previous conversations for long-term memory' ,
'roleConfig.tooltip.tts' : 'Text-to-Speech: Converts text to natural speech, determining the AI\'s voice, speed, and tone' ,
'roleConfig.tooltip.language' : 'Select the language of the voice; the system will filter available voices that support that language' ,
'roleConfig.tooltip.voiceType' : 'Choose the voice for the AI agent; different voices have different characteristics and styles. Some voices support preview functionality, click the play button to preview' ,
2025-09-11 17:10:50 +08:00
// Function management dialog text
'functionDialog.title' : 'Function Management' ,
'functionDialog.unselectedFunctions' : 'Unselected Functions' ,
'functionDialog.selectedFunctions' : 'Selected Functions' ,
'functionDialog.selectAll' : 'Select All' ,
'functionDialog.noMorePlugins' : 'No more plugins available' ,
'functionDialog.pleaseSelectPlugin' : 'Please select plugin functions' ,
'functionDialog.paramConfig' : 'Parameter Configuration' ,
'functionDialog.noNeedToConfig' : ' does not require parameter configuration' ,
'functionDialog.pleaseSelectFunctionForParam' : 'Please select a configured function for parameter settings' ,
'functionDialog.mcpAccessPoint' : 'MCP Access Point' ,
'functionDialog.mcpAddressDesc' : 'Below are the MCP access point addresses for the agent.' ,
'functionDialog.howToDeployMcp' : 'How to deploy MCP access point' ,
'functionDialog.howToIntegrateMcp' : 'How to integrate MCP functions' ,
'functionDialog.copy' : 'Copy' ,
'functionDialog.accessPointStatus' : 'Access Point Status' ,
'functionDialog.connected' : 'Connected' ,
'functionDialog.loading' : 'Loading...' ,
'functionDialog.disconnected' : 'Disconnected' ,
'functionDialog.refresh' : 'Refresh' ,
'functionDialog.noAvailableTools' : 'No available tools' ,
'functionDialog.cancel' : 'Cancel' ,
'functionDialog.saveConfig' : 'Save Configuration' ,
'functionDialog.copiedToClipboard' : 'Copied to clipboard' ,
'functionDialog.copyFailed' : 'Copy failed, please copy manually' ,
'functionDialog.jsonFormatError' : ' field format error: invalid JSON format' ,
'functionDialog.defaultValue' : 'Default Value' ,
2025-09-12 18:09:09 +08:00
2025-09-11 17:10:50 +08:00
// Model Configuration Page Text
'modelConfig.searchPlaceholder' : 'Please enter model name to search' ,
'modelConfig.search' : 'Search' ,
'modelConfig.vad' : 'Voice Activity Detection' ,
'modelConfig.asr' : 'Speech Recognition' ,
'modelConfig.llm' : 'Large Language Model' ,
'modelConfig.vllm' : 'Visual Language Model' ,
'modelConfig.intent' : 'Intent Recognition' ,
'modelConfig.tts' : 'Text-to-Speech' ,
'modelConfig.memory' : 'Memory' ,
2025-11-04 16:21:01 +08:00
'modelConfig.rag' : 'RAG' ,
2025-09-11 17:10:50 +08:00
'modelConfig.modelId' : 'Model ID' ,
'modelConfig.modelName' : 'Model Name' ,
2025-12-17 11:58:40 +08:00
'modelConfig.provider' : 'Interface Type' ,
2025-09-11 17:10:50 +08:00
'modelConfig.unknown' : 'Unknown' ,
'modelConfig.isEnabled' : 'Enabled' ,
'modelConfig.isDefault' : 'Default' ,
2026-02-05 16:46:10 +08:00
'modelConfig.defaultModelCannotDisable' : 'Default model configuration cannot be disabled' ,
2025-09-11 17:10:50 +08:00
'modelConfig.action' : 'Action' ,
'modelConfig.voiceManagement' : 'Voice Management' ,
'modelConfig.edit' : 'Edit' ,
'modelConfig.duplicate' : 'Duplicate' ,
'modelConfig.delete' : 'Delete' ,
'modelConfig.deselectAll' : 'Deselect All' ,
'modelConfig.select' : 'Select' ,
'modelConfig.selectAll' : 'Select All' ,
'modelConfig.add' : 'Add New' ,
'modelConfig.selectModelsFirst' : 'Please select models to delete first' ,
'modelConfig.confirmBatchDelete' : 'Are you sure you want to delete the selected models?' ,
'modelConfig.confirmDelete' : 'Are you sure you want to delete this model?' ,
'modelConfig.batchDeleteSuccess' : 'Batch deletion successful' ,
'modelConfig.partialDeleteFailed' : 'Partial deletion failed' ,
'modelConfig.deleteSuccess' : 'Deletion successful' ,
'modelConfig.deleteFailed' : 'Deletion failed' ,
2025-11-04 16:21:01 +08:00
'modelConfig.deleteCancelled' : 'Deletion cancelled' ,
2025-09-11 17:10:50 +08:00
'modelConfig.duplicateSuccess' : 'Duplication successful' ,
'modelConfig.duplicateFailed' : 'Duplication failed' ,
'modelConfig.saveSuccess' : 'Save successful' ,
'modelConfig.saveFailed' : 'Save failed' ,
'modelConfig.addSuccess' : 'Addition successful' ,
'modelConfig.addFailed' : 'Addition failed' ,
'modelConfig.fetchModelsFailed' : 'Failed to fetch model list' ,
'modelConfig.enableSuccess' : 'Enable successful' ,
'modelConfig.disableSuccess' : 'Disable successful' ,
'modelConfig.operationFailed' : 'Operation failed' ,
2025-12-13 15:34:11 +08:00
'modelConfig.setDefaultSuccess' : 'Set default model successful, please restart the xiaozhi-server module manually in time' ,
2025-09-11 17:10:50 +08:00
'modelConfig.itemsPerPage' : '{items} items/page' ,
'modelConfig.firstPage' : 'First Page' ,
'modelConfig.prevPage' : 'Previous Page' ,
'modelConfig.nextPage' : 'Next Page' ,
'modelConfig.totalRecords' : 'Total {total} records' ,
'modelConfig.loading' : 'Loading...' ,
2025-09-12 18:09:09 +08:00
2025-09-11 17:10:50 +08:00
// Model Configuration Dialog Text
'modelConfigDialog.addModel' : 'Add Model' ,
'modelConfigDialog.editModel' : 'Edit Model' ,
2025-09-15 11:32:57 +08:00
'modelConfigDialog.duplicateModel' : 'Duplicate Model' ,
'modelConfigDialog.copySuffix' : '_copy' ,
2025-09-11 17:10:50 +08:00
'modelConfigDialog.modelInfo' : 'Model Information' ,
'modelConfigDialog.enable' : 'Enable' ,
'modelConfigDialog.setDefault' : 'Set as Default' ,
2025-11-01 01:22:21 +08:00
'modelConfigDialog.modelId' : 'Model ID' ,
'modelConfigDialog.enterModelId' : 'If not filled in, it will be generated automatically' ,
2025-11-22 11:59:34 +08:00
'modelConfigDialog.invalidModelId' : 'Model ID cannot be pure text or spaces, please use letters, numbers, underscores, or hyphens' ,
2025-09-11 17:10:50 +08:00
'modelConfigDialog.modelName' : 'Model Name' ,
'modelConfigDialog.enterModelName' : 'Please enter model name' ,
'modelConfigDialog.modelCode' : 'Model Code' ,
'modelConfigDialog.enterModelCode' : 'Please enter model code' ,
'modelConfigDialog.supplier' : 'Supplier' ,
'modelConfigDialog.selectSupplier' : 'Please select' ,
'modelConfigDialog.sortOrder' : 'Sort Order' ,
'modelConfigDialog.enterSortOrder' : 'Please enter sort order' ,
'modelConfigDialog.docLink' : 'Documentation Link' ,
'modelConfigDialog.enterDocLink' : 'Please enter documentation link' ,
'modelConfigDialog.remark' : 'Remark' ,
'modelConfigDialog.enterRemark' : 'Please enter model remark' ,
'modelConfigDialog.callInfo' : 'Call Information' ,
'modelConfigDialog.enterJsonExample' : 'Please enter JSON format variables (example:{"key":"value"})' ,
'modelConfigDialog.save' : 'Save' ,
2025-09-12 18:09:09 +08:00
2025-09-11 17:10:50 +08:00
// TTS Model Configuration Text
'ttsModel.select' : 'Select' ,
'ttsModel.voiceCode' : 'Voice Code' ,
'ttsModel.voiceName' : 'Voice Name' ,
'ttsModel.languageType' : 'Language Type' ,
'ttsModel.preview' : 'Preview' ,
'ttsModel.enterMp3Url' : 'Please enter MP3 URL' ,
'ttsModel.remark' : 'Remark' ,
'ttsModel.enterRemark' : 'This is a remark' ,
'ttsModel.referenceAudioPath' : 'Reference Audio Path' ,
'ttsModel.enterReferenceAudio' : 'This is the reference audio path' ,
'ttsModel.referenceText' : 'Reference Audio Text' ,
'ttsModel.enterReferenceText' : 'This is the text for reference audio' ,
'ttsModel.action' : 'Action' ,
2025-09-15 11:32:57 +08:00
'ttsModel.operation' : 'Operation' ,
'ttsModel.operationFailed' : 'Operation failed' ,
'ttsModel.operationClosed' : 'Operation closed' ,
2025-09-11 17:10:50 +08:00
'ttsModel.edit' : 'Edit' ,
'ttsModel.delete' : 'Delete' ,
2025-10-19 11:53:15 +08:00
'ttsModel.deleteVoiceSuccess' : 'Successfully deleted {count} voices' ,
'ttsModel.deleteFailed' : 'Failed to delete voices' ,
2025-09-11 17:10:50 +08:00
'ttsModel.save' : 'Save' ,
'ttsModel.deselectAll' : 'Deselect All' ,
'ttsModel.selectAll' : 'Select All' ,
'ttsModel.add' : 'Add' ,
'ttsModel.fetchVoicesFailed' : 'Failed to fetch voice list' ,
'ttsModel.loadVoicesFailed' : 'Failed to load voice data' ,
'ttsModel.unnamedVoice' : 'Unnamed Voice' ,
2025-09-15 11:32:57 +08:00
'ttsModel.finishEditingFirst' : 'Please finish current editing first' ,
'ttsModel.selectVoiceToDelete' : 'Please select voices to delete' ,
2025-10-14 11:04:49 +08:00
'ttsModel.warning' : 'Warning' ,
'ttsModel.confirmDeleteVoice' : 'Are you sure to delete {count} voices?' ,
2026-01-07 16:52:36 +08:00
'ttsModel.voiceCodeNameLanguageRequired' : 'Voice code, voice name and language type cannot be empty' ,
'ttsModel.deleteCancelled' : 'Deletion cancelled' ,
'ttsModel.updateSuccess' : 'Update successful' ,
'ttsModel.saveSuccess' : 'Save successful' ,
2025-09-12 18:09:09 +08:00
2025-09-11 17:10:50 +08:00
// OTA Management Page Text
'otaManagement.firmwareManagement' : 'Firmware Management' ,
'otaManagement.searchPlaceholder' : 'Please enter firmware name to search' ,
'otaManagement.search' : 'Search' ,
'otaManagement.firmwareName' : 'Firmware Name' ,
'otaManagement.firmwareType' : 'Firmware Type' ,
'otaManagement.version' : 'Version' ,
'otaManagement.fileSize' : 'File Size' ,
'otaManagement.remark' : 'Remark' ,
'otaManagement.createTime' : 'Create Time' ,
'otaManagement.updateTime' : 'Update Time' ,
'otaManagement.action' : 'Action' ,
'otaManagement.download' : 'Download' ,
'otaManagement.edit' : 'Edit' ,
'otaManagement.delete' : 'Delete' ,
'otaManagement.selectAll' : 'Select All' ,
'otaManagement.deselectAll' : 'Deselect All' ,
'otaManagement.addNew' : 'Add New' ,
'otaManagement.addFirmware' : 'Add Firmware' ,
'otaManagement.editFirmware' : 'Edit Firmware' ,
'otaManagement.itemsPerPage' : '{items} items/page' ,
'otaManagement.firstPage' : 'First Page' ,
'otaManagement.prevPage' : 'Previous Page' ,
'otaManagement.nextPage' : 'Next Page' ,
'otaManagement.totalRecords' : 'Total {total} records' ,
'otaManagement.selectFirmwareFirst' : 'Please select firmware to delete first' ,
'otaManagement.confirmBatchDelete' : 'Are you sure you want to delete the selected {paramCount} firmware?' ,
'otaManagement.operationCancelled' : 'Deletion operation has been cancelled' ,
'otaManagement.operationClosed' : 'Operation has been closed' ,
'otaManagement.batchDeleteSuccess' : 'Successfully deleted {paramCount} firmware' ,
'otaManagement.deleteFailed' : 'Deletion failed, please try again' ,
'otaManagement.incompleteFirmwareInfo' : 'Incomplete firmware information' ,
'otaManagement.getDownloadUrlFailed' : 'Failed to get download link' ,
'otaManagement.getFirmwareTypesFailed' : 'Failed to get firmware types' ,
'otaManagement.updateSuccess' : 'Update successful' ,
'otaManagement.updateFailed' : 'Update failed' ,
'otaManagement.addSuccess' : 'Addition successful' ,
'otaManagement.addFailed' : 'Addition failed' ,
'otaManagement.fetchFirmwareListFailed' : 'Failed to fetch firmware list' ,
2025-09-12 18:09:09 +08:00
2025-09-11 17:10:50 +08:00
// Provider Management page model type translations
'providerManagement.all' : 'All' ,
'providerManagement.modelType.ASR' : 'Speech Recognition' ,
'providerManagement.modelType.TTS' : 'Text-to-Speech' ,
'providerManagement.modelType.LLM' : 'Large Language Model' ,
'providerManagement.modelType.VLLM' : 'Vision Large Language Model' ,
'providerManagement.modelType.Intent' : 'Intent Recognition' ,
'providerManagement.modelType.Memory' : 'Memory Module' ,
'providerManagement.modelType.VAD' : 'Voice Activity Detection' ,
'providerManagement.modelType.Plugin' : 'Plugin Tool' ,
2025-11-04 16:21:01 +08:00
'providerManagement.modelType.RAG' : 'RAG' ,
2025-09-12 18:09:09 +08:00
2025-09-11 17:10:50 +08:00
// Provider Dialog translations
'providerDialog.category' : 'Category' ,
'providerDialog.selectCategory' : 'Please select category' ,
'providerDialog.code' : 'Code' ,
'providerDialog.inputCode' : 'Please input provider code' ,
'providerDialog.name' : 'Name' ,
'providerDialog.inputName' : 'Please input provider name' ,
'providerDialog.sort' : 'Sort' ,
'providerDialog.fieldConfig' : 'Field Configuration' ,
'providerDialog.add' : 'Add' ,
'providerDialog.deselectAll' : 'Deselect All' ,
'providerDialog.selectAll' : 'Select All' ,
'providerDialog.batchDelete' : 'Batch Delete' ,
'providerDialog.fieldKey' : 'Field Key' ,
'providerDialog.fieldLabel' : 'Field Label' ,
'providerDialog.fieldType' : 'Field Type' ,
'providerDialog.type' : 'Type' ,
'providerDialog.stringType' : 'String' ,
'providerDialog.numberType' : 'Number' ,
'providerDialog.booleanType' : 'Boolean' ,
'providerDialog.dictType' : 'Dictionary' ,
'providerDialog.arrayType' : 'Semicolon-separated List' ,
2025-11-04 16:21:01 +08:00
'providerDialog.ragType' : 'RAG' ,
2025-09-11 17:10:50 +08:00
'providerDialog.defaultValue' : 'Default Value' ,
'providerDialog.inputDefaultValue' : 'Please input default value' ,
'providerDialog.operation' : 'Operation' ,
'providerDialog.edit' : 'Edit' ,
'providerDialog.complete' : 'Complete' ,
'providerDialog.delete' : 'Delete' ,
'providerDialog.save' : 'Save' ,
'providerDialog.requiredCategory' : 'Please select category' ,
'providerDialog.requiredCode' : 'Please input provider code' ,
'providerDialog.requiredName' : 'Please input provider name' ,
'providerDialog.completeFieldEdit' : 'Please complete current field editing first' ,
'providerDialog.confirmDeleteField' : 'Are you sure to delete this field?' ,
'providerDialog.selectFieldsToDelete' : 'Please select fields to delete first' ,
'providerDialog.confirmBatchDeleteFields' : 'Are you sure to delete {count} selected fields?' ,
'providerDialog.batchDeleteFieldsSuccess' : 'Successfully deleted {count} fields' ,
2025-09-18 16:43:52 +08:00
2025-09-19 18:33:54 +08:00
// agentTemplateManagement
'agentTemplateManagement.title' : 'Default Role Management' ,
'agentTemplateManagement.templateName' : 'Template Name' ,
'agentTemplateManagement.action' : 'Action' ,
'agentTemplateManagement.createTemplate' : 'Create Template' ,
'agentTemplateManagement.editTemplate' : 'Edit Template' ,
'agentTemplateManagement.deleteTemplate' : 'Delete Template' ,
'agentTemplateManagement.deleteSuccess' : 'Template deleted successfully' ,
'agentTemplateManagement.batchDelete' : 'Batch Delete' ,
'agentTemplateManagement.batchDeleteSuccess' : 'Batch deletion successful' ,
'agentTemplateManagement.selectTemplate' : 'Please select a template' ,
'agentTemplateManagement.select' : 'Select' ,
'agentTemplateManagement.searchPlaceholder' : 'Please enter template name to search' ,
'agentTemplateManagement.search' : 'Search' ,
'agentTemplateManagement.serialNumber' : 'Serial Number' ,
'agentTemplateManagement.selectAll' : 'Select All' ,
'agentTemplateManagement.deselectAll' : 'Deselect All' ,
'agentTemplateManagement.loading' : 'Loading...' ,
'agentTemplateManagement.confirmSingleDelete' : 'Are you sure you want to delete this template?' ,
'agentTemplateManagement.confirmBatchDelete' : 'Are you sure you want to delete the selected {count} templates?' ,
'agentTemplateManagement.deleteFailed' : 'Template deletion failed' ,
'agentTemplateManagement.batchDeleteFailed' : 'Template batch deletion failed' ,
2025-09-20 17:30:00 +08:00
'agentTemplateManagement.deleteBackendError' : 'Deletion failed, please check if the backend service is normal' ,
2025-09-26 23:39:27 +08:00
2025-09-19 18:33:54 +08:00
// templateQuickConfig
'templateQuickConfig.title' : 'Module Quick Configuration' ,
'templateQuickConfig.agentSettings.agentName' : 'Nickname' ,
'templateQuickConfig.agentSettings.agentNamePlaceholder' : 'Please enter nickname' ,
'templateQuickConfig.agentSettings.systemPrompt' : 'Introduction' ,
2025-09-21 16:41:53 +08:00
'templateQuickConfig.agentSettings.systemPromptPlaceholder' : 'Please enter ntroduction' ,
2025-09-19 18:33:54 +08:00
'templateQuickConfig.saveConfig' : 'Save Configuration' ,
'templateQuickConfig.resetConfig' : 'Reset Configuration' ,
2025-11-16 17:18:49 +08:00
'templateQuickConfig.saveSuccess' : 'Configuration saved successfully' ,
'templateQuickConfig.resetSuccess' : 'Configuration reset successfully' ,
2025-09-19 18:33:54 +08:00
'templateQuickConfig.confirmReset' : 'Are you sure you want to reset the configuration?' ,
2025-09-21 16:41:53 +08:00
'templateQuickConfig.saveFailed' : 'Configuration save failed' ,
2025-09-20 17:30:00 +08:00
'templateQuickConfig.confirm' : 'Confirm' ,
'templateQuickConfig.cancel' : 'Cancel' ,
'templateQuickConfig.templateNotFound' : 'Template not found' ,
2025-11-16 17:18:49 +08:00
'templateQuickConfig.newTemplate' : 'New Template' ,
2026-06-16 16:58:44 +08:00
'templateQuickConfig.editTemplate' : 'Edit Template' ,
'templateQuickConfig.addTemplate' : 'Add Template' ,
2025-09-20 23:43:58 +08:00
'warning' : 'Warning' ,
'info' : 'Info' ,
2025-09-23 20:22:12 +08:00
'common.networkError' : 'Network request failed' ,
2025-10-19 01:45:08 +08:00
2025-10-10 14:35:35 +08:00
// SM2 Encryption
2025-09-23 20:22:12 +08:00
'sm2.publicKeyNotConfigured' : 'SM2 public key not configured, please contact administrator' ,
'sm2.encryptionFailed' : 'Password encryption failed' ,
'sm2.keyGenerationFailed' : 'Key pair generation failed' ,
'sm2.invalidPublicKey' : 'Invalid public key format' ,
'sm2.encryptionError' : 'Error occurred during encryption' ,
'sm2.publicKeyRetry' : 'Retrying to get public key...' ,
2025-10-07 23:54:42 +08:00
'sm2.publicKeyRetryFailed' : 'Public key retrieval retry failed' ,
2025-10-10 14:35:35 +08:00
// Voice Clone and Resource Management
2025-10-07 23:54:42 +08:00
'voiceClone.title' : 'Voice Clone' ,
'voiceResource.title' : 'Voice Resource' ,
'voiceClone.platformName' : 'Platform Name' ,
'voiceClone.voiceId' : 'Voice ID' ,
'voiceClone.userId' : 'Account Owner' ,
'voiceClone.name' : 'Voice Name' ,
'voiceClone.clone' : 'Clone Voice' ,
'voiceClone.action' : 'Action' ,
'voiceClone.modelId' : 'Model ID' ,
'voiceClone.trainStatus' : 'Training Status' ,
'voiceClone.trainError' : 'Training Error' ,
'voiceClone.createdAt' : 'Creation Time' ,
'voiceClone.search' : 'Search' ,
'voiceClone.searchPlaceholder' : 'Please enter voice name or voice ID' ,
'voiceClone.addNew' : 'Add' ,
'voiceClone.delete' : 'Delete' ,
'voiceClone.selectAll' : 'Select All' ,
'voiceClone.deselectAll' : 'Deselect All' ,
'voiceClone.addVoiceClone' : 'Add Voice Resource' ,
'voiceClone.confirmDelete' : 'Are you sure you want to delete the selected {count} voice resources?' ,
'voiceClone.deleteSuccess' : 'Successfully deleted {count} voice resources' ,
'voiceClone.deleteFailed' : 'Deletion failed' ,
'voiceClone.addSuccess' : 'Add successful' ,
'voiceClone.addFailed' : 'Add failed' ,
'voiceClone.updateSuccess' : 'Update successful' ,
'voiceClone.updateFailed' : 'Update failed' ,
'voiceClone.selectFirst' : 'Please select voice resources to delete first' ,
'voiceClone.operationCancelled' : 'Cancel' ,
'voiceClone.operationClosed' : 'Popup closed' ,
'voiceClone.cloneSuccess' : 'Clone successful' ,
'voiceClone.cloneFailed' : 'Clone failed' ,
2026-06-26 15:32:48 +08:00
'voiceClone.cloneErrorTip' : 'Clone failed, please hover over the error tip to view error details' ,
'voiceClone.apiError' : 'API call error' ,
2025-10-07 23:54:42 +08:00
'voiceClone.confirmClone' : 'Are you sure you want to clone this voice?' ,
'voiceClone.onlySuccessCanClone' : 'Only successfully trained voices can be cloned' ,
'common.insufficient' : 'Insufficient' ,
'voiceClone.platformNameRequired' : 'Please select platform name' ,
'voiceClone.voiceIdRequired' : 'Please select voice ID' ,
'voiceClone.userIdRequired' : 'Please select account owner' ,
'voiceClone.platformNamePlaceholder' : 'Please select platform name' ,
'voiceClone.voiceIdPlaceholder' : 'Please enter voice ID and press Enter' ,
'voiceClone.userIdPlaceholder' : 'Please enter keyword to select account owner' ,
2026-03-11 10:30:29 +08:00
'voiceClone.languages' : 'Languages' ,
'voiceClone.languagesPlaceholder' : 'Please enter languages, e.g.: Chinese, English' ,
'voiceClone.languagesRequired' : 'Please enter languages' ,
2025-10-07 23:54:42 +08:00
'voiceClone.waitingUpload' : 'Waiting for upload' ,
'voiceClone.waitingTraining' : 'Waiting for clone' ,
'voiceClone.training' : 'Training' ,
'voiceClone.trainSuccess' : 'Training successful' ,
'voiceClone.trainFailed' : 'Training failed' ,
2026-06-26 15:32:48 +08:00
'voiceClone.trainFailedWithError' : 'Training failed: {error}' ,
2026-01-20 15:35:41 +08:00
'voiceClone.itemsPerPage' : '{items} items/page' ,
2025-10-07 23:54:42 +08:00
'voiceClone.firstPage' : 'First Page' ,
'voiceClone.prevPage' : 'Previous Page' ,
'voiceClone.nextPage' : 'Next Page' ,
'voiceClone.totalRecords' : '{total} records in total' ,
'voiceClone.noVoiceCloneAssigned' : 'Your account has no voice resources assigned' ,
'voiceClone.contactAdmin' : 'Please contact administrator for voice resource assignment' ,
'voiceClone.dialogTitle' : 'Voice Clone' ,
'voiceClone.stepUpload' : 'Prepare Audio' ,
'voiceClone.stepEdit' : 'Audio Edit' ,
'voiceClone.dragOrClick' : 'Drag audio file here, or click to upload' ,
'voiceClone.uploadTip' : 'Support all mainstream audio formats, selected duration must be between 8-60 seconds' ,
'voiceClone.editTip1' : 'Please confirm if the uploaded audio is satisfactory' ,
'voiceClone.editTip2' : 'You can listen and trim the audio, if not satisfied you can go back to re-record or upload' ,
'voiceClone.selectedDuration' : 'Selected valid segment: {duration} seconds' ,
'voiceClone.trim' : 'Trim selected segment' ,
'voiceClone.reset' : 'Reset' ,
'voiceClone.play' : 'Play' ,
'voiceClone.pause' : 'Pause' ,
2025-10-19 14:34:05 +08:00
'voiceClone.stop' : 'Stop' ,
2025-10-07 23:54:42 +08:00
'voiceClone.cancel' : 'Cancel' ,
2025-10-14 10:21:50 +08:00
'voiceClone.warning' : 'Warning' ,
'voiceClone.ok' : 'OK' ,
2025-10-07 23:54:42 +08:00
'voiceClone.nextStep' : 'Next' ,
'voiceClone.prevStep' : 'Previous' ,
'voiceClone.upload' : 'Upload Audio' ,
'voiceClone.pleaseSelectAudio' : 'Please select an audio file first' ,
'voiceClone.durationError' : 'Audio duration must be between 8-60 seconds' ,
'voiceClone.loadAudioFailed' : 'Failed to load audio' ,
'voiceClone.trimSuccess' : 'Trim successful' ,
'voiceClone.resetSuccess' : 'Reset successful' ,
'voiceClone.uploadSuccess' : 'Upload successful' ,
'voiceClone.uploadFailed' : 'Upload failed' ,
'voiceClone.updateNameSuccess' : 'Name updated successfully' ,
'voiceClone.updateNameFailed' : 'Failed to update name' ,
'voiceClone.playFailed' : 'Play failed' ,
2025-10-19 01:45:08 +08:00
'voiceClone.Details' : 'Error Details' ,
2025-11-04 16:21:01 +08:00
// Knowledge Base Management page text
'knowledgeBaseManagement.title' : 'Knowledge Base' ,
'knowledgeBaseManagement.searchPlaceholder' : 'Please enter knowledge base name to search' ,
'knowledgeBaseManagement.search' : 'Search' ,
'knowledgeBaseManagement.name' : 'Knowledge Base Name' ,
'knowledgeBaseManagement.description' : 'Knowledge Base Description' ,
'knowledgeBaseManagement.documentCount' : 'Document Count' ,
'knowledgeBaseManagement.status' : 'Enabled' ,
'knowledgeBaseManagement.createdAt' : 'Created At' ,
'knowledgeBaseManagement.operation' : 'Operation' ,
'knowledgeBaseManagement.add' : 'Add' ,
'knowledgeBaseManagement.delete' : 'Delete' ,
'knowledgeBaseManagement.edit' : 'Edit' ,
'knowledgeBaseManagement.itemsPerPage' : 'items/page' ,
'knowledgeBaseManagement.firstPage' : 'First Page' ,
'knowledgeBaseManagement.prevPage' : 'Previous Page' ,
'knowledgeBaseManagement.nextPage' : 'Next Page' ,
'knowledgeBaseManagement.totalRecords' : 'Total {total} records' ,
'knowledgeBaseManagement.addKnowledgeBase' : 'Add Knowledge Base' ,
'knowledgeBaseManagement.editKnowledgeBase' : 'Edit Knowledge Base' ,
'knowledgeBaseManagement.getKnowledgeBaseListFailed' : 'Failed to get knowledge base list' ,
'knowledgeBaseManagement.selectKnowledgeBaseFirst' : 'Please select knowledge bases to delete first' ,
'knowledgeBaseManagement.confirmBatchDelete' : 'Are you sure you want to delete the selected {count} knowledge bases?' ,
'knowledgeBaseManagement.batchDeleteSuccess' : 'Successfully deleted {count} knowledge bases' ,
'knowledgeBaseManagement.deleteFailed' : 'Delete failed, please try again' ,
'knowledgeBaseManagement.operationCancelled' : 'Delete operation has been cancelled' ,
'knowledgeBaseManagement.updateSuccess' : 'Update successful' ,
'knowledgeBaseManagement.addSuccess' : 'Add successful' ,
'knowledgeBaseManagement.updateFailed' : 'Update failed' ,
'knowledgeBaseManagement.addFailed' : 'Add failed' ,
'knowledgeBaseManagement.selectAll' : 'Select All' ,
'knowledgeBaseManagement.cancelSelectAll' : 'Deselect All' ,
// Knowledge Base Dialog text
'knowledgeBaseDialog.title' : 'Knowledge Base' ,
'knowledgeBaseDialog.name' : 'Knowledge Base Name' ,
2025-11-09 00:25:12 +08:00
'knowledgeBaseDialog.namePlaceholder' : 'Please enter knowledge base name accurately to improve the accuracy of knowledge base call' ,
2025-11-04 16:21:01 +08:00
'knowledgeBaseDialog.description' : 'Knowledge Base Description' ,
2025-11-09 00:25:12 +08:00
'knowledgeBaseDialog.descriptionPlaceholder' : 'Please enter knowledge base description accurately to help the model better understand the knowledge base content' ,
2025-11-04 16:21:01 +08:00
'knowledgeBaseDialog.ragModel' : 'RAG Model' ,
'knowledgeBaseDialog.ragModelPlaceholder' : 'Please select RAG model' ,
'knowledgeBaseDialog.ragModelRequired' : 'Please select RAG model' ,
'knowledgeBaseDialog.loadRAGModelsFailed' : 'Failed to load RAG models list' ,
'knowledgeBaseDialog.status' : 'Status' ,
'knowledgeBaseDialog.statusEnabled' : 'Enabled' ,
'knowledgeBaseDialog.statusDisabled' : 'Disabled' ,
'knowledgeBaseDialog.save' : 'Save' ,
'knowledgeBaseDialog.cancel' : 'Cancel' ,
'knowledgeBaseDialog.confirm' : 'Confirm' ,
'knowledgeBaseDialog.requiredName' : 'Please enter knowledge base name' ,
'knowledgeBaseDialog.nameRequired' : 'Please enter knowledge base name' ,
'knowledgeBaseDialog.nameLength' : 'Knowledge base name length should be between 1 and 50 characters' ,
'knowledgeBaseDialog.namePattern' : 'Knowledge base name can only contain Chinese, English, numbers, spaces, underscores and hyphens' ,
'knowledgeBaseDialog.descriptionLength' : 'Knowledge base description cannot exceed 200 characters' ,
'knowledgeBaseDialog.nameLengthLimit' : 'Knowledge base name cannot exceed 50 characters' ,
'knowledgeBaseDialog.descriptionLengthLimit' : 'Knowledge base description cannot exceed 200 characters' ,
// Knowledge Base Management page new view button text
2025-11-12 17:02:53 +08:00
'knowledgeBaseManagement.view' : 'Manage Files' ,
2025-11-04 16:21:01 +08:00
// Knowledge File Upload page text
'knowledgeFileUpload.back' : 'Back' ,
'knowledgeFileUpload.searchPlaceholder' : 'Please enter document name to search' ,
'knowledgeFileUpload.search' : 'Search' ,
'knowledgeFileUpload.addDocument' : 'Add Document' ,
'knowledgeFileUpload.documentName' : 'Document Name' ,
'knowledgeFileUpload.uploadTime' : 'Upload Time' ,
'knowledgeFileUpload.status' : 'Status' ,
'knowledgeFileUpload.operation' : 'Operation' ,
'knowledgeFileUpload.parse' : 'Parse' ,
'knowledgeFileUpload.viewSlices' : 'View Slices' ,
'knowledgeFileUpload.delete' : 'Delete' ,
'knowledgeFileUpload.itemsPerPage' : 'items/page' ,
'knowledgeFileUpload.firstPage' : 'First Page' ,
'knowledgeFileUpload.prevPage' : 'Previous Page' ,
'knowledgeFileUpload.nextPage' : 'Next Page' ,
'knowledgeFileUpload.totalRecords' : 'Total {total} records' ,
'knowledgeFileUpload.uploadDocument' : 'Upload Document' ,
'knowledgeFileUpload.documentNamePlaceholder' : 'Please enter document name' ,
'knowledgeFileUpload.file' : 'File' ,
'knowledgeFileUpload.clickToUpload' : 'Click to upload' ,
2025-11-05 09:13:44 +08:00
'knowledgeFileUpload.uploadTip' : 'Supported file types: PDF, DOC, DOCX, TXT, MD, CSV, XLS, XLSX, PPT, PPTX. Maximum 32 files per upload, each file size up to 10MB' ,
2025-11-04 16:21:01 +08:00
'knowledgeFileUpload.dragOrClick' : 'Drag file here, or click to upload' ,
'knowledgeFileUpload.cancel' : 'Cancel' ,
'knowledgeFileUpload.confirm' : 'Confirm' ,
'knowledgeFileUpload.knowledgeBaseName' : 'Knowledge Base Name' ,
2025-11-06 18:20:01 +08:00
'knowledgeFileUpload.statusNotStarted' : 'Not Started' ,
'knowledgeFileUpload.statusProcessing' : 'Processing' ,
'knowledgeFileUpload.statusCancelled' : 'Cancelled' ,
'knowledgeFileUpload.statusCompleted' : 'Completed' ,
2025-11-12 17:02:53 +08:00
'knowledgeFileUpload.statusFailed' : 'Failed' ,
2025-11-04 16:21:01 +08:00
'knowledgeFileUpload.uploadSuccess' : 'Document upload successful' ,
'knowledgeFileUpload.uploadFailed' : 'Document upload failed' ,
'knowledgeFileUpload.parseSuccess' : 'Document parse successful' ,
'knowledgeFileUpload.parseFailed' : 'Document parse failed' ,
'knowledgeFileUpload.deleteSuccess' : 'Document delete successful' ,
'knowledgeFileUpload.deleteFailed' : 'Document delete failed' ,
'knowledgeFileUpload.confirmDelete' : 'Are you sure you want to delete this document?' ,
'knowledgeFileUpload.confirmParse' : 'Are you sure you want to parse this document?' ,
'knowledgeFileUpload.nameRequired' : 'Please enter document name' ,
'knowledgeFileUpload.fileRequired' : 'Please select a file to upload' ,
2026-06-09 17:22:18 +08:00
'knowledgeFileUpload.fileSizeExceeded' : 'File size cannot exceed 10MB!' ,
2025-11-04 16:21:01 +08:00
'knowledgeFileUpload.getListFailed' : 'Failed to get document list' ,
'knowledgeFileUpload.parseCancelled' : 'Parse cancelled' ,
'knowledgeFileUpload.deleteCancelled' : 'Delete cancelled' ,
'knowledgeFileUpload.selectFilesFirst' : 'Please select files to delete first' ,
'knowledgeFileUpload.selectAll' : 'Select All' ,
'knowledgeFileUpload.deselectAll' : 'Deselect All' ,
'knowledgeFileUpload.batchDelete' : 'Delete' ,
'knowledgeFileUpload.confirmBatchDelete' : 'Are you sure you want to delete the selected {count} files?' ,
'knowledgeFileUpload.batchDeleteSuccess' : 'Successfully deleted {count} files' ,
'knowledgeFileUpload.batchDeleteFailed' : 'Batch delete failed' ,
'knowledgeFileUpload.sliceCount' : 'Slice Count' ,
'knowledgeFileUpload.add' : 'Add' ,
'knowledgeFileUpload.retrievalTest' : 'Retrieval Test' ,
'knowledgeFileUpload.testQuestion' : 'Test Question' ,
'knowledgeFileUpload.testQuestionPlaceholder' : 'Please enter the question to test' ,
'knowledgeFileUpload.executeTest' : 'Execute Test' ,
'knowledgeFileUpload.testResult' : 'Test Result:' ,
'knowledgeFileUpload.selectedFiles' : 'Selected Files' ,
'knowledgeFileUpload.totalSlices' : 'Total {total} records' ,
'knowledgeFileUpload.slice' : 'Slice' ,
'knowledgeFileUpload.noSliceData' : 'No slice data available' ,
'knowledgeFileUpload.firstPage' : 'First' ,
'knowledgeFileUpload.prevPage' : 'Previous' ,
'knowledgeFileUpload.nextPage' : 'Next' ,
'knowledgeFileUpload.totalRecords' : 'Total {total} records' ,
'knowledgeFileUpload.testQuestion' : 'Test Question' ,
'knowledgeFileUpload.testQuestionPlaceholder' : 'Please enter the question to test' ,
'knowledgeFileUpload.runTest' : 'Run Test' ,
'knowledgeFileUpload.testResult' : 'Test Result:' ,
'knowledgeFileUpload.noRelatedSlices' : 'No related slices found' ,
'knowledgeFileUpload.comprehensiveSimilarity' : 'Comprehensive Similarity' ,
2026-06-09 17:22:18 +08:00
'knowledgeFileUpload.sourceDocument' : 'Source Document' ,
2025-11-04 16:21:01 +08:00
'knowledgeFileUpload.content' : 'Content:' ,
'knowledgeFileUpload.testQuestionRequired' : 'Please enter test question' ,
2026-06-05 17:37:21 +08:00
'knowledgeFileUpload.parsing' : 'Parsing...' ,
2025-11-10 15:11:48 +08:00
'knowledgeBaseDialog.descriptionRequired' : 'Please enter knowledge base description' ,
2025-12-05 14:35:53 +08:00
2026-06-05 17:37:21 +08:00
// Knowledge Base Management page text
'knowledgeBaseManagement.loading' : 'Loading...' ,
'knowledgeBaseManagement.noData' : 'No data' ,
'knowledgeBaseManagement.switchKnowledgeBase' : 'Switch Knowledge Base' ,
'knowledgeBaseManagement.currentKnowledgeBaseDocuments' : 'Current Knowledge Base Document Assets' ,
'knowledgeBaseManagement.enabled' : 'Enabled' ,
'knowledgeBaseManagement.disabled' : 'Disabled' ,
'knowledgeBaseManagement.totalDocuments' : 'Total {total} documents' ,
'knowledgeBaseManagement.getListFailed' : 'Failed to get list' ,
2025-12-05 14:35:53 +08:00
// Feature Management page text
'featureManagement.selectAll' : 'Select All' ,
'featureManagement.deselectAll' : 'Deselect All' ,
'featureManagement.save' : 'Save Configuration' ,
'featureManagement.reset' : 'Reset' ,
'featureManagement.group.featureManagement' : 'Enable/Disable the feature/section' ,
'featureManagement.group.voiceManagement' : 'Visible to users during agent configuration' ,
'featureManagement.noFeatures' : 'No features available' ,
'featureManagement.contactAdmin' : 'Please contact administrator to configure features' ,
'featureManagement.saveSuccess' : 'Feature configuration saved successfully' ,
'featureManagement.resetConfirm' : 'Are you sure you want to reset all feature configurations?' ,
'featureManagement.confirm' : 'Confirm' ,
'featureManagement.cancel' : 'Cancel' ,
'featureManagement.resetSuccess' : 'Feature configuration reset successfully' ,
2025-12-05 18:08:26 +08:00
'featureManagement.noChanges' : 'No changes to save' ,
2026-06-12 14:23:25 +08:00
'featureManagement.saving' : 'Saving...' ,
'featureManagement.groupName.featureManagement' : 'Feature Module Switch' ,
'featureManagement.groupName.voiceManagement' : 'Agent Visible Configuration' ,
'featureManagement.groupDescription.featureManagement' : 'Control the enable status of core feature modules' ,
'featureManagement.groupDescription.voiceManagement' : 'Configure which features are visible and available to agents (AI assistants)' ,
'featureManagement.moduleCount' : '{count} modules in total' ,
2025-12-05 14:35:53 +08:00
// Feature names and descriptions
'feature.voiceprintRecognition.name' : 'Voiceprint Recognition' ,
'feature.voiceprintRecognition.description' : 'Verify user identity through voiceprint recognition technology, providing secure voice interaction experience' ,
'feature.voiceClone.name' : 'Voice Clone' ,
'feature.voiceClone.description' : 'Clone specific voice timbre using AI technology to achieve personalized voice synthesis' ,
'feature.knowledgeBase.name' : 'Knowledge Base' ,
'feature.knowledgeBase.description' : 'Build and manage knowledge base system to provide professional knowledge support for AI assistants' ,
'feature.mcpAccessPoint.name' : 'MCP Access Point' ,
'feature.mcpAccessPoint.description' : 'Provide MCP protocol access points to support integration of external tools and services' ,
'feature.vad.name' : 'Voice Activity Detection' ,
'feature.vad.description' : 'Automatically detect voice activity to optimize voice interaction response efficiency' ,
'feature.asr.name' : 'Speech Recognition' ,
'feature.asr.description' : 'Convert speech to text to enable natural language interaction functionality' ,
2026-05-27 16:57:48 +08:00
'feature.addressBook.name' : 'Address Book' ,
'feature.addressBook.description' : 'Manage and maintain contact address book to provide contact information support for AI assistant' ,
2025-12-05 14:35:53 +08:00
2026-05-26 16:37:39 +08:00
// Address Book Management page
2026-05-28 15:02:20 +08:00
'addressBookManagement.title' : 'Address Book Management' ,
'addressBookManagement.searchPlaceholder' : 'Search device name or MAC address' ,
'addressBookManagement.selectAgent' : 'Please select agent' ,
'addressBookManagement.name' : 'Address Book Name' ,
'addressBookManagement.description' : 'Address Book Description' ,
'addressBookManagement.contactCount' : 'Contact Count' ,
'addressBookManagement.status' : 'Enabled' ,
'addressBookManagement.createdAt' : 'Created Time' ,
'addressBookManagement.operation' : 'Operation' ,
'addressBookManagement.add' : 'Add' ,
'addressBookManagement.edit' : 'Edit' ,
'addressBookManagement.delete' : 'Delete' ,
'addressBookManagement.itemsPerPage' : 'items/page' ,
'addressBookManagement.firstPage' : 'First' ,
'addressBookManagement.prevPage' : 'Previous' ,
'addressBookManagement.nextPage' : 'Next' ,
'addressBookManagement.totalRecords' : '{total} records in total' ,
'addressBookManagement.addAddressBook' : 'Add Address Book' ,
'addressBookManagement.editAddressBook' : 'Edit Address Book' ,
'addressBookManagement.getAddressBookListFailed' : 'Failed to get address book list' ,
'addressBookManagement.selectAddressBookFirst' : 'Please select address books to delete first' ,
'addressBookManagement.confirmBatchDelete' : 'Are you sure to delete {count} selected address books?' ,
'addressBookManagement.batchDeleteSuccess' : 'Successfully deleted {count} address books' ,
'addressBookManagement.deleteFailed' : 'Delete failed, please try again' ,
'addressBookManagement.operationCancelled' : 'Delete operation cancelled' ,
'addressBookManagement.updateSuccess' : 'Update successful' ,
'addressBookManagement.addSuccess' : 'Add successful' ,
'addressBookManagement.updateFailed' : 'Update failed' ,
'addressBookManagement.addFailed' : 'Add failed' ,
'addressBookManagement.selectAll' : 'Select All' ,
'addressBookManagement.cancelSelectAll' : 'Deselect All' ,
'addressBookManagement.deviceName' : 'Device Name' ,
'addressBookManagement.deviceType' : 'Device Type' ,
'addressBookManagement.deviceId' : 'Device ID' ,
'addressBookManagement.remarks' : 'Remarks' ,
'addressBookManagement.addressBookDetail' : 'Address Book Detail' ,
'addressBookManagement.addressBookName' : 'Address Book Name' ,
'addressBookManagement.addressBookNamePlaceholder' : 'Please enter address book name' ,
'addressBookManagement.addressBookNameRequired' : 'Please enter address book name' ,
'addressBookManagement.addressBookNameLength' : 'Address book name must be between 1 and 50 characters' ,
'addressBookManagement.addressBookDesc' : 'Address Book Description' ,
'addressBookManagement.addressBookDescPlaceholder' : 'Please enter address book description' ,
'addressBookManagement.remarksPlaceholder' : 'Please enter remarks' ,
'addressBookManagement.selectDevice' : 'Please select a device to view address book details' ,
'addressBookManagement.save' : 'Save' ,
'addressBookManagement.saveSuccess' : 'Save successful' ,
'addressBookManagement.saveFailed' : 'Save failed' ,
'addressBookManagement.deviceNotSelected' : 'Please select a device first' ,
'addressBookManagement.addDeviceTip' : 'Add device feature is under development' ,
'addressBookManagement.selectAgentFirst' : 'Please select an agent first' ,
// Address Book Dialog
'addressBookDialog.title' : 'Address Book' ,
'addressBookDialog.name' : 'Address Book Name' ,
'addressBookDialog.namePlaceholder' : 'Please enter address book name' ,
'addressBookDialog.description' : 'Address Book Description' ,
'addressBookDialog.descriptionPlaceholder' : 'Please enter address book description in detail' ,
'addressBookDialog.status' : 'Status' ,
'addressBookDialog.save' : 'Save' ,
'addressBookDialog.cancel' : 'Cancel' ,
'addressBookDialog.confirm' : 'Confirm' ,
'addressBookDialog.nameRequired' : 'Please enter address book name' ,
'addressBookDialog.nameLength' : 'Address book name must be between 1 and 50 characters' ,
'addressBookDialog.namePattern' : 'Address book name can only contain letters, numbers, spaces, underscores and hyphens' ,
'addressBookDialog.descriptionRequired' : 'Please enter address book description' ,
'addressBookDialog.descriptionLength' : 'Address book description cannot exceed 300 characters' ,
// Address Book Management page - Device List
2026-05-26 16:37:39 +08:00
'addressBookManagement.mainTitle' : 'Address Book Management' ,
'addressBookManagement.subTitle' : 'Manage device address book, set device names and call permissions' ,
'addressBookManagement.online' : 'Online' ,
'addressBookManagement.offline' : 'Offline' ,
'addressBookManagement.macAddress' : 'MAC Address' ,
'addressBookManagement.status' : 'Status' ,
2026-05-28 15:18:54 +08:00
'addressBookManagement.deviceGroup' : 'Assigned Agent' ,
2026-05-26 16:37:39 +08:00
'addressBookManagement.addTime' : 'Added Time' ,
'addressBookManagement.lastOnline' : 'Last Online' ,
'addressBookManagement.deviceCallPermission' : 'Device Call Permission' ,
2026-05-28 15:18:54 +08:00
'addressBookManagement.setPermissionDesc' : 'Set which devices the current device can call ({count} selected)' ,
2026-05-26 16:37:39 +08:00
'addressBookManagement.selectAll' : 'Select All' ,
'addressBookManagement.deselectAll' : 'Deselect All' ,
2026-05-29 10:04:54 +08:00
'addressBookManagement.save' : 'Save Permissions' ,
2026-05-26 16:37:39 +08:00
// Address Book Management page - operation messages
'addressBookManagement.aliasSaved' : 'Alias saved' ,
'addressBookManagement.saveFailed' : 'Save failed' ,
'addressBookManagement.noChanges' : 'No changes' ,
'addressBookManagement.permissionSaved' : 'Permission saved' ,
'addressBookManagement.partialSaveFailed' : 'Some permissions failed to save' ,
'addressBookManagement.agentNameUpdated' : 'Agent name updated' ,
'addressBookManagement.updateFailed' : 'Update failed' ,
// Time format
'addressBookManagement.justNow' : 'Just now' ,
'addressBookManagement.minutesAgo' : '{minutes} minutes ago' ,
'addressBookManagement.hoursAgo' : '{hours} hours ago' ,
'addressBookManagement.daysAgo' : '{days} days ago' ,
'addressBookManagement.monthsAgo' : '{months} months ago' ,
'addressBookManagement.yearsAgo' : '{years} years ago' ,
// Header navigation
'header.addressBook' : 'Address Book' ,
2026-07-07 17:49:34 +08:00
}