libre-webui 0.17.0 → 0.18.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (279) hide show
  1. package/backend/dist/db.d.ts.map +1 -1
  2. package/backend/dist/db.js +150 -6
  3. package/backend/dist/db.js.map +1 -1
  4. package/backend/dist/index.d.ts.map +1 -1
  5. package/backend/dist/index.js +15 -10
  6. package/backend/dist/index.js.map +1 -1
  7. package/backend/dist/middleware/auth.d.ts.map +1 -1
  8. package/backend/dist/middleware/auth.js +35 -3
  9. package/backend/dist/middleware/auth.js.map +1 -1
  10. package/backend/dist/models/userModel.d.ts +23 -0
  11. package/backend/dist/models/userModel.d.ts.map +1 -1
  12. package/backend/dist/models/userModel.js +89 -24
  13. package/backend/dist/models/userModel.js.map +1 -1
  14. package/backend/dist/routes/agentCli.d.ts.map +1 -1
  15. package/backend/dist/routes/agentCli.js +2 -0
  16. package/backend/dist/routes/agentCli.js.map +1 -1
  17. package/backend/dist/routes/auth.d.ts.map +1 -1
  18. package/backend/dist/routes/auth.js +46 -33
  19. package/backend/dist/routes/auth.js.map +1 -1
  20. package/backend/dist/routes/chat.d.ts.map +1 -1
  21. package/backend/dist/routes/chat.js +3 -1
  22. package/backend/dist/routes/chat.js.map +1 -1
  23. package/backend/dist/routes/documents.d.ts.map +1 -1
  24. package/backend/dist/routes/documents.js +49 -41
  25. package/backend/dist/routes/documents.js.map +1 -1
  26. package/backend/dist/routes/embeddings.js +2 -2
  27. package/backend/dist/routes/embeddings.js.map +1 -1
  28. package/backend/dist/routes/huggingfaceHub.d.ts.map +1 -1
  29. package/backend/dist/routes/huggingfaceHub.js +3 -1
  30. package/backend/dist/routes/huggingfaceHub.js.map +1 -1
  31. package/backend/dist/routes/imageGen.d.ts.map +1 -1
  32. package/backend/dist/routes/imageGen.js +2 -0
  33. package/backend/dist/routes/imageGen.js.map +1 -1
  34. package/backend/dist/routes/media.d.ts +3 -0
  35. package/backend/dist/routes/media.d.ts.map +1 -0
  36. package/backend/dist/routes/media.js +429 -0
  37. package/backend/dist/routes/media.js.map +1 -0
  38. package/backend/dist/routes/ollama.d.ts.map +1 -1
  39. package/backend/dist/routes/ollama.js +15 -83
  40. package/backend/dist/routes/ollama.js.map +1 -1
  41. package/backend/dist/routes/personas.d.ts.map +1 -1
  42. package/backend/dist/routes/personas.js +2 -0
  43. package/backend/dist/routes/personas.js.map +1 -1
  44. package/backend/dist/routes/plugins.d.ts.map +1 -1
  45. package/backend/dist/routes/plugins.js +28 -0
  46. package/backend/dist/routes/plugins.js.map +1 -1
  47. package/backend/dist/routes/systemDiagnostics.d.ts +3 -0
  48. package/backend/dist/routes/systemDiagnostics.d.ts.map +1 -0
  49. package/backend/dist/routes/systemDiagnostics.js +49 -0
  50. package/backend/dist/routes/systemDiagnostics.js.map +1 -0
  51. package/backend/dist/routes/tts.d.ts.map +1 -1
  52. package/backend/dist/routes/tts.js +4 -0
  53. package/backend/dist/routes/tts.js.map +1 -1
  54. package/backend/dist/routes/users.d.ts.map +1 -1
  55. package/backend/dist/routes/users.js +58 -0
  56. package/backend/dist/routes/users.js.map +1 -1
  57. package/backend/dist/routes/work.d.ts.map +1 -1
  58. package/backend/dist/routes/work.js +84 -0
  59. package/backend/dist/routes/work.js.map +1 -1
  60. package/backend/dist/services/authService.d.ts +15 -9
  61. package/backend/dist/services/authService.d.ts.map +1 -1
  62. package/backend/dist/services/authService.js +34 -29
  63. package/backend/dist/services/authService.js.map +1 -1
  64. package/backend/dist/services/chatRequestService.d.ts +8 -2
  65. package/backend/dist/services/chatRequestService.d.ts.map +1 -1
  66. package/backend/dist/services/chatRequestService.js +30 -3
  67. package/backend/dist/services/chatRequestService.js.map +1 -1
  68. package/backend/dist/services/documentService.d.ts +11 -10
  69. package/backend/dist/services/documentService.d.ts.map +1 -1
  70. package/backend/dist/services/documentService.js +62 -54
  71. package/backend/dist/services/documentService.js.map +1 -1
  72. package/backend/dist/services/encryptionService.d.ts.map +1 -1
  73. package/backend/dist/services/encryptionService.js +18 -8
  74. package/backend/dist/services/encryptionService.js.map +1 -1
  75. package/backend/dist/services/galleryService.d.ts +23 -1
  76. package/backend/dist/services/galleryService.d.ts.map +1 -1
  77. package/backend/dist/services/galleryService.js +125 -8
  78. package/backend/dist/services/galleryService.js.map +1 -1
  79. package/backend/dist/services/mediaGenerationJobService.d.ts +25 -0
  80. package/backend/dist/services/mediaGenerationJobService.d.ts.map +1 -0
  81. package/backend/dist/services/mediaGenerationJobService.js +82 -0
  82. package/backend/dist/services/mediaGenerationJobService.js.map +1 -0
  83. package/backend/dist/services/pluginAudioGenerationService.d.ts +34 -0
  84. package/backend/dist/services/pluginAudioGenerationService.d.ts.map +1 -0
  85. package/backend/dist/services/pluginAudioGenerationService.js +211 -0
  86. package/backend/dist/services/pluginAudioGenerationService.js.map +1 -0
  87. package/backend/dist/services/pluginCapabilityRegistryService.d.ts.map +1 -1
  88. package/backend/dist/services/pluginCapabilityRegistryService.js +6 -0
  89. package/backend/dist/services/pluginCapabilityRegistryService.js.map +1 -1
  90. package/backend/dist/services/pluginEmbeddingService.d.ts +2 -0
  91. package/backend/dist/services/pluginEmbeddingService.d.ts.map +1 -1
  92. package/backend/dist/services/pluginEmbeddingService.js +66 -35
  93. package/backend/dist/services/pluginEmbeddingService.js.map +1 -1
  94. package/backend/dist/services/pluginImageGenerationService.d.ts +2 -0
  95. package/backend/dist/services/pluginImageGenerationService.d.ts.map +1 -1
  96. package/backend/dist/services/pluginImageGenerationService.js +63 -38
  97. package/backend/dist/services/pluginImageGenerationService.js.map +1 -1
  98. package/backend/dist/services/pluginService.d.ts +38 -1
  99. package/backend/dist/services/pluginService.d.ts.map +1 -1
  100. package/backend/dist/services/pluginService.js +390 -69
  101. package/backend/dist/services/pluginService.js.map +1 -1
  102. package/backend/dist/services/pluginTTSService.d.ts +2 -0
  103. package/backend/dist/services/pluginTTSService.d.ts.map +1 -1
  104. package/backend/dist/services/pluginTTSService.js +27 -2
  105. package/backend/dist/services/pluginTTSService.js.map +1 -1
  106. package/backend/dist/services/pluginUsageService.d.ts +82 -0
  107. package/backend/dist/services/pluginUsageService.d.ts.map +1 -0
  108. package/backend/dist/services/pluginUsageService.js +238 -0
  109. package/backend/dist/services/pluginUsageService.js.map +1 -0
  110. package/backend/dist/services/pluginVideoGenerationService.d.ts +45 -0
  111. package/backend/dist/services/pluginVideoGenerationService.d.ts.map +1 -0
  112. package/backend/dist/services/pluginVideoGenerationService.js +198 -0
  113. package/backend/dist/services/pluginVideoGenerationService.js.map +1 -0
  114. package/backend/dist/services/preferencesService.d.ts.map +1 -1
  115. package/backend/dist/services/preferencesService.js +15 -1
  116. package/backend/dist/services/preferencesService.js.map +1 -1
  117. package/backend/dist/services/registrationPolicy.d.ts +5 -0
  118. package/backend/dist/services/registrationPolicy.d.ts.map +1 -0
  119. package/backend/dist/services/registrationPolicy.js +21 -0
  120. package/backend/dist/services/registrationPolicy.js.map +1 -0
  121. package/backend/dist/services/simpleGitHubOAuth.d.ts.map +1 -1
  122. package/backend/dist/services/simpleGitHubOAuth.js +8 -12
  123. package/backend/dist/services/simpleGitHubOAuth.js.map +1 -1
  124. package/backend/dist/services/simpleHuggingFaceOAuth.d.ts.map +1 -1
  125. package/backend/dist/services/simpleHuggingFaceOAuth.js +7 -12
  126. package/backend/dist/services/simpleHuggingFaceOAuth.js.map +1 -1
  127. package/backend/dist/services/systemDiagnosticsService.d.ts +117 -0
  128. package/backend/dist/services/systemDiagnosticsService.d.ts.map +1 -0
  129. package/backend/dist/services/systemDiagnosticsService.js +326 -0
  130. package/backend/dist/services/systemDiagnosticsService.js.map +1 -0
  131. package/backend/dist/services/turnstileService.d.ts +2 -1
  132. package/backend/dist/services/turnstileService.d.ts.map +1 -1
  133. package/backend/dist/services/turnstileService.js +28 -2
  134. package/backend/dist/services/turnstileService.js.map +1 -1
  135. package/backend/dist/services/workModelProviderService.d.ts +3 -0
  136. package/backend/dist/services/workModelProviderService.d.ts.map +1 -1
  137. package/backend/dist/services/workModelProviderService.js +37 -4
  138. package/backend/dist/services/workModelProviderService.js.map +1 -1
  139. package/backend/dist/services/workPreviewProxyService.d.ts +27 -0
  140. package/backend/dist/services/workPreviewProxyService.d.ts.map +1 -0
  141. package/backend/dist/services/workPreviewProxyService.js +514 -0
  142. package/backend/dist/services/workPreviewProxyService.js.map +1 -0
  143. package/backend/dist/services/workRuntimeService.d.ts +22 -1
  144. package/backend/dist/services/workRuntimeService.d.ts.map +1 -1
  145. package/backend/dist/services/workRuntimeService.js +287 -8
  146. package/backend/dist/services/workRuntimeService.js.map +1 -1
  147. package/backend/dist/storage.d.ts.map +1 -1
  148. package/backend/dist/storage.js +3 -3
  149. package/backend/dist/storage.js.map +1 -1
  150. package/backend/dist/types/index.d.ts +77 -1
  151. package/backend/dist/types/index.d.ts.map +1 -1
  152. package/backend/dist/types/index.js.map +1 -1
  153. package/backend/dist/types/work.d.ts +31 -0
  154. package/backend/dist/types/work.d.ts.map +1 -1
  155. package/backend/dist/utils/chatDocumentContext.d.ts +1 -1
  156. package/backend/dist/utils/chatDocumentContext.d.ts.map +1 -1
  157. package/backend/dist/utils/chatDocumentContext.js +4 -4
  158. package/backend/dist/utils/chatDocumentContext.js.map +1 -1
  159. package/backend/dist/utils/pluginDefinitionTrust.js +1 -1
  160. package/backend/dist/utils/pluginValidation.d.ts +3 -2
  161. package/backend/dist/utils/pluginValidation.d.ts.map +1 -1
  162. package/backend/dist/utils/pluginValidation.js +30 -2
  163. package/backend/dist/utils/pluginValidation.js.map +1 -1
  164. package/backend/dist/utils/workGit.d.ts +14 -0
  165. package/backend/dist/utils/workGit.d.ts.map +1 -0
  166. package/backend/dist/utils/workGit.js +207 -0
  167. package/backend/dist/utils/workGit.js.map +1 -0
  168. package/backend/dist/websocketServer.d.ts +1 -0
  169. package/backend/dist/websocketServer.d.ts.map +1 -1
  170. package/backend/dist/websocketServer.js +108 -24
  171. package/backend/dist/websocketServer.js.map +1 -1
  172. package/backend/dist/workTerminalServer.d.ts.map +1 -1
  173. package/backend/dist/workTerminalServer.js +3 -1
  174. package/backend/dist/workTerminalServer.js.map +1 -1
  175. package/backend/package.json +1 -1
  176. package/frontend/dist/assets/index-ChhWhug2.css +1 -0
  177. package/frontend/dist/assets/index-CmZntyR1.js +3 -0
  178. package/frontend/dist/index.html +26 -6
  179. package/frontend/dist/js/ArtifactContainer-CBAbdoIJ.js +1 -0
  180. package/frontend/dist/js/{ArtifactDemoPage-B4qsvUnF.js → ArtifactDemoPage-BWN0MWCx.js} +1 -1
  181. package/frontend/dist/js/ArtifactSlideOutPanel-D-AvYkfk.js +1 -0
  182. package/frontend/dist/js/ChatPage-w2FkF_fE.js +16 -0
  183. package/frontend/dist/js/FirstTimeSetup-CzBxl7UH.js +1 -0
  184. package/frontend/dist/js/GalleryPage-Cv8pniRW.js +1 -0
  185. package/frontend/dist/js/HomePage-Vyj4ndU4.js +1 -0
  186. package/frontend/dist/js/LibreClawPage-CYhLgQB-.js +1 -0
  187. package/frontend/dist/js/{ModelManagerModals-DMoEav1l.js → ModelManagerModals-C2rwHd01.js} +1 -1
  188. package/frontend/dist/js/ModelSelector-D7kDjZV9.js +1 -0
  189. package/frontend/dist/js/ModelsPage-BnUddkrs.js +2 -0
  190. package/frontend/dist/js/PersonasPage-BL5XlrEm.js +13 -0
  191. package/frontend/dist/js/PluginUsagePage-BXqweCCs.js +1 -0
  192. package/frontend/dist/js/{RichMessageContent-BJ49VN9j.js → RichMessageContent-nAEaPTpH.js} +2 -2
  193. package/frontend/dist/js/SettingsModal-DZYCI5-y.js +1 -0
  194. package/frontend/dist/js/SystemPage-jdHYfn9A.js +1 -0
  195. package/frontend/dist/js/UserManagementPage-BpOnt6os.js +1 -0
  196. package/frontend/dist/js/WorkPage-DAp1T1dl.js +5 -0
  197. package/frontend/dist/js/api-BCqWXjZI.js +19 -0
  198. package/frontend/dist/js/appStore-CDM6V5ny.js +2 -0
  199. package/frontend/dist/js/ar-DS8gs8WK.js +2 -0
  200. package/frontend/dist/js/{authStore-mOYH_AXI.js → authStore-Bl5ofD_h.js} +3 -3
  201. package/frontend/dist/js/bn-CrMPJwTR.js +2 -0
  202. package/frontend/dist/js/cs-BL116Ezu.js +2 -0
  203. package/frontend/dist/js/da-TDNaKzqy.js +2 -0
  204. package/frontend/dist/js/de-DkIqdAB5.js +2 -0
  205. package/frontend/dist/js/es-CHRXt6Fd.js +2 -0
  206. package/frontend/dist/js/{estree-0vwU39qX.js → estree-BFya-bSu.js} +1 -1
  207. package/frontend/dist/js/fr-8715yUKq.js +2 -0
  208. package/frontend/dist/js/hi-C2O08SBU.js +2 -0
  209. package/frontend/dist/js/{html-CApr2Bvi.js → html-DJot0Wwf.js} +1 -1
  210. package/frontend/dist/js/id-Dq7UXUEV.js +2 -0
  211. package/frontend/dist/js/is-B3dbbhSl.js +2 -0
  212. package/frontend/dist/js/it-CLSuu2K7.js +2 -0
  213. package/frontend/dist/js/ja-CthrqyCR.js +2 -0
  214. package/frontend/dist/js/ko-BJvFDJ82.js +2 -0
  215. package/frontend/dist/js/{markdown-C78Qc6xu.js → markdown-CXwWsPYG.js} +1 -1
  216. package/frontend/dist/js/ms-QV0202Mj.js +2 -0
  217. package/frontend/dist/js/nl-Dob1m1pV.js +2 -0
  218. package/frontend/dist/js/pl-urfOKnYI.js +2 -0
  219. package/frontend/dist/js/pt-D52Xkpi0.js +2 -0
  220. package/frontend/dist/js/ru-CwnW9Xe2.js +2 -0
  221. package/frontend/dist/js/{standalone-DmLfI4Qj.js → standalone-C0NjJpWr.js} +1 -1
  222. package/frontend/dist/js/sv-BNclj-Fo.js +2 -0
  223. package/frontend/dist/js/th-BlQ4PL57.js +2 -0
  224. package/frontend/dist/js/tr-B80aZ1px.js +2 -0
  225. package/frontend/dist/js/{typescript-Bcq62agC.js → typescript-d0TUM2-0.js} +1 -1
  226. package/frontend/dist/js/ui-vendor-ChfdHf5M.js +177 -0
  227. package/frontend/dist/js/uk-DZuuaI56.js +2 -0
  228. package/frontend/dist/js/vi-Bg42fPfF.js +2 -0
  229. package/frontend/dist/js/zh-BSt87zs6.js +2 -0
  230. package/package.json +3 -3
  231. package/plugins/openrouter.json +89 -0
  232. package/backend/dist/services/systemSettingsService.d.ts +0 -12
  233. package/backend/dist/services/systemSettingsService.d.ts.map +0 -1
  234. package/backend/dist/services/systemSettingsService.js +0 -70
  235. package/backend/dist/services/systemSettingsService.js.map +0 -1
  236. package/frontend/dist/assets/index-BqI0kezz.css +0 -1
  237. package/frontend/dist/assets/index-CRC6g6bL.js +0 -3
  238. package/frontend/dist/js/ArtifactContainer-Cdy-973y.js +0 -1
  239. package/frontend/dist/js/ArtifactSlideOutPanel-CmKgQ4eD.js +0 -1
  240. package/frontend/dist/js/ChatPage-CYT69oBR.js +0 -16
  241. package/frontend/dist/js/FirstTimeSetup-C8LdLP5J.js +0 -1
  242. package/frontend/dist/js/GalleryPage-Bm89pnS8.js +0 -1
  243. package/frontend/dist/js/HomePage-CeCYnMUG.js +0 -1
  244. package/frontend/dist/js/LibreClawPage-DGMEV6dm.js +0 -1
  245. package/frontend/dist/js/ModelSelector-DXPdGdQ_.js +0 -1
  246. package/frontend/dist/js/ModelsPage-D-FIy2x-.js +0 -2
  247. package/frontend/dist/js/PersonasPage-CIrEVFo5.js +0 -13
  248. package/frontend/dist/js/SettingsModal-CxtOXPY7.js +0 -1
  249. package/frontend/dist/js/UserManagementPage-BfyYGGFQ.js +0 -1
  250. package/frontend/dist/js/WorkPage-C7bW6Hxx.js +0 -4
  251. package/frontend/dist/js/api-DCD41-l9.js +0 -19
  252. package/frontend/dist/js/appStore-Bw-8Exsx.js +0 -2
  253. package/frontend/dist/js/ar-BAHlIvy0.js +0 -2
  254. package/frontend/dist/js/bn-BxquDVbd.js +0 -2
  255. package/frontend/dist/js/cs-C4DoKzRm.js +0 -2
  256. package/frontend/dist/js/da-CFslpGTw.js +0 -2
  257. package/frontend/dist/js/de-ChudoRh2.js +0 -2
  258. package/frontend/dist/js/es-B36fefE-.js +0 -2
  259. package/frontend/dist/js/fr-BSVeTM5W.js +0 -2
  260. package/frontend/dist/js/hi-BGoFbl5V.js +0 -2
  261. package/frontend/dist/js/id-BfYs2p_j.js +0 -2
  262. package/frontend/dist/js/is-DZ1MS-5A.js +0 -2
  263. package/frontend/dist/js/it-CXtrPCG1.js +0 -2
  264. package/frontend/dist/js/ja-FPJ_NK_y.js +0 -2
  265. package/frontend/dist/js/ko-DVwD4ZZF.js +0 -2
  266. package/frontend/dist/js/ms-PKPP0RX3.js +0 -2
  267. package/frontend/dist/js/nl-DWM5HJZ8.js +0 -2
  268. package/frontend/dist/js/pl-B9va8Tuf.js +0 -2
  269. package/frontend/dist/js/pt-P0IQi-Zr.js +0 -2
  270. package/frontend/dist/js/ru-Ca2bxYnc.js +0 -2
  271. package/frontend/dist/js/sv-DI4RDwyZ.js +0 -2
  272. package/frontend/dist/js/th-DN0bDS9d.js +0 -2
  273. package/frontend/dist/js/tr-ChqMv5Q4.js +0 -2
  274. package/frontend/dist/js/ui-vendor-DohPFHDW.js +0 -177
  275. package/frontend/dist/js/uk-Cr51h_XQ.js +0 -2
  276. package/frontend/dist/js/useBaseQuery-BAOlhjar.js +0 -1
  277. package/frontend/dist/js/useQuery-CcRqxveh.js +0 -1
  278. package/frontend/dist/js/vi-D4OhoVMH.js +0 -2
  279. package/frontend/dist/js/zh-Bvau7hlR.js +0 -2
