feat: 实现知识库前端界面(中文国际化)

- 添加知识库 V2 完整中文翻译文件
- 包括:主页、文档管理、检索测试、全局设置、会话配置
- 在 Alkaid 导航中添加"原生知识库"入口
- 区分"原生知识库"和"知识库(插件)"两个入口
This commit is contained in:
lxfight
2025-10-19 18:42:43 +08:00
parent 99cf0a1522
commit 1266b4d086
6 changed files with 259 additions and 1 deletions
@@ -6,11 +6,13 @@
"title": "The Alkaid Project.",
"subtitle": "AstrBot Alpha 项目",
"navigation": {
"knowledgeBase": "知识库",
"knowledgeBaseV2": "原生知识库",
"knowledgeBase": "知识库 (插件)",
"longTermMemory": "长期记忆层",
"other": "..."
}
},
"knowledgeBaseV2": "原生知识库",
"features": {
"knowledgeBase": "知识库",
"longTermMemory": "长期记忆",
@@ -0,0 +1,49 @@
{
"stats": {
"totalDocuments": "总文档数",
"totalChunks": "总块数",
"totalMedia": "多媒体资源",
"totalSize": "总大小"
},
"actions": {
"upload": "上传文档",
"refresh": "刷新",
"view": "查看",
"delete": "删除"
},
"empty": {
"noDocuments": "暂无文档,点击上传按钮添加文档"
},
"upload": {
"title": "上传文档",
"dropzone": "拖放文件到这里或点击上传",
"supportedFormats": "支持格式: PDF, TXT, MD",
"selectedFiles": "已选择文件:",
"cancel": "取消",
"upload": "开始上传",
"uploading": "正在上传文件..."
},
"detail": {
"fileType": "文件类型",
"fileSize": "文件大小",
"chunks": "文档块",
"uploadedAt": "上传时间",
"noChunks": "暂无文档块",
"chunkIndex": "块 #{index}",
"characters": "字符"
},
"delete": {
"title": "确认删除",
"confirmText": "确定要删除文档 \"{name}\" 吗?",
"cancel": "取消",
"delete": "删除"
},
"messages": {
"loadError": "加载文档列表失败",
"uploadSuccess": "成功上传 {count} 个文档",
"uploadPartial": "上传完成: {success} 成功, {fail} 失败",
"deleteSuccess": "文档删除成功",
"deleteFailed": "删除失败",
"deleteError": "删除文档时出错"
}
}
@@ -0,0 +1,74 @@
{
"list": {
"title": "原生知识库",
"subtitle": "AstrBot 内置的知识库管理系统",
"create": "创建知识库",
"sessionConfig": "会话配置",
"refresh": "刷新",
"loading": "加载中...",
"documents": "文档",
"chunks": "块"
},
"empty": {
"title": "还没有知识库",
"subtitle": "创建第一个知识库来开始使用",
"create": "创建知识库"
},
"createDialog": {
"title": "创建知识库",
"nameLabel": "知识库名称",
"namePlaceholder": "输入知识库名称",
"descriptionLabel": "描述",
"descriptionPlaceholder": "知识库的简短描述...",
"embeddingModelLabel": "嵌入模型 (Embedding Model)",
"rerankModelLabel": "重排序模型 (Rerank Model)",
"providerInfo": "提供商 ID: {id} | 维度: {dimensions}",
"rerankProviderInfo": "提供商 ID: {id}",
"tips": "提示: 一旦选择了嵌入模型,请不要修改该提供商的模型或向量维度,否则将严重影响召回率。",
"cancel": "取消",
"create": "创建"
},
"editDialog": {
"title": "编辑知识库",
"save": "保存"
},
"deleteDialog": {
"title": "确认删除",
"confirmText": "确定要删除知识库 \"{name}\" 吗?",
"warning": "此操作不可逆,所有知识库内容将被永久删除。",
"cancel": "取消",
"delete": "删除"
},
"detailDialog": {
"tabs": {
"documents": "文档管理",
"search": "搜索测试",
"settings": "知识库设置"
}
},
"emojiPicker": {
"title": "选择表情",
"close": "关闭",
"categories": {
"books": "书籍和文档",
"emotions": "表情和情感",
"objects": "物品和工具",
"symbols": "符号和标记"
}
},
"sessionConfig": {
"title": "知识库会话配置"
},
"messages": {
"loadFailed": "加载知识库列表失败",
"loadError": "加载知识库列表时出错",
"nameRequired": "请输入知识库名称",
"createSuccess": "知识库创建成功",
"updateSuccess": "知识库更新成功",
"saveFailed": "保存失败",
"saveError": "保存时出错",
"deleteSuccess": "知识库删除成功",
"deleteFailed": "删除失败",
"deleteError": "删除时出错"
}
}
@@ -0,0 +1,21 @@
{
"search": {
"queryLabel": "搜索查询",
"queryPlaceholder": "输入搜索内容...",
"topKLabel": "返回结果数 (Top-K)",
"enableRerankLabel": "启用重排序",
"search": "搜索",
"searching": "正在搜索...",
"noResults": "没有找到匹配的内容",
"resultsTitle": "找到 {count} 条结果",
"searchTime": "搜索用时: {time}s",
"relevance": "相关度",
"chunkInfo": "块 #{index} | {chars} 字符"
},
"messages": {
"queryRequired": "请输入搜索内容",
"noResults": "没有找到匹配的内容",
"searchFailed": "搜索失败",
"searchError": "搜索时出错"
}
}
@@ -0,0 +1,68 @@
{
"info": {
"title": "什么是会话配置?",
"description": "会话配置允许您为不同的平台或会话指定使用的知识库,实现个性化的知识增强。",
"platformLevel": "平台级别:对整个平台生效(如所有QQ会话)",
"sessionLevel": "会话级别:对特定会话生效(如特定的QQ群)"
},
"list": {
"title": "配置列表",
"refresh": "刷新",
"add": "新增配置",
"noKB": "未配置知识库"
},
"scope": {
"platform": "平台级别",
"session": "会话级别"
},
"dialog": {
"addTitle": "新增会话配置",
"editTitle": "编辑会话配置",
"scopeLabel": "配置范围",
"platformIdLabel": "平台 ID",
"platformIdPlaceholder": "例如: qq, telegram, discord",
"platformIdHint": "平台标识符,如 qq、telegram 等",
"sessionIdLabel": "会话 ID",
"sessionIdPlaceholder": "例如: qq:group:123456",
"sessionIdHint": "会话标识符,格式: 平台:类型:ID",
"platformTooltip": "对整个平台的所有会话生效",
"sessionTooltip": "仅对指定的会话生效",
"kbLabel": "选择知识库",
"kbPlaceholder": "选择一个或多个知识库",
"kbHint": "可以选择多个知识库,检索时会合并搜索",
"advancedSettings": "高级设置(可选)",
"topKLabel": "返回结果数 (Top-K)",
"topKHint": "检索时返回的结果数量",
"enableRerankLabel": "启用重排序",
"cancel": "取消",
"save": "保存"
},
"empty": {
"noConfigs": "暂无配置,点击新增按钮创建第一个配置",
"createFirst": "创建第一个配置"
},
"delete": {
"title": "确认删除",
"confirmText": "确定要删除此配置吗?",
"warning": "删除后,该平台或会话将不再使用指定的知识库。",
"cancel": "取消",
"delete": "删除"
},
"actions": {
"edit": "编辑",
"delete": "删除"
},
"messages": {
"loadFailed": "加载配置列表失败",
"loadError": "加载配置时出错",
"scopeIdRequired": "请输入平台 ID 或会话 ID",
"kbIdsRequired": "请至少选择一个知识库",
"createSuccess": "配置创建成功",
"updateSuccess": "配置更新成功",
"saveFailed": "保存失败",
"saveError": "保存配置时出错",
"deleteSuccess": "配置删除成功",
"deleteFailed": "删除失败",
"deleteError": "删除配置时出错"
}
}
@@ -0,0 +1,44 @@
{
"basic": {
"title": "基本信息",
"nameLabel": "知识库名称",
"namePlaceholder": "输入知识库名称",
"descriptionLabel": "描述",
"descriptionPlaceholder": "知识库的简短描述..."
},
"models": {
"title": "模型配置",
"embeddingLabel": "嵌入模型",
"embeddingHint": "用于生成文档向量的模型",
"rerankLabel": "重排序模型",
"rerankHint": "用于优化检索结果排序的模型(可选)"
},
"chunking": {
"title": "分块参数",
"chunkSizeLabel": "块大小",
"chunkSizeHint": "每个文档块的字符数 (50-2000)",
"chunkOverlapLabel": "块重叠",
"chunkOverlapHint": "相邻块之间的重叠字符数 (0-块大小的一半)"
},
"retrieval": {
"title": "检索参数",
"topKDenseLabel": "密集检索 Top-K",
"topKDenseHint": "向量检索返回的结果数",
"topKSparseLabel": "稀疏检索 Top-K",
"topKSparseHint": "关键词检索返回的结果数",
"topMFinalLabel": "最终结果数 Top-M",
"topMFinalHint": "融合后返回的最终结果数",
"enableRerankLabel": "启用重排序"
},
"actions": {
"save": "保存设置"
},
"messages": {
"nameRequired": "请输入知识库名称",
"embeddingRequired": "请选择嵌入模型",
"saveSuccess": "设置保存成功",
"saveFailed": "保存失败",
"saveError": "保存设置时出错",
"loadProvidersError": "加载模型提供商失败"
}
}