fix: optimize language

This commit is contained in:
wangdan-fit2cloud 2025-02-06 15:15:23 +08:00
parent 4ddc491224
commit 1010de5cfb
14 changed files with 101 additions and 93 deletions

View File

@ -23,7 +23,7 @@ export default {
oppose: 'Dislike',
cancelOppose: 'Cancel Dislike',
continue: 'Continue',
stopChat: 'Stop Answering'
stopChat: 'Stop Output'
},
tip: {
error500Message: 'Sorry, the service is currently under maintenance. Please try again later!',
@ -32,8 +32,8 @@ export default {
'Sorry, you have reached the maximum number of questions. Please try again tomorrow!',
answerMessage:
'Sorry, no relevant content was found. Please rephrase your question or provide more information.',
stopAnswer: 'Answering stopped',
answerLoading: 'Answering',
stopAnswer: 'Output stopped',
answerLoading: 'Thinking',
recorderTip: `<p>This feature requires the use of a microphone. Browsers prohibit recording on insecure pages. Solutions are as follows:<br/>
1. Enable HTTPS to resolve;<br/>
2. If there is no HTTPS configuration, modify the browser security settings. Chrome settings as follows:<br/>
@ -80,13 +80,13 @@ export default {
output: 'Output',
rerankerContent: 'Reranked Content',
rerankerResult: 'Reranked Results',
paragraph: 'Paragraph',
paragraph: 'Segment',
noSubmit: 'User did not submit',
errMessage: 'Error Log'
},
KnowledgeSource: {
title: 'Knowledge Source',
referenceParagraph: 'Referenced Paragraph',
referenceParagraph: 'Referenced Segment',
consume: 'Consumption',
consumeTime: 'Time Consumed'
},

View File

@ -1,24 +1,24 @@
export default {
create: 'Create',
createSuccess: 'Create successful',
createSuccess: 'Successful',
copy: 'Copy',
copySuccess: 'Copy successful',
copySuccess: 'Successful',
copyError: 'Copy Failed',
save: 'Save',
saveSuccess: 'Save successful',
saveSuccess: 'Successful',
delete: 'Delete',
deleteSuccess: 'Deleted successful',
deleteSuccess: 'Successful',
setting: 'Settings',
settingSuccess: 'Setting successful',
settingSuccess: 'Successful',
submit: 'Submit',
submitSuccess: 'Submitted successfully',
submitSuccess: 'Successful',
edit: 'Edit',
editSuccess: 'Edit successful',
editSuccess: 'Successful',
modify: 'Modify',
modifySuccess: 'Modify successful',
modifySuccess: 'Successful',
cancel: 'Cancel',
confirm: 'OK',
tip: 'Prompt',
tip: 'Tips',
add: 'Add',
refresh: 'Refresh',
search: 'Search',
@ -27,9 +27,9 @@ export default {
createDate: 'Create Date',
createTime: 'Create Time',
operation: 'Operation',
character: 'words',
character: 'charcters',
export: 'Export',
exportSuccess: 'Export successful',
exportSuccess: 'Successful',
unavailable: '(Unavailable)',
public: 'Public',
private: 'Private',
@ -47,8 +47,8 @@ export default {
},
status: {
label: 'Status',
enableSuccess: 'Enable successful',
disableSuccess: 'Disable successful'
enableSuccess: 'Successful',
disableSuccess: 'Successful'
},
inputPlaceholder: 'Please input',
title: 'Title',

View File

@ -17,7 +17,7 @@ export default {
msgConfirm1: 'Do you want to regenerate the public access link?',
msgConfirm2:
'Regenerating the public access link will affect third-party embedded scripts changes and will require re-embedding the new script into third-party sites. Please proceed with caution!',
refreshSuccess: 'Refresh successful'
refreshSuccess: 'Successful'
},
APIKeyDialog: {
saveSettings: 'Save Settings',
@ -63,7 +63,7 @@ export default {
languageLabel: 'Language',
showSourceLabel: 'Show Source',
showExecutionDetail: 'Show Execution Detail',
restoreDefault: 'Restore Default',
restoreDefault: 'Reset to default',
customThemeColor: 'Custom Theme Color',
headerTitleFontColor: 'Header Title Font Color',
default: 'Default',

View File

@ -110,7 +110,7 @@ export default {
searchDatasetNode: {
label: 'Knowledge Search',
text: 'Associate knowledge and find relevant segments',
paragraph_list: 'List of retrieved paragraphs',
paragraph_list: 'List of retrieved segments',
is_hit_handling_method_list: 'List of segments that meet direct response criteria',
result: 'Search Result',
directly_return: 'Content of segments that meet direct response criteria',

View File

@ -33,17 +33,17 @@ export default {
},
form: {
appName: {
label: 'APP Name',
label: 'Name',
placeholder: 'Please enter the APP name',
requiredMessage: 'APP name is required'
},
appDescription: {
label: 'APP Description',
label: 'Description',
placeholder:
'Describe the APP scenario and use, e.g.: XXX assistant answering user questions about XXX product usage'
},
appType: {
label: 'Please select the APP type',
label: 'Type',
simplePlaceholder: 'Suitable for beginners to create assistant.',
workflowPlaceholder: 'Suitable for advanced users to customize the workflow of assistant'
},
@ -131,10 +131,10 @@ export default {
similarityThreshold: 'Similarity Threshold',
similarityTooltip: 'The higher the similarity, the stronger the correlation.',
topReferences: 'Top N References',
maxCharacters: 'Maximum words per Reference',
maxCharacters: 'Maximum Characters per Reference',
noReferencesAction: 'When there are no knowledge references',
continueQuestioning: 'Continue to ask questions to the Al model',
provideAnswer: 'Provide a specific answer',
provideAnswer: 'Specify Reply Content',
designated_answer:
'Hello, I am XXX Assistant. My knowledge only contains information related to XXX products. Please rephrase your question.',
defaultPrompt1:
@ -168,7 +168,7 @@ export default {
secretPlaceholder: 'Please enter secret',
tokenPlaceholder: 'Please enter token',
encodingAesKeyPlaceholder: 'Please enter EncodingAESKey',
authenticationSuccessful: 'Authentication successful',
authenticationSuccessful: 'Successful',
urlInfo:
'-APP management-Self-built-Created APP-Receive messages-Set the "URL" received by the API'
},
@ -204,8 +204,8 @@ export default {
},
hitTest: {
title: 'Retrieval Test',
text: 'Ensure effective response by matching paragraphs to user inquiries.',
emptyMessage1: 'The matching paragraph is displayed here',
text: 'Ensure effective response by matching segments to user inquiries.',
emptyMessage1: 'The matching segment is displayed here',
emptyMessage2: 'No matching sections found'
}
}

View File

@ -31,12 +31,12 @@ export default {
},
form: {
datasetName: {
label: 'Knowledge Name',
label: 'Name',
placeholder: 'Please enter the knowledge name',
requiredMessage: 'Please enter the knowledge name'
},
datasetDescription: {
label: 'Knowledge Description',
label: 'Description',
placeholder:
'Describe the content of the knowledge. A detailed description will help AI understand the content better, improving the accuracy of content retrieval and hit rate.',
requiredMessage: 'Please enter the knowledge description'
@ -47,7 +47,7 @@ export default {
requiredMessage: 'Please select the embedding model'
},
datasetType: {
label: 'Knowledge Type',
label: 'Type',
generalInfo: 'Upload local documents',
webInfo: 'Sync text data from a web site'
},
@ -64,8 +64,8 @@ export default {
},
ResultSuccess: {
title: 'Knowledge Created Successfully',
paragraph: 'Paragraphs',
paragraph_count: 'Paragraphs',
paragraph: 'Segments',
paragraph_count: 'Segments',
documentList: 'Document List',
loading: 'Importing',
buttons: {

View File

@ -15,12 +15,12 @@ export default {
},
tip: {
saveMessage: 'Current changes have not been saved. Confirm exit?',
cancelSuccess: 'Batch cancellation successful',
sendMessage: 'Sent successfully',
vectorizationSuccess: 'Batch vectorization successful',
cancelSuccess: 'Successful',
sendMessage: 'Successful',
vectorizationSuccess: 'Successful',
nameMessage: 'Document name cannot be empty!',
importMessage: 'Import successful',
migrationSuccess: 'Move successful'
importMessage: 'Successful',
migrationSuccess: 'Successful'
},
upload: {
selectFile: 'Select File',
@ -39,7 +39,7 @@ export default {
fileType: {
txt: {
label: 'Text File',
tip1: '1. It is recommended to standardize the paragraph markers in the file before uploading.',
tip1: '1. It is recommended to standardize the segment markers in the file before uploading.',
tip2: '2. Up to 50 files can be uploaded at once, with each file not exceeding 100MB.'
},
table: {
@ -59,11 +59,11 @@ export default {
setRules: {
title: {
setting: 'Set Segment Rules',
preview: 'Segment Preview'
preview: 'Preview'
},
intelligent: {
label: 'Intelligent Segmentation (Recommended)',
text: 'If you are unsure how to set segmentation rules, it is recommended to use intelligent segmentation.'
label: 'Automatic Segmentation (Recommended)',
text: 'If you are unsure how to set segmentation rules, it is recommended to use automatic segmentation.'
},
advanced: {
label: 'Advanced Segmentation',
@ -91,11 +91,11 @@ export default {
prev: 'Previous',
next: 'Next',
import: 'Start Import',
preview: 'Generate Preview'
preview: 'Apply'
},
table: {
name: 'Document Name',
char_length: 'Words',
char_length: 'Charcter',
paragraph: 'Segment',
all: 'All',
updateTime: 'Update Time'
@ -105,7 +105,7 @@ export default {
SUCCESS: 'Success',
FAILURE: 'Failure',
EMBEDDING: 'Indexing',
PENDING: 'Queued',
PENDING: 'Queuing',
GENERATE: 'Generating',
SYNC: 'Syncing',
REVOKE: 'Cancelling',
@ -122,14 +122,14 @@ export default {
confirmMessage1:
'Syncing will delete existing data and retrieve new data. Please proceed with caution.',
confirmMessage2: 'Cannot sync, please set the document URL first.',
successMessage: 'Document synced successfully'
successMessage: 'Successful'
},
delete: {
confirmTitle1: 'Confirm batch deletion of',
confirmTitle2: 'documents?',
confirmMessage:
'Segments within the selected documents will also be deleted. Please proceed with caution.',
successMessage: 'Batch deletion successful',
successMessage: 'Successful',
confirmTitle3: 'Confirm deleting document:',
confirmMessage1: 'Under this document',
confirmMessage2: 'All segments will be deleted, please operate with caution. '
@ -161,11 +161,11 @@ export default {
},
hitHandlingMethod: {
optimization: 'Model optimization',
directly_return: 'Direct answer'
directly_return: 'Respond directly'
},
generateQuestion: {
title: 'Generate Questions',
successMessage: 'Question generation successful',
successMessage: 'Successful',
tip1: 'The {data} in the prompt is a placeholder for segmented content, which is replaced by the segmented content when executed and sent to the AI model;',
tip2: 'The AI model generates relevant questions based on the segmented content. Please place the generated questions within the',
tip3: 'tags, and the system will automatically associate the questions within these tags;',

View File

@ -29,7 +29,7 @@ export default {
},
form: {
functionName: {
label: 'Function Name',
label: 'Name',
placeholder: 'Please enter the function name',
requiredMessage: 'Please enter the function name'
},
@ -66,13 +66,13 @@ export default {
outputParam: 'Output Parameters',
paramInfo1: 'Displayed when using the function',
paramInfo2: 'Not displayed when using the function',
code: 'Function Content (Python)'
code: 'Content (Python)'
},
debug: {
run: 'Run',
output: 'Output',
runResult: 'Run Result',
runSuccess: 'Run successful',
runSuccess: 'Successful',
runFailed: 'Run Failed'
}
}

View File

@ -3,7 +3,7 @@ export default {
delete: {
confirmTitle: 'Confirm deletion of question:',
confirmMessage1: 'Deleting this question will cancel the association of',
confirmMessage2: 'paragraphs. Please proceed with caution.'
confirmMessage2: 'segments. Please proceed with caution.'
},
buttons: {
clearStrategy: 'Clear Strategy',

View File

@ -1,15 +1,15 @@
export default {
title: 'Paragraph',
editParagraph: 'Edit Paragraph',
addParagraph: 'Add Paragraph',
paragraphDetail: 'Paragraph Details',
character_count: 'words',
title: 'Segment',
editParagraph: 'Edit Segment',
addParagraph: 'Add Segment',
paragraphDetail: 'Segment Details',
character_count: 'charcters',
setting: {
batchSelected: 'Batch Select',
cancelSelected: 'Cancel Selection'
},
delete: {
confirmTitle: 'Confirm deletion of paragraph:',
confirmTitle: 'Confirm deletion of segment:',
confirmMessage: 'Deletion cannot be undone. Please proceed with caution.'
},
relatedProblem: {
@ -18,13 +18,13 @@ export default {
},
form: {
paragraphTitle: {
label: 'Paragraph Title',
placeholder: 'Please enter the paragraph title'
label: 'Segment Title',
placeholder: 'Please enter the segment title'
},
content: {
label: 'Paragraph Content',
placeholder: 'Please enter the paragraph content',
requiredMessage1: 'Please enter the paragraph content',
label: 'Segment Content',
placeholder: 'Please enter the segment content',
requiredMessage1: 'Please enter the segment content',
requiredMessage2: 'Content must not exceed 100,000 words'
}
}

View File

@ -8,7 +8,7 @@ export default {
placeholder: 'Enter the question, support multiple entries, one per line.',
errorMessage: 'Question cannot be empty!',
requiredMessage: 'Please enter a question',
relatedSuccess: 'Batch association of paragraphs successful'
relatedSuccess: 'Successful'
},
setting: {
@ -19,20 +19,20 @@ export default {
placeholder: 'Search by name'
},
table: {
paragraph_count: 'Associated Paragraphs',
paragraph_count: 'Associated Segments',
updateTime: 'Update Time'
},
delete: {
confirmTitle: 'Confirm deletion of question:',
confirmMessage1: 'Deleting this question will cancel the association of',
confirmMessage2: 'paragraphs. Please proceed with caution.'
confirmMessage2: 'segments. Please proceed with caution.'
},
relateParagraph: {
title: 'Associate Paragraphs',
title: 'Associate Segments',
selectDocument: 'Select Document',
placeholder: 'Search by document name',
selectParagraph: 'Select Paragraph',
selectedParagraph: 'Selected Paragraphs',
selectParagraph: 'Select Segment',
selectedParagraph: 'Selected Segments',
count: 'Count'
}
}

View File

@ -1,13 +1,13 @@
export default {
title: 'System',
test: 'Test Connection',
testSuccess: 'Test connection successful',
testSuccess: 'Successful',
testFailed: 'Test connection failed',
password: 'Password',
authentication: {
title: 'Login Authentication',
ldap: {
title: 'LDAP Settings',
title: 'LDAP',
address: 'LDAP Address',
serverPlaceholder: 'Please enter LDAP address',
bindDN: 'Bind DN',
@ -21,7 +21,7 @@ export default {
enableAuthentication: 'Enable LDAP Authentication'
},
cas: {
title: 'CAS Settings',
title: 'CAS',
ldpUri: 'ldpUri',
ldpUriPlaceholder: 'Please enter ldpUri',
validateUrl: 'Validation Address',
@ -31,7 +31,7 @@ export default {
enableAuthentication: 'Enable CAS Authentication'
},
oidc: {
title: 'OIDC Settings',
title: 'OIDC',
authEndpoint: 'Auth Endpoint',
authEndpointPlaceholder: 'Please enter auth endpoint',
tokenEndpoint: 'Token Endpoint',
@ -50,7 +50,7 @@ export default {
},
oauth2: {
title: 'OAuth2 Settings',
title: 'OAuth2',
authEndpoint: 'Auth Endpoint',
authEndpointPlaceholder: 'Please enter auth endpoint',
tokenEndpoint: 'Token Endpoint',
@ -78,7 +78,7 @@ export default {
alreadyTurnedOn: 'Turned On',
notEnabled: 'Not Enabled',
validate: 'Validate',
validateSuccess: 'Validation successful',
validateSuccess: 'Successful',
validateFailed: 'Validation failed',
validateFailedTip: 'Please fill in all required fields and ensure the format is correct',
appKeyPlaceholder: 'Please enter APP key',
@ -98,7 +98,7 @@ export default {
custom: 'Custom',
pagePreview: 'Page Preview',
default: 'Default',
restoreDefaults: 'Restore Defaults',
restoreDefaults: 'Reset to default',
orange: 'Orange',
green: 'Green',
purple: 'Purple',
@ -119,7 +119,7 @@ export default {
websiteSlogan: 'Welcome Message',
websiteSloganPlaceholder: 'Please enter the welcome message',
websiteSloganTip: 'The welcome message below the product logo',
defaultSlogan: 'Welcome to MaxKB Intelligent Knowledge Q&A System',
defaultSlogan: 'Ready-to-use, flexible RAG Chatbot',
defaultTip: 'Default is the MaxKB platform interface, supports custom settings',
logoDefaultTip: 'Default is the MaxKB login interface, supports custom settings',
platformSetting: 'Platform Settings',

View File

@ -102,6 +102,7 @@
}
.el-message-box {
--el-messagebox-font-size: 16px;
--el-messagebox-width: 450px;
padding: 24px;
.el-message-box__header {
padding: 0;

View File

@ -62,13 +62,21 @@
<span class="vertical-middle lighter break-all ellipsis-1">
{{ shareUrl }}
</span>
<el-button type="primary" text @click="copyClick(shareUrl)">
<AppIcon iconName="app-copy"></AppIcon>
</el-button>
<el-button @click="refreshAccessToken" type="primary" text style="margin-left: 1px">
<el-icon><RefreshRight /></el-icon>
</el-button>
<el-tooltip effect="dark" :content="$t('common.copy')" placement="top">
<el-button type="primary" text @click="copyClick(shareUrl)">
<AppIcon iconName="app-copy"></AppIcon>
</el-button>
</el-tooltip>
<el-tooltip effect="dark" :content="$t('common.refresh')" placement="top">
<el-button
@click="refreshAccessToken"
type="primary"
text
style="margin-left: 1px"
>
<el-icon><RefreshRight /></el-icon>
</el-button>
</el-tooltip>
</div>
<div>
<el-button
@ -121,10 +129,11 @@
<span class="vertical-middle lighter break-all ellipsis-1">{{
baseUrl + id
}}</span>
<el-button type="primary" text @click="copyClick(baseUrl + id)">
<AppIcon iconName="app-copy"></AppIcon>
</el-button>
<el-tooltip effect="dark" :content="$t('common.copy')" placement="top">
<el-button type="primary" text @click="copyClick(baseUrl + id)">
<AppIcon iconName="app-copy"></AppIcon>
</el-button>
</el-tooltip>
</div>
</div>
<div>
@ -324,9 +333,7 @@ function changeState(bool: Boolean) {
const obj = {
is_active: bool
}
const str = bool
? t('common.status.enableSuccess')
: t('common.status.disableSuccess')
const str = bool ? t('common.status.enableSuccess') : t('common.status.disableSuccess')
updateAccessToken(obj, str)
}