dict.ts 92 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832
  1. export type Lang = "zh-CN" | "en";
  2. export type I18nKey =
  3. | "nav.features"
  4. | "nav.screenshots"
  5. | "nav.quickStart"
  6. | "nav.agentLogin"
  7. | "nav.menu"
  8. | "common.github"
  9. | "common.to"
  10. | "common.save"
  11. | "common.saving"
  12. | "common.restoreEnv"
  13. | "common.loading"
  14. | "common.search"
  15. | "common.prevPage"
  16. | "common.nextPage"
  17. | "common.copy"
  18. | "home.hero.tagline"
  19. | "home.hero.title"
  20. | "home.hero.subtitle"
  21. | "home.hero.cta.tryNow"
  22. | "home.hero.cta.agentLogin"
  23. | "home.hero.hint"
  24. | "home.stats.trustedBy"
  25. | "home.stats.clients"
  26. | "home.stats.conversations"
  27. | "home.stats.latency"
  28. | "home.stats.satisfaction"
  29. | "home.stats.val.clients"
  30. | "home.stats.val.conversations"
  31. | "home.stats.val.latency"
  32. | "home.stats.val.satisfaction"
  33. | "home.features.title"
  34. | "home.features.lead"
  35. | "home.cap.multimodel.title"
  36. | "home.cap.multimodel.desc"
  37. | "home.cap.kb.title"
  38. | "home.cap.kb.desc"
  39. | "home.cap.prompt.title"
  40. | "home.cap.prompt.desc"
  41. | "home.cap.human.title"
  42. | "home.cap.human.desc"
  43. | "home.cap.reports.title"
  44. | "home.cap.reports.desc"
  45. | "home.cap.logs.title"
  46. | "home.cap.logs.desc"
  47. | "home.screenshots.title"
  48. | "home.screenshots.lead"
  49. | "home.screenshots.prevAria"
  50. | "home.screenshots.nextAria"
  51. | "home.ss.dashboard.title"
  52. | "home.ss.dashboard.placeholder"
  53. | "home.ss.dashboard.alt"
  54. | "home.ss.visitor.title"
  55. | "home.ss.visitor.placeholder"
  56. | "home.ss.visitor.alt"
  57. | "home.ss.aiconfig.title"
  58. | "home.ss.aiconfig.placeholder"
  59. | "home.ss.aiconfig.alt"
  60. | "home.ss.users.title"
  61. | "home.ss.users.placeholder"
  62. | "home.ss.users.alt"
  63. | "home.ss.faq.title"
  64. | "home.ss.faq.placeholder"
  65. | "home.ss.faq.alt"
  66. | "home.ss.knowledge.title"
  67. | "home.ss.knowledge.placeholder"
  68. | "home.ss.knowledge.alt"
  69. | "home.ss.kbtest.title"
  70. | "home.ss.kbtest.placeholder"
  71. | "home.ss.kbtest.alt"
  72. | "home.ss.prompts.title"
  73. | "home.ss.prompts.placeholder"
  74. | "home.ss.prompts.alt"
  75. | "home.ss.logs.title"
  76. | "home.ss.logs.placeholder"
  77. | "home.ss.logs.alt"
  78. | "home.ss.analytics.title"
  79. | "home.ss.analytics.placeholder"
  80. | "home.ss.analytics.alt"
  81. | "home.quickStart.title"
  82. | "home.quickStart.lead"
  83. | "home.step1.title"
  84. | "home.step1.body"
  85. | "home.step2.title"
  86. | "home.step2.body"
  87. | "home.step3.title"
  88. | "home.step3.body"
  89. | "home.cta.title"
  90. | "home.cta.subtitle"
  91. | "home.cta.starRepo"
  92. | "home.cta.feedback"
  93. | "home.cta.mailSubject"
  94. | "home.cta.mailBody"
  95. | "footer.blurb"
  96. | "footer.column.product"
  97. | "footer.column.friendLinks"
  98. | "footer.column.contact"
  99. | "footer.noFriendLinks"
  100. | "footer.onlineChat"
  101. | "footer.openSourceLicense"
  102. | "footer.poweredBy"
  103. | "footer.allRightsReserved"
  104. | "footer.emailLabel"
  105. | "footer.qqGroup"
  106. | "footer.qqGroupAria"
  107. | "agent.page.dashboard"
  108. | "agent.page.internalChat"
  109. | "agent.page.knowledge"
  110. | "agent.page.faqs"
  111. | "agent.page.analytics"
  112. | "agent.page.logs"
  113. | "agent.page.users"
  114. | "agent.page.prompts"
  115. | "agent.page.settings"
  116. | "agent.profile"
  117. | "agent.logout"
  118. | "agent.chat.conversation"
  119. | "agent.chat.lastSeen"
  120. | "agent.chat.lastSeenUnknown"
  121. | "agent.chat.showAI"
  122. | "agent.chat.hideAI"
  123. | "agent.chat.closeConversation"
  124. | "agent.chat.refresh"
  125. | "agent.chat.soundOn"
  126. | "agent.chat.soundOff"
  127. | "agent.chat.toast.conversationClosed"
  128. | "agent.chat.toast.closeFailed"
  129. | "agent.chat.emptyPick"
  130. | "agent.layout.openNavMenu"
  131. | "agent.layout.openVisitorPanel"
  132. | "agent.internalChat.webSearchThisTurn"
  133. | "agent.internalChat.aiThinking"
  134. | "agent.internalChat.emptyHint"
  135. | "agent.internalChat.createFailed"
  136. | "agent.login.title"
  137. | "agent.login.subtitle"
  138. | "agent.login.username"
  139. | "agent.login.password"
  140. | "agent.login.submit"
  141. | "agent.login.submitting"
  142. | "agent.login.error.empty"
  143. | "agent.login.error.failed"
  144. | "agent.login.error.network"
  145. | "agent.login.demoHint"
  146. | "agent.logs.title"
  147. | "agent.logs.subtitle"
  148. | "agent.logs.policy.title"
  149. | "agent.logs.policy.desc"
  150. | "agent.logs.policy.current"
  151. | "agent.logs.policy.env"
  152. | "agent.logs.policy.overridden"
  153. | "agent.logs.level.all"
  154. | "agent.logs.category.all"
  155. | "agent.logs.source.all"
  156. | "agent.logs.event.placeholder"
  157. | "agent.logs.conversationId.placeholder"
  158. | "agent.logs.keyword.placeholder"
  159. | "agent.logs.table.time"
  160. | "agent.logs.table.level"
  161. | "agent.logs.table.category"
  162. | "agent.logs.table.event"
  163. | "agent.logs.table.conversation"
  164. | "agent.logs.table.source"
  165. | "agent.logs.table.message"
  166. | "agent.logs.paginationSummary"
  167. | "agent.logs.empty"
  168. | "agent.logs.detail.title"
  169. | "agent.logs.detail.time"
  170. | "agent.logs.detail.sourceEvent"
  171. | "agent.logs.detail.category"
  172. | "agent.logs.detail.traceId"
  173. | "agent.logs.detail.conversationId"
  174. | "agent.logs.detail.userVisitor"
  175. | "agent.logs.detail.message"
  176. | "agent.logs.detail.metaJson"
  177. | "agent.logs.detail.noMeta"
  178. | "agent.logs.toast.loadPolicyFailed"
  179. | "agent.logs.toast.loadLogsFailed"
  180. | "agent.logs.toast.savePolicyFailed"
  181. | "agent.logs.toast.restorePolicyFailed"
  182. | "agent.logs.toast.policySaved"
  183. | "agent.logs.toast.policyRestored"
  184. | "agent.logs.toast.messageCopied"
  185. | "agent.logs.toast.copyFailed"
  186. | "agent.conversationsPage.title"
  187. | "agent.conversationsPage.loading"
  188. | "agent.conversationsPage.empty"
  189. | "agent.conversationsPage.convLabel"
  190. | "agent.conversationsPage.visitorLabel"
  191. | "agent.conversationsPage.createdAt"
  192. | "agent.conversationsPage.updatedAt"
  193. | "agent.conversations.filter.all"
  194. | "agent.conversations.filter.mine"
  195. | "agent.conversations.filter.others"
  196. | "agent.conversations.status.open"
  197. | "agent.conversations.status.closed"
  198. | "agent.internalChat.title"
  199. | "agent.internalChat.new"
  200. | "agent.conversation.noMessage"
  201. | "agent.conversation.online"
  202. | "agent.conversation.visitor"
  203. | "agent.input.upload"
  204. | "agent.input.placeholder"
  205. | "agent.input.placeholder.withAttachment"
  206. | "agent.input.sending"
  207. | "agent.input.uploading"
  208. | "agent.input.send"
  209. | "agent.input.fileTooLarge"
  210. | "agent.input.fileTypeNotSupported"
  211. | "agent.input.uploadFailed"
  212. | "agent.aiSource.kb"
  213. | "agent.aiSource.llm"
  214. | "agent.aiSource.web"
  215. | "agent.common.back"
  216. | "agent.common.cancel"
  217. | "agent.common.create"
  218. | "agent.common.update"
  219. | "agent.common.delete"
  220. | "agent.common.edit"
  221. | "agent.common.keywordSearch"
  222. | "agent.common.noMatch"
  223. | "agent.common.none"
  224. | "agent.common.confirm"
  225. | "agent.faqs.title"
  226. | "agent.faqs.subtitle"
  227. | "agent.faqs.search.placeholder"
  228. | "agent.faqs.createButton"
  229. | "agent.faqs.empty"
  230. | "agent.faqs.empty.filtered"
  231. | "agent.faqs.dialog.createTitle"
  232. | "agent.faqs.dialog.editTitle"
  233. | "agent.faqs.dialog.deleteTitle"
  234. | "agent.faqs.form.question"
  235. | "agent.faqs.form.answer"
  236. | "agent.faqs.form.keywords"
  237. | "agent.faqs.form.keywordsHint"
  238. | "agent.faqs.toast.loadFailed"
  239. | "agent.faqs.toast.createFailed"
  240. | "agent.faqs.toast.updateFailed"
  241. | "agent.faqs.toast.deleteFailed"
  242. | "agent.faqs.toast.createSuccess"
  243. | "agent.faqs.toast.updateSuccess"
  244. | "agent.faqs.toast.deleteSuccess"
  245. | "agent.faqs.quickSearch.placeholder"
  246. | "agent.faqs.quickSearch.searching"
  247. | "agent.faqs.quickSearch.noResults"
  248. | "agent.faqs.quickSearch.startTyping"
  249. | "agent.faqs.toast.emptyRequired"
  250. | "agent.faqs.card.keywords"
  251. | "agent.faqs.card.createdAt"
  252. | "agent.faqs.card.edit"
  253. | "agent.faqs.dialog.createTitle2"
  254. | "agent.faqs.dialog.createDesc"
  255. | "agent.faqs.dialog.editDesc"
  256. | "agent.faqs.dialog.deleteConfirm"
  257. | "agent.faqs.form.placeholder.question"
  258. | "agent.faqs.form.placeholder.answer"
  259. | "agent.faqs.form.placeholder.keywords"
  260. | "agent.faqs.form.keywordsOptional"
  261. | "agent.faqs.form.keywordsTip"
  262. | "agent.faqs.submit.creating"
  263. | "agent.faqs.submit.deleting"
  264. | "agent.perm.analytics"
  265. | "agent.perm.chat"
  266. | "agent.perm.faqs"
  267. | "agent.perm.kb_test"
  268. | "agent.perm.knowledge"
  269. | "agent.perm.logs"
  270. | "agent.perm.prompts"
  271. | "agent.perm.settings"
  272. | "agent.perm.users"
  273. | "agent.settings.aiCard.titleAdd"
  274. | "agent.settings.aiCard.titleEdit"
  275. | "agent.settings.aiForm.active"
  276. | "agent.settings.aiForm.apiKey"
  277. | "agent.settings.aiForm.apiUrl"
  278. | "agent.settings.aiForm.apiUrlPh"
  279. | "agent.settings.aiForm.descPh"
  280. | "agent.settings.aiForm.description"
  281. | "agent.settings.aiForm.model"
  282. | "agent.settings.aiForm.modelType"
  283. | "agent.settings.aiForm.modelPh"
  284. | "agent.settings.aiForm.provider"
  285. | "agent.settings.aiForm.providerPh"
  286. | "agent.settings.aiForm.public"
  287. | "agent.settings.aiForm.submitCreate"
  288. | "agent.settings.aiForm.submitUpdate"
  289. | "agent.settings.aiForm.submitting"
  290. | "agent.settings.backDashboard"
  291. | "agent.settings.badge.active"
  292. | "agent.settings.badge.public"
  293. | "agent.settings.confirmDeleteConfig"
  294. | "agent.settings.embedding.apiKey"
  295. | "agent.settings.embedding.apiKeyKeepEmpty"
  296. | "agent.settings.embedding.apiKeyInput"
  297. | "agent.settings.embedding.apiUrl"
  298. | "agent.settings.embedding.apiUrlPh"
  299. | "agent.settings.embedding.bgeLocal"
  300. | "agent.settings.embedding.customerKb"
  301. | "agent.settings.embedding.lead"
  302. | "agent.settings.embedding.model"
  303. | "agent.settings.embedding.modelPh"
  304. | "agent.settings.embedding.openaiCompatible"
  305. | "agent.settings.embedding.save"
  306. | "agent.settings.embedding.title"
  307. | "agent.settings.embedding.type"
  308. | "agent.settings.error.delete"
  309. | "agent.settings.error.loadConfigs"
  310. | "agent.settings.error.loadEmbedding"
  311. | "agent.settings.error.operation"
  312. | "agent.settings.global.noReceiveAi"
  313. | "agent.settings.global.noReceiveAiHint"
  314. | "agent.settings.list.apiUrlLabel"
  315. | "agent.settings.list.descLabel"
  316. | "agent.settings.list.empty"
  317. | "agent.settings.list.modelTypeLabel"
  318. | "agent.settings.list.title"
  319. | "agent.settings.modelType.audio"
  320. | "agent.settings.modelType.image"
  321. | "agent.settings.modelType.text"
  322. | "agent.settings.modelType.video"
  323. | "agent.settings.section.global"
  324. | "agent.settings.autoClose.title"
  325. | "agent.settings.autoClose.lead"
  326. | "agent.settings.autoClose.daysLabel"
  327. | "agent.settings.autoClose.daysHint"
  328. | "agent.settings.autoClose.statusEffective"
  329. | "agent.settings.autoClose.statusEnv"
  330. | "agent.settings.autoClose.statusDb"
  331. | "agent.settings.autoClose.statusEnvOnly"
  332. | "agent.settings.autoClose.save"
  333. | "agent.settings.autoClose.resetEnv"
  334. | "agent.settings.autoClose.errorLoad"
  335. | "agent.settings.autoClose.errorInvalid"
  336. | "agent.settings.autoClose.toastSaved"
  337. | "agent.settings.autoClose.toastReset"
  338. | "agent.settings.offlineEmail.title"
  339. | "agent.settings.offlineEmail.lead"
  340. | "agent.settings.offlineEmail.enabled"
  341. | "agent.settings.offlineEmail.delayLabel"
  342. | "agent.settings.offlineEmail.delayHint"
  343. | "agent.settings.offlineEmail.smtpHost"
  344. | "agent.settings.offlineEmail.smtpPort"
  345. | "agent.settings.offlineEmail.smtpUser"
  346. | "agent.settings.offlineEmail.smtpPassword"
  347. | "agent.settings.offlineEmail.smtpPasswordKeepEmpty"
  348. | "agent.settings.offlineEmail.fromEmail"
  349. | "agent.settings.offlineEmail.fromName"
  350. | "agent.settings.offlineEmail.statusEffective"
  351. | "agent.settings.offlineEmail.statusEnv"
  352. | "agent.settings.offlineEmail.statusDb"
  353. | "agent.settings.offlineEmail.statusEnvOnly"
  354. | "agent.settings.offlineEmail.save"
  355. | "agent.settings.offlineEmail.resetEnv"
  356. | "agent.settings.offlineEmail.testTo"
  357. | "agent.settings.offlineEmail.testSend"
  358. | "agent.settings.offlineEmail.adminOnly"
  359. | "agent.settings.offlineEmail.errorLoad"
  360. | "agent.settings.offlineEmail.errorInvalidDelay"
  361. | "agent.settings.offlineEmail.toastSaved"
  362. | "agent.settings.offlineEmail.toastReset"
  363. | "agent.settings.offlineEmail.toastTestSent"
  364. | "agent.settings.offlineEmail.statusOn"
  365. | "agent.settings.offlineEmail.statusOff"
  366. | "agent.settings.subtitle"
  367. | "agent.settings.title"
  368. | "agent.settings.toast.embeddingSaved"
  369. | "agent.settings.toast.profileUpdateFailed"
  370. | "agent.settings.webSearch.lead"
  371. | "agent.settings.webSearch.mode"
  372. | "agent.settings.webSearch.modeCustom"
  373. | "agent.settings.webSearch.modeHint"
  374. | "agent.settings.webSearch.modeVendor"
  375. | "agent.settings.webSearch.save"
  376. | "agent.settings.webSearch.title"
  377. | "agent.settings.webSearch.visitorToggle"
  378. | "agent.users.card.edit"
  379. | "agent.users.card.password"
  380. | "agent.users.createButton"
  381. | "agent.users.dialog.createTitle"
  382. | "agent.users.dialog.deleteConfirm"
  383. | "agent.users.dialog.deleteNote"
  384. | "agent.users.dialog.deleteTitle"
  385. | "agent.users.dialog.editTitle"
  386. | "agent.users.dialog.passwordTitle"
  387. | "agent.users.empty"
  388. | "agent.users.empty.filtered"
  389. | "agent.users.field.createdAt"
  390. | "agent.users.field.email"
  391. | "agent.users.field.username"
  392. | "agent.users.form.email"
  393. | "agent.users.form.newPassword"
  394. | "agent.users.form.oldPassword"
  395. | "agent.users.form.password"
  396. | "agent.users.form.permissions"
  397. | "agent.users.form.permissionsHint"
  398. | "agent.users.form.role"
  399. | "agent.users.form.username"
  400. | "agent.users.placeholder.email"
  401. | "agent.users.placeholder.emailOptional"
  402. | "agent.users.placeholder.nickname"
  403. | "agent.users.placeholder.nicknameOptional"
  404. | "agent.users.placeholder.oldPassword"
  405. | "agent.users.placeholder.password"
  406. | "agent.users.placeholder.username"
  407. | "agent.users.receiveAiLabel"
  408. | "agent.users.role.admin"
  409. | "agent.users.role.agent"
  410. | "agent.users.search.placeholder"
  411. | "agent.users.submit.creating"
  412. | "agent.users.submit.deleting"
  413. | "agent.users.submit.updating"
  414. | "agent.users.title"
  415. | "agent.users.toast.adminDeleteDisabled"
  416. | "agent.users.toast.adminPasswordDisabled"
  417. | "agent.users.toast.createFailed"
  418. | "agent.users.toast.createSuccess"
  419. | "agent.users.toast.deleteFailed"
  420. | "agent.users.toast.deleteSuccess"
  421. | "agent.users.toast.deleteTransferred"
  422. | "agent.users.toast.loadFailed"
  423. | "agent.users.toast.newPasswordRequired"
  424. | "agent.users.toast.oldPasswordRequired"
  425. | "agent.users.toast.passwordFailed"
  426. | "agent.users.toast.passwordSuccess"
  427. | "agent.users.toast.updateFailed"
  428. | "agent.users.toast.updateSuccess"
  429. | "agent.users.toast.usernamePasswordRequired"
  430. | "agent.users.tooltip.adminDeleteDbOnly"
  431. | "agent.users.tooltip.adminPasswordDbOnly"
  432. | "agent.users.tooltip.cannotDeleteSelf"
  433. | "agent.users.usernameImmutableHint"
  434. | "agent.users.form.nickname"
  435. | "agent.knowledge.title"
  436. | "agent.knowledge.rag"
  437. | "agent.knowledge.kb.create"
  438. | "agent.knowledge.kb.empty"
  439. | "agent.knowledge.kb.selectOne"
  440. | "agent.knowledge.kb.docCount"
  441. | "agent.knowledge.import.url"
  442. | "agent.knowledge.import.file"
  443. | "agent.knowledge.import.tabFile"
  444. | "agent.knowledge.import.tabUrl"
  445. | "agent.knowledge.import.pickFiles"
  446. | "agent.knowledge.import.filesSelected"
  447. | "agent.knowledge.import.action"
  448. | "agent.knowledge.import.urlListLabel"
  449. | "agent.knowledge.doc.create"
  450. | "agent.knowledge.doc.searchPh"
  451. | "agent.knowledge.doc.empty"
  452. | "agent.knowledge.doc.empty.filtered"
  453. | "agent.knowledge.doc.type"
  454. | "agent.knowledge.doc.createdAt"
  455. | "agent.knowledge.doc.publish"
  456. | "agent.knowledge.doc.unpublish"
  457. | "agent.knowledge.filter.all"
  458. | "agent.knowledge.pagination"
  459. | "agent.knowledge.status.draft"
  460. | "agent.knowledge.status.published"
  461. | "agent.knowledge.embedding.pending"
  462. | "agent.knowledge.embedding.processing"
  463. | "agent.knowledge.embedding.completed"
  464. | "agent.knowledge.embedding.failed"
  465. | "agent.knowledge.dialog.kbCreateTitle"
  466. | "agent.knowledge.dialog.kbCreateDesc"
  467. | "agent.knowledge.dialog.kbEditTitle"
  468. | "agent.knowledge.dialog.kbEditDesc"
  469. | "agent.knowledge.dialog.kbDeleteTitle"
  470. | "agent.knowledge.dialog.kbDeleteConfirm"
  471. | "agent.knowledge.dialog.kbDeleteHint"
  472. | "agent.knowledge.dialog.docCreateTitle"
  473. | "agent.knowledge.dialog.docCreateDesc"
  474. | "agent.knowledge.dialog.docEditTitle"
  475. | "agent.knowledge.dialog.docEditDesc"
  476. | "agent.knowledge.dialog.docDeleteTitle"
  477. | "agent.knowledge.dialog.docDeleteConfirm"
  478. | "agent.knowledge.dialog.importTitle"
  479. | "agent.knowledge.dialog.importDesc"
  480. | "agent.knowledge.field.name"
  481. | "agent.knowledge.field.descOptional"
  482. | "agent.knowledge.field.title"
  483. | "agent.knowledge.field.summaryOptional"
  484. | "agent.knowledge.field.content"
  485. | "agent.knowledge.ph.kbName"
  486. | "agent.knowledge.ph.kbDesc"
  487. | "agent.knowledge.ph.docTitle"
  488. | "agent.knowledge.ph.docSummary"
  489. | "agent.knowledge.ph.docContent"
  490. | "agent.knowledge.submitting.creating"
  491. | "agent.knowledge.submitting.updating"
  492. | "agent.knowledge.submitting.deleting"
  493. | "agent.knowledge.submitting.importing"
  494. | "agent.knowledge.toast.loadKbFailed"
  495. | "agent.knowledge.toast.loadDocFailed"
  496. | "agent.knowledge.toast.kbNameRequired"
  497. | "agent.knowledge.toast.selectKbFirst"
  498. | "agent.knowledge.toast.docTitleContentRequired"
  499. | "agent.knowledge.toast.createSuccess"
  500. | "agent.knowledge.toast.updateSuccess"
  501. | "agent.knowledge.toast.deleteSuccess"
  502. | "agent.knowledge.toast.updateFailed"
  503. | "agent.knowledge.toast.createKbFailed"
  504. | "agent.knowledge.toast.updateKbFailed"
  505. | "agent.knowledge.toast.deleteKbFailed"
  506. | "agent.knowledge.toast.createDocFailed"
  507. | "agent.knowledge.toast.updateDocFailed"
  508. | "agent.knowledge.toast.deleteDocFailed"
  509. | "agent.knowledge.toast.publishSuccess"
  510. | "agent.knowledge.toast.publishFailed"
  511. | "agent.knowledge.toast.unpublishSuccess"
  512. | "agent.knowledge.toast.unpublishFailed"
  513. | "agent.knowledge.toast.selectFiles"
  514. | "agent.knowledge.toast.urlRequired"
  515. | "agent.knowledge.toast.importDocFailed"
  516. | "agent.knowledge.toast.importUrlFailed"
  517. | "agent.knowledge.toast.importRefreshFailed"
  518. | "agent.knowledge.toast.importFailed.files"
  519. | "agent.knowledge.toast.importFailed.urls"
  520. | "agent.knowledge.toast.importDone.files"
  521. | "agent.knowledge.toast.importDone.urls"
  522. | "agent.knowledge.toast.importDone.partial"
  523. | "agent.prompts.title"
  524. | "agent.prompts.subtitle"
  525. | "agent.prompts.loadFailed"
  526. | "agent.prompts.saveSuccess"
  527. | "agent.prompts.saveFailed"
  528. | "agent.prompts.usageLabel"
  529. | "agent.prompts.ph.shortReply"
  530. | "agent.prompts.ph.withPlaceholders"
  531. | "agent.prompts.saving"
  532. | "agent.prompts.save"
  533. | "agent.prompts.hint.rag_prompt"
  534. | "agent.prompts.hint.rag_prompt_with_web_optional"
  535. | "agent.prompts.hint.no_kb_prompt"
  536. | "agent.prompts.hint.web_search_result_prompt"
  537. | "agent.prompts.hint.no_source_reply"
  538. | "agent.prompts.hint.ai_fail_reply"
  539. | "agent.prompts.hint.default"
  540. | "agent.prompts.usage.rag_prompt"
  541. | "agent.prompts.usage.rag_prompt_with_web_optional"
  542. | "agent.prompts.usage.no_kb_prompt"
  543. | "agent.prompts.usage.web_search_result_prompt"
  544. | "agent.prompts.usage.no_source_reply"
  545. | "agent.prompts.usage.ai_fail_reply"
  546. | "agent.analytics.title"
  547. | "agent.analytics.subtitle"
  548. | "agent.analytics.from"
  549. | "agent.analytics.to"
  550. | "agent.analytics.query"
  551. | "agent.analytics.loading"
  552. | "agent.analytics.empty"
  553. | "agent.analytics.emptyOrFailed"
  554. | "agent.analytics.stat.widgetOpens"
  555. | "agent.analytics.stat.widgetOpensSub"
  556. | "agent.analytics.stat.sessions"
  557. | "agent.analytics.stat.messages"
  558. | "agent.analytics.stat.aiReplies"
  559. | "agent.analytics.stat.aiFailed"
  560. | "agent.analytics.stat.aiFailureRate"
  561. | "agent.analytics.stat.aiFailureRateSub"
  562. | "agent.analytics.stat.kbHits"
  563. | "agent.analytics.stat.kbHitRate"
  564. | "agent.analytics.stat.kbHitRateSub"
  565. | "agent.analytics.stat.maxAiRounds"
  566. | "agent.analytics.stat.maxAiRoundsSub"
  567. | "agent.analytics.stat.sessionsWithAi"
  568. | "agent.analytics.stat.sessionsWithAiSub"
  569. | "agent.analytics.stat.aiToHuman"
  570. | "agent.analytics.stat.aiToHumanSub"
  571. | "agent.analytics.stat.humanToAi"
  572. | "agent.analytics.stat.humanToAiSub"
  573. | "agent.analytics.chart.widgetOpens"
  574. | "agent.analytics.chart.sessions"
  575. | "agent.analytics.chart.messages"
  576. | "agent.analytics.chart.aiReplies"
  577. | "common.irreversibleHint"
  578. | "chat.title"
  579. | "chat.mode.human"
  580. | "chat.mode.ai"
  581. | "chat.email.placeholder"
  582. | "chat.email.optional"
  583. | "chat.email.privacy"
  584. | "chat.input.placeholder";
  585. export const DEFAULT_LANG: Lang = "zh-CN";
  586. export const LANG_STORAGE_KEY = "aics_lang";
  587. export const DICT: Record<Lang, Record<I18nKey, string>> = {
  588. "zh-CN": {
  589. "nav.features": "核心能力",
  590. "nav.screenshots": "界面展示",
  591. "nav.quickStart": "快速接入",
  592. "nav.agentLogin": "客服登录",
  593. "nav.menu": "菜单",
  594. "common.github": "GitHub",
  595. "common.to": "到",
  596. "common.save": "保存到服务器",
  597. "common.saving": "保存中...",
  598. "common.restoreEnv": "恢复环境变量",
  599. "common.loading": "加载中...",
  600. "common.search": "查询",
  601. "common.prevPage": "上一页",
  602. "common.nextPage": "下一页",
  603. "common.copy": "复制",
  604. "home.hero.tagline": "AI 智能客服",
  605. "home.hero.title": "让客户服务更简单、更高效",
  606. "home.hero.subtitle":
  607. "7×24 小时智能应答,AI 与人工无缝切换,释放团队时间专注更有价值的事",
  608. "home.hero.cta.tryNow": "立即体验",
  609. "home.hero.cta.agentLogin": "客服登录",
  610. "home.hero.hint": "无需等待,可立即使用",
  611. "home.stats.trustedBy": "深受企业信赖",
  612. "home.stats.clients": "服务企业",
  613. "home.stats.conversations": "处理对话",
  614. "home.stats.latency": "响应时间",
  615. "home.stats.satisfaction": "满意度",
  616. "home.stats.val.clients": "1000+",
  617. "home.stats.val.conversations": "100万+",
  618. "home.stats.val.latency": "<100ms",
  619. "home.stats.val.satisfaction": "98%",
  620. "home.features.title": "核心能力",
  621. "home.features.lead": "从模型、知识库、提示词到人工协作、报表与日志,一套系统串起来。",
  622. "home.cap.multimodel.title": "多模型 AI 客服",
  623. "home.cap.multimodel.desc":
  624. "支持配置多家大模型与绘画等能力,访客与后台可统一管理模型与使用方式,便于替换供应商、控制成本。",
  625. "home.cap.kb.title": "知识库与 RAG",
  626. "home.cap.kb.desc":
  627. "文档入库、向量检索,让回答贴近你的业务资料;回复可标记是否使用知识库、模型或联网,便于核对与优化。",
  628. "home.cap.prompt.title": "提示词工程",
  629. "home.cap.prompt.desc":
  630. "配置系统中使用的提示词模板,用于不同领域 RAG、联网等不同的业务场景。",
  631. "home.cap.human.title": "人工客服与实时协作",
  632. "home.cap.human.desc":
  633. "在线状态、会话实时推送(WebSocket),支持人工接管与日常协作;访客小窗可嵌入任意站点。",
  634. "home.cap.reports.title": "可视化报表",
  635. "home.cap.reports.desc":
  636. "按日或自定义区间查看访客小窗打开、会话与消息、AI 回复与失败率、知识库命中率等指标,快速掌握运营态势。",
  637. "home.cap.logs.title": "日志中心",
  638. "home.cap.logs.desc":
  639. "结构化日志按分类与事件落库,支持 trace_id 与关键字筛选,关键链路与异常可追溯,便于排障与审计。",
  640. "home.screenshots.title": "界面展示",
  641. "home.screenshots.lead": "精心设计的界面,让管理更轻松",
  642. "home.screenshots.prevAria": "查看上一张",
  643. "home.screenshots.nextAria": "查看下一张",
  644. "home.ss.dashboard.title": "工作台",
  645. "home.ss.dashboard.placeholder": "工作台界面",
  646. "home.ss.dashboard.alt": "AI-CS 工作台界面",
  647. "home.ss.visitor.title": "访客端",
  648. "home.ss.visitor.placeholder": "访客端界面",
  649. "home.ss.visitor.alt": "AI-CS 访客端界面",
  650. "home.ss.aiconfig.title": "AI 配置",
  651. "home.ss.aiconfig.placeholder": "AI 配置界面",
  652. "home.ss.aiconfig.alt": "AI-CS AI 配置界面",
  653. "home.ss.users.title": "用户管理",
  654. "home.ss.users.placeholder": "用户管理界面",
  655. "home.ss.users.alt": "AI-CS 用户管理界面",
  656. "home.ss.faq.title": "FAQ 管理",
  657. "home.ss.faq.placeholder": "FAQ 管理界面",
  658. "home.ss.faq.alt": "AI-CS FAQ 管理界面",
  659. "home.ss.knowledge.title": "知识库管理",
  660. "home.ss.knowledge.placeholder": "知识库管理界面",
  661. "home.ss.knowledge.alt": "AI-CS 知识库管理界面",
  662. "home.ss.kbtest.title": "知识库测试",
  663. "home.ss.kbtest.placeholder": "知识库测试界面",
  664. "home.ss.kbtest.alt": "AI-CS 知识库测试界面",
  665. "home.ss.prompts.title": "提示词工程",
  666. "home.ss.prompts.placeholder": "提示词工程界面",
  667. "home.ss.prompts.alt": "AI-CS 提示词工程界面",
  668. "home.ss.logs.title": "日志中心",
  669. "home.ss.logs.placeholder": "日志中心界面",
  670. "home.ss.logs.alt": "AI-CS 日志中心界面",
  671. "home.ss.analytics.title": "可视化报表",
  672. "home.ss.analytics.placeholder": "可视化报表界面",
  673. "home.ss.analytics.alt": "AI-CS 可视化报表界面",
  674. "home.quickStart.title": "快速接入",
  675. "home.quickStart.lead": "三步跑通,从仓库到访客小窗。",
  676. "home.step1.title": "克隆与配置",
  677. "home.step1.body": "复制 .env 模板,填好数据库与管理员等必填项。",
  678. "home.step2.title": "一键启动",
  679. "home.step2.body": "使用 Docker Compose 拉起前后端与依赖服务(详见 README)。",
  680. "home.step3.title": "嵌入访客端",
  681. "home.step3.body": "在站点中挂载聊天小窗,后台完成模型与知识库配置后即可对外服务。",
  682. "home.cta.title": "准备好把 AI-CS 接到你的产品里了吗?",
  683. "home.cta.subtitle": "从开源仓库开始,或用在线 Demo 先看交互与能力边界。",
  684. "home.cta.starRepo": "Star / Fork 仓库",
  685. "home.cta.feedback": "建议反馈",
  686. "home.cta.mailSubject": "AI-CS 建议反馈",
  687. "home.cta.mailBody":
  688. "你好,我想反馈:\n\n1)问题/建议:\n2)影响范围/环境:\n3)期望结果:\n\n---\n联系方式(可选):",
  689. "footer.blurb":
  690. "AI-CS 是一款 AI 驱动的智能客服系统,融合 AI 技术与人工客服,为企业提供高效、智能的客户服务解决方案。",
  691. "footer.column.product": "产品",
  692. "footer.column.friendLinks": "友情链接",
  693. "footer.column.contact": "联系我们",
  694. "footer.noFriendLinks": "暂无友情链接",
  695. "footer.onlineChat": "在线客服",
  696. "footer.openSourceLicense": "开源协议",
  697. "footer.poweredBy": "Powered by Next.js & Go |",
  698. "footer.allRightsReserved": "保留所有权利。",
  699. "footer.emailLabel": "邮箱",
  700. "footer.qqGroup": "QQ 交流群",
  701. "footer.qqGroupAria": "加入 QQ 交流群",
  702. "agent.page.dashboard": "对话",
  703. "agent.page.internalChat": "知识库测试",
  704. "agent.page.knowledge": "知识库",
  705. "agent.page.faqs": "事件管理",
  706. "agent.page.analytics": "数据报表",
  707. "agent.page.logs": "日志中心",
  708. "agent.page.users": "用户管理",
  709. "agent.page.prompts": "提示词",
  710. "agent.page.settings": "AI 配置",
  711. "agent.profile": "个人资料",
  712. "agent.logout": "退出登录",
  713. "agent.chat.conversation": "对话",
  714. "agent.chat.lastSeen": "最后活跃",
  715. "agent.chat.lastSeenUnknown": "最后活跃 未知",
  716. "agent.chat.showAI": "显示 AI 消息",
  717. "agent.chat.hideAI": "隐藏 AI 消息",
  718. "agent.chat.closeConversation": "关闭会话",
  719. "agent.chat.refresh": "刷新",
  720. "agent.chat.soundOn": "关闭声音提示",
  721. "agent.chat.soundOff": "开启声音提示",
  722. "agent.chat.toast.conversationClosed": "已关闭会话",
  723. "agent.chat.toast.closeFailed": "关闭会话失败",
  724. "agent.chat.emptyPick": "选择一个对话开始聊天",
  725. "agent.layout.openNavMenu": "打开导航与对话列表",
  726. "agent.layout.openVisitorPanel": "打开访客详情",
  727. "agent.internalChat.webSearchThisTurn": "本回合联网搜索",
  728. "agent.internalChat.aiThinking": "AI 正在思考...",
  729. "agent.internalChat.emptyHint": "选择或新建内部对话,测试知识库效果",
  730. "agent.internalChat.createFailed": "创建内部对话失败",
  731. "agent.login.title": "客服登录",
  732. "agent.login.subtitle": "管理员和客服请在此登录",
  733. "agent.login.username": "用户名",
  734. "agent.login.password": "密码",
  735. "agent.login.submit": "登录",
  736. "agent.login.submitting": "登录中...",
  737. "agent.login.error.empty": "用户名和密码不能为空",
  738. "agent.login.error.failed": "登录失败",
  739. "agent.login.error.network": "登录失败,请检查网络连接",
  740. "agent.login.demoHint": "默认管理员账号:admin / admin123",
  741. "agent.logs.title": "日志中心",
  742. "agent.logs.subtitle": "按分类查看 AI / RAG / 系统 / 前端日志,用于排障定位。",
  743. "agent.logs.policy.title": "落库级别(性能)",
  744. "agent.logs.policy.desc":
  745. "仅将不低于所选级别的记录写入数据库。设为 warn 可大幅减少成功类 info 写入。也可在根目录 SYSTEM_LOG_MIN_LEVEL 配置默认值;此处保存后会写入数据库并覆盖环境变量,直至点击「恢复环境变量」。",
  746. "agent.logs.policy.current": "当前生效:",
  747. "agent.logs.policy.env": "环境变量默认:",
  748. "agent.logs.policy.overridden": "(已由控制台覆盖)",
  749. "agent.logs.level.all": "全部级别",
  750. "agent.logs.category.all": "全部分类",
  751. "agent.logs.source.all": "全部来源",
  752. "agent.logs.event.placeholder": "事件名(event)",
  753. "agent.logs.conversationId.placeholder": "会话ID",
  754. "agent.logs.keyword.placeholder": "关键词(message/meta)",
  755. "agent.logs.table.time": "时间",
  756. "agent.logs.table.level": "级别",
  757. "agent.logs.table.category": "分类",
  758. "agent.logs.table.event": "事件",
  759. "agent.logs.table.conversation": "会话",
  760. "agent.logs.table.source": "来源",
  761. "agent.logs.table.message": "消息",
  762. "agent.logs.paginationSummary": "共 {{total}} 条,当前第 {{page}}/{{pages}} 页",
  763. "agent.logs.empty": "暂无日志",
  764. "agent.logs.detail.title": "日志详情",
  765. "agent.logs.detail.time": "时间",
  766. "agent.logs.detail.sourceEvent": "source / event",
  767. "agent.logs.detail.category": "category",
  768. "agent.logs.detail.traceId": "trace_id",
  769. "agent.logs.detail.conversationId": "conversation_id",
  770. "agent.logs.detail.userVisitor": "user_id / visitor_id",
  771. "agent.logs.detail.message": "message",
  772. "agent.logs.detail.metaJson": "meta_json",
  773. "agent.logs.detail.noMeta": "(无 meta_json)",
  774. "agent.logs.toast.loadPolicyFailed": "加载落库策略失败",
  775. "agent.logs.toast.loadLogsFailed": "加载日志失败",
  776. "agent.logs.toast.savePolicyFailed": "保存失败",
  777. "agent.logs.toast.restorePolicyFailed": "恢复失败",
  778. "agent.logs.toast.policySaved": "已保存",
  779. "agent.logs.toast.policyRestored": "已恢复为环境变量默认",
  780. "agent.logs.toast.messageCopied": "已复制 message",
  781. "agent.logs.toast.copyFailed": "复制失败",
  782. "agent.conversationsPage.title": "对话列表",
  783. "agent.conversationsPage.loading": "加载中...",
  784. "agent.conversationsPage.empty": "暂无对话",
  785. "agent.conversationsPage.convLabel": "对话 #{{id}}",
  786. "agent.conversationsPage.visitorLabel": "访客ID: {{id}}",
  787. "agent.conversationsPage.createdAt": "创建时间: {{time}}",
  788. "agent.conversationsPage.updatedAt": "最后更新: {{time}}",
  789. "agent.conversations.filter.all": "全部对话",
  790. "agent.conversations.filter.mine": "我的对话",
  791. "agent.conversations.filter.others": "他人对话",
  792. "agent.conversations.status.open": "进行中",
  793. "agent.conversations.status.closed": "历史",
  794. "agent.internalChat.title": "知识库测试",
  795. "agent.internalChat.new": "新建",
  796. "agent.conversation.noMessage": "暂无消息",
  797. "agent.conversation.online": "在线",
  798. "agent.conversation.visitor": "访客",
  799. "agent.input.upload": "上传文件",
  800. "agent.input.placeholder": "输入消息...",
  801. "agent.input.placeholder.withAttachment": "添加消息(可选)...",
  802. "agent.input.sending": "发送中...",
  803. "agent.input.uploading": "上传中...",
  804. "agent.input.send": "发送",
  805. "agent.input.fileTooLarge": "文件大小超过限制(最大10MB)",
  806. "agent.input.fileTypeNotSupported": "不支持的文件类型",
  807. "agent.input.uploadFailed": "文件上传失败",
  808. "agent.aiSource.kb": "已使用知识库",
  809. "agent.aiSource.llm": "已使用大模型",
  810. "agent.aiSource.web": "已使用联网搜索",
  811. "agent.common.back": "返回",
  812. "agent.common.cancel": "取消",
  813. "agent.common.create": "创建",
  814. "agent.common.update": "更新",
  815. "agent.common.delete": "删除",
  816. "agent.common.edit": "编辑",
  817. "agent.common.keywordSearch": "关键词搜索",
  818. "agent.common.noMatch": "没有找到匹配的内容",
  819. "agent.common.none": "暂无",
  820. "agent.common.confirm": "确定",
  821. "agent.faqs.title": "事件管理(FAQ)",
  822. "agent.faqs.subtitle": "维护常见问题/事件模板,支持关键词搜索。",
  823. "agent.faqs.search.placeholder": "关键词搜索(用 % 分隔,例如:openai%api%调用)...",
  824. "agent.faqs.createButton": "创建事件",
  825. "agent.faqs.empty": "暂无事件",
  826. "agent.faqs.empty.filtered": "没有找到匹配的事件",
  827. "agent.faqs.dialog.createTitle": "创建事件",
  828. "agent.faqs.dialog.editTitle": "编辑事件",
  829. "agent.faqs.dialog.deleteTitle": "删除事件",
  830. "agent.faqs.form.question": "问题",
  831. "agent.faqs.form.answer": "答案",
  832. "agent.faqs.form.keywords": "关键词",
  833. "agent.faqs.form.keywordsHint": "多个关键词建议用 % 分隔,便于检索命中",
  834. "agent.faqs.toast.loadFailed": "加载 FAQ 列表失败",
  835. "agent.faqs.toast.createFailed": "创建 FAQ 失败",
  836. "agent.faqs.toast.updateFailed": "更新 FAQ 失败",
  837. "agent.faqs.toast.deleteFailed": "删除 FAQ 失败",
  838. "agent.faqs.toast.createSuccess": "创建成功",
  839. "agent.faqs.toast.updateSuccess": "更新成功",
  840. "agent.faqs.toast.deleteSuccess": "删除成功",
  841. "agent.faqs.quickSearch.placeholder": "输入关键词搜索 FAQ...",
  842. "agent.faqs.quickSearch.searching": "搜索中...",
  843. "agent.faqs.quickSearch.noResults": "未找到匹配的 FAQ",
  844. "agent.faqs.quickSearch.startTyping": "输入关键词开始搜索",
  845. "agent.faqs.toast.emptyRequired": "问题和答案不能为空",
  846. "agent.faqs.card.keywords": "关键词",
  847. "agent.faqs.card.createdAt": "创建时间",
  848. "agent.faqs.card.edit": "编辑",
  849. "agent.faqs.dialog.createTitle2": "创建新事件",
  850. "agent.faqs.dialog.createDesc": "填写问题和答案,可以添加关键词以便搜索",
  851. "agent.faqs.dialog.editDesc": "修改问题和答案,可以更新关键词以便搜索",
  852. "agent.faqs.dialog.deleteConfirm": "确定要删除事件 \"{{name}}\" 吗?",
  853. "agent.faqs.form.placeholder.question": "请输入问题",
  854. "agent.faqs.form.placeholder.answer": "请输入答案",
  855. "agent.faqs.form.placeholder.keywords":
  856. "例如:API、错误、配置(用逗号或空格分隔)",
  857. "agent.faqs.form.keywordsOptional": "关键词(可选)",
  858. "agent.faqs.form.keywordsTip":
  859. "提示:即使不填写关键词,系统也会自动搜索问题和答案中的内容。关键词字段用于添加额外的搜索索引,帮助用户更快找到相关内容。",
  860. "agent.faqs.submit.creating": "创建中...",
  861. "agent.faqs.submit.deleting": "删除中...",
  862. "agent.perm.analytics": "数据报表",
  863. "agent.perm.chat": "对话",
  864. "agent.perm.faqs": "事件管理",
  865. "agent.perm.kb_test": "知识库测试",
  866. "agent.perm.knowledge": "知识库",
  867. "agent.perm.logs": "日志中心",
  868. "agent.perm.prompts": "提示词",
  869. "agent.perm.settings": "AI 配置",
  870. "agent.perm.users": "用户管理",
  871. "agent.settings.aiCard.titleAdd": "添加 AI 配置",
  872. "agent.settings.aiCard.titleEdit": "编辑 AI 配置",
  873. "agent.settings.aiForm.active": "启用配置",
  874. "agent.settings.aiForm.apiKey": "API Key",
  875. "agent.settings.aiForm.apiUrl": "API 地址",
  876. "agent.settings.aiForm.apiUrlPh": "https://api.openai.com/v1/chat/completions",
  877. "agent.settings.aiForm.descPh": "例如:OpenAI GPT-3.5 Turbo 模型",
  878. "agent.settings.aiForm.description": "配置描述",
  879. "agent.settings.aiForm.model": "模型名称",
  880. "agent.settings.aiForm.modelType": "模型类型",
  881. "agent.settings.aiForm.modelPh": "例如:gpt-3.5-turbo、gpt-4",
  882. "agent.settings.aiForm.provider": "服务商名称",
  883. "agent.settings.aiForm.providerPh": "例如:OpenAI、Claude、自定义",
  884. "agent.settings.aiForm.public": "开放给访客使用",
  885. "agent.settings.aiForm.submitCreate": "创建配置",
  886. "agent.settings.aiForm.submitUpdate": "更新配置",
  887. "agent.settings.aiForm.submitting": "提交中...",
  888. "agent.settings.backDashboard": "返回工作台",
  889. "agent.settings.badge.active": "启用",
  890. "agent.settings.badge.public": "开放",
  891. "agent.settings.confirmDeleteConfig": "确定要删除这个配置吗?",
  892. "agent.settings.embedding.apiKey": "API Key",
  893. "agent.settings.embedding.apiKeyKeepEmpty": "留空则不更新",
  894. "agent.settings.embedding.apiKeyInput": "输入 API Key",
  895. "agent.settings.embedding.apiUrl": "API 地址",
  896. "agent.settings.embedding.apiUrlPh": "https://api.openai.com/v1 或兼容地址",
  897. "agent.settings.embedding.bgeLocal": "BGE 本地",
  898. "agent.settings.embedding.customerKb": "开放知识库给客服使用(允许创建知识库、上传文档、对话中引用)",
  899. "agent.settings.embedding.lead":
  900. "用于知识库文档向量化与 RAG 检索。仅管理员可修改;保存后立即生效,无需重启。",
  901. "agent.settings.embedding.model": "模型",
  902. "agent.settings.embedding.modelPh": "text-embedding-3-small",
  903. "agent.settings.embedding.openaiCompatible": "OpenAI / 兼容 API",
  904. "agent.settings.embedding.save": "保存配置",
  905. "agent.settings.embedding.title": "知识库向量模型",
  906. "agent.settings.embedding.type": "类型",
  907. "agent.settings.error.delete": "删除失败",
  908. "agent.settings.error.loadConfigs": "加载配置失败",
  909. "agent.settings.error.loadEmbedding": "加载失败",
  910. "agent.settings.error.operation": "操作失败",
  911. "agent.settings.global.noReceiveAi": "客服不接收 AI 对话",
  912. "agent.settings.global.noReceiveAiHint":
  913. "开启后,AI 对话将不会显示在对话列表中,也不会收到 AI 消息通知。但您仍可在会话页面手动开启「显示 AI 消息」查看 AI 对话历史。",
  914. "agent.settings.list.apiUrlLabel": "API 地址:",
  915. "agent.settings.list.descLabel": "描述:",
  916. "agent.settings.list.empty": "暂无配置,请添加",
  917. "agent.settings.list.modelTypeLabel": "模型类型:",
  918. "agent.settings.list.title": "已配置的 AI 服务",
  919. "agent.settings.modelType.audio": "语音",
  920. "agent.settings.modelType.image": "图片",
  921. "agent.settings.modelType.text": "文本",
  922. "agent.settings.modelType.video": "视频",
  923. "agent.settings.section.global": "全局设置",
  924. "agent.settings.autoClose.title": "会话维护",
  925. "agent.settings.autoClose.lead":
  926. "超过指定天数未更新的「进行中」访客会话将自动标记为「已关闭」。仅改状态,不删除记录;可在会话列表「历史」中查看。填 0 表示禁用。",
  927. "agent.settings.autoClose.daysLabel": "自动关闭天数",
  928. "agent.settings.autoClose.daysHint": "按会话最后更新时间(updated_at)计算。默认 7 天;0 = 不自动关闭。",
  929. "agent.settings.autoClose.statusEffective": "当前生效",
  930. "agent.settings.autoClose.statusEnv": "环境变量默认",
  931. "agent.settings.autoClose.statusDb": "已保存到数据库(覆盖 .env)",
  932. "agent.settings.autoClose.statusEnvOnly": "使用 .env 默认值",
  933. "agent.settings.autoClose.save": "保存会话维护设置",
  934. "agent.settings.autoClose.resetEnv": "恢复为 .env 默认",
  935. "agent.settings.autoClose.errorLoad": "加载会话维护配置失败",
  936. "agent.settings.autoClose.errorInvalid": "请输入 0 或正整数",
  937. "agent.settings.autoClose.toastSaved": "会话维护设置已保存,下次定时任务起生效",
  938. "agent.settings.autoClose.toastReset": "已恢复为 .env 默认配置",
  939. "agent.settings.offlineEmail.title": "离线邮件通知",
  940. "agent.settings.offlineEmail.lead":
  941. "访客离线且已留邮箱时,客服发送人工消息后延迟 N 秒推送邮件;访客重新上线则取消待发邮件。支持阿里云等云厂商 SMTP,也可在 .env 中配置默认值。",
  942. "agent.settings.offlineEmail.enabled": "启用离线邮件通知",
  943. "agent.settings.offlineEmail.delayLabel": "离线延迟(秒)",
  944. "agent.settings.offlineEmail.delayHint": "客服发消息后等待的秒数,默认 60;访客在此期间上线则不发邮件。",
  945. "agent.settings.offlineEmail.smtpHost": "SMTP 服务器",
  946. "agent.settings.offlineEmail.smtpPort": "SMTP 端口",
  947. "agent.settings.offlineEmail.smtpUser": "SMTP 用户名",
  948. "agent.settings.offlineEmail.smtpPassword": "SMTP 密码 / 授权码",
  949. "agent.settings.offlineEmail.smtpPasswordKeepEmpty": "留空则保留已保存的密码",
  950. "agent.settings.offlineEmail.fromEmail": "发件人邮箱",
  951. "agent.settings.offlineEmail.fromName": "发件人名称",
  952. "agent.settings.offlineEmail.statusEffective": "当前生效",
  953. "agent.settings.offlineEmail.statusEnv": "环境变量默认",
  954. "agent.settings.offlineEmail.statusDb": "已保存到数据库(覆盖 .env)",
  955. "agent.settings.offlineEmail.statusEnvOnly": "使用 .env 默认值",
  956. "agent.settings.offlineEmail.save": "保存离线邮件设置",
  957. "agent.settings.offlineEmail.resetEnv": "恢复为 .env 默认",
  958. "agent.settings.offlineEmail.testTo": "测试收件邮箱",
  959. "agent.settings.offlineEmail.testSend": "发送测试邮件",
  960. "agent.settings.offlineEmail.adminOnly": "仅管理员可修改与测试",
  961. "agent.settings.offlineEmail.errorLoad": "加载离线邮件配置失败",
  962. "agent.settings.offlineEmail.errorInvalidDelay": "延迟秒数不能为负数",
  963. "agent.settings.offlineEmail.toastSaved": "离线邮件设置已保存,立即生效",
  964. "agent.settings.offlineEmail.toastReset": "已恢复为 .env 默认配置",
  965. "agent.settings.offlineEmail.toastTestSent": "测试邮件已发送",
  966. "agent.settings.offlineEmail.statusOn": "已启用",
  967. "agent.settings.offlineEmail.statusOff": "未启用",
  968. "agent.settings.subtitle": "管理 AI 服务商配置",
  969. "agent.settings.title": "AI 配置管理",
  970. "agent.settings.toast.embeddingSaved": "保存成功,配置已立即生效。",
  971. "agent.settings.toast.profileUpdateFailed": "更新设置失败,请重试",
  972. "agent.settings.webSearch.lead":
  973. "控制对话中的联网搜索方式与访客端是否显示联网选项。与「知识库向量模型」无关,仅影响 AI 对话时的联网行为。",
  974. "agent.settings.webSearch.mode": "联网方式",
  975. "agent.settings.webSearch.modeCustom": "自建 (Serper)",
  976. "agent.settings.webSearch.modeHint":
  977. "自建:由后端通过 Serper(MCP 或 HTTP)执行;厂商内置:使用当前对话所用 AI 厂商自带的联网搜索,不占用 Serper。",
  978. "agent.settings.webSearch.modeVendor": "厂商内置",
  979. "agent.settings.webSearch.save": "保存联网设置",
  980. "agent.settings.webSearch.title": "联网搜索设置",
  981. "agent.settings.webSearch.visitorToggle": "访客小窗显示「本回合联网搜索」选项",
  982. "agent.users.card.edit": "编辑",
  983. "agent.users.card.password": "密码",
  984. "agent.users.createButton": "创建用户",
  985. "agent.users.dialog.createTitle": "创建新用户",
  986. "agent.users.dialog.deleteConfirm": "确定要删除用户 {{username}} 吗?",
  987. "agent.users.dialog.deleteNote":
  988. "此操作不可恢复。若该用户有 AI 配置,系统会自动转移给当前管理员,避免配置丢失。",
  989. "agent.users.dialog.deleteTitle": "删除用户",
  990. "agent.users.dialog.editTitle": "编辑用户",
  991. "agent.users.dialog.passwordTitle": "修改密码",
  992. "agent.users.empty": "暂无用户",
  993. "agent.users.empty.filtered": "没有找到匹配的用户",
  994. "agent.users.field.createdAt": "创建时间",
  995. "agent.users.field.email": "邮箱",
  996. "agent.users.field.username": "用户名",
  997. "agent.users.form.email": "邮箱",
  998. "agent.users.form.newPassword": "新密码",
  999. "agent.users.form.oldPassword": "旧密码",
  1000. "agent.users.form.password": "密码",
  1001. "agent.users.form.permissions": "功能权限",
  1002. "agent.users.form.permissionsHint":
  1003. "默认仅开启「对话」。关闭后对应菜单不可见且后端接口会返回 403。",
  1004. "agent.users.form.role": "角色",
  1005. "agent.users.form.username": "用户名",
  1006. "agent.users.form.nickname": "昵称",
  1007. "agent.users.placeholder.email": "请输入邮箱",
  1008. "agent.users.placeholder.emailOptional": "请输入邮箱(可选)",
  1009. "agent.users.placeholder.nickname": "请输入昵称",
  1010. "agent.users.placeholder.nicknameOptional": "请输入昵称(可选)",
  1011. "agent.users.placeholder.oldPassword": "请输入旧密码",
  1012. "agent.users.placeholder.password": "请输入密码",
  1013. "agent.users.placeholder.username": "请输入用户名",
  1014. "agent.users.receiveAiLabel": "接收 AI 对话",
  1015. "agent.users.role.admin": "管理员",
  1016. "agent.users.role.agent": "客服",
  1017. "agent.users.search.placeholder": "搜索用户(用户名、昵称、邮箱)...",
  1018. "agent.users.submit.creating": "创建中...",
  1019. "agent.users.submit.deleting": "删除中...",
  1020. "agent.users.submit.updating": "更新中...",
  1021. "agent.users.title": "用户管理",
  1022. "agent.users.toast.adminDeleteDisabled": "管理员账号仅支持数据库删除,前端已禁用",
  1023. "agent.users.toast.adminPasswordDisabled": "管理员密码仅支持数据库修改,前端已禁用",
  1024. "agent.users.toast.createFailed": "创建用户失败",
  1025. "agent.users.toast.createSuccess": "创建成功",
  1026. "agent.users.toast.deleteFailed": "删除用户失败",
  1027. "agent.users.toast.deleteSuccess": "删除成功",
  1028. "agent.users.toast.deleteTransferred": "删除成功,已自动转移 {{count}} 条 AI 配置到当前管理员",
  1029. "agent.users.toast.loadFailed": "加载用户列表失败",
  1030. "agent.users.toast.newPasswordRequired": "新密码不能为空",
  1031. "agent.users.toast.oldPasswordRequired": "修改自己的密码需要提供旧密码",
  1032. "agent.users.toast.passwordFailed": "更新密码失败",
  1033. "agent.users.toast.passwordSuccess": "密码更新成功",
  1034. "agent.users.toast.updateFailed": "更新用户失败",
  1035. "agent.users.toast.updateSuccess": "更新成功",
  1036. "agent.users.toast.usernamePasswordRequired": "用户名和密码不能为空",
  1037. "agent.users.tooltip.adminDeleteDbOnly": "管理员账号仅支持数据库删除",
  1038. "agent.users.tooltip.adminPasswordDbOnly": "管理员密码仅支持数据库修改",
  1039. "agent.users.tooltip.cannotDeleteSelf": "不能删除当前登录用户",
  1040. "agent.users.usernameImmutableHint": "用户名不能修改",
  1041. "agent.knowledge.title": "知识库管理",
  1042. "agent.knowledge.rag": "参与 RAG",
  1043. "agent.knowledge.kb.create": "新建知识库",
  1044. "agent.knowledge.kb.empty": "暂无知识库",
  1045. "agent.knowledge.kb.selectOne": "请选择一个知识库",
  1046. "agent.knowledge.kb.docCount": "{{count}} 篇文档",
  1047. "agent.knowledge.import.url": "导入 URL",
  1048. "agent.knowledge.import.file": "导入文件",
  1049. "agent.knowledge.import.tabFile": "文件上传",
  1050. "agent.knowledge.import.tabUrl": "URL 导入",
  1051. "agent.knowledge.import.pickFiles": "选择文件",
  1052. "agent.knowledge.import.filesSelected": "已选择 {{count}} 个文件",
  1053. "agent.knowledge.import.action": "导入",
  1054. "agent.knowledge.import.urlListLabel": "URL 列表(每行一个)",
  1055. "agent.knowledge.doc.create": "新建文档",
  1056. "agent.knowledge.doc.searchPh": "搜索文档...",
  1057. "agent.knowledge.doc.empty": "暂无文档",
  1058. "agent.knowledge.doc.empty.filtered": "没有找到匹配的文档",
  1059. "agent.knowledge.doc.type": "类型",
  1060. "agent.knowledge.doc.createdAt": "创建时间",
  1061. "agent.knowledge.doc.publish": "发布",
  1062. "agent.knowledge.doc.unpublish": "取消发布",
  1063. "agent.knowledge.filter.all": "全部状态",
  1064. "agent.knowledge.pagination": "第 {{page}} / {{totalPage}} 页,共 {{total}} 条",
  1065. "agent.knowledge.status.draft": "草稿",
  1066. "agent.knowledge.status.published": "已发布",
  1067. "agent.knowledge.embedding.pending": "待处理",
  1068. "agent.knowledge.embedding.processing": "处理中",
  1069. "agent.knowledge.embedding.completed": "已完成",
  1070. "agent.knowledge.embedding.failed": "失败",
  1071. "agent.knowledge.dialog.kbCreateTitle": "创建知识库",
  1072. "agent.knowledge.dialog.kbCreateDesc": "填写知识库名称和描述",
  1073. "agent.knowledge.dialog.kbEditTitle": "编辑知识库",
  1074. "agent.knowledge.dialog.kbEditDesc": "修改知识库名称和描述",
  1075. "agent.knowledge.dialog.kbDeleteTitle": "删除知识库",
  1076. "agent.knowledge.dialog.kbDeleteConfirm": "确定要删除知识库 \"{{name}}\" 吗?",
  1077. "agent.knowledge.dialog.kbDeleteHint":
  1078. "此操作将同时删除该知识库下的所有文档,此操作不可恢复,请谨慎操作。",
  1079. "agent.knowledge.dialog.docCreateTitle": "创建文档",
  1080. "agent.knowledge.dialog.docCreateDesc": "填写文档标题和内容",
  1081. "agent.knowledge.dialog.docEditTitle": "编辑文档",
  1082. "agent.knowledge.dialog.docEditDesc": "修改文档标题和内容",
  1083. "agent.knowledge.dialog.docDeleteTitle": "删除文档",
  1084. "agent.knowledge.dialog.docDeleteConfirm": "确定要删除文档 \"{{title}}\" 吗?",
  1085. "agent.knowledge.dialog.importTitle": "导入文档",
  1086. "agent.knowledge.dialog.importDesc":
  1087. "选择文件上传或输入 URL 批量导入。当前支持的文件格式:Markdown(.md、.markdown)、PDF(.pdf)、Word(.docx);旧版 .doc 请先转为 .docx。",
  1088. "agent.knowledge.field.name": "名称",
  1089. "agent.knowledge.field.descOptional": "描述(可选)",
  1090. "agent.knowledge.field.title": "标题",
  1091. "agent.knowledge.field.summaryOptional": "摘要(可选)",
  1092. "agent.knowledge.field.content": "内容",
  1093. "agent.knowledge.ph.kbName": "请输入知识库名称",
  1094. "agent.knowledge.ph.kbDesc": "请输入知识库描述",
  1095. "agent.knowledge.ph.docTitle": "请输入文档标题",
  1096. "agent.knowledge.ph.docSummary": "请输入文档摘要",
  1097. "agent.knowledge.ph.docContent": "请输入文档内容",
  1098. "agent.knowledge.submitting.creating": "创建中...",
  1099. "agent.knowledge.submitting.updating": "更新中...",
  1100. "agent.knowledge.submitting.deleting": "删除中...",
  1101. "agent.knowledge.submitting.importing": "导入中...",
  1102. "agent.knowledge.toast.loadKbFailed": "加载知识库列表失败",
  1103. "agent.knowledge.toast.loadDocFailed": "加载文档列表失败",
  1104. "agent.knowledge.toast.kbNameRequired": "知识库名称不能为空",
  1105. "agent.knowledge.toast.selectKbFirst": "请先选择知识库",
  1106. "agent.knowledge.toast.docTitleContentRequired": "标题和内容不能为空",
  1107. "agent.knowledge.toast.createSuccess": "创建成功",
  1108. "agent.knowledge.toast.updateSuccess": "更新成功",
  1109. "agent.knowledge.toast.deleteSuccess": "删除成功",
  1110. "agent.knowledge.toast.updateFailed": "更新失败",
  1111. "agent.knowledge.toast.createKbFailed": "创建知识库失败",
  1112. "agent.knowledge.toast.updateKbFailed": "更新知识库失败",
  1113. "agent.knowledge.toast.deleteKbFailed": "删除知识库失败",
  1114. "agent.knowledge.toast.createDocFailed": "创建文档失败",
  1115. "agent.knowledge.toast.updateDocFailed": "更新文档失败",
  1116. "agent.knowledge.toast.deleteDocFailed": "删除文档失败",
  1117. "agent.knowledge.toast.publishSuccess": "发布成功",
  1118. "agent.knowledge.toast.publishFailed": "发布文档失败",
  1119. "agent.knowledge.toast.unpublishSuccess": "取消发布成功",
  1120. "agent.knowledge.toast.unpublishFailed": "取消发布文档失败",
  1121. "agent.knowledge.toast.selectFiles": "请选择要导入的文件",
  1122. "agent.knowledge.toast.urlRequired": "请输入至少一个 URL",
  1123. "agent.knowledge.toast.importDocFailed": "导入文档失败",
  1124. "agent.knowledge.toast.importUrlFailed": "导入 URL 失败",
  1125. "agent.knowledge.toast.importRefreshFailed": "导入成功,但刷新列表失败,请手动刷新页面",
  1126. "agent.knowledge.toast.importFailed.files": "导入失败:{{count}} 个文件未成功",
  1127. "agent.knowledge.toast.importFailed.urls": "导入失败:{{count}} 个 URL 未成功",
  1128. "agent.knowledge.toast.importDone.files": "导入完成:成功 {{success}} 个文件",
  1129. "agent.knowledge.toast.importDone.urls": "导入完成:成功 {{success}} 个 URL",
  1130. "agent.knowledge.toast.importDone.partial": "导入完成:成功 {{success}},失败 {{failed}} {{err}}",
  1131. "agent.prompts.title": "提示词",
  1132. "agent.prompts.subtitle":
  1133. "配置系统中使用的提示词模板,用于 RAG、联网等场景。仅管理员可修改。占位符说明见下方各卡片。",
  1134. "agent.prompts.loadFailed": "加载提示词失败",
  1135. "agent.prompts.saveSuccess": "保存成功,将立即生效。",
  1136. "agent.prompts.saveFailed": "保存失败",
  1137. "agent.prompts.usageLabel": "使用场景:",
  1138. "agent.prompts.ph.shortReply": "请输入一句完整回复语",
  1139. "agent.prompts.ph.withPlaceholders": "请输入提示词内容,保留占位符",
  1140. "agent.prompts.saving": "保存中...",
  1141. "agent.prompts.save": "保存",
  1142. "agent.prompts.hint.rag_prompt":
  1143. "占位符:{{rag_context}} 为知识库检索内容,{{user_message}} 为用户问题。",
  1144. "agent.prompts.hint.rag_prompt_with_web_optional":
  1145. "占位符:{{rag_context}} 为知识库检索内容,{{user_message}} 为用户问题。",
  1146. "agent.prompts.hint.no_kb_prompt": "占位符:{{user_message}} 为用户问题。",
  1147. "agent.prompts.hint.web_search_result_prompt":
  1148. "占位符:{{web_context}} 为联网搜索结果,{{user_message}} 为用户问题。(当前流程未使用此模板)",
  1149. "agent.prompts.hint.no_source_reply": "无占位符,内容将作为完整回复语直接展示给用户。",
  1150. "agent.prompts.hint.ai_fail_reply": "无占位符,内容将作为完整回复语直接展示给用户。",
  1151. "agent.prompts.hint.default": "请勿删除占位符,保存后由系统替换为实际内容。",
  1152. "agent.prompts.usage.rag_prompt":
  1153. "有知识库检索结果,且本回合未勾选「联网搜索」时,用此模板拼成 prompt 发给模型。",
  1154. "agent.prompts.usage.rag_prompt_with_web_optional":
  1155. "有知识库检索结果且本回合勾选「联网搜索」时,用此模板并传入联网工具,由模型决定是否调用联网。",
  1156. "agent.prompts.usage.no_kb_prompt":
  1157. "没有知识库检索结果且本回合未走联网时,用此模板让模型仅凭自身知识回答。",
  1158. "agent.prompts.usage.web_search_result_prompt":
  1159. "预留:若将来有「先联网搜再拼成一段 prompt」的流程,会使用此模板。当前未使用。",
  1160. "agent.prompts.usage.no_source_reply":
  1161. "既未命中知识库、也未使用大模型或联网时(如用户关闭了所有数据源),直接向用户展示这句话。",
  1162. "agent.prompts.usage.ai_fail_reply": "调用 AI 接口失败(超时、报错等)时,向用户展示这句话。",
  1163. "agent.analytics.title": "数据报表",
  1164. "agent.analytics.subtitle":
  1165. "访客小窗与 AI 客服统计(按上海时区自然日,不含「知识库测试」内部会话)",
  1166. "agent.analytics.from": "从",
  1167. "agent.analytics.to": "到",
  1168. "agent.analytics.query": "查询",
  1169. "agent.analytics.loading": "加载中…",
  1170. "agent.analytics.empty": "暂无数据",
  1171. "agent.analytics.emptyOrFailed": "暂无数据或加载失败",
  1172. "agent.analytics.stat.widgetOpens": "小窗打开次数",
  1173. "agent.analytics.stat.widgetOpensSub": "需前端埋点,历史数据可能为 0",
  1174. "agent.analytics.stat.sessions": "新建会话数",
  1175. "agent.analytics.stat.messages": "消息数",
  1176. "agent.analytics.stat.aiReplies": "AI 回复次数",
  1177. "agent.analytics.stat.aiFailed": "AI 失败次数",
  1178. "agent.analytics.stat.aiFailureRate": "AI 失败率",
  1179. "agent.analytics.stat.aiFailureRateSub": "占 AI 回复条数",
  1180. "agent.analytics.stat.kbHits": "知识库命中次数",
  1181. "agent.analytics.stat.kbHitRate": "知识库命中率",
  1182. "agent.analytics.stat.kbHitRateSub": "占成功 AI 回复",
  1183. "agent.analytics.stat.maxAiRounds": "最大 AI 对话轮数",
  1184. "agent.analytics.stat.maxAiRoundsSub": "单会话内用户+AI 一轮",
  1185. "agent.analytics.stat.sessionsWithAi": "AI 参与会话",
  1186. "agent.analytics.stat.sessionsWithAiSub": "占新建会话 {{pct}}",
  1187. "agent.analytics.stat.aiToHuman": "AI→人工(会话数)",
  1188. "agent.analytics.stat.aiToHumanSub": "占有过 AI 发言的会话 {{pct}}",
  1189. "agent.analytics.stat.humanToAi": "人工→AI(会话数)",
  1190. "agent.analytics.stat.humanToAiSub": "占有过人工发言的会话 {{pct}}",
  1191. "agent.analytics.chart.widgetOpens": "每日小窗打开",
  1192. "agent.analytics.chart.sessions": "每日新建会话",
  1193. "agent.analytics.chart.messages": "每日消息数",
  1194. "agent.analytics.chart.aiReplies": "每日 AI 回复",
  1195. "common.irreversibleHint": "此操作不可恢复,请谨慎操作。",
  1196. "chat.title": "客服聊天",
  1197. "chat.mode.human": "人工客服",
  1198. "chat.mode.ai": "AI 客服",
  1199. "chat.email.placeholder": "留下邮箱,离线也能收消息",
  1200. "chat.email.optional": "选填",
  1201. "chat.email.privacy": "邮箱仅用于接收客服回复,不会用于营销",
  1202. "chat.input.placeholder": "输入消息",
  1203. },
  1204. en: {
  1205. "nav.features": "Features",
  1206. "nav.screenshots": "Screenshots",
  1207. "nav.quickStart": "Quick Start",
  1208. "nav.agentLogin": "Agent Login",
  1209. "nav.menu": "Menu",
  1210. "common.github": "GitHub",
  1211. "common.to": "to",
  1212. "common.save": "Save",
  1213. "common.saving": "Saving...",
  1214. "common.restoreEnv": "Use env default",
  1215. "common.loading": "Loading...",
  1216. "common.search": "Search",
  1217. "common.prevPage": "Prev",
  1218. "common.nextPage": "Next",
  1219. "common.copy": "Copy",
  1220. "home.hero.tagline": "AI Customer Support",
  1221. "home.hero.title": "Make customer support simpler and faster",
  1222. "home.hero.subtitle":
  1223. "24/7 AI responses with seamless handoff to human agents—free your team to focus on what matters.",
  1224. "home.hero.cta.tryNow": "Try now",
  1225. "home.hero.cta.agentLogin": "Agent Login",
  1226. "home.hero.hint": "No waiting—ready to use",
  1227. "home.stats.trustedBy": "Trusted by teams",
  1228. "home.stats.clients": "Teams served",
  1229. "home.stats.conversations": "Conversations handled",
  1230. "home.stats.latency": "Response time",
  1231. "home.stats.satisfaction": "Satisfaction",
  1232. "home.stats.val.clients": "1000+",
  1233. "home.stats.val.conversations": "1M+",
  1234. "home.stats.val.latency": "<100ms",
  1235. "home.stats.val.satisfaction": "98%",
  1236. "home.features.title": "Capabilities",
  1237. "home.features.lead":
  1238. "From models and knowledge bases to prompts, human collaboration, analytics, and logs—one cohesive system.",
  1239. "home.cap.multimodel.title": "Multi-model AI support",
  1240. "home.cap.multimodel.desc":
  1241. "Configure multiple LLM and multimodal providers; visitors and admins share one place to manage models and usage—easy to swap vendors and control cost.",
  1242. "home.cap.kb.title": "Knowledge base & RAG",
  1243. "home.cap.kb.desc":
  1244. "Ingest documents and retrieve with vectors so answers stay on-brand; replies can show whether KB, model, or web search was used for review and tuning.",
  1245. "home.cap.prompt.title": "Prompt engineering",
  1246. "home.cap.prompt.desc":
  1247. "Edit the prompt templates that power RAG, optional web search, and other flows across your scenarios.",
  1248. "home.cap.human.title": "Human agents & real-time collaboration",
  1249. "home.cap.human.desc":
  1250. "Online presence, live sessions over WebSocket, seamless handoff and teamwork; embed the visitor widget on any site.",
  1251. "home.cap.reports.title": "Analytics",
  1252. "home.cap.reports.desc":
  1253. "Daily or custom ranges for widget opens, sessions, messages, AI success/failure, KB hit rate, and more—see how operations are trending.",
  1254. "home.cap.logs.title": "Structured logs",
  1255. "home.cap.logs.desc":
  1256. "Persisted by category and event with trace_id and keyword search—trace critical paths and incidents for troubleshooting and audit.",
  1257. "home.screenshots.title": "Product screenshots",
  1258. "home.screenshots.lead": "A polished UI that makes day-to-day admin work easier.",
  1259. "home.screenshots.prevAria": "Previous screenshot",
  1260. "home.screenshots.nextAria": "Next screenshot",
  1261. "home.ss.dashboard.title": "Agent workspace",
  1262. "home.ss.dashboard.placeholder": "Workspace preview",
  1263. "home.ss.dashboard.alt": "AI-CS agent workspace",
  1264. "home.ss.visitor.title": "Visitor widget",
  1265. "home.ss.visitor.placeholder": "Visitor UI preview",
  1266. "home.ss.visitor.alt": "AI-CS visitor experience",
  1267. "home.ss.aiconfig.title": "AI configuration",
  1268. "home.ss.aiconfig.placeholder": "AI settings preview",
  1269. "home.ss.aiconfig.alt": "AI-CS AI configuration",
  1270. "home.ss.users.title": "User management",
  1271. "home.ss.users.placeholder": "User admin preview",
  1272. "home.ss.users.alt": "AI-CS user management",
  1273. "home.ss.faq.title": "FAQ management",
  1274. "home.ss.faq.placeholder": "FAQ admin preview",
  1275. "home.ss.faq.alt": "AI-CS FAQ management",
  1276. "home.ss.knowledge.title": "Knowledge base",
  1277. "home.ss.knowledge.placeholder": "Knowledge base preview",
  1278. "home.ss.knowledge.alt": "AI-CS knowledge base",
  1279. "home.ss.kbtest.title": "KB test chat",
  1280. "home.ss.kbtest.placeholder": "KB test preview",
  1281. "home.ss.kbtest.alt": "AI-CS knowledge base test",
  1282. "home.ss.prompts.title": "Prompts",
  1283. "home.ss.prompts.placeholder": "Prompts preview",
  1284. "home.ss.prompts.alt": "AI-CS prompt management",
  1285. "home.ss.logs.title": "Logs",
  1286. "home.ss.logs.placeholder": "Logs preview",
  1287. "home.ss.logs.alt": "AI-CS log center",
  1288. "home.ss.analytics.title": "Analytics",
  1289. "home.ss.analytics.placeholder": "Analytics preview",
  1290. "home.ss.analytics.alt": "AI-CS analytics",
  1291. "home.quickStart.title": "Quick start",
  1292. "home.quickStart.lead": "Three steps from the repo to the visitor widget.",
  1293. "home.step1.title": "Clone & configure",
  1294. "home.step1.body": "Copy the .env template and fill required database and admin settings.",
  1295. "home.step2.title": "Launch",
  1296. "home.step2.body": "Bring up backend, frontend, and dependencies with Docker Compose (see README).",
  1297. "home.step3.title": "Embed for visitors",
  1298. "home.step3.body": "Mount the chat widget on your site; configure models and KB in the console, then go live.",
  1299. "home.cta.title": "Ready to wire AI-CS into your product?",
  1300. "home.cta.subtitle": "Start from the open-source repo, or explore the online demo first.",
  1301. "home.cta.starRepo": "Star / Fork on GitHub",
  1302. "home.cta.feedback": "Send feedback",
  1303. "home.cta.mailSubject": "AI-CS feedback",
  1304. "home.cta.mailBody":
  1305. "Hi,\n\n1) Issue or suggestion:\n2) Scope / environment:\n3) Expected outcome:\n\n---\nContact (optional):",
  1306. "footer.blurb":
  1307. "AI-CS is an AI-powered customer support stack that blends automation and human agents for efficient, modern service.",
  1308. "footer.column.product": "Product",
  1309. "footer.column.friendLinks": "Friends",
  1310. "footer.column.contact": "Contact",
  1311. "footer.noFriendLinks": "No links yet",
  1312. "footer.onlineChat": "Live chat",
  1313. "footer.openSourceLicense": "Open-source license",
  1314. "footer.poweredBy": "Powered by Next.js & Go |",
  1315. "footer.allRightsReserved": "All rights reserved.",
  1316. "footer.emailLabel": "Email",
  1317. "footer.qqGroup": "QQ group",
  1318. "footer.qqGroupAria": "Join QQ group",
  1319. "agent.page.dashboard": "Chats",
  1320. "agent.page.internalChat": "KB Test",
  1321. "agent.page.knowledge": "Knowledge Base",
  1322. "agent.page.faqs": "FAQs",
  1323. "agent.page.analytics": "Analytics",
  1324. "agent.page.logs": "Logs",
  1325. "agent.page.users": "Users",
  1326. "agent.page.prompts": "Prompts",
  1327. "agent.page.settings": "AI Settings",
  1328. "agent.profile": "Profile",
  1329. "agent.logout": "Log out",
  1330. "agent.chat.conversation": "Chat",
  1331. "agent.chat.lastSeen": "Last seen",
  1332. "agent.chat.lastSeenUnknown": "Last seen unknown",
  1333. "agent.chat.showAI": "Show AI messages",
  1334. "agent.chat.hideAI": "Hide AI messages",
  1335. "agent.chat.closeConversation": "Close",
  1336. "agent.chat.refresh": "Refresh",
  1337. "agent.chat.soundOn": "Turn sound off",
  1338. "agent.chat.soundOff": "Turn sound on",
  1339. "agent.chat.toast.conversationClosed": "Conversation closed",
  1340. "agent.chat.toast.closeFailed": "Failed to close conversation",
  1341. "agent.chat.emptyPick": "Select a conversation to start",
  1342. "agent.layout.openNavMenu": "Open navigation and conversation list",
  1343. "agent.layout.openVisitorPanel": "Open visitor details",
  1344. "agent.internalChat.webSearchThisTurn": "Web search this turn",
  1345. "agent.internalChat.aiThinking": "AI is thinking...",
  1346. "agent.internalChat.emptyHint": "Select or create an internal chat to test the knowledge base",
  1347. "agent.internalChat.createFailed": "Failed to create internal chat",
  1348. "agent.login.title": "Agent Login",
  1349. "agent.login.subtitle": "Admins and agents sign in here",
  1350. "agent.login.username": "Username",
  1351. "agent.login.password": "Password",
  1352. "agent.login.submit": "Sign in",
  1353. "agent.login.submitting": "Signing in...",
  1354. "agent.login.error.empty": "Username and password are required",
  1355. "agent.login.error.failed": "Sign-in failed",
  1356. "agent.login.error.network": "Sign-in failed. Check your connection.",
  1357. "agent.login.demoHint": "Default admin: admin / admin123",
  1358. "agent.logs.title": "Logs",
  1359. "agent.logs.subtitle": "Filter AI / RAG / system / frontend logs for troubleshooting.",
  1360. "agent.logs.policy.title": "Persist level (performance)",
  1361. "agent.logs.policy.desc":
  1362. "Only logs at or above this level are persisted. Set to warn to reduce successful info writes. You can set SYSTEM_LOG_MIN_LEVEL in .env as default; saving here persists to DB and overrides env until restored.",
  1363. "agent.logs.policy.current": "Effective:",
  1364. "agent.logs.policy.env": "Env default:",
  1365. "agent.logs.policy.overridden": "(overridden in console)",
  1366. "agent.logs.level.all": "All levels",
  1367. "agent.logs.category.all": "All categories",
  1368. "agent.logs.source.all": "All sources",
  1369. "agent.logs.event.placeholder": "Event",
  1370. "agent.logs.conversationId.placeholder": "Conversation ID",
  1371. "agent.logs.keyword.placeholder": "Keyword (message/meta)",
  1372. "agent.logs.table.time": "Time",
  1373. "agent.logs.table.level": "Level",
  1374. "agent.logs.table.category": "Category",
  1375. "agent.logs.table.event": "Event",
  1376. "agent.logs.table.conversation": "Conversation",
  1377. "agent.logs.table.source": "Source",
  1378. "agent.logs.table.message": "Message",
  1379. "agent.logs.paginationSummary": "{{total}} rows · page {{page}} / {{pages}}",
  1380. "agent.logs.empty": "No logs",
  1381. "agent.logs.detail.title": "Log detail",
  1382. "agent.logs.detail.time": "Time",
  1383. "agent.logs.detail.sourceEvent": "source / event",
  1384. "agent.logs.detail.category": "category",
  1385. "agent.logs.detail.traceId": "trace_id",
  1386. "agent.logs.detail.conversationId": "conversation_id",
  1387. "agent.logs.detail.userVisitor": "user_id / visitor_id",
  1388. "agent.logs.detail.message": "message",
  1389. "agent.logs.detail.metaJson": "meta_json",
  1390. "agent.logs.detail.noMeta": "(no meta_json)",
  1391. "agent.logs.toast.loadPolicyFailed": "Failed to load persist policy",
  1392. "agent.logs.toast.loadLogsFailed": "Failed to load logs",
  1393. "agent.logs.toast.savePolicyFailed": "Save failed",
  1394. "agent.logs.toast.restorePolicyFailed": "Restore failed",
  1395. "agent.logs.toast.policySaved": "Saved",
  1396. "agent.logs.toast.policyRestored": "Restored to env default",
  1397. "agent.logs.toast.messageCopied": "Message copied",
  1398. "agent.logs.toast.copyFailed": "Copy failed",
  1399. "agent.conversationsPage.title": "Conversations",
  1400. "agent.conversationsPage.loading": "Loading...",
  1401. "agent.conversationsPage.empty": "No conversations",
  1402. "agent.conversationsPage.convLabel": "Chat #{{id}}",
  1403. "agent.conversationsPage.visitorLabel": "Visitor ID: {{id}}",
  1404. "agent.conversationsPage.createdAt": "Created: {{time}}",
  1405. "agent.conversationsPage.updatedAt": "Updated: {{time}}",
  1406. "agent.conversations.filter.all": "All chats",
  1407. "agent.conversations.filter.mine": "My chats",
  1408. "agent.conversations.filter.others": "Others",
  1409. "agent.conversations.status.open": "Open",
  1410. "agent.conversations.status.closed": "History",
  1411. "agent.internalChat.title": "KB Test",
  1412. "agent.internalChat.new": "New",
  1413. "agent.conversation.noMessage": "No messages yet",
  1414. "agent.conversation.online": "Online",
  1415. "agent.conversation.visitor": "Visitor",
  1416. "agent.input.upload": "Upload",
  1417. "agent.input.placeholder": "Type a message...",
  1418. "agent.input.placeholder.withAttachment": "Add a message (optional)...",
  1419. "agent.input.sending": "Sending...",
  1420. "agent.input.uploading": "Uploading...",
  1421. "agent.input.send": "Send",
  1422. "agent.input.fileTooLarge": "File is too large (max 10MB)",
  1423. "agent.input.fileTypeNotSupported": "Unsupported file type",
  1424. "agent.input.uploadFailed": "Upload failed",
  1425. "agent.aiSource.kb": "Knowledge base used",
  1426. "agent.aiSource.llm": "LLM used",
  1427. "agent.aiSource.web": "Web search used",
  1428. "agent.common.back": "Back",
  1429. "agent.common.cancel": "Cancel",
  1430. "agent.common.create": "Create",
  1431. "agent.common.update": "Update",
  1432. "agent.common.delete": "Delete",
  1433. "agent.common.edit": "Edit",
  1434. "agent.common.keywordSearch": "Keyword search",
  1435. "agent.common.noMatch": "No results found",
  1436. "agent.common.none": "None",
  1437. "agent.common.confirm": "Confirm",
  1438. "agent.faqs.title": "FAQs",
  1439. "agent.faqs.subtitle": "Manage FAQ/event templates with keyword search.",
  1440. "agent.faqs.search.placeholder": "Keyword search (use % as separator)...",
  1441. "agent.faqs.createButton": "Create",
  1442. "agent.faqs.empty": "No FAQs",
  1443. "agent.faqs.empty.filtered": "No matching FAQs",
  1444. "agent.faqs.dialog.createTitle": "Create FAQ",
  1445. "agent.faqs.dialog.editTitle": "Edit FAQ",
  1446. "agent.faqs.dialog.deleteTitle": "Delete FAQ",
  1447. "agent.faqs.form.question": "Question",
  1448. "agent.faqs.form.answer": "Answer",
  1449. "agent.faqs.form.keywords": "Keywords",
  1450. "agent.faqs.form.keywordsHint": "Separate keywords with % for better matching",
  1451. "agent.faqs.toast.loadFailed": "Failed to load FAQs",
  1452. "agent.faqs.toast.createFailed": "Failed to create FAQ",
  1453. "agent.faqs.toast.updateFailed": "Failed to update FAQ",
  1454. "agent.faqs.toast.deleteFailed": "Failed to delete FAQ",
  1455. "agent.faqs.toast.createSuccess": "Created",
  1456. "agent.faqs.toast.updateSuccess": "Updated",
  1457. "agent.faqs.toast.deleteSuccess": "Deleted",
  1458. "agent.faqs.quickSearch.placeholder": "Type to search FAQs...",
  1459. "agent.faqs.quickSearch.searching": "Searching...",
  1460. "agent.faqs.quickSearch.noResults": "No matching FAQs found",
  1461. "agent.faqs.quickSearch.startTyping": "Type keywords to search",
  1462. "agent.faqs.toast.emptyRequired": "Question and answer are required",
  1463. "agent.faqs.card.keywords": "Keywords",
  1464. "agent.faqs.card.createdAt": "Created",
  1465. "agent.faqs.card.edit": "Edit",
  1466. "agent.faqs.dialog.createTitle2": "Create FAQ",
  1467. "agent.faqs.dialog.createDesc": "Provide question and answer. Add keywords for search.",
  1468. "agent.faqs.dialog.editDesc": "Update question/answer and keywords for search.",
  1469. "agent.faqs.dialog.deleteConfirm": "Delete \"{{name}}\"?",
  1470. "agent.faqs.form.placeholder.question": "Enter question",
  1471. "agent.faqs.form.placeholder.answer": "Enter answer",
  1472. "agent.faqs.form.placeholder.keywords":
  1473. "e.g. API, error, config (comma or space separated)",
  1474. "agent.faqs.form.keywordsOptional": "Keywords (optional)",
  1475. "agent.faqs.form.keywordsTip":
  1476. "Tip: Even without keywords, the system searches question and answer content. Keywords add extra search index for faster matching.",
  1477. "agent.faqs.submit.creating": "Creating...",
  1478. "agent.faqs.submit.deleting": "Deleting...",
  1479. "agent.perm.analytics": "Analytics",
  1480. "agent.perm.chat": "Chat",
  1481. "agent.perm.faqs": "FAQs",
  1482. "agent.perm.kb_test": "KB test",
  1483. "agent.perm.knowledge": "Knowledge base",
  1484. "agent.perm.logs": "Logs",
  1485. "agent.perm.prompts": "Prompts",
  1486. "agent.perm.settings": "AI settings",
  1487. "agent.perm.users": "Users",
  1488. "agent.settings.aiCard.titleAdd": "Add AI config",
  1489. "agent.settings.aiCard.titleEdit": "Edit AI config",
  1490. "agent.settings.aiForm.active": "Enabled",
  1491. "agent.settings.aiForm.apiKey": "API key",
  1492. "agent.settings.aiForm.apiUrl": "API URL",
  1493. "agent.settings.aiForm.apiUrlPh": "https://api.openai.com/v1/chat/completions",
  1494. "agent.settings.aiForm.descPh": "e.g. OpenAI GPT-3.5 Turbo",
  1495. "agent.settings.aiForm.description": "Description",
  1496. "agent.settings.aiForm.model": "Model name",
  1497. "agent.settings.aiForm.modelType": "Model type",
  1498. "agent.settings.aiForm.modelPh": "e.g. gpt-3.5-turbo, gpt-4",
  1499. "agent.settings.aiForm.provider": "Provider",
  1500. "agent.settings.aiForm.providerPh": "e.g. OpenAI, Claude, Custom",
  1501. "agent.settings.aiForm.public": "Available to visitors",
  1502. "agent.settings.aiForm.submitCreate": "Create",
  1503. "agent.settings.aiForm.submitUpdate": "Update",
  1504. "agent.settings.aiForm.submitting": "Submitting...",
  1505. "agent.settings.backDashboard": "Back to workspace",
  1506. "agent.settings.badge.active": "On",
  1507. "agent.settings.badge.public": "Public",
  1508. "agent.settings.confirmDeleteConfig": "Delete this configuration?",
  1509. "agent.settings.embedding.apiKey": "API key",
  1510. "agent.settings.embedding.apiKeyKeepEmpty": "Leave blank to keep unchanged",
  1511. "agent.settings.embedding.apiKeyInput": "Enter API key",
  1512. "agent.settings.embedding.apiUrl": "API URL",
  1513. "agent.settings.embedding.apiUrlPh": "https://api.openai.com/v1 or compatible URL",
  1514. "agent.settings.embedding.bgeLocal": "BGE local",
  1515. "agent.settings.embedding.customerKb":
  1516. "Let agents use the knowledge base (create KBs, upload docs, cite in chat)",
  1517. "agent.settings.embedding.lead":
  1518. "Embeddings for KB documents and RAG. Admins only; changes apply immediately without restart.",
  1519. "agent.settings.embedding.model": "Model",
  1520. "agent.settings.embedding.modelPh": "text-embedding-3-small",
  1521. "agent.settings.embedding.openaiCompatible": "OpenAI / compatible API",
  1522. "agent.settings.embedding.save": "Save",
  1523. "agent.settings.embedding.title": "Embedding model (knowledge base)",
  1524. "agent.settings.embedding.type": "Type",
  1525. "agent.settings.error.delete": "Delete failed",
  1526. "agent.settings.error.loadConfigs": "Failed to load configs",
  1527. "agent.settings.error.loadEmbedding": "Load failed",
  1528. "agent.settings.error.operation": "Operation failed",
  1529. "agent.settings.global.noReceiveAi": "Do not receive AI conversations",
  1530. "agent.settings.global.noReceiveAiHint":
  1531. "When enabled, AI conversations won't appear in your list or notify you. You can still open a chat and turn on “Show AI messages” to view history.",
  1532. "agent.settings.list.apiUrlLabel": "API URL:",
  1533. "agent.settings.list.descLabel": "Description:",
  1534. "agent.settings.list.empty": "No configs yet — add one",
  1535. "agent.settings.list.modelTypeLabel": "Model type:",
  1536. "agent.settings.list.title": "Configured providers",
  1537. "agent.settings.modelType.audio": "Audio",
  1538. "agent.settings.modelType.image": "Image",
  1539. "agent.settings.modelType.text": "Text",
  1540. "agent.settings.modelType.video": "Video",
  1541. "agent.settings.section.global": "Global",
  1542. "agent.settings.autoClose.title": "Conversation maintenance",
  1543. "agent.settings.autoClose.lead":
  1544. "Open visitor conversations with no activity for N days are marked closed (not deleted). Find them under History in the chat list. Set 0 to disable.",
  1545. "agent.settings.autoClose.daysLabel": "Auto-close after (days)",
  1546. "agent.settings.autoClose.daysHint": "Based on conversation updated_at. Default 7; 0 = disabled.",
  1547. "agent.settings.autoClose.statusEffective": "Effective",
  1548. "agent.settings.autoClose.statusEnv": "Env default",
  1549. "agent.settings.autoClose.statusDb": "Saved in database (overrides .env)",
  1550. "agent.settings.autoClose.statusEnvOnly": "Using .env default",
  1551. "agent.settings.autoClose.save": "Save maintenance settings",
  1552. "agent.settings.autoClose.resetEnv": "Reset to .env default",
  1553. "agent.settings.autoClose.errorLoad": "Failed to load maintenance settings",
  1554. "agent.settings.autoClose.errorInvalid": "Enter 0 or a positive integer",
  1555. "agent.settings.autoClose.toastSaved": "Saved. Takes effect on the next scheduled run.",
  1556. "agent.settings.autoClose.toastReset": "Reset to .env default",
  1557. "agent.settings.offlineEmail.title": "Offline email notifications",
  1558. "agent.settings.offlineEmail.lead":
  1559. "When a visitor is offline but left an email, agent messages are emailed after a delay. Cancelled if the visitor comes back online. Use cloud SMTP (e.g. Aliyun) or .env defaults.",
  1560. "agent.settings.offlineEmail.enabled": "Enable offline email",
  1561. "agent.settings.offlineEmail.delayLabel": "Offline delay (seconds)",
  1562. "agent.settings.offlineEmail.delayHint": "Wait time after an agent message before sending email. Default 60. Skipped if visitor reconnects.",
  1563. "agent.settings.offlineEmail.smtpHost": "SMTP host",
  1564. "agent.settings.offlineEmail.smtpPort": "SMTP port",
  1565. "agent.settings.offlineEmail.smtpUser": "SMTP username",
  1566. "agent.settings.offlineEmail.smtpPassword": "SMTP password / app password",
  1567. "agent.settings.offlineEmail.smtpPasswordKeepEmpty": "Leave blank to keep saved password",
  1568. "agent.settings.offlineEmail.fromEmail": "From email",
  1569. "agent.settings.offlineEmail.fromName": "From name",
  1570. "agent.settings.offlineEmail.statusEffective": "Effective",
  1571. "agent.settings.offlineEmail.statusEnv": "Env default",
  1572. "agent.settings.offlineEmail.statusDb": "Saved in database (overrides .env)",
  1573. "agent.settings.offlineEmail.statusEnvOnly": "Using .env default",
  1574. "agent.settings.offlineEmail.save": "Save offline email settings",
  1575. "agent.settings.offlineEmail.resetEnv": "Reset to .env default",
  1576. "agent.settings.offlineEmail.testTo": "Test recipient",
  1577. "agent.settings.offlineEmail.testSend": "Send test email",
  1578. "agent.settings.offlineEmail.adminOnly": "Admin only: edit and test",
  1579. "agent.settings.offlineEmail.errorLoad": "Failed to load offline email settings",
  1580. "agent.settings.offlineEmail.errorInvalidDelay": "Delay cannot be negative",
  1581. "agent.settings.offlineEmail.toastSaved": "Offline email settings saved",
  1582. "agent.settings.offlineEmail.toastReset": "Reset to .env default",
  1583. "agent.settings.offlineEmail.toastTestSent": "Test email sent",
  1584. "agent.settings.offlineEmail.statusOn": "Enabled",
  1585. "agent.settings.offlineEmail.statusOff": "Disabled",
  1586. "agent.settings.subtitle": "Manage AI provider settings",
  1587. "agent.settings.title": "AI configuration",
  1588. "agent.settings.toast.embeddingSaved": "Saved. Changes are live.",
  1589. "agent.settings.toast.profileUpdateFailed": "Failed to update settings. Try again.",
  1590. "agent.settings.webSearch.lead":
  1591. "Web search mode and whether visitors see the toggle. Unrelated to embedding settings above.",
  1592. "agent.settings.webSearch.mode": "Web search mode",
  1593. "agent.settings.webSearch.modeCustom": "Self-hosted (Serper)",
  1594. "agent.settings.webSearch.modeHint":
  1595. "Custom: backend uses Serper (MCP or HTTP). Vendor: use the model provider’s built-in web search (no Serper).",
  1596. "agent.settings.webSearch.modeVendor": "Vendor built-in",
  1597. "agent.settings.webSearch.save": "Save web search settings",
  1598. "agent.settings.webSearch.title": "Web search",
  1599. "agent.settings.webSearch.visitorToggle":
  1600. "Show “web search this turn” in the visitor widget",
  1601. "agent.users.card.edit": "Edit",
  1602. "agent.users.card.password": "Password",
  1603. "agent.users.createButton": "Create user",
  1604. "agent.users.dialog.createTitle": "Create user",
  1605. "agent.users.dialog.deleteConfirm": "Delete user {{username}}?",
  1606. "agent.users.dialog.deleteNote":
  1607. "This cannot be undone. If this user has AI configs, they are transferred to the current admin.",
  1608. "agent.users.dialog.deleteTitle": "Delete user",
  1609. "agent.users.dialog.editTitle": "Edit user",
  1610. "agent.users.dialog.passwordTitle": "Change password",
  1611. "agent.users.empty": "No users",
  1612. "agent.users.empty.filtered": "No matching users",
  1613. "agent.users.field.createdAt": "Created",
  1614. "agent.users.field.email": "Email",
  1615. "agent.users.field.username": "Username",
  1616. "agent.users.form.email": "Email",
  1617. "agent.users.form.newPassword": "New password",
  1618. "agent.users.form.oldPassword": "Old password",
  1619. "agent.users.form.password": "Password",
  1620. "agent.users.form.permissions": "Permissions",
  1621. "agent.users.form.permissionsHint":
  1622. "Only “Chat” is on by default. Turning off hides the menu and returns 403 from APIs.",
  1623. "agent.users.form.role": "Role",
  1624. "agent.users.form.username": "Username",
  1625. "agent.users.form.nickname": "Nickname",
  1626. "agent.users.placeholder.email": "Email",
  1627. "agent.users.placeholder.emailOptional": "Email (optional)",
  1628. "agent.users.placeholder.nickname": "Nickname",
  1629. "agent.users.placeholder.nicknameOptional": "Nickname (optional)",
  1630. "agent.users.placeholder.oldPassword": "Current password",
  1631. "agent.users.placeholder.password": "Password",
  1632. "agent.users.placeholder.username": "Username",
  1633. "agent.users.receiveAiLabel": "Receive AI conversations",
  1634. "agent.users.role.admin": "Admin",
  1635. "agent.users.role.agent": "Agent",
  1636. "agent.users.search.placeholder": "Search by username, nickname, email…",
  1637. "agent.users.submit.creating": "Creating...",
  1638. "agent.users.submit.deleting": "Deleting...",
  1639. "agent.users.submit.updating": "Updating...",
  1640. "agent.users.title": "Users",
  1641. "agent.users.toast.adminDeleteDisabled":
  1642. "Admin accounts can only be removed via database; disabled in UI",
  1643. "agent.users.toast.adminPasswordDisabled":
  1644. "Admin passwords can only be changed via database; disabled in UI",
  1645. "agent.users.toast.createFailed": "Failed to create user",
  1646. "agent.users.toast.createSuccess": "Created",
  1647. "agent.users.toast.deleteFailed": "Failed to delete user",
  1648. "agent.users.toast.deleteSuccess": "Deleted",
  1649. "agent.users.toast.deleteTransferred":
  1650. "Deleted. {{count}} AI config(s) moved to the current admin",
  1651. "agent.users.toast.loadFailed": "Failed to load users",
  1652. "agent.users.toast.newPasswordRequired": "New password is required",
  1653. "agent.users.toast.oldPasswordRequired": "Current password is required to change your own password",
  1654. "agent.users.toast.passwordFailed": "Failed to update password",
  1655. "agent.users.toast.passwordSuccess": "Password updated",
  1656. "agent.users.toast.updateFailed": "Failed to update user",
  1657. "agent.users.toast.updateSuccess": "Updated",
  1658. "agent.users.toast.usernamePasswordRequired": "Username and password are required",
  1659. "agent.users.tooltip.adminDeleteDbOnly": "Admin deletion is database-only",
  1660. "agent.users.tooltip.adminPasswordDbOnly": "Admin password is database-only",
  1661. "agent.users.tooltip.cannotDeleteSelf": "You cannot delete the signed-in user",
  1662. "agent.users.usernameImmutableHint": "Username cannot be changed",
  1663. "agent.knowledge.title": "Knowledge base",
  1664. "agent.knowledge.rag": "RAG",
  1665. "agent.knowledge.kb.create": "New knowledge base",
  1666. "agent.knowledge.kb.empty": "No knowledge bases",
  1667. "agent.knowledge.kb.selectOne": "Select a knowledge base",
  1668. "agent.knowledge.kb.docCount": "{{count}} docs",
  1669. "agent.knowledge.import.url": "Import URL",
  1670. "agent.knowledge.import.file": "Import files",
  1671. "agent.knowledge.import.tabFile": "Files",
  1672. "agent.knowledge.import.tabUrl": "URLs",
  1673. "agent.knowledge.import.pickFiles": "Choose files",
  1674. "agent.knowledge.import.filesSelected": "{{count}} file(s) selected",
  1675. "agent.knowledge.import.action": "Import",
  1676. "agent.knowledge.import.urlListLabel": "URL list (one per line)",
  1677. "agent.knowledge.doc.create": "New doc",
  1678. "agent.knowledge.doc.searchPh": "Search docs...",
  1679. "agent.knowledge.doc.empty": "No docs",
  1680. "agent.knowledge.doc.empty.filtered": "No matching docs",
  1681. "agent.knowledge.doc.type": "Type",
  1682. "agent.knowledge.doc.createdAt": "Created",
  1683. "agent.knowledge.doc.publish": "Publish",
  1684. "agent.knowledge.doc.unpublish": "Unpublish",
  1685. "agent.knowledge.filter.all": "All statuses",
  1686. "agent.knowledge.pagination": "Page {{page}} / {{totalPage}}, total {{total}}",
  1687. "agent.knowledge.status.draft": "Draft",
  1688. "agent.knowledge.status.published": "Published",
  1689. "agent.knowledge.embedding.pending": "Pending",
  1690. "agent.knowledge.embedding.processing": "Processing",
  1691. "agent.knowledge.embedding.completed": "Completed",
  1692. "agent.knowledge.embedding.failed": "Failed",
  1693. "agent.knowledge.dialog.kbCreateTitle": "Create knowledge base",
  1694. "agent.knowledge.dialog.kbCreateDesc": "Enter name and description",
  1695. "agent.knowledge.dialog.kbEditTitle": "Edit knowledge base",
  1696. "agent.knowledge.dialog.kbEditDesc": "Update name and description",
  1697. "agent.knowledge.dialog.kbDeleteTitle": "Delete knowledge base",
  1698. "agent.knowledge.dialog.kbDeleteConfirm": "Delete knowledge base \"{{name}}\"?",
  1699. "agent.knowledge.dialog.kbDeleteHint":
  1700. "This will also delete all docs in the knowledge base. This action cannot be undone.",
  1701. "agent.knowledge.dialog.docCreateTitle": "Create doc",
  1702. "agent.knowledge.dialog.docCreateDesc": "Enter title and content",
  1703. "agent.knowledge.dialog.docEditTitle": "Edit doc",
  1704. "agent.knowledge.dialog.docEditDesc": "Update title and content",
  1705. "agent.knowledge.dialog.docDeleteTitle": "Delete doc",
  1706. "agent.knowledge.dialog.docDeleteConfirm": "Delete doc \"{{title}}\"?",
  1707. "agent.knowledge.dialog.importTitle": "Import docs",
  1708. "agent.knowledge.dialog.importDesc":
  1709. "Upload files or import by URL. Supported: Markdown (.md, .markdown), PDF (.pdf), Word (.docx). Legacy .doc files must be converted to .docx first.",
  1710. "agent.knowledge.field.name": "Name",
  1711. "agent.knowledge.field.descOptional": "Description (optional)",
  1712. "agent.knowledge.field.title": "Title",
  1713. "agent.knowledge.field.summaryOptional": "Summary (optional)",
  1714. "agent.knowledge.field.content": "Content",
  1715. "agent.knowledge.ph.kbName": "Knowledge base name",
  1716. "agent.knowledge.ph.kbDesc": "Knowledge base description",
  1717. "agent.knowledge.ph.docTitle": "Doc title",
  1718. "agent.knowledge.ph.docSummary": "Doc summary",
  1719. "agent.knowledge.ph.docContent": "Doc content",
  1720. "agent.knowledge.submitting.creating": "Creating...",
  1721. "agent.knowledge.submitting.updating": "Updating...",
  1722. "agent.knowledge.submitting.deleting": "Deleting...",
  1723. "agent.knowledge.submitting.importing": "Importing...",
  1724. "agent.knowledge.toast.loadKbFailed": "Failed to load knowledge bases",
  1725. "agent.knowledge.toast.loadDocFailed": "Failed to load docs",
  1726. "agent.knowledge.toast.kbNameRequired": "Knowledge base name is required",
  1727. "agent.knowledge.toast.selectKbFirst": "Please select a knowledge base first",
  1728. "agent.knowledge.toast.docTitleContentRequired": "Title and content are required",
  1729. "agent.knowledge.toast.createSuccess": "Created",
  1730. "agent.knowledge.toast.updateSuccess": "Updated",
  1731. "agent.knowledge.toast.deleteSuccess": "Deleted",
  1732. "agent.knowledge.toast.updateFailed": "Update failed",
  1733. "agent.knowledge.toast.createKbFailed": "Failed to create knowledge base",
  1734. "agent.knowledge.toast.updateKbFailed": "Failed to update knowledge base",
  1735. "agent.knowledge.toast.deleteKbFailed": "Failed to delete knowledge base",
  1736. "agent.knowledge.toast.createDocFailed": "Failed to create doc",
  1737. "agent.knowledge.toast.updateDocFailed": "Failed to update doc",
  1738. "agent.knowledge.toast.deleteDocFailed": "Failed to delete doc",
  1739. "agent.knowledge.toast.publishSuccess": "Published",
  1740. "agent.knowledge.toast.publishFailed": "Failed to publish doc",
  1741. "agent.knowledge.toast.unpublishSuccess": "Unpublished",
  1742. "agent.knowledge.toast.unpublishFailed": "Failed to unpublish doc",
  1743. "agent.knowledge.toast.selectFiles": "Please choose files to import",
  1744. "agent.knowledge.toast.urlRequired": "Please enter at least one URL",
  1745. "agent.knowledge.toast.importDocFailed": "Failed to import docs",
  1746. "agent.knowledge.toast.importUrlFailed": "Failed to import URLs",
  1747. "agent.knowledge.toast.importRefreshFailed":
  1748. "Imported, but failed to refresh list. Please refresh the page.",
  1749. "agent.knowledge.toast.importFailed.files": "Import failed: {{count}} file(s)",
  1750. "agent.knowledge.toast.importFailed.urls": "Import failed: {{count}} URL(s)",
  1751. "agent.knowledge.toast.importDone.files": "Imported: {{success}} file(s)",
  1752. "agent.knowledge.toast.importDone.urls": "Imported: {{success}} URL(s)",
  1753. "agent.knowledge.toast.importDone.partial":
  1754. "Imported: {{success}} success, {{failed}} failed {{err}}",
  1755. "agent.prompts.title": "Prompts",
  1756. "agent.prompts.subtitle":
  1757. "Edit system prompt templates for RAG and web search. Admin only. Placeholder hints are shown per card.",
  1758. "agent.prompts.loadFailed": "Failed to load prompts",
  1759. "agent.prompts.saveSuccess": "Saved. Changes apply immediately.",
  1760. "agent.prompts.saveFailed": "Save failed",
  1761. "agent.prompts.usageLabel": "When used:",
  1762. "agent.prompts.ph.shortReply": "Enter a full short reply sentence",
  1763. "agent.prompts.ph.withPlaceholders": "Enter prompt text; keep placeholders",
  1764. "agent.prompts.saving": "Saving...",
  1765. "agent.prompts.save": "Save",
  1766. "agent.prompts.hint.rag_prompt":
  1767. "Placeholders: {{rag_context}} = retrieved KB text, {{user_message}} = user question.",
  1768. "agent.prompts.hint.rag_prompt_with_web_optional":
  1769. "Placeholders: {{rag_context}} = retrieved KB text, {{user_message}} = user question.",
  1770. "agent.prompts.hint.no_kb_prompt": "Placeholder: {{user_message}} = user question.",
  1771. "agent.prompts.hint.web_search_result_prompt":
  1772. "Placeholders: {{web_context}} = web results, {{user_message}} = user question. (Not used in current flow)",
  1773. "agent.prompts.hint.no_source_reply": "No placeholders; shown to the user as a full reply.",
  1774. "agent.prompts.hint.ai_fail_reply": "No placeholders; shown to the user as a full reply.",
  1775. "agent.prompts.hint.default": "Do not remove placeholders; they are filled in by the system.",
  1776. "agent.prompts.usage.rag_prompt":
  1777. "When KB retrieval succeeded and web search is off for this turn, this template is sent to the model.",
  1778. "agent.prompts.usage.rag_prompt_with_web_optional":
  1779. "When KB retrieval succeeded and web search is on, this template enables the model to optionally use web tools.",
  1780. "agent.prompts.usage.no_kb_prompt":
  1781. "When there is no KB hit and no web flow, the model answers from its own knowledge only.",
  1782. "agent.prompts.usage.web_search_result_prompt":
  1783. "Reserved for a future “web first, then prompt” flow. Not used today.",
  1784. "agent.prompts.usage.no_source_reply":
  1785. "When no KB/model/web sources apply, show this sentence to the user.",
  1786. "agent.prompts.usage.ai_fail_reply": "When the AI API errors or times out, show this sentence to the user.",
  1787. "agent.analytics.title": "Analytics",
  1788. "agent.analytics.subtitle":
  1789. "Visitor widget & AI support stats (calendar day in Shanghai; excludes internal “KB test” chats)",
  1790. "agent.analytics.from": "From",
  1791. "agent.analytics.to": "To",
  1792. "agent.analytics.query": "Query",
  1793. "agent.analytics.loading": "Loading…",
  1794. "agent.analytics.empty": "No data",
  1795. "agent.analytics.emptyOrFailed": "No data or failed to load",
  1796. "agent.analytics.stat.widgetOpens": "Widget opens",
  1797. "agent.analytics.stat.widgetOpensSub": "Requires frontend tracking; history may be 0",
  1798. "agent.analytics.stat.sessions": "New sessions",
  1799. "agent.analytics.stat.messages": "Messages",
  1800. "agent.analytics.stat.aiReplies": "AI replies",
  1801. "agent.analytics.stat.aiFailed": "AI failures",
  1802. "agent.analytics.stat.aiFailureRate": "AI failure rate",
  1803. "agent.analytics.stat.aiFailureRateSub": "Of AI reply rows",
  1804. "agent.analytics.stat.kbHits": "KB hits",
  1805. "agent.analytics.stat.kbHitRate": "KB hit rate",
  1806. "agent.analytics.stat.kbHitRateSub": "Of successful AI replies",
  1807. "agent.analytics.stat.maxAiRounds": "Max AI rounds / session",
  1808. "agent.analytics.stat.maxAiRoundsSub": "One round = user + AI once",
  1809. "agent.analytics.stat.sessionsWithAi": "Sessions with AI",
  1810. "agent.analytics.stat.sessionsWithAiSub": "{{pct}} of new sessions",
  1811. "agent.analytics.stat.aiToHuman": "AI → human (sessions)",
  1812. "agent.analytics.stat.aiToHumanSub": "{{pct}} of sessions that had AI messages",
  1813. "agent.analytics.stat.humanToAi": "Human → AI (sessions)",
  1814. "agent.analytics.stat.humanToAiSub": "{{pct}} of sessions that had human messages",
  1815. "agent.analytics.chart.widgetOpens": "Widget opens by day",
  1816. "agent.analytics.chart.sessions": "New sessions by day",
  1817. "agent.analytics.chart.messages": "Messages by day",
  1818. "agent.analytics.chart.aiReplies": "AI replies by day",
  1819. "common.irreversibleHint": "This action cannot be undone.",
  1820. "chat.title": "Chat",
  1821. "chat.mode.human": "Human",
  1822. "chat.mode.ai": "AI",
  1823. "chat.email.placeholder": "Leave your email to get replies when offline",
  1824. "chat.email.optional": "Optional",
  1825. "chat.email.privacy": "Email is only used for support replies, not marketing",
  1826. "chat.input.placeholder": "Type a message",
  1827. },
  1828. };