libre-webui 0.16.0 → 0.17.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 (167) hide show
  1. package/README.md +237 -149
  2. package/backend/dist/db.d.ts.map +1 -1
  3. package/backend/dist/db.js +5 -0
  4. package/backend/dist/db.js.map +1 -1
  5. package/backend/dist/index.d.ts.map +1 -1
  6. package/backend/dist/index.js +2 -0
  7. package/backend/dist/index.js.map +1 -1
  8. package/backend/dist/routes/agentCli.d.ts +3 -0
  9. package/backend/dist/routes/agentCli.d.ts.map +1 -0
  10. package/backend/dist/routes/agentCli.js +33 -0
  11. package/backend/dist/routes/agentCli.js.map +1 -0
  12. package/backend/dist/routes/chat.d.ts.map +1 -1
  13. package/backend/dist/routes/chat.js +27 -0
  14. package/backend/dist/routes/chat.js.map +1 -1
  15. package/backend/dist/routes/plugins.d.ts.map +1 -1
  16. package/backend/dist/routes/plugins.js +10 -3
  17. package/backend/dist/routes/plugins.js.map +1 -1
  18. package/backend/dist/routes/work.d.ts.map +1 -1
  19. package/backend/dist/routes/work.js +25 -3
  20. package/backend/dist/routes/work.js.map +1 -1
  21. package/backend/dist/services/agentCliService.d.ts +30 -0
  22. package/backend/dist/services/agentCliService.d.ts.map +1 -0
  23. package/backend/dist/services/agentCliService.js +328 -0
  24. package/backend/dist/services/agentCliService.js.map +1 -0
  25. package/backend/dist/services/chatGenerationService.d.ts.map +1 -1
  26. package/backend/dist/services/chatGenerationService.js +19 -1
  27. package/backend/dist/services/chatGenerationService.js.map +1 -1
  28. package/backend/dist/services/pluginService.d.ts +42 -1
  29. package/backend/dist/services/pluginService.d.ts.map +1 -1
  30. package/backend/dist/services/pluginService.js +143 -12
  31. package/backend/dist/services/pluginService.js.map +1 -1
  32. package/backend/dist/services/workAgentGuidance.js +1 -1
  33. package/backend/dist/services/workAgentGuidance.js.map +1 -1
  34. package/backend/dist/services/workAgentService.d.ts.map +1 -1
  35. package/backend/dist/services/workAgentService.js +37 -0
  36. package/backend/dist/services/workAgentService.js.map +1 -1
  37. package/backend/dist/services/workHostWorkspaceService.d.ts +22 -0
  38. package/backend/dist/services/workHostWorkspaceService.d.ts.map +1 -0
  39. package/backend/dist/services/workHostWorkspaceService.js +136 -0
  40. package/backend/dist/services/workHostWorkspaceService.js.map +1 -0
  41. package/backend/dist/services/workRuntimeService.d.ts +61 -3
  42. package/backend/dist/services/workRuntimeService.d.ts.map +1 -1
  43. package/backend/dist/services/workRuntimeService.js +311 -17
  44. package/backend/dist/services/workRuntimeService.js.map +1 -1
  45. package/backend/dist/services/workTaskService.d.ts +3 -3
  46. package/backend/dist/services/workTaskService.d.ts.map +1 -1
  47. package/backend/dist/services/workTaskService.js +10 -6
  48. package/backend/dist/services/workTaskService.js.map +1 -1
  49. package/backend/dist/services/workTerminalService.d.ts +46 -0
  50. package/backend/dist/services/workTerminalService.d.ts.map +1 -0
  51. package/backend/dist/services/workTerminalService.js +241 -0
  52. package/backend/dist/services/workTerminalService.js.map +1 -0
  53. package/backend/dist/types/index.d.ts +1 -1
  54. package/backend/dist/types/index.d.ts.map +1 -1
  55. package/backend/dist/types/work.d.ts +22 -0
  56. package/backend/dist/types/work.d.ts.map +1 -1
  57. package/backend/dist/utils/chatProviderSelection.d.ts.map +1 -1
  58. package/backend/dist/utils/chatProviderSelection.js +7 -5
  59. package/backend/dist/utils/chatProviderSelection.js.map +1 -1
  60. package/backend/dist/websocketServer.d.ts.map +1 -1
  61. package/backend/dist/websocketServer.js +51 -14
  62. package/backend/dist/websocketServer.js.map +1 -1
  63. package/backend/dist/workTerminalServer.d.ts +17 -0
  64. package/backend/dist/workTerminalServer.d.ts.map +1 -0
  65. package/backend/dist/workTerminalServer.js +224 -0
  66. package/backend/dist/workTerminalServer.js.map +1 -0
  67. package/backend/package.json +1 -1
  68. package/frontend/dist/assets/index-BqI0kezz.css +1 -0
  69. package/frontend/dist/assets/index-CRC6g6bL.js +3 -0
  70. package/frontend/dist/assets/xterm-CmMoOwwu.css +1 -0
  71. package/frontend/dist/index.html +8 -6
  72. package/frontend/dist/js/ArtifactContainer-Cdy-973y.js +1 -0
  73. package/frontend/dist/js/{ArtifactDemoPage-DBVPHFxk.js → ArtifactDemoPage-B4qsvUnF.js} +1 -1
  74. package/frontend/dist/js/ArtifactSlideOutPanel-CmKgQ4eD.js +1 -0
  75. package/frontend/dist/js/{Button-DBk-AREB.js → Button-CRwzOaDZ.js} +1 -1
  76. package/frontend/dist/js/ChatPage-CYT69oBR.js +16 -0
  77. package/frontend/dist/js/FirstTimeSetup-C8LdLP5J.js +1 -0
  78. package/frontend/dist/js/GalleryPage-Bm89pnS8.js +1 -0
  79. package/frontend/dist/js/HomePage-CeCYnMUG.js +1 -0
  80. package/frontend/dist/js/{LibreClawPage-qGr1Jy8p.js → LibreClawPage-DGMEV6dm.js} +1 -1
  81. package/frontend/dist/js/{ModelManagerModals-DltRprHU.js → ModelManagerModals-DMoEav1l.js} +1 -1
  82. package/frontend/dist/js/ModelSelector-DXPdGdQ_.js +1 -0
  83. package/frontend/dist/js/ModelsPage-D-FIy2x-.js +2 -0
  84. package/frontend/dist/js/PersonasPage-CIrEVFo5.js +13 -0
  85. package/frontend/dist/js/RichMessageContent-BJ49VN9j.js +3 -0
  86. package/frontend/dist/js/SettingsModal-CxtOXPY7.js +1 -0
  87. package/frontend/dist/js/UserManagementPage-BfyYGGFQ.js +1 -0
  88. package/frontend/dist/js/WorkPage-C7bW6Hxx.js +4 -0
  89. package/frontend/dist/js/addon-fit-Cj0_dfHF.js +1 -0
  90. package/frontend/dist/js/api-DCD41-l9.js +19 -0
  91. package/frontend/dist/js/appStore-Bw-8Exsx.js +2 -0
  92. package/frontend/dist/js/ar-BAHlIvy0.js +2 -0
  93. package/frontend/dist/js/authStore-mOYH_AXI.js +4 -0
  94. package/frontend/dist/js/bn-BxquDVbd.js +2 -0
  95. package/frontend/dist/js/{cs-6UKhKj0A.js → cs-C4DoKzRm.js} +2 -2
  96. package/frontend/dist/js/da-CFslpGTw.js +2 -0
  97. package/frontend/dist/js/de-ChudoRh2.js +2 -0
  98. package/frontend/dist/js/es-B36fefE-.js +2 -0
  99. package/frontend/dist/js/{estree-PDLT672k.js → estree-0vwU39qX.js} +1 -1
  100. package/frontend/dist/js/fr-BSVeTM5W.js +2 -0
  101. package/frontend/dist/js/hi-BGoFbl5V.js +2 -0
  102. package/frontend/dist/js/{html-CkhF9wDQ.js → html-CApr2Bvi.js} +1 -1
  103. package/frontend/dist/js/id-BfYs2p_j.js +2 -0
  104. package/frontend/dist/js/{is-BWSbAIoq.js → is-DZ1MS-5A.js} +2 -2
  105. package/frontend/dist/js/it-CXtrPCG1.js +2 -0
  106. package/frontend/dist/js/ja-FPJ_NK_y.js +2 -0
  107. package/frontend/dist/js/ko-DVwD4ZZF.js +2 -0
  108. package/frontend/dist/js/{markdown-B1iNUbse.js → markdown-C78Qc6xu.js} +1 -1
  109. package/frontend/dist/js/ms-PKPP0RX3.js +2 -0
  110. package/frontend/dist/js/nl-DWM5HJZ8.js +2 -0
  111. package/frontend/dist/js/pl-B9va8Tuf.js +2 -0
  112. package/frontend/dist/js/pt-P0IQi-Zr.js +2 -0
  113. package/frontend/dist/js/ru-Ca2bxYnc.js +2 -0
  114. package/frontend/dist/js/{standalone-CCd6rkf-.js → standalone-DmLfI4Qj.js} +1 -1
  115. package/frontend/dist/js/sv-DI4RDwyZ.js +2 -0
  116. package/frontend/dist/js/th-DN0bDS9d.js +2 -0
  117. package/frontend/dist/js/tr-ChqMv5Q4.js +2 -0
  118. package/frontend/dist/js/{typescript-DKJ1uM5L.js → typescript-Bcq62agC.js} +1 -1
  119. package/frontend/dist/js/{ui-vendor-CAFEDSaO.js → ui-vendor-DohPFHDW.js} +1 -1
  120. package/frontend/dist/js/uk-Cr51h_XQ.js +2 -0
  121. package/frontend/dist/js/useBaseQuery-BAOlhjar.js +1 -0
  122. package/frontend/dist/js/useQuery-CcRqxveh.js +1 -0
  123. package/frontend/dist/js/utils-DmZD5uA3.js +1 -0
  124. package/frontend/dist/js/{vi-82JkwFsQ.js → vi-D4OhoVMH.js} +2 -2
  125. package/frontend/dist/js/work-DVgm81bJ.js +1 -0
  126. package/frontend/dist/js/xterm-DKl1QLiw.js +7 -0
  127. package/frontend/dist/js/zh-Bvau7hlR.js +2 -0
  128. package/package.json +3 -3
  129. package/frontend/dist/assets/index-CKV9Lnj8.js +0 -5
  130. package/frontend/dist/assets/index-Dme2Ozol.css +0 -1
  131. package/frontend/dist/js/ArtifactContainer-B0uVR8Z9.js +0 -1
  132. package/frontend/dist/js/ArtifactSlideOutPanel-Cg5kAwv9.js +0 -1
  133. package/frontend/dist/js/ChatPage-CPHlIZqU.js +0 -16
  134. package/frontend/dist/js/FirstTimeSetup-DksL5arK.js +0 -1
  135. package/frontend/dist/js/GalleryPage-1mdUGo_N.js +0 -1
  136. package/frontend/dist/js/ModelSelector-CUnwRmNU.js +0 -1
  137. package/frontend/dist/js/ModelsPage-DMYVg3LT.js +0 -2
  138. package/frontend/dist/js/PersonasPage-Ct-KKW-j.js +0 -13
  139. package/frontend/dist/js/RichMessageContent-CGBAcUES.js +0 -3
  140. package/frontend/dist/js/SettingsModal-BVj3gFCS.js +0 -1
  141. package/frontend/dist/js/UserManagementPage-D3tLGtTu.js +0 -1
  142. package/frontend/dist/js/WorkPage-DhTjy-kf.js +0 -2
  143. package/frontend/dist/js/api-YWoSobKv.js +0 -19
  144. package/frontend/dist/js/ar-KceI0PfT.js +0 -2
  145. package/frontend/dist/js/bn-DsKo2dzS.js +0 -2
  146. package/frontend/dist/js/da-CJgZ3YuL.js +0 -2
  147. package/frontend/dist/js/de-BZAmOuCT.js +0 -2
  148. package/frontend/dist/js/es-CD4u7no9.js +0 -2
  149. package/frontend/dist/js/fr-Cou2jOS3.js +0 -2
  150. package/frontend/dist/js/hi-ZxkbNCyB.js +0 -2
  151. package/frontend/dist/js/id-DT9CqaWQ.js +0 -2
  152. package/frontend/dist/js/it-CdNoTXm3.js +0 -2
  153. package/frontend/dist/js/ja-CIuQg0xv.js +0 -2
  154. package/frontend/dist/js/ko-BWRUjDOH.js +0 -2
  155. package/frontend/dist/js/ms-gJstIj2a.js +0 -2
  156. package/frontend/dist/js/nl-CydjVNUw.js +0 -2
  157. package/frontend/dist/js/pl-DPN9mAa5.js +0 -2
  158. package/frontend/dist/js/pt-MRXGqIjQ.js +0 -2
  159. package/frontend/dist/js/ru-CvQ9GkJF.js +0 -2
  160. package/frontend/dist/js/sv-BxS2fvhU.js +0 -2
  161. package/frontend/dist/js/th-DMxyn6e4.js +0 -2
  162. package/frontend/dist/js/tr-BTPldUaA.js +0 -2
  163. package/frontend/dist/js/uk-BGxZOKgp.js +0 -2
  164. package/frontend/dist/js/useBaseQuery-MuQj7vA5.js +0 -1
  165. package/frontend/dist/js/useQuery-CYGPkxWR.js +0 -1
  166. package/frontend/dist/js/utils-pTFqSV8c.js +0 -1
  167. package/frontend/dist/js/zh-Bxxfwci3.js +0 -2
