feat: 实现知识库前端界面(英文国际化)
- 添加知识库 V2 完整英文翻译文件 - 包括:主页、文档管理、检索测试、全局设置、会话配置 - 在 Alkaid 导航中添加 "Native Knowledge Base" 入口 - 区分 "Native Knowledge Base" 和 "Knowledge Base (Plugin)"
This commit is contained in:
@@ -6,11 +6,13 @@
|
||||
"title": "The Alkaid Project.",
|
||||
"subtitle": "AstrBot Alpha Project",
|
||||
"navigation": {
|
||||
"knowledgeBase": "Knowledge Base",
|
||||
"knowledgeBaseV2": "Native Knowledge Base",
|
||||
"knowledgeBase": "Knowledge Base (Plugin)",
|
||||
"longTermMemory": "Long-term Memory",
|
||||
"other": "..."
|
||||
}
|
||||
},
|
||||
"knowledgeBaseV2": "Native Knowledge Base",
|
||||
"features": {
|
||||
"knowledgeBase": "Knowledge Base",
|
||||
"longTermMemory": "Long-term Memory",
|
||||
|
||||
@@ -0,0 +1,49 @@
|
||||
{
|
||||
"stats": {
|
||||
"totalDocuments": "Total Documents",
|
||||
"totalChunks": "Total Chunks",
|
||||
"totalMedia": "Media Resources",
|
||||
"totalSize": "Total Size"
|
||||
},
|
||||
"actions": {
|
||||
"upload": "Upload Document",
|
||||
"refresh": "Refresh",
|
||||
"view": "View",
|
||||
"delete": "Delete"
|
||||
},
|
||||
"empty": {
|
||||
"noDocuments": "No documents yet. Click the upload button to add documents"
|
||||
},
|
||||
"upload": {
|
||||
"title": "Upload Document",
|
||||
"dropzone": "Drag and drop files here or click to upload",
|
||||
"supportedFormats": "Supported formats: PDF, TXT, MD",
|
||||
"selectedFiles": "Selected files:",
|
||||
"cancel": "Cancel",
|
||||
"upload": "Start Upload",
|
||||
"uploading": "Uploading files..."
|
||||
},
|
||||
"detail": {
|
||||
"fileType": "File Type",
|
||||
"fileSize": "File Size",
|
||||
"chunks": "Document Chunks",
|
||||
"uploadedAt": "Upload Time",
|
||||
"noChunks": "No document chunks",
|
||||
"chunkIndex": "Chunk #{index}",
|
||||
"characters": "characters"
|
||||
},
|
||||
"delete": {
|
||||
"title": "Confirm Delete",
|
||||
"confirmText": "Are you sure you want to delete document \"{name}\"?",
|
||||
"cancel": "Cancel",
|
||||
"delete": "Delete"
|
||||
},
|
||||
"messages": {
|
||||
"loadError": "Failed to load document list",
|
||||
"uploadSuccess": "Successfully uploaded {count} document(s)",
|
||||
"uploadPartial": "Upload completed: {success} succeeded, {fail} failed",
|
||||
"deleteSuccess": "Document deleted successfully",
|
||||
"deleteFailed": "Delete failed",
|
||||
"deleteError": "Error deleting document"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,74 @@
|
||||
{
|
||||
"list": {
|
||||
"title": "Native Knowledge Base",
|
||||
"subtitle": "AstrBot's built-in knowledge base management system",
|
||||
"create": "Create Knowledge Base",
|
||||
"sessionConfig": "Session Config",
|
||||
"refresh": "Refresh",
|
||||
"loading": "Loading...",
|
||||
"documents": "documents",
|
||||
"chunks": "chunks"
|
||||
},
|
||||
"empty": {
|
||||
"title": "No Knowledge Bases Yet",
|
||||
"subtitle": "Create your first knowledge base to get started",
|
||||
"create": "Create Knowledge Base"
|
||||
},
|
||||
"createDialog": {
|
||||
"title": "Create Knowledge Base",
|
||||
"nameLabel": "Knowledge Base Name",
|
||||
"namePlaceholder": "Enter knowledge base name",
|
||||
"descriptionLabel": "Description",
|
||||
"descriptionPlaceholder": "Brief description of the knowledge base...",
|
||||
"embeddingModelLabel": "Embedding Model",
|
||||
"rerankModelLabel": "Rerank Model",
|
||||
"providerInfo": "Provider ID: {id} | Dimensions: {dimensions}",
|
||||
"rerankProviderInfo": "Provider ID: {id}",
|
||||
"tips": "Tip: Once you choose an embedding model, do not modify the provider's model or vector dimensions, as it will severely affect recall rate.",
|
||||
"cancel": "Cancel",
|
||||
"create": "Create"
|
||||
},
|
||||
"editDialog": {
|
||||
"title": "Edit Knowledge Base",
|
||||
"save": "Save"
|
||||
},
|
||||
"deleteDialog": {
|
||||
"title": "Confirm Delete",
|
||||
"confirmText": "Are you sure you want to delete knowledge base \"{name}\"?",
|
||||
"warning": "This operation is irreversible. All knowledge base content will be permanently deleted.",
|
||||
"cancel": "Cancel",
|
||||
"delete": "Delete"
|
||||
},
|
||||
"detailDialog": {
|
||||
"tabs": {
|
||||
"documents": "Document Management",
|
||||
"search": "Search Test",
|
||||
"settings": "Knowledge Base Settings"
|
||||
}
|
||||
},
|
||||
"emojiPicker": {
|
||||
"title": "Select Emoji",
|
||||
"close": "Close",
|
||||
"categories": {
|
||||
"books": "Books and Documents",
|
||||
"emotions": "Emotions and Expressions",
|
||||
"objects": "Objects and Tools",
|
||||
"symbols": "Symbols and Marks"
|
||||
}
|
||||
},
|
||||
"sessionConfig": {
|
||||
"title": "Knowledge Base Session Configuration"
|
||||
},
|
||||
"messages": {
|
||||
"loadFailed": "Failed to load knowledge base list",
|
||||
"loadError": "Error loading knowledge base list",
|
||||
"nameRequired": "Please enter knowledge base name",
|
||||
"createSuccess": "Knowledge base created successfully",
|
||||
"updateSuccess": "Knowledge base updated successfully",
|
||||
"saveFailed": "Save failed",
|
||||
"saveError": "Error saving",
|
||||
"deleteSuccess": "Knowledge base deleted successfully",
|
||||
"deleteFailed": "Delete failed",
|
||||
"deleteError": "Error deleting"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,21 @@
|
||||
{
|
||||
"search": {
|
||||
"queryLabel": "Search Query",
|
||||
"queryPlaceholder": "Enter search query...",
|
||||
"topKLabel": "Number of Results (Top-K)",
|
||||
"enableRerankLabel": "Enable Reranking",
|
||||
"search": "Search",
|
||||
"searching": "Searching...",
|
||||
"noResults": "No matching content found",
|
||||
"resultsTitle": "Found {count} result(s)",
|
||||
"searchTime": "Search time: {time}s",
|
||||
"relevance": "Relevance",
|
||||
"chunkInfo": "Chunk #{index} | {chars} characters"
|
||||
},
|
||||
"messages": {
|
||||
"queryRequired": "Please enter search query",
|
||||
"noResults": "No matching content found",
|
||||
"searchFailed": "Search failed",
|
||||
"searchError": "Error searching"
|
||||
}
|
||||
}
|
||||
+68
@@ -0,0 +1,68 @@
|
||||
{
|
||||
"info": {
|
||||
"title": "What is Session Configuration?",
|
||||
"description": "Session configuration allows you to specify which knowledge bases to use for different platforms or sessions, enabling personalized knowledge enhancement.",
|
||||
"platformLevel": "Platform Level: Applies to the entire platform (e.g., all QQ sessions)",
|
||||
"sessionLevel": "Session Level: Applies to specific sessions (e.g., specific QQ group)"
|
||||
},
|
||||
"list": {
|
||||
"title": "Configuration List",
|
||||
"refresh": "Refresh",
|
||||
"add": "Add Configuration",
|
||||
"noKB": "No knowledge bases configured"
|
||||
},
|
||||
"scope": {
|
||||
"platform": "Platform Level",
|
||||
"session": "Session Level"
|
||||
},
|
||||
"dialog": {
|
||||
"addTitle": "Add Session Configuration",
|
||||
"editTitle": "Edit Session Configuration",
|
||||
"scopeLabel": "Configuration Scope",
|
||||
"platformIdLabel": "Platform ID",
|
||||
"platformIdPlaceholder": "e.g., qq, telegram, discord",
|
||||
"platformIdHint": "Platform identifier, such as qq, telegram, etc.",
|
||||
"sessionIdLabel": "Session ID",
|
||||
"sessionIdPlaceholder": "e.g., qq:group:123456",
|
||||
"sessionIdHint": "Session identifier, format: platform:type:ID",
|
||||
"platformTooltip": "Applies to all sessions on the platform",
|
||||
"sessionTooltip": "Applies only to the specified session",
|
||||
"kbLabel": "Select Knowledge Base",
|
||||
"kbPlaceholder": "Select one or more knowledge bases",
|
||||
"kbHint": "You can select multiple knowledge bases; they will be searched together during retrieval",
|
||||
"advancedSettings": "Advanced Settings (Optional)",
|
||||
"topKLabel": "Number of Results (Top-K)",
|
||||
"topKHint": "Number of results to return during retrieval",
|
||||
"enableRerankLabel": "Enable Reranking",
|
||||
"cancel": "Cancel",
|
||||
"save": "Save"
|
||||
},
|
||||
"empty": {
|
||||
"noConfigs": "No configurations yet. Click the add button to create your first configuration",
|
||||
"createFirst": "Create First Configuration"
|
||||
},
|
||||
"delete": {
|
||||
"title": "Confirm Delete",
|
||||
"confirmText": "Are you sure you want to delete this configuration?",
|
||||
"warning": "After deletion, the platform or session will no longer use the specified knowledge bases.",
|
||||
"cancel": "Cancel",
|
||||
"delete": "Delete"
|
||||
},
|
||||
"actions": {
|
||||
"edit": "Edit",
|
||||
"delete": "Delete"
|
||||
},
|
||||
"messages": {
|
||||
"loadFailed": "Failed to load configuration list",
|
||||
"loadError": "Error loading configurations",
|
||||
"scopeIdRequired": "Please enter platform ID or session ID",
|
||||
"kbIdsRequired": "Please select at least one knowledge base",
|
||||
"createSuccess": "Configuration created successfully",
|
||||
"updateSuccess": "Configuration updated successfully",
|
||||
"saveFailed": "Save failed",
|
||||
"saveError": "Error saving configuration",
|
||||
"deleteSuccess": "Configuration deleted successfully",
|
||||
"deleteFailed": "Delete failed",
|
||||
"deleteError": "Error deleting configuration"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,44 @@
|
||||
{
|
||||
"basic": {
|
||||
"title": "Basic Information",
|
||||
"nameLabel": "Knowledge Base Name",
|
||||
"namePlaceholder": "Enter knowledge base name",
|
||||
"descriptionLabel": "Description",
|
||||
"descriptionPlaceholder": "Brief description of the knowledge base..."
|
||||
},
|
||||
"models": {
|
||||
"title": "Model Configuration",
|
||||
"embeddingLabel": "Embedding Model",
|
||||
"embeddingHint": "Model for generating document vectors",
|
||||
"rerankLabel": "Rerank Model",
|
||||
"rerankHint": "Model for optimizing retrieval result ranking (optional)"
|
||||
},
|
||||
"chunking": {
|
||||
"title": "Chunking Parameters",
|
||||
"chunkSizeLabel": "Chunk Size",
|
||||
"chunkSizeHint": "Number of characters per document chunk (50-2000)",
|
||||
"chunkOverlapLabel": "Chunk Overlap",
|
||||
"chunkOverlapHint": "Number of overlapping characters between adjacent chunks (0-half of chunk size)"
|
||||
},
|
||||
"retrieval": {
|
||||
"title": "Retrieval Parameters",
|
||||
"topKDenseLabel": "Dense Retrieval Top-K",
|
||||
"topKDenseHint": "Number of results from vector retrieval",
|
||||
"topKSparseLabel": "Sparse Retrieval Top-K",
|
||||
"topKSparseHint": "Number of results from keyword retrieval",
|
||||
"topMFinalLabel": "Final Results Top-M",
|
||||
"topMFinalHint": "Number of final results after fusion",
|
||||
"enableRerankLabel": "Enable Reranking"
|
||||
},
|
||||
"actions": {
|
||||
"save": "Save Settings"
|
||||
},
|
||||
"messages": {
|
||||
"nameRequired": "Please enter knowledge base name",
|
||||
"embeddingRequired": "Please select embedding model",
|
||||
"saveSuccess": "Settings saved successfully",
|
||||
"saveFailed": "Save failed",
|
||||
"saveError": "Error saving settings",
|
||||
"loadProvidersError": "Failed to load model providers"
|
||||
}
|
||||
}
|
||||
@@ -25,6 +25,11 @@ import zhCNDashboard from './locales/zh-CN/features/dashboard.json';
|
||||
import zhCNAlkaidIndex from './locales/zh-CN/features/alkaid/index.json';
|
||||
import zhCNAlkaidKnowledgeBase from './locales/zh-CN/features/alkaid/knowledge-base.json';
|
||||
import zhCNAlkaidMemory from './locales/zh-CN/features/alkaid/memory.json';
|
||||
import zhCNAlkaidKBV2Index from './locales/zh-CN/features/alkaid/knowledge-base-v2/index.json';
|
||||
import zhCNAlkaidKBV2Documents from './locales/zh-CN/features/alkaid/knowledge-base-v2/documents.json';
|
||||
import zhCNAlkaidKBV2Search from './locales/zh-CN/features/alkaid/knowledge-base-v2/search.json';
|
||||
import zhCNAlkaidKBV2Settings from './locales/zh-CN/features/alkaid/knowledge-base-v2/settings.json';
|
||||
import zhCNAlkaidKBV2SessionConfig from './locales/zh-CN/features/alkaid/knowledge-base-v2/session-config.json';
|
||||
import zhCNPersona from './locales/zh-CN/features/persona.json';
|
||||
import zhCNMigration from './locales/zh-CN/features/migration.json';
|
||||
|
||||
@@ -56,6 +61,11 @@ import enUSDashboard from './locales/en-US/features/dashboard.json';
|
||||
import enUSAlkaidIndex from './locales/en-US/features/alkaid/index.json';
|
||||
import enUSAlkaidKnowledgeBase from './locales/en-US/features/alkaid/knowledge-base.json';
|
||||
import enUSAlkaidMemory from './locales/en-US/features/alkaid/memory.json';
|
||||
import enUSAlkaidKBV2Index from './locales/en-US/features/alkaid/knowledge-base-v2/index.json';
|
||||
import enUSAlkaidKBV2Documents from './locales/en-US/features/alkaid/knowledge-base-v2/documents.json';
|
||||
import enUSAlkaidKBV2Search from './locales/en-US/features/alkaid/knowledge-base-v2/search.json';
|
||||
import enUSAlkaidKBV2Settings from './locales/en-US/features/alkaid/knowledge-base-v2/settings.json';
|
||||
import enUSAlkaidKBV2SessionConfig from './locales/en-US/features/alkaid/knowledge-base-v2/session-config.json';
|
||||
import enUSPersona from './locales/en-US/features/persona.json';
|
||||
import enUSMigration from './locales/en-US/features/migration.json';
|
||||
|
||||
@@ -91,7 +101,14 @@ export const translations = {
|
||||
alkaid: {
|
||||
index: zhCNAlkaidIndex,
|
||||
'knowledge-base': zhCNAlkaidKnowledgeBase,
|
||||
memory: zhCNAlkaidMemory
|
||||
memory: zhCNAlkaidMemory,
|
||||
'knowledge-base-v2': {
|
||||
index: zhCNAlkaidKBV2Index,
|
||||
documents: zhCNAlkaidKBV2Documents,
|
||||
search: zhCNAlkaidKBV2Search,
|
||||
settings: zhCNAlkaidKBV2Settings,
|
||||
'session-config': zhCNAlkaidKBV2SessionConfig
|
||||
}
|
||||
},
|
||||
persona: zhCNPersona,
|
||||
migration: zhCNMigration
|
||||
@@ -128,7 +145,14 @@ export const translations = {
|
||||
alkaid: {
|
||||
index: enUSAlkaidIndex,
|
||||
'knowledge-base': enUSAlkaidKnowledgeBase,
|
||||
memory: enUSAlkaidMemory
|
||||
memory: enUSAlkaidMemory,
|
||||
'knowledge-base-v2': {
|
||||
index: enUSAlkaidKBV2Index,
|
||||
documents: enUSAlkaidKBV2Documents,
|
||||
search: enUSAlkaidKBV2Search,
|
||||
settings: enUSAlkaidKBV2Settings,
|
||||
'session-config': enUSAlkaidKBV2SessionConfig
|
||||
}
|
||||
},
|
||||
persona: enUSPersona,
|
||||
migration: enUSMigration
|
||||
|
||||
@@ -89,9 +89,31 @@ const MainRoutes = {
|
||||
// ]
|
||||
// },
|
||||
{
|
||||
name: 'KnowledgeBase',
|
||||
path: '/alkaid/knowledge-base',
|
||||
component: () => import('@/views/alkaid/KnowledgeBase.vue')
|
||||
name: 'Alkaid',
|
||||
path: '/alkaid',
|
||||
component: () => import('@/views/AlkaidPage.vue'),
|
||||
children: [
|
||||
{
|
||||
path: 'knowledge-base-v2',
|
||||
name: 'KnowledgeBaseV2',
|
||||
component: () => import('@/views/alkaid/knowledge-base-v2/KnowledgeBaseV2.vue')
|
||||
},
|
||||
{
|
||||
path: 'knowledge-base',
|
||||
name: 'KnowledgeBase',
|
||||
component: () => import('@/views/alkaid/KnowledgeBase.vue')
|
||||
},
|
||||
{
|
||||
path: 'long-term-memory',
|
||||
name: 'LongTermMemory',
|
||||
component: () => import('@/views/alkaid/LongTermMemory.vue')
|
||||
},
|
||||
{
|
||||
path: 'other',
|
||||
name: 'OtherFeatures',
|
||||
component: () => import('@/views/alkaid/Other.vue')
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
name: 'Chat',
|
||||
|
||||
Reference in New Issue
Block a user