feat(i18n): add internationalization support across multiple components

This commit is contained in:
2025-10-29 16:40:20 +08:00
parent 184c232cc8
commit 9199ed7c29
34 changed files with 1455 additions and 761 deletions

View File

@@ -1,6 +1,9 @@
export default {
translation: {
common: {
back: 'Back',
operationFailed: 'Operation failed',
noResults: 'No results.',
selectPlaceholder: 'select value',
selectAll: 'Select All',
@@ -26,12 +29,13 @@ export default {
traditionalChinese: 'Traditional Chinese',
language: 'Language',
languageMessage: 'Please input your language!',
loading: 'Loading...',
close: 'Close',
languagePlaceholder: 'select your language',
copy: 'Copy',
copied: 'Copied',
comingSoon: 'Coming soon',
download: 'Download',
close: 'Close',
preview: 'Preview',
move: 'Move',
warn: 'Warn',
@@ -50,6 +54,24 @@ export default {
noDataFound: 'No data found.',
noData: 'No data',
promptPlaceholder: `Please input or use / to quickly insert variables.`,
all: 'All',
refresh: 'Refresh',
submitting: 'Submitting...',
description: 'Description',
confirm: 'Confirm',
enabled: 'Enabled',
clearFilter: 'Clear Filter',
confirmFilter: 'Confirm Filter',
private: 'Private',
moreActions: 'More Actions',
disable: 'Disable',
enable: 'Enable',
team: 'Team',
public: 'Public',
unknown: 'Unknown',
noDescription: 'No description',
viewAll: 'View All',
viewDetails: 'View Details',
mcp: {
namePlaceholder: 'My MCP Server',
nameRequired:
@@ -58,6 +80,172 @@ export default {
tokenPlaceholder: 'e.g. eyJhbGciOiJIUzI1Ni...',
},
},
knowledgeSettings: {
submitData: 'Submit data:',
basicInfoUpdateSuccess: 'Basic information updated successfully',
parseConfigUpdateSuccess: 'Parse configuration updated successfully',
updateFailed: '{{type}} update failed',
basicInfo: 'Basic Information',
parseConfig: 'Parse Configuration',
knowledgeBase: 'Knowledge Base',
knowledgeBaseDetail: 'Knowledge Base Detail',
settings: 'Settings',
knowledgeBaseSettings: 'Knowledge Base Settings',
settingsTabs: 'Settings Tabs',
backToKnowledgeDetail: 'Back to Knowledge Base Detail',
},
form: {
fieldRequired: '{{field}} is required',
minValueExceeded: '{{field}} cannot be less than {{min}}',
maxValueExceeded: '{{field}} cannot be greater than {{max}}',
configurationError: 'Form configuration error',
chipListPlaceholder: 'Type and press Enter to add',
maxChipsExceeded: '{{field}} can have at most {{max}} tags',
noChips: 'No tags',
formConfigError: 'Form configuration error',
},
knowledge: {
basicInfo: 'Basic Information',
uploadAvatar: 'Upload Avatar',
nameRequired: 'Knowledge base name cannot be empty',
knowledgeBaseName: 'Knowledge Base Name',
descriptionPlaceholder: 'Please enter knowledge base description...',
permissionSettings: 'Permission Settings',
onlyMe: 'Only Me',
teamMembers: 'Team Members',
retrievalTest: 'Retrieval Test',
configSettings: 'Configuration Settings',
knowledgeBaseActions: 'Knowledge Base Actions',
filter: 'Filter',
runStatus: {
unstart: 'Not Started',
running: 'Running',
cancel: 'Cancelled',
done: 'Done',
fail: 'Failed',
unknown: 'Unknown',
parsing: 'Parsing'
},
runStatusFilter: 'Run Status',
fileName: 'File Name',
actions: 'Actions',
fileType: 'File Type',
fileTypeFilter: 'File Type',
searchFiles: 'Search Files',
uploadFile: 'Upload File',
fileCount: 'File Count',
chunkCount: 'Chunk Count',
tokenCount: 'Token Count',
size: 'Size',
createTime: 'Create Time',
updateTime: 'Update Time',
language: 'Language',
permission: 'Permission',
embeddingModel: 'Embedding Model',
parser: 'Parser',
type: 'Type',
status: 'Status',
parseStatus: 'Parse Status',
uploadTime: 'Upload Time',
documentCount: 'Document Count',
lastUpdate: 'Last Update',
creator: 'Creator',
testPrompt: 'Test Prompt',
testResultOverview: 'Test Result Overview',
matchedChunks: 'Matched Chunks',
relatedDocuments: 'Related Documents',
returnedChunks: 'Returned Chunks',
documentFilter: 'Document Filter',
selectDocuments: 'Select Documents',
noContent: 'No content',
keywords: 'Keywords',
relatedDocumentStats: 'Related Document Statistics',
selectParserMethod: 'Select Parser Method',
unknown: 'Unknown',
description: 'Description',
pageRank: 'Page Rank',
edge: 'Edge',
missingIds: 'missing IDs',
nodeNotExists: 'node not exists',
noGraphData: 'No graph data available',
legend: 'Legend',
graphStats: 'Graph Statistics',
reparse: 'Reparse',
cancelRun: 'Cancel Run',
renameFile: 'Rename File',
viewDetails: 'View Details',
viewFileDetails: 'View File Details',
matchedChunksCount: 'Matched Chunks Count',
matchedChunksTitle: 'Matched Chunks Title',
totalMatchedChunks: 'Total Matched Chunks',
similarity: 'Similarity',
vectorSimilarity: 'Vector Similarity',
termSimilarity: 'Term Similarity',
nodeCount: 'Node Count',
edgeCount: 'Edge Count',
noMatchingKnowledgeBases: 'No matching knowledge bases',
noKnowledgeBases: 'No knowledge bases',
tryAdjustingFilters: 'Try adjusting your filters',
createFirstKnowledgeBase: 'Create your first knowledge base',
createKnowledgeBase: 'Create Knowledge Base',
noDescription: 'No description',
config: {
basicConfig: 'Basic Configuration',
pageRankAndAutoExtract: 'PageRank and Auto Extract',
raptorStrategy: 'RAPTOR Strategy',
knowledgeGraph: 'Knowledge Graph',
chunkMethod: 'Chunk Method',
selectChunkMethod: 'Select chunk method',
pageRank: 'Page Rank',
enterPageRank: 'Enter page rank',
autoKeywords: 'Auto Keywords Extraction',
enterKeywordCount: 'Enter keyword count',
autoQuestions: 'Auto Questions Extraction',
enterQuestionCount: 'Enter question count',
pdfParser: 'PDF Parser',
plainText: 'Plain Text',
experimental: 'Experimental',
delimiter: 'Delimiter',
enterDelimiter: 'Enter delimiter',
embeddingModel: 'Embedding Model',
pageRankConfigTodo: 'PageRank Configuration - To be implemented',
entityTypeConfigTodo: 'Entity Type Configuration - To be implemented',
maxTokenConfigTodo: 'Max Token Configuration (Max: 16384) - To be implemented',
delimiterConfigTodo: 'Delimiter Configuration - To be implemented',
chunkTokenSize: 'Suggested chunk token size',
htmlForExcel: 'Table to HTML',
tags: 'Tags',
useRaptorStrategy: 'Use Retrieval-Augmented RAPTOR Strategy',
prompt: 'Prompt',
raptorPromptDefault: 'Please summarize the following paragraphs. Be careful with numbers and do not make up information. Paragraphs:\n{cluster_content}\nThe above is the content you need to summarize.',
maxTokens: 'Max tokens',
threshold: 'Threshold',
maxClusterCount: 'Max cluster count',
randomSeed: 'Random seed',
extractKnowledgeGraph: 'Extract knowledge graph',
entityTypes: '*Entity types',
method: 'Method',
entityNormalization: 'Entity normalization',
communityReportGeneration: 'Community report generation',
parser: {
general: 'General Parser',
qa: 'Q&A Parser',
resume: 'Resume Parser',
manual: 'Manual Parser',
table: 'Table Parser',
paper: 'Paper Parser',
book: 'Book Parser',
laws: 'Laws Parser',
presentation: 'Presentation Parser',
one: 'One Parser',
tag: 'Tag Parser'
}
}
},
login: {
login: 'Sign in',
signUp: 'Sign up',
@@ -80,7 +268,7 @@ export default {
review: 'from 500+ reviews',
},
header: {
knowledgeBase: 'Dataset',
knowledgeBase: 'Knowledge Bases',
chat: 'Chat',
register: 'Register',
signin: 'Sign in',
@@ -91,17 +279,136 @@ export default {
flow: 'Agent',
search: 'Search',
welcome: 'Welcome to',
dataset: 'Dataset',
},
knowledgeHooks: {
fetchKnowledgeListFailed: 'Failed to fetch knowledge base list',
fetchKnowledgeDetailFailed: 'Failed to fetch knowledge base details',
fetchKnowledgeGraphFailed: 'Failed to fetch knowledge graph',
createKnowledgeFailed: 'Failed to create knowledge base',
updateKnowledgeBasicInfoFailed: 'Failed to update knowledge base basic information',
updateKnowledgeModelConfigFailed: 'Failed to update knowledge base model configuration',
deleteKnowledgeFailed: 'Failed to delete knowledge base',
batchDeleteKnowledgeFailed: 'Failed to batch delete knowledge bases',
batchDeleteFailedKnowledgeBases: 'Failed to delete knowledge bases',
},
knowledgeTesting: {
retrievalTestComplete: 'Retrieval test completed',
retrievalTestFailed: 'Retrieval test failed',
paginationRequestFailed: 'Pagination request failed',
knowledgeBase: 'Knowledge Base',
knowledgeBaseDetail: 'Knowledge Base Detail',
testing: 'Testing',
knowledgeBaseTesting: 'Knowledge Base Testing',
testConfiguration: 'Test Configuration',
testQuestion: 'Test Question',
pleaseEnterTestQuestion: 'Please enter test question',
testQuestionPlaceholder: 'Please enter the question you want to test...',
similarityThreshold: 'Similarity Threshold',
vectorSimilarityWeight: 'Vector Similarity Weight',
rerankModel: 'Rerank Model (Optional)',
noRerank: 'No reranking',
pleaseEnterResultCount: 'Please enter result count',
minValue1: 'Minimum value is 1',
maxValue2048: 'Maximum value is 2048',
useWithRerankModel: 'Use with Rerank model',
crossLanguageSearch: 'Cross-language Search',
useKnowledgeGraph: 'Use Knowledge Graph',
startTest: 'Start Test',
languages: {
english: 'English',
chinese: 'Chinese',
japanese: 'Japanese',
korean: 'Korean',
french: 'French',
german: 'German',
spanish: 'Spanish',
italian: 'Italian',
portuguese: 'Portuguese',
russian: 'Russian',
arabic: 'Arabic',
hindi: 'Hindi',
thai: 'Thai',
vietnamese: 'Vietnamese',
indonesian: 'Indonesian',
malay: 'Malay',
filipino: 'Filipino',
turkish: 'Turkish',
polish: 'Polish',
dutch: 'Dutch',
swedish: 'Swedish',
danish: 'Danish',
norwegian: 'Norwegian',
finnish: 'Finnish',
hebrew: 'Hebrew',
czech: 'Czech',
slovak: 'Slovak',
hungarian: 'Hungarian',
romanian: 'Romanian',
bulgarian: 'Bulgarian',
croatian: 'Croatian',
serbian: 'Serbian',
slovenian: 'Slovenian',
estonian: 'Estonian',
latvian: 'Latvian',
lithuanian: 'Lithuanian',
maltese: 'Maltese',
irish: 'Irish',
welsh: 'Welsh',
basque: 'Basque',
catalan: 'Catalan',
galician: 'Galician',
icelandic: 'Icelandic',
macedonian: 'Macedonian',
albanian: 'Albanian',
belarusian: 'Belarusian',
ukrainian: 'Ukrainian',
kazakh: 'Kazakh',
kyrgyz: 'Kyrgyz',
uzbek: 'Uzbek',
tajik: 'Tajik',
mongolian: 'Mongolian',
georgian: 'Georgian',
armenian: 'Armenian',
azerbaijani: 'Azerbaijani',
persian: 'Persian',
urdu: 'Urdu',
bengali: 'Bengali',
tamil: 'Tamil',
telugu: 'Telugu',
malayalam: 'Malayalam',
kannada: 'Kannada',
gujarati: 'Gujarati',
punjabi: 'Punjabi',
odia: 'Odia',
assamese: 'Assamese',
nepali: 'Nepali',
sinhala: 'Sinhala',
burmese: 'Burmese',
khmer: 'Khmer',
lao: 'Lao',
swahili: 'Swahili',
amharic: 'Amharic',
yoruba: 'Yoruba',
igbo: 'Igbo',
hausa: 'Hausa',
zulu: 'Zulu',
xhosa: 'Xhosa',
afrikaans: 'Afrikaans',
}
},
knowledgeList: {
welcome: 'Welcome back',
description: 'Which knowledge bases will you use today?',
createKnowledgeBase: 'Create Dataset',
createKnowledgeBase: 'Create Knowledge Base',
name: 'Name',
namePlaceholder: 'Please input name!',
doc: 'Docs',
searchKnowledgePlaceholder: 'Search',
noMoreData: `That's all. Nothing more.`,
confirmDeleteKnowledge: 'Are you sure to delete knowledge base',
teamFilter: 'Team Filter',
loadError: 'Failed to load knowledge base list',
paginationInfo: 'Total {{total}} knowledge bases, page {{current}} of {{totalPages}}',
},
knowledgeDetails: {
fileSize: 'File Size',
@@ -151,6 +458,36 @@ export default {
knowledgeGraph: 'Knowledge Graph',
name: 'Name',
namePlaceholder: 'Please input name!',
// 新增的字段
deleteFileFailed: 'Delete file failed',
uploadFiles: 'Upload files:',
uploadFileFailed: 'Upload file failed',
reparseFailed: 'Reparse failed',
renameFailed: 'Rename failed',
changeStatusFailed: 'Change status failed',
viewDetails: 'View Details',
viewProcessDetails: 'View Process Details',
knowledgeBase: 'Knowledge Base',
knowledgeBaseDetail: 'Knowledge Base Detail',
documents: 'Documents',
graph: 'Graph',
deleteFiles: 'Delete files:',
newSelectionModel: 'New selection model:',
uploadFilesToKnowledge: 'Upload files to knowledge base',
confirmDelete: 'Confirm Delete',
confirmDeleteMessage: 'Are you sure you want to delete the selected {{count}} files? This action cannot be undone.',
documentProcessDetails: 'Document Process Details',
basicInfo: 'Basic Information',
parserId: 'Parser ID',
notSpecified: 'Not specified',
processStatus: 'Process Status',
startTime: 'Start Time',
notStarted: 'Not started',
processingTime: 'Processing Time',
notCompleted: 'Not completed',
progress: 'Progress',
processDetails: 'Process Details',
seconds: 'seconds',
doc: 'Docs',
datasetDescription:
'Please wait for your files to finish parsing before starting an AI-powered chat.',
@@ -271,6 +608,20 @@ export default {
reRankModelWaring: 'Re-rank model is very time consuming.',
},
knowledgeConfiguration: {
basicInfo: 'Basic Information',
configSettings: 'Configuration Settings',
createSuccess: 'Knowledge base created successfully, please configure parsing settings',
configComplete: 'Knowledge base configuration completed',
createFailed: 'Failed to create knowledge base',
configFailed: 'Failed to configure knowledge base',
skipConfigSuccess: 'Knowledge base created successfully, you can configure parsing parameters later in the settings page',
createSuccessConfig: 'Knowledge base created successfully, now you can configure parsing settings',
configLaterTip: 'You can configure these settings now, or modify them later in the knowledge base details page',
skipConfig: 'Skip Configuration',
creating: 'Creating...',
configuring: 'Configuring...',
createAndNext: 'Create and Next',
completeCreate: 'Complete Creation',
deleteGenerateModalContent: `
<p>Deleting the generated <strong class='text-text-primary'>{{type}}</strong> results
will remove all derived entities and relationships from this dataset.
@@ -917,21 +1268,6 @@ This auto-tagging feature enhances retrieval by adding another layer of domain-s
destinationFolder: 'Destination folder',
pleaseUploadAtLeastOneFile: 'Please upload at least one file',
},
llmTools: {
bad_calculator: {
name: 'Calculator',
description:
'A tool to calculate the sum of two numbers (will give wrong answer)',
params: {
a: 'The first number',
b: 'The second number',
},
},
},
modal: {
okText: 'Confirm',
cancelText: 'Cancel',
},
mcp: {
export: 'Export',
import: 'Import',
@@ -991,6 +1327,11 @@ This auto-tagging feature enhances retrieval by adding another layer of domain-s
cancelText: 'Cancel',
chooseDataset: 'Please select a dataset first',
},
layout: {
file: 'file',
knowledge: 'knowledge',
chat: 'chat',
},
language: {
english: 'English',
chinese: 'Chinese',
@@ -1133,7 +1474,7 @@ Important structured information may include: names, dates, locations, events, k
},
},
cancel: 'Cancel',
swicthPromptMessage:
switchPromptMessage:
'The prompt word will change. Please confirm whether to abandon the existing prompt word?',
tokenizerSearchMethodOptions: {
full_text: 'Full-text',
@@ -1157,5 +1498,83 @@ Important structured information may include: names, dates, locations, events, k
downloading: 'Downloading',
processing: 'Processing',
},
chunkPage: {
missingParams: 'Missing required parameters: Knowledge Base ID or Document ID',
knowledgeBase: 'Knowledge Base',
knowledgeBaseDetail: 'Knowledge Base Detail',
documentDetail: 'Document Detail',
documentChunkResult: 'Document Chunk Parsing Result',
viewDocument: 'View Document',
allChunkData: 'all chunk data',
totalChunkCount: 'Total Chunk Count',
viewFile: 'View File',
searchChunkPlaceholder: 'Search chunk content...',
chunkList: 'Chunk List',
chunkContent: 'Chunk Content',
chunkIndex: 'Chunk Index',
chunkScore: 'Chunk Score',
chunkKeywords: 'Chunk Keywords',
chunkQuestions: 'Chunk Questions',
noChunksFound: 'No chunk data found',
loadingChunks: 'Loading chunk data...',
chunkDetails: 'Chunk Details',
documentPreview: 'Document Preview',
previewNotAvailable: 'Preview not available',
fileNotFound: 'File not found',
unsupportedFileType: 'Unsupported file type',
loadingPreview: 'Loading preview...',
downloadFile: 'Download File',
openInNewTab: 'Open in new tab',
loadingChunkData: 'Loading chunk data...',
noChunkData: 'No chunk data',
noChunkDataDescription: 'No chunk data description',
selectAll: 'Select All',
selected: 'Selected',
items: 'items',
enable: 'Enable',
disable: 'Disable',
clearSelection: 'Clear Selection',
page: 'Page',
pageOf: 'of',
pages: 'pages',
total: 'Total',
chunks: 'chunks',
containsImage: 'Contains Image',
enabled: 'Enabled',
disabled: 'Disabled',
contentPreview: 'Content Preview',
noContent: 'No content',
relatedImage: 'Related Image',
chunkRelatedImage: 'Chunk Related Image',
keywordInfo: 'Keyword Info',
important: 'Important',
question: 'Question',
tag: 'Tag',
deleting: 'Deleting',
confirmDeleteChunks: 'Confirm delete selected chunks',
fetchDataFailed: 'Failed to fetch data',
fileFormatNotSupported: 'File format not supported',
getDocumentFileFailed: 'Failed to get document file',
fileTypeNotSupportedPreview: 'File type not supported for preview',
filePreview: 'File Preview',
loadingFile: 'Loading file...',
},
dialog: {
confirm: 'Confirm',
cancel: 'Cancel',
delete: 'Delete',
save: 'Save',
close: 'Close',
warning: 'Warning',
error: 'Error',
success: 'Success',
info: 'Info',
confirmDelete: 'Confirm Delete',
confirmDeleteMessage: 'This operation cannot be undone. Are you sure you want to delete?',
operationSuccess: 'Operation successful',
operationFailed: 'Operation failed',
pleaseConfirm: 'Please confirm',
areYouSure: 'Are you sure?',
},
},
};