@@ -0,0 +1,2 @@
1
+ var e={common:{loading:`Carregando...`,save:`Salvar`,saving:`Salvando...`,cancel:`Cancelar`,delete:`Excluir`,edit:`Editar`,close:`Fechar`,back:`Voltar`,next:`Próximo`,confirm:`Confirmar`,error:`Erro`,success:`Sucesso`,warning:`Aviso`,or:`ou`,optional:`opcional`,enabled:`Ativado`,disabled:`Desativado`,on:`Ligado`,off:`Desligado`,yes:`Sim`,no:`Não`,search:`Pesquisar`,noResults:`Nenhum resultado encontrado`,retry:`Tentar novamente`,refresh:`Atualizar`,download:`Baixar`,upload:`Enviar`,export:`Exportar`,import:`Importar`,reset:`Redefinir`,apply:`Aplicar`,clear:`Limpar`,all:`Todos`,none:`Nenhum`,default:`Padrão`,custom:`Personalizado`,remove:`Remover`},brand:{name:`Libre WebUI`,shortName:`Libre`},auth:{login:{title:`Bem-vindo de volta`,subtitle:`Entre na sua conta para continuar`,username:`Usuário`,usernamePlaceholder:`Digite seu nome de usuário`,password:`Senha`,passwordPlaceholder:`Digite sua senha`,signIn:`Entrar`,signingIn:`Entrando...`,noAccount:`Não tem uma conta?`,signUpHere:`Cadastre-se aqui`,loginSuccess:`Login realizado com sucesso!`,loginFailed:`Falha no login`,checkCredentials:`Falha no login. Por favor, verifique suas credenciais.`,enterBoth:`Por favor, digite o usuário e a senha`,githubSuccess:`Login com GitHub realizado com sucesso!`,githubFailed:`Falha na autenticação do GitHub`,githubVerifyFailed:`Falha ao verificar autenticação do GitHub`},signup:{title:`Criar conta`,subtitle:`Cadastre-se para criar sua nova conta`,username:`Usuário`,usernamePlaceholder:`Escolha um nome de usuário`,email:`E-mail`,emailPlaceholder:`seu@email.com`,password:`Senha`,passwordPlaceholder:`Escolha uma senha`,confirmPassword:`Confirmar senha`,confirmPasswordPlaceholder:`Confirme sua senha`,createAccount:`Criar conta`,creatingAccount:`Criando conta...`,hasAccount:`Já tem uma conta?`,signInHere:`Entre aqui`,signupSuccess:`Conta criada com sucesso!`,signupFailed:`Falha no cadastro`,tryAgain:`Falha no cadastro. Por favor, tente novamente.`,usernameRequired:`Usuário e senha são obrigatórios`,passwordMismatch:`As senhas não coincidem`,passwordTooShort:`A senha deve ter pelo menos 6 caracteres`},logout:{button:`Sair`,success:`Desconectado com sucesso`},oauth:{continueWith:`Continuar com {{provider}}`,connectingTo:`Conectando ao {{provider}}...`,github:`GitHub`,huggingFace:`Hugging Face`},checkingAuth:`Verificando autenticação...`,welcome:`Bem-vindo`,noEmail:`Sem e-mail fornecido`,role:`Função`,id:`ID`,userId:`ID do usuário`,signInDescription:`Entre com sua conta GitHub para continuar`,signInWithGitHub:`Entrar com GitHub`,jwtActive:`Autenticação JWT ativa`,jwtDescription:`Autenticação baseada em JWT com GitHub OAuth`,github:`GitHub`,provider:`Provedor`},setup:{welcome:{title:`Bem-vindo ao Libre WebUI`,subtitle:`Vamos começar`,description:`Configure sua instância do Libre WebUI em poucos passos`,createAdmin:`Criar conta de administrador`,features:{secure:{title:`Seguro e Privado`,description:`Suas conversas ficam no seu dispositivo`},fast:{title:`Rápido e Responsivo`,description:`Otimizado para velocidade e desempenho`},openSource:{title:`Código Aberto`,description:`Software livre e de código aberto`}}},admin:{title:`Criar conta de administrador`,subtitle:`Configuração do Administrador`,description:`Crie a primeira conta de administrador para sua instância do Libre WebUI`,usernamePlaceholder:`Digite o nome de usuário do admin`,passwordPlaceholder:`Digite a senha (mín. 6 caracteres)`,confirmPlaceholder:`Confirme sua senha`,creating:`Criando...`,createAdmin:`Criar Admin`,success:`Conta de administrador criada com sucesso!`,failed:`Falha ao criar conta de administrador`,fillAllFields:`Por favor, preencha todos os campos`,note:`Esta será a conta de administrador principal da sua instância do Libre WebUI`},encryptionKey:{title:`Salve sua chave de criptografia`,subtitle:`Importante: Salve esta chave`,description:`Esta chave de criptografia protege seus dados sensíveis. Guarde-a com segurança - você precisará dela caso precise restaurar seu banco de dados.`,warning:`Aviso`,warningText:`Se você perder esta chave e precisar restaurar seu banco de dados, seus dados criptografados (chaves de API, preferências) serão irrecuperáveis.`,label:`Sua chave de criptografia`,loading:`Carregando...`,copyToClipboard:`Copiar para a área de transferência`,copied:`Chave de criptografia copiada!`,copyFailed:`Falha ao copiar a chave`,envNote:`Esta chave também está salva no arquivo backend/.env como ENCRYPTION_KEY`,acknowledgment:`Salvei minha chave de criptografia em um local seguro e entendo que perdê-la pode resultar em perda de dados.`,confirmRequired:`Por favor, confirme que você salvou a chave de criptografia`,continue:`Continuar para o Libre WebUI`}},chat:{greeting:{morning:`Bom dia`,afternoon:`Boa tarde`,evening:`Boa tarde`,night:`Boa noite`},welcome:{helpToday:`Como posso ajudar você hoje?`,helpTonight:`Como posso ajudar você esta noite?`,variety:{create:{title:`O que vamos criar?`,subtitle:`Comece com um pensamento, um rascunho ou um problema insistente.`},explore:{title:`Por onde começamos?`,subtitle:`Traga aquela pergunta que não sai da sua cabeça.`},imagine:{title:`O que você está imaginando?`,subtitle:`Podemos dar forma a isso juntos.`},focus:{title:`O que merece sua atenção?`,subtitle:`Vamos deixar claro o próximo passo.`},untangle:{title:`Onde está o nó?`,subtitle:`Comece pela versão bagunçada.`},momentum:{title:`Quando você estiver pronto.`,subtitle:`Retome uma ideia, um plano ou algo que ficou pela metade.`},open:{title:`O que está passando pela sua cabeça?`,subtitle:`Uma pequena ideia ou um projeto ambicioso. Os dois funcionam.`},challenge:{title:`O que vamos resolver?`,subtitle:`Conte o que ainda não está funcionando.`},draft:{title:`Vamos começar por algum lugar.`,subtitle:`Não precisa estar perfeito.`},possibility:{title:`No que isso poderia se transformar?`,subtitle:`Mostre o material bruto.`},unexpected:{title:`Vamos criar algo inesperado.`,subtitle:`Dê uma restrição, um clima ou uma ideia ainda pela metade.`}}},input:{placeholder:`Envie uma mensagem`,messagePlaceholder:`Mensagem...`,attachImages:`Anexar imagens`,attachments:`Anexos e recursos avançados`,sendMessage:`Enviar mensagem`,stopGeneration:`Parar geração`},session:{new:`Nova conversa`,work:`Trabalho`,chat:`Chat`,private:`Privado`,privateMode:`Modo Privado`,privateDescription:`Esta conversa não será salva`,privateTooltip:`Iniciar uma conversa privada que não será salva`,deleteConfirm:`Tem certeza de que deseja excluir esta conversa?`,generatingTitle:`Gerando título`,noChats:`Nenhuma conversa ainda`,createFirst:`Crie sua primeira conversa acima`,chats:`Conversas`,renameChat:`Renomear conversa`,deleteChat:`Excluir conversa`},persona:{applied:`Persona aplicada`,label:`Persona`},model:{updated:`Modelo atualizado`,noModels:`Nenhum modelo disponível`,noModelsDescription:`Nenhum modelo disponível. Certifique-se de que o Ollama está em execução e tem modelos instalados.`,pullCommand:`ollama pull llama3.2:3b`,noModelsTooltip:`Nenhum modelo disponível. Verifique se o Ollama está em execução e se os modelos estão instalados.`},footer:{disclaimer:`IAs podem cometer erros - verifique informações importantes`,images:`{{count}} imagem`,images_plural:`{{count}} imagens`,structuredOutput:`Saída estruturada`},mediaUpload:{dropImagesHere:`Solte as imagens aqui ou`,supportedFormats:`Formatos suportados: JPG, PNG, GIF, WebP (máx. 10MB cada)`,browse:`procure`},structuredOutput:{title:`Formato de Resposta`,none:`Nenhum (Linguagem Natural)`,noneDescription:`Resposta padrão em linguagem natural`,json:`JSON`,jsonDescription:`Formato JSON estruturado`,list:`Lista`,listDescription:`Array de itens`,summary:`Resumo`,summaryDescription:`Resumo do documento com pontos-chave`,analysis:`Análise`,analysisDescription:`Análise estruturada com prós e contras`,custom:`Esquema Personalizado`,customDescription:`Defina seu próprio esquema JSON`,customSchema:`Esquema JSON personalizado`,schemaPreview:`Pré-visualização do Esquema`,applySchema:`Aplicar Esquema`,cancel:`Cancelar`,enabled:`Saída estruturada ativada`}},sidebar:{navigation:{chat:`Chat`,models:`Modelos`,personas:`Personas`,imagine:`Imaginar`,settings:`Configurações`,userManagement:`Gerenciamento de Usuários`,signOut:`Sair`,agents:`Agentes`,work:`Trabalho`,exploreLabel:`Explorar`},toggleSize:`Alternar tamanho da barra lateral`,expandSidebar:`Expandir barra lateral`},user:{menu:{changePicture:`Alterar foto`,settings:`Configurações`,userManagement:`Gerenciamento de Usuários`,logout:`Sair`},avatar:{title:`Alterar foto de perfil`,updated:`Foto de perfil atualizada`,updateFailed:`Falha ao atualizar foto de perfil`,saving:`Salvando...`,label:`Avatar`,uploadAvatarImage:`Carregar imagem de avatar`,dragAndDrop:`Arraste e solte uma imagem ou clique para procurar`,chooseImage:`Escolher imagem`,uploading:`Carregando...`,enterImageUrl:`Ou insira URL da imagem`,supportedFormats:`Suporta: JPG, PNG, GIF, WebP (máx. 2 MB). Imagens quadradas funcionam melhor.`,customAvatar:`Imagem de avatar personalizada`,clickToChange:`Clique para alterar ou remover`,removed:`Avatar removido`,uploaded:`Avatar carregado com sucesso`,invalidFile:`Por favor, selecione um arquivo de imagem válido`,fileTooLarge:`O tamanho da imagem do avatar deve ser menor que 2 MB`,readFailed:`Falha ao ler o arquivo de imagem`,uploadFailed:`Falha ao carregar imagem do avatar`},profile:{noEmail:`E-mail não informado`}},settings:JSON.parse(`{"title":"Configurações","tabs":{"appearance":"Aparência","model":"Modelo","systemMessage":"Mensagem do Sistema","plugins":"Plugins","generation":"Geração","documents":"Documentos","tts":"Voz","imageGen":"Imagens","data":"Dados","about":"Sobre"},"appearance":{"title":"Aparência","language":{"title":"Idioma","description":"Selecione seu idioma preferido"},"theme":{"title":"Tema","light":"Claro","dark":"Escuro","amoled":"Preto Puro","system":"Sistema"},"accent":{"title":"Cor de destaque","custom":"Cor personalizada","useColor":"Usar {{color}} como destaque","behaviorTitle":"Paleta da interface","behaviorDescription":"Escolha se a cor de destaque fica limitada aos controlos ou adapta toda a interface clara ou escura.","defaultStyle":"Predefinida","defaultStyleDescription":"Manter as superfícies neutras dos temas claro e escuro.","adaptedStyle":"Adaptar ao destaque","adaptedStyleDescription":"Tingir superfícies, contornos e texto com a cor de destaque."},"chatInterface":{"title":"Interface do Chat","showUsername":"Mostrar nome de usuário","showUsernameDescription":"Exibir nome de usuário nas mensagens do chat"},"background":{"title":"Imagem de Fundo","enable":"Ativar imagem de fundo","enableDescription":"Mostrar fundo personalizado com efeito de desfoque","blur":"Desfoque","opacity":"Opacidade","upload":"Enviar imagem de fundo","dragDrop":"Arraste e solte uma imagem ou clique para procurar","chooseImage":"Escolher Imagem"}},"saveSettings":"Salvar Configurações","model":{"title":"Configurações do Modelo","defaultModel":"Modelo Padrão","defaultModelDescription":"Este modelo será usado por padrão para novas conversas","selectModel":"Selecione um modelo","updateAll":"Atualizar Todos os Modelos","updateAllDescription":"Verificar atualizações e baixar as versões mais recentes de todos os modelos instalados","updateAllButton":"Atualizar Todos","updating":"Atualizando modelos...","currentModelInfo":"Informações do Modelo Atual","name":"Nome","size":"Tamanho","family":"Família","format":"Formato","status":"Status","statusStarting":"Iniciando...","statusComplete":"Completo","statusError":"Erro","bulkOperations":"Operações em Lote","autoTitle":{"title":"Geração Automática de Títulos","enable":"Ativar Título Automático","enableDescription":"Gerar automaticamente títulos para novas conversas","taskModel":"Modelo de Tarefas","selectTaskModel":"Selecione o modelo de tarefas","taskModelDescription":"Modelo usado para gerar títulos das conversas"},"persona":"Persona","updatingModel":"Atualizando {{name}} ({{current}}/{{total}})","modelsProgress":"{{current}} de {{total}} modelos","modelPullAccess":"Acesso à instalação de modelos","modelPullAccessDescription":"Permitir que usuários não administradores baixem e instalem novos modelos.","modelPullAccessSaved":"Permissões de instalação de modelos atualizadas","modelPullAccessSaveFailed":"Falha ao atualizar permissões de instalação de modelos"},"systemMessage":{"title":"Mensagem do Sistema","description":"Defina uma mensagem de sistema personalizada que será usada para todas as novas conversas.","placeholder":"Digite uma mensagem de sistema...","saved":"Mensagem do sistema salva","saveFailed":"Falha ao salvar mensagem do sistema"},"plugins":{"title":"Plugins","description":"Gerencie seus plugins instalados","addNew":"Adicionar Novo Plugin","upload":"Enviar Plugin","addJson":"Adicionar JSON","uploading":"Enviando...","jsonPlaceholder":"Cole a configuração JSON do plugin...","install":"Instalar Plugin","noPlugins":"Nenhum plugin instalado","noPluginsDescription":"Adicione um plugin para estender a funcionalidade","loading":"Carregando plugins...","installed":"Plugins Instalados","active":"Plugins Ativos","activeLabel":"Ativo","inactive":"Inativo","activate":"Ativar","deactivate":"Desativar","models":"modelos","apiKeySet":"Chave de API Definida","apiKeyConfiguration":"Configuração da Chave de API","apiKeyEnvAlternative":"Alternativamente, defina a","environmentVariable":"variável de ambiente","apiKeyConfigured":"Chave de API configurada","apiKeyPlaceholder":"Digite sua chave de API...","saveApiKey":"Salvar Chave de API","apiKey":{"title":"Chave de API","placeholder":"Digite a chave de API","save":"Salvar Chave","remove":"Remover Chave","configured":"Chave de API Configurada","notConfigured":"Chave de API Necessária","saved":"Chave de API salva com sucesso","removed":"Chave de API removida","saveFailed":"Falha ao salvar chave de API","removeFailed":"Falha ao remover chave de API","enterKey":"Por favor, digite uma chave de API"},"variables":"Variables"},"generation":{"title":"Opções de Geração","description":"Configure como a IA gera as respostas","coreParameters":"Parâmetros Principais","temperature":"Temperatura","temperatureDescription":"Controla a aleatoriedade. Valores baixos são mais focados, valores altos mais criativos.","topP":"Top P","topPDescription":"Controla a diversidade via amostragem de núcleo. Valores baixos focam em tokens prováveis.","topK":"Top K","topKDescription":"Limita a seleção de tokens aos K mais prováveis. Defina 0 para desativar.","minP":"Min P","minPDescription":"Limite mínimo de probabilidade para seleção de tokens.","generationControl":"Controle de Geração","maxTokens":"Máximo de Tokens","maxTokensDescription":"Número máximo de tokens a gerar na resposta.","repeatPenalty":"Penalidade de Repetição","repeatPenaltyDescription":"Penaliza tokens repetidos. Valores mais altos reduzem repetições.","contextLength":"Tamanho do Contexto","contextLengthDescription":"Tamanho máximo da janela de contexto para conversas.","seed":"Semente","optional":"opcional","random":"Aleatório","seedDescription":"Defina uma semente específica para resultados reproduzíveis.","advancedOptions":"Opções Avançadas","presencePenalty":"Penalidade de Presença","presencePenaltyDescription":"Penaliza tokens que aparecem no contexto.","frequencyPenalty":"Penalidade de Frequência","frequencyPenaltyDescription":"Penaliza tokens usados frequentemente.","stopSequences":"Sequências de Parada","commaSeparated":"separadas por vírgula","stopSequencesDescription":"Tokens personalizados que interromperão a geração quando encontrados.","resetDefaults":"Restaurar Padrões","saveOptions":"Salvar Opções","embeddingSettings":"Configurações de Embedding","enableEmbeddings":"Ativar Embeddings de Documentos"},"documents":{"title":"Configurações de Documentos","embeddings":{"title":"Embeddings","enable":"Ativar embeddings de documentos","model":"Modelo de Embedding","modelDescription":"Selecione o modelo usado para embedding de documentos","chunkSize":"Tamanho do Chunk","chunkSizeInTokens":"(em tokens)","chunkSizeDescription":"Tamanho dos pedaços de texto para embedding","chunkOverlap":"Sobreposição de Chunks","chunkOverlapInTokens":"(em tokens)","chunkOverlapDescription":"Sobreposição entre chunks consecutivos","similarityThreshold":"Limite de Similaridade","similarityDescription":"Pontuação mínima de similaridade para incluir resultados","status":"Status do Embedding","statusLabel":"Status","available":"Disponível","unavailable":"Indisponível","chunksWithEmbeddings":"Chunks com embeddings","coverage":"Cobertura","regenerate":"Regenerar Embeddings","regenerating":"Regenerando..."}},"tts":{"title":"Texto para Fala","description":"Configure as configurações de texto para fala para ler mensagens em voz alta","loadingProviders":"Carregando provedores de TTS...","noProviders":"Nenhum Provedor de TTS","noProvidersDescription":"Configure um plugin com suporte a TTS para ativar texto para fala","enable":"Ativar TTS","enableDescription":"Permitir texto para fala nas mensagens do assistente","autoPlay":"Reprodução Automática de Respostas","autoPlayDescription":"Ler automaticamente novas mensagens do assistente em voz alta","streamSentences":"Transmitir Frases","streamSentencesDescription":"Reproduzir áudio frase por frase em vez de esperar pela mensagem completa. Recomendado para TTS local para evitar timeouts em mensagens longas.","voiceConfiguration":"Configuração de Voz","model":"Modelo TTS","modelDescription":"Selecione o modelo para geração de texto para fala","voice":"Voz","selectVoice":"Selecione uma voz","voiceDescription":"Escolha a voz para texto para fala","speed":"Velocidade","speedSlow":"0.5x","speedNormal":"1.0x","speedFast":"2.0x","availableProviders":"Provedores Disponíveis","models":"modelos","test":"Testar","testing":"Testando...","stop":"Parar"},"imageGen":{"title":"Geração de Imagens","description":"Configure as configurações e provedores de geração de imagens","loadingProviders":"Carregando provedores de geração de imagens...","noProviders":"Nenhum Provedor de Geração de Imagens","noProvidersDescription":"Configure um plugin com suporte a geração de imagens","enable":"Ativar Geração de Imagens","enableDescription":"Permitir geração de imagens por IA nas conversas","configuration":"Configuração","model":"Modelo","modelDescription":"Selecione o modelo para geração de imagens","size":"Tamanho","sizeDescription":"Resolução das imagens geradas","quality":"Qualidade","qualityDescription":"Nível de qualidade das imagens geradas","style":"Estilo","styleDescription":"Predefinição de estilo para imagens geradas","availableProviders":"Provedores Disponíveis","models":"modelos"},"data":{"title":"Gerenciamento de Dados","export":"Exportar Dados","exportDescription":"Baixe todos os seus dados, incluindo preferências, sessões e documentos.","exportAll":"Exportar Todos os Dados","import":"Importar Dados","importDescription":"Importe dados de uma exportação anterior.","importData":"Importar Dados","importing":"Importando...","clearSessions":"Limpar Sessões","clearSessionsDescription":"Exclua todas as sessões de chat. Esta ação não pode ser desfeita.","clearAll":"Limpar Tudo","clearing":"Limpando...","importOptions":"Opções de Importação","importOptionsDescription":"Escolha como lidar com dados existentes","skipDuplicates":"Ignorar duplicados","overwrite":"Sobrescrever existentes","importResults":"Resultados da Importação","preferences":"Preferências","imported":"Importado","failed":"Falhou","sessions":"Sessões","importedLabel":"importado","skipped":"ignorado","documents":"Documentos","errors":"Erros"},"about":{"title":"Sobre","versionLabel":"Versão","ollama":{"title":"Status do Ollama","version":"Versão","healthy":"Saudável","unhealthy":"Com problemas"},"stats":{"models":"Modelos","sessions":"Sessões"},"features":{"privacy":{"title":"Privacidade em Primeiro Lugar","description":"Seus dados ficam no seu dispositivo"},"openSource":{"title":"Código Aberto","description":"Software livre e de código aberto"},"localInference":{"title":"Inferência Local","description":"Execute modelos de IA localmente com o Ollama"}},"openSourceBy":"Código aberto por {{company}}","links":{"title":"Links","github":"GitHub","githubDescription":"Veja o código-fonte e contribua","website":"Site","websiteDescription":"Visite nosso site","ollama":"Ollama","ollamaDescription":"Saiba mais sobre o Ollama","documentation":"Documentação","reportIssue":"Relatar Problemas","reportIssueDescription":"Reportar bugs e solicitar recursos","gitlab":"Espelho GitLab","gitlabDescription":"Repositório GitLab auto-hospedado","documentationDescription":"Guias, tutoriais e referência da API"},"version":"Versão {{version}}"},"groups":{"general":"Geral","chat":"Chat","media":"Voz e imagens","connections":"Conexões"}}`),models:{title:`Modelos`,subtitle:`Baixe, gerencie e monitore seus modelos do Ollama`,installed:`Modelos Instalados`,available:`Modelos Disponíveis`,pull:`Baixar Modelo`,pulling:`Baixando...`,delete:`Excluir Modelo`,deleting:`Excluindo...`,size:`Tamanho`,modified:`Modificado`,family:`Família`,parameters:`Parâmetros`,quantization:`Quantização`,noModels:`Nenhum modelo instalado`,pullFirst:`Baixe um modelo para começar`,noModelsFound:`Nenhum modelo encontrado`},personas:{title:`Personas`,create:`Criar Persona`,edit:`Editar Persona`,delete:`Excluir Persona`,name:`Nome`,description:`Descrição`,systemPrompt:`Prompt do Sistema`,model:`Modelo`,avatar:`Avatar`,background:`Plano de Fundo`,noPersonas:`Nenhuma persona criada`,createFirst:`Crie sua primeira persona para personalizar sua experiência de chat`},gallery:{title:`Galeria`,subtitle:`Sua galeria de imagens geradas por IA`,imageCount:`{{count}} imagens`,generate:`Gerar Imagem`,generateDescription:`Crie imagens com IA`,generating:`Gerando...`,prompt:`Prompt`,promptPlaceholder:`Descreva a imagem que você deseja gerar...`,noImages:`Nenhuma imagem gerada ainda`,download:`Baixar`,delete:`Excluir`,regenerate:`Regenerar`,model:`Modelo`,size:`Tamanho`,quality:`Qualidade`,created:`Criado`},errors:{generic:`Ocorreu um erro`,network:`Erro de rede. Por favor, verifique sua conexão.`,unauthorized:`Você não está autorizado a realizar esta ação.`,notFound:`O recurso solicitado não foi encontrado.`,serverError:`Erro do servidor. Por favor, tente novamente mais tarde.`,validation:`Por favor, verifique sua entrada e tente novamente.`},keyboard:{title:`Atalhos de Teclado`,toggleSidebar:`Alternar barra lateral`,openSettings:`Abrir configurações`,toggleDarkMode:`Alternar modo escuro`,showShortcuts:`Mostrar atalhos de teclado`,closeModals:`Fechar modais`,groups:{navigation:`Navegação`,settings:`Configurações`,general:`Geral`,chat:`Chat`},actions:{sendMessage:`Enviar mensagem`,newLine:`Nova linha na mensagem`},footer:`Pressione {{key1}} ou {{key2}} para mostrar esta ajuda`,tooltip:`Atalhos de teclado`},modelManager:{title:`Modelos`,loading:`Carregando modelos...`,systemStatus:{online:`Ollama Online`,offline:`Ollama Offline`,models:`modelo`,models_plural:`modelos`,running:`em execução`,vram:`VRAM`},sections:{pull:`Baixar Novo Modelo`,library:`Explorar Biblioteca`,running:`Modelos em Execução`,local:`Modelos Locais`,advanced:`Ações Avançadas`,huggingface:`HuggingFace Hub`},pull:{placeholder:`Digite o nome do modelo (ex.: llama3.2:3b, deepseek-r1:14b)`,button:`Baixar`,cancel:`Cancelar`,popular:`Modelos populares:`,browseAll:`Explorar todos os modelos em ollama.com`,success:`Modelo {{name}} baixado com sucesso`,cancelled:`Download do modelo cancelado`,failed:`Falha ao baixar modelo`,enterName:`Por favor, digite o nome do modelo`,restricted:`A instalação de modelos está restrita a administradores nesta instância.`},progress:{starting:`Inicializando...`,pulling:`Baixando modelo...`,pullingLayer:`baixando`,verifying:`Verificando integridade...`,verifyingDigest:`verificando digest sha256`,writing:`Escrevendo manifesto...`,cleaning:`Limpando...`},library:{available:`disponível`,search:`Pesquisar modelos...`,noResults:`Nenhum modelo encontrado com seus critérios`,installed:`Instalado`,more:`+{{count}} mais`,refresh:`Atualizar Biblioteca`},local:{noModels:`Nenhum modelo instalado ainda`,pullToStart:`Baixe um modelo acima para começar`,installed:`instalado`,running:`Em execução`,info:`Info`,copy:`Copiar`,delete:`Excluir`,deleteConfirm:`Tem certeza de que deseja excluir o modelo "{{name}}"?`,deleteSuccess:`Modelo {{name}} excluído com sucesso`,deleteFailed:`Falha ao excluir modelo`},advanced:{createModel:`Criar Modelo`,fromModelfile:`A partir de Modelfile`,copyModel:`Copiar Modelo`,duplicateExisting:`Duplicar existente`,testEmbeddings:`Testar Embeddings`,generateVectors:`Gerar vetores`,healthCheck:`Verificação de Saúde`,testConnection:`Testar conexão`,healthy:`O Ollama está saudável!`},modals:{details:{title:`Detalhes do Modelo`,info:`Informações do Modelo`,family:`Família`,parameters:`Parâmetros`,quantization:`Quantização`,format:`Formato`,systemPrompt:`Prompt do Sistema`,template:`Template`,license:`Licença`,modelfile:`Modelfile`,noDetails:`Nenhum detalhe disponível`},copy:{title:`Copiar Modelo`,source:`Modelo de Origem`,selectModel:`Selecione um modelo...`,newName:`Nome do Novo Modelo`,placeholder:`ex.: meu-modelo-personalizado`,copying:`Copiando...`,button:`Copiar Modelo`,success:`Modelo copiado para {{name}}`,failed:`Falha ao copiar modelo`,enterBoth:`Por favor, digite os nomes de origem e destino`},create:{title:`Criar Modelo Personalizado`,name:`Nome do Modelo`,namePlaceholder:`ex.: meu-assistente`,modelfile:`Modelfile`,modelfilePlaceholder:`FROM llama3.2
2
+ SYSTEM Você é um assistente útil.`,see:`Veja`,docs:`Documentação do Modelfile`,docsLink:`para referência de sintaxe`,creating:`Criando...`,button:`Criar Modelo`,success:`Modelo {{name}} criado com sucesso`,failed:`Falha ao criar modelo`,enterBoth:`Por favor, digite o nome do modelo e o conteúdo do Modelfile`},embeddings:{title:`Testar Embeddings`,model:`Modelo de Embedding`,selectModel:`Selecione um modelo...`,recommended:`Recomendados: nomic-embed-text, mxbai-embed-large`,input:`Texto de Entrada`,placeholder:`Digite o texto para gerar embeddings...`,generating:`Gerando...`,button:`Gerar Embeddings`,result:`Resultado ({{count}} dimensões)`,success:`Vetor de embedding de {{count}} dimensões gerado`,failed:`Falha ao gerar embeddings`,enterBoth:`Por favor, selecione um modelo e digite o texto`}},huggingface:{browseAll:`Ver tudo no HuggingFace`,checkingGguf:`Verificando arquivos GGUF...`,noGgufAvailable:`Nenhum arquivo GGUF disponível para pull direto do Ollama`,ggufFilesCount:`Arquivos GGUF ({{count}}) - Pull direto para Ollama`,noModelsFound:`Nenhum modelo encontrado`,noResults:`Nenhum modelo encontrado. Tente ajustar sua pesquisa ou filtros.`,browseAllLink:`Ver tudo`,search:`Pesquisar modelos HuggingFace...`,by:`por`,gated:`Acesso restrito`,viewOnHF:`Ver no HuggingFace`,sortDownloads:`Downloads`,sortLikes:`Curtidas`,sortRecent:`Recente`,taskTextGeneration:`Geração de texto`,taskTextToSpeech:`Texto para fala`,taskTextToImage:`Texto para imagem`,taskSpeechRecognition:`Reconhecimento de voz`,tasks:{textGen:`Geração de texto`,tts:`Texto para fala`,image:`Texto para imagem`,stt:`Reconhecimento de voz`},sort:{downloads:`Mais baixados`,likes:`Mais curtidos`,recent:`Atualizados recentemente`}}},personaManager:{title:`Personas`,subtitle:`Crie e gerencie personas de IA com personalidades, memórias e comportamentos personalizados`,loading:`Carregando personas...`,createButton:`Criar Persona`,importExport:`Importar/Exportar`,stats:{title:`Suas Personas`,count:`{{count}} persona criada`,count_plural:`{{count}} personas criadas`},empty:{title:`Nenhuma persona ainda`,description:`Crie sua primeira persona para começar com interações de IA personalizadas`,button:`Criar Sua Primeira Persona`},deleteConfirm:`Tem certeza de que deseja excluir "{{name}}"?`,deleteSuccess:`Persona "{{name}}" excluída com sucesso`,downloadSuccess:`Persona "{{name}}" baixada com sucesso`,failed:`Falha ao {{action}} persona`},personaForm:{title:{create:`Criar Nova Persona`,edit:`Editar Persona`},subtitle:{create:`Crie uma nova persona de IA com personalidade, sistemas de memória e capacidades de aprendizado adaptativo personalizados`,edit:`Personalize sua persona de IA com memória avançada, aprendizado adaptativo e parâmetros inteligentes`},loading:`Carregando formulário...`,saved:`Salvo`,tabs:{basic:`Básico`,parameters:`Parâmetros`,memory:`Memória e Aprendizado`,advanced:`Avançado`},basic:{name:`Nome`,namePlaceholder:`Digite o nome da persona`,model:`Modelo`,selectModel:`Selecione um modelo`,description:`Descrição`,descriptionPlaceholder:`Descreva sua persona...`,systemPrompt:`Prompt do Sistema`,systemPromptPlaceholder:`Digite o prompt do sistema que define o comportamento da sua persona...`,systemPromptHint:`O prompt do sistema define como sua persona se comportará e responderá.`},parameters:{temperature:`Temperatura`,temperatureHint:`Controla criatividade vs consistência`,topP:`Top-P`,topPHint:`Controla a diversidade das respostas`,topK:`Top-K`,topKHint:`Limita o vocabulário aos top-k tokens`,contextWindow:`Janela de Contexto`,contextWindowHint:`Comprimento máximo do histórico de conversas`,maxTokens:`Máximo de Tokens`,maxTokensHint:`Comprimento máximo da resposta`,repeatPenalty:`Penalidade de Repetição`,repeatPenaltyHint:`Reduz respostas repetitivas`},memory:{title:`Sistema de Memória`,subtitle:`A persona lembra conversas ao longo do tempo`,enableHint:`Ative o sistema de memória para permitir que sua persona lembre conversas e construa contexto ao longo do tempo.`,loading:`Carregando status da memória...`,noData:`Nenhum dado de memória ainda`,memories:`Memórias`,mbUsed:`MB Usado`,lastBackup:`Último Backup`,never:`Nunca`,maxMemories:`Máximo de Memórias`,maxMemoriesHint:`Quantas memórias esta persona pode armazenar`,retention:`Retenção de Memória`,retentionHint:`Dias para manter memórias antes da limpeza`,autoCleanup:`Limpar memórias antigas automaticamente`,wipeAll:`Apagar Todas as Memórias`,wipeCannot:`Esta ação não pode ser desfeita`,wipeButton:`Apagar`,wiping:`Apagando...`,wipeConfirm:`Tem certeza de que deseja apagar todas as memórias? Esta ação não pode ser desfeita.`,wipeSuccess:`{{count}} memórias apagadas`},learning:{title:`Aprendizado Adaptativo`,subtitle:`A persona evolui com base nas interações`,enableHint:`Ative o aprendizado adaptativo para permitir que sua persona evolua e personalize respostas com base em suas interações.`,speed:`Velocidade de Aprendizado`,slow:`Lento`,slowDesc:`Mudanças graduais`,balanced:`Equilibrado`,balancedDesc:`Ritmo moderado`,fast:`Rápido`,fastDesc:`Adaptação rápida`,autoAdapt:`Adaptar automaticamente às preferências do usuário`,whatLearns:`O que a persona aprende:`,conversationTone:`Tom da conversa`,responseStyle:`Estilo de resposta`,userPreferences:`Preferências do usuário`,topicInterests:`Interesses por tópicos`},advanced:{embeddingModel:`Modelo de Embedding`,embeddingHint:`Selecione o modelo usado para codificação de memória e busca semântica. Modelos de embedding são mostrados primeiro, seguidos por outros modelos disponíveis.`,noModels:`Nenhum modelo encontrado`,embeddingModels:`Modelos de Embedding`,otherModels:`Outros Modelos`,installHint:`Instale um modelo de embedding:`,recommended:`Recomendados: nomic-embed-text, mxbai-embed-large, bge-m3, snowflake-arctic-embed`,aboutTitle:`Sobre Configurações Avançadas`,aboutDescription:`O modelo de embedding é usado pelo sistema de memória para entender o significado semântico e encontrar memórias relevantes durante as conversas. Escolha um modelo que corresponda ao seu caso de uso e recursos disponíveis.`},actions:{cancel:`Cancelar`,save:`Salvar`,saving:`Salvando...`,saveClose:`Salvar e Fechar`,create:`Criar`},success:{created:`Persona criada`,updated:`Persona atualizada`},error:{saveFailed:`Falha ao salvar`}},personaCard:{enhanced:`Aprimorada`,systemPrompt:`Prompt do Sistema`,memories:`memórias`,use:`Usar`,editTooltip:`Editar persona`,downloadTooltip:`Baixar persona`,backup:`Backup`,exportDNA:`Exportar DNA`,wipeMemories:`Apagar Memórias`,wipeConfirm:`Tem certeza de que deseja apagar todas as memórias desta persona? Esta ação não pode ser desfeita.`,wipeSuccess:`{{count}} memórias apagadas`,backupSuccess:`Backup da persona baixado com sucesso`,dnaSuccess:`DNA da persona exportado com sucesso`,failed:`Falha ao {{action}}`},userManager:{title:`Gerenciamento de Usuários`,subtitle:`Gerencie contas de usuários e permissões`,pageDescription:`Gerencie contas de usuário, permissões e controles de acesso para sua instância Libre WebUI.`,loading:`Carregando usuários...`,createUser:`Criar Usuário`,search:`Pesquisar usuários...`,noUsers:`Nenhum usuário encontrado`,noUsersMatching:`Nenhum usuário corresponde à sua pesquisa`,columns:{user:`Usuário`,email:`E-mail`,role:`Função`,created:`Criado`,actions:`Ações`},roles:{admin:`Admin`,user:`Usuário`},noEmail:`Sem e-mail`,deleteConfirm:`Tem certeza de que deseja excluir o usuário "{{name}}"?`,deleteSuccess:`Usuário excluído com sucesso`,deleteFailed:`Falha ao excluir usuário`,cannotDeleteSelf:`Você não pode excluir sua própria conta`,form:{title:{create:`Criar Usuário`,edit:`Editar Usuário`},username:`Usuário`,usernamePlaceholder:`Digite o nome de usuário`,email:`E-mail`,emailPlaceholder:`Digite o e-mail (opcional)`,password:`Senha`,passwordPlaceholder:`Digite a senha`,passwordHint:`Deixe em branco para manter a senha atual`,role:`Função`,creating:`Criando...`,updating:`Atualizando...`,createButton:`Criar Usuário`,updateButton:`Atualizar Usuário`,createSuccess:`Usuário criado com sucesso`,updateSuccess:`Usuário atualizado com sucesso`,createFailed:`Falha ao criar usuário`,updateFailed:`Falha ao atualizar usuário`}},chatHistory:{label:`Histórico da conversa`,jumpToTurn:`Ir para a interação {{index}} de {{total}}`},chatMessage:{you:`Você`,assistant:`Assistente`,system:`Sistema`,copy:`Copiar`,copyMessage:`Copiar mensagem`,copied:`Copiado!`,regenerate:`Regenerar`,regenerateResponse:`Regenerar resposta`,edit:`Editar`,editSystemMessage:`Editar mensagem do sistema`,saveChanges:`Salvar alterações`,cancelEditing:`Cancelar edição`,delete:`Excluir`,deleteConfirm:`Excluir esta mensagem?`,branch:`Ramificar`,speaking:`Falando...`,speakMessage:`Falar mensagem`,stopSpeaking:`Parar de falar`,showMore:`Mostrar mais`,showLess:`Mostrar menos`,thinking:`Pensando`,systemMessagePlaceholder:`Digite sua mensagem do sistema...`,fullSizeImage:`Imagem em tamanho real`,startConversation:`Inicie uma conversa`,startConversationDescription:`Envie uma mensagem para começar a conversar com seu assistente de IA. Faça perguntas, obtenha ajuda com código ou tenha uma conversa natural.`,scrollToBottom:`Rolar para o final`,newMessages:`Novas mensagens`},imageGallery:{title:`Galeria de Imagens`,noImages:`Nenhuma imagem ainda`,noImagesHint:`Gere sua primeira imagem usando o painel à direita`,delete:`Excluir`,download:`Baixar`,deleteConfirm:`Tem certeza de que deseja excluir esta imagem?`,deleteSuccess:`Imagem excluída`,deleteFailed:`Falha ao excluir imagem`,downloadFailed:`Falha ao baixar imagem`,loadMore:`Carregar Mais ({{current}} de {{total}})`,loadFailed:`Falha ao carregar galeria`},imageGeneration:{title:`Gerar Imagem`,prompt:`Prompt`,promptPlaceholder:`Descreva a imagem que você deseja criar...`,model:`Modelo`,selectModel:`Selecionar modelo`,noModels:`Nenhum modelo de geração de imagens disponível`,configurePlugin:`Configure um plugin com suporte a geração de imagens`,size:`Tamanho`,quality:`Qualidade`,style:`Estilo`,generate:`Gerar`,generating:`Gerando...`,success:`Imagem gerada com sucesso`,failed:`Falha ao gerar imagem`,enterPrompt:`Por favor, digite um prompt`,promptTooLong:`O prompt excede o comprimento máximo de {{max}} caracteres`},errorBoundary:{title:`Algo deu errado`,description:`Encontramos um erro inesperado. Por favor, tente atualizar a página.`,tryAgain:`Atualizar Página`,goHome:`Ir para Início`,errorDetails:`Detalhes do Erro (Desenvolvimento)`},documents:{title:`Documentos`,upload:`Enviar Documento`,uploading:`Enviando...`,noDocuments:`Nenhum documento enviado`,uploadHint:`Envie documentos para usar em suas conversas`,delete:`Excluir`,deleteConfirm:`Tem certeza de que deseja excluir este documento?`,deleteSuccess:`Documento excluído`,deleteFailed:`Falha ao excluir documento`,uploadSuccess:`Documento enviado com sucesso`,uploadFailed:`Falha ao enviar documento`,types:`Suportados: PDF, TXT, MD, DOCX`,unsupportedFileType:`Apenas arquivos PDF e TXT são suportados`,fileSizeTooLarge:`O tamanho do arquivo deve ser menor que 10MB`,uploadSuccessWithName:`Documento "{{name}}" enviado com sucesso`,removeSuccess:`Documento removido com sucesso`,removeFailed:`Falha ao remover documento`,removeError:`Ocorreu um erro ao remover o documento`,clickToUpload:`Clique para enviar`,orDragAndDrop:`ou arraste e solte`,fileTypesAndSize:`Arquivos PDF ou TXT até 10MB`,uploadedDocuments:`Documentos Enviados`,removeDocument:`Remover documento`},ttsButton:{speak:`Falar`,stop:`Parar`,speaking:`Falando...`,generateFailed:`Falha ao gerar fala`,playbackFailed:`Falha na reprodução do áudio`,stopSpeaking:`Parar de falar`,generatingSpeech:`Gerando fala...`,readAloud:`Ler em voz alta`},artifacts:{title:`Artefatos`,code:`Código`,preview:`Pré-visualização`,copy:`Copiar código`,copied:`Copiado!`,download:`Baixar`,expand:`Expandir`,collapse:`Recolher`,openInNewTab:`Abrir em nova aba`,invalidSvg:`Conteúdo SVG inválido`,invalidJson:`Conteúdo JSON inválido`,previewMode:`Modo de pré-visualização`,codeMode:`Modo de código`,copyContent:`Copiar conteúdo`,openInPanel:`Abrir no painel`,openInNewWindow:`Abrir em nova janela`,created:`Criado`,closePanelEsc:`Fechar painel (Esc)`,copyButton:`Copiar`,open:`Abrir`,dragEdgeToResize:`Arraste a borda para redimensionar`,previewUnavailable:`Preview unavailable`,previewUnavailableDescription:`This artifact does not contain renderable preview content. Switch to code view to inspect the source.`},personaImportExport:{title:`Importar e Exportar Personas`,description:`Exporte suas personas para compartilhá-las ou importe personas de outros`,exportPersonas:`Exportar Personas`,importPersonas:`Importar Personas`,noPersonasToExport:`Nenhuma persona para exportar`,personasAvailable:`{{count}} persona disponível`,personasAvailable_plural:`{{count}} personas disponíveis`,exportAll:`Exportar Todas`,uploadJsonFile:`Enviar Arquivo JSON`,pasteJsonLabel:`Colar Dados JSON`,pasteJsonPlaceholder:`Cole os dados JSON da persona aqui...`,importing:`Importando...`,importButton:`Importar Persona(s)`,expectedFormat:`Formato JSON Esperado:`,exportSuccess:`Persona "{{name}}" exportada com sucesso`,exportFailed:`Falha ao exportar persona`,exportAllSuccess:`Todas as {{count}} personas exportadas com sucesso`,exportAllFailed:`Falha ao exportar personas`,pasteJsonData:`Por favor, cole os dados JSON da persona`,importMultipleSuccess:`{{count}} personas importadas com sucesso`,importMultipleFailed:`Falha ao importar {{count}} personas`,importNoneFailed:`Falha ao importar qualquer persona`,importSuccess:`Persona importada com sucesso`,importFailed:`Falha ao importar persona`},generationStats:{details:`Detalhes`,promptTokens:`Tokens do prompt:`,generatedTokens:`Tokens gerados:`,totalTokens:`Tokens totais:`,speed:`Velocidade:`,promptEval:`Avaliação do prompt:`,generation:`Geração:`,modelLoad:`Carregamento do modelo:`,totalTime:`Tempo total:`,generatedAt:`Gerado às:`},userMenu:{loggedOut:`Desconectado com sucesso`,pictureUpdated:`Foto de perfil atualizada`,failedUpdateAvatar:`Falha ao atualizar avatar`,failedUpdatePicture:`Falha ao atualizar foto de perfil`,noEmail:`Sem e-mail fornecido`,changePicture:`Alterar foto`,settings:`Configurações`,userManagement:`Gerenciamento de usuários`,signOut:`Sair`,changeProfilePicture:`Alterar foto de perfil`},pluginManager:{title:`Gerenciador de plugins`,upload:`Enviar`,addJson:`Adicionar JSON`,browseHF:`Explorar HF Hub`,confirmDelete:`Tem certeza que deseja excluir este plugin?`,uploading:`Enviando plugin...`,pasteJson:`Cole o JSON do plugin aqui...`,installPlugin:`Instalar plugin`,loading:`Carregando plugins...`,noPlugins:`Nenhum plugin instalado`,noPluginsDescription:`Envie um arquivo de plugin ou adicione um plugin a partir de JSON para começar.`,active:`Ativo`,id:`ID`,endpoint:`Endpoint`,activate:`Ativar`,deactivate:`Desativar`,activePlugin:`Plugin ativo`,activePluginDescription:`Todas as solicitações de chat serão roteadas por este plugin`,variables:{title:`Variáveis`,save:`Salvar`,saving:`Salvando...`,saved:`Variáveis salvas`,saveFailed:`Falha ao salvar variáveis`,resetDefaults:`Restaurar padrões`,reset:`Variáveis restauradas`,sensitiveSet:`Valor definido (insira novo valor para alterar)`}},huggingface:{title:`Navegador de modelos HuggingFace`,subtitle:`Navegue e selecione modelos do Hub`,searchPlaceholder:`Pesquisar modelos...`,filters:`Filtros`,task:`Tarefa`,sortBy:`Ordenar por`,noModels:`Nenhum modelo encontrado`,adjustSearch:`Tente ajustar sua pesquisa ou filtros`,gated:`Restrito`,selected:`Selecionado`,select:`Selecionar`,refresh:`Atualizar`,modelsFound:`modelos encontrados`},demoMode:{title:`Modo demo`,github:`GitHub`},personaBackground:{label:`Imagem de fundo`,uploadBackgroundImage:`Enviar imagem de fundo`,dragAndDrop:`Arraste e solte uma imagem ou clique para navegar`,chooseImage:`Escolher imagem`,uploading:`Enviando...`,enterImageUrl:`Ou insira a URL da imagem`,supportedFormats:`Suporta: JPG, PNG, GIF, WebP (máx 5MB). Imagens paisagem largas funcionam melhor.`,customBackground:`Imagem de fundo personalizada`,clickToChange:`Clique para alterar ou remover`,removed:`Fundo removido`,uploaded:`Fundo enviado com sucesso`,invalidFile:`Por favor selecione um arquivo de imagem válido`,fileTooLarge:`O tamanho da imagem de fundo deve ser menor que 5MB`,readFailed:`Falha ao ler o arquivo de imagem`,uploadFailed:`Falha ao enviar a imagem de fundo`},modelSelector:{searchInstalled:`Pesquisar modelos instalados...`,searchOllama:`Pesquisar na biblioteca Ollama...`,searchHuggingFace:`Pesquisar no HuggingFace...`,selectModel:`Selecionar modelo`,personas:`Personas`,ollamaModels:`Modelos Ollama`,pluginModels:`Modelos de plugins`,actions:`Ações`,installed:`Instalado`,use:`Usar`,pull:`Baixar`,pullRestricted:`A instalação de modelos está restrita a administradores nesta instância.`,adminOnlyPull:`Apenas administradores`},libreClaw:{title:`Agentes`,subtitle:`Execuções, aprovações, programações, memória, ferramentas e uso do agente local.`,dashboard:`Painel`,connection:{disconnectedTitle:`O daemon do Libre Claw não está conectado`,disconnectedDescription:`Inicie localmente com <command>libre-claw start</command> ou defina <env>LIBRE_CLAW_BASE_URL</env> no ambiente de back-end.`},status:{connected:`Conectado`,disconnected:`Desconectado`,activeRuns:`{{count}} ativo`,activeRuns_plural:`{{count}} ativo`},states:{queued:`Na fila`,running:`Em execução`,blocked:`Bloqueado`,done:`Concluído`,failed:`Falha`,cancelled:`Cancelado`},startRun:{title:`Iniciar execução do agente`,placeholder:`Peça ao Libre Claw para inspecionar um repositório, corrigir um bug, executar uma revisão, agendar um relatório...`,chatRun:`Execução de bate-papo`,goalMode:`Modo meta`,providerOverride:`Substituição do provedor`,modelOverride:`Substituição de modelo`,run:`Executar`},modelRoute:{title:`Rota modelo`,providerPlaceholder:`provedor`,modelPlaceholder:`modelo`,persistGlobal:`Persistir na configuração global Libre Claw`,saveModel:`Salvar modelo`,theme:`Tema do Libre Claw`,saveTheme:`Salvar tema`},runs:{title:`Execuções`,empty:`Ainda não há execuções do Libre Claw.`},timeline:{title:`Linha do tempo da execução`,empty:`Selecione uma execução para inspecionar seus eventos.`,streaming:`Transmissão...`,assistantResponse:`Resposta do assistente`,resultOk:`ok`,resultError:`erro`,labels:{userMessage:`Mensagem do usuário`,toolCall:`Chamada de ferramenta`,toolResult:`Resultado da ferramenta`,approvalRequest:`Solicitação de aprovação`,approvalResponse:`Resposta de aprovação`,runStarted:`Execução iniciada`,runFinished:`Execução finalizada`,usage:`Uso`,error:`Erro`}},approvals:{needed:`Aprovação necessária`,allowOnce:`Permitir uma vez`,alwaysAllowTool:`Sempre permitir a ferramenta`,deny:`Recusar`,toolApprovalRequested:`Aprovação da ferramenta solicitada`},automations:{title:`Automações`,namePlaceholder:`Nome`,schedulePlaceholder:`daily 09:00`,promptPlaceholder:`Solicitação de automação`,create:`Criar`,empty:`Nenhuma automação Libre Claw programada.`,runNow:`Executar agora`,pause:`Pausa`,resume:`Retomar`,routes:{report:`Relatório`,telegram:`Telegram`},status:{active:`Ativo`,paused:`Pausado`}},usageFallback:{title:`Uso e substituto`,usage:`Uso`,fallbackRoute:`Rota substituta`,noUsage:`Ainda não há registros de uso.`},metrics:{provider:`Provedor`,model:`Modelo`,input:`Entrada`,output:`Saída`,cached:`Em cache`,reasoning:`Raciocínio`,cost:`Custo`,tool:`Ferramenta`,resolution:`Resolução`,state:`Estado`,stopReason:`Motivo da parada`,tokens:`{{formatted}} ficha`,tokens_plural:`{{formatted}} fichas`},fallbacks:{tool:`ferramenta`,unknown:`desconhecido`,resolved:`resolvido`,unknownError:`Erro desconhecido`},toasts:{loadStatusFailed:`Não foi possível carregar o status Libre Claw`,enterTask:`Insira uma tarefa para Libre Claw`,runStarted:`Execução do Libre Claw iniciada`,startRunFailed:`Não foi possível iniciar a execução do Libre Claw`,runCancelled:`Execução cancelada`,cancelRunFailed:`Não foi possível cancelar a execução`,approved:`Aprovado`,denied:`Negado`,resolvePermissionFailed:`Não foi possível resolver a permissão`,providerModelRequired:`Provedor e modelo são obrigatórios`,modelUpdated:`Modelo do Libre Claw atualizado`,updateModelFailed:`Não foi possível atualizar o modelo`,themeUpdated:`Tema do Libre Claw atualizado`,updateThemeFailed:`Não foi possível atualizar o tema`,automationRequired:`O nome da automação, a programação e o prompt são obrigatórios`,automationCreated:`Automação criada`,createAutomationFailed:`Não foi possível criar a automação`,automationUpdated:`Automação atualizada`,updateAutomationFailed:`Não foi possível atualizar a automação`}},work:{title:`Trabalho`,subtitle:`Espaços de trabalho isolados para modelos`,tasks:{title:`Tarefas de trabalho`,subtitle:`Espaços de trabalho locais persistentes`,new:`Nova tarefa`,emptyTitle:`Nenhuma tarefa de trabalho ainda`,empty:`Suas tarefas de trabalho aparecerão aqui depois que você enviar a primeira mensagem.`,untitled:`Tarefa sem título`,actions:`Ações da tarefa`,delete:`Excluir tarefa`,deleteNamed:`Excluir {{title}}`,deleteConfirm:`Excluir “{{title}}” e seu espaço de trabalho permanentemente?`,close:`Fechar tarefas de trabalho`,open:`Abrir tarefas de trabalho`,rename:`Título da tarefa`,loading:`Carregando tarefa…`,notFound:`Esta tarefa de trabalho não está disponível`,back:`Iniciar uma nova tarefa`,status:`Status: {{status}}`},landing:{title:`Iniciar uma nova tarefa de trabalho`,description:`Dê a um modelo local ou de um provedor configurado um espaço de trabalho isolado e persistente. Ele pode inspecionar arquivos, executar ferramentas e continuar de onde parou quando você voltar.`,isolated:`Isolado`,isolatedBody:`Cada tarefa tem seu próprio contêiner e arquivos.`,durable:`Persistente`,durableBody:`Volte mais tarde à conversa e ao espaço de trabalho.`,controlled:`Controlado`,controlledBody:`O ambiente de execução e os arquivos da tarefa permanecem isolados do host.`},composer:{placeholder:`Descreva o que você quer criar ou alterar…`,model:`Modelo de trabalho`,noModels:`Nenhum modelo compatível com o modo Trabalho`,cancel:`Parar`,send:`Executar`,hint:`Cada tarefa mantém seus próprios arquivos e histórico. Revise a saída do modelo antes de usá-la.`,remoteTitle:`Provedor remoto`,remoteHint:`A conversa e a saída das ferramentas são enviadas ao serviço configurado. Uma execução autônoma pode fazer várias chamadas ao provedor e gerar cobranças. Os arquivos do espaço de trabalho permanecem locais, a menos que uma ferramenta retorne seu conteúdo.`,remoteDismiss:`Ocultar`,remoteDismissLabel:`Ocultar aviso do provedor remoto`,remoteDismissFailed:`Não foi possível salvar a preferência do provedor remoto.`,noModelSelected:`Nenhum modelo compatível com o modo Trabalho está selecionado.`},conversation:{ready:`Espaço de trabalho pronto`,empty:`Continue a tarefa abaixo. Esta conversa e seus arquivos permanecem vinculados a este espaço de trabalho.`,loadOlder:`Carregar mensagens anteriores`},status:{preparing:`Preparando o espaço de trabalho isolado…`,running:`Trabalhando no espaço de trabalho local…`},statusLabels:{idle:`Inativo`,thinking:`Pensando`,complete:`Concluído`,needsInput:`Entrada necessária`,error:`Erro`},live:{connecting:`Conectando às atualizações ao vivo…`,reconnecting:`Reconectando às atualizações ao vivo…`,unavailable:`Atualizações ao vivo indisponíveis`,newActivity:`Nova atividade`,skillsLoaded:`Habilidades do espaço de trabalho · {{count}}`},runtime:{unavailable:`Ambiente de execução indisponível`,ready:`Ambiente de execução pronto`,readyOllama:`Docker pronto`,readyPlugin:`Docker + plugin prontos`,readyHybrid:`Docker + modelos prontos`,reason:`São necessários o Docker e um provedor de modelos disponível via Ollama ou um plugin.`},workspace:{label:`Visualizações do espaço de trabalho`,files:`Arquivos`,activity:`Atividade`,preview:`Pré-visualização`,resize:`Redimensionar a conversa e o espaço de trabalho`,resizeHint:`Arraste para redimensionar. Use as teclas de seta para um controle preciso. Clique duas vezes ou pressione Enter para restaurar.`,splitSize:`Conversa {{conversation}}%, espaço de trabalho {{workspace}}%`,terminal:`Terminal`},files:{discard:`Descartar alterações não salvas no arquivo?`,leaveWithDraft:`Sair deste arquivo? Sua edição não salva permanecerá como rascunho no navegador.`,up:`Pasta superior`,back:`Voltar aos arquivos`,empty:`Ainda não há arquivos nesta pasta.`,select:`Selecione um arquivo para inspecioná-lo e editá-lo.`,editorLabel:`Editor de arquivos: {{path}}`,format:`Formatar`,formatted:`Código formatado.`,formatFailed:`Não foi possível formatar este arquivo.`,formatShortcut:`Formatar (Shift+Alt+F)`,formatTooLarge:`A formatação é limitada a arquivos com menos de 100.000 caracteres e 4.000 linhas.`,formatUnsupported:`A formatação não está disponível para este tipo de arquivo.`,saveShortcut:`Salvar (⌘/Ctrl+S)`,highlightPaused:`O realce em tempo real está pausado para arquivos grandes, mantendo a edição responsiva.`,plainTextLarge:`Texto sem formatação · arquivo grande`,changes:`Alterações`,changesSince:`O que mudou desde o último turno`,diffLabel:`Alterações desde o último turno: {{path}}`,diffFolded:`{{count}} linhas inalteradas`},activity:{empty:`Comandos, operações de arquivo e resultados de ferramentas aparecerão aqui.`,toolActivity:`Atividade de ferramentas`,details:`Detalhes`,kinds:{message:`Mensagem`,toolCall:`Chamada de ferramenta`,toolResult:`Resultado da ferramenta`,error:`Erro`}},preview:{command:`Comando de início opcional`,start:`Iniciar pré-visualização`,stop:`Parar pré-visualização`,open:`Abrir`,starting:`Iniciando pré-visualização…`,frameTitle:`Pré-visualização do espaço de trabalho`,failed:`Não foi possível iniciar a pré-visualização. Verifique Atividade e tente outro comando.`,empty:`Inicie o aplicativo neste espaço de trabalho para inspecioná-lo aqui.`},mobile:{surface:`Visualização da tarefa`,conversation:`Conversa`,workspace:`Espaço de trabalho`},toasts:{runFailed:`Não foi possível iniciar a tarefa de trabalho.`,updateFailed:`Não foi possível atualizar esta tarefa.`,renameFailed:`Não foi possível renomear esta tarefa.`,cancelled:`Execução da tarefa de trabalho interrompida.`,cancelFailed:`Não foi possível interromper a execução da tarefa de trabalho.`,deleteFailed:`Não foi possível excluir esta tarefa de trabalho.`,saveFailed:`Não foi possível salvar este arquivo.`,saved:`Arquivo salvo.`,previewFailed:`Não foi possível iniciar a pré-visualização.`,previewStopFailed:`Não foi possível parar a pré-visualização.`},terminal:{connecting:`Abrindo um shell na sandbox…`,closed:`Sessão de terminal encerrada.`,failed:`Não foi possível iniciar a sessão de terminal.`,reconnect:`Reconectar`,unavailable:`O terminal interativo não está disponível nesta implantação.`,blockedByRun:`O modelo está usando este contêiner. O terminal abre ao fim do turno.`,taskRunning:`Turno do modelo em andamento`}}};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`},signup:{title:`Создать аккаунт`,subtitle:`Зарегистрируйте новый аккаунт`,username:`Имя пользователя`,usernamePlaceholder:`Выберите имя пользователя`,email:`Эл. почта`,emailPlaceholder:`ваш@email.com`,password:`Пароль`,passwordPlaceholder:`Выберите пароль`,confirmPassword:`Подтвердите пароль`,confirmPasswordPlaceholder:`Подтвердите ваш пароль`,createAccount:`Создать аккаунт`,creatingAccount:`Создание аккаунта...`,hasAccount:`Уже есть аккаунт?`,signInHere:`Войдите здесь`,signupSuccess:`Аккаунт успешно создан!`,signupFailed:`Ошибка регистрации`,tryAgain:`Ошибка регистрации. Попробуйте снова.`,usernameRequired:`Имя пользователя и пароль обязательны`,passwordMismatch:`Пароли не совпадают`,passwordTooShort:`Пароль должен содержать не менее 6 символов`},logout:{button:`Выйти`,success:`Выход выполнен успешно`},oauth:{continueWith:`Продолжить через {{provider}}`,connectingTo:`Подключение к {{provider}}...`,github:`GitHub`,huggingFace:`Hugging Face`},checkingAuth:`Проверка аутентификации...`,welcome:`Добро пожаловать`,noEmail:`Email не указан`,role:`Роль`,id:`ID`,userId:`ID пользователя`,signInDescription:`Войдите с помощью учётной записи GitHub, чтобы продолжить`,signInWithGitHub:`Войти через GitHub`,jwtActive:`JWT-аутентификация активна`,jwtDescription:`JWT-аутентификация с GitHub OAuth`,github:`GitHub`,provider:`Провайдер`},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`},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:`Удалить чат`},persona:{applied:`Персона применена`,label:`Персона`},model:{updated:`Модель обновлена`,noModels:`Модели недоступны`,noModelsDescription:`Модели недоступны. Убедитесь, что Ollama запущен и модели установлены.`,pullCommand:`ollama pull llama3.2:3b`,noModelsTooltip:`Модели недоступны. Убедитесь, что Ollama запущен и модели установлены.`},footer:{disclaimer:`ИИ может ошибаться — проверяйте важную информацию`,images:`{{count}} изображение`,images_plural:`{{count}} изображений`,structuredOutput:`Структурированный вывод`},mediaUpload:{dropImagesHere:`Перетащите изображения сюда или`,supportedFormats:`Поддерживаются: JPG, PNG, GIF, WebP (макс. 10 МБ каждый)`,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:`Обзор`},toggleSize:`Переключить размер боковой панели`,expandSidebar:`Развернуть боковую панель`},user:{menu:{changePicture:`Изменить фото`,settings:`Настройки`,userManagement:`Управление пользователями`,logout:`Выйти`},avatar:{title:`Изменить фото профиля`,updated:`Фото профиля обновлено`,updateFailed:`Не удалось обновить фото профиля`,saving:`Сохранение...`,label:`Аватар`,uploadAvatarImage:`Загрузить изображение аватара`,dragAndDrop:`Перетащите изображение или нажмите для выбора`,chooseImage:`Выбрать изображение`,uploading:`Загрузка...`,enterImageUrl:`Или введите URL изображения`,supportedFormats:`Поддерживаются: JPG, PNG, GIF, WebP (макс. 2 МБ). Квадратные изображения подходят лучше всего.`,customAvatar:`Пользовательское изображение аватара`,clickToChange:`Нажмите, чтобы изменить или удалить`,removed:`Аватар удалён`,uploaded:`Аватар успешно загружен`,invalidFile:`Пожалуйста, выберите корректный файл изображения`,fileTooLarge:`Размер изображения аватара должен быть менее 2 МБ`,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":"{{current}} из {{total}} моделей","modelPullAccess":"Доступ к установке моделей","modelPullAccessDescription":"Разрешить пользователям без прав администратора загружать и устанавливать новые модели.","modelPullAccessSaved":"Права на установку моделей обновлены","modelPullAccessSaveFailed":"Не удалось обновить права на установку моделей"},"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"},"generation":{"title":"Параметры генерации","description":"Настройте, как ИИ генерирует ответы","coreParameters":"Основные параметры","temperature":"Температура","temperatureDescription":"Контролирует случайность. Низкие значения — более точные, высокие — более творческие.","topP":"Top P","topPDescription":"Контролирует разнообразие через nucleus sampling. Низкие значения фокусируются на вероятных токенах.","topK":"Top K","topKDescription":"Ограничивает выбор токенов до K наиболее вероятных. Установите 0 для отключения.","minP":"Min P","minPDescription":"Минимальный порог вероятности для выбора токена.","generationControl":"Управление генерацией","maxTokens":"Макс. токенов","maxTokensDescription":"Максимальное количество токенов для генерации в ответе.","repeatPenalty":"Штраф за повторение","repeatPenaltyDescription":"Штрафует повторяющиеся токены. Высокие значения уменьшают повторения.","contextLength":"Длина контекста","contextLengthDescription":"Максимальный размер окна контекста для разговоров.","seed":"Seed","optional":"необязательно","random":"Случайный","seedDescription":"Установите конкретный seed для воспроизводимых результатов.","advancedOptions":"Расширенные параметры","presencePenalty":"Штраф за присутствие","presencePenaltyDescription":"Штрафует токены, появляющиеся в контексте.","frequencyPenalty":"Штраф за частоту","frequencyPenaltyDescription":"Штрафует часто используемые токены.","stopSequences":"Стоп-последовательности","commaSeparated":"через запятую","stopSequencesDescription":"Пользовательские токены, которые остановят генерацию при обнаружении.","resetDefaults":"Сбросить по умолчанию","saveOptions":"Сохранить параметры","embeddingSettings":"Настройки встраивания","enableEmbeddings":"Включить встраивание документов"},"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.5x","speedNormal":"1.0x","speedFast":"2.0x","availableProviders":"Доступные провайдеры","models":"моделей","test":"Тест","testing":"Тестирование...","stop":"Стоп"},"imageGen":{"title":"Генерация изображений","description":"Настройте параметры и провайдеров генерации изображений","loadingProviders":"Загрузка провайдеров генерации изображений...","noProviders":"Провайдеры генерации изображений отсутствуют","noProvidersDescription":"Настройте плагин с поддержкой генерации изображений","enable":"Включить генерацию изображений","enableDescription":"Разрешить генерацию изображений ИИ в разговорах","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"}},"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:`Ваша галерея изображений, созданных ИИ`,imageCount:`{{count}} изображений`,generate:`Создать изображение`,generateDescription:`Создавайте изображения с помощью ИИ`,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:`Нет доступных GGUF-файлов для прямой загрузки в Ollama`,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:`Создавайте и управляйте персонами ИИ с пользовательскими личностями, памятью и поведением`,loading:`Загрузка персон...`,createButton:`Создать персону`,importExport:`Импорт/Экспорт`,stats:{title:`Ваши персоны`,count:`Создано {{count}} персона`,count_plural:`Создано {{count}} персон`},empty:{title:`Персон пока нет`,description:`Создайте вашу первую персону для персонализированного взаимодействия с ИИ`,button:`Создать вашу первую персону`},deleteConfirm:`Вы уверены, что хотите удалить "{{name}}"?`,deleteSuccess:`Персона "{{name}}" успешно удалена`,downloadSuccess:`Персона "{{name}}" успешно скачана`,failed:`Не удалось {{action}} персону`},personaForm:{title:{create:`Создать новую персону`,edit:`Редактировать персону`},subtitle:{create:`Создайте новую персону ИИ с пользовательской личностью, системой памяти и адаптивным обучением`,edit:`Настройте вашу персону ИИ с расширенной памятью, адаптивным обучением и интеллектуальными параметрами`},loading:`Загрузка формы...`,saved:`Сохранено`,tabs:{basic:`Основное`,parameters:`Параметры`,memory:`Память и обучение`,advanced:`Расширенное`},basic:{name:`Имя`,namePlaceholder:`Введите имя персоны`,model:`Модель`,selectModel:`Выберите модель`,description:`Описание`,descriptionPlaceholder:`Опишите вашу персону...`,systemPrompt:`Системный промпт`,systemPromptPlaceholder:`Введите системный промпт, определяющий поведение вашей персоны...`,systemPromptHint:`Системный промпт определяет, как ваша персона будет себя вести и отвечать.`},parameters:{temperature:`Температура`,temperatureHint:`Контролирует креативность vs последовательность`,topP:`Top-P`,topPHint:`Контролирует разнообразие ответов`,topK:`Top-K`,topKHint:`Ограничивает словарь до top-k токенов`,contextWindow:`Окно контекста`,contextWindowHint:`Максимальная длина истории разговора`,maxTokens:`Макс. токенов`,maxTokensHint:`Максимальная длина ответа`,repeatPenalty:`Штраф за повторение`,repeatPenaltyHint:`Уменьшает повторяющиеся ответы`},memory:{title:`Система памяти`,subtitle:`Персона запоминает разговоры со временем`,enableHint:`Включите систему памяти, чтобы ваша персона запоминала разговоры и накапливала контекст со временем.`,loading:`Загрузка статуса памяти...`,noData:`Данных памяти пока нет`,memories:`Воспоминания`,mbUsed:`МБ использовано`,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:`Экспорт ДНК`,wipeMemories:`Очистить память`,wipeConfirm:`Вы уверены, что хотите очистить всю память этой персоны? Это действие нельзя отменить.`,wipeSuccess:`Очищено {{count}} воспоминаний`,backupSuccess:`Бэкап персоны успешно скачан`,dnaSuccess:`ДНК персоны успешно экспортирована`,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:`Не удалось обновить пользователя`}},chatHistory:{label:`История разговора`,jumpToTurn:`Перейти к реплике {{index}} из {{total}}`},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:`Отправьте сообщение, чтобы начать общение с вашим ИИ-ассистентом. Задавайте вопросы, получайте помощь с кодом или ведите обычный разговор.`,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:`Размер файла должен быть менее 10 МБ`,uploadSuccessWithName:`Документ "{{name}}" успешно загружен`,removeSuccess:`Документ успешно удалён`,removeFailed:`Не удалось удалить документ`,removeError:`Произошла ошибка при удалении документа`,clickToUpload:`Нажмите для загрузки`,orDragAndDrop:`или перетащите`,fileTypesAndSize:`Файлы PDF или TXT до 10 МБ`,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:`Email не указан`,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:`Значение задано (введите новое для изменения)`}},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 (макс. 5МБ). Широкие альбомные изображения подходят лучше.`,customBackground:`Пользовательское фоновое изображение`,clickToChange:`Нажмите для изменения или удаления`,removed:`Фон удален`,uploaded:`Фон успешно загружен`,invalidFile:`Пожалуйста, выберите действительный файл изображения`,fileTooLarge:`Размер фонового изображения должен быть менее 5МБ`,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:JSON.parse(`{"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":"Выполняется ход модели"}}`)};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{at as a}from"../assets/index-CKV9Lnj8.js";var o,s,c,l,u,d,f,p=Object.defineProperty,m=(e,t)=>{for(var n in t)p(e,n,{get:t[n],enumerable:!0})},h={};m(h,{__debug:()=>mo,check:()=>fo,doc:()=>Ea,format:()=>uo,formatWithCursor:()=>lo,getSupportInfo:()=>po,util:()=>ja,version:()=>Aa});var g=(e,t)=>(n,r,...i)=>n|1&&r==null?void 0:(t.call(r)??r[e]).apply(r,i),_=String.prototype.replaceAll??function(e,t){return e.global?this.replace(e,t):this.split(e).join(t)},v=g(`replaceAll`,function(){if(typeof this==`string`)return _}),ee=class{diff(e,t,n={}){let r;typeof n==`function`?(r=n,n={}):`callback`in n&&(r=n.callback);let i=this.castInput(e,n),a=this.castInput(t,n),o=this.removeEmpty(this.tokenize(i,n)),s=this.removeEmpty(this.tokenize(a,n));return this.diffWithOptionsObj(o,s,n,r)}diffWithOptionsObj(e,t,n,r){let i=e=>{if(e=this.postProcess(e,n),r){setTimeout(function(){r(e)},0);return}else return e},a=t.length,o=e.length,s=1,c=a+o;n.maxEditLength!=null&&(c=Math.min(c,n.maxEditLength));let l=n.timeout??1/0,u=Date.now()+l,d=[{oldPos:-1,lastComponent:void 0}],f=this.extractCommon(d[0],t,e,0,n);if(d[0].oldPos+1>=o&&f+1>=a)return i(this.buildValues(d[0].lastComponent,t,e));let p=-1/0,m=1/0,h=()=>{for(let r=Math.max(p,-s);r<=Math.min(m,s);r+=2){let s,c=d[r-1],l=d[r+1];c&&(d[r-1]=void 0);let u=!1;if(l){let e=l.oldPos-r;u=l&&0<=e&&e<a}let h=c&&c.oldPos+1<o;if(!u&&!h){d[r]=void 0;continue}if(s=!h||u&&c.oldPos<l.oldPos?this.addToPath(l,!0,!1,0,n):this.addToPath(c,!1,!0,1,n),f=this.extractCommon(s,t,e,r,n),s.oldPos+1>=o&&f+1>=a)return i(this.buildValues(s.lastComponent,t,e))||!0;d[r]=s,s.oldPos+1>=o&&(m=Math.min(m,r-1)),f+1>=a&&(p=Math.max(p,r+1))}s++};if(r)(function e(){setTimeout(function(){if(s>c||Date.now()>u)return r(void 0);h()||e()},0)})();else for(;s<=c&&Date.now()<=u;){let e=h();if(e)return e}}addToPath(e,t,n,r,i){let a=e.lastComponent;return a&&!i.oneChangePerToken&&a.added===t&&a.removed===n?{oldPos:e.oldPos+r,lastComponent:{count:a.count+1,added:t,removed:n,previousComponent:a.previousComponent}}:{oldPos:e.oldPos+r,lastComponent:{count:1,added:t,removed:n,previousComponent:a}}}extractCommon(e,t,n,r,i){let a=t.length,o=n.length,s=e.oldPos,c=s-r,l=0;for(;c+1<a&&s+1<o&&this.equals(n[s+1],t[c+1],i);)c++,s++,l++,i.oneChangePerToken&&(e.lastComponent={count:1,previousComponent:e.lastComponent,added:!1,removed:!1});return l&&!i.oneChangePerToken&&(e.lastComponent={count:l,previousComponent:e.lastComponent,added:!1,removed:!1}),e.oldPos=s,c}equals(e,t,n){return n.comparator?n.comparator(e,t):e===t||!!n.ignoreCase&&e.toLowerCase()===t.toLowerCase()}removeEmpty(e){let t=[];for(let n=0;n<e.length;n++)e[n]&&t.push(e[n]);return t}castInput(e,t){return e}tokenize(e,t){return Array.from(e)}join(e){return e.join(``)}postProcess(e,t){return e}get useLongestToken(){return!1}buildValues(e,t,n){let r=[],i;for(;e;)r.push(e),i=e.previousComponent,delete e.previousComponent,e=i;r.reverse();let a=r.length,o=0,s=0,c=0;for(;o<a;o++){let e=r[o];if(e.removed)e.value=this.join(n.slice(c,c+e.count)),c+=e.count;else{if(!e.added&&this.useLongestToken){let r=t.slice(s,s+e.count);r=r.map(function(e,t){let r=n[c+t];return r.length>e.length?r:e}),e.value=this.join(r)}else e.value=this.join(t.slice(s,s+e.count));s+=e.count,e.added||(c+=e.count)}}return r}},te=new class extends ee{tokenize(e){return e.slice()}join(e){return e}removeEmpty(e){return e}};function ne(e,t,n){return te.diff(e,t,n)}var re=()=>{},ie=`cr`,ae=`crlf`,oe=`lf`,se=`\r`,ce=`\r
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=Object.defineProperty,m=(e,t)=>{for(var n in t)p(e,n,{get:t[n],enumerable:!0})},h={};m(h,{__debug:()=>mo,check:()=>fo,doc:()=>Ea,format:()=>uo,formatWithCursor:()=>lo,getSupportInfo:()=>po,util:()=>ja,version:()=>Aa});var g=(e,t)=>(n,r,...i)=>n|1&&r==null?void 0:(t.call(r)??r[e]).apply(r,i),_=String.prototype.replaceAll??function(e,t){return e.global?this.replace(e,t):this.split(e).join(t)},v=g(`replaceAll`,function(){if(typeof this==`string`)return _}),ee=class{diff(e,t,n={}){let r;typeof n==`function`?(r=n,n={}):`callback`in n&&(r=n.callback);let i=this.castInput(e,n),a=this.castInput(t,n),o=this.removeEmpty(this.tokenize(i,n)),s=this.removeEmpty(this.tokenize(a,n));return this.diffWithOptionsObj(o,s,n,r)}diffWithOptionsObj(e,t,n,r){let i=e=>{if(e=this.postProcess(e,n),r){setTimeout(function(){r(e)},0);return}else return e},a=t.length,o=e.length,s=1,c=a+o;n.maxEditLength!=null&&(c=Math.min(c,n.maxEditLength));let l=n.timeout??1/0,u=Date.now()+l,d=[{oldPos:-1,lastComponent:void 0}],f=this.extractCommon(d[0],t,e,0,n);if(d[0].oldPos+1>=o&&f+1>=a)return i(this.buildValues(d[0].lastComponent,t,e));let p=-1/0,m=1/0,h=()=>{for(let r=Math.max(p,-s);r<=Math.min(m,s);r+=2){let s,c=d[r-1],l=d[r+1];c&&(d[r-1]=void 0);let u=!1;if(l){let e=l.oldPos-r;u=l&&0<=e&&e<a}let h=c&&c.oldPos+1<o;if(!u&&!h){d[r]=void 0;continue}if(s=!h||u&&c.oldPos<l.oldPos?this.addToPath(l,!0,!1,0,n):this.addToPath(c,!1,!0,1,n),f=this.extractCommon(s,t,e,r,n),s.oldPos+1>=o&&f+1>=a)return i(this.buildValues(s.lastComponent,t,e))||!0;d[r]=s,s.oldPos+1>=o&&(m=Math.min(m,r-1)),f+1>=a&&(p=Math.max(p,r+1))}s++};if(r)(function e(){setTimeout(function(){if(s>c||Date.now()>u)return r(void 0);h()||e()},0)})();else for(;s<=c&&Date.now()<=u;){let e=h();if(e)return e}}addToPath(e,t,n,r,i){let a=e.lastComponent;return a&&!i.oneChangePerToken&&a.added===t&&a.removed===n?{oldPos:e.oldPos+r,lastComponent:{count:a.count+1,added:t,removed:n,previousComponent:a.previousComponent}}:{oldPos:e.oldPos+r,lastComponent:{count:1,added:t,removed:n,previousComponent:a}}}extractCommon(e,t,n,r,i){let a=t.length,o=n.length,s=e.oldPos,c=s-r,l=0;for(;c+1<a&&s+1<o&&this.equals(n[s+1],t[c+1],i);)c++,s++,l++,i.oneChangePerToken&&(e.lastComponent={count:1,previousComponent:e.lastComponent,added:!1,removed:!1});return l&&!i.oneChangePerToken&&(e.lastComponent={count:l,previousComponent:e.lastComponent,added:!1,removed:!1}),e.oldPos=s,c}equals(e,t,n){return n.comparator?n.comparator(e,t):e===t||!!n.ignoreCase&&e.toLowerCase()===t.toLowerCase()}removeEmpty(e){let t=[];for(let n=0;n<e.length;n++)e[n]&&t.push(e[n]);return t}castInput(e,t){return e}tokenize(e,t){return Array.from(e)}join(e){return e.join(``)}postProcess(e,t){return e}get useLongestToken(){return!1}buildValues(e,t,n){let r=[],i;for(;e;)r.push(e),i=e.previousComponent,delete e.previousComponent,e=i;r.reverse();let a=r.length,o=0,s=0,c=0;for(;o<a;o++){let e=r[o];if(e.removed)e.value=this.join(n.slice(c,c+e.count)),c+=e.count;else{if(!e.added&&this.useLongestToken){let r=t.slice(s,s+e.count);r=r.map(function(e,t){let r=n[c+t];return r.length>e.length?r:e}),e.value=this.join(r)}else e.value=this.join(t.slice(s,s+e.count));s+=e.count,e.added||(c+=e.count)}}return r}},te=new class extends ee{tokenize(e){return e.slice()}join(e){return e}removeEmpty(e){return e}};function ne(e,t,n){return te.diff(e,t,n)}var re=()=>{},ie=`cr`,ae=`crlf`,oe=`lf`,se=`\r`,ce=`\r
2
2
  `,le=`
3
3
  `,ue=le;function de(e){let t=e.indexOf(se);return t===-1?oe:e.charAt(t+1)===le?ae:ie}function fe(e){return e===ie?se:e===ae?ce:ue}var pe=new Map([[le,/\n/g],[se,/\r/g],[ce,/\r\n/g]]);function me(e,t){let n=pe.get(t);return e.match(n)?.length??0}var he=/\r\n?/g;function ge(e){return v(0,e,he,le)}var _e=Symbol.for(`comments`);function ve(e){return this[e<0?this.length+e:e]}var y=g(`at`,function(){if(Array.isArray(this)||typeof this==`string`)return ve}),b=`string`,x=`array`,S=`cursor`,C=`indent`,w=`align`,T=`trim`,E=`group`,D=`fill`,O=`if-break`,k=`indent-if-break`,A=`line-suffix`,j=`line-suffix-boundary`,M=`line`,N=`label`,P=`break-parent`,ye=new Set([S,C,w,T,E,D,O,k,A,j,M,N,P]);function be(e){let t=e.length;for(;t>0&&(e[t-1]===`\r`||e[t-1]===`
4
4
  `);)t--;return t<e.length?e.slice(0,t):e}function xe(e,t,n){if(!e.has(t)){let r=n(t);e.set(t,r)}return e.get(t)}function Se(e){if(typeof e==`string`)return b;if(Array.isArray(e))return x;if(!e)return;let{type:t}=e;if(ye.has(t))return t}var F=Se,Ce=e=>new Intl.ListFormat(`en-US`,{type:`disjunction`}).format(e);function we(e){let t=e===null?`null`:typeof e;if(t!==`string`&&t!==`object`)return`Unexpected doc '${t}',
@@ -0,0 +1,2 @@
1
+ var e={common:{loading:`Laddar...`,save:`Spara`,saving:`Sparar...`,cancel:`Avbryt`,delete:`Radera`,edit:`Redigera`,close:`Stäng`,back:`Tillbaka`,next:`Nästa`,confirm:`Bekräfta`,error:`Fel`,success:`Lyckades`,warning:`Varning`,or:`eller`,optional:`valfritt`,enabled:`Aktiverad`,disabled:`Inaktiverad`,on:`På`,off:`Av`,yes:`Ja`,no:`Nej`,search:`Sök`,noResults:`Inga resultat hittades`,retry:`Försök igen`,refresh:`Uppdatera`,download:`Ladda ner`,upload:`Ladda upp`,export:`Exportera`,import:`Importera`,reset:`Återställ`,apply:`Tillämpa`,clear:`Rensa`,all:`Alla`,none:`Ingen`,default:`Standard`,custom:`Anpassad`,remove:`Ta bort`},brand:{name:`Libre WebUI`,shortName:`Libre`},auth:{login:{title:`Välkommen tillbaka`,subtitle:`Logga in på ditt konto för att fortsätta`,username:`Användarnamn`,usernamePlaceholder:`Ange ditt användarnamn`,password:`Lösenord`,passwordPlaceholder:`Ange ditt lösenord`,signIn:`Logga in`,signingIn:`Loggar in...`,noAccount:`Har du inget konto?`,signUpHere:`Registrera dig här`,loginSuccess:`Inloggningen lyckades!`,loginFailed:`Inloggningen misslyckades`,checkCredentials:`Inloggningen misslyckades. Kontrollera dina uppgifter.`,enterBoth:`Ange både användarnamn och lösenord`,githubSuccess:`GitHub-inloggningen lyckades!`,githubFailed:`GitHub-autentiseringen misslyckades`,githubVerifyFailed:`Kunde inte verifiera GitHub-autentiseringen`},signup:{title:`Skapa konto`,subtitle:`Registrera ett nytt konto`,username:`Användarnamn`,usernamePlaceholder:`Välj ett användarnamn`,email:`E-post`,emailPlaceholder:`din@epost.se`,password:`Lösenord`,passwordPlaceholder:`Välj ett lösenord`,confirmPassword:`Bekräfta lösenord`,confirmPasswordPlaceholder:`Bekräfta ditt lösenord`,createAccount:`Skapa konto`,creatingAccount:`Skapar konto...`,hasAccount:`Har du redan ett konto?`,signInHere:`Logga in här`,signupSuccess:`Kontot skapades!`,signupFailed:`Registreringen misslyckades`,tryAgain:`Registreringen misslyckades. Försök igen.`,usernameRequired:`Användarnamn och lösenord krävs`,passwordMismatch:`Lösenorden matchar inte`,passwordTooShort:`Lösenordet måste vara minst 6 tecken långt`},logout:{button:`Logga ut`,success:`Utloggningen lyckades`},oauth:{continueWith:`Fortsätt med {{provider}}`,connectingTo:`Ansluter till {{provider}}...`,github:`GitHub`,huggingFace:`Hugging Face`},checkingAuth:`Kontrollerar autentisering...`,welcome:`Välkommen`,noEmail:`Ingen e-post angiven`,role:`Roll`,id:`ID`,userId:`Användar-ID`,signInDescription:`Logga in med ditt GitHub-konto för att fortsätta`,signInWithGitHub:`Logga in med GitHub`,jwtActive:`JWT-autentisering aktiv`,jwtDescription:`JWT-baserad autentisering med GitHub OAuth`,github:`GitHub`,provider:`Leverantör`},setup:{welcome:{title:`Välkommen till Libre WebUI`,subtitle:`Låt oss komma igång`,description:`Konfigurera din Libre WebUI-instans i några enkla steg`,createAdmin:`Skapa administratörskonto`,features:{secure:{title:`Säker och privat`,description:`Dina konversationer stannar på din enhet`},fast:{title:`Snabb och responsiv`,description:`Optimerad för hastighet och prestanda`},openSource:{title:`Öppen källkod`,description:`Fri och öppen mjukvara`}}},admin:{title:`Skapa administratörskonto`,subtitle:`Administratörskonfiguration`,description:`Skapa det första administratörskontot för din Libre WebUI-instans`,usernamePlaceholder:`Ange administratörens användarnamn`,passwordPlaceholder:`Ange lösenord (minst 6 tecken)`,confirmPlaceholder:`Bekräfta ditt lösenord`,creating:`Skapar...`,createAdmin:`Skapa administratör`,success:`Administratörskontot skapades!`,failed:`Kunde inte skapa administratörskonto`,fillAllFields:`Fyll i alla fält`,note:`Detta blir det primära administratörskontot för din Libre WebUI-instans`},encryptionKey:{title:`Spara din krypteringsnyckel`,subtitle:`Viktigt: Spara denna nyckel`,description:`Denna krypteringsnyckel skyddar dina känsliga data. Förvara den säkert - du behöver den om du någonsin behöver återställa din databas.`,warning:`Varning`,warningText:`Om du förlorar denna nyckel och behöver återställa din databas kommer din krypterade data (API-nycklar, inställningar) att vara oåterkalleligt förlorad.`,label:`Din krypteringsnyckel`,loading:`Laddar...`,copyToClipboard:`Kopiera till urklipp`,copied:`Krypteringsnyckeln kopierades till urklipp!`,copyFailed:`Kunde inte kopiera nyckeln till urklipp`,envNote:`Denna nyckel sparas också i din backend/.env-fil som ENCRYPTION_KEY`,acknowledgment:`Jag har sparat min krypteringsnyckel på ett säkert ställe och förstår att förlust av den kan resultera i dataförlust.`,confirmRequired:`Bekräfta att du har sparat krypteringsnyckeln`,continue:`Fortsätt till Libre WebUI`}},chat:{greeting:{morning:`God morgon`,afternoon:`God eftermiddag`,evening:`God kväll`,night:`God natt`},welcome:{helpToday:`Vad kan jag hjälpa till med idag?`,helpTonight:`Vad kan jag hjälpa till med ikväll?`,variety:{create:{title:`Vad ska vi skapa?`,subtitle:`Börja med en tanke, en skiss eller ett envist problem.`},explore:{title:`Var ska vi börja?`,subtitle:`Ta med frågan som du ständigt återkommer till.`},imagine:{title:`Vad föreställer du dig?`,subtitle:`Vi kan forma det tillsammans.`},focus:{title:`Vad förtjänar din uppmärksamhet?`,subtitle:`Låt oss göra nästa steg tydligt.`},untangle:{title:`Var sitter knuten?`,subtitle:`Ge mig den röriga versionen först.`},momentum:{title:`Redo när du är.`,subtitle:`Plocka upp en idé, en plan eller en oavslutad tråd.`},open:{title:`Vad tänker du på?`,subtitle:`En liten tanke eller ett ambitiöst projekt. Båda fungerar.`},challenge:{title:`Vad ska vi lösa?`,subtitle:`Berätta vad som inte fungerar än.`},draft:{title:`Låt oss börja någonstans.`,subtitle:`Det behöver inte vara finslipat.`},possibility:{title:`Vad skulle det här kunna bli?`,subtitle:`Visa mig råmaterialet.`},unexpected:{title:`Skapa något oväntat.`,subtitle:`Ge mig en begränsning, en stämning eller en halvfärdig idé.`}}},input:{placeholder:`Skicka ett meddelande`,messagePlaceholder:`Meddelande...`,attachImages:`Bifoga bilder`,attachments:`Bilagor och avancerade funktioner`,sendMessage:`Skicka meddelande`,stopGeneration:`Stoppa generering`},session:{new:`Ny chatt`,work:`Arbete`,chat:`Chatt`,private:`Privat`,privateMode:`Privat läge`,privateDescription:`Denna konversation sparas inte`,privateTooltip:`Starta en privat konversation som inte sparas`,deleteConfirm:`Är du säker på att du vill radera denna chatt?`,generatingTitle:`Genererar titel`,noChats:`Inga chattar ännu`,createFirst:`Skapa din första chatt ovan`,chats:`Chattar`,renameChat:`Byt namn på chatt`,deleteChat:`Radera chatt`},persona:{applied:`Persona tillämpad`,label:`Persona`},model:{updated:`Modell uppdaterad`,noModels:`Inga modeller tillgängliga`,noModelsDescription:`Inga modeller tillgängliga. Se till att Ollama körs och har modeller installerade.`,pullCommand:`ollama pull llama3.2:3b`,noModelsTooltip:`Inga modeller tillgängliga. Se till att Ollama körs och modeller är installerade.`},footer:{disclaimer:`AI kan göra misstag - verifiera viktig information`,images:`{{count}} bild`,images_plural:`{{count}} bilder`,structuredOutput:`Strukturerad utdata`},mediaUpload:{dropImagesHere:`Släpp bilder här eller`,supportedFormats:`Stöder: JPG, PNG, GIF, WebP (max 10MB vardera)`,browse:`bläddra`},structuredOutput:{title:`Svarsformat`,none:`Inget (naturligt språk)`,noneDescription:`Standardsvar i naturligt språk`,json:`JSON`,jsonDescription:`Strukturerat JSON-format`,list:`Lista`,listDescription:`Array av objekt`,summary:`Sammanfattning`,summaryDescription:`Dokumentsammanfattning med huvudpunkter`,analysis:`Analys`,analysisDescription:`Strukturerad analys med för- och nackdelar`,custom:`Anpassat schema`,customDescription:`Definiera ditt eget JSON-schema`,customSchema:`Anpassat JSON-schema`,schemaPreview:`Schemaförhandsgranskning`,applySchema:`Tillämpa schema`,cancel:`Avbryt`,enabled:`Strukturerad utdata aktiverad`}},sidebar:{navigation:{chat:`Chatt`,models:`Modeller`,personas:`Personas`,imagine:`Skapa bild`,settings:`Inställningar`,userManagement:`Användarhantering`,signOut:`Logga ut`,agents:`Agenter`,work:`Arbete`,exploreLabel:`Utforska`},toggleSize:`Växla sidofältets storlek`,expandSidebar:`Expandera sidofältet`},user:{menu:{changePicture:`Ändra bild`,settings:`Inställningar`,userManagement:`Användarhantering`,logout:`Logga ut`},avatar:{title:`Ändra profilbild`,updated:`Profilbilden uppdaterad`,updateFailed:`Kunde inte uppdatera profilbilden`,saving:`Sparar...`,label:`Avatar`,uploadAvatarImage:`Ladda upp avatarbild`,dragAndDrop:`Dra och släpp en bild eller klicka för att bläddra`,chooseImage:`Välj bild`,uploading:`Laddar upp...`,enterImageUrl:`Eller ange bild-URL`,supportedFormats:`Stöder: JPG, PNG, GIF, WebP (max 2 MB). Fyrkantiga bilder fungerar bäst.`,customAvatar:`Anpassad avatarbild`,clickToChange:`Klicka för att ändra eller ta bort`,removed:`Avatar borttagen`,uploaded:`Avatar uppladdad`,invalidFile:`Vänligen välj en giltig bildfil`,fileTooLarge:`Avatarbildens storlek måste vara mindre än 2 MB`,readFailed:`Kunde inte läsa bildfilen`,uploadFailed:`Kunde inte ladda upp avatarbild`},profile:{noEmail:`Ingen e-post angiven`}},settings:JSON.parse(`{"title":"Inställningar","tabs":{"appearance":"Utseende","model":"Modell","systemMessage":"Systemmeddelande","plugins":"Tillägg","generation":"Generering","documents":"Dokument","tts":"Tal","imageGen":"Bilder","data":"Data","about":"Om"},"appearance":{"title":"Utseende","language":{"title":"Språk","description":"Välj ditt föredragna språk"},"theme":{"title":"Tema","light":"Ljust","dark":"Mörkt","amoled":"Djupsvart","system":"System"},"accent":{"title":"Accentfärg","custom":"Anpassad färg","useColor":"Använd {{color}} som accent","behaviorTitle":"Gränssnittspalett","behaviorDescription":"Välj om accentfärgen bara används på kontroller eller anpassar hela det ljusa eller mörka gränssnittet.","defaultStyle":"Standard","defaultStyleDescription":"Behåll neutrala ytor i ljust och mörkt tema.","adaptedStyle":"Anpassa till accent","adaptedStyleDescription":"Färga ytor, kanter och text med accentfärgen."},"chatInterface":{"title":"Chattgränssnitt","showUsername":"Visa användarnamn","showUsernameDescription":"Visa användarnamn i chattmeddelanden"},"background":{"title":"Bakgrundsbild","enable":"Aktivera bakgrundsbild","enableDescription":"Visa anpassad bakgrund med oskärpa","blur":"Oskärpa","opacity":"Opacitet","upload":"Ladda upp bakgrundsbild","dragDrop":"Dra och släpp en bild eller klicka för att bläddra","chooseImage":"Välj bild"}},"saveSettings":"Spara inställningar","model":{"title":"Modellinställningar","defaultModel":"Standardmodell","defaultModelDescription":"Denna modell används som standard för nya konversationer","selectModel":"Välj en modell","updateAll":"Uppdatera alla modeller","updateAllDescription":"Sök efter uppdateringar och hämta senaste versionerna av alla installerade modeller","updateAllButton":"Uppdatera alla","updating":"Uppdaterar modeller...","currentModelInfo":"Information om nuvarande modell","name":"Namn","size":"Storlek","family":"Familj","format":"Format","status":"Status","statusStarting":"Startar...","statusComplete":"Klar","statusError":"Fel","bulkOperations":"Massoperationer","autoTitle":{"title":"Automatisk titelgenerering","enable":"Aktivera automatisk titel","enableDescription":"Generera automatiskt titlar för nya konversationer","taskModel":"Uppgiftsmodell","selectTaskModel":"Välj uppgiftsmodell","taskModelDescription":"Modell som används för att generera konversationstitlar"},"persona":"Persona","updatingModel":"Uppdaterar {{name}} ({{current}}/{{total}})","modelsProgress":"{{current}} av {{total}} modeller","modelPullAccess":"Åtkomst till modellinstallation","modelPullAccessDescription":"Tillåt icke-administratörer att hämta och installera nya modeller.","modelPullAccessSaved":"Behörigheter för modellinstallation har uppdaterats","modelPullAccessSaveFailed":"Det gick inte att uppdatera behörigheter för modellinstallation"},"systemMessage":{"title":"Systemmeddelande","description":"Ställ in ett anpassat systemmeddelande som används för alla nya konversationer.","placeholder":"Ange ett systemmeddelande...","saved":"Systemmeddelande sparat","saveFailed":"Kunde inte spara systemmeddelande"},"plugins":{"title":"Tillägg","description":"Hantera dina installerade tillägg","addNew":"Lägg till nytt tillägg","upload":"Ladda upp tillägg","addJson":"Lägg till JSON","uploading":"Laddar upp...","jsonPlaceholder":"Klistra in tilläggs-JSON-konfiguration...","install":"Installera tillägg","noPlugins":"Inga tillägg installerade","noPluginsDescription":"Lägg till ett tillägg för att utöka funktionaliteten","loading":"Laddar tillägg...","installed":"Installerade tillägg","active":"Aktiva tillägg","activeLabel":"Aktiv","inactive":"Inaktiv","activate":"Aktivera","deactivate":"Inaktivera","models":"modeller","apiKeySet":"API-nyckel inställd","apiKeyConfiguration":"API-nyckelkonfiguration","apiKeyEnvAlternative":"Alternativt, ställ in","environmentVariable":"miljövariabel","apiKeyConfigured":"API-nyckel konfigurerad","apiKeyPlaceholder":"Ange din API-nyckel...","saveApiKey":"Spara API-nyckel","apiKey":{"title":"API-nyckel","placeholder":"Ange API-nyckel","save":"Spara nyckel","remove":"Ta bort nyckel","configured":"API-nyckel konfigurerad","notConfigured":"API-nyckel krävs","saved":"API-nyckeln sparades","removed":"API-nyckeln togs bort","saveFailed":"Kunde inte spara API-nyckel","removeFailed":"Kunde inte ta bort API-nyckel","enterKey":"Ange en API-nyckel"},"variables":"Variables"},"generation":{"title":"Genereringsalternativ","description":"Konfigurera hur AI:n genererar svar","coreParameters":"Kärnparametrar","temperature":"Temperatur","temperatureDescription":"Styr slumpmässighet. Lägre värden är mer fokuserade, högre värden mer kreativa.","topP":"Top P","topPDescription":"Styr mångfald via kärnsampling. Lägre värden fokuserar på sannolika tokens.","topK":"Top K","topKDescription":"Begränsar tokenval till de K mest sannolika. Sätt till 0 för att inaktivera.","minP":"Min P","minPDescription":"Minsta sannolikhetströskel för tokenval.","generationControl":"Genereringskontroll","maxTokens":"Max tokens","maxTokensDescription":"Maximalt antal tokens att generera i svaret.","repeatPenalty":"Upprepningsstraff","repeatPenaltyDescription":"Bestraffar upprepade tokens. Högre värden minskar upprepning.","contextLength":"Kontextlängd","contextLengthDescription":"Maximal kontextfönsterstorlek för konversationer.","seed":"Seed","optional":"valfritt","random":"Slumpmässig","seedDescription":"Ställ in en specifik seed för reproducerbara resultat.","advancedOptions":"Avancerade alternativ","presencePenalty":"Närvarostraff","presencePenaltyDescription":"Bestraffar tokens som förekommer i kontexten.","frequencyPenalty":"Frekvensstraff","frequencyPenaltyDescription":"Bestraffar ofta använda tokens.","stopSequences":"Stoppsekvenser","commaSeparated":"kommaseparerade","stopSequencesDescription":"Anpassade tokens som stoppar genereringen när de påträffas.","resetDefaults":"Återställ till standardvärden","saveOptions":"Spara alternativ","embeddingSettings":"Inbäddningsinställningar","enableEmbeddings":"Aktivera dokumentinbäddningar"},"documents":{"title":"Dokumentinställningar","embeddings":{"title":"Inbäddningar","enable":"Aktivera dokumentinbäddningar","model":"Inbäddningsmodell","modelDescription":"Välj modell för dokumentinbäddning","chunkSize":"Segmentstorlek","chunkSizeInTokens":"(i tokens)","chunkSizeDescription":"Storlek på textsegment för inbäddning","chunkOverlap":"Segmentöverlappning","chunkOverlapInTokens":"(i tokens)","chunkOverlapDescription":"Överlappning mellan på varandra följande segment","similarityThreshold":"Likhetströskel","similarityDescription":"Minsta likhetspoäng för att inkludera resultat","status":"Inbäddningsstatus","statusLabel":"Status","available":"Tillgänglig","unavailable":"Ej tillgänglig","chunksWithEmbeddings":"Segment med inbäddningar","coverage":"Täckning","regenerate":"Regenerera inbäddningar","regenerating":"Regenererar..."}},"tts":{"title":"Text-till-tal","description":"Konfigurera text-till-tal-inställningar för uppläsning av meddelanden","loadingProviders":"Laddar TTS-leverantörer...","noProviders":"Inga TTS-leverantörer","noProvidersDescription":"Konfigurera ett tillägg med TTS-stöd för att aktivera text-till-tal","enable":"Aktivera TTS","enableDescription":"Tillåt text-till-tal för assistentmeddelanden","autoPlay":"Spela upp svar automatiskt","autoPlayDescription":"Läs automatiskt upp nya assistentmeddelanden","streamSentences":"Strömma meningar","streamSentencesDescription":"Spela upp ljud mening för mening istället för att vänta på hela meddelandet. Rekommenderas för lokal TTS för att undvika timeout vid långa meddelanden.","voiceConfiguration":"Röstkonfiguration","model":"TTS-modell","modelDescription":"Välj modell för text-till-tal-generering","voice":"Röst","selectVoice":"Välj en röst","voiceDescription":"Välj röst för text-till-tal","speed":"Hastighet","speedSlow":"0,5x","speedNormal":"1,0x","speedFast":"2,0x","availableProviders":"Tillgängliga leverantörer","models":"modeller","test":"Testa","testing":"Testar...","stop":"Stoppa"},"imageGen":{"title":"Bildgenerering","description":"Konfigurera bildgenereringsinställningar och leverantörer","loadingProviders":"Laddar bildgenereringsleverantörer...","noProviders":"Inga bildgenereringsleverantörer","noProvidersDescription":"Konfigurera ett tillägg med bildgenereringsstöd","enable":"Aktivera bildgenerering","enableDescription":"Tillåt AI-bildgenerering i konversationer","configuration":"Konfiguration","model":"Modell","modelDescription":"Välj modell för bildgenerering","size":"Storlek","sizeDescription":"Upplösning för genererade bilder","quality":"Kvalitet","qualityDescription":"Kvalitetsnivå för genererade bilder","style":"Stil","styleDescription":"Stilförinställning för genererade bilder","availableProviders":"Tillgängliga leverantörer","models":"modeller"},"data":{"title":"Datahantering","export":"Exportera data","exportDescription":"Ladda ner all din data inklusive inställningar, sessioner och dokument.","exportAll":"Exportera all data","import":"Importera data","importDescription":"Importera data från en tidigare export.","importData":"Importera data","importing":"Importerar...","clearSessions":"Rensa sessioner","clearSessionsDescription":"Radera alla chattsessioner. Denna åtgärd kan inte ångras.","clearAll":"Rensa alla","clearing":"Rensar...","importOptions":"Importalternativ","importOptionsDescription":"Välj hur befintlig data ska hanteras","skipDuplicates":"Hoppa över dubbletter","overwrite":"Skriv över befintliga","importResults":"Importresultat","preferences":"Inställningar","imported":"Importerade","failed":"Misslyckades","sessions":"Sessioner","importedLabel":"importerade","skipped":"hoppades över","documents":"Dokument","errors":"Fel"},"about":{"title":"Om","versionLabel":"Version","ollama":{"title":"Ollama-status","version":"Version","healthy":"Fungerar","unhealthy":"Fungerar inte"},"stats":{"models":"Modeller","sessions":"Sessioner"},"features":{"privacy":{"title":"Integritet först","description":"Din data stannar på din enhet"},"openSource":{"title":"Öppen källkod","description":"Fri och öppen mjukvara"},"localInference":{"title":"Lokal inferens","description":"Kör AI-modeller lokalt med Ollama"}},"openSourceBy":"Öppen källkod av {{company}}","links":{"title":"Länkar","github":"GitHub","githubDescription":"Visa källkod och bidra","website":"Webbplats","websiteDescription":"Besök vår webbplats","ollama":"Ollama","ollamaDescription":"Läs mer om Ollama","documentation":"Dokumentation","reportIssue":"Rapportera problem","reportIssueDescription":"Felrapporter och funktionsförfrågningar","gitlab":"GitLab-spegel","gitlabDescription":"Självhostat GitLab-förråd","documentationDescription":"Guider, handledningar och API-referens"},"version":"Version {{version}}"},"groups":{"general":"Allmänt","chat":"Chatt","media":"Tal och bilder","connections":"Anslutningar"}}`),models:{title:`Modeller`,subtitle:`Hämta, hantera och övervaka dina Ollama-modeller`,installed:`Installerade modeller`,available:`Tillgängliga modeller`,pull:`Hämta modell`,pulling:`Hämtar...`,delete:`Radera modell`,deleting:`Raderar...`,size:`Storlek`,modified:`Ändrad`,family:`Familj`,parameters:`Parametrar`,quantization:`Kvantisering`,noModels:`Inga modeller installerade`,pullFirst:`Hämta en modell för att komma igång`,noModelsFound:`Inga modeller hittades`},personas:{title:`Personas`,create:`Skapa persona`,edit:`Redigera persona`,delete:`Radera persona`,name:`Namn`,description:`Beskrivning`,systemPrompt:`Systemprompt`,model:`Modell`,avatar:`Avatar`,background:`Bakgrund`,noPersonas:`Inga personas skapade`,createFirst:`Skapa din första persona för att anpassa din chattupplevelse`},gallery:{title:`Galleri`,subtitle:`Ditt AI-genererade bildgalleri`,imageCount:`{{count}} bilder`,generate:`Generera bild`,generateDescription:`Skapa bilder med AI`,generating:`Genererar...`,prompt:`Prompt`,promptPlaceholder:`Beskriv bilden du vill generera...`,noImages:`Inga bilder genererade ännu`,download:`Ladda ner`,delete:`Radera`,regenerate:`Generera om`,model:`Modell`,size:`Storlek`,quality:`Kvalitet`,created:`Skapad`},errors:{generic:`Ett fel uppstod`,network:`Nätverksfel. Kontrollera din anslutning.`,unauthorized:`Du har inte behörighet att utföra denna åtgärd.`,notFound:`Den begärda resursen hittades inte.`,serverError:`Serverfel. Försök igen senare.`,validation:`Kontrollera din inmatning och försök igen.`},keyboard:{title:`Tangentbordsgenvägar`,toggleSidebar:`Växla sidofält`,openSettings:`Öppna inställningar`,toggleDarkMode:`Växla mörkt läge`,showShortcuts:`Visa tangentbordsgenvägar`,closeModals:`Stäng dialogrutor`,groups:{navigation:`Navigering`,settings:`Inställningar`,general:`Allmänt`,chat:`Chatt`},actions:{sendMessage:`Skicka meddelande`,newLine:`Ny rad i meddelande`},footer:`Tryck {{key1}} eller {{key2}} för att visa denna hjälp`,tooltip:`Tangentbordsgenvägar`},modelManager:{title:`Modeller`,loading:`Laddar modeller...`,systemStatus:{online:`Ollama online`,offline:`Ollama offline`,models:`modell`,models_plural:`modeller`,running:`körs`,vram:`VRAM`},sections:{pull:`Hämta ny modell`,library:`Bläddra i bibliotek`,running:`Aktiva modeller`,local:`Lokala modeller`,advanced:`Avancerade åtgärder`,huggingface:`HuggingFace Hub`},pull:{placeholder:`Ange modellnamn (t.ex. llama3.2:3b, deepseek-r1:14b)`,button:`Hämta`,cancel:`Avbryt`,popular:`Populära modeller:`,browseAll:`Bläddra bland alla modeller på ollama.com`,success:`Modellen {{name}} hämtades`,cancelled:`Modellhämtning avbruten`,failed:`Kunde inte hämta modell`,enterName:`Ange ett modellnamn`,restricted:`Modellinstallation är begränsad till administratörer på denna instans.`},progress:{starting:`Initierar...`,pulling:`Laddar ner modell...`,pullingLayer:`laddar ner`,verifying:`Verifierar integritet...`,verifyingDigest:`verifierar sha256-digest`,writing:`Skriver manifest...`,cleaning:`Städar upp...`},library:{available:`tillgänglig`,search:`Sök modeller...`,noResults:`Inga modeller hittades som matchar dina kriterier`,installed:`Installerad`,more:`+{{count}} fler`,refresh:`Uppdatera bibliotek`},local:{noModels:`Inga modeller installerade ännu`,pullToStart:`Hämta en modell ovan för att komma igång`,installed:`installerad`,running:`Körs`,info:`Info`,copy:`Kopiera`,delete:`Radera`,deleteConfirm:`Är du säker på att du vill radera modellen "{{name}}"?`,deleteSuccess:`Modellen {{name}} raderades`,deleteFailed:`Kunde inte radera modell`},advanced:{createModel:`Skapa modell`,fromModelfile:`Från Modelfile`,copyModel:`Kopiera modell`,duplicateExisting:`Duplicera befintlig`,testEmbeddings:`Testa inbäddningar`,generateVectors:`Generera vektorer`,healthCheck:`Hälsokontroll`,testConnection:`Testa anslutning`,healthy:`Ollama fungerar!`},modals:{details:{title:`Modelldetaljer`,info:`Modellinformation`,family:`Familj`,parameters:`Parametrar`,quantization:`Kvantisering`,format:`Format`,systemPrompt:`Systemprompt`,template:`Mall`,license:`Licens`,modelfile:`Modelfile`,noDetails:`Inga detaljer tillgängliga`},copy:{title:`Kopiera modell`,source:`Källmodell`,selectModel:`Välj en modell...`,newName:`Nytt modellnamn`,placeholder:`t.ex. min-anpassade-modell`,copying:`Kopierar...`,button:`Kopiera modell`,success:`Modellen kopierades till {{name}}`,failed:`Kunde inte kopiera modell`,enterBoth:`Ange både käll- och målnamn`},create:{title:`Skapa anpassad modell`,name:`Modellnamn`,namePlaceholder:`t.ex. min-assistent`,modelfile:`Modelfile`,modelfilePlaceholder:`FROM llama3.2
2
+ SYSTEM Du är en hjälpsam assistent.`,see:`Se`,docs:`Modelfile-dokumentation`,docsLink:`för syntaxreferens`,creating:`Skapar...`,button:`Skapa modell`,success:`Modellen {{name}} skapades`,failed:`Kunde inte skapa modell`,enterBoth:`Ange modellnamn och Modelfile-innehåll`},embeddings:{title:`Testa inbäddningar`,model:`Inbäddningsmodell`,selectModel:`Välj en modell...`,recommended:`Rekommenderade: nomic-embed-text, mxbai-embed-large`,input:`Inmatningstext`,placeholder:`Ange text att generera inbäddningar för...`,generating:`Genererar...`,button:`Generera inbäddningar`,result:`Resultat ({{count}} dimensioner)`,success:`Genererade {{count}}-dimensionell inbäddningsvektor`,failed:`Kunde inte generera inbäddningar`,enterBoth:`Välj en modell och ange text`}},huggingface:{browseAll:`Bläddra bland alla på HuggingFace`,checkingGguf:`Söker efter GGUF-filer...`,noGgufAvailable:`Inga GGUF-filer tillgängliga för direkt Ollama-hämtning`,ggufFilesCount:`GGUF-filer ({{count}}) - Hämta direkt till Ollama`,noModelsFound:`Inga modeller hittades`,noResults:`Inga modeller hittades. Försök justera din sökning eller filter.`,browseAllLink:`Visa alla`,search:`Sök HuggingFace-modeller...`,by:`av`,gated:`Begränsad åtkomst`,viewOnHF:`Visa på HuggingFace`,sortDownloads:`Nedladdningar`,sortLikes:`Gillar`,sortRecent:`Senaste`,taskTextGeneration:`Textgenerering`,taskTextToSpeech:`Text till tal`,taskTextToImage:`Text till bild`,taskSpeechRecognition:`Taligenkänning`,tasks:{textGen:`Textgenerering`,tts:`Text till tal`,image:`Text till bild`,stt:`Taligenkänning`},sort:{downloads:`Mest nedladdade`,likes:`Mest gillade`,recent:`Nyligen uppdaterade`}}},personaManager:{title:`Personas`,subtitle:`Skapa och hantera AI-personas med anpassade personligheter, minnen och beteenden`,loading:`Laddar personas...`,createButton:`Skapa persona`,importExport:`Importera/Exportera`,stats:{title:`Dina personas`,count:`{{count}} persona skapad`,count_plural:`{{count}} personas skapade`},empty:{title:`Inga personas ännu`,description:`Skapa din första persona för att komma igång med personaliserade AI-interaktioner`,button:`Skapa din första persona`},deleteConfirm:`Är du säker på att du vill radera "{{name}}"?`,deleteSuccess:`Persona "{{name}}" raderades`,downloadSuccess:`Persona "{{name}}" laddades ner`,failed:`Kunde inte {{action}} persona`},personaForm:{title:{create:`Skapa ny persona`,edit:`Redigera persona`},subtitle:{create:`Skapa en ny AI-persona med anpassad personlighet, minnessystem och adaptiv inlärning`,edit:`Anpassa din AI-persona med avancerat minne, adaptiv inlärning och intelligenta parametrar`},loading:`Laddar formulär...`,saved:`Sparad`,tabs:{basic:`Grundläggande`,parameters:`Parametrar`,memory:`Minne och inlärning`,advanced:`Avancerat`},basic:{name:`Namn`,namePlaceholder:`Ange personans namn`,model:`Modell`,selectModel:`Välj en modell`,description:`Beskrivning`,descriptionPlaceholder:`Beskriv din persona...`,systemPrompt:`Systemprompt`,systemPromptPlaceholder:`Ange systemprompten som definierar din personas beteende...`,systemPromptHint:`Systemprompten definierar hur din persona kommer att bete sig och svara.`},parameters:{temperature:`Temperatur`,temperatureHint:`Styr kreativitet kontra konsekvens`,topP:`Top-P`,topPHint:`Styr svarsmångfald`,topK:`Top-K`,topKHint:`Begränsar vokabulär till top-k tokens`,contextWindow:`Kontextfönster`,contextWindowHint:`Maximal konversationshistoriklängd`,maxTokens:`Max tokens`,maxTokensHint:`Maximal svarslängd`,repeatPenalty:`Upprepningsstraff`,repeatPenaltyHint:`Minskar upprepande svar`},memory:{title:`Minnessystem`,subtitle:`Persona minns konversationer över tid`,enableHint:`Aktivera minnessystemet för att låta din persona komma ihåg konversationer och bygga upp kontext över tid.`,loading:`Laddar minnesstatus...`,noData:`Ingen minnesdata ännu`,memories:`Minnen`,mbUsed:`MB använt`,lastBackup:`Senaste säkerhetskopiering`,never:`Aldrig`,maxMemories:`Maximala minnen`,maxMemoriesHint:`Hur många minnen denna persona kan lagra`,retention:`Minnesbevarande`,retentionHint:`Dagar att behålla minnen före rensning`,autoCleanup:`Automatisk rensning av gamla minnen`,wipeAll:`Radera alla minnen`,wipeCannot:`Detta kan inte ångras`,wipeButton:`Radera`,wiping:`Raderar...`,wipeConfirm:`Är du säker på att du vill radera alla minnen? Detta kan inte ångras.`,wipeSuccess:`Raderade {{count}} minnen`},learning:{title:`Adaptiv inlärning`,subtitle:`Persona utvecklas baserat på interaktioner`,enableHint:`Aktivera adaptiv inlärning för att låta din persona utvecklas och personalisera svar baserat på dina interaktioner.`,speed:`Inlärningshastighet`,slow:`Långsam`,slowDesc:`Gradvisa förändringar`,balanced:`Balanserad`,balancedDesc:`Måttlig takt`,fast:`Snabb`,fastDesc:`Snabb anpassning`,autoAdapt:`Anpassa automatiskt till användarpreferenser`,whatLearns:`Vad personan lär sig:`,conversationTone:`Konversationston`,responseStyle:`Svarsstil`,userPreferences:`Användarpreferenser`,topicInterests:`Ämnesintressen`},advanced:{embeddingModel:`Inbäddningsmodell`,embeddingHint:`Välj modell för minneskodning och semantisk sökning. Inbäddningsmodeller visas först, följt av andra tillgängliga modeller.`,noModels:`Inga modeller hittades`,embeddingModels:`Inbäddningsmodeller`,otherModels:`Andra modeller`,installHint:`Installera en inbäddningsmodell:`,recommended:`Rekommenderade: nomic-embed-text, mxbai-embed-large, bge-m3, snowflake-arctic-embed`,aboutTitle:`Om avancerade inställningar`,aboutDescription:`Inbäddningsmodellen används av minnessystemet för att förstå semantisk betydelse och hitta relevanta minnen under konversationer. Välj en modell som passar ditt användningsfall och tillgängliga resurser.`},actions:{cancel:`Avbryt`,save:`Spara`,saving:`Sparar...`,saveClose:`Spara och stäng`,create:`Skapa`},success:{created:`Persona skapad`,updated:`Persona uppdaterad`},error:{saveFailed:`Kunde inte spara`}},personaCard:{enhanced:`Förbättrad`,systemPrompt:`Systemprompt`,memories:`minnen`,use:`Använd`,editTooltip:`Redigera persona`,downloadTooltip:`Ladda ner persona`,backup:`Säkerhetskopiera`,exportDNA:`Exportera DNA`,wipeMemories:`Radera minnen`,wipeConfirm:`Är du säker på att du vill radera alla minnen för denna persona? Denna åtgärd kan inte ångras.`,wipeSuccess:`Raderade {{count}} minnen`,backupSuccess:`Personans säkerhetskopia laddades ner`,dnaSuccess:`Personans DNA exporterades`,failed:`Kunde inte {{action}}`},userManager:{title:`Användarhantering`,subtitle:`Hantera användarkonton och behörigheter`,pageDescription:`Hantera användarkonton, behörigheter och åtkomstkontroller för din Libre WebUI-instans.`,loading:`Laddar användare...`,createUser:`Skapa användare`,search:`Sök användare...`,noUsers:`Inga användare hittades`,noUsersMatching:`Inga användare matchar din sökning`,columns:{user:`Användare`,email:`E-post`,role:`Roll`,created:`Skapad`,actions:`Åtgärder`},roles:{admin:`Administratör`,user:`Användare`},noEmail:`Ingen e-post`,deleteConfirm:`Är du säker på att du vill radera användaren "{{name}}"?`,deleteSuccess:`Användaren raderades`,deleteFailed:`Kunde inte radera användare`,cannotDeleteSelf:`Du kan inte radera ditt eget konto`,form:{title:{create:`Skapa användare`,edit:`Redigera användare`},username:`Användarnamn`,usernamePlaceholder:`Ange användarnamn`,email:`E-post`,emailPlaceholder:`Ange e-post (valfritt)`,password:`Lösenord`,passwordPlaceholder:`Ange lösenord`,passwordHint:`Lämna tomt för att behålla nuvarande lösenord`,role:`Roll`,creating:`Skapar...`,updating:`Uppdaterar...`,createButton:`Skapa användare`,updateButton:`Uppdatera användare`,createSuccess:`Användaren skapades`,updateSuccess:`Användaren uppdaterades`,createFailed:`Kunde inte skapa användare`,updateFailed:`Kunde inte uppdatera användare`}},chatHistory:{label:`Konversationshistorik`,jumpToTurn:`Gå till tur {{index}} av {{total}}`},chatMessage:{you:`Du`,assistant:`Assistent`,system:`System`,copy:`Kopiera`,copyMessage:`Kopiera meddelande`,copied:`Kopierat!`,regenerate:`Generera om`,regenerateResponse:`Generera om svar`,edit:`Redigera`,editSystemMessage:`Redigera systemmeddelande`,saveChanges:`Spara ändringar`,cancelEditing:`Avbryt redigering`,delete:`Radera`,deleteConfirm:`Radera detta meddelande?`,branch:`Förgrena`,speaking:`Talar...`,speakMessage:`Läs upp meddelande`,stopSpeaking:`Sluta tala`,showMore:`Visa mer`,showLess:`Visa mindre`,thinking:`Tänker`,systemMessagePlaceholder:`Ange ditt systemmeddelande...`,fullSizeImage:`Fullstor bild`,startConversation:`Starta en konversation`,startConversationDescription:`Skicka ett meddelande för att börja chatta med din AI-assistent. Ställ frågor, få hjälp med kod eller ha en naturlig konversation.`,scrollToBottom:`Scrolla till botten`,newMessages:`Nya meddelanden`},imageGallery:{title:`Bildgalleri`,noImages:`Inga bilder ännu`,noImagesHint:`Generera din första bild med panelen till höger`,delete:`Radera`,download:`Ladda ner`,deleteConfirm:`Är du säker på att du vill radera denna bild?`,deleteSuccess:`Bilden raderades`,deleteFailed:`Kunde inte radera bild`,downloadFailed:`Kunde inte ladda ner bild`,loadMore:`Ladda fler ({{current}} av {{total}})`,loadFailed:`Kunde inte ladda galleri`},imageGeneration:{title:`Generera bild`,prompt:`Prompt`,promptPlaceholder:`Beskriv bilden du vill skapa...`,model:`Modell`,selectModel:`Välj modell`,noModels:`Inga bildgenereringsmodeller tillgängliga`,configurePlugin:`Konfigurera ett tillägg med bildgenereringsstöd`,size:`Storlek`,quality:`Kvalitet`,style:`Stil`,generate:`Generera`,generating:`Genererar...`,success:`Bilden genererades`,failed:`Kunde inte generera bild`,enterPrompt:`Ange en prompt`,promptTooLong:`Prompten överstiger maxlängden på {{max}} tecken`},errorBoundary:{title:`Något gick fel`,description:`Vi stötte på ett oväntat fel. Försök att uppdatera sidan.`,tryAgain:`Uppdatera sidan`,goHome:`Gå till startsidan`,errorDetails:`Feldetaljer (utveckling)`},documents:{title:`Dokument`,upload:`Ladda upp dokument`,uploading:`Laddar upp...`,noDocuments:`Inga dokument uppladdade`,uploadHint:`Ladda upp dokument för att använda i dina konversationer`,delete:`Radera`,deleteConfirm:`Är du säker på att du vill radera detta dokument?`,deleteSuccess:`Dokumentet raderades`,deleteFailed:`Kunde inte radera dokument`,uploadSuccess:`Dokumentet laddades upp`,uploadFailed:`Kunde inte ladda upp dokument`,types:`Stöder: PDF, TXT, MD, DOCX`,unsupportedFileType:`Endast PDF- och TXT-filer stöds`,fileSizeTooLarge:`Filstorleken måste vara mindre än 10MB`,uploadSuccessWithName:`Dokumentet "{{name}}" laddades upp`,removeSuccess:`Dokumentet togs bort`,removeFailed:`Kunde inte ta bort dokument`,removeError:`Ett fel uppstod vid borttagning av dokumentet`,clickToUpload:`Klicka för att ladda upp`,orDragAndDrop:`eller dra och släpp`,fileTypesAndSize:`PDF- eller TXT-filer upp till 10MB`,uploadedDocuments:`Uppladdade dokument`,removeDocument:`Ta bort dokument`},ttsButton:{speak:`Tala`,stop:`Stoppa`,speaking:`Talar...`,generateFailed:`Kunde inte generera tal`,playbackFailed:`Ljuduppspelning misslyckades`,stopSpeaking:`Sluta tala`,generatingSpeech:`Genererar tal...`,readAloud:`Läs högt`},artifacts:{title:`Artefakter`,code:`Kod`,preview:`Förhandsgranskning`,copy:`Kopiera kod`,copied:`Kopierat!`,download:`Ladda ner`,expand:`Expandera`,collapse:`Minimera`,openInNewTab:`Öppna i ny flik`,invalidSvg:`Ogiltigt SVG-innehåll`,invalidJson:`Ogiltigt JSON-innehåll`,previewMode:`Förhandsgranskningsläge`,codeMode:`Kodläge`,copyContent:`Kopiera innehåll`,openInPanel:`Öppna i panel`,openInNewWindow:`Öppna i nytt fönster`,created:`Skapad`,closePanelEsc:`Stäng panel (Esc)`,copyButton:`Kopiera`,open:`Öppna`,dragEdgeToResize:`Dra i kanten för att ändra storlek`,previewUnavailable:`Preview unavailable`,previewUnavailableDescription:`This artifact does not contain renderable preview content. Switch to code view to inspect the source.`},personaImportExport:{title:`Importera och exportera personas`,description:`Exportera dina personas för att dela dem eller importera personas från andra`,exportPersonas:`Exportera personas`,importPersonas:`Importera personas`,noPersonasToExport:`Inga personas att exportera`,personasAvailable:`{{count}} persona tillgänglig`,personasAvailable_plural:`{{count}} personas tillgängliga`,exportAll:`Exportera alla`,uploadJsonFile:`Ladda upp JSON-fil`,pasteJsonLabel:`Klistra in JSON-data`,pasteJsonPlaceholder:`Klistra in persona JSON-data här...`,importing:`Importerar...`,importButton:`Importera persona(s)`,expectedFormat:`Förväntat JSON-format:`,exportSuccess:`Persona "{{name}}" exporterades`,exportFailed:`Kunde inte exportera persona`,exportAllSuccess:`Alla {{count}} personas exporterades`,exportAllFailed:`Kunde inte exportera personas`,pasteJsonData:`Klistra in persona JSON-data`,importMultipleSuccess:`Importerade {{count}} personas`,importMultipleFailed:`Kunde inte importera {{count}} personas`,importNoneFailed:`Kunde inte importera några personas`,importSuccess:`Persona importerades`,importFailed:`Kunde inte importera persona`},generationStats:{details:`Detaljer`,promptTokens:`Prompttokens:`,generatedTokens:`Genererade tokens:`,totalTokens:`Totalt tokens:`,speed:`Hastighet:`,promptEval:`Promptutvärdering:`,generation:`Generering:`,modelLoad:`Modellladdning:`,totalTime:`Total tid:`,generatedAt:`Genererat kl.:`},userMenu:{loggedOut:`Utloggad`,pictureUpdated:`Profilbild uppdaterad`,failedUpdateAvatar:`Det gick inte att uppdatera avatar`,failedUpdatePicture:`Det gick inte att uppdatera profilbild`,noEmail:`Ingen e-post angiven`,changePicture:`Byt bild`,settings:`Inställningar`,userManagement:`Användarhantering`,signOut:`Logga ut`,changeProfilePicture:`Byt profilbild`},pluginManager:{title:`Pluginhanterare`,upload:`Ladda upp`,addJson:`Lägg till JSON`,browseHF:`Bläddra i HF Hub`,confirmDelete:`Är du säker på att du vill ta bort detta plugin?`,uploading:`Laddar upp plugin...`,pasteJson:`Klistra in plugin-JSON här...`,installPlugin:`Installera plugin`,loading:`Laddar plugins...`,noPlugins:`Inga plugins installerade`,noPluginsDescription:`Ladda upp en pluginfil eller lägg till ett plugin från JSON för att komma igång.`,active:`Aktiv`,id:`ID`,endpoint:`Endpoint`,activate:`Aktivera`,deactivate:`Inaktivera`,activePlugin:`Aktivt plugin`,activePluginDescription:`Alla chattförfrågningar dirigeras genom detta plugin`,variables:{title:`Variabler`,save:`Spara`,saving:`Sparar...`,saved:`Variabler sparade`,saveFailed:`Kunde inte spara variabler`,resetDefaults:`Återställ standard`,reset:`Variabler återställda`,sensitiveSet:`Värde är satt (ange nytt för att ändra)`}},huggingface:{title:`HuggingFace modellbläddrare`,subtitle:`Bläddra och välj modeller från Hub`,searchPlaceholder:`Sök modeller...`,filters:`Filter`,task:`Uppgift`,sortBy:`Sortera efter`,noModels:`Inga modeller hittades`,adjustSearch:`Försök justera din sökning eller filter`,gated:`Begränsad`,selected:`Valt`,select:`Välj`,refresh:`Uppdatera`,modelsFound:`modeller hittade`},demoMode:{title:`Demoläge`,github:`GitHub`},personaBackground:{label:`Bakgrundsbild`,uploadBackgroundImage:`Ladda upp bakgrundsbild`,dragAndDrop:`Dra och släpp en bild eller klicka för att bläddra`,chooseImage:`Välj bild`,uploading:`Laddar upp...`,enterImageUrl:`Eller ange bild-URL`,supportedFormats:`Stöder: JPG, PNG, GIF, WebP (max 5MB). Breda landskapsbilder fungerar bäst.`,customBackground:`Anpassad bakgrundsbild`,clickToChange:`Klicka för att ändra eller ta bort`,removed:`Bakgrund borttagen`,uploaded:`Bakgrund uppladdad`,invalidFile:`Välj en giltig bildfil`,fileTooLarge:`Bakgrundsbildens storlek måste vara mindre än 5MB`,readFailed:`Kunde inte läsa bildfil`,uploadFailed:`Kunde inte ladda upp bakgrundsbild`},modelSelector:{searchInstalled:`Sök installerade modeller...`,searchOllama:`Sök i Ollama-biblioteket...`,searchHuggingFace:`Sök på HuggingFace...`,selectModel:`Välj modell`,personas:`Personas`,ollamaModels:`Ollama-modeller`,pluginModels:`Plugin-modeller`,actions:`Åtgärder`,installed:`Installerad`,use:`Använd`,pull:`Ladda ner`,pullRestricted:`Modellinstallation är begränsad till administratörer på denna instans.`,adminOnlyPull:`Endast administratörer`},libreClaw:{title:`Agenter`,subtitle:`Lokala agentkörningar, godkännanden, scheman, minne, verktyg och användning.`,dashboard:`Översikt`,connection:{disconnectedTitle:`Libre Claw-daemonen är inte ansluten`,disconnectedDescription:`Starta den lokalt med <command>libre-claw start</command> eller ställ in <env>LIBRE_CLAW_BASE_URL</env> i backend-miljön.`},status:{connected:`Ansluten`,disconnected:`Frånkopplad`,activeRuns:`{{count}} aktiv`,activeRuns_plural:`{{count}} aktiv`},states:{queued:`I kö`,running:`Körs`,blocked:`Blockerad`,done:`Klart`,failed:`Misslyckades`,cancelled:`Avbruten`},startRun:{title:`Starta agentkörning`,placeholder:`Be Libre Claw att inspektera en repo, fixa en bugg, köra en granskning, schemalägga en rapport...`,chatRun:`Chattkörning`,goalMode:`Målläge`,providerOverride:`Åsidosättande av leverantör`,modelOverride:`Modell åsidosättande`,run:`Kör`},modelRoute:{title:`Modellväg`,providerPlaceholder:`leverantör`,modelPlaceholder:`modell`,persistGlobal:`Fortsätt till Libre Claw global konfiguration`,saveModel:`Spara modell`,theme:`Libre Claw-tema`,saveTheme:`Spara tema`},runs:{title:`Körningar`,empty:`Inga Libre Claw-körningar ännu.`},timeline:{title:`Körningstidslinje`,empty:`Välj en körning för att inspektera dess händelser.`,streaming:`Streamar...`,assistantResponse:`Assistentsvar`,resultOk:`okej`,resultError:`fel`,labels:{userMessage:`Användarmeddelande`,toolCall:`Verktygsanrop`,toolResult:`Verktygsresultat`,approvalRequest:`Begäran om godkännande`,approvalResponse:`Godkännande svar`,runStarted:`Körning startad`,runFinished:`Körning avslutad`,usage:`Användning`,error:`Fel`}},approvals:{needed:`Godkännande behövs`,allowOnce:`Tillåt en gång`,alwaysAllowTool:`Tillåt alltid verktyg`,deny:`Neka`,toolApprovalRequested:`Verktygsgodkännande begärs`},automations:{title:`Automatiseringar`,namePlaceholder:`Namn`,schedulePlaceholder:`daily 09:00`,promptPlaceholder:`Automatiseringsprompt`,create:`Skapa`,empty:`Inga schemalagda Libre Claw-automatiseringar.`,runNow:`Kör nu`,pause:`Pausa`,resume:`Återuppta`,routes:{report:`Rapportera`,telegram:`Telegram`},status:{active:`Aktiv`,paused:`Pausad`}},usageFallback:{title:`Användning och reserv`,usage:`Användning`,fallbackRoute:`Reservrutt`,noUsage:`Inga användningsuppgifter ännu.`},metrics:{provider:`Leverantör`,model:`Modell`,input:`Ingång`,output:`Utgång`,cached:`Cachad`,reasoning:`Resonemang`,cost:`Kostnad`,tool:`Verktyg`,resolution:`Upplösning`,state:`Status`,stopReason:`Stopporsak`,tokens:`{{formatted}} token`,tokens_plural:`{{formatted}} polletter`},fallbacks:{tool:`verktyg`,unknown:`okänt`,resolved:`löst`,unknownError:`Okänt fel`},toasts:{loadStatusFailed:`Kunde inte ladda Libre Claw status`,enterTask:`Ange en uppgift för Libre Claw`,runStarted:`Libre Claw-körning startad`,startRunFailed:`Kunde inte starta Libre Claw-körning`,runCancelled:`Körning avbruten`,cancelRunFailed:`Det gick inte att avbryta körningen`,approved:`Godkänd`,denied:`Nekad`,resolvePermissionFailed:`Det gick inte att lösa behörigheten`,providerModelRequired:`Leverantör och modell krävs`,modelUpdated:`Libre Claw-modellen uppdaterad`,updateModelFailed:`Kunde inte uppdatera modellen`,themeUpdated:`Libre Claw-tema uppdaterat`,updateThemeFailed:`Det gick inte att uppdatera temat`,automationRequired:`Automationsnamn, schema och uppmaning krävs`,automationCreated:`Automatisering skapad`,createAutomationFailed:`Det gick inte att skapa automatisering`,automationUpdated:`Automatisering uppdaterad`,updateAutomationFailed:`Det gick inte att uppdatera automatiseringen`}},work:{title:`Arbete`,subtitle:`Isolerade arbetsytor för modeller`,tasks:{title:`Arbetsuppgifter`,subtitle:`Beständiga lokala arbetsytor`,new:`Ny uppgift`,emptyTitle:`Inga arbetsuppgifter än`,empty:`Dina arbetsuppgifter visas här när du har skickat det första meddelandet.`,untitled:`Namnlös uppgift`,actions:`Uppgiftsåtgärder`,delete:`Ta bort uppgift`,deleteNamed:`Ta bort {{title}}`,deleteConfirm:`Ta bort ”{{title}}” och dess arbetsyta permanent?`,close:`Stäng arbetsuppgifter`,open:`Öppna arbetsuppgifter`,rename:`Uppgiftstitel`,loading:`Läser in uppgift…`,notFound:`Den här arbetsuppgiften är inte tillgänglig`,back:`Starta en ny uppgift`,status:`Status: {{status}}`},landing:{title:`Starta en ny arbetsuppgift`,description:`Ge en lokal modell eller en modell från en konfigurerad leverantör en beständig, isolerad arbetsyta. Den kan granska filer, köra verktyg och fortsätta där den slutade när du återvänder.`,isolated:`Isolerad`,isolatedBody:`Varje uppgift får en egen container och egna filer.`,durable:`Beständig`,durableBody:`Återvänd senare till konversationen och arbetsytan.`,controlled:`Kontrollerad`,controlledBody:`Körmiljön och uppgiftsfilerna förblir isolerade från värdsystemet.`},composer:{placeholder:`Beskriv vad du vill skapa eller ändra…`,model:`Modell för arbete`,noModels:`Inga modeller som är kompatibla med Arbete`,cancel:`Stoppa`,send:`Kör`,hint:`Varje uppgift behåller sina egna filer och sin historik. Granska modellens utdata innan du använder dem.`,remoteTitle:`Fjärrleverantör`,remoteHint:`Konversationen och verktygens utdata skickas till den konfigurerade tjänsten. En autonom körning kan göra flera leverantörsanrop och medföra kostnader. Filerna på arbetsytan stannar lokalt om inte ett verktyg returnerar deras innehåll.`,remoteDismiss:`Dölj`,remoteDismissLabel:`Dölj meddelandet om fjärrleverantören`,remoteDismissFailed:`Det gick inte att spara inställningen för fjärrleverantören.`,noModelSelected:`Ingen modell som är kompatibel med Arbete har valts.`},conversation:{ready:`Arbetsytan är klar`,empty:`Fortsätt med uppgiften nedan. Konversationen och dess filer förblir kopplade till den här arbetsytan.`,loadOlder:`Läs in äldre meddelanden`},status:{preparing:`Förbereder den isolerade arbetsytan…`,running:`Arbetar på den lokala arbetsytan…`},statusLabels:{idle:`Inaktiv`,thinking:`Tänker`,complete:`Klar`,needsInput:`Behöver inmatning`,error:`Fel`},live:{connecting:`Ansluter till liveuppdateringar…`,reconnecting:`Återansluter till liveuppdateringar…`,unavailable:`Liveuppdateringar är inte tillgängliga`,newActivity:`Ny aktivitet`,skillsLoaded:`Arbetsytefärdigheter · {{count}}`},runtime:{unavailable:`Körmiljön är inte tillgänglig`,ready:`Körmiljön är redo`,readyOllama:`Docker redo`,readyPlugin:`Docker + tillägg redo`,readyHybrid:`Docker + modeller redo`,reason:`Docker och en tillgänglig modellleverantör via Ollama eller ett tillägg krävs.`},workspace:{label:`Arbetsytevyer`,files:`Filer`,activity:`Aktivitet`,preview:`Förhandsgranskning`,resize:`Ändra storlek på konversationen och arbetsytan`,resizeHint:`Dra för att ändra storleken. Använd piltangenterna för exakt kontroll. Dubbelklicka eller tryck på Retur för att återställa.`,splitSize:`Konversation {{conversation}} %, arbetsyta {{workspace}} %`,terminal:`Terminal`},files:{discard:`Kassera osparade filändringar?`,leaveWithDraft:`Lämna den här filen? Din osparade redigering sparas som ett utkast i webbläsaren.`,up:`Överordnad mapp`,back:`Tillbaka till filer`,empty:`Det finns inga filer i den här mappen än.`,select:`Välj en fil för att granska och redigera den.`,editorLabel:`Filredigerare: {{path}}`,format:`Formatera`,formatted:`Koden har formaterats.`,formatFailed:`Det gick inte att formatera den här filen.`,formatShortcut:`Formatera (Skift+Alt+F)`,formatTooLarge:`Formatering är begränsad till filer med färre än 100 000 tecken och 4 000 rader.`,formatUnsupported:`Formatering är inte tillgänglig för den här filtypen.`,saveShortcut:`Spara (⌘/Ctrl+S)`,highlightPaused:`Syntaxmarkering i realtid har pausats för stora filer så att redigeringen förblir responsiv.`,plainTextLarge:`Oformaterad text · stor fil`,changes:`Ändringar`,changesSince:`Vad som ändrats sedan senaste turen`,diffLabel:`Ändringar sedan senaste turen: {{path}}`,diffFolded:`{{count}} oförändrade rader`},activity:{empty:`Kommandon, filåtgärder och verktygsresultat visas här.`,toolActivity:`Verktygsaktivitet`,details:`Detaljer`,kinds:{message:`Meddelande`,toolCall:`Verktygsanrop`,toolResult:`Verktygsresultat`,error:`Fel`}},preview:{command:`Valfritt startkommando`,start:`Starta förhandsgranskning`,stop:`Stoppa förhandsgranskning`,open:`Öppna`,starting:`Startar förhandsgranskning…`,frameTitle:`Förhandsgranskning av arbetsyta`,failed:`Det gick inte att starta förhandsgranskningen. Kontrollera Aktivitet och prova sedan ett annat kommando.`,empty:`Starta appen på den här arbetsytan för att granska den här.`},mobile:{surface:`Uppgiftsvy`,conversation:`Konversation`,workspace:`Arbetsyta`},toasts:{runFailed:`Det gick inte att starta arbetsuppgiften.`,updateFailed:`Det gick inte att uppdatera den här uppgiften.`,renameFailed:`Det gick inte att byta namn på den här uppgiften.`,cancelled:`Arbetskörningen stoppades.`,cancelFailed:`Det gick inte att stoppa arbetskörningen.`,deleteFailed:`Det gick inte att ta bort den här arbetsuppgiften.`,saveFailed:`Det gick inte att spara den här filen.`,saved:`Filen har sparats.`,previewFailed:`Det gick inte att starta förhandsgranskningen.`,previewStopFailed:`Det gick inte att stoppa förhandsgranskningen.`},terminal:{connecting:`Öppnar ett skal i sandlådan…`,closed:`Terminalsessionen avslutades.`,failed:`Terminalsessionen kunde inte startas.`,reconnect:`Anslut igen`,unavailable:`Den interaktiva terminalen är inte tillgänglig i den här installationen.`,blockedByRun:`Modellen använder den här containern. Terminalen öppnas när turen är klar.`,taskRunning:`Modelltur pågår`}}};export{e as default};