From 4b7b80aa2d30b1119a864e205511f50a40c016d2 Mon Sep 17 00:00:00 2001 From: hrz <1710360675@qq.com> Date: Sun, 9 Nov 2025 00:13:24 +0800 Subject: [PATCH] =?UTF-8?q?update:=E5=90=8C=E5=90=8D=E7=9F=A5=E8=AF=86?= =?UTF-8?q?=E5=BA=93=E9=94=99=E8=AF=AF=E6=8F=90=E7=A4=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../xiaozhi/common/exception/ErrorCode.java | 1 + .../impl/KnowledgeBaseServiceImpl.java | 41 ++- .../main/resources/i18n/messages.properties | 341 +++++++++--------- .../resources/i18n/messages_en_US.properties | 3 +- .../resources/i18n/messages_zh_CN.properties | 3 +- .../resources/i18n/messages_zh_TW.properties | 1 + 6 files changed, 215 insertions(+), 175 deletions(-) diff --git a/main/manager-api/src/main/java/xiaozhi/common/exception/ErrorCode.java b/main/manager-api/src/main/java/xiaozhi/common/exception/ErrorCode.java index 976f022c..b8525e63 100644 --- a/main/manager-api/src/main/java/xiaozhi/common/exception/ErrorCode.java +++ b/main/manager-api/src/main/java/xiaozhi/common/exception/ErrorCode.java @@ -208,4 +208,5 @@ public interface ErrorCode { int RAG_API_ERROR = 10167; // RAG配置缺少必要参数 int UPLOAD_FILE_ERROR = 10168; // 上传文件失败 int NO_PERMISSION = 10169; // 没有权限 + int KNOWLEDGE_BASE_NAME_EXISTS = 10170; // 同名知识库已存在 } diff --git a/main/manager-api/src/main/java/xiaozhi/modules/knowledge/service/impl/KnowledgeBaseServiceImpl.java b/main/manager-api/src/main/java/xiaozhi/modules/knowledge/service/impl/KnowledgeBaseServiceImpl.java index d0f5cd8d..24fbd19d 100644 --- a/main/manager-api/src/main/java/xiaozhi/modules/knowledge/service/impl/KnowledgeBaseServiceImpl.java +++ b/main/manager-api/src/main/java/xiaozhi/modules/knowledge/service/impl/KnowledgeBaseServiceImpl.java @@ -30,6 +30,7 @@ import xiaozhi.common.redis.RedisKeys; import xiaozhi.common.redis.RedisUtils; import xiaozhi.common.service.impl.BaseServiceImpl; import xiaozhi.common.utils.ConvertUtils; +import xiaozhi.common.utils.MessageUtils; import xiaozhi.modules.knowledge.dao.KnowledgeBaseDao; import xiaozhi.modules.knowledge.dto.KnowledgeBaseDTO; import xiaozhi.modules.knowledge.entity.KnowledgeBaseEntity; @@ -37,6 +38,7 @@ import xiaozhi.modules.knowledge.service.KnowledgeBaseService; import xiaozhi.modules.model.dao.ModelConfigDao; import xiaozhi.modules.model.entity.ModelConfigEntity; import xiaozhi.modules.model.service.ModelConfigService; +import xiaozhi.modules.security.user.SecurityUser; @Service @AllArgsConstructor @@ -135,6 +137,9 @@ public class KnowledgeBaseServiceImpl extends BaseServiceImpl requestBody = new HashMap<>(); - requestBody.put("name", name); + String username = SecurityUser.getUser().getUsername(); + requestBody.put("name", username + "_" + name); if (StringUtils.isNotBlank(description)) { requestBody.put("description", description); } @@ -525,11 +534,11 @@ public class KnowledgeBaseServiceImpl extends BaseServiceImpl requestBody = new HashMap<>(); requestBody.put("dataset_id", datasetId); - requestBody.put("name", name); + String username = SecurityUser.getUser().getUsername(); + requestBody.put("name", username + "_" + name); if (StringUtils.isNotBlank(description)) { requestBody.put("description", description); } @@ -646,6 +655,32 @@ public class KnowledgeBaseServiceImpl extends BaseServiceImpl queryWrapper = new QueryWrapper() + .eq("name", knowledgeBaseDTO.getName()) + .eq("creator", currentUserId); + + // 如果提供了排除ID,则排除该记录 + if (StringUtils.isNotBlank(excludeId)) { + queryWrapper.ne("id", excludeId); + } + + long count = knowledgeBaseDao.selectCount(queryWrapper); + if (count > 0) { + throw new RenException(ErrorCode.KNOWLEDGE_BASE_NAME_EXISTS, + MessageUtils.getMessage(ErrorCode.KNOWLEDGE_BASE_NAME_EXISTS)); + } + } + } + /** * 从RAGFlow API获取知识库的文档数量 */ diff --git a/main/manager-api/src/main/resources/i18n/messages.properties b/main/manager-api/src/main/resources/i18n/messages.properties index f5a68ac1..d2c02815 100644 --- a/main/manager-api/src/main/resources/i18n/messages.properties +++ b/main/manager-api/src/main/resources/i18n/messages.properties @@ -1,178 +1,179 @@ -#简体中文 -500=服务器内部异常 -401=未授权 -403=拒绝访问,没有权限 +#\u7B80\u4F53\u4E2D\u6587 +500=\u670D\u52A1\u5668\u5185\u90E8\u5F02\u5E38 +401=\u672A\u6388\u6743 +403=\u62D2\u7EDD\u8BBF\u95EE\uFF0C\u6CA1\u6709\u6743\u9650 -10001={0}不能为空 -10002=数据库中已存在该记录 -10003=获取参数失败 -10004=账号或密码错误 -10005=账号已被停用 -10006=唯一标识不能为空 -10007=验证码不正确 -10008=先删除子菜单或按钮 -10009=原密码不正确 -10010=账号或密码不正确,您还有可以尝试{0}次 +10001={0}\u4E0D\u80FD\u4E3A\u7A7A +10002=\u6570\u636E\u5E93\u4E2D\u5DF2\u5B58\u5728\u8BE5\u8BB0\u5F55 +10003=\u83B7\u53D6\u53C2\u6570\u5931\u8D25 +10004=\u8D26\u53F7\u6216\u5BC6\u7801\u9519\u8BEF +10005=\u8D26\u53F7\u5DF2\u88AB\u505C\u7528 +10006=\u552F\u4E00\u6807\u8BC6\u4E0D\u80FD\u4E3A\u7A7A +10007=\u9A8C\u8BC1\u7801\u4E0D\u6B63\u786E +10008=\u5148\u5220\u9664\u5B50\u83DC\u5355\u6216\u6309\u94AE +10009=\u539F\u5BC6\u7801\u4E0D\u6B63\u786E +10010=\u8D26\u53F7\u6216\u5BC6\u7801\u4E0D\u6B63\u786E,\u60A8\u8FD8\u6709\u53EF\u4EE5\u5C1D\u8BD5{0}\u6B21 -10011=上级部门选择错误 -10012=上级菜单不能为自身 -10013=数据权限接口,只能是Map类型参数 -10014=请先删除下级部门 -10015=请先删除部门下的用户 -10016=部署失败,没有流程 -10017=模型图不正确,请检查 -10018=导出失败,模型ID为{0} +10011=\u4E0A\u7EA7\u90E8\u95E8\u9009\u62E9\u9519\u8BEF +10012=\u4E0A\u7EA7\u83DC\u5355\u4E0D\u80FD\u4E3A\u81EA\u8EAB +10013=\u6570\u636E\u6743\u9650\u63A5\u53E3\uFF0C\u53EA\u80FD\u662FMap\u7C7B\u578B\u53C2\u6570 +10014=\u8BF7\u5148\u5220\u9664\u4E0B\u7EA7\u90E8\u95E8 +10015=\u8BF7\u5148\u5220\u9664\u90E8\u95E8\u4E0B\u7684\u7528\u6237 +10016=\u90E8\u7F72\u5931\u8D25\uFF0C\u6CA1\u6709\u6D41\u7A0B +10017=\u6A21\u578B\u56FE\u4E0D\u6B63\u786E\uFF0C\u8BF7\u68C0\u67E5 +10018=\u5BFC\u51FA\u5931\u8D25\uFF0C\u6A21\u578BID\u4E3A{0} -10019=请上传文件 -10020=token不能为空 -10021=token失效,请重新登录 -10022=账号已被锁定 -10023=请上传zip、bar、bpmn、bpmn20.xml格式文件 +10019=\u8BF7\u4E0A\u4F20\u6587\u4EF6 +10020=token\u4E0D\u80FD\u4E3A\u7A7A +10021=token\u5931\u6548\uFF0C\u8BF7\u91CD\u65B0\u767B\u5F55 +10022=\u8D26\u53F7\u5DF2\u88AB\u9501\u5B9A +10023=\u8BF7\u4E0A\u4F20zip\u3001bar\u3001bpmn\u3001bpmn20.xml\u683C\u5F0F\u6587\u4EF6 -10024=上传文件失败{0} -10025=发送短信失败{0} -10026=邮件模板不存在 +10024=\u4E0A\u4F20\u6587\u4EF6\u5931\u8D25{0} +10025=\u53D1\u9001\u77ED\u4FE1\u5931\u8D25{0} +10026=\u90AE\u4EF6\u6A21\u677F\u4E0D\u5B58\u5728 -10027=Redis服务异常 -10028=定时任务失败 -10029=不能包含非法字符 -10030=密码长度不足{0}位 -10031=密码必须同时包含数字、大小写字母和特殊字符组成 -10032=删除本数据异常 -10033=设备验证码错误 +10027=Redis\u670D\u52A1\u5F02\u5E38 +10028=\u5B9A\u65F6\u4EFB\u52A1\u5931\u8D25 +10029=\u4E0D\u80FD\u5305\u542B\u975E\u6CD5\u5B57\u7B26 +10030=\u5BC6\u7801\u957F\u5EA6\u4E0D\u8DB3{0}\u4F4D +10031=\u5BC6\u7801\u5FC5\u987B\u540C\u65F6\u5305\u542B\u6570\u5B57\u3001\u5927\u5C0F\u5199\u5B57\u6BCD\u548C\u7279\u6B8A\u5B57\u7B26\u7EC4\u6210 +10032=\u5220\u9664\u672C\u6570\u636E\u5F02\u5E38 +10033=\u8BBE\u5907\u9A8C\u8BC1\u7801\u9519\u8BEF -10034=参数值不能为空 -10035=参数类型不能为空 -10036=不支持的参数类型 -10037=参数值必须是有效的数字 -10038=参数值必须是true或false -10039=参数值必须是有效的JSON数组格式 -10040=参数值必须是有效的JSON格式 +10034=\u53C2\u6570\u503C\u4E0D\u80FD\u4E3A\u7A7A +10035=\u53C2\u6570\u7C7B\u578B\u4E0D\u80FD\u4E3A\u7A7A +10036=\u4E0D\u652F\u6301\u7684\u53C2\u6570\u7C7B\u578B +10037=\u53C2\u6570\u503C\u5FC5\u987B\u662F\u6709\u6548\u7684\u6570\u5B57 +10038=\u53C2\u6570\u503C\u5FC5\u987B\u662Ftrue\u6216false +10039=\u53C2\u6570\u503C\u5FC5\u987B\u662F\u6709\u6548\u7684JSON\u6570\u7EC4\u683C\u5F0F +10040=\u53C2\u6570\u503C\u5FC5\u987B\u662F\u6709\u6548\u7684JSON\u683C\u5F0F -10041=设备未找到 +10041=\u8BBE\u5907\u672A\u627E\u5230 10042={0} -10043=删除数据失败 -10044=用户未登录 -10045=WebSocket连接失败或连接超时 -10046=保存声纹错误,请联系管理员 -10047=每日发送次数已达上限 -10048=旧密码输入错误 -10049=设置的LLM不是openai和ollama -10050=token生成失败 -10051=资源不存在 -10052=默认智能体未找到 -10053=智能体未找到 -10054=声纹接口未配置,请先在参数配置中配置声纹接口地址(server.voice_print) -10055=短信发送失败 -10056=短信连接建立失败 -10057=智能体的声纹创建失败 -10058=智能体的对应声纹更新失败 -10059=智能体的对应声纹删除失败 -10060=发送太频繁,请{0}秒后再试 -10061=激活码不能为空 -10062=激活码错误 -10063=设备已激活 -10064=该模型为默认模型,请先设置其他模型为默认模型 -10065=新增数据失败 -10066=修改数据失败 -10067=图形验证码错误 -10068=没有开启手机注册,没法使用短信验证码功能 -10069=用户名不是手机号码,请重新输入 -10070=此手机号码已经注册过 -10071=输入的手机号码未注册 -10072=当前不允许普通用户注册 -10073=没有开启手机注册,没法使用找回密码功能 -10074=输入的手机号码格式不正确 -10075=输入的手机验证码错误 -10076=字典类型不存在 -10077=字典类型编码重复 -10078=读取资源失败 -10079=LLM大模型和Intent意图识别,选择参数不匹配 -10080=此声音声纹对应的人({0})已经注册,请选择其他声音注册 -10081=删除声纹出现错误 -10082=此次修改不允许,此声音已经注册为声纹了({0}) -10083=修改声纹错误,请联系管理员 -10084=声纹接口地址存在错误,请进入参数管理修改声纹接口地址 -10085=音频数据不属于这个智能体 -10086=音频数据是空的请检查上传数据 -10087=声纹保存失败,请求不成功 -10088=声纹保存失败,请求处理失败 -10089=声纹注销失败,请求不成功 -10090=声纹注销失败,请求处理失败 -10091=供应器不存在 -10092=设置的LLM不存在 -10093=该模型配置已被智能体{0}引用,无法删除 -10094=该LLM模型已被意图识别配置引用,无法删除 -10095=无效服务端操作 -10096=未配置服务端WebSocket地址 -10097=目标WebSocket地址不存在 -10098=WebSocket地址列表不能为空 -10099=WebSocket地址不能使用localhost或127.0.0.1 -10100=WebSocket地址格式不正确 -10101=WebSocket连接测试失败 -10102=OTA地址不能为空 -10103=OTA地址不能使用localhost或127.0.0.1 -10104=OTA地址必须以http或https开头 -10105=OTA地址必须以/ota/结尾 -10106=OTA接口访问失败 -10107=OTA接口返回内容格式不正确 -10108=OTA接口验证失败 -10109=MCP地址不能为空 -10110=MCP地址不能使用localhost或127.0.0.1 -10111=不是正确的MCP地址 -10112=MCP接口访问失败 -10113=MCP接口返回内容格式不正确 -10114=MCP接口验证失败 -10115=声纹接口地址不能为空 -10116=声纹接口地址不能使用localhost或127.0.0.1 -10117=不是正确的声纹接口地址 -10118=声纹接口地址必须以http或https开头 -10119=声纹接口访问失败 -10120=声纹接口返回内容格式不正确 -10121=声纹接口验证失败 -10122=mqtt密钥不能为空 -10123=您的mqtt密钥长度不安全,字符数需要至少8个字符且必须同时包含大小写字母 -10124=您的mqtt密钥长度不安全,mqtt密钥必须同时包含大小写字母 -10125=您的mqtt密钥包含弱密码 -10128=字典标签重复 -10129=SM2密钥未配置 -10130=SM2解密失败 -10131=modelType和provideCode不能为空 -10132=没有权限查看该智能体的聊天记录 -10133=会话ID不能为空 -10134=智能体ID不能为空 -10135=聊天记录下载失败 -10136=下载链接已过期或无效 -10137=下载链接无效 -10138=用户 -10139=智体 -10140=音频文件不能为空 -10141=只支持音频文件 -10142=音频文件大小不能超过10MB -10143=上传失败 -10144=声音克隆记录不存在 -10145=音色资源信息不能为空 -10146=平台名称不能为空 -10147=音色ID不能为空 -10148=归属账号不能为空 -10149=删除的音色资源ID不能为空 -10150=您没有权限操作该记录 -10151=请先上传音频文件 -10152=模型配置未找到 -10153=模型类型未找到 -10154=训练失败 -10155=火山引擎缺少配置 -10156=响应格式错误,缺少BaseResp字段 -10157=请求失败 -10158=请求失败,状态码{0} -10159=音色ID已存在 -10160=火山引擎音色ID格式错误,必须以S_开头 -10161=Mac地址已存在 -10162=模型供应器不存在 -10163=知识库记录不存在 -10164=RAG配置未找到 -10165=RAG配置类型错误 -10166=默认RAG配置未找到 -10167=RAG接口错误,{0} -10168=上传文件失败 -10169=您没有权限操作该记录 \ No newline at end of file +10043=\u5220\u9664\u6570\u636E\u5931\u8D25 +10044=\u7528\u6237\u672A\u767B\u5F55 +10045=WebSocket\u8FDE\u63A5\u5931\u8D25\u6216\u8FDE\u63A5\u8D85\u65F6 +10046=\u4FDD\u5B58\u58F0\u7EB9\u9519\u8BEF\uFF0C\u8BF7\u8054\u7CFB\u7BA1\u7406\u5458 +10047=\u6BCF\u65E5\u53D1\u9001\u6B21\u6570\u5DF2\u8FBE\u4E0A\u9650 +10048=\u65E7\u5BC6\u7801\u8F93\u5165\u9519\u8BEF +10049=\u8BBE\u7F6E\u7684LLM\u4E0D\u662Fopenai\u548Collama +10050=token\u751F\u6210\u5931\u8D25 +10051=\u8D44\u6E90\u4E0D\u5B58\u5728 +10052=\u9ED8\u8BA4\u667A\u80FD\u4F53\u672A\u627E\u5230 +10053=\u667A\u80FD\u4F53\u672A\u627E\u5230 +10054=\u58F0\u7EB9\u63A5\u53E3\u672A\u914D\u7F6E\uFF0C\u8BF7\u5148\u5728\u53C2\u6570\u914D\u7F6E\u4E2D\u914D\u7F6E\u58F0\u7EB9\u63A5\u53E3\u5730\u5740(server.voice_print) +10055=\u77ED\u4FE1\u53D1\u9001\u5931\u8D25 +10056=\u77ED\u4FE1\u8FDE\u63A5\u5EFA\u7ACB\u5931\u8D25 +10057=\u667A\u80FD\u4F53\u7684\u58F0\u7EB9\u521B\u5EFA\u5931\u8D25 +10058=\u667A\u80FD\u4F53\u7684\u5BF9\u5E94\u58F0\u7EB9\u66F4\u65B0\u5931\u8D25 +10059=\u667A\u80FD\u4F53\u7684\u5BF9\u5E94\u58F0\u7EB9\u5220\u9664\u5931\u8D25 +10060=\u53D1\u9001\u592A\u9891\u7E41\uFF0C\u8BF7{0}\u79D2\u540E\u518D\u8BD5 +10061=\u6FC0\u6D3B\u7801\u4E0D\u80FD\u4E3A\u7A7A +10062=\u6FC0\u6D3B\u7801\u9519\u8BEF +10063=\u8BBE\u5907\u5DF2\u6FC0\u6D3B +10064=\u8BE5\u6A21\u578B\u4E3A\u9ED8\u8BA4\u6A21\u578B\uFF0C\u8BF7\u5148\u8BBE\u7F6E\u5176\u4ED6\u6A21\u578B\u4E3A\u9ED8\u8BA4\u6A21\u578B +10065=\u65B0\u589E\u6570\u636E\u5931\u8D25 +10066=\u4FEE\u6539\u6570\u636E\u5931\u8D25 +10067=\u56FE\u5F62\u9A8C\u8BC1\u7801\u9519\u8BEF +10068=\u6CA1\u6709\u5F00\u542F\u624B\u673A\u6CE8\u518C\uFF0C\u6CA1\u6CD5\u4F7F\u7528\u77ED\u4FE1\u9A8C\u8BC1\u7801\u529F\u80FD +10069=\u7528\u6237\u540D\u4E0D\u662F\u624B\u673A\u53F7\u7801\uFF0C\u8BF7\u91CD\u65B0\u8F93\u5165 +10070=\u6B64\u624B\u673A\u53F7\u7801\u5DF2\u7ECF\u6CE8\u518C\u8FC7 +10071=\u8F93\u5165\u7684\u624B\u673A\u53F7\u7801\u672A\u6CE8\u518C +10072=\u5F53\u524D\u4E0D\u5141\u8BB8\u666E\u901A\u7528\u6237\u6CE8\u518C +10073=\u6CA1\u6709\u5F00\u542F\u624B\u673A\u6CE8\u518C\uFF0C\u6CA1\u6CD5\u4F7F\u7528\u627E\u56DE\u5BC6\u7801\u529F\u80FD +10074=\u8F93\u5165\u7684\u624B\u673A\u53F7\u7801\u683C\u5F0F\u4E0D\u6B63\u786E +10075=\u8F93\u5165\u7684\u624B\u673A\u9A8C\u8BC1\u7801\u9519\u8BEF +10076=\u5B57\u5178\u7C7B\u578B\u4E0D\u5B58\u5728 +10077=\u5B57\u5178\u7C7B\u578B\u7F16\u7801\u91CD\u590D +10078=\u8BFB\u53D6\u8D44\u6E90\u5931\u8D25 +10079=LLM\u5927\u6A21\u578B\u548CIntent\u610F\u56FE\u8BC6\u522B\uFF0C\u9009\u62E9\u53C2\u6570\u4E0D\u5339\u914D +10080=\u6B64\u58F0\u97F3\u58F0\u7EB9\u5BF9\u5E94\u7684\u4EBA\uFF08{0}\uFF09\u5DF2\u7ECF\u6CE8\u518C\uFF0C\u8BF7\u9009\u62E9\u5176\u4ED6\u58F0\u97F3\u6CE8\u518C +10081=\u5220\u9664\u58F0\u7EB9\u51FA\u73B0\u9519\u8BEF +10082=\u6B64\u6B21\u4FEE\u6539\u4E0D\u5141\u8BB8\uFF0C\u6B64\u58F0\u97F3\u5DF2\u7ECF\u6CE8\u518C\u4E3A\u58F0\u7EB9\u4E86\uFF08{0}\uFF09 +10083=\u4FEE\u6539\u58F0\u7EB9\u9519\u8BEF\uFF0C\u8BF7\u8054\u7CFB\u7BA1\u7406\u5458 +10084=\u58F0\u7EB9\u63A5\u53E3\u5730\u5740\u5B58\u5728\u9519\u8BEF\uFF0C\u8BF7\u8FDB\u5165\u53C2\u6570\u7BA1\u7406\u4FEE\u6539\u58F0\u7EB9\u63A5\u53E3\u5730\u5740 +10085=\u97F3\u9891\u6570\u636E\u4E0D\u5C5E\u4E8E\u8FD9\u4E2A\u667A\u80FD\u4F53 +10086=\u97F3\u9891\u6570\u636E\u662F\u7A7A\u7684\u8BF7\u68C0\u67E5\u4E0A\u4F20\u6570\u636E +10087=\u58F0\u7EB9\u4FDD\u5B58\u5931\u8D25\uFF0C\u8BF7\u6C42\u4E0D\u6210\u529F +10088=\u58F0\u7EB9\u4FDD\u5B58\u5931\u8D25\uFF0C\u8BF7\u6C42\u5904\u7406\u5931\u8D25 +10089=\u58F0\u7EB9\u6CE8\u9500\u5931\u8D25\uFF0C\u8BF7\u6C42\u4E0D\u6210\u529F +10090=\u58F0\u7EB9\u6CE8\u9500\u5931\u8D25\uFF0C\u8BF7\u6C42\u5904\u7406\u5931\u8D25 +10091=\u4F9B\u5E94\u5668\u4E0D\u5B58\u5728 +10092=\u8BBE\u7F6E\u7684LLM\u4E0D\u5B58\u5728 +10093=\u8BE5\u6A21\u578B\u914D\u7F6E\u5DF2\u88AB\u667A\u80FD\u4F53{0}\u5F15\u7528\uFF0C\u65E0\u6CD5\u5220\u9664 +10094=\u8BE5LLM\u6A21\u578B\u5DF2\u88AB\u610F\u56FE\u8BC6\u522B\u914D\u7F6E\u5F15\u7528\uFF0C\u65E0\u6CD5\u5220\u9664 +10095=\u65E0\u6548\u670D\u52A1\u7AEF\u64CD\u4F5C +10096=\u672A\u914D\u7F6E\u670D\u52A1\u7AEFWebSocket\u5730\u5740 +10097=\u76EE\u6807WebSocket\u5730\u5740\u4E0D\u5B58\u5728 +10098=WebSocket\u5730\u5740\u5217\u8868\u4E0D\u80FD\u4E3A\u7A7A +10099=WebSocket\u5730\u5740\u4E0D\u80FD\u4F7F\u7528localhost\u6216127.0.0.1 +10100=WebSocket\u5730\u5740\u683C\u5F0F\u4E0D\u6B63\u786E +10101=WebSocket\u8FDE\u63A5\u6D4B\u8BD5\u5931\u8D25 +10102=OTA\u5730\u5740\u4E0D\u80FD\u4E3A\u7A7A +10103=OTA\u5730\u5740\u4E0D\u80FD\u4F7F\u7528localhost\u6216127.0.0.1 +10104=OTA\u5730\u5740\u5FC5\u987B\u4EE5http\u6216https\u5F00\u5934 +10105=OTA\u5730\u5740\u5FC5\u987B\u4EE5/ota/\u7ED3\u5C3E +10106=OTA\u63A5\u53E3\u8BBF\u95EE\u5931\u8D25 +10107=OTA\u63A5\u53E3\u8FD4\u56DE\u5185\u5BB9\u683C\u5F0F\u4E0D\u6B63\u786E +10108=OTA\u63A5\u53E3\u9A8C\u8BC1\u5931\u8D25 +10109=MCP\u5730\u5740\u4E0D\u80FD\u4E3A\u7A7A +10110=MCP\u5730\u5740\u4E0D\u80FD\u4F7F\u7528localhost\u6216127.0.0.1 +10111=\u4E0D\u662F\u6B63\u786E\u7684MCP\u5730\u5740 +10112=MCP\u63A5\u53E3\u8BBF\u95EE\u5931\u8D25 +10113=MCP\u63A5\u53E3\u8FD4\u56DE\u5185\u5BB9\u683C\u5F0F\u4E0D\u6B63\u786E +10114=MCP\u63A5\u53E3\u9A8C\u8BC1\u5931\u8D25 +10115=\u58F0\u7EB9\u63A5\u53E3\u5730\u5740\u4E0D\u80FD\u4E3A\u7A7A +10116=\u58F0\u7EB9\u63A5\u53E3\u5730\u5740\u4E0D\u80FD\u4F7F\u7528localhost\u6216127.0.0.1 +10117=\u4E0D\u662F\u6B63\u786E\u7684\u58F0\u7EB9\u63A5\u53E3\u5730\u5740 +10118=\u58F0\u7EB9\u63A5\u53E3\u5730\u5740\u5FC5\u987B\u4EE5http\u6216https\u5F00\u5934 +10119=\u58F0\u7EB9\u63A5\u53E3\u8BBF\u95EE\u5931\u8D25 +10120=\u58F0\u7EB9\u63A5\u53E3\u8FD4\u56DE\u5185\u5BB9\u683C\u5F0F\u4E0D\u6B63\u786E +10121=\u58F0\u7EB9\u63A5\u53E3\u9A8C\u8BC1\u5931\u8D25 +10122=mqtt\u5BC6\u94A5\u4E0D\u80FD\u4E3A\u7A7A +10123=\u60A8\u7684mqtt\u5BC6\u94A5\u957F\u5EA6\u4E0D\u5B89\u5168\uFF0C\u5B57\u7B26\u6570\u9700\u8981\u81F3\u5C118\u4E2A\u5B57\u7B26\u4E14\u5FC5\u987B\u540C\u65F6\u5305\u542B\u5927\u5C0F\u5199\u5B57\u6BCD +10124=\u60A8\u7684mqtt\u5BC6\u94A5\u957F\u5EA6\u4E0D\u5B89\u5168\uFF0Cmqtt\u5BC6\u94A5\u5FC5\u987B\u540C\u65F6\u5305\u542B\u5927\u5C0F\u5199\u5B57\u6BCD +10125=\u60A8\u7684mqtt\u5BC6\u94A5\u5305\u542B\u5F31\u5BC6\u7801 +10128=\u5B57\u5178\u6807\u7B7E\u91CD\u590D +10129=SM2\u5BC6\u94A5\u672A\u914D\u7F6E +10130=SM2\u89E3\u5BC6\u5931\u8D25 +10131=modelType\u548CprovideCode\u4E0D\u80FD\u4E3A\u7A7A +10132=\u6CA1\u6709\u6743\u9650\u67E5\u770B\u8BE5\u667A\u80FD\u4F53\u7684\u804A\u5929\u8BB0\u5F55 +10133=\u4F1A\u8BDDID\u4E0D\u80FD\u4E3A\u7A7A +10134=\u667A\u80FD\u4F53ID\u4E0D\u80FD\u4E3A\u7A7A +10135=\u804A\u5929\u8BB0\u5F55\u4E0B\u8F7D\u5931\u8D25 +10136=\u4E0B\u8F7D\u94FE\u63A5\u5DF2\u8FC7\u671F\u6216\u65E0\u6548 +10137=\u4E0B\u8F7D\u94FE\u63A5\u65E0\u6548 +10138=\u7528\u6237 +10139=\u667A\u4F53 +10140=\u97F3\u9891\u6587\u4EF6\u4E0D\u80FD\u4E3A\u7A7A +10141=\u53EA\u652F\u6301\u97F3\u9891\u6587\u4EF6 +10142=\u97F3\u9891\u6587\u4EF6\u5927\u5C0F\u4E0D\u80FD\u8D85\u8FC710MB +10143=\u4E0A\u4F20\u5931\u8D25 +10144=\u58F0\u97F3\u514B\u9686\u8BB0\u5F55\u4E0D\u5B58\u5728 +10145=\u97F3\u8272\u8D44\u6E90\u4FE1\u606F\u4E0D\u80FD\u4E3A\u7A7A +10146=\u5E73\u53F0\u540D\u79F0\u4E0D\u80FD\u4E3A\u7A7A +10147=\u97F3\u8272ID\u4E0D\u80FD\u4E3A\u7A7A +10148=\u5F52\u5C5E\u8D26\u53F7\u4E0D\u80FD\u4E3A\u7A7A +10149=\u5220\u9664\u7684\u97F3\u8272\u8D44\u6E90ID\u4E0D\u80FD\u4E3A\u7A7A +10150=\u60A8\u6CA1\u6709\u6743\u9650\u64CD\u4F5C\u8BE5\u8BB0\u5F55 +10151=\u8BF7\u5148\u4E0A\u4F20\u97F3\u9891\u6587\u4EF6 +10152=\u6A21\u578B\u914D\u7F6E\u672A\u627E\u5230 +10153=\u6A21\u578B\u7C7B\u578B\u672A\u627E\u5230 +10154=\u8BAD\u7EC3\u5931\u8D25 +10155=\u706B\u5C71\u5F15\u64CE\u7F3A\u5C11\u914D\u7F6E +10156=\u54CD\u5E94\u683C\u5F0F\u9519\u8BEF\uFF0C\u7F3A\u5C11BaseResp\u5B57\u6BB5 +10157=\u8BF7\u6C42\u5931\u8D25 +10158=\u8BF7\u6C42\u5931\u8D25\uFF0C\u72B6\u6001\u7801{0} +10159=\u97F3\u8272ID\u5DF2\u5B58\u5728 +10160=\u706B\u5C71\u5F15\u64CE\u97F3\u8272ID\u683C\u5F0F\u9519\u8BEF\uFF0C\u5FC5\u987B\u4EE5S_\u5F00\u5934 +10161=Mac\u5730\u5740\u5DF2\u5B58\u5728 +10162=\u6A21\u578B\u4F9B\u5E94\u5668\u4E0D\u5B58\u5728 +10163=\u77E5\u8BC6\u5E93\u8BB0\u5F55\u4E0D\u5B58\u5728 +10164=RAG\u914D\u7F6E\u672A\u627E\u5230 +10165=RAG\u914D\u7F6E\u7C7B\u578B\u9519\u8BEF +10166=\u9ED8\u8BA4RAG\u914D\u7F6E\u672A\u627E\u5230 +10167=RAG\u63A5\u53E3\u9519\u8BEF\uFF0C{0} +10168=\u4E0A\u4F20\u6587\u4EF6\u5931\u8D25 +10169=\u60A8\u6CA1\u6709\u6743\u9650\u64CD\u4F5C\u8BE5\u8BB0\u5F55 +10170=\u77E5\u8BC6\u5E93\u540D\u79F0\u91CD\u590D \ No newline at end of file diff --git a/main/manager-api/src/main/resources/i18n/messages_en_US.properties b/main/manager-api/src/main/resources/i18n/messages_en_US.properties index 52f44831..7610fd8a 100644 --- a/main/manager-api/src/main/resources/i18n/messages_en_US.properties +++ b/main/manager-api/src/main/resources/i18n/messages_en_US.properties @@ -175,4 +175,5 @@ 10166=Default RAG configuration not found 10167=RAG API interface error: {0} 10168=Upload file failed -10169=No permission to operate this knowledge base \ No newline at end of file +10169=No permission to operate this knowledge base +10170=Knowledge base name already exists \ No newline at end of file diff --git a/main/manager-api/src/main/resources/i18n/messages_zh_CN.properties b/main/manager-api/src/main/resources/i18n/messages_zh_CN.properties index e08e0da3..e72f34b7 100644 --- a/main/manager-api/src/main/resources/i18n/messages_zh_CN.properties +++ b/main/manager-api/src/main/resources/i18n/messages_zh_CN.properties @@ -175,4 +175,5 @@ 10166=\u9ED8\u8BA4RAG\u914D\u7F6E\u672A\u627E\u5230 10167=RAG\u63A5\u53E3\u9519\u8BEF\uFF0C{0} 10168=\u4E0A\u4F20\u6587\u4EF6\u5931\u8D25 -10169=\u60A8\u6CA1\u6709\u6743\u9650\u64CD\u4F5C\u8BE5\u8BB0\u5F55 \ No newline at end of file +10169=\u60A8\u6CA1\u6709\u6743\u9650\u64CD\u4F5C\u8BE5\u8BB0\u5F55 +10170=\u77E5\u8BC6\u5E93\u540D\u79F0\u91CD\u590D \ No newline at end of file diff --git a/main/manager-api/src/main/resources/i18n/messages_zh_TW.properties b/main/manager-api/src/main/resources/i18n/messages_zh_TW.properties index a7d86353..b5d118e3 100644 --- a/main/manager-api/src/main/resources/i18n/messages_zh_TW.properties +++ b/main/manager-api/src/main/resources/i18n/messages_zh_TW.properties @@ -176,3 +176,4 @@ 10167=RAG\u63A5\u53E3\u932F\u8AA4\uFF0C{0} 10168=\u4E0A\u50B3\u6587\u4EF6\u5931\u6557 10169=\u60A8\u6C92\u6709\u6B0A\u9650\u64CD\u4F5C\u8A72\u8A18\u9304 +10170=\u77E5\u8B58\u5EAB\u540D\u7A31\u91CD\u8907