@@ -0,0 +1,2 @@
1
+ var e={common:{loading:`読み込み中...`,save:`保存`,saving:`保存中...`,cancel:`キャンセル`,delete:`削除`,edit:`編集`,close:`閉じる`,back:`戻る`,next:`次へ`,confirm:`確認`,error:`エラー`,success:`成功`,warning:`警告`,or:`または`,optional:`任意`,enabled:`有効`,disabled:`無効`,on:`オン`,off:`オフ`,yes:`はい`,no:`いいえ`,search:`検索`,noResults:`結果が見つかりません`,retry:`再試行`,refresh:`更新`,download:`ダウンロード`,upload:`アップロード`,export:`エクスポート`,import:`インポート`,reset:`リセット`,apply:`適用`,clear:`クリア`,all:`すべて`,none:`なし`,default:`デフォルト`,custom:`カスタム`,remove:`削除`},brand:{name:`Libre WebUI`,shortName:`Libre`},auth:{login:{title:`おかえりなさい`,subtitle:`アカウントにサインインして続行`,username:`ユーザー名`,usernamePlaceholder:`ユーザー名を入力`,password:`パスワード`,passwordPlaceholder:`パスワードを入力`,signIn:`サインイン`,signingIn:`サインイン中...`,noAccount:`アカウントをお持ちでないですか?`,signUpHere:`新規登録はこちら`,loginSuccess:`ログインに成功しました!`,loginFailed:`ログインに失敗しました`,checkCredentials:`ログインに失敗しました。認証情報を確認してください。`,enterBoth:`ユーザー名とパスワードを入力してください`,githubSuccess:`GitHubログインに成功しました!`,githubFailed:`GitHub認証に失敗しました`,githubVerifyFailed:`GitHub認証の確認に失敗しました`,approvalPending:`アカウントは管理者の承認待ちです。`},signup:{title:`アカウント作成`,subtitle:`新しいアカウントを作成`,username:`ユーザー名`,usernamePlaceholder:`ユーザー名を選択`,email:`メールアドレス`,emailPlaceholder:`your@email.com`,password:`パスワード`,passwordPlaceholder:`パスワードを選択`,confirmPassword:`パスワード確認`,confirmPasswordPlaceholder:`パスワードを再入力`,createAccount:`アカウント作成`,creatingAccount:`アカウント作成中...`,hasAccount:`すでにアカウントをお持ちですか?`,signInHere:`サインインはこちら`,signupSuccess:`アカウントが正常に作成されました!`,signupFailed:`登録に失敗しました`,tryAgain:`登録に失敗しました。もう一度お試しください。`,usernameRequired:`ユーザー名とパスワードは必須です`,passwordMismatch:`パスワードが一致しません`,passwordTooShort:`パスワードは6文字以上である必要があります`,approvalPending:`登録を受け付けました。管理者がアカウントを承認する必要があります。`,awaitingApproval:`承認待ち`,awaitingApprovalDescription:`アカウントは作成されましたが、サインインするには管理者による有効化が必要です。`,backToSignIn:`サインインに戻る`},logout:{button:`ログアウト`,success:`正常にログアウトしました`},oauth:{continueWith:`{{provider}}で続行`,connectingTo:`{{provider}}に接続中...`,github:`GitHub`,huggingFace:`Hugging Face`},checkingAuth:`認証を確認中...`,welcome:`ようこそ`,noEmail:`メールアドレスなし`,role:`ロール`,id:`ID`,userId:`ユーザーID`,signInDescription:`続行するにはGitHubアカウントでサインインしてください`,signInWithGitHub:`GitHubでサインイン`,jwtActive:`JWT認証アクティブ`,jwtDescription:`GitHub OAuthによるJWT認証`,github:`GitHub`,provider:`プロバイダー`,tagline:`あなたのAIスタックは、あなたに応えるべきです。`,selfHosted:`セルフホスト · Apache 2.0`,highlights:{local:{title:`ローカル優先`,body:`会話やファイルは、このアプリを実行しているマシン上に留まります。`},providers:{title:`任意のプロバイダー`,body:`Ollama経由のローカルモデルに加え、お好みで追加したリモートプロバイダーも利用可能。`},work:{title:`隔離された作業環境`,body:`モデルにファイル、ターミナル、プレビューを備えたサンドボックスワークスペースを提供します。`}}},setup:{welcome:{title:`Libre WebUIへようこそ`,subtitle:`始めましょう`,description:`数ステップでLibre WebUIインスタンスをセットアップ`,createAdmin:`管理者アカウントを作成`,features:{secure:{title:`安全でプライベート`,description:`会話データはお使いのデバイスに保存されます`},fast:{title:`高速でレスポンシブ`,description:`速度とパフォーマンスに最適化`},openSource:{title:`オープンソース`,description:`無料でオープンソースのソフトウェア`}}},admin:{title:`管理者アカウントを作成`,subtitle:`管理者セットアップ`,description:`Libre WebUIインスタンスの最初の管理者アカウントを作成します`,usernamePlaceholder:`管理者ユーザー名を入力`,passwordPlaceholder:`パスワードを入力(6文字以上)`,confirmPlaceholder:`パスワードを確認`,creating:`作成中...`,createAdmin:`管理者を作成`,success:`管理者アカウントが正常に作成されました!`,failed:`管理者アカウントの作成に失敗しました`,fillAllFields:`すべてのフィールドを入力してください`,note:`これはLibre WebUIインスタンスの主要な管理者アカウントになります`,approvalUnexpected:`初期管理者を有効化できませんでした。もう一度お試しください。`},encryptionKey:{title:`暗号化キーを保存`,subtitle:`重要:このキーを保存してください`,description:`この暗号化キーは機密データを保護します。安全に保管してください - データベースの復元が必要な場合に必要になります。`,warning:`警告`,warningText:`このキーを紛失し、データベースの復元が必要な場合、暗号化されたデータ(APIキー、設定)は復元できなくなります。`,label:`暗号化キー`,loading:`読み込み中...`,copyToClipboard:`クリップボードにコピー`,copied:`暗号化キーをクリップボードにコピーしました!`,copyFailed:`キーのコピーに失敗しました`,envNote:`このキーはbackend/.envファイルにENCRYPTION_KEYとして保存されています`,acknowledgment:`暗号化キーを安全な場所に保存しました。紛失するとデータ損失の可能性があることを理解しています。`,confirmRequired:`暗号化キーを保存したことを確認してください`,continue:`Libre WebUIを開始`}},chat:{greeting:{morning:`おはようございます`,afternoon:`こんにちは`,evening:`こんばんは`,night:`おやすみなさい`},welcome:{helpToday:`今日は何をお手伝いしましょうか?`,helpTonight:`今夜は何をお手伝いしましょうか?`,variety:{create:{title:`何をつくりましょうか?`,subtitle:`ひらめきでも、スケッチでも、なかなか解けない問題でも。`},explore:{title:`どこから始めましょうか?`,subtitle:`何度も考えてしまう問いを聞かせてください。`},imagine:{title:`何を思い描いていますか?`,subtitle:`一緒に形にしていきましょう。`},focus:{title:`いま、何に向き合いますか?`,subtitle:`次の一歩をはっきりさせましょう。`},untangle:{title:`何がこんがらがっていますか?`,subtitle:`まずは、まとまっていないまま聞かせてください。`},momentum:{title:`準備ができたら、いつでも。`,subtitle:`アイデアでも、計画でも、途中の続きでも。`},open:{title:`いま、何を考えていますか?`,subtitle:`小さな思いつきも、大きなプロジェクトも歓迎です。`},challenge:{title:`何を解決しましょうか?`,subtitle:`まだうまくいっていないところを教えてください。`},draft:{title:`まずはどこかから始めましょう。`,subtitle:`きれいにまとまっていなくても大丈夫です。`},possibility:{title:`これは何になれるでしょう?`,subtitle:`まずは素材をそのまま見せてください。`},unexpected:{title:`思いがけないものをつくりましょう。`,subtitle:`制約、ムード、まだ形にならないアイデアをひとつ。`}}},input:{placeholder:`メッセージを送信`,messagePlaceholder:`メッセージ...`,attachImages:`画像を添付`,attachments:`添付ファイルと高度な機能`,sendMessage:`メッセージを送信`,stopGeneration:`生成を停止`},session:{new:`新しいチャット`,work:`作業`,chat:`チャット`,private:`プライベート`,privateMode:`プライベートモード`,privateDescription:`この会話は保存されません`,privateTooltip:`保存されないプライベート会話を開始`,deleteConfirm:`このチャットを削除してもよろしいですか?`,generatingTitle:`タイトルを生成中`,noChats:`チャットがありません`,createFirst:`上で最初のチャットを作成`,chats:`チャット`,renameChat:`チャット名を変更`,deleteChat:`チャットを削除`,incognito:`シークレットチャット`},persona:{applied:`ペルソナが適用されました`,label:`ペルソナ`,removeFailed:`ペルソナの削除に失敗しました`},model:{updated:`モデルが更新されました`,noModels:`利用可能なモデルがありません`,noModelsDescription:`利用可能なモデルがありません。Ollamaが実行中でモデルがインストールされていることを確認してください。`,pullCommand:`ollama pull llama3.2:3b`,noModelsTooltip:`利用可能なモデルがありません。Ollamaが実行中でモデルがインストールされていることを確認してください。`,selectBeforePrivateChat:`プライベートチャットを開始する前に利用可能なモデルを選択してください`,selectBeforeSending:`送信する前に利用可能なモデルを選択してください`},footer:{disclaimer:`LLMは間違えることがあります - 重要な情報は確認してください`,images:`{{count}}枚の画像`,images_plural:`{{count}}枚の画像`,structuredOutput:`構造化出力`},mediaUpload:{dropImagesHere:`ここに画像をドロップするか`,supportedFormats:`対応形式: JPG, PNG, GIF, WebP(最大10MB)`,browse:`参照`},structuredOutput:{title:`レスポンス形式`,none:`なし(自然言語)`,noneDescription:`デフォルトの自然言語レスポンス`,json:`JSON`,jsonDescription:`構造化されたJSON形式`,list:`リスト`,listDescription:`項目の配列`,summary:`要約`,summaryDescription:`キーポイント付きのドキュメント要約`,analysis:`分析`,analysisDescription:`メリット・デメリットを含む構造化分析`,custom:`カスタムスキーマ`,customDescription:`独自のJSONスキーマを定義`,customSchema:`カスタムJSONスキーマ`,schemaPreview:`スキーマプレビュー`,applySchema:`スキーマを適用`,cancel:`キャンセル`,enabled:`構造化出力が有効`}},sidebar:{navigation:{chat:`チャット`,models:`モデル`,personas:`ペルソナ`,imagine:`画像生成`,settings:`設定`,userManagement:`ユーザー管理`,signOut:`サインアウト`,agents:`エージェント`,work:`作業`,exploreLabel:`探索`,usageAnalytics:`プロバイダー使用状況`,system:`システム`},toggleSize:`サイドバーのサイズを切り替え`,expandSidebar:`サイドバーを展開`},user:{menu:{changePicture:`画像を変更`,settings:`設定`,userManagement:`ユーザー管理`,logout:`ログアウト`,usageAnalytics:`プロバイダー使用状況`,system:`システム`},avatar:{title:`プロフィール画像を変更`,updated:`プロフィール画像が更新されました`,updateFailed:`プロフィール画像の更新に失敗しました`,saving:`保存中...`,label:`アバター`,uploadAvatarImage:`アバター画像をアップロード`,dragAndDrop:`画像をドラッグ&ドロップするか、クリックして参照`,chooseImage:`画像を選択`,uploading:`アップロード中...`,enterImageUrl:`または画像URLを入力`,supportedFormats:`対応形式: JPG, PNG, GIF, WebP (最大2MB)。正方形の画像が最適です。`,customAvatar:`カスタムアバター画像`,clickToChange:`クリックして変更または削除`,removed:`アバターを削除しました`,uploaded:`アバターをアップロードしました`,invalidFile:`有効な画像ファイルを選択してください`,fileTooLarge:`アバター画像のサイズは2MB未満にしてください`,readFailed:`画像ファイルの読み取りに失敗しました`,uploadFailed:`アバター画像のアップロードに失敗しました`},profile:{noEmail:`メールアドレスが設定されていません`}},settings:JSON.parse(`{"title":"設定","tabs":{"appearance":"外観","model":"モデル","systemMessage":"システムメッセージ","plugins":"プラグイン","generation":"生成","documents":"ドキュメント","tts":"音声読み上げ","imageGen":"画像生成","data":"データ","about":"概要"},"appearance":{"title":"外観","language":{"title":"言語","description":"ご希望の言語を選択"},"theme":{"title":"テーマ","light":"ライト","dark":"ダーク","amoled":"ピュアブラック","system":"システム"},"accent":{"title":"アクセントカラー","custom":"カスタムカラー","useColor":"{{color}}のアクセントを使用","behaviorTitle":"インターフェースパレット","behaviorDescription":"アクセントを操作部だけに使うか、ライト/ダークのインターフェース全体に反映するかを選択します。","defaultStyle":"デフォルト","defaultStyleDescription":"ライト/ダークテーマのニュートラルな表面色を維持します。","adaptedStyle":"アクセントに合わせる","adaptedStyleDescription":"表面、境界線、テキストをアクセントカラーで色付けします。"},"chatInterface":{"title":"チャットインターフェース","showUsername":"ユーザー名を表示","showUsernameDescription":"チャットメッセージにユーザー名を表示"},"background":{"title":"背景画像","enable":"背景画像を有効にする","enableDescription":"ブラー効果のあるカスタム背景を表示","blur":"ぼかし","opacity":"不透明度","upload":"背景画像をアップロード","dragDrop":"画像をドラッグ&ドロップするか、クリックして参照","chooseImage":"画像を選択"}},"saveSettings":"設定を保存","model":{"title":"モデル設定","defaultModel":"デフォルトモデル","defaultModelDescription":"このモデルは新しい会話でデフォルトで使用されます","selectModel":"モデルを選択","updateAll":"すべてのモデルを更新","updateAllDescription":"インストールされているすべてのモデルの更新を確認し、最新バージョンをプル","updateAllButton":"すべて更新","updating":"モデルを更新中...","currentModelInfo":"現在のモデル情報","name":"名前","size":"サイズ","family":"ファミリー","format":"フォーマット","status":"ステータス","statusStarting":"開始中...","statusComplete":"完了","statusError":"エラー","bulkOperations":"一括操作","autoTitle":{"title":"自動タイトル生成","enable":"自動タイトルを有効","enableDescription":"新しい会話のタイトルを自動生成","taskModel":"タスクモデル","selectTaskModel":"タスクモデルを選択","taskModelDescription":"会話タイトルの生成に使用するモデル"},"persona":"ペルソナ","updatingModel":"{{name}} を更新中 ({{current}}/{{total}})","modelsProgress":"{{total}} モデル中 {{current}}","specializedModels":"専用モデル","visionModel":"ビジョンモデル","selectVisionModel":"現在のチャットモデルを使用","visionModelDescription":"送信するチャットコンテキストに画像が含まれる場合、自動的に使用されます。画像入力に対応したモデルを選択してください。","visionModelUpdateFailed":"ビジョンモデルの更新に失敗しました: {{error}}","visionModelNoProvider":"このビジョンモデルにはプロバイダー識別情報がありません。利用可能なモデルを選択してください。"},"systemMessage":{"title":"システムメッセージ","description":"すべての新しい会話で使用されるカスタムシステムメッセージを設定します。","placeholder":"システムメッセージを入力...","saved":"システムメッセージが保存されました","saveFailed":"システムメッセージの保存に失敗しました"},"plugins":{"title":"プラグイン","description":"インストールされているプラグインを管理","addNew":"新しいプラグインを追加","upload":"プラグインをアップロード","addJson":"JSONを追加","uploading":"アップロード中...","jsonPlaceholder":"プラグインのJSON設定を貼り付け...","install":"プラグインをインストール","noPlugins":"プラグインがインストールされていません","noPluginsDescription":"機能を拡張するプラグインを追加","loading":"プラグインを読み込み中...","installed":"インストール済みプラグイン","active":"アクティブなプラグイン","activeLabel":"アクティブ","inactive":"非アクティブ","activate":"有効化","deactivate":"無効化","models":"モデル","apiKeySet":"APIキー設定済み","apiKeyConfiguration":"APIキー設定","apiKeyEnvAlternative":"または環境変数を設定","environmentVariable":"環境変数","apiKeyConfigured":"APIキーが設定されています","apiKeyPlaceholder":"APIキーを入力...","saveApiKey":"APIキーを保存","apiKey":{"title":"APIキー","placeholder":"APIキーを入力","save":"キーを保存","remove":"キーを削除","configured":"APIキー設定済み","notConfigured":"APIキーが必要","saved":"APIキーが正常に保存されました","removed":"APIキーが削除されました","saveFailed":"APIキーの保存に失敗しました","removeFailed":"APIキーの削除に失敗しました","enterKey":"APIキーを入力してください"},"variables":"Variables","providerConnections":"プロバイダー接続","providerConnectionsDescription":"プラグインを通じてモデルプロバイダーに接続、設定、確認します。","providers":"プロバイダー","searchProviders":"プロバイダーを検索","noProvidersFound":"検索に一致するプロバイダーがありません。","selectProvider":"プロバイダーを選択","selectProviderDescription":"プロバイダーを選択して、接続状況とモデルカタログを確認します。","apiKeyDescription":"{{name}}用の個人APIキーを保存します。","showApiKey":"APIキーを表示","hideApiKey":"APIキーを非表示","configure":"設定","providerSettings":"プロバイダー設定","status":"ステータス","defaultEndpoint":"デフォルトエンドポイント","modelCatalog":"モデルカタログ","modelCatalogDescription":"このプロバイダーで検出・設定されたモデルとその機能一覧。","refreshModels":"モデルを更新","noModelsConfigured":"このプロバイダーにはモデルが設定されていません。","modelId":"モデルID","capabilities":"機能","modelCatalogUpdated":"モデルカタログを更新しました: {{count}}件のモデル。","modelCatalogUnchanged":"モデルカタログはすでに最新です。","modelCatalogNeedsApiKey":"このプロバイダーのライブモデルリストを読み込むには、有効なAPIキーを追加してください。","modelCatalogUnavailable":"プロバイダーのモデルリストを読み込めませんでした。","modelCatalogRefreshFailed":"モデルカタログの更新に失敗しました","capability":{"chat":"チャット","embedding":"エンベディング","image":"画像","speech":"音声合成","transcription":"文字起こし"},"exportPlugin":"プラグインをエクスポート","deletePlugin":"プラグインを削除"},"generation":{"title":"生成オプション","description":"AIがレスポンスを生成する方法を設定","coreParameters":"コアパラメータ","temperature":"温度","temperatureDescription":"ランダム性を制御します。低い値はより集中的、高い値はより創造的。","topP":"Top P","topPDescription":"核サンプリングによる多様性を制御します。低い値は確率の高いトークンに集中。","topK":"Top K","topKDescription":"トークン選択を上位K個の最も確率の高いものに制限。0で無効化。","minP":"Min P","minPDescription":"トークン選択の最小確率しきい値。","generationControl":"生成制御","maxTokens":"最大トークン数","maxTokensDescription":"レスポンスで生成する最大トークン数。","repeatPenalty":"繰り返しペナルティ","repeatPenaltyDescription":"繰り返しトークンにペナルティを与えます。高い値は繰り返しを減少。","contextLength":"コンテキスト長","contextLengthDescription":"会話の最大コンテキストウィンドウサイズ。","seed":"シード","optional":"任意","random":"ランダム","seedDescription":"再現可能な出力のための特定のシードを設定。","advancedOptions":"詳細オプション","presencePenalty":"存在ペナルティ","presencePenaltyDescription":"コンテキストに出現するトークンにペナルティを与えます。","frequencyPenalty":"頻度ペナルティ","frequencyPenaltyDescription":"頻繁に使用されるトークンにペナルティを与えます。","stopSequences":"停止シーケンス","commaSeparated":"カンマ区切り","stopSequencesDescription":"検出されると生成を停止するカスタムトークン。","resetDefaults":"デフォルトにリセット","saveOptions":"オプションを保存","embeddingSettings":"埋め込み設定","enableEmbeddings":"ドキュメント埋め込みを有効にする","advancedSettings":"高度な生成設定","advancedSettingsDescription":"サンプリング、トークン制限、コンテキスト、ペナルティ、ストップシーケンス"},"documents":{"title":"ドキュメント設定","embeddings":{"title":"埋め込み","enable":"ドキュメント埋め込みを有効にする","model":"埋め込みモデル","modelDescription":"ドキュメント埋め込みに使用するモデルを選択","chunkSize":"チャンクサイズ","chunkSizeInTokens":"(トークン単位)","chunkSizeDescription":"埋め込み用のテキストチャンクサイズ","chunkOverlap":"チャンクオーバーラップ","chunkOverlapInTokens":"(トークン単位)","chunkOverlapDescription":"連続するチャンク間のオーバーラップ","similarityThreshold":"類似度しきい値","similarityDescription":"結果に含める最小類似度スコア","status":"埋め込みステータス","statusLabel":"ステータス","available":"利用可能","unavailable":"利用不可","chunksWithEmbeddings":"埋め込み済みチャンク","coverage":"カバレッジ","regenerate":"埋め込みを再生成","regenerating":"再生成中..."}},"tts":{"title":"音声読み上げ","description":"メッセージを音声で読み上げるための音声合成設定を構成","loadingProviders":"TTSプロバイダーを読み込み中...","noProviders":"TTSプロバイダーがありません","noProvidersDescription":"音声読み上げを有効にするには、TTS対応プラグインを設定してください","enable":"TTSを有効にする","enableDescription":"アシスタントメッセージの音声読み上げを許可","autoPlay":"レスポンスを自動再生","autoPlayDescription":"新しいアシスタントメッセージを自動的に読み上げ","streamSentences":"文章ごとにストリーミング","streamSentencesDescription":"メッセージ全体を待たずに、文章ごとに音声を再生します。長いメッセージでのタイムアウトを避けるため、ローカルTTSに推奨されます。","voiceConfiguration":"音声設定","model":"TTSモデル","modelDescription":"音声合成に使用するモデルを選択","voice":"音声","selectVoice":"音声を選択","voiceDescription":"音声読み上げに使用する声を選択","speed":"速度","speedSlow":"0.5倍","speedNormal":"1.0倍","speedFast":"2.0倍","availableProviders":"利用可能なプロバイダー","models":"モデル","test":"テスト","testing":"テスト中...","stop":"停止"},"imageGen":{"title":"画像生成","description":"画像生成の設定とプロバイダーを構成","loadingProviders":"画像生成プロバイダーを読み込み中...","noProviders":"画像生成プロバイダーがありません","noProvidersDescription":"画像生成対応プラグインを設定してください","enable":"画像生成を有効にする","enableDescription":"会話でのAI画像生成を許可","configuration":"設定","model":"モデル","modelDescription":"画像生成に使用するモデルを選択","size":"サイズ","sizeDescription":"生成画像の解像度","quality":"品質","qualityDescription":"生成画像の品質レベル","style":"スタイル","styleDescription":"生成画像のスタイルプリセット","availableProviders":"利用可能なプロバイダー","models":"モデル"},"data":{"title":"データ管理","export":"データをエクスポート","exportDescription":"設定、セッション、ドキュメントを含むすべてのデータをダウンロード。","exportAll":"すべてのデータをエクスポート","import":"データをインポート","importDescription":"以前のエクスポートからデータをインポート。","importData":"データをインポート","importing":"インポート中...","clearSessions":"セッションをクリア","clearSessionsDescription":"すべてのチャットセッションを削除します。この操作は元に戻せません。","clearAll":"すべてクリア","clearing":"クリア中...","importOptions":"インポートオプション","importOptionsDescription":"既存データの処理方法を選択","skipDuplicates":"重複をスキップ","overwrite":"既存を上書き","importResults":"インポート結果","preferences":"設定","imported":"インポート済み","failed":"失敗","sessions":"セッション","importedLabel":"インポート済み","skipped":"スキップ","documents":"ドキュメント","errors":"エラー"},"about":{"title":"概要","versionLabel":"バージョン","ollama":{"title":"Ollamaステータス","version":"バージョン","healthy":"正常","unhealthy":"異常"},"stats":{"models":"モデル","sessions":"セッション"},"features":{"privacy":{"title":"プライバシー優先","description":"データはお使いのデバイスに保存されます"},"openSource":{"title":"オープンソース","description":"無料でオープンソースのソフトウェア"},"localInference":{"title":"ローカル推論","description":"OllamaでAIモデルをローカル実行"}},"openSourceBy":"{{company}}によるオープンソース","links":{"title":"リンク","github":"GitHub","githubDescription":"ソースコードを見る・貢献する","website":"ウェブサイト","websiteDescription":"ウェブサイトを訪問","ollama":"Ollama","ollamaDescription":"Ollamaについて詳しく","documentation":"ドキュメント","reportIssue":"問題を報告","reportIssueDescription":"バグ報告・機能リクエスト","gitlab":"GitLabミラー","gitlabDescription":"セルフホストGitLabリポジトリ","documentationDescription":"ガイド、チュートリアル、APIリファレンス"},"version":"バージョン {{version}}"},"groups":{"general":"一般","chat":"チャット","media":"音声と画像","connections":"接続"}}`),models:{title:`モデル`,subtitle:`Ollamaモデルのプル、管理、監視`,installed:`インストール済みモデル`,available:`利用可能なモデル`,pull:`モデルをプル`,pulling:`プル中...`,delete:`モデルを削除`,deleting:`削除中...`,size:`サイズ`,modified:`更新日時`,family:`ファミリー`,parameters:`パラメータ`,quantization:`量子化`,noModels:`モデルがインストールされていません`,pullFirst:`モデルをプルして開始`,noModelsFound:`モデルが見つかりません`},personas:{title:`ペルソナ`,create:`ペルソナを作成`,edit:`ペルソナを編集`,delete:`ペルソナを削除`,name:`名前`,description:`説明`,systemPrompt:`システムプロンプト`,model:`モデル`,avatar:`アバター`,background:`背景`,noPersonas:`ペルソナが作成されていません`,createFirst:`最初のペルソナを作成してチャット体験をカスタマイズ`},gallery:{title:`ギャラリー`,subtitle:`AI生成画像ギャラリー`,imageCount:`{{count}}枚の画像`,generate:`画像を生成`,generateDescription:`AIで画像を作成`,generating:`生成中...`,prompt:`プロンプト`,promptPlaceholder:`生成したい画像を説明してください...`,noImages:`まだ画像が生成されていません`,download:`ダウンロード`,delete:`削除`,regenerate:`再生成`,model:`モデル`,size:`サイズ`,quality:`品質`,created:`作成日`},errors:{generic:`エラーが発生しました`,network:`ネットワークエラー。接続を確認してください。`,unauthorized:`この操作を行う権限がありません。`,notFound:`リクエストされたリソースが見つかりません。`,serverError:`サーバーエラー。後でもう一度お試しください。`,validation:`入力を確認して再試行してください。`},keyboard:{title:`キーボードショートカット`,toggleSidebar:`サイドバーを切り替え`,openSettings:`設定を開く`,toggleDarkMode:`ダークモードを切り替え`,showShortcuts:`ショートカットを表示`,closeModals:`モーダルを閉じる`,groups:{navigation:`ナビゲーション`,settings:`設定`,general:`一般`,chat:`チャット`},actions:{sendMessage:`メッセージを送信`,newLine:`メッセージ内で改行`},footer:`{{key1}}または{{key2}}を押すとこのヘルプを表示`,tooltip:`キーボードショートカット`},modelManager:{title:`モデル`,loading:`モデルを読み込み中...`,systemStatus:{online:`Ollamaオンライン`,offline:`Ollamaオフライン`,models:`モデル`,models_plural:`モデル`,running:`実行中`,vram:`VRAM`},sections:{pull:`新しいモデルをプル`,library:`ライブラリを閲覧`,running:`実行中のモデル`,local:`ローカルモデル`,advanced:`詳細アクション`,huggingface:`HuggingFace Hub`},pull:{placeholder:`モデル名を入力(例: llama3.2:3b, deepseek-r1:14b)`,button:`プル`,cancel:`キャンセル`,popular:`人気のモデル:`,browseAll:`ollama.comですべてのモデルを閲覧`,success:`モデル{{name}}のプルに成功しました`,cancelled:`モデルのプルがキャンセルされました`,failed:`モデルのプルに失敗しました`,enterName:`モデル名を入力してください`,restricted:`このインスタンスでは、モデルのインストールは管理者のみに制限されています。`},progress:{starting:`初期化中...`,pulling:`モデルをダウンロード中...`,pullingLayer:`ダウンロード中`,verifying:`整合性を検証中...`,verifyingDigest:`sha256ダイジェストを検証中`,writing:`マニフェストを書き込み中...`,cleaning:`クリーンアップ中...`},library:{available:`利用可能`,search:`モデルを検索...`,noResults:`条件に一致するモデルが見つかりません`,installed:`インストール済み`,more:`+{{count}}件`,refresh:`ライブラリを更新`},local:{noModels:`まだモデルがインストールされていません`,pullToStart:`上でモデルをプルして開始`,installed:`インストール済み`,running:`実行中`,info:`情報`,copy:`コピー`,delete:`削除`,deleteConfirm:`モデル「{{name}}」を削除してもよろしいですか?`,deleteSuccess:`モデル{{name}}が正常に削除されました`,deleteFailed:`モデルの削除に失敗しました`},advanced:{createModel:`モデルを作成`,fromModelfile:`Modelfileから`,copyModel:`モデルをコピー`,duplicateExisting:`既存を複製`,testEmbeddings:`埋め込みをテスト`,generateVectors:`ベクトルを生成`,healthCheck:`ヘルスチェック`,testConnection:`接続をテスト`,healthy:`Ollamaは正常です!`},modals:{details:{title:`モデル詳細`,info:`モデル情報`,family:`ファミリー`,parameters:`パラメータ`,quantization:`量子化`,format:`フォーマット`,systemPrompt:`システムプロンプト`,template:`テンプレート`,license:`ライセンス`,modelfile:`Modelfile`,noDetails:`詳細がありません`},copy:{title:`モデルをコピー`,source:`ソースモデル`,selectModel:`モデルを選択...`,newName:`新しいモデル名`,placeholder:`例: my-custom-model`,copying:`コピー中...`,button:`モデルをコピー`,success:`モデルが{{name}}にコピーされました`,failed:`モデルのコピーに失敗しました`,enterBoth:`ソースと宛先の名前を両方入力してください`},create:{title:`カスタムモデルを作成`,name:`モデル名`,namePlaceholder:`例: my-assistant`,modelfile:`Modelfile`,modelfilePlaceholder:`FROM llama3.2
2
+ SYSTEM You are a helpful assistant.`,see:`参照:`,docs:`Modelfileドキュメント`,docsLink:`(構文リファレンス)`,creating:`作成中...`,button:`モデルを作成`,success:`モデル{{name}}が正常に作成されました`,failed:`モデルの作成に失敗しました`,enterBoth:`モデル名とModelfileの内容を入力してください`},embeddings:{title:`埋め込みをテスト`,model:`埋め込みモデル`,selectModel:`モデルを選択...`,recommended:`推奨: nomic-embed-text, mxbai-embed-large`,input:`入力テキスト`,placeholder:`埋め込みを生成するテキストを入力...`,generating:`生成中...`,button:`埋め込みを生成`,result:`結果({{count}}次元)`,success:`{{count}}次元の埋め込みベクトルを生成しました`,failed:`埋め込みの生成に失敗しました`,enterBoth:`モデルを選択してテキストを入力してください`}},huggingface:{browseAll:`HuggingFaceで全て見る`,checkingGguf:`GGUFファイルを確認中...`,noGgufAvailable:`Ollamaで直接プルできるGGUFファイルがありません`,ggufFilesCount:`GGUFファイル ({{count}}) - Ollamaに直接プル`,noModelsFound:`モデルが見つかりません`,noResults:`モデルが見つかりません。検索条件やフィルターを調整してください。`,browseAllLink:`すべて見る`,search:`HuggingFaceモデルを検索...`,by:`作成者`,gated:`アクセス制限`,viewOnHF:`HuggingFaceで表示`,sortDownloads:`ダウンロード数`,sortLikes:`いいね`,sortRecent:`最近`,taskTextGeneration:`テキスト生成`,taskTextToSpeech:`音声合成`,taskTextToImage:`画像生成`,taskSpeechRecognition:`音声認識`,tasks:{textGen:`テキスト生成`,tts:`音声合成`,image:`画像生成`,stt:`音声認識`},sort:{downloads:`ダウンロード数順`,likes:`人気順`,recent:`更新順`}}},personaManager:{title:`ペルソナ`,subtitle:`カスタムパーソナリティ、記憶、動作を持つAIペルソナを作成・管理`,loading:`ペルソナを読み込み中...`,createButton:`ペルソナを作成`,importExport:`インポート/エクスポート`,stats:{title:`あなたのペルソナ`,count:`{{count}}個のペルソナを作成`,count_plural:`{{count}}個のペルソナを作成`},empty:{title:`まだペルソナがありません`,description:`パーソナライズされたAIインタラクションを始めるために最初のペルソナを作成`,button:`最初のペルソナを作成`},deleteConfirm:`「{{name}}」を削除してもよろしいですか?`,deleteSuccess:`ペルソナ「{{name}}」が正常に削除されました`,downloadSuccess:`ペルソナ「{{name}}」が正常にダウンロードされました`,failed:`ペルソナの{{action}}に失敗しました`},personaForm:{title:{create:`新しいペルソナを作成`,edit:`ペルソナを編集`},subtitle:{create:`カスタムパーソナリティ、記憶システム、適応学習機能を持つ新しいAIペルソナを作成`,edit:`高度な記憶、適応学習、インテリジェントパラメータでAIペルソナをカスタマイズ`},loading:`フォームを読み込み中...`,saved:`保存済み`,tabs:{basic:`基本`,parameters:`パラメータ`,memory:`記憶と学習`,advanced:`詳細`},basic:{name:`名前`,namePlaceholder:`ペルソナ名を入力`,model:`モデル`,selectModel:`モデルを選択`,description:`説明`,descriptionPlaceholder:`ペルソナを説明...`,systemPrompt:`システムプロンプト`,systemPromptPlaceholder:`ペルソナの動作を定義するシステムプロンプトを入力...`,systemPromptHint:`システムプロンプトはペルソナの動作とレスポンスを定義します。`},parameters:{temperature:`温度`,temperatureHint:`創造性と一貫性のバランスを制御`,topP:`Top-P`,topPHint:`レスポンスの多様性を制御`,topK:`Top-K`,topKHint:`語彙を上位kトークンに制限`,contextWindow:`コンテキストウィンドウ`,contextWindowHint:`会話履歴の最大長`,maxTokens:`最大トークン数`,maxTokensHint:`レスポンスの最大長`,repeatPenalty:`繰り返しペナルティ`,repeatPenaltyHint:`繰り返しレスポンスを削減`},memory:{title:`記憶システム`,subtitle:`ペルソナは時間の経過とともに会話を記憶`,enableHint:`記憶システムを有効にして、ペルソナが会話を記憶し、時間をかけてコンテキストを構築できるようにします。`,loading:`記憶ステータスを読み込み中...`,noData:`まだ記憶データがありません`,memories:`記憶`,mbUsed:`MB使用`,lastBackup:`最終バックアップ`,never:`なし`,maxMemories:`最大記憶数`,maxMemoriesHint:`このペルソナが保存できる記憶の数`,retention:`記憶保持期間`,retentionHint:`クリーンアップ前に記憶を保持する日数`,autoCleanup:`古い記憶を自動クリーンアップ`,wipeAll:`すべての記憶を消去`,wipeCannot:`元に戻せません`,wipeButton:`消去`,wiping:`消去中...`,wipeConfirm:`すべての記憶を消去してもよろしいですか?元に戻せません。`,wipeSuccess:`{{count}}件の記憶を消去しました`},learning:{title:`適応学習`,subtitle:`ペルソナはインタラクションに基づいて進化`,enableHint:`適応学習を有効にして、ペルソナがインタラクションに基づいて進化し、レスポンスをパーソナライズできるようにします。`,speed:`学習速度`,slow:`遅い`,slowDesc:`緩やかな変化`,balanced:`バランス`,balancedDesc:`適度なペース`,fast:`速い`,fastDesc:`素早い適応`,autoAdapt:`ユーザーの好みに自動適応`,whatLearns:`ペルソナが学習する内容:`,conversationTone:`会話のトーン`,responseStyle:`レスポンススタイル`,userPreferences:`ユーザーの好み`,topicInterests:`トピックの関心`},advanced:{embeddingModel:`埋め込みモデル`,embeddingHint:`記憶のエンコードとセマンティック検索に使用するモデルを選択します。埋め込みモデルが最初に表示され、その後に他の利用可能なモデルが続きます。`,noModels:`モデルが見つかりません`,embeddingModels:`埋め込みモデル`,otherModels:`その他のモデル`,installHint:`埋め込みモデルをインストール:`,recommended:`推奨: nomic-embed-text, mxbai-embed-large, bge-m3, snowflake-arctic-embed`,aboutTitle:`詳細設定について`,aboutDescription:`埋め込みモデルは、記憶システムがセマンティックな意味を理解し、会話中に関連する記憶を見つけるために使用します。使用ケースと利用可能なリソースに合ったモデルを選択してください。`},actions:{cancel:`キャンセル`,save:`保存`,saving:`保存中...`,saveClose:`保存して閉じる`,create:`作成`},success:{created:`ペルソナを作成しました`,updated:`ペルソナを更新しました`},error:{saveFailed:`保存に失敗しました`}},personaCard:{enhanced:`拡張`,systemPrompt:`システムプロンプト`,memories:`記憶`,use:`使用`,editTooltip:`ペルソナを編集`,downloadTooltip:`ペルソナをダウンロード`,backup:`バックアップ`,exportDNA:`DNAをエクスポート`,wipeMemories:`記憶を消去`,wipeConfirm:`このペルソナのすべての記憶を消去してもよろしいですか?この操作は元に戻せません。`,wipeSuccess:`{{count}}件の記憶を消去しました`,backupSuccess:`ペルソナのバックアップが正常にダウンロードされました`,dnaSuccess:`ペルソナDNAが正常にエクスポートされました`,failed:`{{action}}に失敗しました`},userManager:{title:`ユーザー管理`,subtitle:`ユーザーアカウントと権限を管理`,pageDescription:`Libre WebUIインスタンスのユーザーアカウント、権限、アクセス制御を管理します。`,loading:`ユーザーを読み込み中...`,createUser:`ユーザーを作成`,search:`ユーザーを検索...`,noUsers:`ユーザーが見つかりません`,noUsersMatching:`検索に一致するユーザーがいません`,columns:{user:`ユーザー`,email:`メール`,role:`役割`,created:`作成日`,actions:`アクション`},roles:{admin:`管理者`,user:`ユーザー`},noEmail:`メールなし`,deleteConfirm:`ユーザー「{{name}}」を削除してもよろしいですか?`,deleteSuccess:`ユーザーが正常に削除されました`,deleteFailed:`ユーザーの削除に失敗しました`,cannotDeleteSelf:`自分のアカウントは削除できません`,form:{title:{create:`ユーザーを作成`,edit:`ユーザーを編集`},username:`ユーザー名`,usernamePlaceholder:`ユーザー名を入力`,email:`メール`,emailPlaceholder:`メールを入力(任意)`,password:`パスワード`,passwordPlaceholder:`パスワードを入力`,passwordHint:`現在のパスワードを維持するには空白のままに`,role:`役割`,creating:`作成中...`,updating:`更新中...`,createButton:`ユーザーを作成`,updateButton:`ユーザーを更新`,createSuccess:`ユーザーが正常に作成されました`,updateSuccess:`ユーザーが正常に更新されました`,createFailed:`ユーザーの作成に失敗しました`,updateFailed:`ユーザーの更新に失敗しました`},approval:{title:`保留中の承認`,description:`このインスタンスへのアクセスを許可する前に、新規登録を確認してください。`,registered:`登録日`,activate:`アカウントを有効化`,reject:`登録を拒否`,approved:`{{name}} はサインインできるようになりました。`,failed:`アカウントを承認できませんでした。`,notification:`{{count}}件の登録が承認待ちです。`,notificationBadge:`{{count}}件の保留中のユーザー承認`}},chatHistory:{label:`会話履歴`,jumpToTurn:`{{total}} 件中 {{index}} 件目に移動`},chatMessage:{you:`あなた`,assistant:`アシスタント`,system:`システム`,copy:`コピー`,copyMessage:`メッセージをコピー`,copied:`コピーしました!`,regenerate:`再生成`,regenerateResponse:`レスポンスを再生成`,edit:`編集`,editSystemMessage:`システムメッセージを編集`,saveChanges:`変更を保存`,cancelEditing:`編集をキャンセル`,delete:`削除`,deleteConfirm:`このメッセージを削除しますか?`,branch:`分岐`,speaking:`読み上げ中...`,speakMessage:`メッセージを読み上げ`,stopSpeaking:`読み上げを停止`,showMore:`もっと見る`,showLess:`閉じる`,thinking:`考え中`,systemMessagePlaceholder:`システムメッセージを入力...`,fullSizeImage:`フルサイズ画像`,startConversation:`会話を始める`,startConversationDescription:`メッセージを送信してAIアシスタントとの会話を開始します。質問したり、コードのヘルプを得たり、自然な会話を楽しんだりできます。`,scrollToBottom:`一番下にスクロール`,newMessages:`新しいメッセージ`},imageGallery:{title:`画像ギャラリー`,noImages:`まだ画像がありません`,noImagesHint:`右のパネルを使用して最初の画像を生成`,delete:`削除`,download:`ダウンロード`,deleteConfirm:`この画像を削除してもよろしいですか?`,deleteSuccess:`画像が削除されました`,deleteFailed:`画像の削除に失敗しました`,downloadFailed:`画像のダウンロードに失敗しました`,loadMore:`さらに読み込む({{current}}/{{total}})`,loadFailed:`ギャラリーの読み込みに失敗しました`},imageGeneration:{title:`画像を生成`,prompt:`プロンプト`,promptPlaceholder:`作成したい画像を説明してください...`,model:`モデル`,selectModel:`モデルを選択`,noModels:`画像生成モデルがありません`,configurePlugin:`画像生成対応プラグインを設定`,size:`サイズ`,quality:`品質`,style:`スタイル`,generate:`生成`,generating:`生成中...`,success:`画像が正常に生成されました`,failed:`画像の生成に失敗しました`,enterPrompt:`プロンプトを入力してください`,promptTooLong:`プロンプトが最大文字数{{max}}文字を超えています`},errorBoundary:{title:`エラーが発生しました`,description:`予期しないエラーが発生しました。ページを更新してください。`,tryAgain:`ページを更新`,goHome:`ホームに戻る`,errorDetails:`エラー詳細(開発)`},documents:{title:`ドキュメント`,upload:`ドキュメントをアップロード`,uploading:`アップロード中...`,noDocuments:`ドキュメントがアップロードされていません`,uploadHint:`会話で使用するドキュメントをアップロード`,delete:`削除`,deleteConfirm:`このドキュメントを削除してもよろしいですか?`,deleteSuccess:`ドキュメントが削除されました`,deleteFailed:`ドキュメントの削除に失敗しました`,uploadSuccess:`ドキュメントが正常にアップロードされました`,uploadFailed:`ドキュメントのアップロードに失敗しました`,types:`対応形式: PDF, TXT, MD, DOCX`,unsupportedFileType:`PDFとTXTファイルのみ対応しています`,fileSizeTooLarge:`ファイルサイズは10MB未満である必要があります`,uploadSuccessWithName:`ドキュメント「{{name}}」が正常にアップロードされました`,removeSuccess:`ドキュメントが正常に削除されました`,removeFailed:`ドキュメントの削除に失敗しました`,removeError:`ドキュメントの削除中にエラーが発生しました`,clickToUpload:`クリックしてアップロード`,orDragAndDrop:`またはドラッグ&ドロップ`,fileTypesAndSize:`PDFまたはTXTファイル(最大10MB)`,uploadedDocuments:`アップロードされたドキュメント`,removeDocument:`ドキュメントを削除`},ttsButton:{speak:`読み上げ`,stop:`停止`,speaking:`読み上げ中...`,generateFailed:`音声の生成に失敗しました`,playbackFailed:`音声の再生に失敗しました`,stopSpeaking:`読み上げを停止`,generatingSpeech:`音声を生成中...`,readAloud:`音声で読み上げ`},artifacts:{title:`アーティファクト`,code:`コード`,preview:`プレビュー`,copy:`コードをコピー`,copied:`コピーしました!`,download:`ダウンロード`,expand:`展開`,collapse:`折りたたむ`,openInNewTab:`新しいタブで開く`,invalidSvg:`無効なSVGコンテンツ`,invalidJson:`無効なJSONコンテンツ`,previewMode:`プレビューモード`,codeMode:`コードモード`,copyContent:`コンテンツをコピー`,openInPanel:`パネルで開く`,openInNewWindow:`新しいウィンドウで開く`,created:`作成日`,closePanelEsc:`パネルを閉じる(Esc)`,copyButton:`コピー`,open:`開く`,dragEdgeToResize:`端をドラッグしてサイズ変更`,previewUnavailable:`Preview unavailable`,previewUnavailableDescription:`This artifact does not contain renderable preview content. Switch to code view to inspect the source.`},personaImportExport:{title:`ペルソナのインポート&エクスポート`,description:`ペルソナをエクスポートして共有したり、他の人のペルソナをインポート`,exportPersonas:`ペルソナをエクスポート`,importPersonas:`ペルソナをインポート`,noPersonasToExport:`エクスポートするペルソナがありません`,personasAvailable:`{{count}}個のペルソナが利用可能`,personasAvailable_plural:`{{count}}個のペルソナが利用可能`,exportAll:`すべてエクスポート`,uploadJsonFile:`JSONファイルをアップロード`,pasteJsonLabel:`JSONデータを貼り付け`,pasteJsonPlaceholder:`ペルソナのJSONデータをここに貼り付け...`,importing:`インポート中...`,importButton:`ペルソナをインポート`,expectedFormat:`期待されるJSON形式:`,exportSuccess:`ペルソナ「{{name}}」が正常にエクスポートされました`,exportFailed:`ペルソナのエクスポートに失敗しました`,exportAllSuccess:`{{count}}個のペルソナがすべて正常にエクスポートされました`,exportAllFailed:`ペルソナのエクスポートに失敗しました`,pasteJsonData:`ペルソナのJSONデータを貼り付けてください`,importMultipleSuccess:`{{count}}個のペルソナが正常にインポートされました`,importMultipleFailed:`{{count}}個のペルソナのインポートに失敗しました`,importNoneFailed:`ペルソナのインポートに失敗しました`,importSuccess:`ペルソナが正常にインポートされました`,importFailed:`ペルソナのインポートに失敗しました`},generationStats:{details:`詳細`,promptTokens:`プロンプトトークン:`,generatedTokens:`生成トークン:`,totalTokens:`合計トークン:`,speed:`速度:`,promptEval:`プロンプト評価:`,generation:`生成:`,modelLoad:`モデル読み込み:`,totalTime:`合計時間:`,generatedAt:`生成日時:`},userMenu:{loggedOut:`ログアウトしました`,pictureUpdated:`プロフィール画像を更新しました`,failedUpdateAvatar:`アバターの更新に失敗しました`,failedUpdatePicture:`プロフィール画像の更新に失敗しました`,noEmail:`メールアドレスなし`,changePicture:`画像を変更`,settings:`設定`,userManagement:`ユーザー管理`,signOut:`サインアウト`,changeProfilePicture:`プロフィール画像を変更`},pluginManager:{title:`プラグインマネージャー`,upload:`アップロード`,addJson:`JSON追加`,browseHF:`HF Hubを閲覧`,confirmDelete:`このプラグインを削除してもよろしいですか?`,uploading:`プラグインをアップロード中...`,pasteJson:`プラグインのJSONをここに貼り付け...`,installPlugin:`プラグインをインストール`,loading:`プラグインを読み込み中...`,noPlugins:`インストール済みプラグインなし`,noPluginsDescription:`プラグインファイルをアップロードするかJSONから追加してください。`,active:`アクティブ`,id:`ID`,endpoint:`エンドポイント`,activate:`有効化`,deactivate:`無効化`,activePlugin:`アクティブなプラグイン`,activePluginDescription:`すべてのチャットリクエストはこのプラグインを通じてルーティングされます`,variables:{title:`変数`,save:`保存`,saving:`保存中...`,saved:`変数を保存しました`,saveFailed:`変数の保存に失敗しました`,resetDefaults:`デフォルトにリセット`,reset:`変数をリセットしました`,sensitiveSet:`値が設定済み(変更するには新しい値を入力)`,resetFailed:`変数のリセットに失敗しました`,showValue:`{{label}}の値を表示`,hideValue:`{{label}}の値を非表示`,connection:`接続`,advanced:`詳細パラメータ`,inherited:`プロバイダーのデフォルトを使用`,inheritedValue:`プロバイダーのデフォルトを使用 ({{value}})`,enabled:`有効`,disabled:`無効`,required:`値が必要です`,fullApiEndpoint:`完全なAPIエンドポイントURL`,endpointHelp:`プロバイダーのベースURLだけでなく、操作パス(例: /v1/chat/completions)を含む完全なリクエストURLを入力してください。`,invalidUrl:`有効な完全なAPIエンドポイントURLを入力してください(例: https://provider.example/v1/chat/completions)`,insecureUrl:`APIエンドポイントはHTTPまたはHTTPSを使用する必要があります。`,httpWarning:`HTTPは認証情報やトラフィックを暗号化しません。信頼できるネットワークでのみ使用してください。`,invalidBaseUrl:`ベースURLにクエリ文字列やフラグメントを含めることはできません。`,invalidApiPath:`/で始まり、URL、クエリ、フラグメント、または..セグメントを含まない必要があります`,tooLong:`値が長すぎます`}},huggingface:{title:`HuggingFaceモデルブラウザ`,subtitle:`Hubからモデルを閲覧・選択`,searchPlaceholder:`モデルを検索...`,filters:`フィルター`,task:`タスク`,sortBy:`並び替え`,noModels:`モデルが見つかりません`,adjustSearch:`検索条件やフィルターを調整してみてください`,gated:`制限付き`,selected:`選択済み`,select:`選択`,refresh:`更新`,modelsFound:`件のモデルが見つかりました`},demoMode:{title:`デモモード`,github:`GitHub`},personaBackground:{label:`背景画像`,uploadBackgroundImage:`背景画像をアップロード`,dragAndDrop:`画像をドラッグ&ドロップするか、クリックして参照`,chooseImage:`画像を選択`,uploading:`アップロード中...`,enterImageUrl:`または画像URLを入力`,supportedFormats:`対応形式: JPG, PNG, GIF, WebP (最大5MB)。横長の画像が最適です。`,customBackground:`カスタム背景画像`,clickToChange:`クリックして変更または削除`,removed:`背景を削除しました`,uploaded:`背景のアップロードに成功しました`,invalidFile:`有効な画像ファイルを選択してください`,fileTooLarge:`背景画像のサイズは5MB未満にしてください`,readFailed:`画像ファイルの読み取りに失敗しました`,uploadFailed:`背景画像のアップロードに失敗しました`},modelSelector:{searchInstalled:`インストール済みモデルを検索...`,searchOllama:`Ollamaライブラリを検索...`,searchHuggingFace:`HuggingFaceを検索...`,selectModel:`モデルを選択`,personas:`ペルソナ`,ollamaModels:`Ollamaモデル`,pluginModels:`プラグインモデル`,actions:`アクション`,installed:`インストール済み`,use:`使用`,pull:`ダウンロード`,pullRestricted:`このインスタンスでは、モデルのインストールは管理者のみに制限されています。`,adminOnlyPull:`管理者のみ`},libreClaw:{title:`エージェント`,subtitle:`ローカル エージェントの実行、承認、スケジュール、メモリ、ツール、および使用状況。`,dashboard:`ダッシュボード`,connection:{disconnectedTitle:`Libre Claw デーモンが接続されていません`,disconnectedDescription:`<command>libre-claw start</command> を使用してローカルで開始するか、バックエンド環境で <env>LIBRE_CLAW_BASE_URL</env> を設定します。`},status:{connected:`接続済み`,disconnected:`切断されました`,activeRuns:`{{count}} アクティブ`,activeRuns_plural:`{{count}} アクティブ`},states:{queued:`キューに入れられました`,running:`実行中`,blocked:`ブロックされました`,done:`完了`,failed:`失敗しました`,cancelled:`キャンセルされました`},startRun:{title:`エージェント実行を開始`,placeholder:`Libre Claw にリポジトリの検査、バグの修正、レビューの実行、レポートのスケジュールを依頼してください...`,chatRun:`チャットラン`,goalMode:`ゴールモード`,providerOverride:`プロバイダーのオーバーライド`,modelOverride:`モデルオーバーライド`,run:`実行`},modelRoute:{title:`モデルルート`,providerPlaceholder:`プロバイダー`,modelPlaceholder:`モデル`,persistGlobal:`Libre Claw グローバル構成を保持する`,saveModel:`モデルの保存`,theme:`Libre Claw テーマ`,saveTheme:`テーマの保存`},runs:{title:`実行`,empty:`Libre Claw の実行はまだありません。`},timeline:{title:`実行タイムライン`,empty:`実行を選択してそのイベントを検査します。`,streaming:`ストリーミング中...`,assistantResponse:`アシスタントの応答`,resultOk:`わかりました`,resultError:`エラー`,labels:{userMessage:`ユーザーメッセージ`,toolCall:`ツール呼び出し`,toolResult:`ツールの結果`,approvalRequest:`承認リクエスト`,approvalResponse:`承認応答`,runStarted:`実行開始`,runFinished:`実行完了`,usage:`使用法`,error:`エラー`}},approvals:{needed:`承認が必要です`,allowOnce:`一度許可する`,alwaysAllowTool:`ツールを常に許可する`,deny:`拒否`,toolApprovalRequested:`ツールの承認が要求されました`},automations:{title:`自動化`,namePlaceholder:`名前`,schedulePlaceholder:`daily 09:00`,promptPlaceholder:`自動化プロンプト`,create:`作成`,empty:`スケジュールされたLibre Claw 自動化はありません。`,runNow:`今すぐ実行`,pause:`一時停止`,resume:`再開`,routes:{report:`レポート`,telegram:`Telegram`},status:{active:`アクティブ`,paused:`一時停止中`}},usageFallback:{title:`使用法とフォールバック`,usage:`使用法`,fallbackRoute:`フォールバックルート`,noUsage:`まだ使用実績はありません。`},metrics:{provider:`プロバイダー`,model:`モデル`,input:`入力`,output:`出力`,cached:`キャッシュされた`,reasoning:`推論`,cost:`コスト`,tool:`ツール`,resolution:`解像度`,state:`状態`,stopReason:`停止理由`,tokens:`{{formatted}} トークン`,tokens_plural:`{{formatted}} トークン`},fallbacks:{tool:`ツール`,unknown:`不明`,resolved:`解決済み`,unknownError:`不明なエラー`},toasts:{loadStatusFailed:`Libre Claw ステータスをロードできませんでした`,enterTask:`Libre Claw のタスクを入力してください`,runStarted:`Libre Claw の実行を開始しました`,startRunFailed:`Libre Claw の実行を開始できませんでした`,runCancelled:`実行をキャンセルしました`,cancelRunFailed:`実行をキャンセルできませんでした`,approved:`承認済み`,denied:`拒否されました`,resolvePermissionFailed:`権限を解決できませんでした`,providerModelRequired:`プロバイダーとモデルは必須です`,modelUpdated:`Libre Claw モデルが更新されました`,updateModelFailed:`モデルを更新できませんでした`,themeUpdated:`Libre Claw テーマを更新しました`,updateThemeFailed:`テーマを更新できませんでした`,automationRequired:`オートメーション名、スケジュール、プロンプトは必須です`,automationCreated:`自動化が作成されました`,createAutomationFailed:`オートメーションを作成できませんでした`,automationUpdated:`自動化が更新されました`,updateAutomationFailed:`オートメーションを更新できませんでした`}},work:{title:`作業`,subtitle:`隔離されたモデルワークスペース`,tasks:{title:`作業タスク`,subtitle:`永続的なローカルワークスペース`,new:`新しいタスク`,emptyTitle:`作業タスクはまだありません`,empty:`最初のメッセージを送信すると、作業タスクがここに表示されます。`,untitled:`無題のタスク`,actions:`タスク操作`,delete:`タスクを削除`,deleteNamed:`{{title}}を削除`,deleteConfirm:`「{{title}}」とそのワークスペースを完全に削除しますか?`,close:`作業タスクを閉じる`,open:`作業タスクを開く`,rename:`タスク名`,loading:`タスクを読み込み中…`,notFound:`この作業タスクは利用できません`,back:`新しいタスクを開始`,status:`ステータス:{{status}}`},landing:{title:`新しい作業タスクを開始`,description:`ローカルモデルまたは設定済みプロバイダーのモデルに、永続的で隔離されたワークスペースを提供します。モデルはファイルの確認やツールの実行ができ、次回も続きから作業できます。`,isolated:`隔離`,isolatedBody:`各タスクには専用のコンテナとファイルがあります。`,durable:`永続的`,durableBody:`後から会話とワークスペースに戻れます。`,controlled:`制御`,controlledBody:`ランタイムとタスクファイルはホストから隔離されます。`},composer:{placeholder:`作成または変更したい内容を入力…`,model:`作業モデル`,noModels:`作業対応モデルがありません`,cancel:`停止`,send:`実行`,hint:`各タスクは専用のファイルと履歴を保持します。使用前にモデルの出力を確認してください。`,remoteTitle:`リモートプロバイダー`,remoteHint:`会話とツール出力は、設定済みのサービスに送信されます。1 回の自律実行で複数回プロバイダーを呼び出し、料金が発生する場合があります。ツールが内容を返さない限り、ワークスペースのファイルはローカルに保持されます。`,remoteDismiss:`閉じる`,remoteDismissLabel:`リモートプロバイダーの通知を閉じる`,remoteDismissFailed:`リモートプロバイダーの設定を保存できませんでした。`,noModelSelected:`作業対応モデルが選択されていません。`},conversation:{ready:`ワークスペースの準備ができました`,empty:`下からタスクを続けてください。この会話とファイルは、このワークスペースに紐づいたまま保持されます。`,loadOlder:`過去のメッセージを読み込む`},status:{preparing:`隔離ワークスペースを準備中…`,running:`ローカルワークスペースで作業中…`},statusLabels:{idle:`待機中`,thinking:`思考中`,complete:`完了`,needsInput:`入力待ち`,error:`エラー`},live:{connecting:`ライブ更新に接続しています…`,reconnecting:`ライブ更新に再接続しています…`,unavailable:`ライブ更新を利用できません`,newActivity:`新しいアクティビティ`,skillsLoaded:`ワークスペーススキル · {{count}}`},runtime:{unavailable:`ランタイムを利用できません`,ready:`ランタイム準備完了`,readyOllama:`Docker 準備完了`,readyPlugin:`Docker + プラグイン準備完了`,readyHybrid:`Docker + モデル準備完了`,reason:`Docker と、利用可能な Ollama またはプラグインのモデルプロバイダーが必要です。`},workspace:{label:`ワークスペース表示`,files:`ファイル`,activity:`アクティビティ`,preview:`プレビュー`,resize:`会話とワークスペースのサイズを変更`,resizeHint:`ドラッグしてサイズを変更します。細かく調整するには矢印キーを使用します。ダブルクリックまたは Enter キーでリセットします。`,splitSize:`会話 {{conversation}}%、ワークスペース {{workspace}}%`,terminal:`ターミナル`},files:{discard:`未保存のファイル変更を破棄しますか?`,leaveWithDraft:`このファイルから移動しますか?未保存の編集内容はブラウザーの下書きとして残ります。`,up:`親フォルダー`,back:`ファイルに戻る`,empty:`このフォルダーにはまだファイルがありません。`,select:`確認・編集するファイルを選択してください。`,editorLabel:`ファイルエディター:{{path}}`,format:`整形`,formatted:`コードを整形しました。`,formatFailed:`このファイルを整形できませんでした。`,formatShortcut:`整形(Shift+Alt+F)`,formatTooLarge:`整形できるのは、100,000 文字未満かつ 4,000 行未満のファイルです。`,formatUnsupported:`このファイル形式は整形できません。`,saveShortcut:`保存(⌘/Ctrl+S)`,highlightPaused:`編集の応答性を保つため、大きなファイルではリアルタイムハイライトを一時停止しています。`,plainTextLarge:`プレーンテキスト・大きなファイル`,changes:`変更`,changesSince:`前のターン以降の変更点`,diffLabel:`前のターン以降の変更: {{path}}`,diffFolded:`変更のない行 {{count}} 行`},activity:{empty:`コマンド、ファイル操作、ツールの結果がここに表示されます。`,toolActivity:`ツールアクティビティ`,details:`詳細`,kinds:{message:`メッセージ`,toolCall:`ツール呼び出し`,toolResult:`ツール結果`,error:`エラー`}},preview:{command:`任意の起動コマンド`,start:`プレビューを開始`,stop:`プレビューを停止`,open:`開く`,starting:`プレビューを開始中…`,frameTitle:`ワークスペースのプレビュー`,failed:`プレビューを開始できませんでした。アクティビティを確認して、別のコマンドをお試しください。`,empty:`このワークスペース内でアプリを起動すると、ここで確認できます。`},mobile:{surface:`タスク画面`,conversation:`会話`,workspace:`ワークスペース`},toasts:{runFailed:`作業タスクを開始できませんでした。`,updateFailed:`このタスクを更新できませんでした。`,renameFailed:`このタスク名を変更できませんでした。`,cancelled:`作業の実行を停止しました。`,cancelFailed:`作業の実行を停止できませんでした。`,deleteFailed:`この作業タスクを削除できませんでした。`,saveFailed:`このファイルを保存できませんでした。`,saved:`ファイルを保存しました。`,previewFailed:`プレビューを開始できませんでした。`,previewStopFailed:`プレビューを停止できませんでした。`},terminal:{connecting:`サンドボックスでシェルを開いています…`,closed:`ターミナルセッションが終了しました。`,failed:`ターミナルセッションを開始できませんでした。`,reconnect:`再接続`,unavailable:`この環境では対話型ターミナルを利用できません。`,blockedByRun:`モデルがこのコンテナを使用中です。ターンの終了後にターミナルが開きます。`,taskRunning:`モデルのターンを実行中`}},usageAnalytics:{eyebrow:`管理`,title:`プロバイダーの使用状況`,description:`このインスタンスで有効なプラグイン全体の送信API呼び出しとモデル消費量を追跡します。`,days:`{{count}}日間`,refresh:`使用状況を更新`,loadFailed:`プロバイダーの使用状況を読み込めませんでした。`,metrics:{calls:`呼び出し`,tokens:`トークン`},cards:{calls:`API呼び出し`,callsDetail:`{{count}}人のアクティブユーザー全体`,tokens:`報告されたトークン`,tokensDetail:`{{count}}件の呼び出しで報告された使用量`,success:`成功率`,successDetail:`{{count}}件の失敗した呼び出し`,latency:`平均レイテンシ`,latencyDetail:`エンドツーエンドのプロバイダ時間`},activity:{title:`時間経過に伴う消費量`,callsDescription:`有効なプラグインへの1日の送信リクエスト`,tokensDescription:`プロバイダから報告された1日のトークン合計`,chartLabel:`1日のプロバイダ {{metric}} チャート`},models:{title:`モデル消費量`,description:`この期間中に最もトラフィックが多いモデル。`,model:`モデル`,success:`成功`,latency:`レイテンシ`},providers:{title:`有効なプラグインのトラフィック`},capabilities:{title:`機能の構成`,characters:`{{count}} 文字`,images:`{{count}} 画像`,jobs:`{{count}} 件の動画ジョブ`,inputs:`{{count}} 件の入力`,reportedTokens:`{{count}} 報告トークン`},empty:{title:`プロバイダ呼び出しはまだありません`,description:`有効なプラグインがチャット、Work、埋め込み、画像、音声、サウンド、または動画のリクエストを処理すると、呼び出しがここに表示されます。`},privacyNote:`使用量はサーバー上の送信プラグイン境界で計測されます。Libre WebUIはプロバイダ、モデル、タイミング、ステータス、および報告されたカウンターを保存しますが、プロンプト、レスポンス、エンドポイント、資格情報、またはプロバイダのエラー本文は保存しません。トークン合計には、プロバイダが使用量メタデータを返した呼び出しのみが含まれます。`},systemPage:{eyebrow:`管理`,title:`システム`,description:`この Libre WebUI インスタンスをホストしているマシンとランタイムを監視します。`,updated:`更新日時: {{date}}`,refresh:`システム情報を更新`,loadFailed:`システム情報を読み込めませんでした。`,cards:{uptime:`ホストの稼働時間`,uptimeDetail:`{{date}} から稼働中`,memory:`使用メモリ`,memoryDetail:`{{total}} 中 {{used}} 使用`,freeSpace:`空き容量`,freeSpaceDetail:`{{label}} · 合計 {{total}}`,containers:`実行中のコンテナ`,containersDetail:`Docker に認識されている {{total}} 個のコンテナ`,dockerUnavailable:`Docker は利用できません`,unavailable:`利用不可`},host:{title:`ホストとランタイム`,description:`オペレーティングシステム、プロセッサ、および Libre WebUI プロセスの詳細。`,container:`コンテナランタイム`,native:`ネイティブランタイム`,hostname:`ホスト名`,operatingSystem:`オペレーティングシステム`,processor:`プロセッサー`,logicalCpus:`論理 CPU`,loadAverage:`負荷平均 · 1 / 5 / 15 分`,libreVersion:`Libre WebUI`,nodeVersion:`Node.js`,process:`プロセス`,workingDirectory:`作業ディレクトリ`},memory:{title:`メモリ`,description:`ランタイムで認識されるシステムメモリとアプリケーションプロセスの使用状況。`,usedOf:`{{total}} のうち {{used}} 使用中`,free:`{{value}} 空き`,processRss:`プロセス RSS`,heapUsed:`V8 ヒープ使用量`,heapTotal:`V8 ヒープ合計`,external:`外部メモリ`},storage:{title:`ストレージ`,description:`ランタイムファイルシステムおよび永続的なアプリケーションデータに利用可能な空き容量。`,used:`{{value}} 使用済み`,free:`{{value}} 空き`,empty:`このランタイムではファイルシステム情報を利用できません。`},docker:{title:`Docker`,description:`読み取り専用の Docker Engine ステータスと、絞り込まれたコンテナのリスト。`,connected:`接続済み`,unavailable:`利用不可`,unavailableDetail:`Docker Engine の診断は利用できません。`,socketStatus:`ローカルソケット: {{status}}`,mounted:`マウント済み`,notMounted:`未マウント`,running:`実行中`,stopped:`停止`,paused:`一時停止`,total:`合計`,version:`バージョン`,host:`ホスト`,architecture:`アーキテクチャ`,cpus:`CPU`,memory:`メモリ`,container:`コンテナ`,image:`イメージ`,state:`状態`,created:`作成日時`,empty:`Dockerに接続されており、現在リストされているコンテナはありません。`},network:{title:`ネットワーク`,description:`ランタイムで表示されるインターフェース、アドレス、およびLinuxトラフィックカウンター。`,internal:`内部`,empty:`アプリケーションランタイムに表示されるネットワークインターフェースはありません。`},securityNote:`このページは管理者に限定されています。サーバーは運用上の要約のみを返します。環境変数、認証情報、Dockerラベル、マウント、コンテナコマンド、またはinspectペイロードは公開されません。Libre WebUIがコンテナ内で実行されている場合、ローカルソケットが利用可能であれば、ホストレベルのCPUおよびメモリの詳細はDocker Engineから取得されます。その他の値はアプリケーションランタイムを示します。`},mediaGeneration:{title:`メディアを生成`,description:`有効化されたメディアプロバイダーでビデオ、サウンド、音楽、または音声を作成します。`,image:`画像`,video:`ビデオ`,audio:`オーディオ`,sound:`サウンド`,speech:`音声`,model:`モデル`,voice:`音声または音声ID`,resolution:`解像度`,aspectRatio:`アスペクト比`,duration:`長さ`,providerDefault:`プロバイダーのデフォルト`,generateAudio:`サポートされている場合、ビデオと一緒にオーディオを生成`,prompt:`プロンプト`,text:`読み上げるテキスト`,videoPlaceholder:`シーン、動き、カメラ、照明を説明してください...`,audioPlaceholder:`音声に読み上げさせたいテキストを入力してください...`,soundPlaceholder:`欲しいサウンド、音楽、雰囲気、または音声応答を説明してください...`,generate:`生成`,generating:`生成中… 数分かかる場合があります`,success:`メディアが生成され、Imagineに保存されました`,failed:`メディアの生成に失敗しました`,loadFailed:`メディアプロバイダーの読み込みに失敗しました`,noModels:`利用可能な{{kind}}モデルはありません。互換性のあるプロバイダーを有効化し、その認証情報を先に保存してください。`},mediaGallery:{itemCount:`{{count}} 件`,empty:`まだ生成されたメディアはありません`,emptyHint:`画像、ビデオ、または音声クリップを生成すると、ここに表示されます。`,filters:{all:`すべて`,image:`画像`,video:`動画`,audio:`オーディオ`}}};export{e as default};
@@ -0,0 +1,2 @@
1
+ var e={common:{loading:`로딩 중...`,save:`저장`,saving:`저장 중...`,cancel:`취소`,delete:`삭제`,edit:`편집`,close:`닫기`,back:`뒤로`,next:`다음`,confirm:`확인`,error:`오류`,success:`성공`,warning:`경고`,or:`또는`,optional:`선택사항`,enabled:`활성화됨`,disabled:`비활성화됨`,on:`켜짐`,off:`꺼짐`,yes:`예`,no:`아니오`,search:`검색`,noResults:`결과 없음`,retry:`재시도`,refresh:`새로고침`,download:`다운로드`,upload:`업로드`,export:`내보내기`,import:`가져오기`,reset:`초기화`,apply:`적용`,clear:`지우기`,all:`모두`,none:`없음`,default:`기본값`,custom:`사용자 정의`,remove:`제거`},brand:{name:`Libre WebUI`,shortName:`Libre`},auth:{login:{title:`다시 오신 것을 환영합니다`,subtitle:`계속하려면 계정에 로그인하세요`,username:`사용자 이름`,usernamePlaceholder:`사용자 이름을 입력하세요`,password:`비밀번호`,passwordPlaceholder:`비밀번호를 입력하세요`,signIn:`로그인`,signingIn:`로그인 중...`,noAccount:`계정이 없으신가요?`,signUpHere:`여기서 가입하세요`,loginSuccess:`로그인 성공!`,loginFailed:`로그인 실패`,checkCredentials:`로그인 실패. 자격 증명을 확인하세요.`,enterBoth:`사용자 이름과 비밀번호를 모두 입력하세요`,githubSuccess:`GitHub 로그인 성공!`,githubFailed:`GitHub 인증 실패`,githubVerifyFailed:`GitHub 인증 확인 실패`,approvalPending:`계정이 관리자 승인을 기다리고 있습니다.`},signup:{title:`계정 만들기`,subtitle:`새 계정을 등록하세요`,username:`사용자 이름`,usernamePlaceholder:`사용자 이름을 선택하세요`,email:`이메일`,emailPlaceholder:`your@email.com`,password:`비밀번호`,passwordPlaceholder:`비밀번호를 선택하세요`,confirmPassword:`비밀번호 확인`,confirmPasswordPlaceholder:`비밀번호를 다시 입력하세요`,createAccount:`계정 만들기`,creatingAccount:`계정 생성 중...`,hasAccount:`이미 계정이 있으신가요?`,signInHere:`여기서 로그인하세요`,signupSuccess:`계정이 성공적으로 생성되었습니다!`,signupFailed:`가입 실패`,tryAgain:`가입 실패. 다시 시도해주세요.`,usernameRequired:`사용자 이름과 비밀번호가 필요합니다`,passwordMismatch:`비밀번호가 일치하지 않습니다`,passwordTooShort:`비밀번호는 최소 6자 이상이어야 합니다`,approvalPending:`가입이 완료되었습니다. 관리자가 계정을 승인해야 합니다.`,awaitingApproval:`승인 대기 중`,awaitingApprovalDescription:`계정이 생성되었지만, 로그인하려면 관리자가 계정을 활성화해야 합니다.`,backToSignIn:`로그인으로 돌아가기`},logout:{button:`로그아웃`,success:`성공적으로 로그아웃되었습니다`},oauth:{continueWith:`{{provider}}로 계속하기`,connectingTo:`{{provider}}에 연결 중...`,github:`GitHub`,huggingFace:`Hugging Face`},checkingAuth:`인증 확인 중...`,welcome:`환영합니다`,noEmail:`이메일 없음`,role:`역할`,id:`ID`,userId:`사용자 ID`,signInDescription:`계속하려면 GitHub 계정으로 로그인하세요`,signInWithGitHub:`GitHub로 로그인`,jwtActive:`JWT 인증 활성`,jwtDescription:`GitHub OAuth 기반 JWT 인증`,github:`GitHub`,provider:`제공자`,tagline:`당신의 AI 스택은 당신이 통제해야 합니다.`,selfHosted:`자체 호스팅 · Apache 2.0`,highlights:{local:{title:`로컬 우선`,body:`대화와 파일은 이 앱을 실행하는 기기에 그대로 보관됩니다.`},providers:{title:`모든 프로바이더`,body:`Ollama를 통한 로컬 모델과 추가하기로 선택한 원격 프로바이더를 지원합니다.`},work:{title:`격리된 작업 환경`,body:`모델에 파일, 터미널, 미리보기가 있는 샌드박스 작업 공간을 제공하세요.`}}},setup:{welcome:{title:`Libre WebUI에 오신 것을 환영합니다`,subtitle:`시작하기`,description:`몇 단계만으로 Libre WebUI 인스턴스를 설정하세요`,createAdmin:`관리자 계정 만들기`,features:{secure:{title:`안전하고 개인적인`,description:`대화가 기기에 저장됩니다`},fast:{title:`빠르고 반응이 좋은`,description:`속도와 성능에 최적화됨`},openSource:{title:`오픈 소스`,description:`무료 오픈 소스 소프트웨어`}}},admin:{title:`관리자 계정 만들기`,subtitle:`관리자 설정`,description:`Libre WebUI 인스턴스의 첫 번째 관리자 계정을 만드세요`,usernamePlaceholder:`관리자 사용자 이름을 입력하세요`,passwordPlaceholder:`비밀번호를 입력하세요 (최소 6자)`,confirmPlaceholder:`비밀번호를 다시 입력하세요`,creating:`생성 중...`,createAdmin:`관리자 만들기`,success:`관리자 계정이 성공적으로 생성되었습니다!`,failed:`관리자 계정 생성 실패`,fillAllFields:`모든 필드를 입력하세요`,note:`이것은 Libre WebUI 인스턴스의 기본 관리자 계정이 됩니다`,approvalUnexpected:`초기 관리자를 활성화할 수 없습니다. 다시 시도해 주세요.`},encryptionKey:{title:`암호화 키 저장`,subtitle:`중요: 이 키를 저장하세요`,description:`이 암호화 키는 민감한 데이터를 보호합니다. 안전하게 저장하세요 - 데이터베이스를 복원해야 할 때 필요합니다.`,warning:`경고`,warningText:`이 키를 분실하고 데이터베이스를 복원해야 하는 경우, 암호화된 데이터(API 키, 환경설정)를 복구할 수 없습니다.`,label:`암호화 키`,loading:`로딩 중...`,copyToClipboard:`클립보드에 복사`,copied:`암호화 키가 클립보드에 복사되었습니다!`,copyFailed:`키를 클립보드에 복사하지 못했습니다`,envNote:`이 키는 backend/.env 파일에 ENCRYPTION_KEY로도 저장됩니다`,acknowledgment:`암호화 키를 안전한 장소에 저장했으며, 분실 시 데이터 손실이 발생할 수 있음을 이해합니다.`,confirmRequired:`암호화 키를 저장했음을 확인하세요`,continue:`Libre WebUI로 계속`}},chat:{greeting:{morning:`좋은 아침입니다`,afternoon:`좋은 오후입니다`,evening:`좋은 저녁입니다`,night:`안녕히 주무세요`},welcome:{helpToday:`오늘 무엇을 도와드릴까요?`,helpTonight:`오늘 밤 무엇을 도와드릴까요?`,variety:{create:{title:`무엇을 만들어 볼까요?`,subtitle:`떠오른 생각, 간단한 스케치, 좀처럼 풀리지 않는 문제에서 시작해 보세요.`},explore:{title:`어디서부터 시작할까요?`,subtitle:`자꾸만 다시 떠오르는 질문을 가져오세요.`},imagine:{title:`무엇을 상상하고 있나요?`,subtitle:`함께 구체적인 모습으로 만들어 봐요.`},focus:{title:`지금 무엇에 집중할까요?`,subtitle:`다음 단계를 분명하게 정해 봅시다.`},untangle:{title:`무엇이 복잡하게 얽혀 있나요?`,subtitle:`우선 정리되지 않은 그대로 들려주세요.`},momentum:{title:`준비되면 시작해요.`,subtitle:`아이디어, 계획, 하다 만 이야기 어디서든 이어가세요.`},open:{title:`무슨 생각을 하고 있나요?`,subtitle:`작은 생각도 큰 프로젝트도 모두 좋아요.`},challenge:{title:`무엇을 해결할까요?`,subtitle:`아직 뜻대로 되지 않는 부분을 알려주세요.`},draft:{title:`어디서든 시작해 봅시다.`,subtitle:`아직 다듬어지지 않아도 괜찮아요.`},possibility:{title:`이건 무엇이 될 수 있을까요?`,subtitle:`가공하지 않은 재료부터 보여주세요.`},unexpected:{title:`예상 밖의 무언가를 만들어 봐요.`,subtitle:`제약 하나, 분위기 하나, 혹은 어렴풋한 아이디어를 주세요.`}}},input:{placeholder:`메시지를 보내세요`,messagePlaceholder:`메시지...`,attachImages:`이미지 첨부`,attachments:`첨부 파일 및 고급 기능`,sendMessage:`메시지 보내기`,stopGeneration:`생성 중지`},session:{new:`새 채팅`,work:`작업`,chat:`채팅`,private:`비공개`,privateMode:`비공개 모드`,privateDescription:`이 대화는 저장되지 않습니다`,privateTooltip:`저장되지 않는 비공개 대화 시작`,deleteConfirm:`이 채팅을 삭제하시겠습니까?`,generatingTitle:`제목 생성 중`,noChats:`채팅이 없습니다`,createFirst:`위에서 첫 번째 채팅을 만드세요`,chats:`채팅`,renameChat:`채팅 이름 변경`,deleteChat:`채팅 삭제`,incognito:`시크릿 채팅`},persona:{applied:`페르소나 적용됨`,label:`페르소나`,removeFailed:`페르소나 제거에 실패했습니다`},model:{updated:`모델 업데이트됨`,noModels:`사용 가능한 모델 없음`,noModelsDescription:`사용 가능한 모델이 없습니다. Ollama가 실행 중이고 모델이 설치되어 있는지 확인하세요.`,pullCommand:`ollama pull llama3.2:3b`,noModelsTooltip:`사용 가능한 모델이 없습니다. Ollama가 실행 중이고 모델이 설치되어 있는지 확인하세요.`,selectBeforePrivateChat:`비공개 채팅을 시작하기 전에 사용 가능한 모델을 선택하세요`,selectBeforeSending:`전송하기 전에 사용 가능한 모델을 선택하세요`},footer:{disclaimer:`LLM은 실수를 할 수 있습니다 - 중요한 정보는 확인하세요`,images:`이미지 {{count}}개`,images_plural:`이미지 {{count}}개`,structuredOutput:`구조화된 출력`},mediaUpload:{dropImagesHere:`여기에 이미지를 놓거나`,supportedFormats:`지원: JPG, PNG, GIF, WebP (각 최대 10MB)`,browse:`찾아보기`},structuredOutput:{title:`응답 형식`,none:`없음 (자연어)`,noneDescription:`기본 자연어 응답`,json:`JSON`,jsonDescription:`구조화된 JSON 형식`,list:`목록`,listDescription:`항목 배열`,summary:`요약`,summaryDescription:`핵심 사항이 포함된 문서 요약`,analysis:`분석`,analysisDescription:`장단점이 포함된 구조화된 분석`,custom:`사용자 정의 스키마`,customDescription:`자신만의 JSON 스키마 정의`,customSchema:`사용자 정의 JSON 스키마`,schemaPreview:`스키마 미리보기`,applySchema:`스키마 적용`,cancel:`취소`,enabled:`구조화된 출력 활성화됨`}},sidebar:{navigation:{chat:`채팅`,models:`모델`,personas:`페르소나`,imagine:`이미지 생성`,settings:`설정`,userManagement:`사용자 관리`,signOut:`로그아웃`,agents:`에이전트`,work:`작업`,exploreLabel:`둘러보기`,usageAnalytics:`프로바이더 사용량`,system:`시스템`},toggleSize:`사이드바 크기 전환`,expandSidebar:`사이드바 확장`},user:{menu:{changePicture:`사진 변경`,settings:`설정`,userManagement:`사용자 관리`,logout:`로그아웃`,usageAnalytics:`프로바이더 사용량`,system:`시스템`},avatar:{title:`프로필 사진 변경`,updated:`프로필 사진이 업데이트되었습니다`,updateFailed:`프로필 사진 업데이트 실패`,saving:`저장 중...`,label:`아바타`,uploadAvatarImage:`아바타 이미지 업로드`,dragAndDrop:`이미지를 드래그하거나 클릭하여 찾아보기`,chooseImage:`이미지 선택`,uploading:`업로드 중...`,enterImageUrl:`또는 이미지 URL 입력`,supportedFormats:`지원 형식: JPG, PNG, GIF, WebP (최대 2MB). 정사각형 이미지가 가장 좋습니다.`,customAvatar:`사용자 정의 아바타 이미지`,clickToChange:`클릭하여 변경 또는 제거`,removed:`아바타가 제거되었습니다`,uploaded:`아바타가 업로드되었습니다`,invalidFile:`유효한 이미지 파일을 선택하세요`,fileTooLarge:`아바타 이미지 크기는 2MB 미만이어야 합니다`,readFailed:`이미지 파일을 읽지 못했습니다`,uploadFailed:`아바타 이미지 업로드 실패`},profile:{noEmail:`이메일 없음`}},settings:JSON.parse(`{"title":"설정","tabs":{"appearance":"외관","model":"모델","systemMessage":"시스템 메시지","plugins":"플러그인","generation":"생성","documents":"문서","tts":"음성 합성","imageGen":"이미지 생성","data":"데이터","about":"정보"},"appearance":{"title":"외관","language":{"title":"언어","description":"선호하는 언어를 선택하세요"},"theme":{"title":"테마","light":"라이트","dark":"다크","amoled":"퓨어 블랙","system":"시스템"},"accent":{"title":"강조 색상","custom":"사용자 지정 색상","useColor":"{{color}} 강조 색상 사용","behaviorTitle":"인터페이스 팔레트","behaviorDescription":"강조 색상을 컨트롤에만 사용할지 밝은 또는 어두운 인터페이스 전체에 적용할지 선택하세요.","defaultStyle":"기본","defaultStyleDescription":"밝은 테마와 어두운 테마의 중립적인 표면을 유지합니다.","adaptedStyle":"강조 색상에 맞추기","adaptedStyleDescription":"표면, 테두리, 텍스트를 강조 색상으로 물들입니다."},"chatInterface":{"title":"채팅 인터페이스","showUsername":"사용자 이름 표시","showUsernameDescription":"채팅 메시지에 사용자 이름 표시"},"background":{"title":"배경 이미지","enable":"배경 이미지 활성화","enableDescription":"블러 효과가 있는 사용자 정의 배경 표시","blur":"블러","opacity":"불투명도","upload":"배경 이미지 업로드","dragDrop":"이미지를 끌어다 놓거나 클릭하여 찾아보기","chooseImage":"이미지 선택"}},"saveSettings":"설정 저장","model":{"title":"모델 설정","defaultModel":"기본 모델","defaultModelDescription":"이 모델은 새 대화에 기본으로 사용됩니다","selectModel":"모델 선택","updateAll":"모든 모델 업데이트","updateAllDescription":"설치된 모든 모델의 최신 버전 확인 및 풀","updateAllButton":"모두 업데이트","updating":"모델 업데이트 중...","currentModelInfo":"현재 모델 정보","name":"이름","size":"크기","family":"계열","format":"형식","status":"상태","statusStarting":"시작 중...","statusComplete":"완료","statusError":"오류","bulkOperations":"일괄 작업","autoTitle":{"title":"자동 제목 생성","enable":"자동 제목 활성화","enableDescription":"새 대화의 제목을 자동으로 생성","taskModel":"작업 모델","selectTaskModel":"작업 모델 선택","taskModelDescription":"대화 제목 생성에 사용되는 모델"},"persona":"페르소나","updatingModel":"{{name}} 업데이트 중 ({{current}}/{{total}})","modelsProgress":"{{total}}개 모델 중 {{current}}개","specializedModels":"특화 모델","visionModel":"비전 모델","selectVisionModel":"현재 채팅 모델 사용","visionModelDescription":"전송되는 채팅 컨텍스트에 이미지가 포함될 때마다 자동으로 사용됩니다. 이미지 입력을 지원하는 모델을 선택하세요.","visionModelUpdateFailed":"비전 모델 업데이트에 실패했습니다: {{error}}","visionModelNoProvider":"이 비전 모델에는 제공자 정보가 없습니다. 사용 가능한 모델을 선택하세요."},"systemMessage":{"title":"시스템 메시지","description":"모든 새 대화에 사용될 사용자 정의 시스템 메시지를 설정하세요.","placeholder":"시스템 메시지를 입력하세요...","saved":"시스템 메시지가 저장되었습니다","saveFailed":"시스템 메시지 저장 실패"},"plugins":{"title":"플러그인","description":"설치된 플러그인 관리","addNew":"새 플러그인 추가","upload":"플러그인 업로드","addJson":"JSON 추가","uploading":"업로드 중...","jsonPlaceholder":"플러그인 JSON 구성 붙여넣기...","install":"플러그인 설치","noPlugins":"설치된 플러그인 없음","noPluginsDescription":"기능을 확장하려면 플러그인을 추가하세요","loading":"플러그인 로딩 중...","installed":"설치된 플러그인","active":"활성 플러그인","activeLabel":"활성","inactive":"비활성","activate":"활성화","deactivate":"비활성화","models":"모델","apiKeySet":"API 키 설정됨","apiKeyConfiguration":"API 키 구성","apiKeyEnvAlternative":"또는 다음을 설정하세요:","environmentVariable":"환경 변수","apiKeyConfigured":"API 키가 구성됨","apiKeyPlaceholder":"API 키를 입력하세요...","saveApiKey":"API 키 저장","apiKey":{"title":"API 키","placeholder":"API 키 입력","save":"키 저장","remove":"키 제거","configured":"API 키 구성됨","notConfigured":"API 키 필요","saved":"API 키가 성공적으로 저장되었습니다","removed":"API 키가 제거되었습니다","saveFailed":"API 키 저장 실패","removeFailed":"API 키 제거 실패","enterKey":"API 키를 입력하세요"},"variables":"Variables","providerConnections":"프로바이더 연결","providerConnectionsDescription":"플러그인을 통해 모델 프로바이더를 연결, 구성 및 검사합니다.","providers":"프로바이더","searchProviders":"프로바이더 검색","noProvidersFound":"검색과 일치하는 프로바이더가 없습니다.","selectProvider":"프로바이더 선택","selectProviderDescription":"연결 및 모델 카탈로그를 검사할 프로바이더를 선택하세요.","apiKeyDescription":"{{name}}의 개인 API 키를 저장합니다.","showApiKey":"API 키 표시","hideApiKey":"API 키 숨기기","configure":"구성","providerSettings":"프로바이더 설정","status":"상태","defaultEndpoint":"기본 엔드포인트","modelCatalog":"모델 카탈로그","modelCatalogDescription":"이 프로바이더에 대해 검색 및 구성된 모델과 기능입니다.","refreshModels":"모델 새로고침","noModelsConfigured":"이 제공자에 대해 구성된 모델이 없습니다.","modelId":"모델 ID","capabilities":"기능","modelCatalogUpdated":"모델 카탈로그가 업데이트되었습니다: {{count}}개 모델.","modelCatalogUnchanged":"모델 카탈로그가 이미 최신 상태입니다.","modelCatalogNeedsApiKey":"이 제공자의 실시간 모델 목록을 불러오려면 유효한 API 키를 추가하세요.","modelCatalogUnavailable":"제공자의 모델 목록을 불러올 수 없습니다.","modelCatalogRefreshFailed":"모델 카탈로그를 새로고침하지 못했습니다.","capability":{"chat":"채팅","embedding":"임베딩","image":"이미지","speech":"음성","transcription":"전사"},"exportPlugin":"플러그인 내보내기","deletePlugin":"플러그인 삭제"},"generation":{"title":"생성 옵션","description":"AI가 응답을 생성하는 방식 구성","coreParameters":"핵심 매개변수","temperature":"온도","temperatureDescription":"무작위성을 제어합니다. 낮은 값은 더 집중적이고, 높은 값은 더 창의적입니다.","topP":"Top P","topPDescription":"핵 샘플링을 통해 다양성을 제어합니다. 낮은 값은 가능성 높은 토큰에 집중합니다.","topK":"Top K","topKDescription":"토큰 선택을 상위 K개로 제한합니다. 0으로 설정하면 비활성화됩니다.","minP":"Min P","minPDescription":"토큰 선택을 위한 최소 확률 임계값입니다.","generationControl":"생성 제어","maxTokens":"최대 토큰","maxTokensDescription":"응답에서 생성할 최대 토큰 수입니다.","repeatPenalty":"반복 페널티","repeatPenaltyDescription":"반복된 토큰에 페널티를 부여합니다. 높은 값은 반복을 줄입니다.","contextLength":"컨텍스트 길이","contextLengthDescription":"대화의 최대 컨텍스트 창 크기입니다.","seed":"시드","optional":"선택사항","random":"무작위","seedDescription":"재현 가능한 출력을 위해 특정 시드를 설정합니다.","advancedOptions":"고급 옵션","presencePenalty":"존재 페널티","presencePenaltyDescription":"컨텍스트에 나타나는 토큰에 페널티를 부여합니다.","frequencyPenalty":"빈도 페널티","frequencyPenaltyDescription":"자주 사용되는 토큰에 페널티를 부여합니다.","stopSequences":"중지 시퀀스","commaSeparated":"쉼표로 구분","stopSequencesDescription":"발견 시 생성을 중지하는 사용자 정의 토큰입니다.","resetDefaults":"기본값으로 재설정","saveOptions":"옵션 저장","embeddingSettings":"임베딩 설정","enableEmbeddings":"문서 임베딩 활성화","advancedSettings":"고급 생성 설정","advancedSettingsDescription":"샘플링, 토큰 제한, 컨텍스트, 페널티 및 정지 시퀀스"},"documents":{"title":"문서 설정","embeddings":{"title":"임베딩","enable":"문서 임베딩 활성화","model":"임베딩 모델","modelDescription":"문서 임베딩에 사용할 모델 선택","chunkSize":"청크 크기","chunkSizeInTokens":"(토큰 단위)","chunkSizeDescription":"임베딩을 위한 텍스트 청크 크기","chunkOverlap":"청크 겹침","chunkOverlapInTokens":"(토큰 단위)","chunkOverlapDescription":"연속 청크 간의 겹침","similarityThreshold":"유사도 임계값","similarityDescription":"결과를 포함하기 위한 최소 유사도 점수","status":"임베딩 상태","statusLabel":"상태","available":"사용 가능","unavailable":"사용 불가","chunksWithEmbeddings":"임베딩이 있는 청크","coverage":"커버리지","regenerate":"임베딩 재생성","regenerating":"재생성 중..."}},"tts":{"title":"음성 합성","description":"메시지를 소리로 읽어주는 텍스트 음성 변환 설정 구성","loadingProviders":"TTS 제공자 로딩 중...","noProviders":"TTS 제공자 없음","noProvidersDescription":"음성 합성을 활성화하려면 TTS를 지원하는 플러그인을 구성하세요","enable":"TTS 활성화","enableDescription":"어시스턴트 메시지에 대한 음성 합성 허용","autoPlay":"응답 자동 재생","autoPlayDescription":"새 어시스턴트 메시지를 자동으로 소리로 읽기","streamSentences":"문장 단위 스트리밍","streamSentencesDescription":"전체 메시지를 기다리지 않고 문장 단위로 오디오를 재생합니다. 긴 메시지의 타임아웃을 방지하기 위해 로컬 TTS에 권장됩니다.","voiceConfiguration":"음성 구성","model":"TTS 모델","modelDescription":"음성 합성에 사용할 모델 선택","voice":"음성","selectVoice":"음성 선택","voiceDescription":"음성 합성에 사용할 음성 선택","speed":"속도","speedSlow":"0.5배","speedNormal":"1.0배","speedFast":"2.0배","availableProviders":"사용 가능한 제공자","models":"모델","test":"테스트","testing":"테스트 중...","stop":"중지"},"imageGen":{"title":"이미지 생성","description":"이미지 생성 설정 및 제공자 구성","loadingProviders":"이미지 생성 제공자 로딩 중...","noProviders":"이미지 생성 제공자 없음","noProvidersDescription":"이미지 생성을 지원하는 플러그인을 구성하세요","enable":"이미지 생성 활성화","enableDescription":"대화에서 AI 이미지 생성 허용","configuration":"구성","model":"모델","modelDescription":"이미지 생성에 사용할 모델 선택","size":"크기","sizeDescription":"생성된 이미지의 해상도","quality":"품질","qualityDescription":"생성된 이미지의 품질 수준","style":"스타일","styleDescription":"생성된 이미지의 스타일 프리셋","availableProviders":"사용 가능한 제공자","models":"모델"},"data":{"title":"데이터 관리","export":"데이터 내보내기","exportDescription":"환경설정, 세션, 문서를 포함한 모든 데이터를 다운로드합니다.","exportAll":"모든 데이터 내보내기","import":"데이터 가져오기","importDescription":"이전 내보내기에서 데이터를 가져옵니다.","importData":"데이터 가져오기","importing":"가져오는 중...","clearSessions":"세션 지우기","clearSessionsDescription":"모든 채팅 세션을 삭제합니다. 이 작업은 취소할 수 없습니다.","clearAll":"모두 지우기","clearing":"지우는 중...","importOptions":"가져오기 옵션","importOptionsDescription":"기존 데이터 처리 방법 선택","skipDuplicates":"중복 건너뛰기","overwrite":"기존 항목 덮어쓰기","importResults":"가져오기 결과","preferences":"환경설정","imported":"가져옴","failed":"실패","sessions":"세션","importedLabel":"가져옴","skipped":"건너뜀","documents":"문서","errors":"오류"},"about":{"title":"정보","versionLabel":"버전","ollama":{"title":"Ollama 상태","version":"버전","healthy":"정상","unhealthy":"비정상"},"stats":{"models":"모델","sessions":"세션"},"features":{"privacy":{"title":"프라이버시 우선","description":"데이터가 기기에 저장됩니다"},"openSource":{"title":"오픈 소스","description":"무료 오픈 소스 소프트웨어"},"localInference":{"title":"로컬 추론","description":"Ollama로 로컬에서 AI 모델 실행"}},"openSourceBy":"{{company}}의 오픈 소스","links":{"title":"링크","github":"GitHub","githubDescription":"소스 코드 보기 및 기여","website":"웹사이트","websiteDescription":"웹사이트 방문","ollama":"Ollama","ollamaDescription":"Ollama에 대해 자세히 알아보기","documentation":"문서","reportIssue":"문제 보고","reportIssueDescription":"버그 보고서 및 기능 요청","gitlab":"GitLab 미러","gitlabDescription":"자체 호스팅 GitLab 저장소","documentationDescription":"가이드, 튜토리얼 및 API 레퍼런스"},"version":"버전 {{version}}"},"groups":{"general":"일반","chat":"채팅","media":"음성 및 이미지","connections":"연결"}}`),models:{title:`모델`,subtitle:`Ollama 모델 풀, 관리 및 모니터링`,installed:`설치된 모델`,available:`사용 가능한 모델`,pull:`모델 풀`,pulling:`풀 중...`,delete:`모델 삭제`,deleting:`삭제 중...`,size:`크기`,modified:`수정됨`,family:`계열`,parameters:`매개변수`,quantization:`양자화`,noModels:`설치된 모델 없음`,pullFirst:`시작하려면 모델을 풀하세요`,noModelsFound:`모델을 찾을 수 없습니다`},personas:{title:`페르소나`,create:`페르소나 만들기`,edit:`페르소나 편집`,delete:`페르소나 삭제`,name:`이름`,description:`설명`,systemPrompt:`시스템 프롬프트`,model:`모델`,avatar:`아바타`,background:`배경`,noPersonas:`만들어진 페르소나 없음`,createFirst:`채팅 경험을 사용자 정의하려면 첫 번째 페르소나를 만드세요`},gallery:{title:`갤러리`,subtitle:`AI 생성 이미지 갤러리`,imageCount:`이미지 {{count}}개`,generate:`이미지 생성`,generateDescription:`AI로 이미지 만들기`,generating:`생성 중...`,prompt:`프롬프트`,promptPlaceholder:`생성하려는 이미지를 설명하세요...`,noImages:`아직 생성된 이미지 없음`,download:`다운로드`,delete:`삭제`,regenerate:`재생성`,model:`모델`,size:`크기`,quality:`품질`,created:`생성됨`},errors:{generic:`오류가 발생했습니다`,network:`네트워크 오류. 연결을 확인하세요.`,unauthorized:`이 작업을 수행할 권한이 없습니다.`,notFound:`요청한 리소스를 찾을 수 없습니다.`,serverError:`서버 오류. 나중에 다시 시도하세요.`,validation:`입력을 확인하고 다시 시도하세요.`},keyboard:{title:`키보드 단축키`,toggleSidebar:`사이드바 전환`,openSettings:`설정 열기`,toggleDarkMode:`다크 모드 전환`,showShortcuts:`키보드 단축키 표시`,closeModals:`모달 닫기`,groups:{navigation:`탐색`,settings:`설정`,general:`일반`,chat:`채팅`},actions:{sendMessage:`메시지 보내기`,newLine:`메시지에 새 줄`},footer:`{{key1}} 또는 {{key2}}를 눌러 이 도움말 표시`,tooltip:`키보드 단축키`},modelManager:{title:`모델`,loading:`모델 로딩 중...`,systemStatus:{online:`Ollama 온라인`,offline:`Ollama 오프라인`,models:`모델`,models_plural:`모델`,running:`실행 중`,vram:`VRAM`},sections:{pull:`새 모델 풀`,library:`라이브러리 찾아보기`,running:`실행 중인 모델`,local:`로컬 모델`,advanced:`고급 작업`,huggingface:`HuggingFace Hub`},pull:{placeholder:`모델 이름 입력 (예: llama3.2:3b, deepseek-r1:14b)`,button:`풀`,cancel:`취소`,popular:`인기 모델:`,browseAll:`ollama.com에서 모든 모델 찾아보기`,success:`모델 {{name}}이(가) 성공적으로 풀되었습니다`,cancelled:`모델 풀이 취소되었습니다`,failed:`모델 풀 실패`,enterName:`모델 이름을 입력하세요`,restricted:`이 인스턴스에서 모델 설치는 관리자만 가능합니다.`},progress:{starting:`초기화 중...`,pulling:`모델 다운로드 중...`,pullingLayer:`다운로드 중`,verifying:`무결성 확인 중...`,verifyingDigest:`sha256 다이제스트 확인 중`,writing:`매니페스트 작성 중...`,cleaning:`정리 중...`},library:{available:`사용 가능`,search:`모델 검색...`,noResults:`기준에 맞는 모델을 찾을 수 없습니다`,installed:`설치됨`,more:`+{{count}}개 더`,refresh:`라이브러리 새로고침`},local:{noModels:`아직 설치된 모델 없음`,pullToStart:`시작하려면 위에서 모델을 풀하세요`,installed:`설치됨`,running:`실행 중`,info:`정보`,copy:`복사`,delete:`삭제`,deleteConfirm:`모델 "{{name}}"을(를) 삭제하시겠습니까?`,deleteSuccess:`모델 {{name}}이(가) 성공적으로 삭제되었습니다`,deleteFailed:`모델 삭제 실패`},advanced:{createModel:`모델 만들기`,fromModelfile:`Modelfile에서`,copyModel:`모델 복사`,duplicateExisting:`기존 항목 복제`,testEmbeddings:`임베딩 테스트`,generateVectors:`벡터 생성`,healthCheck:`상태 점검`,testConnection:`연결 테스트`,healthy:`Ollama가 정상입니다!`},modals:{details:{title:`모델 세부정보`,info:`모델 정보`,family:`계열`,parameters:`매개변수`,quantization:`양자화`,format:`형식`,systemPrompt:`시스템 프롬프트`,template:`템플릿`,license:`라이선스`,modelfile:`Modelfile`,noDetails:`사용 가능한 세부정보 없음`},copy:{title:`모델 복사`,source:`소스 모델`,selectModel:`모델 선택...`,newName:`새 모델 이름`,placeholder:`예: my-custom-model`,copying:`복사 중...`,button:`모델 복사`,success:`모델이 {{name}}(으)로 복사되었습니다`,failed:`모델 복사 실패`,enterBoth:`소스와 대상 이름을 모두 입력하세요`},create:{title:`사용자 정의 모델 만들기`,name:`모델 이름`,namePlaceholder:`예: my-assistant`,modelfile:`Modelfile`,modelfilePlaceholder:`FROM llama3.2
2
+ SYSTEM You are a helpful assistant.`,see:`참조:`,docs:`Modelfile 문서`,docsLink:`구문 참조용`,creating:`만드는 중...`,button:`모델 만들기`,success:`모델 {{name}}이(가) 성공적으로 만들어졌습니다`,failed:`모델 만들기 실패`,enterBoth:`모델 이름과 Modelfile 내용을 입력하세요`},embeddings:{title:`임베딩 테스트`,model:`임베딩 모델`,selectModel:`모델 선택...`,recommended:`권장: nomic-embed-text, mxbai-embed-large`,input:`입력 텍스트`,placeholder:`임베딩을 생성할 텍스트를 입력하세요...`,generating:`생성 중...`,button:`임베딩 생성`,result:`결과 ({{count}}차원)`,success:`{{count}}차원 임베딩 벡터가 생성되었습니다`,failed:`임베딩 생성 실패`,enterBoth:`모델을 선택하고 텍스트를 입력하세요`}},huggingface:{browseAll:`HuggingFace에서 모두 보기`,checkingGguf:`GGUF 파일 확인 중...`,noGgufAvailable:`Ollama로 직접 풀할 수 있는 GGUF 파일이 없습니다`,ggufFilesCount:`GGUF 파일 ({{count}}) - Ollama로 직접 풀`,noModelsFound:`모델을 찾을 수 없습니다`,noResults:`모델을 찾을 수 없습니다. 검색어나 필터를 조정해 보세요.`,browseAllLink:`모두 보기`,search:`HuggingFace 모델 검색...`,by:`작성자`,gated:`제한된 액세스`,viewOnHF:`HuggingFace에서 보기`,sortDownloads:`다운로드`,sortLikes:`좋아요`,sortRecent:`최근`,taskTextGeneration:`텍스트 생성`,taskTextToSpeech:`텍스트 음성 변환`,taskTextToImage:`텍스트 이미지 변환`,taskSpeechRecognition:`음성 인식`,tasks:{textGen:`텍스트 생성`,tts:`텍스트 음성 변환`,image:`텍스트 이미지 변환`,stt:`음성 인식`},sort:{downloads:`다운로드 순`,likes:`인기 순`,recent:`최근 업데이트`}}},personaManager:{title:`페르소나`,subtitle:`사용자 정의 성격, 메모리 및 행동을 가진 AI 페르소나 생성 및 관리`,loading:`페르소나 로딩 중...`,createButton:`페르소나 만들기`,importExport:`가져오기/내보내기`,stats:{title:`내 페르소나`,count:`페르소나 {{count}}개 생성됨`,count_plural:`페르소나 {{count}}개 생성됨`},empty:{title:`아직 페르소나 없음`,description:`개인화된 AI 상호작용을 시작하려면 첫 번째 페르소나를 만드세요`,button:`첫 번째 페르소나 만들기`},deleteConfirm:`"{{name}}"을(를) 삭제하시겠습니까?`,deleteSuccess:`페르소나 "{{name}}"이(가) 성공적으로 삭제되었습니다`,downloadSuccess:`페르소나 "{{name}}"이(가) 성공적으로 다운로드되었습니다`,failed:`페르소나 {{action}} 실패`},personaForm:{title:{create:`새 페르소나 만들기`,edit:`페르소나 편집`},subtitle:{create:`사용자 정의 성격, 메모리 시스템 및 적응형 학습 기능을 가진 새 AI 페르소나 만들기`,edit:`고급 메모리, 적응형 학습 및 지능형 매개변수로 AI 페르소나 사용자 정의`},loading:`양식 로딩 중...`,saved:`저장됨`,tabs:{basic:`기본`,parameters:`매개변수`,memory:`메모리 및 학습`,advanced:`고급`},basic:{name:`이름`,namePlaceholder:`페르소나 이름 입력`,model:`모델`,selectModel:`모델 선택`,description:`설명`,descriptionPlaceholder:`페르소나를 설명하세요...`,systemPrompt:`시스템 프롬프트`,systemPromptPlaceholder:`페르소나 행동을 정의하는 시스템 프롬프트를 입력하세요...`,systemPromptHint:`시스템 프롬프트는 페르소나가 어떻게 행동하고 응답할지를 정의합니다.`},parameters:{temperature:`온도`,temperatureHint:`창의성 대 일관성 제어`,topP:`Top-P`,topPHint:`응답 다양성 제어`,topK:`Top-K`,topKHint:`어휘를 상위 k개 토큰으로 제한`,contextWindow:`컨텍스트 창`,contextWindowHint:`최대 대화 기록 길이`,maxTokens:`최대 토큰`,maxTokensHint:`최대 응답 길이`,repeatPenalty:`반복 페널티`,repeatPenaltyHint:`반복적인 응답 감소`},memory:{title:`메모리 시스템`,subtitle:`페르소나가 시간이 지남에 따라 대화를 기억합니다`,enableHint:`메모리 시스템을 활성화하여 페르소나가 대화를 기억하고 시간이 지남에 따라 컨텍스트를 구축하게 하세요.`,loading:`메모리 상태 로딩 중...`,noData:`아직 메모리 데이터 없음`,memories:`메모리`,mbUsed:`MB 사용됨`,lastBackup:`마지막 백업`,never:`없음`,maxMemories:`최대 메모리`,maxMemoriesHint:`이 페르소나가 저장할 수 있는 메모리 수`,retention:`메모리 보존`,retentionHint:`정리 전 메모리 보존 기간(일)`,autoCleanup:`오래된 메모리 자동 정리`,wipeAll:`모든 메모리 지우기`,wipeCannot:`이 작업은 취소할 수 없습니다`,wipeButton:`지우기`,wiping:`지우는 중...`,wipeConfirm:`모든 메모리를 지우시겠습니까? 이 작업은 취소할 수 없습니다.`,wipeSuccess:`메모리 {{count}}개가 지워졌습니다`},learning:{title:`적응형 학습`,subtitle:`페르소나가 상호작용에 따라 진화합니다`,enableHint:`적응형 학습을 활성화하여 페르소나가 상호작용에 따라 진화하고 응답을 개인화하게 하세요.`,speed:`학습 속도`,slow:`느림`,slowDesc:`점진적 변화`,balanced:`균형`,balancedDesc:`보통 속도`,fast:`빠름`,fastDesc:`빠른 적응`,autoAdapt:`사용자 선호도에 자동 적응`,whatLearns:`페르소나가 학습하는 것:`,conversationTone:`대화 톤`,responseStyle:`응답 스타일`,userPreferences:`사용자 선호도`,topicInterests:`주제 관심사`},advanced:{embeddingModel:`임베딩 모델`,embeddingHint:`메모리 인코딩 및 의미 검색에 사용할 모델을 선택하세요. 임베딩 모델이 먼저 표시되고 다른 사용 가능한 모델이 뒤따릅니다.`,noModels:`모델을 찾을 수 없음`,embeddingModels:`임베딩 모델`,otherModels:`다른 모델`,installHint:`임베딩 모델 설치:`,recommended:`권장: nomic-embed-text, mxbai-embed-large, bge-m3, snowflake-arctic-embed`,aboutTitle:`고급 설정 정보`,aboutDescription:`임베딩 모델은 메모리 시스템에서 의미를 이해하고 대화 중 관련 메모리를 찾는 데 사용됩니다. 사용 사례와 가용 리소스에 맞는 모델을 선택하세요.`},actions:{cancel:`취소`,save:`저장`,saving:`저장 중...`,saveClose:`저장 후 닫기`,create:`만들기`},success:{created:`페르소나가 생성되었습니다`,updated:`페르소나가 업데이트되었습니다`},error:{saveFailed:`저장 실패`}},personaCard:{enhanced:`향상됨`,systemPrompt:`시스템 프롬프트`,memories:`메모리`,use:`사용`,editTooltip:`페르소나 편집`,downloadTooltip:`페르소나 다운로드`,backup:`백업`,exportDNA:`DNA 내보내기`,wipeMemories:`메모리 지우기`,wipeConfirm:`이 페르소나의 모든 메모리를 지우시겠습니까? 이 작업은 취소할 수 없습니다.`,wipeSuccess:`메모리 {{count}}개가 지워졌습니다`,backupSuccess:`페르소나 백업이 성공적으로 다운로드되었습니다`,dnaSuccess:`페르소나 DNA가 성공적으로 내보내졌습니다`,failed:`{{action}} 실패`},userManager:{title:`사용자 관리`,subtitle:`사용자 계정 및 권한 관리`,pageDescription:`Libre WebUI 인스턴스의 사용자 계정, 권한 및 액세스 제어를 관리합니다.`,loading:`사용자 로딩 중...`,createUser:`사용자 만들기`,search:`사용자 검색...`,noUsers:`사용자 없음`,noUsersMatching:`검색과 일치하는 사용자 없음`,columns:{user:`사용자`,email:`이메일`,role:`역할`,created:`생성됨`,actions:`작업`},roles:{admin:`관리자`,user:`사용자`},noEmail:`이메일 없음`,deleteConfirm:`사용자 "{{name}}"을(를) 삭제하시겠습니까?`,deleteSuccess:`사용자가 성공적으로 삭제되었습니다`,deleteFailed:`사용자 삭제 실패`,cannotDeleteSelf:`자신의 계정은 삭제할 수 없습니다`,form:{title:{create:`사용자 만들기`,edit:`사용자 편집`},username:`사용자 이름`,usernamePlaceholder:`사용자 이름 입력`,email:`이메일`,emailPlaceholder:`이메일 입력 (선택사항)`,password:`비밀번호`,passwordPlaceholder:`비밀번호 입력`,passwordHint:`현재 비밀번호를 유지하려면 비워두세요`,role:`역할`,creating:`만드는 중...`,updating:`업데이트 중...`,createButton:`사용자 만들기`,updateButton:`사용자 업데이트`,createSuccess:`사용자가 성공적으로 만들어졌습니다`,updateSuccess:`사용자가 성공적으로 업데이트되었습니다`,createFailed:`사용자 만들기 실패`,updateFailed:`사용자 업데이트 실패`},approval:{title:`대기 중인 승인`,description:`이 인스턴스에 들어오기 전에 새 등록을 검토하세요.`,registered:`등록됨`,activate:`계정 활성화`,reject:`등록 거부`,approved:`{{name}}님이 이제 로그인할 수 있습니다.`,failed:`계정을 승인할 수 없습니다.`,notification:`{{count}}건의 등록이 승인을 기다리고 있습니다.`,notificationBadge:`{{count}}건의 대기 중인 사용자 승인`}},chatHistory:{label:`대화 기록`,jumpToTurn:`{{total}}개 중 {{index}}번째 대화로 이동`},chatMessage:{you:`나`,assistant:`어시스턴트`,system:`시스템`,copy:`복사`,copyMessage:`메시지 복사`,copied:`복사됨!`,regenerate:`재생성`,regenerateResponse:`응답 재생성`,edit:`편집`,editSystemMessage:`시스템 메시지 편집`,saveChanges:`변경사항 저장`,cancelEditing:`편집 취소`,delete:`삭제`,deleteConfirm:`이 메시지를 삭제하시겠습니까?`,branch:`분기`,speaking:`말하는 중...`,speakMessage:`메시지 읽기`,stopSpeaking:`읽기 중지`,showMore:`더 보기`,showLess:`접기`,thinking:`생각 중`,systemMessagePlaceholder:`시스템 메시지를 입력하세요...`,fullSizeImage:`전체 크기 이미지`,startConversation:`대화 시작하기`,startConversationDescription:`AI 어시스턴트와 채팅을 시작하려면 메시지를 보내세요. 질문하고, 코드 도움을 받거나, 자연스러운 대화를 나누세요.`,scrollToBottom:`맨 아래로 스크롤`,newMessages:`새 메시지`},imageGallery:{title:`이미지 갤러리`,noImages:`아직 이미지 없음`,noImagesHint:`오른쪽 패널을 사용하여 첫 번째 이미지를 생성하세요`,delete:`삭제`,download:`다운로드`,deleteConfirm:`이 이미지를 삭제하시겠습니까?`,deleteSuccess:`이미지가 삭제되었습니다`,deleteFailed:`이미지 삭제 실패`,downloadFailed:`이미지 다운로드 실패`,loadMore:`더 보기 ({{current}}/{{total}})`,loadFailed:`갤러리 로드 실패`},imageGeneration:{title:`이미지 생성`,prompt:`프롬프트`,promptPlaceholder:`만들고 싶은 이미지를 설명하세요...`,model:`모델`,selectModel:`모델 선택`,noModels:`사용 가능한 이미지 생성 모델 없음`,configurePlugin:`이미지 생성을 지원하는 플러그인을 구성하세요`,size:`크기`,quality:`품질`,style:`스타일`,generate:`생성`,generating:`생성 중...`,success:`이미지가 성공적으로 생성되었습니다`,failed:`이미지 생성 실패`,enterPrompt:`프롬프트를 입력하세요`,promptTooLong:`프롬프트가 최대 {{max}}자를 초과합니다`},errorBoundary:{title:`문제가 발생했습니다`,description:`예기치 않은 오류가 발생했습니다. 페이지를 새로고침해 보세요.`,tryAgain:`페이지 새로고침`,goHome:`홈으로 가기`,errorDetails:`오류 세부정보 (개발용)`},documents:{title:`문서`,upload:`문서 업로드`,uploading:`업로드 중...`,noDocuments:`업로드된 문서 없음`,uploadHint:`대화에서 사용할 문서를 업로드하세요`,delete:`삭제`,deleteConfirm:`이 문서를 삭제하시겠습니까?`,deleteSuccess:`문서가 삭제되었습니다`,deleteFailed:`문서 삭제 실패`,uploadSuccess:`문서가 성공적으로 업로드되었습니다`,uploadFailed:`문서 업로드 실패`,types:`지원: PDF, TXT, MD, DOCX`,unsupportedFileType:`PDF와 TXT 파일만 지원됩니다`,fileSizeTooLarge:`파일 크기는 10MB 미만이어야 합니다`,uploadSuccessWithName:`문서 "{{name}}"이(가) 성공적으로 업로드되었습니다`,removeSuccess:`문서가 성공적으로 제거되었습니다`,removeFailed:`문서 제거 실패`,removeError:`문서를 제거하는 중 오류가 발생했습니다`,clickToUpload:`클릭하여 업로드`,orDragAndDrop:`또는 드래그 앤 드롭`,fileTypesAndSize:`PDF 또는 TXT 파일 최대 10MB`,uploadedDocuments:`업로드된 문서`,removeDocument:`문서 제거`},ttsButton:{speak:`읽기`,stop:`중지`,speaking:`읽는 중...`,generateFailed:`음성 생성 실패`,playbackFailed:`오디오 재생 실패`,stopSpeaking:`읽기 중지`,generatingSpeech:`음성 생성 중...`,readAloud:`소리로 읽기`},artifacts:{title:`아티팩트`,code:`코드`,preview:`미리보기`,copy:`코드 복사`,copied:`복사됨!`,download:`다운로드`,expand:`확장`,collapse:`접기`,openInNewTab:`새 탭에서 열기`,invalidSvg:`잘못된 SVG 콘텐츠`,invalidJson:`잘못된 JSON 콘텐츠`,previewMode:`미리보기 모드`,codeMode:`코드 모드`,copyContent:`콘텐츠 복사`,openInPanel:`패널에서 열기`,openInNewWindow:`새 창에서 열기`,created:`생성됨`,closePanelEsc:`패널 닫기 (Esc)`,copyButton:`복사`,open:`열기`,dragEdgeToResize:`가장자리를 끌어 크기 조절`,previewUnavailable:`Preview unavailable`,previewUnavailableDescription:`This artifact does not contain renderable preview content. Switch to code view to inspect the source.`},personaImportExport:{title:`페르소나 가져오기 및 내보내기`,description:`페르소나를 공유하기 위해 내보내거나 다른 사람의 페르소나를 가져오세요`,exportPersonas:`페르소나 내보내기`,importPersonas:`페르소나 가져오기`,noPersonasToExport:`내보낼 페르소나 없음`,personasAvailable:`페르소나 {{count}}개 사용 가능`,personasAvailable_plural:`페르소나 {{count}}개 사용 가능`,exportAll:`모두 내보내기`,uploadJsonFile:`JSON 파일 업로드`,pasteJsonLabel:`JSON 데이터 붙여넣기`,pasteJsonPlaceholder:`여기에 페르소나 JSON 데이터를 붙여넣으세요...`,importing:`가져오는 중...`,importButton:`페르소나 가져오기`,expectedFormat:`예상 JSON 형식:`,exportSuccess:`페르소나 "{{name}}"이(가) 성공적으로 내보내졌습니다`,exportFailed:`페르소나 내보내기 실패`,exportAllSuccess:`모든 {{count}}개 페르소나가 성공적으로 내보내졌습니다`,exportAllFailed:`페르소나 내보내기 실패`,pasteJsonData:`페르소나 JSON 데이터를 붙여넣으세요`,importMultipleSuccess:`페르소나 {{count}}개가 성공적으로 가져왔습니다`,importMultipleFailed:`페르소나 {{count}}개 가져오기 실패`,importNoneFailed:`페르소나를 가져오지 못했습니다`,importSuccess:`페르소나가 성공적으로 가져왔습니다`,importFailed:`페르소나 가져오기 실패`},generationStats:{details:`세부 정보`,promptTokens:`프롬프트 토큰:`,generatedTokens:`생성된 토큰:`,totalTokens:`총 토큰:`,speed:`속도:`,promptEval:`프롬프트 평가:`,generation:`생성:`,modelLoad:`모델 로드:`,totalTime:`총 시간:`,generatedAt:`생성 시각:`},userMenu:{loggedOut:`로그아웃되었습니다`,pictureUpdated:`프로필 사진이 업데이트되었습니다`,failedUpdateAvatar:`아바타 업데이트 실패`,failedUpdatePicture:`프로필 사진 업데이트 실패`,noEmail:`이메일 없음`,changePicture:`사진 변경`,settings:`설정`,userManagement:`사용자 관리`,signOut:`로그아웃`,changeProfilePicture:`프로필 사진 변경`},pluginManager:{title:`플러그인 관리자`,upload:`업로드`,addJson:`JSON 추가`,browseHF:`HF Hub 찾아보기`,confirmDelete:`이 플러그인을 삭제하시겠습니까?`,uploading:`플러그인 업로드 중...`,pasteJson:`플러그인 JSON을 여기에 붙여넣기...`,installPlugin:`플러그인 설치`,loading:`플러그인 로딩 중...`,noPlugins:`설치된 플러그인 없음`,noPluginsDescription:`시작하려면 플러그인 파일을 업로드하거나 JSON에서 추가하세요.`,active:`활성`,id:`ID`,endpoint:`엔드포인트`,activate:`활성화`,deactivate:`비활성화`,activePlugin:`활성 플러그인`,activePluginDescription:`모든 채팅 요청이 이 플러그인을 통해 라우팅됩니다`,variables:{title:`변수`,save:`저장`,saving:`저장 중...`,saved:`변수가 저장되었습니다`,saveFailed:`변수 저장 실패`,resetDefaults:`기본값으로 재설정`,reset:`변수가 재설정되었습니다`,sensitiveSet:`값이 설정됨 (변경하려면 새 값 입력)`,resetFailed:`변수 초기화 실패`,showValue:`{{label}} 값 표시`,hideValue:`{{label}} 값 숨기기`,connection:`연결`,advanced:`고급 매개변수`,inherited:`제공자 기본값 사용`,inheritedValue:`제공자 기본값 사용 ({{value}})`,enabled:`활성화됨`,disabled:`비활성화됨`,required:`값이 필요합니다`,fullApiEndpoint:`전체 API 엔드포인트 URL`,endpointHelp:`제공자 기본 URL이 아닌 작업 경로(예: /v1/chat/completions)를 포함한 전체 요청 URL을 입력하세요.`,invalidUrl:`유효한 전체 API 엔드포인트 URL을 입력하세요. 예: https://provider.example/v1/chat/completions`,insecureUrl:`API 엔드포인트는 HTTP 또는 HTTPS를 사용해야 합니다.`,httpWarning:`HTTP는 자격 증명이나 트래픽을 암호화하지 않습니다. 신뢰할 수 있는 네트워크에서만 사용하세요.`,invalidBaseUrl:`기본 URL에는 쿼리 문자열이나 프래그먼트가 포함될 수 없습니다.`,invalidApiPath:`/로 시작해야 하며 URL, 쿼리, 프래그먼트 또는 .. 세그먼트를 포함할 수 없습니다.`,tooLong:`값이 너무 깁니다`}},huggingface:{title:`HuggingFace 모델 브라우저`,subtitle:`Hub에서 모델을 찾아 선택하세요`,searchPlaceholder:`모델 검색...`,filters:`필터`,task:`태스크`,sortBy:`정렬`,noModels:`모델을 찾을 수 없습니다`,adjustSearch:`검색어나 필터를 조정해보세요`,gated:`제한됨`,selected:`선택됨`,select:`선택`,refresh:`새로고침`,modelsFound:`개 모델 발견`},demoMode:{title:`데모 모드`,github:`GitHub`},personaBackground:{label:`배경 이미지`,uploadBackgroundImage:`배경 이미지 업로드`,dragAndDrop:`이미지를 끌어다 놓거나 클릭하여 찾아보기`,chooseImage:`이미지 선택`,uploading:`업로드 중...`,enterImageUrl:`또는 이미지 URL 입력`,supportedFormats:`지원 형식: JPG, PNG, GIF, WebP (최대 5MB). 넓은 가로 이미지가 가장 잘 작동합니다.`,customBackground:`사용자 정의 배경 이미지`,clickToChange:`클릭하여 변경 또는 제거`,removed:`배경 제거됨`,uploaded:`배경이 성공적으로 업로드되었습니다`,invalidFile:`유효한 이미지 파일을 선택하세요`,fileTooLarge:`배경 이미지 크기는 5MB 미만이어야 합니다`,readFailed:`이미지 파일을 읽지 못했습니다`,uploadFailed:`배경 이미지를 업로드하지 못했습니다`},modelSelector:{searchInstalled:`설치된 모델 검색...`,searchOllama:`Ollama 라이브러리 검색...`,searchHuggingFace:`HuggingFace 검색...`,selectModel:`모델 선택`,personas:`페르소나`,ollamaModels:`Ollama 모델`,pluginModels:`플러그인 모델`,actions:`작업`,installed:`설치됨`,use:`사용`,pull:`다운로드`,pullRestricted:`이 인스턴스에서 모델 설치는 관리자만 가능합니다.`,adminOnlyPull:`관리자만`},libreClaw:{title:`에이전트`,subtitle:`로컬 에이전트 실행, 승인, 일정, 메모리, 도구 및 사용량입니다.`,dashboard:`대시보드`,connection:{disconnectedTitle:`Libre Claw 데몬이 연결되지 않았습니다`,disconnectedDescription:`<command>libre-claw start</command>로 로컬에서 시작하거나 백엔드 환경에서 <env>LIBRE_CLAW_BASE_URL</env>을 설정하세요.`},status:{connected:`연결됨`,disconnected:`연결이 끊김`,activeRuns:`{{count}} 활성`,activeRuns_plural:`{{count}} 활성`},states:{queued:`대기 중`,running:`실행 중`,blocked:`차단됨`,done:`완료`,failed:`실패`,cancelled:`취소됨`},startRun:{title:`에이전트 실행 시작`,placeholder:`저장소 검사, 버그 수정, 검토 실행, 보고서 예약 등을 Libre Claw에 요청하세요.`,chatRun:`채팅 실행`,goalMode:`목표 모드`,providerOverride:`공급자 재정의`,modelOverride:`모델 재정의`,run:`실행`},modelRoute:{title:`모델 루트`,providerPlaceholder:`공급자`,modelPlaceholder:`모델`,persistGlobal:`Libre Claw 전역 구성 유지`,saveModel:`모델 저장`,theme:`Libre Claw 테마`,saveTheme:`테마 저장`},runs:{title:`실행`,empty:`아직 Libre Claw 실행이 없습니다.`},timeline:{title:`실행 타임라인`,empty:`이벤트를 검사하려면 실행을 선택하세요.`,streaming:`스트리밍 중...`,assistantResponse:`어시스턴트 응답`,resultOk:`알았어`,resultError:`오류`,labels:{userMessage:`사용자 메시지`,toolCall:`도구 호출`,toolResult:`도구 결과`,approvalRequest:`승인 요청`,approvalResponse:`승인 응답`,runStarted:`실행 시작됨`,runFinished:`실행 완료됨`,usage:`사용법`,error:`오류`}},approvals:{needed:`승인 필요`,allowOnce:`한 번만 허용`,alwaysAllowTool:`항상 도구 허용`,deny:`거부`,toolApprovalRequested:`도구 승인이 요청되었습니다.`},automations:{title:`자동화`,namePlaceholder:`이름`,schedulePlaceholder:`daily 09:00`,promptPlaceholder:`자동화 프롬프트`,create:`만들기`,empty:`예정된 Libre Claw 자동화가 없습니다.`,runNow:`지금 실행`,pause:`일시중지`,resume:`재개`,routes:{report:`신고`,telegram:`Telegram`},status:{active:`활성`,paused:`일시중지됨`}},usageFallback:{title:`사용법 및 대체`,usage:`사용법`,fallbackRoute:`대체 경로`,noUsage:`아직 이용기록이 없습니다.`},metrics:{provider:`공급자`,model:`모델`,input:`입력`,output:`출력`,cached:`캐시됨`,reasoning:`추론`,cost:`비용`,tool:`도구`,resolution:`해상도`,state:`상태`,stopReason:`중지 이유`,tokens:`{{formatted}} 토큰`,tokens_plural:`{{formatted}} 토큰`},fallbacks:{tool:`도구`,unknown:`알 수 없음`,resolved:`해결됨`,unknownError:`알 수 없는 오류`},toasts:{loadStatusFailed:`Libre Claw 상태를 로드할 수 없습니다.`,enterTask:`Libre Claw에 대한 작업을 입력하세요.`,runStarted:`Libre Claw 실행이 시작되었습니다`,startRunFailed:`Libre Claw 실행을 시작할 수 없습니다`,runCancelled:`실행이 취소되었습니다`,cancelRunFailed:`실행을 취소할 수 없습니다`,approved:`승인됨`,denied:`거부됨`,resolvePermissionFailed:`권한을 확인할 수 없습니다.`,providerModelRequired:`제공업체 및 모델이 필요합니다.`,modelUpdated:`Libre Claw 모델이 업데이트되었습니다`,updateModelFailed:`모델을 업데이트할 수 없습니다.`,themeUpdated:`Libre Claw 테마가 업데이트되었습니다`,updateThemeFailed:`테마를 업데이트할 수 없습니다.`,automationRequired:`자동화 이름, 일정, 프롬프트가 필요합니다.`,automationCreated:`자동화가 생성되었습니다.`,createAutomationFailed:`자동화를 생성할 수 없습니다.`,automationUpdated:`자동화 업데이트됨`,updateAutomationFailed:`자동화를 업데이트할 수 없습니다.`}},work:{title:`작업`,subtitle:`격리된 모델 워크스페이스`,tasks:{title:`작업 태스크`,subtitle:`영구 로컬 워크스페이스`,new:`새 태스크`,emptyTitle:`아직 작업 태스크가 없습니다`,empty:`첫 메시지를 보내면 작업 태스크가 여기에 표시됩니다.`,untitled:`제목 없는 태스크`,actions:`태스크 작업`,delete:`태스크 삭제`,deleteNamed:`{{title}} 삭제`,deleteConfirm:`“{{title}}” 및 해당 워크스페이스를 영구적으로 삭제할까요?`,close:`작업 태스크 닫기`,open:`작업 태스크 열기`,rename:`태스크 제목`,loading:`태스크 불러오는 중…`,notFound:`이 작업 태스크를 사용할 수 없습니다`,back:`새 태스크 시작`,status:`상태: {{status}}`},landing:{title:`새 작업 태스크 시작`,description:`로컬 모델 또는 설정된 제공자 모델에 영구적이고 격리된 워크스페이스를 제공합니다. 모델은 파일을 확인하고 도구를 실행하며, 나중에 돌아와 이어서 작업할 수 있습니다.`,isolated:`격리`,isolatedBody:`각 태스크에는 전용 컨테이너와 파일이 있습니다.`,durable:`영구`,durableBody:`나중에 대화와 워크스페이스로 돌아올 수 있습니다.`,controlled:`제어`,controlledBody:`런타임과 태스크 파일은 호스트에서 격리됩니다.`},composer:{placeholder:`만들거나 변경할 내용을 설명하세요…`,model:`작업 모델`,noModels:`작업 호환 모델이 없습니다`,cancel:`중지`,send:`실행`,hint:`각 태스크는 자체 파일과 기록을 보관합니다. 사용하기 전에 모델 출력을 검토하세요.`,remoteTitle:`원격 제공자`,remoteHint:`대화와 도구 출력이 설정된 서비스로 전송됩니다. 한 번의 자율 실행에서 제공자를 여러 번 호출해 비용이 발생할 수 있습니다. 도구가 파일 내용을 반환하지 않는 한 워크스페이스 파일은 로컬에 유지됩니다.`,remoteDismiss:`닫기`,remoteDismissLabel:`원격 제공자 안내 닫기`,remoteDismissFailed:`원격 제공자 설정을 저장할 수 없습니다.`,noModelSelected:`선택된 작업 호환 모델이 없습니다.`},conversation:{ready:`워크스페이스 준비 완료`,empty:`아래에서 태스크를 계속하세요. 이 대화와 파일은 해당 워크스페이스에 계속 연결됩니다.`,loadOlder:`이전 메시지 불러오기`},status:{preparing:`격리된 워크스페이스 준비 중…`,running:`로컬 워크스페이스에서 작업 중…`},statusLabels:{idle:`대기`,thinking:`생각 중`,complete:`완료`,needsInput:`입력 필요`,error:`오류`},live:{connecting:`실시간 업데이트에 연결하는 중…`,reconnecting:`실시간 업데이트에 다시 연결하는 중…`,unavailable:`실시간 업데이트를 사용할 수 없습니다`,newActivity:`새 활동`,skillsLoaded:`워크스페이스 기술 · {{count}}`},runtime:{unavailable:`런타임을 사용할 수 없습니다`,ready:`런타임 준비 완료`,readyOllama:`Docker 준비 완료`,readyPlugin:`Docker + 플러그인 준비 완료`,readyHybrid:`Docker + 모델 준비 완료`,reason:`Docker와 사용 가능한 Ollama 또는 플러그인 모델 제공자가 필요합니다.`},workspace:{label:`워크스페이스 보기`,files:`파일`,activity:`활동`,preview:`미리보기`,resize:`대화 및 워크스페이스 크기 조절`,resizeHint:`드래그하여 크기를 조절하세요. 세밀하게 조절하려면 화살표 키를 사용하세요. 재설정하려면 두 번 클릭하거나 Enter를 누르세요.`,splitSize:`대화 {{conversation}}%, 워크스페이스 {{workspace}}%`,terminal:`터미널`},files:{discard:`저장하지 않은 파일 변경 사항을 버릴까요?`,leaveWithDraft:`이 파일을 닫을까요? 저장하지 않은 편집 내용은 브라우저 초안으로 유지됩니다.`,up:`상위 폴더`,back:`파일로 돌아가기`,empty:`이 폴더에는 아직 파일이 없습니다.`,select:`확인하고 편집할 파일을 선택하세요.`,editorLabel:`파일 편집기: {{path}}`,format:`서식 정리`,formatted:`코드 서식을 정리했습니다.`,formatFailed:`이 파일의 서식을 정리할 수 없습니다.`,formatShortcut:`서식 정리(Shift+Alt+F)`,formatTooLarge:`서식 정리는 100,000자 및 4,000줄 미만의 파일로 제한됩니다.`,formatUnsupported:`이 파일 형식은 서식 정리를 지원하지 않습니다.`,saveShortcut:`저장(⌘/Ctrl+S)`,highlightPaused:`편집 반응성을 유지하기 위해 큰 파일의 실시간 강조 표시를 일시 중지했습니다.`,plainTextLarge:`일반 텍스트 · 큰 파일`,changes:`변경 사항`,changesSince:`마지막 턴 이후 변경된 내용`,diffLabel:`마지막 턴 이후 변경 사항: {{path}}`,diffFolded:`변경되지 않은 줄 {{count}}개`},activity:{empty:`명령, 파일 작업 및 도구 결과가 여기에 표시됩니다.`,toolActivity:`도구 활동`,details:`세부 정보`,kinds:{message:`메시지`,toolCall:`도구 호출`,toolResult:`도구 결과`,error:`오류`}},preview:{command:`선택적 시작 명령`,start:`미리보기 시작`,stop:`미리보기 중지`,open:`열기`,starting:`미리보기 시작 중…`,frameTitle:`워크스페이스 미리보기`,failed:`미리보기를 시작할 수 없습니다. 활동을 확인한 다음 다른 명령을 시도하세요.`,empty:`이 워크스페이스에서 앱을 시작하면 여기에서 확인할 수 있습니다.`},mobile:{surface:`태스크 화면`,conversation:`대화`,workspace:`워크스페이스`},toasts:{runFailed:`작업 태스크를 시작할 수 없습니다.`,updateFailed:`이 태스크를 업데이트할 수 없습니다.`,renameFailed:`이 태스크의 이름을 변경할 수 없습니다.`,cancelled:`작업 실행을 중지했습니다.`,cancelFailed:`작업 실행을 중지할 수 없습니다.`,deleteFailed:`이 작업 태스크를 삭제할 수 없습니다.`,saveFailed:`이 파일을 저장할 수 없습니다.`,saved:`파일을 저장했습니다.`,previewFailed:`미리보기를 시작할 수 없습니다.`,previewStopFailed:`미리보기를 중지할 수 없습니다.`},terminal:{connecting:`샌드박스에서 셸을 여는 중…`,closed:`터미널 세션이 종료되었습니다.`,failed:`터미널 세션을 시작할 수 없습니다.`,reconnect:`다시 연결`,unavailable:`이 배포에서는 대화형 터미널을 사용할 수 없습니다.`,blockedByRun:`모델이 이 컨테이너를 사용 중입니다. 턴이 끝나면 터미널이 열립니다.`,taskRunning:`모델 턴 진행 중`}},usageAnalytics:{eyebrow:`관리`,title:`제공자 사용량`,description:`이 인스턴스에서 활성화된 플러그인의 아웃바운드 API 호출 및 모델 소비를 추적하세요.`,days:`{{count}}일`,refresh:`사용량 새로고침`,loadFailed:`제공자 사용량을 불러올 수 없습니다.`,metrics:{calls:`호출`,tokens:`토큰`},cards:{calls:`API 호출`,callsDetail:`{{count}}명의 활성 사용자 기준`,tokens:`보고된 토큰`,tokensDetail:`{{count}}건의 호출에 보고된 사용량`,success:`성공률`,successDetail:`{{count}}건의 실패한 호출`,latency:`평균 지연 시간`,latencyDetail:`엔드투엔드 제공자 시간`},activity:{title:`시간 경과에 따른 사용량`,callsDescription:`활성화된 플러그인에 대한 일일 아웃바운드 요청`,tokensDescription:`제공자가 보고한 일일 토큰 총량`,chartLabel:`일일 제공자 {{metric}} 차트`},models:{title:`모델 사용량`,description:`이 기간 동안 트래픽이 가장 많은 모델입니다.`,model:`모델`,success:`성공`,latency:`지연 시간`},providers:{title:`활성화된 플러그인 트래픽`},capabilities:{title:`기능 분포`,characters:`{{count}}자`,images:`{{count}}개 이미지`,jobs:`{{count}}개 비디오 작업`,inputs:`{{count}}개 입력`,reportedTokens:`{{count}}개 보고된 토큰`},empty:{title:`아직 제공자 호출이 없습니다`,description:`활성화된 플러그인이 채팅, Work, 임베딩, 이미지, 음성, 소리 또는 비디오 요청을 처리하면 호출이 여기에 표시됩니다.`},privacyNote:`사용량은 아웃바운드 플러그인 경계에서 서버를 통해 측정됩니다. Libre WebUI는 제공자, 모델, 타이밍, 상태 및 보고된 카운터를 저장하며, 프롬프트, 응답, 엔드포인트, 자격 증명 또는 제공자 오류 본문은 절대 저장하지 않습니다. 토큰 총량에는 제공자가 사용 메타데이터를 반환한 호출만 포함됩니다.`},systemPage:{eyebrow:`관리`,title:`시스템`,description:`이 Libre WebUI 인스턴스를 호스팅하는 머신과 런타임을 모니터링합니다.`,updated:`{{date}}에 업데이트됨`,refresh:`시스템 정보 새로고침`,loadFailed:`시스템 정보를 불러올 수 없습니다.`,cards:{uptime:`호스트 가동 시간`,uptimeDetail:`{{date}}부터 실행 중`,memory:`사용된 메모리`,memoryDetail:`{{total}} 중 {{used}}`,freeSpace:`여유 공간`,freeSpaceDetail:`{{label}} · 총 {{total}}`,containers:`실행 중인 컨테이너`,containersDetail:`Docker에 알려진 컨테이너 {{total}}개`,dockerUnavailable:`Docker 사용 불가`,unavailable:`사용 불가`},host:{title:`호스트 및 런타임`,description:`운영 체제, 프로세서 및 Libre WebUI 프로세스 세부 정보입니다.`,container:`컨테이너 런타임`,native:`네이티브 런타임`,hostname:`호스트 이름`,operatingSystem:`운영 체제`,processor:`프로세서`,logicalCpus:`논리 CPU`,loadAverage:`평균 부하 · 1 / 5 / 15분`,libreVersion:`Libre WebUI`,nodeVersion:`Node.js`,process:`프로세스`,workingDirectory:`작업 디렉터리`},memory:{title:`메모리`,description:`런타임에서 보이는 시스템 메모리 및 애플리케이션 프로세스 사용량.`,usedOf:`{{total}} 중 {{used}} 사용`,free:`{{value}} 여유`,processRss:`프로세스 RSS`,heapUsed:`V8 힙 사용량`,heapTotal:`V8 전체 힙`,external:`외부 메모리`},storage:{title:`저장소`,description:`런타임 파일 시스템 및 영구 애플리케이션 데이터에 사용 가능한 공간.`,used:`{{value}} 사용`,free:`{{value}} 여유`,empty:`이 런타임에서는 파일 시스템 정보를 사용할 수 없습니다.`},docker:{title:`Docker`,description:`읽기 전용 Docker Engine 상태 및 축소된 컨테이너 목록.`,connected:`연결됨`,unavailable:`사용 불가`,unavailableDetail:`Docker Engine 진단을 사용할 수 없습니다.`,socketStatus:`로컬 소켓: {{status}}`,mounted:`마운트됨`,notMounted:`마운트되지 않음`,running:`실행 중`,stopped:`중지됨`,paused:`일시 정지됨`,total:`전체`,version:`버전`,host:`호스트`,architecture:`아키텍처`,cpus:`CPU`,memory:`메모리`,container:`컨테이너`,image:`이미지`,state:`상태`,created:`생성됨`,empty:`Docker에 연결되었으며 현재 나열된 컨테이너가 없습니다.`},network:{title:`네트워크`,description:`런타임에 표시되는 인터페이스, 주소 및 Linux 트래픽 카운터.`,internal:`내부`,empty:`애플리케이션 런타임에 표시되는 네트워크 인터페이스가 없습니다.`},securityNote:`이 페이지는 관리자 전용입니다. 서버는 운영 요약만 반환합니다: 환경 변수, 자격 증명, Docker 레이블, 마운트, 컨테이너 명령 또는 검사 페이로드를 노출하지 않습니다. Libre WebUI가 컨테이너에서 실행될 때 로컬 소켓을 사용할 수 있는 경우 호스트 수준 CPU 및 메모리 세부 정보는 Docker Engine에서 가져옵니다. 다른 값은 애플리케이션 런타임을 설명합니다.`},mediaGeneration:{title:`미디어 생성`,description:`활성화된 미디어 제공자로 비디오, 사운드, 음악 또는 음성을 생성합니다.`,image:`이미지`,video:`비디오`,audio:`오디오`,sound:`사운드`,speech:`음성`,model:`모델`,voice:`음성 또는 음성 ID`,resolution:`해상도`,aspectRatio:`화면 비율`,duration:`길이`,providerDefault:`제공자 기본값`,generateAudio:`지원되는 경우 비디오와 함께 오디오 생성`,prompt:`프롬프트`,text:`음성으로 변환할 텍스트`,videoPlaceholder:`장면, 동작, 카메라 및 조명을 설명하세요...`,audioPlaceholder:`음성으로 말할 텍스트를 입력하세요...`,soundPlaceholder:`원하는 사운드, 음악, 분위기 또는 음성 응답을 설명하세요...`,generate:`생성`,generating:`생성 중… 몇 분 정도 걸릴 수 있습니다`,success:`미디어가 생성되어 Imagine에 저장되었습니다`,failed:`미디어 생성 실패`,loadFailed:`미디어 제공자 로드 실패`,noModels:`사용 가능한 {{kind}} 모델이 없습니다. 호환되는 제공자를 활성화하고 자격 증명을 먼저 저장하세요.`},mediaGallery:{itemCount:`{{count}}개 항목`,empty:`아직 생성된 미디어가 없습니다`,emptyHint:`이미지, 비디오 또는 음성 클립을 생성하면 여기에 표시됩니다.`,filters:{all:`전체`,image:`이미지`,video:`동영상`,audio:`오디오`}}};export{e as default};
@@ -1,4 +1,4 @@
1
- import{_ as e,g as t,h as n,m as r,p as i}from"./router-vendor-BjDI9mRe.js";import{I as a}from"../assets/index-CRC6g6bL.js";var o,s,c,l,u,d,f,p,m=Object.create,h=Object.defineProperty,g=Object.getOwnPropertyDescriptor,_=Object.getOwnPropertyNames,v=Object.getPrototypeOf,y=Object.prototype.hasOwnProperty,b=(e,t)=>()=>{try{return t||e((t={exports:{}}).exports,t),t.exports}catch(e){throw t=0,e}},x=(e,t)=>{for(var n in t)h(e,n,{get:t[n],enumerable:!0})},S=(e,t,n,r)=>{if(t&&typeof t==`object`||typeof t==`function`)for(let i of _(t))!y.call(e,i)&&i!==n&&h(e,i,{get:()=>t[i],enumerable:!(r=g(t,i))||r.enumerable});return e},C=(e,t,n)=>(n=e==null?{}:m(v(e)),S(t||!e||!e.__esModule?h(n,`default`,{value:e,enumerable:!0}):n,e)),w=b((e,t)=>{t.exports=m;var n=9,r=10,i=32,a=33,o=58,s=91,c=92,l=93,u=94,d=96,f=4,p=1024;function m(e){var t=this.Parser,n=this.Compiler;h(t)&&_(t,e),g(n)&&v(n)}function h(e){return!!(e&&e.prototype&&e.prototype.blockTokenizers)}function g(e){return!!(e&&e.prototype&&e.prototype.visitors)}function _(e,t){for(var m=t||{},h=e.prototype,g=h.blockTokenizers,_=h.inlineTokenizers,v=h.blockMethods,x=h.inlineMethods,S=g.definition,C=_.reference,w=[],T=-1,E=v.length,D;++T<E;)D=v[T],!(D===`newline`||D===`indentedCode`||D===`paragraph`||D===`footnoteDefinition`)&&w.push([D]);w.push([`footnoteDefinition`]),m.inlineNotes&&(y(x,`reference`,`inlineNote`),_.inlineNote=A),y(v,`definition`,`footnoteDefinition`),y(x,`reference`,`footnoteCall`),g.definition=M,g.footnoteDefinition=O,_.footnoteCall=k,_.reference=j,h.interruptFootnoteDefinition=w,j.locator=C.locator,k.locator=N,A.locator=P;function O(e,t,a){for(var c=this,d=c.interruptFootnoteDefinition,m=c.offset,h=t.length+1,_=0,v=[],y,x,S,C,w,T,E,D,O,k,A,j,M;_<h&&(C=t.charCodeAt(_),!(C!==n&&C!==i));)_++;if(t.charCodeAt(_++)===s&&t.charCodeAt(_++)===u){for(x=_;_<h;){if(C=t.charCodeAt(_),C!==C||C===r||C===n||C===i)return;if(C===l){S=_,_++;break}_++}if(!(S===void 0||x===S||t.charCodeAt(_++)!==o)){if(a)return!0;for(y=t.slice(x,S),w=e.now(),O=0,k=0,A=_,j=[];_<h;){if(C=t.charCodeAt(_),C!==C||C===r)M={start:O,contentStart:A||_,contentEnd:_,end:_},j.push(M),C===r&&(O=_+1,k=0,A=void 0,M.end=O);else if(k!==void 0)if(C===i||C===n)k+=C===i?1:f-k%f,k>f&&(k=void 0,A=_);else{if(k<f&&M&&(M.contentStart===M.contentEnd||b(d,g,c,[e,t.slice(_,p),!0])))break;k=void 0,A=_}_++}for(_=-1,h=j.length;h>0&&(M=j[h-1],M.contentStart===M.contentEnd);)h--;for(T=e(t.slice(0,M.contentEnd));++_<h;)M=j[_],m[w.line+_]=(m[w.line+_]||0)+(M.contentStart-M.start),v.push(t.slice(M.contentStart,M.end));return E=c.enterBlock(),D=c.tokenizeBlock(v.join(``),w),E(),T({type:`footnoteDefinition`,identifier:y.toLowerCase(),label:y,children:D})}}}function k(e,t,a){var o=t.length+1,c=0,d,f,p,m;if(t.charCodeAt(c++)===s&&t.charCodeAt(c++)===u){for(f=c;c<o;){if(m=t.charCodeAt(c),m!==m||m===r||m===n||m===i)return;if(m===l){p=c,c++;break}c++}if(!(p===void 0||f===p))return a?!0:(d=t.slice(f,p),e(t.slice(0,c))({type:`footnoteReference`,identifier:d.toLowerCase(),label:d}))}}function A(e,t,n){var r=this,i=t.length+1,a=0,o=0,f,p,m,h,g,_,v;if(t.charCodeAt(a++)===u&&t.charCodeAt(a++)===s){for(m=a;a<i;){if(p=t.charCodeAt(a),p!==p)return;if(_===void 0)if(p===c)a+=2;else if(p===s)o++,a++;else if(p===l)if(o===0){h=a,a++;break}else o--,a++;else if(p===d){for(g=a,_=1;t.charCodeAt(g+_)===d;)_++;a+=_}else a++;else if(p===d){for(g=a,v=1;t.charCodeAt(g+v)===d;)v++;a+=v,_===v&&(_=void 0),v=void 0}else a++}if(h!==void 0)return n?!0:(f=e.now(),f.column+=2,f.offset+=2,e(t.slice(0,a))({type:`footnote`,children:r.tokenizeInline(t.slice(m,h),f)}))}}function j(e,t,n){var r=0;if(t.charCodeAt(r)===a&&r++,t.charCodeAt(r)===s&&t.charCodeAt(r+1)!==u)return C.call(this,e,t,n)}function M(e,t,r){for(var a=0,o=t.charCodeAt(a);o===i||o===n;)o=t.charCodeAt(++a);if(o===s&&t.charCodeAt(a+1)!==u)return S.call(this,e,t,r)}function N(e,t){return e.indexOf(`[`,t)}function P(e,t){return e.indexOf(`^[`,t)}}function v(e){var t=e.prototype.visitors,n=` `;t.footnote=r,t.footnoteReference=i,t.footnoteDefinition=a;function r(e){return`^[`+this.all(e).join(``)+`]`}function i(e){return`[^`+(e.label||e.identifier)+`]`}function a(e){for(var t=this.all(e).join(`
1
+ import{_ as e,g as t,h as n,m as r,p as i}from"./router-vendor-BjDI9mRe.js";import{z as a}from"../assets/index-CmZntyR1.js";var o,s,c,l,u,d,f,p,m=Object.create,h=Object.defineProperty,g=Object.getOwnPropertyDescriptor,_=Object.getOwnPropertyNames,v=Object.getPrototypeOf,y=Object.prototype.hasOwnProperty,b=(e,t)=>()=>{try{return t||e((t={exports:{}}).exports,t),t.exports}catch(e){throw t=0,e}},x=(e,t)=>{for(var n in t)h(e,n,{get:t[n],enumerable:!0})},S=(e,t,n,r)=>{if(t&&typeof t==`object`||typeof t==`function`)for(let i of _(t))!y.call(e,i)&&i!==n&&h(e,i,{get:()=>t[i],enumerable:!(r=g(t,i))||r.enumerable});return e},C=(e,t,n)=>(n=e==null?{}:m(v(e)),S(t||!e||!e.__esModule?h(n,`default`,{value:e,enumerable:!0}):n,e)),w=b((e,t)=>{t.exports=m;var n=9,r=10,i=32,a=33,o=58,s=91,c=92,l=93,u=94,d=96,f=4,p=1024;function m(e){var t=this.Parser,n=this.Compiler;h(t)&&_(t,e),g(n)&&v(n)}function h(e){return!!(e&&e.prototype&&e.prototype.blockTokenizers)}function g(e){return!!(e&&e.prototype&&e.prototype.visitors)}function _(e,t){for(var m=t||{},h=e.prototype,g=h.blockTokenizers,_=h.inlineTokenizers,v=h.blockMethods,x=h.inlineMethods,S=g.definition,C=_.reference,w=[],T=-1,E=v.length,D;++T<E;)D=v[T],!(D===`newline`||D===`indentedCode`||D===`paragraph`||D===`footnoteDefinition`)&&w.push([D]);w.push([`footnoteDefinition`]),m.inlineNotes&&(y(x,`reference`,`inlineNote`),_.inlineNote=A),y(v,`definition`,`footnoteDefinition`),y(x,`reference`,`footnoteCall`),g.definition=M,g.footnoteDefinition=O,_.footnoteCall=k,_.reference=j,h.interruptFootnoteDefinition=w,j.locator=C.locator,k.locator=N,A.locator=P;function O(e,t,a){for(var c=this,d=c.interruptFootnoteDefinition,m=c.offset,h=t.length+1,_=0,v=[],y,x,S,C,w,T,E,D,O,k,A,j,M;_<h&&(C=t.charCodeAt(_),!(C!==n&&C!==i));)_++;if(t.charCodeAt(_++)===s&&t.charCodeAt(_++)===u){for(x=_;_<h;){if(C=t.charCodeAt(_),C!==C||C===r||C===n||C===i)return;if(C===l){S=_,_++;break}_++}if(!(S===void 0||x===S||t.charCodeAt(_++)!==o)){if(a)return!0;for(y=t.slice(x,S),w=e.now(),O=0,k=0,A=_,j=[];_<h;){if(C=t.charCodeAt(_),C!==C||C===r)M={start:O,contentStart:A||_,contentEnd:_,end:_},j.push(M),C===r&&(O=_+1,k=0,A=void 0,M.end=O);else if(k!==void 0)if(C===i||C===n)k+=C===i?1:f-k%f,k>f&&(k=void 0,A=_);else{if(k<f&&M&&(M.contentStart===M.contentEnd||b(d,g,c,[e,t.slice(_,p),!0])))break;k=void 0,A=_}_++}for(_=-1,h=j.length;h>0&&(M=j[h-1],M.contentStart===M.contentEnd);)h--;for(T=e(t.slice(0,M.contentEnd));++_<h;)M=j[_],m[w.line+_]=(m[w.line+_]||0)+(M.contentStart-M.start),v.push(t.slice(M.contentStart,M.end));return E=c.enterBlock(),D=c.tokenizeBlock(v.join(``),w),E(),T({type:`footnoteDefinition`,identifier:y.toLowerCase(),label:y,children:D})}}}function k(e,t,a){var o=t.length+1,c=0,d,f,p,m;if(t.charCodeAt(c++)===s&&t.charCodeAt(c++)===u){for(f=c;c<o;){if(m=t.charCodeAt(c),m!==m||m===r||m===n||m===i)return;if(m===l){p=c,c++;break}c++}if(!(p===void 0||f===p))return a?!0:(d=t.slice(f,p),e(t.slice(0,c))({type:`footnoteReference`,identifier:d.toLowerCase(),label:d}))}}function A(e,t,n){var r=this,i=t.length+1,a=0,o=0,f,p,m,h,g,_,v;if(t.charCodeAt(a++)===u&&t.charCodeAt(a++)===s){for(m=a;a<i;){if(p=t.charCodeAt(a),p!==p)return;if(_===void 0)if(p===c)a+=2;else if(p===s)o++,a++;else if(p===l)if(o===0){h=a,a++;break}else o--,a++;else if(p===d){for(g=a,_=1;t.charCodeAt(g+_)===d;)_++;a+=_}else a++;else if(p===d){for(g=a,v=1;t.charCodeAt(g+v)===d;)v++;a+=v,_===v&&(_=void 0),v=void 0}else a++}if(h!==void 0)return n?!0:(f=e.now(),f.column+=2,f.offset+=2,e(t.slice(0,a))({type:`footnote`,children:r.tokenizeInline(t.slice(m,h),f)}))}}function j(e,t,n){var r=0;if(t.charCodeAt(r)===a&&r++,t.charCodeAt(r)===s&&t.charCodeAt(r+1)!==u)return C.call(this,e,t,n)}function M(e,t,r){for(var a=0,o=t.charCodeAt(a);o===i||o===n;)o=t.charCodeAt(++a);if(o===s&&t.charCodeAt(a+1)!==u)return S.call(this,e,t,r)}function N(e,t){return e.indexOf(`[`,t)}function P(e,t){return e.indexOf(`^[`,t)}}function v(e){var t=e.prototype.visitors,n=` `;t.footnote=r,t.footnoteReference=i,t.footnoteDefinition=a;function r(e){return`^[`+this.all(e).join(``)+`]`}function i(e){return`[^`+(e.label||e.identifier)+`]`}function a(e){for(var t=this.all(e).join(`
2
2
 
3
3
  `).split(`
4
4
  `),r=0,i=t.length,a;++r<i;)a=t[r],a!==``&&(t[r]=n+a);return`[^`+(e.label||e.identifier)+`]: `+t.join(`
@@ -0,0 +1,2 @@
1
+ var e={common:{loading:`Memuatkan...`,save:`Simpan`,saving:`Menyimpan...`,cancel:`Batal`,delete:`Padam`,edit:`Sunting`,close:`Tutup`,back:`Kembali`,next:`Seterusnya`,confirm:`Sahkan`,error:`Ralat`,success:`Berjaya`,warning:`Amaran`,or:`atau`,optional:`pilihan`,enabled:`Diaktifkan`,disabled:`Dinyahaktifkan`,on:`Hidup`,off:`Mati`,yes:`Ya`,no:`Tidak`,search:`Cari`,noResults:`Tiada hasil ditemui`,retry:`Cuba Semula`,refresh:`Muat Semula`,download:`Muat Turun`,upload:`Muat Naik`,export:`Eksport`,import:`Import`,reset:`Tetapkan Semula`,apply:`Guna`,clear:`Kosongkan`,all:`Semua`,none:`Tiada`,default:`Lalai`,custom:`Tersuai`,remove:`Buang`},brand:{name:`Libre WebUI`,shortName:`Libre`},auth:{login:{title:`Selamat Kembali`,subtitle:`Log masuk ke akaun anda untuk meneruskan`,username:`Nama Pengguna`,usernamePlaceholder:`Masukkan nama pengguna anda`,password:`Kata Laluan`,passwordPlaceholder:`Masukkan kata laluan anda`,signIn:`Log Masuk`,signingIn:`Sedang log masuk...`,noAccount:`Belum mempunyai akaun?`,signUpHere:`Daftar di sini`,loginSuccess:`Berjaya log masuk!`,loginFailed:`Gagal log masuk`,checkCredentials:`Gagal log masuk. Sila semak kelayakan anda.`,enterBoth:`Sila masukkan nama pengguna dan kata laluan`,githubSuccess:`Berjaya log masuk melalui GitHub!`,githubFailed:`Pengesahan GitHub gagal`,githubVerifyFailed:`Gagal mengesahkan pengesahan GitHub`,approvalPending:`Akaun anda sedang menunggu kelulusan pentadbir.`},signup:{title:`Cipta Akaun`,subtitle:`Daftar untuk akaun baharu anda`,username:`Nama Pengguna`,usernamePlaceholder:`Pilih nama pengguna`,email:`E-mel`,emailPlaceholder:`emel@anda.com`,password:`Kata Laluan`,passwordPlaceholder:`Pilih kata laluan`,confirmPassword:`Sahkan Kata Laluan`,confirmPasswordPlaceholder:`Sahkan kata laluan anda`,createAccount:`Cipta Akaun`,creatingAccount:`Sedang mencipta akaun...`,hasAccount:`Sudah mempunyai akaun?`,signInHere:`Log masuk di sini`,signupSuccess:`Akaun berjaya dicipta!`,signupFailed:`Gagal mendaftar`,tryAgain:`Gagal mendaftar. Sila cuba lagi.`,usernameRequired:`Nama pengguna dan kata laluan diperlukan`,passwordMismatch:`Kata laluan tidak sepadan`,passwordTooShort:`Kata laluan mesti sekurang-kurangnya 6 aksara`,approvalPending:`Pendaftaran diterima. Pentadbir perlu meluluskan akaun anda.`,awaitingApproval:`Menunggu kelulusan`,awaitingApprovalDescription:`Akaun anda telah dicipta, tetapi pentadbir perlu mengaktifkannya sebelum anda boleh log masuk.`,backToSignIn:`Kembali ke log masuk`},logout:{button:`Log keluar`,success:`Berjaya log keluar`},oauth:{continueWith:`Teruskan dengan {{provider}}`,connectingTo:`Menyambung ke {{provider}}...`,github:`GitHub`,huggingFace:`Hugging Face`},checkingAuth:`Memeriksa pengesahan...`,welcome:`Selamat datang`,noEmail:`Tiada e-mel`,role:`Peranan`,id:`ID`,userId:`ID pengguna`,signInDescription:`Log masuk dengan akaun GitHub anda untuk meneruskan`,signInWithGitHub:`Log masuk dengan GitHub`,jwtActive:`Pengesahan JWT aktif`,jwtDescription:`Pengesahan berasaskan JWT dengan GitHub OAuth`,github:`GitHub`,provider:`Pembekal`,tagline:`Tindanan AI anda patut menjawab kepada anda.`,selfHosted:`Dihoskan sendiri · Apache 2.0`,highlights:{local:{title:`Tempatan dahulu`,body:`Perbualan dan fail anda kekal pada mesin tempat anda menjalankan ini.`},providers:{title:`Mana-mana penyedia`,body:`Model tempatan melalui Ollama, serta penyedia jauh yang anda pilih untuk ditambah.`},work:{title:`Kerja Terpencil`,body:`Beri model ruang kerja terkotak pasir dengan fail, terminal, dan pratonton.`}}},setup:{welcome:{title:`Selamat Datang ke Libre WebUI`,subtitle:`Mari Mulakan`,description:`Sediakan Libre WebUI anda dalam beberapa langkah mudah`,createAdmin:`Cipta Akaun Pentadbir`,features:{secure:{title:`Selamat & Peribadi`,description:`Perbualan anda kekal dalam peranti anda`},fast:{title:`Pantas & Responsif`,description:`Dioptimumkan untuk kelajuan dan prestasi`},openSource:{title:`Sumber Terbuka`,description:`Perisian percuma dan sumber terbuka`}}},admin:{title:`Cipta Akaun Pentadbir`,subtitle:`Persediaan Pentadbir`,description:`Cipta akaun pentadbir pertama untuk Libre WebUI anda`,usernamePlaceholder:`Masukkan nama pengguna pentadbir`,passwordPlaceholder:`Masukkan kata laluan (min 6 aksara)`,confirmPlaceholder:`Sahkan kata laluan anda`,creating:`Sedang mencipta...`,createAdmin:`Cipta Pentadbir`,success:`Akaun pentadbir berjaya dicipta!`,failed:`Gagal mencipta akaun pentadbir`,fillAllFields:`Sila isi semua ruangan`,note:`Ini akan menjadi akaun pentadbir utama untuk Libre WebUI anda`,approvalUnexpected:`Pentadbir awal tidak dapat diaktifkan. Sila cuba lagi.`},encryptionKey:{title:`Simpan Kunci Penyulitan Anda`,subtitle:`Penting: Simpan Kunci Ini`,description:`Kunci penyulitan ini melindungi data sensitif anda. Simpan dengan selamat - anda memerlukannya jika perlu memulihkan pangkalan data anda.`,warning:`Amaran`,warningText:`Jika anda kehilangan kunci ini dan perlu memulihkan pangkalan data anda, data yang disulitkan (kunci API, keutamaan) tidak dapat dipulihkan.`,label:`Kunci Penyulitan Anda`,loading:`Memuatkan...`,copyToClipboard:`Salin ke papan keratan`,copied:`Kunci penyulitan disalin ke papan keratan!`,copyFailed:`Gagal menyalin kunci ke papan keratan`,envNote:`Kunci ini juga disimpan dalam fail backend/.env anda sebagai ENCRYPTION_KEY`,acknowledgment:`Saya telah menyimpan kunci penyulitan saya di lokasi yang selamat dan memahami bahawa kehilangannya boleh menyebabkan kehilangan data.`,confirmRequired:`Sila sahkan bahawa anda telah menyimpan kunci penyulitan`,continue:`Teruskan ke Libre WebUI`}},chat:{greeting:{morning:`Selamat pagi`,afternoon:`Selamat petang`,evening:`Selamat petang`,night:`Selamat malam`},welcome:{helpToday:`Apa yang boleh saya bantu hari ini?`,helpTonight:`Apa yang boleh saya bantu malam ini?`,variety:{create:{title:`Apa yang mahu kita cipta?`,subtitle:`Mulakan dengan buah fikiran, lakaran, atau masalah yang sukar diselesaikan.`},explore:{title:`Dari mana kita patut bermula?`,subtitle:`Bawa persoalan yang sering bermain di fikiran anda.`},imagine:{title:`Apa yang anda bayangkan?`,subtitle:`Kita boleh membentuknya bersama-sama.`},focus:{title:`Apa yang wajar mendapat perhatian anda?`,subtitle:`Mari jelaskan langkah seterusnya.`},untangle:{title:`Apa yang bersimpul?`,subtitle:`Ceritakan dahulu versi yang masih berserabut.`},momentum:{title:`Mulakan apabila anda bersedia.`,subtitle:`Sambung semula idea, rancangan, atau perkara yang belum selesai.`},open:{title:`Apa yang sedang anda fikirkan?`,subtitle:`Fikiran kecil atau projek bercita-cita besar, kedua-duanya boleh.`},challenge:{title:`Apa yang mahu kita selesaikan?`,subtitle:`Beritahu saya bahagian yang masih belum menjadi.`},draft:{title:`Mari bermula di mana-mana.`,subtitle:`Tak perlu sempurna lagi.`},possibility:{title:`Ini boleh menjadi apa?`,subtitle:`Tunjukkan bahan mentahnya.`},unexpected:{title:`Mari cipta sesuatu yang tidak dijangka.`,subtitle:`Beri saya satu kekangan, suasana, atau idea yang masih samar.`}}},input:{placeholder:`Hantar mesej`,messagePlaceholder:`Mesej...`,attachImages:`Lampirkan imej`,attachments:`Lampiran dan ciri lanjutan`,sendMessage:`Hantar mesej`,stopGeneration:`Hentikan penjanaan`},session:{new:`Sembang Baharu`,work:`Kerja`,chat:`Sembang`,private:`Peribadi`,privateMode:`Mod Peribadi`,privateDescription:`Perbualan ini tidak akan disimpan`,privateTooltip:`Mulakan perbualan peribadi yang tidak akan disimpan`,deleteConfirm:`Adakah anda pasti mahu memadamkan sembang ini?`,generatingTitle:`Menjana tajuk`,noChats:`Belum ada sembang`,createFirst:`Cipta sembang pertama anda di atas`,chats:`Sembang`,renameChat:`Namakan semula sembang`,deleteChat:`Padam sembang`,incognito:`Sembang Inkognito`},persona:{applied:`Persona digunakan`,label:`Persona`,removeFailed:`Gagal mengeluarkan persona`},model:{updated:`Model dikemas kini`,noModels:`Tiada model tersedia`,noModelsDescription:`Tiada model tersedia. Pastikan Ollama sedang berjalan dan mempunyai model yang dipasang.`,pullCommand:`ollama pull llama3.2:3b`,noModelsTooltip:`Tiada model tersedia. Sila pastikan Ollama sedang berjalan dan model telah dipasang.`,selectBeforePrivateChat:`Pilih model yang tersedia sebelum memulakan sembang peribadi`,selectBeforeSending:`Pilih model yang tersedia sebelum menghantar`},footer:{disclaimer:`LLM boleh membuat kesilapan - sahkan maklumat penting`,images:`{{count}} imej`,images_plural:`{{count}} imej`,structuredOutput:`Output berstruktur`},mediaUpload:{dropImagesHere:`Lepaskan imej di sini atau`,supportedFormats:`Sokongan: JPG, PNG, GIF, WebP (maks 10MB setiap satu)`,browse:`layari`},structuredOutput:{title:`Format Respons`,none:`Tiada (Bahasa Semula Jadi)`,noneDescription:`Respons bahasa semula jadi lalai`,json:`JSON`,jsonDescription:`Format JSON berstruktur`,list:`Senarai`,listDescription:`Tatasusunan item`,summary:`Ringkasan`,summaryDescription:`Ringkasan dokumen dengan perkara utama`,analysis:`Analisis`,analysisDescription:`Analisis berstruktur dengan kebaikan/keburukan`,custom:`Skema Tersuai`,customDescription:`Tentukan skema JSON anda sendiri`,customSchema:`Skema JSON tersuai`,schemaPreview:`Pratonton Skema`,applySchema:`Gunakan Skema`,cancel:`Batal`,enabled:`Output berstruktur diaktifkan`}},sidebar:{navigation:{chat:`Sembang`,models:`Model`,personas:`Persona`,imagine:`Bayangkan`,settings:`Tetapan`,userManagement:`Pengurusan Pengguna`,signOut:`Log Keluar`,agents:`Ejen`,work:`Kerja`,exploreLabel:`Terokai`,usageAnalytics:`Penggunaan Penyedia`,system:`Sistem`},toggleSize:`Togol saiz bar sisi`,expandSidebar:`Kembangkan bar sisi`},user:{menu:{changePicture:`Tukar Gambar`,settings:`Tetapan`,userManagement:`Pengurusan Pengguna`,logout:`Log keluar`,usageAnalytics:`Penggunaan Penyedia`,system:`Sistem`},avatar:{title:`Tukar Gambar Profil`,updated:`Gambar profil dikemas kini`,updateFailed:`Gagal mengemas kini gambar profil`,saving:`Menyimpan...`,label:`Avatar`,uploadAvatarImage:`Muat naik gambar avatar`,dragAndDrop:`Seret dan lepas gambar atau klik untuk menyemak imbas`,chooseImage:`Pilih Gambar`,uploading:`Memuat naik...`,enterImageUrl:`Atau masukkan URL gambar`,supportedFormats:`Menyokong: JPG, PNG, GIF, WebP (maks. 2MB). Gambar segi empat sama berfungsi paling baik.`,customAvatar:`Gambar avatar tersuai`,clickToChange:`Klik untuk menukar atau mengalih keluar`,removed:`Avatar dialih keluar`,uploaded:`Avatar berjaya dimuat naik`,invalidFile:`Sila pilih fail gambar yang sah`,fileTooLarge:`Saiz gambar avatar mesti kurang daripada 2MB`,readFailed:`Gagal membaca fail gambar`,uploadFailed:`Gagal memuat naik gambar avatar`},profile:{noEmail:`Tiada e-mel diberikan`}},settings:JSON.parse(`{"title":"Tetapan","tabs":{"appearance":"Penampilan","model":"Model","systemMessage":"Mesej Sistem","plugins":"Plugin","generation":"Penjanaan","documents":"Dokumen","tts":"Suara","imageGen":"Imej","data":"Data","about":"Perihal"},"appearance":{"title":"Penampilan","language":{"title":"Bahasa","description":"Pilih bahasa pilihan anda"},"theme":{"title":"Tema","light":"Cerah","dark":"Gelap","amoled":"Hitam Tulen","system":"Sistem"},"accent":{"title":"Warna aksen","custom":"Warna tersuai","useColor":"Gunakan aksen {{color}}","behaviorTitle":"Palet antara muka","behaviorDescription":"Pilih sama ada aksen hanya digunakan pada kawalan atau menyesuaikan seluruh antara muka cerah atau gelap.","defaultStyle":"Lalai","defaultStyleDescription":"Kekalkan permukaan neutral tema cerah dan gelap.","adaptedStyle":"Sesuaikan dengan aksen","adaptedStyleDescription":"Warnakan permukaan, sempadan dan teks dengan warna aksen."},"chatInterface":{"title":"Antara Muka Sembang","showUsername":"Tunjukkan Nama Pengguna","showUsernameDescription":"Paparkan nama pengguna dalam mesej sembang"},"background":{"title":"Imej Latar Belakang","enable":"Aktifkan imej latar belakang","enableDescription":"Tunjukkan latar belakang tersuai dengan kesan kabur","blur":"Kabur","opacity":"Kelegapan","upload":"Muat naik imej latar belakang","dragDrop":"Seret dan lepas imej atau klik untuk melayari","chooseImage":"Pilih Imej"}},"saveSettings":"Simpan Tetapan","model":{"title":"Tetapan Model","defaultModel":"Model Lalai","defaultModelDescription":"Model ini akan digunakan secara lalai untuk perbualan baharu","selectModel":"Pilih model","updateAll":"Kemas Kini Semua Model","updateAllDescription":"Semak kemas kini dan muat turun versi terkini semua model yang dipasang","updateAllButton":"Kemas Kini Semua","updating":"Mengemas kini model...","currentModelInfo":"Maklumat Model Semasa","name":"Nama","size":"Saiz","family":"Keluarga","format":"Format","status":"Status","statusStarting":"Memulakan...","statusComplete":"Selesai","statusError":"Ralat","bulkOperations":"Operasi Pukal","autoTitle":{"title":"Penjanaan Tajuk Auto","enable":"Aktifkan Tajuk Auto","enableDescription":"Jana tajuk secara automatik untuk perbualan baharu","taskModel":"Model Tugas","selectTaskModel":"Pilih model tugas","taskModelDescription":"Model yang digunakan untuk menjana tajuk perbualan"},"persona":"Persona","updatingModel":"Mengemas kini {{name}} ({{current}}/{{total}})","modelsProgress":"{{current}} daripada {{total}} model","specializedModels":"Model Khusus","visionModel":"Model Penglihatan","selectVisionModel":"Guna model sembang semasa","visionModelDescription":"Digunakan secara automatik apabila konteks sembang keluar mengandungi imej. Pilih model yang menyokong input imej.","visionModelUpdateFailed":"Gagal mengemas kini model penglihatan: {{error}}","visionModelNoProvider":"Model penglihatan ini tiada identiti pembekal. Pilih model yang tersedia."},"systemMessage":{"title":"Mesej Sistem","description":"Tetapkan mesej sistem tersuai yang akan digunakan untuk semua perbualan baharu.","placeholder":"Masukkan mesej sistem...","saved":"Mesej sistem disimpan","saveFailed":"Gagal menyimpan mesej sistem"},"plugins":{"title":"Plugin","description":"Urus plugin yang dipasang","addNew":"Tambah Plugin Baharu","upload":"Muat Naik Plugin","addJson":"Tambah JSON","uploading":"Memuat naik...","jsonPlaceholder":"Tampal konfigurasi JSON plugin...","install":"Pasang Plugin","noPlugins":"Tiada plugin dipasang","noPluginsDescription":"Tambah plugin untuk memanjangkan fungsi","loading":"Memuatkan plugin...","installed":"Plugin Dipasang","active":"Plugin Aktif","activeLabel":"Aktif","inactive":"Tidak Aktif","activate":"Aktifkan","deactivate":"Nyahaktifkan","models":"model","apiKeySet":"Kunci API Ditetapkan","apiKeyConfiguration":"Konfigurasi Kunci API","apiKeyEnvAlternative":"Sebagai alternatif, tetapkan","environmentVariable":"pemboleh ubah persekitaran","apiKeyConfigured":"Kunci API dikonfigurasi","apiKeyPlaceholder":"Masukkan kunci API anda...","saveApiKey":"Simpan Kunci API","apiKey":{"title":"Kunci API","placeholder":"Masukkan kunci API","save":"Simpan Kunci","remove":"Buang Kunci","configured":"Kunci API Dikonfigurasi","notConfigured":"Kunci API Diperlukan","saved":"Kunci API berjaya disimpan","removed":"Kunci API dibuang","saveFailed":"Gagal menyimpan kunci API","removeFailed":"Gagal membuang kunci API","enterKey":"Sila masukkan kunci API"},"variables":"Variables","providerConnections":"Sambungan penyedia","providerConnectionsDescription":"Sambung, konfigur, dan periksa penyedia model melalui pemalam.","providers":"Penyedia","searchProviders":"Cari penyedia","noProvidersFound":"Tiada penyedia sepadan dengan carian anda.","selectProvider":"Pilih penyedia","selectProviderDescription":"Pilih penyedia untuk memeriksa sambungan dan katalog modelnya.","apiKeyDescription":"Simpan kunci API peribadi untuk {{name}}.","showApiKey":"Tunjukkan kunci API","hideApiKey":"Sembunyikan kunci API","configure":"Konfigur","providerSettings":"Tetapan penyedia","status":"Status","defaultEndpoint":"Titik akhir lalai","modelCatalog":"Katalog model","modelCatalogDescription":"Model yang ditemui dan dikonfigur untuk penyedia ini serta keupayaannya.","refreshModels":"Segarkan model","noModelsConfigured":"Tiada model dikonfigurasi untuk penyedia ini.","modelId":"ID Model","capabilities":"Keupayaan","modelCatalogUpdated":"Katalog model dikemas kini: {{count}} model.","modelCatalogUnchanged":"Katalog model sudah dikemas kini.","modelCatalogNeedsApiKey":"Tambah kunci API yang sah untuk penyedia ini bagi memuatkan senarai model langsungnya.","modelCatalogUnavailable":"Tidak dapat memuatkan senarai model penyedia.","modelCatalogRefreshFailed":"Gagal memuat semula katalog model","capability":{"chat":"Sembang","embedding":"Pembenaman","image":"Imej","speech":"Ucapan","transcription":"Transkripsi"},"exportPlugin":"Eksport plugin","deletePlugin":"Padam plugin"},"generation":{"title":"Pilihan Penjanaan","description":"Konfigurasi cara AI menjana respons","coreParameters":"Parameter Teras","temperature":"Suhu","temperatureDescription":"Mengawal rawak. Nilai lebih rendah lebih fokus, nilai lebih tinggi lebih kreatif.","topP":"Top P","topPDescription":"Mengawal kepelbagaian melalui persampelan nukleus. Nilai lebih rendah fokus pada token berkemungkinan.","topK":"Top K","topKDescription":"Menghadkan pemilihan token kepada K teratas yang paling berkemungkinan. Tetapkan 0 untuk nyahaktif.","minP":"Min P","minPDescription":"Ambang kebarangkalian minimum untuk pemilihan token.","generationControl":"Kawalan Penjanaan","maxTokens":"Token Maksimum","maxTokensDescription":"Bilangan maksimum token untuk dijana dalam respons.","repeatPenalty":"Penalti Ulangan","repeatPenaltyDescription":"Menghukum token berulang. Nilai lebih tinggi mengurangkan pengulangan.","contextLength":"Panjang Konteks","contextLengthDescription":"Saiz tingkap konteks maksimum untuk perbualan.","seed":"Benih","optional":"pilihan","random":"Rawak","seedDescription":"Tetapkan benih khusus untuk output yang boleh diulang.","advancedOptions":"Pilihan Lanjutan","presencePenalty":"Penalti Kehadiran","presencePenaltyDescription":"Menghukum token yang muncul dalam konteks.","frequencyPenalty":"Penalti Kekerapan","frequencyPenaltyDescription":"Menghukum token yang kerap digunakan.","stopSequences":"Urutan Berhenti","commaSeparated":"dipisahkan koma","stopSequencesDescription":"Token tersuai yang akan menghentikan penjanaan apabila ditemui.","resetDefaults":"Tetap Semula ke Lalai","saveOptions":"Simpan Pilihan","embeddingSettings":"Tetapan Pembenaman","enableEmbeddings":"Aktifkan Pembenaman Dokumen","advancedSettings":"Tetapan penjanaan lanjutan","advancedSettingsDescription":"Persampelan, had token, konteks, penalti, dan jujukan berhenti"},"documents":{"title":"Tetapan Dokumen","embeddings":{"title":"Pembenaman","enable":"Aktifkan pembenaman dokumen","model":"Model Pembenaman","modelDescription":"Pilih model yang digunakan untuk pembenaman dokumen","chunkSize":"Saiz Cebisan","chunkSizeInTokens":"(dalam token)","chunkSizeDescription":"Saiz cebisan teks untuk pembenaman","chunkOverlap":"Pertindihan Cebisan","chunkOverlapInTokens":"(dalam token)","chunkOverlapDescription":"Pertindihan antara cebisan berturutan","similarityThreshold":"Ambang Persamaan","similarityDescription":"Skor persamaan minimum untuk memasukkan hasil","status":"Status Pembenaman","statusLabel":"Status","available":"Tersedia","unavailable":"Tidak Tersedia","chunksWithEmbeddings":"Cebisan dengan pembenaman","coverage":"Liputan","regenerate":"Jana Semula Pembenaman","regenerating":"Menjana semula..."}},"tts":{"title":"Teks ke Pertuturan","description":"Konfigurasi tetapan teks ke pertuturan untuk membaca mesej dengan kuat","loadingProviders":"Memuatkan penyedia TTS...","noProviders":"Tiada Penyedia TTS","noProvidersDescription":"Konfigurasi plugin dengan sokongan TTS untuk mengaktifkan teks ke pertuturan","enable":"Aktifkan TTS","enableDescription":"Benarkan teks ke pertuturan untuk mesej pembantu","autoPlay":"Main Auto Respons","autoPlayDescription":"Baca mesej pembantu baharu secara automatik dengan kuat","streamSentences":"Strim Ayat","streamSentencesDescription":"Main audio ayat demi ayat berbanding menunggu mesej penuh. Disyorkan untuk TTS tempatan bagi mengelakkan tamat masa pada mesej panjang.","voiceConfiguration":"Konfigurasi Suara","model":"Model TTS","modelDescription":"Pilih model untuk penjanaan teks ke pertuturan","voice":"Suara","selectVoice":"Pilih suara","voiceDescription":"Pilih suara untuk teks ke pertuturan","speed":"Kelajuan","speedSlow":"0.5x","speedNormal":"1.0x","speedFast":"2.0x","availableProviders":"Penyedia Tersedia","models":"model","test":"Uji","testing":"Menguji...","stop":"Berhenti"},"imageGen":{"title":"Penjanaan Imej","description":"Konfigurasi tetapan dan penyedia penjanaan imej","loadingProviders":"Memuatkan penyedia penjanaan imej...","noProviders":"Tiada Penyedia Penjanaan Imej","noProvidersDescription":"Konfigurasi plugin dengan sokongan penjanaan imej","enable":"Aktifkan Penjanaan Imej","enableDescription":"Benarkan penjanaan imej AI dalam perbualan","configuration":"Konfigurasi","model":"Model","modelDescription":"Pilih model untuk penjanaan imej","size":"Saiz","sizeDescription":"Resolusi imej yang dijana","quality":"Kualiti","qualityDescription":"Tahap kualiti imej yang dijana","style":"Gaya","styleDescription":"Pratetap gaya untuk imej yang dijana","availableProviders":"Penyedia Tersedia","models":"model"},"data":{"title":"Pengurusan Data","export":"Eksport Data","exportDescription":"Muat turun semua data anda termasuk keutamaan, sesi dan dokumen.","exportAll":"Eksport Semua Data","import":"Import Data","importDescription":"Import data dari eksport sebelumnya.","importData":"Import Data","importing":"Mengimport...","clearSessions":"Kosongkan Sesi","clearSessionsDescription":"Padam semua sesi sembang. Tindakan ini tidak boleh dibatalkan.","clearAll":"Kosongkan Semua","clearing":"Mengosongkan...","importOptions":"Pilihan Import","importOptionsDescription":"Pilih cara mengendalikan data sedia ada","skipDuplicates":"Langkau pendua","overwrite":"Tulis ganti sedia ada","importResults":"Hasil Import","preferences":"Keutamaan","imported":"Diimport","failed":"Gagal","sessions":"Sesi","importedLabel":"diimport","skipped":"dilangkau","documents":"Dokumen","errors":"Ralat"},"about":{"title":"Perihal","versionLabel":"Versi","ollama":{"title":"Status Ollama","version":"Versi","healthy":"Sihat","unhealthy":"Tidak Sihat"},"stats":{"models":"Model","sessions":"Sesi"},"features":{"privacy":{"title":"Privasi Diutamakan","description":"Data anda kekal dalam peranti anda"},"openSource":{"title":"Sumber Terbuka","description":"Perisian percuma dan sumber terbuka"},"localInference":{"title":"Inferens Tempatan","description":"Jalankan model AI secara tempatan dengan Ollama"}},"openSourceBy":"Sumber terbuka oleh {{company}}","links":{"title":"Pautan","github":"GitHub","githubDescription":"Lihat kod sumber dan sumbang","website":"Laman Web","websiteDescription":"Lawati laman web kami","ollama":"Ollama","ollamaDescription":"Ketahui lebih lanjut tentang Ollama","documentation":"Documentation","reportIssue":"Laporkan Isu","reportIssueDescription":"Laporan pepijat & permintaan ciri","gitlab":"GitLab Mirror","gitlabDescription":"Self-hosted GitLab repository","documentationDescription":"Guides, tutorials and API reference"},"version":"Versi {{version}}"},"groups":{"general":"Umum","chat":"Sembang","media":"Suara & imej","connections":"Sambungan"}}`),models:{title:`Model`,subtitle:`Tarik, urus dan pantau model Ollama anda`,installed:`Model Dipasang`,available:`Model Tersedia`,pull:`Tarik Model`,pulling:`Menarik...`,delete:`Padam Model`,deleting:`Memadamkan...`,size:`Saiz`,modified:`Diubah Suai`,family:`Keluarga`,parameters:`Parameter`,quantization:`Kuantisasi`,noModels:`Tiada model dipasang`,pullFirst:`Tarik model untuk bermula`,noModelsFound:`Tiada model ditemui`},personas:{title:`Persona`,create:`Cipta Persona`,edit:`Sunting Persona`,delete:`Padam Persona`,name:`Nama`,description:`Penerangan`,systemPrompt:`Arahan Sistem`,model:`Model`,avatar:`Avatar`,background:`Latar Belakang`,noPersonas:`Tiada persona dicipta`,createFirst:`Cipta persona pertama anda untuk menyesuaikan pengalaman sembang`},gallery:{title:`Galeri`,subtitle:`Galeri imej yang dijana AI anda`,imageCount:`{{count}} imej`,generate:`Jana Imej`,generateDescription:`Cipta imej dengan AI`,generating:`Menjana...`,prompt:`Arahan`,promptPlaceholder:`Terangkan imej yang anda mahu jana...`,noImages:`Belum ada imej dijana`,download:`Muat Turun`,delete:`Padam`,regenerate:`Jana Semula`,model:`Model`,size:`Saiz`,quality:`Kualiti`,created:`Dicipta`},errors:{generic:`Ralat telah berlaku`,network:`Ralat rangkaian. Sila semak sambungan anda.`,unauthorized:`Anda tidak dibenarkan melakukan tindakan ini.`,notFound:`Sumber yang diminta tidak ditemui.`,serverError:`Ralat pelayan. Sila cuba lagi kemudian.`,validation:`Sila semak input anda dan cuba lagi.`},keyboard:{title:`Pintasan Papan Kekunci`,toggleSidebar:`Togol bar sisi`,openSettings:`Buka tetapan`,toggleDarkMode:`Togol mod gelap`,showShortcuts:`Tunjukkan pintasan papan kekunci`,closeModals:`Tutup modal`,groups:{navigation:`Navigasi`,settings:`Tetapan`,general:`Umum`,chat:`Sembang`},actions:{sendMessage:`Hantar mesej`,newLine:`Baris baharu dalam mesej`},footer:`Tekan {{key1}} atau {{key2}} untuk menunjukkan bantuan ini`,tooltip:`Pintasan papan kekunci`},modelManager:{title:`Model`,loading:`Memuatkan model...`,systemStatus:{online:`Ollama Dalam Talian`,offline:`Ollama Luar Talian`,models:`model`,models_plural:`model`,running:`berjalan`,vram:`VRAM`},sections:{pull:`Tarik Model Baharu`,library:`Layari Pustaka`,running:`Model Sedang Berjalan`,local:`Model Tempatan`,advanced:`Tindakan Lanjutan`,huggingface:`HuggingFace Hub`},pull:{placeholder:`Masukkan nama model (cth., llama3.2:3b, deepseek-r1:14b)`,button:`Tarik`,cancel:`Batal`,popular:`Model popular:`,browseAll:`Layari semua model di ollama.com`,success:`Model {{name}} berjaya ditarik`,cancelled:`Tarikan model dibatalkan`,failed:`Gagal menarik model`,enterName:`Sila masukkan nama model`,restricted:`Pemasangan model dihadkan kepada pentadbir sahaja pada instance ini.`},progress:{starting:`Memulakan...`,pulling:`Memuat turun model...`,pullingLayer:`memuat turun`,verifying:`Mengesahkan integriti...`,verifyingDigest:`mengesahkan digest sha256`,writing:`Menulis manifes...`,cleaning:`Membersihkan...`},library:{available:`tersedia`,search:`Cari model...`,noResults:`Tiada model ditemui yang sepadan dengan kriteria anda`,installed:`Dipasang`,more:`+{{count}} lagi`,refresh:`Muat Semula Pustaka`},local:{noModels:`Belum ada model dipasang`,pullToStart:`Tarik model di atas untuk bermula`,installed:`dipasang`,running:`Berjalan`,info:`Maklumat`,copy:`Salin`,delete:`Padam`,deleteConfirm:`Adakah anda pasti mahu memadamkan model "{{name}}"?`,deleteSuccess:`Model {{name}} berjaya dipadam`,deleteFailed:`Gagal memadamkan model`},advanced:{createModel:`Cipta Model`,fromModelfile:`Dari Modelfile`,copyModel:`Salin Model`,duplicateExisting:`Duplikasi sedia ada`,testEmbeddings:`Uji Pembenaman`,generateVectors:`Jana vektor`,healthCheck:`Semakan Kesihatan`,testConnection:`Uji sambungan`,healthy:`Ollama sihat!`},modals:{details:{title:`Butiran Model`,info:`Maklumat Model`,family:`Keluarga`,parameters:`Parameter`,quantization:`Kuantisasi`,format:`Format`,systemPrompt:`Arahan Sistem`,template:`Templat`,license:`Lesen`,modelfile:`Modelfile`,noDetails:`Tiada butiran tersedia`},copy:{title:`Salin Model`,source:`Model Sumber`,selectModel:`Pilih model...`,newName:`Nama Model Baharu`,placeholder:`cth., model-tersuai-saya`,copying:`Menyalin...`,button:`Salin Model`,success:`Model disalin ke {{name}}`,failed:`Gagal menyalin model`,enterBoth:`Sila masukkan kedua-dua nama sumber dan destinasi`},create:{title:`Cipta Model Tersuai`,name:`Nama Model`,namePlaceholder:`cth., pembantu-saya`,modelfile:`Modelfile`,modelfilePlaceholder:`FROM llama3.2
2
+ SYSTEM Anda adalah pembantu yang berguna.`,see:`Lihat`,docs:`Dokumentasi Modelfile`,docsLink:`untuk rujukan sintaks`,creating:`Mencipta...`,button:`Cipta Model`,success:`Model {{name}} berjaya dicipta`,failed:`Gagal mencipta model`,enterBoth:`Sila masukkan nama model dan kandungan Modelfile`},embeddings:{title:`Uji Pembenaman`,model:`Model Pembenaman`,selectModel:`Pilih model...`,recommended:`Disyorkan: nomic-embed-text, mxbai-embed-large`,input:`Teks Input`,placeholder:`Masukkan teks untuk menjana pembenaman...`,generating:`Menjana...`,button:`Jana Pembenaman`,result:`Hasil ({{count}} dimensi)`,success:`Menjana vektor pembenaman {{count}} dimensi`,failed:`Gagal menjana pembenaman`,enterBoth:`Sila pilih model dan masukkan teks`}},huggingface:{browseAll:`Layari semua di HuggingFace`,checkingGguf:`Mencari fail GGUF...`,noGgufAvailable:`Tiada fail GGUF tersedia untuk muat turun terus ke Ollama`,ggufFilesCount:`Fail GGUF ({{count}}) - Muat turun terus ke Ollama`,noModelsFound:`Tiada model dijumpai`,noResults:`Tiada model dijumpai. Cuba laraskan carian atau penapis anda.`,browseAllLink:`Lihat semua`,search:`Cari model HuggingFace...`,by:`oleh`,gated:`Akses terhad`,viewOnHF:`Lihat di HuggingFace`,sortDownloads:`Muat turun`,sortLikes:`Suka`,sortRecent:`Terkini`,taskTextGeneration:`Penjanaan Teks`,taskTextToSpeech:`Teks ke Pertuturan`,taskTextToImage:`Teks ke Imej`,taskSpeechRecognition:`Pengecaman Pertuturan`,tasks:{textGen:`Penjanaan Teks`,tts:`Teks ke Pertuturan`,image:`Teks ke Imej`,stt:`Pengecaman Pertuturan`},sort:{downloads:`Paling Banyak Dimuat Turun`,likes:`Paling Disukai`,recent:`Dikemas Kini Baru-baru Ini`}}},personaManager:{title:`Persona`,subtitle:`Cipta dan urus persona AI dengan personaliti, ingatan dan tingkah laku tersuai`,loading:`Memuatkan persona...`,createButton:`Cipta Persona`,importExport:`Import/Eksport`,stats:{title:`Persona Anda`,count:`{{count}} persona dicipta`,count_plural:`{{count}} persona dicipta`},empty:{title:`Belum ada persona`,description:`Cipta persona pertama anda untuk bermula dengan interaksi AI yang diperibadikan`,button:`Cipta Persona Pertama Anda`},deleteConfirm:`Adakah anda pasti mahu memadamkan "{{name}}"?`,deleteSuccess:`Persona "{{name}}" berjaya dipadam`,downloadSuccess:`Persona "{{name}}" berjaya dimuat turun`,failed:`Gagal {{action}} persona`},personaForm:{title:{create:`Cipta Persona Baharu`,edit:`Sunting Persona`},subtitle:{create:`Cipta persona AI baharu dengan personaliti, sistem ingatan dan keupayaan pembelajaran adaptif tersuai`,edit:`Sesuaikan persona AI anda dengan ingatan lanjutan, pembelajaran adaptif dan parameter pintar`},loading:`Memuatkan borang...`,saved:`Disimpan`,tabs:{basic:`Asas`,parameters:`Parameter`,memory:`Ingatan & Pembelajaran`,advanced:`Lanjutan`},basic:{name:`Nama`,namePlaceholder:`Masukkan nama persona`,model:`Model`,selectModel:`Pilih model`,description:`Penerangan`,descriptionPlaceholder:`Terangkan persona anda...`,systemPrompt:`Arahan Sistem`,systemPromptPlaceholder:`Masukkan arahan sistem yang mentakrifkan tingkah laku persona anda...`,systemPromptHint:`Arahan sistem mentakrifkan cara persona anda akan bertingkah laku dan memberi respons.`},parameters:{temperature:`Suhu`,temperatureHint:`Mengawal kreativiti vs konsistensi`,topP:`Top-P`,topPHint:`Mengawal kepelbagaian respons`,topK:`Top-K`,topKHint:`Menghadkan perbendaharaan kata kepada token top-k`,contextWindow:`Tetingkap Konteks`,contextWindowHint:`Panjang maksimum sejarah perbualan`,maxTokens:`Token Maksimum`,maxTokensHint:`Panjang respons maksimum`,repeatPenalty:`Penalti Ulangan`,repeatPenaltyHint:`Mengurangkan respons berulang`},memory:{title:`Sistem Ingatan`,subtitle:`Persona mengingati perbualan dari masa ke masa`,enableHint:`Aktifkan sistem ingatan untuk membolehkan persona anda mengingati perbualan dan membina konteks dari masa ke masa.`,loading:`Memuatkan status ingatan...`,noData:`Belum ada data ingatan`,memories:`Ingatan`,mbUsed:`MB Digunakan`,lastBackup:`Sandaran Terakhir`,never:`Tidak Pernah`,maxMemories:`Ingatan Maksimum`,maxMemoriesHint:`Berapa banyak ingatan yang boleh disimpan persona ini`,retention:`Pengekalan Ingatan`,retentionHint:`Hari untuk menyimpan ingatan sebelum pembersihan`,autoCleanup:`Pembersihan auto ingatan lama`,wipeAll:`Padam Semua Ingatan`,wipeCannot:`Ini tidak boleh dibatalkan`,wipeButton:`Padam`,wiping:`Memadamkan...`,wipeConfirm:`Adakah anda pasti mahu memadamkan semua ingatan? Ini tidak boleh dibatalkan.`,wipeSuccess:`Memadamkan {{count}} ingatan`},learning:{title:`Pembelajaran Adaptif`,subtitle:`Persona berkembang berdasarkan interaksi`,enableHint:`Aktifkan pembelajaran adaptif untuk membolehkan persona anda berkembang dan memperibadikan respons berdasarkan interaksi anda.`,speed:`Kelajuan Pembelajaran`,slow:`Perlahan`,slowDesc:`Perubahan beransur-ansur`,balanced:`Seimbang`,balancedDesc:`Kadar sederhana`,fast:`Pantas`,fastDesc:`Penyesuaian cepat`,autoAdapt:`Penyesuaian auto kepada keutamaan pengguna`,whatLearns:`Apa yang persona pelajari:`,conversationTone:`Nada perbualan`,responseStyle:`Gaya respons`,userPreferences:`Keutamaan pengguna`,topicInterests:`Minat topik`},advanced:{embeddingModel:`Model Pembenaman`,embeddingHint:`Pilih model yang digunakan untuk pengekodan ingatan dan carian semantik. Model pembenaman ditunjukkan dahulu, diikuti model lain yang tersedia.`,noModels:`Tiada model ditemui`,embeddingModels:`Model Pembenaman`,otherModels:`Model Lain`,installHint:`Pasang model pembenaman:`,recommended:`Disyorkan: nomic-embed-text, mxbai-embed-large, bge-m3, snowflake-arctic-embed`,aboutTitle:`Perihal Tetapan Lanjutan`,aboutDescription:`Model pembenaman digunakan oleh sistem ingatan untuk memahami makna semantik dan mencari ingatan yang berkaitan semasa perbualan. Pilih model yang sepadan dengan kes penggunaan dan sumber anda.`},actions:{cancel:`Batal`,save:`Simpan`,saving:`Menyimpan...`,saveClose:`Simpan & Tutup`,create:`Cipta`},success:{created:`Persona dicipta`,updated:`Persona dikemas kini`},error:{saveFailed:`Gagal menyimpan`}},personaCard:{enhanced:`Dipertingkat`,systemPrompt:`Arahan Sistem`,memories:`ingatan`,use:`Guna`,editTooltip:`Sunting persona`,downloadTooltip:`Muat turun persona`,backup:`Sandaran`,exportDNA:`Eksport DNA`,wipeMemories:`Padam Ingatan`,wipeConfirm:`Adakah anda pasti mahu memadamkan semua ingatan untuk persona ini? Tindakan ini tidak boleh dibatalkan.`,wipeSuccess:`Memadamkan {{count}} ingatan`,backupSuccess:`Sandaran persona berjaya dimuat turun`,dnaSuccess:`DNA persona berjaya dieksport`,failed:`Gagal {{action}}`},userManager:{title:`Pengurusan Pengguna`,subtitle:`Urus akaun pengguna dan kebenaran`,pageDescription:`Urus akaun pengguna, kebenaran dan kawalan akses untuk contoh Libre WebUI anda.`,loading:`Memuatkan pengguna...`,createUser:`Cipta Pengguna`,search:`Cari pengguna...`,noUsers:`Tiada pengguna ditemui`,noUsersMatching:`Tiada pengguna sepadan dengan carian anda`,columns:{user:`Pengguna`,email:`E-mel`,role:`Peranan`,created:`Dicipta`,actions:`Tindakan`},roles:{admin:`Pentadbir`,user:`Pengguna`},noEmail:`Tiada e-mel`,deleteConfirm:`Adakah anda pasti mahu memadamkan pengguna "{{name}}"?`,deleteSuccess:`Pengguna berjaya dipadam`,deleteFailed:`Gagal memadamkan pengguna`,cannotDeleteSelf:`Anda tidak boleh memadamkan akaun anda sendiri`,form:{title:{create:`Cipta Pengguna`,edit:`Sunting Pengguna`},username:`Nama Pengguna`,usernamePlaceholder:`Masukkan nama pengguna`,email:`E-mel`,emailPlaceholder:`Masukkan e-mel (pilihan)`,password:`Kata Laluan`,passwordPlaceholder:`Masukkan kata laluan`,passwordHint:`Biarkan kosong untuk mengekalkan kata laluan semasa`,role:`Peranan`,creating:`Mencipta...`,updating:`Mengemas kini...`,createButton:`Cipta Pengguna`,updateButton:`Kemas Kini Pengguna`,createSuccess:`Pengguna berjaya dicipta`,updateSuccess:`Pengguna berjaya dikemas kini`,createFailed:`Gagal mencipta pengguna`,updateFailed:`Gagal mengemas kini pengguna`},approval:{title:`Kelulusan tertangguh`,description:`Semak pendaftaran baharu sebelum membenarkan mereka masuk ke instance ini.`,registered:`Berdaftar`,activate:`Aktifkan akaun`,reject:`Tolak pendaftaran`,approved:`{{name}} kini boleh log masuk.`,failed:`Akaun tidak dapat diluluskan.`,notification:`{{count}} pendaftaran menunggu kelulusan anda.`,notificationBadge:`{{count}} kelulusan pengguna tertangguh`}},chatHistory:{label:`Sejarah perbualan`,jumpToTurn:`Pergi ke giliran {{index}} daripada {{total}}`},chatMessage:{you:`Anda`,assistant:`Pembantu`,system:`Sistem`,copy:`Salin`,copyMessage:`Salin mesej`,copied:`Disalin!`,regenerate:`Jana Semula`,regenerateResponse:`Jana semula respons`,edit:`Sunting`,editSystemMessage:`Sunting mesej sistem`,saveChanges:`Simpan perubahan`,cancelEditing:`Batal penyuntingan`,delete:`Padam`,deleteConfirm:`Padam mesej ini?`,branch:`Cabang`,speaking:`Bercakap...`,speakMessage:`Sebut mesej`,stopSpeaking:`Hentikan pertuturan`,showMore:`Tunjuk lebih`,showLess:`Tunjuk kurang`,thinking:`Berfikir`,systemMessagePlaceholder:`Masukkan mesej sistem anda...`,fullSizeImage:`Imej saiz penuh`,startConversation:`Mulakan perbualan`,startConversationDescription:`Hantar mesej untuk mula berbual dengan pembantu AI anda. Tanya soalan, dapatkan bantuan dengan kod atau berbual secara semula jadi.`,scrollToBottom:`Tatal ke bawah`,newMessages:`Mesej baharu`},imageGallery:{title:`Galeri Imej`,noImages:`Belum ada imej`,noImagesHint:`Jana imej pertama anda menggunakan panel di sebelah kanan`,delete:`Padam`,download:`Muat Turun`,deleteConfirm:`Adakah anda pasti mahu memadamkan imej ini?`,deleteSuccess:`Imej dipadam`,deleteFailed:`Gagal memadamkan imej`,downloadFailed:`Gagal memuat turun imej`,loadMore:`Muatkan Lagi ({{current}} daripada {{total}})`,loadFailed:`Gagal memuatkan galeri`},imageGeneration:{title:`Jana Imej`,prompt:`Arahan`,promptPlaceholder:`Terangkan imej yang anda mahu cipta...`,model:`Model`,selectModel:`Pilih model`,noModels:`Tiada model penjanaan imej tersedia`,configurePlugin:`Konfigurasi plugin dengan sokongan penjanaan imej`,size:`Saiz`,quality:`Kualiti`,style:`Gaya`,generate:`Jana`,generating:`Menjana...`,success:`Imej berjaya dijana`,failed:`Gagal menjana imej`,enterPrompt:`Sila masukkan arahan`,promptTooLong:`Prompt melebihi panjang maksimum {{max}} aksara`},errorBoundary:{title:`Sesuatu tidak kena`,description:`Kami menghadapi ralat yang tidak dijangka. Sila cuba muat semula halaman.`,tryAgain:`Muat Semula Halaman`,goHome:`Pergi ke Laman Utama`,errorDetails:`Butiran Ralat (Pembangunan)`},documents:{title:`Dokumen`,upload:`Muat Naik Dokumen`,uploading:`Memuat naik...`,noDocuments:`Tiada dokumen dimuat naik`,uploadHint:`Muat naik dokumen untuk digunakan dalam perbualan anda`,delete:`Padam`,deleteConfirm:`Adakah anda pasti mahu memadamkan dokumen ini?`,deleteSuccess:`Dokumen dipadam`,deleteFailed:`Gagal memadamkan dokumen`,uploadSuccess:`Dokumen berjaya dimuat naik`,uploadFailed:`Gagal memuat naik dokumen`,types:`Disokong: PDF, TXT, MD, DOCX`,unsupportedFileType:`Hanya fail PDF dan TXT yang disokong`,fileSizeTooLarge:`Saiz fail mesti kurang daripada 10MB`,uploadSuccessWithName:`Dokumen "{{name}}" berjaya dimuat naik`,removeSuccess:`Dokumen berjaya dibuang`,removeFailed:`Gagal membuang dokumen`,removeError:`Ralat berlaku semasa membuang dokumen`,clickToUpload:`Klik untuk muat naik`,orDragAndDrop:`atau seret dan lepas`,fileTypesAndSize:`Fail PDF atau TXT sehingga 10MB`,uploadedDocuments:`Dokumen Dimuat Naik`,removeDocument:`Buang dokumen`},ttsButton:{speak:`Sebut`,stop:`Berhenti`,speaking:`Bercakap...`,generateFailed:`Gagal menjana pertuturan`,playbackFailed:`Main balik audio gagal`,stopSpeaking:`Hentikan pertuturan`,generatingSpeech:`Menjana pertuturan...`,readAloud:`Baca dengan kuat`},artifacts:{title:`Artifak`,code:`Kod`,preview:`Pratonton`,copy:`Salin kod`,copied:`Disalin!`,download:`Muat Turun`,expand:`Kembangkan`,collapse:`Kecilkan`,openInNewTab:`Buka dalam tab baharu`,invalidSvg:`Kandungan SVG tidak sah`,invalidJson:`Kandungan JSON tidak sah`,previewMode:`Mod pratonton`,codeMode:`Mod kod`,copyContent:`Salin kandungan`,openInPanel:`Buka dalam panel`,openInNewWindow:`Buka dalam tetingkap baharu`,created:`Dicipta`,closePanelEsc:`Tutup panel (Esc)`,copyButton:`Salin`,open:`Buka`,dragEdgeToResize:`Seret tepi untuk mengubah saiz`,previewUnavailable:`Preview unavailable`,previewUnavailableDescription:`This artifact does not contain renderable preview content. Switch to code view to inspect the source.`},personaImportExport:{title:`Import & Eksport Persona`,description:`Eksport persona anda untuk dikongsi atau import persona daripada orang lain`,exportPersonas:`Eksport Persona`,importPersonas:`Import Persona`,noPersonasToExport:`Tiada persona untuk dieksport`,personasAvailable:`{{count}} persona tersedia`,personasAvailable_plural:`{{count}} persona tersedia`,exportAll:`Eksport Semua`,uploadJsonFile:`Muat Naik Fail JSON`,pasteJsonLabel:`Tampal Data JSON`,pasteJsonPlaceholder:`Tampal data JSON persona di sini...`,importing:`Mengimport...`,importButton:`Import Persona`,expectedFormat:`Format JSON yang Dijangka:`,exportSuccess:`Persona "{{name}}" berjaya dieksport`,exportFailed:`Gagal mengeksport persona`,exportAllSuccess:`Semua {{count}} persona berjaya dieksport`,exportAllFailed:`Gagal mengeksport persona`,pasteJsonData:`Sila tampal data JSON persona`,importMultipleSuccess:`Berjaya mengimport {{count}} persona`,importMultipleFailed:`Gagal mengimport {{count}} persona`,importNoneFailed:`Gagal mengimport mana-mana persona`,importSuccess:`Persona berjaya diimport`,importFailed:`Gagal mengimport persona`},generationStats:{details:`Butiran`,promptTokens:`Token prompt:`,generatedTokens:`Token dijana:`,totalTokens:`Jumlah token:`,speed:`Kelajuan:`,promptEval:`Penilaian prompt:`,generation:`Penjanaan:`,modelLoad:`Muat model:`,totalTime:`Jumlah masa:`,generatedAt:`Dijana pada:`},userMenu:{loggedOut:`Berjaya log keluar`,pictureUpdated:`Gambar profil dikemas kini`,failedUpdateAvatar:`Gagal mengemas kini avatar`,failedUpdatePicture:`Gagal mengemas kini gambar profil`,noEmail:`Tiada e-mel`,changePicture:`Tukar gambar`,settings:`Tetapan`,userManagement:`Pengurusan pengguna`,signOut:`Log keluar`,changeProfilePicture:`Tukar gambar profil`},pluginManager:{title:`Pengurus plugin`,upload:`Muat naik`,addJson:`Tambah JSON`,browseHF:`Layari HF Hub`,confirmDelete:`Adakah anda pasti mahu memadam plugin ini?`,uploading:`Memuat naik plugin...`,pasteJson:`Tampal JSON plugin di sini...`,installPlugin:`Pasang plugin`,loading:`Memuatkan plugin...`,noPlugins:`Tiada plugin dipasang`,noPluginsDescription:`Muat naik fail plugin atau tambah plugin dari JSON untuk bermula.`,active:`Aktif`,id:`ID`,endpoint:`Endpoint`,activate:`Aktifkan`,deactivate:`Nyahaktifkan`,activePlugin:`Plugin aktif`,activePluginDescription:`Semua permintaan sembang akan dihalakan melalui plugin ini`,variables:{title:`Pembolehubah`,save:`Simpan`,saving:`Menyimpan...`,saved:`Pembolehubah disimpan`,saveFailed:`Gagal menyimpan pembolehubah`,resetDefaults:`Set semula lalai`,reset:`Pembolehubah ditetapkan semula`,sensitiveSet:`Nilai ditetapkan (masukkan nilai baharu untuk menukar)`,resetFailed:`Gagal menetapkan semula pemboleh ubah`,showValue:`Tunjuk nilai {{label}}`,hideValue:`Sembunyi nilai {{label}}`,connection:`Sambungan`,advanced:`Parameter lanjutan`,inherited:`Gunakan lalai penyedia`,inheritedValue:`Gunakan lalai penyedia ({{value}})`,enabled:`Diaktifkan`,disabled:`Dinyahaktifkan`,required:`Nilai diperlukan`,fullApiEndpoint:`URL endpoint API penuh`,endpointHelp:`Masukkan URL permintaan lengkap, termasuk laluan operasinya (contohnya, /v1/chat/completions), bukan hanya URL asas penyedia.`,invalidUrl:`Masukkan URL endpoint API penuh yang sah, contohnya https://provider.example/v1/chat/completions`,insecureUrl:`Endpoint API mesti menggunakan HTTP atau HTTPS.`,httpWarning:`HTTP tidak menyulitkan kelayakan atau trafik. Gunakannya hanya pada rangkaian yang dipercayai.`,invalidBaseUrl:`URL asas tidak boleh mengandungi rentetan pertanyaan atau cebisan.`,invalidApiPath:`Mesti bermula dengan / dan tidak mengandungi URL, pertanyaan, cebisan, atau segmen ..`,tooLong:`Nilai terlalu panjang`}},huggingface:{title:`Pelayar model HuggingFace`,subtitle:`Layari dan pilih model dari Hub`,searchPlaceholder:`Cari model...`,filters:`Penapis`,task:`Tugas`,sortBy:`Isih mengikut`,noModels:`Tiada model ditemui`,adjustSearch:`Cuba laraskan carian atau penapis anda`,gated:`Terhad`,selected:`Dipilih`,select:`Pilih`,refresh:`Muat semula`,modelsFound:`model ditemui`},demoMode:{title:`Mod demo`,github:`GitHub`},personaBackground:{label:`Imej Latar Belakang`,uploadBackgroundImage:`Muat naik imej latar belakang`,dragAndDrop:`Seret dan lepas imej atau klik untuk melayari`,chooseImage:`Pilih Imej`,uploading:`Memuat naik...`,enterImageUrl:`Atau masukkan URL imej`,supportedFormats:`Menyokong: JPG, PNG, GIF, WebP (maks 5MB). Imej landskap lebar berfungsi terbaik.`,customBackground:`Imej latar belakang tersuai`,clickToChange:`Klik untuk menukar atau membuang`,removed:`Latar belakang dibuang`,uploaded:`Latar belakang berjaya dimuat naik`,invalidFile:`Sila pilih fail imej yang sah`,fileTooLarge:`Saiz imej latar belakang mestilah kurang daripada 5MB`,readFailed:`Gagal membaca fail imej`,uploadFailed:`Gagal memuat naik imej latar belakang`},modelSelector:{searchInstalled:`Search installed models...`,searchOllama:`Search Ollama library...`,searchHuggingFace:`Search HuggingFace...`,selectModel:`Select Model`,personas:`Personas`,ollamaModels:`Ollama Models`,pluginModels:`Plugin Models`,actions:`Actions`,installed:`Installed`,use:`Use`,pull:`Pull`,pullRestricted:`Pemasangan model dihadkan kepada pentadbir sahaja pada instance ini.`,adminOnlyPull:`Pentadbir sahaja`},libreClaw:{title:`Ejen`,subtitle:`Ejen tempatan menjalankan, kelulusan, jadual, ingatan, alatan dan penggunaan.`,dashboard:`Papan pemuka`,connection:{disconnectedTitle:`Daemon Libre Claw tidak disambungkan`,disconnectedDescription:`Mulakannya secara setempat dengan <command>libre-claw start</command> atau tetapkan <env>LIBRE_CLAW_BASE_URL</env> dalam persekitaran bahagian belakang.`},status:{connected:`Bersambung`,disconnected:`Terputus sambungan`,activeRuns:`{{count}} aktif`,activeRuns_plural:`{{count}} aktif`},states:{queued:`Beratur`,running:`Sedang berjalan`,blocked:`Disekat`,done:`Selesai`,failed:`gagal`,cancelled:`Dibatalkan`},startRun:{title:`Mulakan tugas ejen`,placeholder:`Minta Libre Claw untuk memeriksa repo, membetulkan pepijat, menjalankan semakan, menjadualkan laporan...`,chatRun:`Larian sembang`,goalMode:`Mod matlamat`,providerOverride:`Pembatalan pembekal`,modelOverride:`Model menimpa`,run:`Jalankan`},modelRoute:{title:`Laluan Model`,providerPlaceholder:`pembekal`,modelPlaceholder:`model`,persistGlobal:`Berterusan untuk Libre Claw konfigurasi global`,saveModel:`Simpan model`,theme:`Tema Libre Claw`,saveTheme:`Simpan tema`},runs:{title:`Tugas`,empty:`Belum ada tugas Libre Claw.`},timeline:{title:`Garis masa tugas`,empty:`Pilih larian untuk memeriksa acaranya.`,streaming:`Menstrim...`,assistantResponse:`Jawapan pembantu`,resultOk:`ok`,resultError:`kesilapan`,labels:{userMessage:`Mesej pengguna`,toolCall:`Panggilan alat`,toolResult:`Hasil alat`,approvalRequest:`Permintaan kelulusan`,approvalResponse:`Maklum balas kelulusan`,runStarted:`Tugas dimulakan`,runFinished:`Tugas selesai`,usage:`Penggunaan`,error:`ralat`}},approvals:{needed:`Kelulusan diperlukan`,allowOnce:`Izinkan sekali`,alwaysAllowTool:`Sentiasa benarkan alat`,deny:`Tolak`,toolApprovalRequested:`Kelulusan alat diminta`},automations:{title:`Automasi`,namePlaceholder:`Nama`,schedulePlaceholder:`daily 09:00`,promptPlaceholder:`Gesaan automasi`,create:`Buat`,empty:`Tiada automasi Libre Claw yang dijadualkan.`,runNow:`Jalankan sekarang`,pause:`jeda`,resume:`Sambung`,routes:{report:`Laporan`,telegram:`Telegram`},status:{active:`Aktif`,paused:`Dijeda`}},usageFallback:{title:`Penggunaan Dan Fallback`,usage:`Penggunaan`,fallbackRoute:`Laluan Fallback`,noUsage:`Tiada rekod penggunaan lagi.`},metrics:{provider:`Pembekal`,model:`Model`,input:`Input`,output:`Output`,cached:`Dicache`,reasoning:`Penaakulan`,cost:`kos`,tool:`alat`,resolution:`Resolusi`,state:`Status`,stopReason:`Sebab berhenti`,tokens:`{{formatted}} token`,tokens_plural:`{{formatted}} token`},fallbacks:{tool:`alat`,unknown:`tidak diketahui`,resolved:`diselesaikan`,unknownError:`Ralat tidak diketahui`},toasts:{loadStatusFailed:`Tidak dapat memuatkan status Libre Claw`,enterTask:`Masukkan tugasan untuk Libre Claw`,runStarted:`Tugas Libre Claw dimulakan`,startRunFailed:`Tidak dapat memulakan tugas Libre Claw`,runCancelled:`Tugas dibatalkan`,cancelRunFailed:`Tidak dapat membatalkan tugas`,approved:`Diluluskan`,denied:`dinafikan`,resolvePermissionFailed:`Tidak dapat menyelesaikan kebenaran`,providerModelRequired:`Pembekal dan model diperlukan`,modelUpdated:`Model Libre Claw dikemas kini`,updateModelFailed:`Tidak dapat mengemas kini model`,themeUpdated:`Tema Libre Claw dikemas kini`,updateThemeFailed:`Tidak dapat mengemas kini tema`,automationRequired:`Nama automasi, jadual dan segera diperlukan`,automationCreated:`Automasi dibuat`,createAutomationFailed:`Tidak dapat membuat automasi`,automationUpdated:`Automasi dikemas kini`,updateAutomationFailed:`Tidak dapat mengemas kini automasi`}},work:{title:`Kerja`,subtitle:`Ruang kerja model terasing`,tasks:{title:`Tugas Kerja`,subtitle:`Ruang kerja setempat yang berkekalan`,new:`Tugas baharu`,emptyTitle:`Belum ada tugas Kerja`,empty:`Tugas Kerja anda akan dipaparkan di sini selepas anda menghantar mesej pertama.`,untitled:`Tugas tanpa tajuk`,actions:`Tindakan tugas`,delete:`Padam tugas`,deleteNamed:`Padam {{title}}`,deleteConfirm:`Padam “{{title}}” dan ruang kerjanya secara kekal?`,close:`Tutup tugas Kerja`,open:`Buka tugas Kerja`,rename:`Tajuk tugas`,loading:`Memuatkan tugas…`,notFound:`Tugas Kerja ini tidak tersedia`,back:`Mulakan tugas baharu`,status:`Status: {{status}}`},landing:{title:`Mulakan tugas Kerja baharu`,description:`Berikan model setempat atau model penyedia yang dikonfigurasi ruang kerja yang berkekalan dan terasing. Model boleh memeriksa fail, menjalankan alat dan menyambung kerja apabila anda kembali.`,isolated:`Terasing`,isolatedBody:`Setiap tugas mempunyai bekas dan failnya sendiri.`,durable:`Berkekalan`,durableBody:`Kembali kepada perbualan dan ruang kerjanya kemudian.`,controlled:`Terkawal`,controlledBody:`Masa jalan dan fail tugas kekal terasing daripada hos.`},composer:{placeholder:`Terangkan perkara yang ingin anda bina atau ubah…`,model:`Model Kerja`,noModels:`Tiada model yang serasi dengan Kerja`,cancel:`Hentikan`,send:`Jalankan`,hint:`Setiap tugas menyimpan fail dan sejarahnya sendiri. Semak output model sebelum menggunakannya.`,remoteTitle:`Penyedia jauh`,remoteHint:`Perbualan dan output alat dihantar kepada perkhidmatan yang dikonfigurasi. Satu pelaksanaan autonomi boleh membuat beberapa panggilan penyedia dan mungkin dikenakan caj. Fail ruang kerja kekal setempat melainkan alat mengembalikan kandungannya.`,remoteDismiss:`Tutup`,remoteDismissLabel:`Tutup notis penyedia jauh`,remoteDismissFailed:`Tidak dapat menyimpan pilihan penyedia jauh.`,noModelSelected:`Tiada model serasi Kerja yang dipilih.`},conversation:{ready:`Ruang kerja sedia`,empty:`Teruskan tugas di bawah. Perbualan dan failnya kekal dilampirkan pada ruang kerja ini.`,loadOlder:`Muatkan mesej lama`},status:{preparing:`Menyediakan ruang kerja terasing…`,running:`Sedang bekerja dalam ruang kerja setempat…`},statusLabels:{idle:`Tidak aktif`,thinking:`Berfikir`,complete:`Selesai`,needsInput:`Memerlukan input`,error:`Ralat`},live:{connecting:`Menyambung ke kemas kini langsung…`,reconnecting:`Menyambung semula ke kemas kini langsung…`,unavailable:`Kemas kini langsung tidak tersedia`,newActivity:`Aktiviti baharu`,skillsLoaded:`Kemahiran ruang kerja · {{count}}`},runtime:{unavailable:`Masa jalan tidak tersedia`,ready:`Masa jalan sedia`,readyOllama:`Docker sedia`,readyPlugin:`Docker + pemalam sedia`,readyHybrid:`Docker + model sedia`,reason:`Docker dan penyedia model Ollama atau pemalam yang tersedia diperlukan.`},workspace:{label:`Paparan ruang kerja`,files:`Fail`,activity:`Aktiviti`,preview:`Pratonton`,resize:`Ubah saiz perbualan dan ruang kerja`,resizeHint:`Seret untuk mengubah saiz. Gunakan kekunci anak panah untuk kawalan tepat. Klik dua kali atau tekan Enter untuk menetapkan semula.`,splitSize:`Perbualan {{conversation}}%, ruang kerja {{workspace}}%`,terminal:`Terminal`},files:{discard:`Buang perubahan fail yang belum disimpan?`,leaveWithDraft:`Tinggalkan fail ini? Suntingan yang belum disimpan akan kekal sebagai draf pelayar.`,up:`Folder induk`,back:`Kembali ke fail`,empty:`Belum ada fail dalam folder ini.`,select:`Pilih fail untuk diperiksa dan disunting.`,editorLabel:`Penyunting fail: {{path}}`,format:`Format`,formatted:`Kod telah diformat.`,formatFailed:`Tidak dapat memformat fail ini.`,formatShortcut:`Format (Shift+Alt+F)`,formatTooLarge:`Pemformatan terhad kepada fail di bawah 100,000 aksara dan 4,000 baris.`,formatUnsupported:`Pemformatan tidak tersedia untuk jenis fail ini.`,saveShortcut:`Simpan (⌘/Ctrl+S)`,highlightPaused:`Penyerlahan langsung dijeda untuk fail besar agar penyuntingan kekal responsif.`,plainTextLarge:`Teks biasa · fail besar`,changes:`Perubahan`,changesSince:`Apa yang berubah sejak giliran terakhir`,diffLabel:`Perubahan sejak giliran terakhir: {{path}}`,diffFolded:`{{count}} baris tidak berubah`},activity:{empty:`Perintah, operasi fail dan hasil alat akan dipaparkan di sini.`,toolActivity:`Aktiviti alat`,details:`Butiran`,kinds:{message:`Mesej`,toolCall:`Panggilan alat`,toolResult:`Hasil alat`,error:`Ralat`}},preview:{command:`Perintah mula pilihan`,start:`Mulakan pratonton`,stop:`Hentikan pratonton`,open:`Buka`,starting:`Memulakan pratonton…`,frameTitle:`Pratonton ruang kerja`,failed:`Pratonton tidak dapat dimulakan. Semak Aktiviti, kemudian cuba perintah lain.`,empty:`Mulakan aplikasi dalam ruang kerja ini untuk memeriksanya di sini.`},mobile:{surface:`Paparan tugas`,conversation:`Perbualan`,workspace:`Ruang kerja`},toasts:{runFailed:`Tidak dapat memulakan tugas Kerja.`,updateFailed:`Tidak dapat mengemas kini tugas ini.`,renameFailed:`Tidak dapat menamakan semula tugas ini.`,cancelled:`Pelaksanaan Kerja dihentikan.`,cancelFailed:`Tidak dapat menghentikan pelaksanaan Kerja.`,deleteFailed:`Tidak dapat memadam tugas Kerja ini.`,saveFailed:`Tidak dapat menyimpan fail ini.`,saved:`Fail disimpan.`,previewFailed:`Tidak dapat memulakan pratonton.`,previewStopFailed:`Tidak dapat menghentikan pratonton.`},terminal:{connecting:`Membuka shell dalam kotak pasir…`,closed:`Sesi terminal tamat.`,failed:`Sesi terminal tidak dapat dimulakan.`,reconnect:`Sambung semula`,unavailable:`Terminal interaktif tidak tersedia dalam penggunaan ini.`,blockedByRun:`Model sedang menggunakan bekas ini. Terminal dibuka apabila giliran selesai.`,taskRunning:`Giliran model sedang berjalan`}},usageAnalytics:{eyebrow:`Pentadbiran`,title:`Penggunaan Penyedia`,description:`Ikut panggilan API keluar dan penggunaan model merentasi plugin yang didayakan pada instance ini.`,days:`{{count}} hari`,refresh:`Muat semula penggunaan`,loadFailed:`Penggunaan penyedia tidak dapat dimuatkan.`,metrics:{calls:`Panggilan`,tokens:`Token`},cards:{calls:`Panggilan API`,callsDetail:`Merentasi {{count}} pengguna aktif`,tokens:`Token dilaporkan`,tokensDetail:`Penggunaan dilaporkan pada {{count}} panggilan`,success:`Kadar kejayaan`,successDetail:`{{count}} panggilan gagal`,latency:`Latensi purata`,latencyDetail:`Masa pembekal hujung ke hujung`},activity:{title:`Penggunaan dari semasa ke semasa`,callsDescription:`Permintaan keluar harian kepada pemalam yang didayakan`,tokensDescription:`Jumlah token harian dilaporkan oleh pembekal`,chartLabel:`Carta {{metric}} pembekal harian`},models:{title:`Penggunaan model`,description:`Model yang membawa trafik paling banyak dalam tempoh ini.`,model:`Model`,success:`Berjaya`,latency:`Latensi`},providers:{title:`Trafik pemalam didayakan`},capabilities:{title:`Campuran keupayaan`,characters:`{{count}} aksara`,images:`{{count}} imej`,jobs:`{{count}} kerja video`,inputs:`{{count}} input`,reportedTokens:`{{count}} token dilaporkan`},empty:{title:`Tiada panggilan pembekal lagi`,description:`Panggilan akan dipaparkan di sini selepas pemalam yang didayakan mengendalikan permintaan sembang, Work, pembenaman, imej, pertuturan, bunyi, atau video.`},privacyNote:`Penggunaan diukur pada pelayan di sempadan pemalam keluar. Libre WebUI menyimpan pembekal, model, masa, status, dan pembilang dilaporkan—tidak pernah gesaan, respons, titik akhir, kelayakan, atau badan ralat pembekal. Jumlah token hanya termasuk panggilan di mana pembekal memulangkan metadata penggunaan.`},systemPage:{eyebrow:`Pentadbiran`,title:`Sistem`,description:`Pantau mesin dan masa jalan yang menempatkan kejadian Libre WebUI ini.`,updated:`Dikemas kini {{date}}`,refresh:`Muat semula maklumat sistem`,loadFailed:`Maklumat sistem tidak dapat dimuatkan.`,cards:{uptime:`Masa hidup hos`,uptimeDetail:`Berjalan sejak {{date}}`,memory:`Ingatan digunakan`,memoryDetail:`{{used}} daripada {{total}}`,freeSpace:`Ruang kosong`,freeSpaceDetail:`{{label}} · {{total}} jumlah`,containers:`Kontena berjalan`,containersDetail:`{{total}} kontena diketahui oleh Docker`,dockerUnavailable:`Docker tidak tersedia`,unavailable:`Tidak tersedia`},host:{title:`Hos & masa jalan`,description:`Butiran sistem pengendalian, pemproses, dan proses Libre WebUI.`,container:`Masa jalan kontena`,native:`Runtime asli`,hostname:`Nama hos`,operatingSystem:`Sistem pengendalian`,processor:`Pemproses`,logicalCpus:`CPU logikal`,loadAverage:`Purata beban · 1 / 5 / 15 min`,libreVersion:`Libre WebUI`,nodeVersion:`Node.js`,process:`Proses`,workingDirectory:`Direktori kerja`},memory:{title:`Memori`,description:`Memori sistem yang kelihatan pada runtime dan penggunaan proses aplikasi.`,usedOf:`{{used}} digunakan daripada {{total}}`,free:`{{value}} bebas`,processRss:`RSS Proses`,heapUsed:`Timbunan V8 digunakan`,heapTotal:`Jumlah timbunan V8`,external:`Memori luaran`},storage:{title:`Storan`,description:`Ruang tersedia untuk sistem fail runtime dan data aplikasi kekal.`,used:`{{value}} digunakan`,free:`{{value}} bebas`,empty:`Maklumat sistem fail tidak tersedia dalam runtime ini.`},docker:{title:`Docker`,description:`Status Docker Engine baca-sahaja dan senarai kontena yang dikurangkan.`,connected:`Disambung`,unavailable:`Tidak tersedia`,unavailableDetail:`Diagnostics Docker Engine tidak tersedia.`,socketStatus:`Soket tempatan: {{status}}`,mounted:`dilekap`,notMounted:`tidak dilekap`,running:`Berjalan`,stopped:`Dihentikan`,paused:`Dijeda`,total:`Jumlah`,version:`Versi`,host:`Hos`,architecture:`Seni bina`,cpus:`CPU`,memory:`Memori`,container:`Kontena`,image:`Imej`,state:`Keadaan`,created:`Dicipta`,empty:`Docker disambung dan tiada kontena disenaraikan buat masa ini.`},network:{title:`Rangkaian`,description:`Antara muka, alamat dan pengira trafik Linux yang boleh dilihat pada masa jalan.`,internal:`dalaman`,empty:`Tiada antara muka rangkaian yang boleh dilihat oleh masa jalan aplikasi.`},securityNote:`Halaman ini terhad kepada pentadbir. Pelayan hanya memulangkan ringkasan operasi: ia tidak mendedahkan pembolehubah persekitaran, kelayakan, label Docker, lekap, arahan kontena atau muatan pemeriksaan. Apabila Libre WebUI berjalan dalam kontena, butiran CPU dan ingatan peringkat hos datang dari Docker Engine apabila soket tempatannya tersedia; nilai lain menerangkan masa jalan aplikasi.`},mediaGeneration:{title:`Jana media`,description:`Cipta video, bunyi, muzik atau ucapan dengan penyedia media yang diaktifkan.`,image:`Imej`,video:`Video`,audio:`Audio`,sound:`Bunyi`,speech:`Ucapan`,model:`Model`,voice:`Suara atau ID suara`,resolution:`Resolusi`,aspectRatio:`Nisbah bidang`,duration:`Tempoh`,providerDefault:`Lalai penyedia`,generateAudio:`Jana audio dengan video apabila disokong`,prompt:`Gesaan`,text:`Teks untuk dilafazkan`,videoPlaceholder:`Huraikan adegan, gerakan, kamera dan pencahayaan...`,audioPlaceholder:`Masukkan teks yang anda mahu suara lafazkan...`,soundPlaceholder:`Huraikan bunyi, muzik, suasana atau respons lisan yang anda mahu...`,generate:`Jana`,generating:`Menjana… ini boleh mengambil masa beberapa minit`,success:`Media dijana dan disimpan ke Imagine`,failed:`Gagal menjana media`,loadFailed:`Gagal memuatkan penyedia media`,noModels:`Tiada model {{kind}} tersedia. Aktifkan penyedia yang serasi dan simpan kelayakannya dahulu.`},mediaGallery:{itemCount:`{{count}} item`,empty:`Belum ada media dijana`,emptyHint:`Jana imej, video atau klip suara dan ia akan dipaparkan di sini.`,filters:{all:`Semua`,image:`Imej`,video:`Video`,audio:`Audio`}}};export{e as default};