Files
openmaic/OpenMAIC/lib/i18n/locales/pt-BR.json
T

1826 lines
83 KiB
JSON

{
"common": {
"you": "Você",
"confirm": "Confirmar",
"cancel": "Cancelar",
"loading": "Carregando..."
},
"home": {
"slogan": "Aprendizagem Generativa em Sala de Aula Interativa Multi-Agente"
},
"toolbar": {
"pdfParser": "Analisador",
"pdfUpload": "Enviar PDF",
"removePdf": "Remover arquivo",
"documentExtractor": "Extrator",
"courseMaterialUpload": "Enviar material do curso",
"courseMaterialsSelected": "{{n}} materiais selecionados",
"courseMaterialMergeOrder": "Os materiais serão mesclados na ordem mostrada abaixo.",
"removeCourseMaterial": "Remover arquivo",
"webSearchOn": "Ativada",
"webSearchOff": "Clique para ativar",
"webSearchDesc": "Pesquise na web por informações atualizadas antes da geração",
"webSearchProvider": "Mecanismo de busca",
"webSearchNoProvider": "Configure a chave de API de busca em Configurações",
"selectProvider": "Selecionar provedor",
"configureProvider": "Configurar modelo",
"configureProviderHint": "Configure pelo menos um provedor de modelo para gerar cursos",
"enterClassroom": "Entrar na Sala",
"advancedSettings": "Configurações Avançadas",
"thinking": "Raciocínio",
"thinkingBudget": "Orçamento",
"default": "Padrão",
"on": "Ativado",
"off": "Desativado",
"auto": "Auto",
"dynamic": "Dinâmico",
"ttsTitle": "Texto para Fala",
"ttsHint": "Escolha uma voz para o professor de IA",
"ttsPreview": "Pré-visualizar",
"ttsPreviewing": "Reproduzindo...",
"interactiveModeHint": "Ative o modo interativo para conteúdos mais práticos",
"interactiveModeLabel": "Modo Interativo"
},
"export": {
"pptx": "Exportar PPTX",
"resourcePack": "Exportar Pacote de Recursos",
"resourcePackDesc": "PPTX + páginas interativas",
"exporting": "Exportando...",
"exportSuccess": "Exportação concluída",
"exportFailed": "Falha na exportação",
"classroomZip": "Exportar ZIP da Sala",
"classroomZipDesc": "Estrutura do curso + arquivos de mídia",
"inlinePartial": "{{count}} recurso(s) externo(s) não puderam ser empacotados; o curso pode não ser exibido corretamente offline.",
"video": "Exportar Vídeo",
"videoDesc": "Projeto Hyperframes autossuficiente (renderizável em MP4)",
"videoNoScenes": "Nenhuma cena disponível para exportar.",
"videoCompiling": "Compilando a linha do tempo do vídeo...",
"videoRendering": "Renderizando slides e coletando recursos...",
"videoPackaging": "Empacotando o projeto de vídeo...",
"videoSuccess": "Projeto de vídeo exportado",
"videoFailed": "Falha na exportação do vídeo",
"videoWarnings": "{{assets}} recurso(s) ausente(s) e {{diagnostics}} problema(s) no relatório de exportação.",
"videoMp4Success": "Vídeo renderizado",
"videoServiceUnavailable": "Serviço de renderização não configurado — o ZIP do projeto foi baixado para renderização local.",
"videoResolution": "Resolução",
"videoFps": "Taxa de quadros",
"videoQuality": "Qualidade",
"videoQuality_draft": "Rascunho",
"videoQuality_standard": "Padrão",
"videoQuality_high": "Alta",
"videoProgress": "{{percent}}%",
"videoProgressWithEta": "{{percent}}% · ~{{remaining}} restante(s)",
"videoEtaMinSec": "{{min}} min {{sec}} s",
"videoEtaSec": "{{sec}} s",
"videoRenderMp4": "Renderizar MP4",
"videoDownloadZip": "Baixar ZIP do projeto",
"videoServiceHint": "A renderização de MP4 requer o serviço de renderização. Baixe o ZIP para renderizar localmente.",
"videoBurnSubtitles": "Gravar legendas no vídeo",
"videoBurnSubtitlesDesc": "Desligado: exporte um vídeo limpo e adicione o arquivo de legenda no seu editor.",
"videoQuizCtaPrompt": "Quer experimentar um quiz interativo?",
"videoPblCtaPrompt": "Quer explorar a aprendizagem baseada em projetos?",
"videoCtaVisit": "Acesse",
"videoDownloadSubtitles": "Baixar legendas (.srt)",
"subtitlesCompiling": "Compilando legendas...",
"subtitlesSuccess": "Legendas baixadas",
"subtitlesEmpty": "Nenhuma narração para gerar legendas",
"subtitlesFailed": "Falha ao baixar legendas",
"noSlides": "Não há slides para exportar",
"noSlidesSkipped": "Este curso não tem slides — PPTX ignorado",
"nothingToExport": "Nada para exportar"
},
"import": {
"classroom": "Importar Sala de Aula",
"pptx": "Importar PPTX",
"parsing": "Lendo ZIP...",
"parsingPptx": "Lendo PPTX...",
"validating": "Validando dados...",
"writingMedia": "Gravando arquivos de mídia...",
"writingCourse": "Gravando dados do curso...",
"success": "Sala de aula importada com sucesso",
"pptxSuccess": "PPTX processado com sucesso ({{count}} slides, saída registrada no console)",
"error": {
"invalidZip": "Arquivo inválido. Selecione um arquivo .maic.zip válido.",
"invalidPptx": "Falha ao processar o PPTX. Verifique se o arquivo é válido.",
"parserUnavailable": "A importação de PPTX está indisponível: o pacote do analisador não foi implantado. Execute install/sync novamente.",
"invalidManifest": "Arquivo inválido: manifest.json ausente ou corrompido.",
"missingData": "Arquivo inválido: dados obrigatórios do curso ausentes.",
"storageFull": "Falha na importação: armazenamento do navegador cheio. Tente apagar salas antigas."
}
},
"chat": {
"lecture": "Aula",
"noConversations": "Sem conversas",
"startConversation": "Digite uma mensagem abaixo para começar",
"noMessages": "Ainda não há mensagens",
"ended": "encerrada",
"unknown": "Desconhecido",
"stopDiscussion": "Encerrar Discussão",
"endQA": "Encerrar Perguntas",
"softClosing": "Continuar discussão",
"error": {
"emptyAgentResponses": "Os agentes retornaram respostas vazias; a discussão foi interrompida. Tente novamente ou verifique as configurações do modelo.",
"streamInterrupted": "O fluxo de dados terminou inesperadamente; a discussão não foi concluída. Por favor, tente novamente."
},
"tabs": {
"lecture": "Anotações",
"chat": "Conversa"
},
"lectureNotes": {
"empty": "As anotações aparecerão aqui após a reprodução da aula",
"emptyHint": "Pressione play para iniciar a aula",
"pageLabel": "Página {{n}}",
"currentPage": "Atual",
"jumpToLine": "Jump to this line",
"jumpUnavailable": "Jump unavailable for this line"
},
"badge": {
"qa": "P&R",
"discussion": "DEB",
"lecture": "AULA"
}
},
"actions": {
"names": {
"spotlight": "Destaque",
"laser": "Laser",
"wb_open": "Abrir Quadro",
"wb_draw_text": "Texto no Quadro",
"wb_draw_shape": "Forma no Quadro",
"wb_draw_chart": "Gráfico no Quadro",
"wb_draw_latex": "Fórmula no Quadro",
"wb_draw_table": "Tabela no Quadro",
"wb_draw_line": "Linha no Quadro",
"wb_clear": "Limpar Quadro",
"wb_delete": "Excluir Elemento",
"wb_close": "Fechar Quadro",
"discussion": "Discussão"
},
"status": {
"inputStreaming": "Aguardando",
"inputAvailable": "Executando",
"outputAvailable": "Concluído",
"outputError": "Erro",
"outputDenied": "Negado",
"running": "Executando",
"result": "Concluído",
"error": "Erro"
}
},
"agentBar": {
"readyToLearn": "Vamos aprender juntos?",
"expandedTitle": "Configuração de Papéis da Sala",
"configTooltip": "Clique para configurar os papéis da sala",
"voiceLabel": "Voz",
"voiceLoading": "Carregando...",
"voiceAutoAssign": "As vozes serão atribuídas automaticamente",
"searchVoice": "Pesquisar vozes",
"noMatchingVoices": "Nenhuma voz correspondente",
"noVoice": "Sem voz"
},
"proactiveCard": {
"discussion": "Discussão",
"join": "Entrar",
"skip": "Pular",
"pause": "Pausar",
"resume": "Continuar"
},
"voice": {
"startListening": "Entrada por voz",
"stopListening": "Parar gravação"
},
"edit": {
"proMode": "Pro",
"undo": "Desfazer",
"redo": "Refazer",
"delete": "Excluir",
"title": "Editando · {{type}}",
"unsupportedScene": "{{type}} ainda não pode ser editada",
"readOnlyBadge": "{{type}} · somente visualização",
"sceneType": {
"slide": "Slide",
"quiz": "Questionário",
"interactive": "Interativa",
"pbl": "PBL"
},
"multiTab": {
"conflict": {
"title": "Outra aba está editando este curso",
"body": "A edição fica restrita a uma única aba para evitar alterações conflitantes. Feche a outra aba (ou aguarde a sessão dela expirar) antes de entrar no modo de edição aqui.",
"actionDismiss": "Entendi"
}
},
"text": {
"toolbar": "Barra de texto",
"label": "Texto",
"font": "Fonte",
"fontDefault": "Padrão",
"sizeUp": "Aumentar tamanho",
"sizeDown": "Diminuir tamanho",
"fontSize": "Tamanho da fonte",
"bold": "Negrito",
"italic": "Itálico",
"underline": "Sublinhado",
"color": "Cor do texto",
"alignLeft": "Alinhar à esquerda",
"alignCenter": "Centralizar",
"alignRight": "Alinhar à direita",
"bullet": "Lista com marcadores",
"colorHex": "Código da cor"
},
"line": {
"toolbar": "Barra de linha",
"kind": "Tipo de linha",
"color": "Cor da linha",
"width": "Espessura da linha",
"style": "Estilo da linha",
"start": "Estilo inicial",
"end": "Estilo final",
"straight": "Reta",
"broken": "Linha quebrada",
"broken2": "Linha quebrada dupla",
"curve": "Curva",
"cubic": "Curva cúbica",
"solid": "Sólida",
"dashed": "Tracejada",
"dotted": "Pontilhada",
"none": "Nenhum",
"arrow": "Seta",
"dot": "Ponto"
},
"insert": {
"toolbar": "Barra de inserção",
"textBox": "Caixa de texto",
"line": "Linha",
"linePresets": {
"straight": "Linha reta",
"dashed": "Linha tracejada",
"arrow": "Linha com seta",
"dashedArrow": "Linha tracejada com seta",
"dottedEnd": "Linha com ponta circular",
"broken": "Linha quebrada",
"doubleBroken": "Linha com quebra dupla",
"curve": "Curva",
"cubic": "Curva cúbica"
},
"table": "Tabela",
"formula": "Fórmula",
"chart": "Gráfico",
"chartBar": "Gráfico de barras",
"chartLine": "Gráfico de linhas",
"chartPie": "Gráfico de pizza",
"tableDimensions": "Tabela {{rows}} x {{columns}}",
"dragToolbar": "Mover ferramentas de inserção",
"dragToolbarKeyboard": "Mover ferramentas: pressione Enter ou Espaço e use as setas",
"image": "Imagem",
"imageDrop": "Arraste uma imagem ou clique para escolher um arquivo",
"imageOr": "ou cole a URL de uma imagem",
"imageUrlPlaceholder": "https://…",
"imageInsert": "Inserir",
"video": "Vídeo",
"videoDrop": "Arraste um vídeo ou clique para escolher um arquivo",
"videoOr": "ou cole a URL de um vídeo",
"videoUrlPlaceholder": "https://…",
"videoInsert": "Inserir",
"audio": "Áudio",
"audioDrop": "Arraste um áudio ou clique para escolher um arquivo",
"audioOr": "ou cole a URL de um áudio",
"audioUrlPlaceholder": "https://…",
"audioInsert": "Inserir"
},
"asset": {
"drop": "Arraste um arquivo ou clique para escolher",
"orUrl": "ou cole a URL do arquivo",
"urlPlaceholder": "https://…",
"insert": "Inserir",
"invalidType": "Tipo de arquivo não compatível",
"readFailed": "Não foi possível ler o arquivo"
},
"latex": {
"toolbar": "Barra de fórmulas",
"editFormula": "Editar fórmula",
"dialog": "Editor de fórmulas",
"source": "Código-fonte LaTeX",
"preview": "Pré-visualização",
"symbols": "Símbolos",
"presets": "Fórmulas predefinidas",
"invalidSource": "O código-fonte LaTeX é inválido."
},
"video": {
"toolbar": "Barra de vídeo",
"poster": "Definir capa"
},
"audio": {
"toolbar": "Barra de áudio",
"preview": "Ouvir áudio",
"pause": "Pausar prévia",
"loop": "Repetir"
},
"table": {
"doubleClickToEdit": "Clique duas vezes para editar"
},
"nav": {
"addSlide": "Adicionar slide",
"duplicate": "Duplicar",
"delete": "Excluir",
"deleted": "Excluído",
"undo": "Desfazer",
"copySuffix": "(cópia)",
"untitledSlide": "Slide sem título",
"collapse": "Recolher painel",
"expand": "Expandir painel",
"dragHandle": "Arraste para reordenar",
"deckLabel": "Cenas",
"moreActions": "Mais ações",
"rename": "Renomear",
"sceneIncomplete": "Esta página tem conteúdo incompleto"
},
"zorder": {
"toFront": "Trazer para a frente",
"toBack": "Enviar para trás"
},
"image": {
"toolbar": "Barra da imagem",
"replace": "Substituir imagem",
"flipH": "Inverter horizontalmente",
"flipV": "Inverter verticalmente",
"crop": "Recortar imagem"
},
"contextMenu": {
"horizontalAlignment": "Alinhamento horizontal",
"verticalAlignment": "Alinhamento vertical",
"selectAll": "Selecionar tudo",
"copy": "Copiar",
"cut": "Recortar",
"paste": "Colar",
"unlock": "Desbloquear",
"lock": "Bloquear",
"group": "Agrupar",
"ungroup": "Desagrupar",
"bringForward": "Trazer para frente",
"sendBackward": "Enviar para trás",
"alignTop": "Alinhar acima",
"alignMiddle": "Alinhar ao meio",
"alignBottom": "Alinhar abaixo"
},
"background": {
"label": "Fundo",
"solid": "Cor sólida",
"image": "Imagem",
"color": "Cor"
},
"common": {
"cancel": "Cancelar",
"confirm": "Confirmar"
},
"quiz": {
"addQuestion": "Adicionar pergunta",
"reorder": "Arraste para reordenar",
"deleteQuestion": "Excluir pergunta",
"untitledQuestion": "Pergunta sem título",
"questionLabel": "Pergunta",
"questionPlaceholder": "Digite a pergunta…",
"typeLabel": "Tipo",
"pointsLabel": "Pontos",
"optionsLabel": "Opções",
"optionPlaceholder": "Texto da opção",
"addOption": "Adicionar opção",
"deleteOption": "Remover opção",
"markCorrect": "Marcar como correta",
"moveUp": "Mover para cima",
"moveDown": "Mover para baixo",
"analysisLabel": "Explicação",
"analysisPlaceholder": "Exibida após a correção…",
"commentPromptLabel": "Orientação de correção",
"commentPromptPlaceholder": "Como esta resposta aberta deve ser avaliada?",
"empty": "Nenhuma pergunta ainda",
"emptyHint": "Use “Adicionar pergunta” para criar a primeira.",
"type": {
"single": "Escolha única",
"multiple": "Múltipla escolha",
"short_answer": "Resposta curta"
},
"shortAnswerGradingNote": "Respostas curtas são sempre avaliadas por IA com base na orientação abaixo.",
"hint": {
"emptyText": "Pergunta {{n}}: adicione o texto da pergunta",
"fewOptions": "Pergunta {{n}}: adicione ao menos duas opções",
"emptyOption": "Pergunta {{n}}: há uma opção vazia",
"noCorrect": "Pergunta {{n}}: marque a resposta correta"
}
},
"cue": {
"speech": "Narração",
"spotlight": "Destaque",
"laser": "Laser",
"whiteboardOpen": "Quadro",
"whiteboardText": "Escrita",
"whiteboardShape": "Forma",
"whiteboardLatex": "Fórmula",
"whiteboardTable": "Tabela",
"action": "Ação",
"discussion": "Discussão"
},
"element": {
"toolbar": "Barra do elemento",
"text": "Texto",
"image": "Imagem",
"shape": "Forma",
"line": "Linha",
"chart": "Gráfico",
"table": "Tabela",
"latex": "Fórmula",
"video": "Vídeo",
"audio": "Áudio",
"code": "Código"
},
"agent": {
"expand": "Expandir assistente de IA",
"collapse": "Recolher",
"stopped": "Interrompido",
"emptyTitle": "O que você gostaria de mudar?",
"emptyHint": "Depois de editar este slide no canvas, deixe a IA regenerar a narração correspondente ao conteúdo.",
"placeholder": "Descreva suas alterações neste slide…",
"stop": "Parar geração",
"empty": {
"lead": "Tell me how to change this slide — I'll redo the content and re-align the narration.",
"boundary": "For fine-grained edits use the editor; add / delete / reorder slides from the left nav.",
"comingSoon": "More capabilities coming soon."
},
"cap": {
"content": {
"label": "Regenerate the slide",
"examples": "“Condense to 3 points”, “Add a real-world example”"
},
"narration": {
"label": "Regenerate the narration script",
"examples": "“Make it more conversational”, “Align with my canvas edits”"
},
"fixHtml": {
"examples": "\"O botão de iniciar não faz nada\", \"Os painéis se sobrepõem no celular\"",
"label": "Corrigir um bug na página"
},
"elements": {
"label": "Ajustar elementos",
"examples": "“Deixe o título azul e suba”, “Diminua esta figura”"
}
},
"newConversation": "New conversation",
"sessionHistory": "Histórico",
"sessionUntitled": "Conversa sem título",
"sessionDelete": "Excluir",
"sessionEmpty": "Nenhuma conversa",
"reasoning": "Raciocínio",
"thought": "Pensou por",
"interactive": {
"boundary": "Faço correções pontuais na página; não recrio a página inteira. Troque de cena pela navegação à esquerda.",
"emptyTitle": "O que precisa ser corrigido nesta página?",
"lead": "Descreva um bug nesta página interativa — por exemplo, um botão que não faz nada — e eu corrijo apenas isso, mantendo o resto.",
"placeholder": "Descreva o bug desta página interativa…"
},
"thinking": "Pensando…",
"title": "Editar com IA"
},
"timeline": {
"title": "Roteiro de narração",
"regenAllTts": "Regenerar toda a narração",
"voiceAll": "Narrar tudo",
"counts": "{{speech}} narração · {{cue}} ações",
"panLeft": "Mover para a esquerda",
"panRight": "Mover para a direita",
"collapseAxis": "Recolher para o eixo",
"expandTrack": "Expandir trilha",
"emptyHint": "Arraste as ações para o eixo para começar, ou deixe o MAIC Agent gerar a narração.",
"speechPlaceholder": "Digite esta linha de narração…",
"reorder": "Arraste para reordenar",
"moveLeft": "Mover à esquerda",
"moveRight": "Mover à direita",
"pickElement": "Escolher elemento",
"bound": "Vinculado",
"fieldAction": "Ação",
"fieldElement": "Elemento",
"fieldContent": "Conteúdo",
"addDiscussionExists": "Apenas uma discussão por cena",
"discussionTerminal": "FIM",
"discussionTerminalHint": "A discussão fica no final da cena (uma por cena)",
"discussionTopicPlaceholder": "Tópico da discussão (obrigatório)",
"discussionPromptPlaceholder": "Orientação (opcional)",
"discussionAgent": "Iniciador",
"discussionAgentUnset": "Não especificado",
"addAction": "Adicionar ação"
},
"picker": {
"title": "Inserir ação",
"speechDesc": "Fale uma frase — pode ter narração automática",
"spotlightDesc": "Destacar um elemento na tela",
"laserDesc": "Apontar um laser para um elemento",
"discussionDesc": "Faça uma pergunta e escolha quem inicia"
},
"tts": {
"preview": "Pré-visualizar",
"regenerate": "Regenerar narração",
"statusReady": "Narrado",
"statusNone": "Sem narração",
"statusGenerating": "Gerando",
"statusError": "Falhou"
},
"pick": {
"pickFor": "Escolha um elemento para \"{{label}}\"",
"pickHint": "Clique em um elemento destacado ou na lista abaixo · Esc para cancelar",
"pageElements": "Elementos da página · {{count}}",
"expand": "Expandir",
"collapse": "Recolher",
"noElements": "Nenhum elemento localizável neste slide.",
"bindHint": "Clique em um elemento destacado no canvas para vincular"
},
"regen": {
"title": "Regenerar narração",
"running": "Gerando…",
"noActions": "Nenhuma ação gerada",
"actionsCount": "{{count}} ações",
"generating": "Gerando",
"notGenerated": "Não gerado",
"updated": "Atualizado"
},
"regenScene": {
"title": "Regenerar slide",
"generating": "Gerando",
"updated": "Atualizado",
"notGenerated": "Não gerado",
"elementsCount": "{{count}} elementos",
"restore": "Restaurar anterior",
"restored": "Restaurado",
"resume": "Refazer"
},
"readCard": {
"title": "Read slide content",
"reading": "Reading",
"done": "Read",
"failed": "Not read"
},
"fixHtml": {
"editsCount": "{{count}} edição(ões)",
"fixed": "Corrigido",
"fixing": "Corrigindo",
"notFixed": "Não corrigido",
"title": "Corrigir página interativa"
},
"editElements": {
"title": "Editar elementos",
"editing": "Editando",
"applied": "Aplicado",
"notApplied": "Não aplicado",
"applyFailed": "O editor não conseguiu aplicar a edição do elemento. Nada foi alterado.",
"applyPartiallyFailed": "O editor não conseguiu aplicar uma ou mais edições de elementos. Outras edições podem ter sido aplicadas."
},
"roster": {
"title": "Elenco da sala",
"count": "{{count}} integrantes",
"editHint": "Clique em um integrante para editar",
"personaLabel": "Persona",
"personaPlaceholder": "Descreva a personalidade, o estilo de ensino e as tarefas do papel...",
"noPersona": "Nenhuma persona ainda",
"unnamed": "Sem título",
"teacherBadge": "Principal",
"moveUp": "Mover para cima",
"moveDown": "Mover para baixo",
"removeFromClass": "Remover da sala",
"aiClassmates": "Colegas de IA · {{count}}",
"addRole": "Adicionar papel"
}
},
"stage": {
"currentScene": "Cena Atual",
"generating": "Gerando...",
"paused": "Pausado",
"generationFailed": "Falha na geração",
"confirmSwitchTitle": "Trocar de Cena",
"confirmSwitchMessage": "Há um tópico em andamento. Trocar de cena vai encerrá-lo. Tem certeza?",
"generatingNextPage": "A cena está sendo gerada, aguarde...",
"courseComplete": "Curso concluído",
"fullscreen": "Tela cheia",
"exitFullscreen": "Sair da tela cheia",
"editCourse": "Editar curso",
"doneEditing": "Concluir edição",
"proModeDisabledHint": "A edição não está disponível nesta página — abra um slide do curso para editar no modo Pro."
},
"classroomComplete": {
"title": "Curso concluído",
"trailLabels": {
"slide": "páginas",
"quiz": "questionários",
"interactive": "interativas",
"pbl": "projetos"
},
"quizScoreLabel": "{{correct}} de {{total}} corretas",
"encouragement": {
"high": "Excelente — você arrasou!",
"mid": "Bom trabalho — continue assim.",
"low": "Um bom começo — revise e tente novamente."
}
},
"whiteboard": {
"title": "Quadro Interativo",
"open": "Abrir Quadro",
"clear": "Limpar Quadro",
"minimize": "Minimizar Quadro",
"ready": "O quadro está pronto",
"readyHint": "Os elementos aparecerão aqui quando adicionados pela IA",
"clearSuccess": "Quadro limpo com sucesso",
"clearError": "Falha ao limpar o quadro: ",
"resetView": "Reiniciar Visão",
"restoreError": "Falha ao restaurar o quadro: ",
"history": "Histórico",
"restore": "Restaurar",
"noHistory": "Sem histórico ainda",
"restored": "Quadro restaurado",
"elementCount": "{{count}} elementos"
},
"quiz": {
"title": "Questionário",
"subtitle": "Teste seu conhecimento",
"questionsCount": "questões",
"totalPrefix": "",
"pointsSuffix": "pts",
"startQuiz": "Iniciar Questionário",
"multipleChoiceHint": "(Múltipla escolha — selecione todas as alternativas corretas)",
"inputPlaceholder": "Digite sua resposta aqui...",
"charCount": "caracteres",
"yourAnswer": "Sua resposta:",
"notAnswered": "Não respondida",
"aiComment": "Feedback da IA",
"singleChoice": "Única",
"multipleChoice": "Múltipla",
"shortAnswer": "Discursiva",
"analysis": "Análise: ",
"excellent": "Excelente!",
"keepGoing": "Continue assim!",
"needsReview": "Precisa revisar",
"correct": "correta",
"incorrect": "incorreta",
"answering": "Em andamento",
"submitAnswers": "Enviar Respostas",
"aiGrading": "A IA está corrigindo...",
"aiGradingWait": "Aguarde, analisando suas respostas",
"quizReport": "Relatório do Questionário",
"retry": "Tentar novamente"
},
"roundtable": {
"teacher": "PROFESSOR",
"you": "VOCÊ",
"inputPlaceholder": "Digite sua mensagem...",
"listening": "Ouvindo...",
"processing": "Processando...",
"noSpeechDetected": "Nenhuma fala detectada, tente novamente",
"discussionEnded": "Discussão encerrada",
"qaEnded": "Perguntas e respostas encerradas",
"softClosing": "Continuar discussão",
"thinking": "Pensando",
"yourTurn": "Sua vez",
"stopDiscussion": "Encerrar Discussão",
"autoPlay": "Reprodução automática",
"autoPlayOff": "Parar reprodução automática",
"speed": "Velocidade",
"previousLine": "Previous line",
"nextLine": "Next line",
"lineProgress": "Line {{current}} / {{total}}",
"voiceInput": "Entrada por voz",
"voiceInputDisabled": "Entrada por voz desativada",
"textInput": "Entrada por texto",
"stopRecording": "Parar gravação",
"startRecording": "Iniciar gravação"
},
"pbl": {
"emptyProject": "O projeto PBL ainda não foi gerado. Crie via geração de curso.",
"v2": {
"hero": {
"title": "Project-Based Learning",
"stage": "Stages",
"task": "Tasks",
"tutor": "Tutor",
"greetingBanner": "Your tutor is saying hello…",
"startProject": "Start Project",
"continueProject": "Continuar projeto",
"resetProgress": "Redefinir progresso de aprendizagem",
"resetConfirmTitle": "Redefinir o progresso de aprendizagem?",
"resetConfirmDescription": "Isso apaga todo o progresso deste projeto — histórico de conversa, envios e status das etapas — e você começará do zero. Esta ação não pode ser desfeita.",
"resetConfirmConfirm": "Redefinir",
"resetConfirmCancel": "Cancelar",
"startHint": "Click to enter the workspace. {{name}} will guide you through each stage.",
"startError": "Unable to start: {{error}}",
"youWillLearn": "O que você vai ganhar",
"instructorTagline": "Acompanha você durante todo o projeto",
"scenarioCharacter": "Personagem do cenário",
"scenarioCharacterTagline": "O personagem com quem você interage no cenário",
"scenarioFlow": "Etapas",
"close": "Close"
},
"sidebar": {
"title": "Project Roadmap",
"summary": "{{completed}} / {{total}} tasks · {{stages}} stages",
"enterScenario": "Entrar na cena",
"advanceScene": "Avançar a cena",
"continueScene": "Próxima etapa",
"stagePrep": "Preparação",
"stageRoleplay": "Simulação",
"stageWrapup": "Balanço",
"completeAct": "Concluir este ato",
"completeTask": "Concluir"
},
"workspace": {
"progressLabel": "Progress",
"resizeSidebar": "Resize sidebar and chat",
"resizeSubmission": "Resize chat and submission panel",
"enterFullscreen": "Expand to fullscreen workspace",
"exitFullscreen": "Exit fullscreen workspace",
"exitNativeFullscreen": "Sair da tela cheia",
"returnToHero": "Voltar à visão geral do projeto",
"breadcrumbOverview": "Visão geral",
"breadcrumbCurrent": "Espaço de trabalho"
},
"chat": {
"placeholder": "Chat with {{name}} about your progress...",
"placeholderCompleted": "Project complete. Check out your report.",
"send": "Send",
"voiceInput": "Entrada de voz",
"keyboardHint": "Enter to send · Shift+Enter for newline",
"readingSubmission": "Reading submission…",
"generatingMilestoneFeedback": "Generating milestone feedback…",
"generatingFinalEval": "Generating final evaluation…",
"readingSubmissionWithTitle": "Reading latest submission for \"{{title}}\"…",
"evaluatingTask": "{{name}} · Reviewing task",
"evaluatingFinal": "{{name}} · Final evaluation",
"narrating": "Definindo a cena…",
"choosePrompt": "Escolha uma opção",
"choiceOrType": "Escolha ou escreva o seu…",
"suggestionsToggle": "Precisa de ideias? Veja formas de responder",
"guidancePointer": "Sem ideias? Veja o objetivo e as dicas deste ato no painel à direita.",
"roleplayHistoryTitle": "Histórico da simulação",
"coachHint": "Dica do coach",
"thinking": "{{name}} · Thinking",
"typing": "{{name}} · Typing…",
"submitted": "Work submitted",
"evaluatingSubmission": "Evaluating your submission…",
"evaluatingSubmissionDetail": "Task: \"{{title}}\". Feedback on this submission will appear here once evaluation is complete.",
"milestoneFeedbackPending": "The milestone feedback will appear once ready.",
"emptyChat": "No messages yet.",
"emptyChatHint": "Your project walkthrough with {{name}} will start here.",
"continueError": "Unable to continue: {{error}}",
"stillTyping": "Still typing",
"handoverHint": "Click \"Continue to Next Stage\" to keep going."
},
"scene": {
"expand": "Expandir",
"collapse": "Recolher",
"greetHint": "Toque para cumprimentar",
"label": "A cena"
},
"milestoneCard": {
"title": "Milestone Review",
"youLearned": "What you learned",
"nextStage": "Next stage:",
"continueHint": "Click Continue to enter the next stage.",
"alreadyEntered": "Next stage entered",
"continueToNext": "Continue to Next Stage",
"projectAlmostDone": "🎉 Project almost done — awaiting completion report"
},
"taskEvalCard": {
"title": "Submission Feedback",
"strengths": "What went well",
"improvements": "Next steps"
},
"briefing": {
"intro": "A premissa apresentada na preparação fica aqui para você revisitar a qualquer momento na cena.",
"tablistLabel": "Abas do painel direito",
"submissionTab": "Enviar",
"briefingTab": "Resumo",
"setting": "Cenário",
"learnerRole": "Seu papel",
"goal": "Objetivo",
"rules": "Regras",
"cast": "Personagens",
"identity": "Identidade",
"situation": "Situação"
},
"submission": {
"textSubmission": "Text submission",
"fileTooLarge": "File exceeds 5 MB limit. Try splitting or compressing.",
"contentRequired": "Content cannot be empty",
"readFileFailed": "Failed to read file: {{error}}",
"parsingPdf": "Parsing PDF…",
"parsePdfFailed": "Failed to parse PDF: {{error}}",
"pdfNoText": "No extractable text found in this PDF.",
"imageUploadFailed": "Failed to upload image: {{error}}",
"imageTooLargeNoStorage": "Image too large to attach without storage configured (max 2 MB locally).",
"imageNeedsCaptionNoVision": "The current model can't read images. Add a text description of the image before submitting, or switch to a vision-capable model in Settings.",
"unsupportedFileType": "Unsupported file type. Only text files (.txt, .md, .csv, .json, .py, …) and PDF are accepted.",
"pasteTab": "Paste text / image",
"uploadTab": "Upload file",
"pastePlaceholder": "Paste your code, document, answer — or an image / screenshot — here…",
"uploadPlaceholder": "Uploaded content will appear here. Edit before submitting…",
"imageCaptionPlaceholder": "Add an optional caption for this image…",
"imageSelectedReplace": "Image selected · click to replace",
"removeImage": "Remove image",
"processing": "Processing…",
"cancelProcessingConfirm": "A file is still being processed. Cancel and discard this upload?",
"currentTask": "Current Task",
"hints": "Hints",
"submitOutput": "Submit",
"evaluating": "Evaluating submission…",
"lockedWhileStreaming": "The instructor is replying — please wait before submitting.",
"evalFailed": "Falha na avaliação: {{error}}",
"submittedCount": "{{count}} submitted",
"submissionHistory": "Submission History",
"fromTask": "Task: {{title}}",
"download": "Download",
"viewSubmission": "View submission",
"noActiveTask": "No active task.",
"canceling": "Cancel",
"submitting": "Submitting…",
"selectFileHint": "Choose a file · Max 5 MB · Text, PDF or image",
"modalTitle": "Submit your work",
"modalTaskLabel": "Task: {{title}}",
"fileRead": "Read: {{filename}} · {{size}} KB",
"submittedBadge": "Submitted ({{count}})",
"receiptFile": "File: {{filename}}",
"receiptTemplate": "Submitted work for this task ({{label}})."
},
"agentTabs": {
"noAgent": "No AI agent configured for this project."
},
"completion": {
"noWhatsNext": "The final evaluation hasn't been written yet.",
"backToWorkspace": "Back to Workspace",
"completionCta": "View Report",
"title": "Completion Report",
"whatYouBuilt": "What you built",
"whatYouLearned": "What you learned",
"whatsNext": "What's next",
"noDataFallback": "Not yet written",
"stageReview": "Stage Reviews",
"summary": "You completed {{completed}} of {{total}} tasks across {{stages}} stages.",
"statConcepts": "Concepts mastered",
"statTurns": "Messages exchanged",
"statScope": "Stages · Tasks",
"statDuration": "Time spent",
"statSubmissions": "Work submitted",
"coreStageBadge": "Core",
"conceptsInStageLabel": "Concepts:",
"submissionsInStage": "Submitted {{count}} piece(s) of work",
"coreConceptGrasp": "Core concept \"{{concept}}\" — {{quality}}",
"stageNoData": "No recorded output in this stage.",
"highlightsTitle": "Highlights",
"scenario": {
"summary": "Você concluiu todos os {{acts}} atos deste cenário. Veja como foi o role-play.",
"whatYouDidWell": "O que você fez bem",
"skillsPracticed": "Habilidades praticadas",
"statGoals": "Metas atingidas",
"statActs": "Atos concluídos",
"goalReviewTitle": "Revisão ato a ato",
"goalReviewHint": "Este cenário definiu algumas metas-chave para cada ato. Veja uma retrospectiva de como sua conversa realmente foi — desta vez você atingiu {{achieved}} de {{total}}.",
"goalListTitle": "O que cada ato pediu de você",
"goalListHint": "Este cenário definiu algumas metas-chave para cada ato. Veja uma retrospectiva do que cada ato pediu que você fizesse.",
"goalAchieved": "atingida",
"goalPartial": "parcial",
"goalMissed": "não atingida",
"statGoodDecisions": "Boas decisões",
"statScore": "Pontuação de decisão",
"statBeats": "Atos concluídos",
"decisionReviewTitle": "Revisão das decisões",
"good": "boas",
"ok": "razoáveis",
"poor": "a melhorar",
"decisionScore": "Pontuação de decisão {{score}}",
"castLabel": "Você interagiu com: {{names}}"
},
"highlight": {
"independence": "You demonstrated {{unlocks}}/{{total}} concepts on your own — no prompting needed. Solid understanding.",
"resilience": "In \"{{title}}\" you overcame {{errors}} errors, tackling each one — real grit.",
"resilienceGeneral": "You overcame {{errors}} errors, tackling each one — real grit.",
"completion": "You completed every task. Steady progress all the way through."
},
"synthesisQuality": {
"strong": "Strong understanding ✅",
"ok": "Good grasp 👍",
"weak": "Room to grow 💪"
},
"durationMinutes": "{{m}} min",
"durationHours": "{{h}} hr",
"durationHoursMinutes": "{{h}} hr {{m}} min"
},
"completionCard": {
"title": "Project Complete · Completion",
"subtitle": "Congratulations! You finished the entire project.",
"description": "Based on your performance data (time spent, conversations, error recovery, concepts unlocked…), we have generated a completion report showing what you built, what you learned, and where to go next."
}
}
},
"share": {
"notReady": "Disponível após a geração ser concluída"
},
"classroom": {
"recentClassrooms": "Recentes",
"today": "Hoje",
"yesterday": "Ontem",
"daysAgo": "dias atrás",
"slides": "slides",
"nameCopied": "Nome copiado",
"deleteConfirmTitle": "Excluir",
"delete": "Excluir",
"rename": "Renomear",
"renamePlaceholder": "Digite o nome da sala",
"renameFailed": "Falha ao renomear a sala",
"searchPlaceholder": "Pesquisar cursos...",
"searchAriaLabel": "Pesquisar cursos",
"clearSearch": "Limpar",
"searchEmpty": "Nenhum curso corresponde à sua busca",
"newFolderTitle": "Nova pasta",
"newFolderDesc": "Organize cursos por tópico para facilitar o acesso.",
"newFolderInline": "Nova pasta",
"folderNameLabel": "Nome da pasta",
"folderNamePlaceholder": "Ex: Matemática, Inglês, Cursos principais",
"folderNameHint": "Caracteres largos e estreitos são aceitos; espaços contam.",
"folderNameExists": "Já existe uma pasta com esse nome.",
"folderCountLimit": "Limite de pastas atingido.",
"folderWidth": "Largura {{width}}/{{max}}",
"folderCreate": "Criar",
"folderBadge": "Pasta",
"folderCourseCountUnit": "cursos",
"deleteFolderTitle": "Excluir pasta \"{{name}}\"",
"deleteFolderEmptyDesc": "Esta pasta está vazia. A exclusão não pode ser desfeita.",
"deleteFolderUngroupDesc": "Os cursos permanecem em \"Meus cursos\", apenas sem pasta.",
"moveToFolder": "Mover para pasta",
"moveToFolderLabel": "Mover para a pasta",
"ungrouped": "Sem pasta",
"searchResults": "Resultados da busca",
"folderCreateFailed": "Falha ao criar a pasta",
"folderRenameFailed": "Falha ao renomear a pasta",
"folderDeleteFailed": "Falha ao excluir a pasta",
"moveFailed": "Falha ao mover o curso",
"emptyFolderHint": "Esta pasta está vazia",
"emptyLibraryHint": "Nenhum curso ainda — crie um acima ou importe um curso.",
"folderNameEmpty": "O nome da pasta não pode estar vazio",
"deleteFolderOnly": "Excluir apenas a pasta",
"deleteFolderAndCourses": "Excluir pasta e {{count}} curso",
"deleteFolderAndCourses_other": "Excluir pasta e {{count}} cursos",
"deleteFolderConfirmRemove": "Isto remove a pasta e seus cursos, incluindo o histórico de chat."
},
"upload": {
"pdfSizeLimit": "Suporta arquivos PDF de até 50 MB",
"courseMaterialSizeLimit": "Documentos, apresentações, planilhas, imagens e texto — até 50 MB (formatos aceitos dependem do extrator selecionado)",
"generateFailed": "Falha ao gerar a sala, tente novamente",
"requirementPlaceholder": "Conte-me o que você quer aprender, por exemplo:\n\"Me ensine Python do zero em 30 minutos\"\n\"Explique a Transformada de Fourier no quadro\"\n\"Como jogar o jogo de tabuleiro Avalon\"",
"requirementRequired": "Por favor, descreva os objetivos do curso",
"fileTooLarge": "Arquivo muito grande. Selecione um arquivo com menos de 50 MB",
"courseMaterialCountLimit": "Você pode enviar até 5 arquivos de material do curso",
"courseMaterialTotalSizeLimit": "O tamanho total dos materiais deve ser menor que 150 MB",
"unsupportedCourseMaterial": "O extrator atual não suporta este formato. Troque o extrator ou escolha outro arquivo."
},
"generation": {
"modeLabel": "Modo de geração",
"normalMode": "Geração padrão",
"largeMode": "Tarefa grande",
"pdfLoadFailed": "Falha ao carregar o PDF, tente novamente",
"pdfParseFailed": "Falha ao analisar o PDF",
"analyzingCourseMaterial": "Analisando documentos",
"analyzingCourseMaterialDesc": "Extraindo estrutura e conteúdo do documento...",
"courseMaterialLoadFailed": "Falha ao carregar o material do curso, tente novamente",
"courseMaterialParseFailed": "Falha ao analisar o material do curso",
"streamNotReadable": "Não foi possível ler o fluxo de geração",
"generatingOutlines": "Esboçando o Roteiro do Curso",
"generatingOutlinesDesc": "Estruturando o caminho de aprendizagem...",
"generatingSlideContent": "Gerando Conteúdo das Páginas",
"generatingSlideContentDesc": "Criando slides, questionários e conteúdo interativo...",
"generatingActions": "Gerando Ações de Ensino",
"generatingActionsDesc": "Orquestrando narração, destaques e interações...",
"generationComplete": "Geração concluída!",
"generationFailed": "Falha na geração",
"speechFailed": "Falha ao gerar a fala",
"retryScene": "Tentar novamente",
"retryingScene": "Regerando...",
"backToHome": "Voltar ao Início",
"sessionNotFound": "Sessão Não Encontrada",
"sessionNotFoundDesc": "Preencha os objetivos do curso para iniciar a geração.",
"goBackAndRetry": "Voltar e Tentar de Novo",
"classroomReady": "Seu ambiente de aprendizagem com IA foi gerado com sucesso.",
"aiWorking": "Agentes de IA Trabalhando...",
"textTruncated": "O texto do documento é longo; usando os primeiros {{n}} caracteres",
"imageTruncated": "{{total}} imagens encontradas, excedendo o limite de {{max}}. As imagens excedentes usarão apenas descrições em texto",
"agentRevealTitle": "Seus Papéis da Sala",
"viewAgents": "Ver Papéis",
"continue": "Continuar",
"outlineRetrying": "Problema na geração do roteiro, tentando novamente...",
"outlineEmptyResponse": "O modelo não retornou roteiros válidos. Verifique a configuração do modelo e tente novamente",
"outlineGenerateFailed": "Falha ao gerar roteiro, tente novamente mais tarde",
"sceneGenerateFailed": "Falha ao gerar cena, tente novamente mais tarde",
"sceneGenerateAuthFailed": "A geração da cena falhou porque o provedor do modelo rejeitou as credenciais. Verifique a configuração do modelo.",
"sceneGenerateRateLimited": "A geração da cena atingiu o limite de requisições. Aguarde um momento e tente novamente.",
"sceneGenerateProviderUnavailable": "O provedor do modelo está temporariamente indisponível. Tente novamente mais tarde.",
"sceneGenerateInvalidResponse": "O modelo não retornou conteúdo de cena válido. Tente outro modelo ou ajuste os requisitos do curso.",
"reviewOutlineTitle": "Revise seu roteiro",
"reviewOutlineDesc": "Edite, reordene, remova ou adicione cenas antes do início da geração de conteúdo.",
"reviewOutlineAutoContinue": "A geração continuará automaticamente, a menos que você revise o roteiro.",
"outlineEditorTitle": "Roteiro das cenas",
"outlineEditorSummary": "{{count}} cenas no total. Você pode editar, adicionar, remover ou reordenar antes do início da geração.",
"addFirstScene": "Adicionar primeira cena",
"noOutlines": "Ainda não há roteiros de cenas",
"sceneTitlePlaceholder": "Título da cena",
"sceneTypeSlide": "Slide",
"sceneTypeQuiz": "Questionário",
"sceneTypeInteractive": "Interativa",
"sceneTypePbl": "PBL",
"sceneDescriptionPlaceholder": "Descreva brevemente o propósito e o conteúdo desta cena",
"quizQuestionCount": "Número de questões",
"quizDifficulty": "Dificuldade",
"quizType": "Tipo de questão",
"quizDifficultyEasy": "Fácil",
"quizDifficultyMedium": "Média",
"quizDifficultyHard": "Difícil",
"quizTypeSingle": "Escolha única",
"quizTypeMultiple": "Múltipla escolha",
"quizTypeText": "Discursiva",
"alwaysReviewOutlines": "Sempre revisar roteiros antes de gerar",
"outlineEditorEyebrow": "Roteiro gerado por IA",
"outlineEditorStreamingProgress": "Em streaming · {{count}} cenas prontas",
"outlineEditorStreamingWaiting": "Aguardando a primeira cena chegar…",
"outlineEditorWaitingConfirm": "Aguardando roteiros…",
"outlineExpandHint": "Toque para revisar",
"reviewOutlineStreamingDesc": "O roteiro ainda está chegando. Você poderá editar quando estiver completo.",
"addKeyPoint": "Adicionar ponto-chave",
"removeKeyPoint": "Remover ponto-chave",
"insertSceneHere": "Inserir uma cena aqui",
"deleteSceneConfirm": "Excluir esta cena?",
"deleteSceneConfirmDesc": "Esta cena e seus pontos-chave serão removidos do roteiro.",
"deleteSceneConfirmAction": "Excluir",
"collapseEditor": "Recolher",
"quizConfigSummary": "{{count}} questões",
"interactiveWidgetKind": "Tipo de widget",
"widgetSimulation": "Simulação",
"widgetDiagram": "Diagrama",
"widgetCode": "Código",
"widgetGame": "Jogo",
"widgetVisualization3d": "3D",
"interactiveConcept": "Conceito",
"interactiveConceptPlaceholder": "Conceito a explorar",
"pblConfigSummary": "Projeto",
"pblSubtype": "Tipo de PBL",
"pblSubtypeProject": "Projeto",
"pblSubtypeScenario": "Cenário",
"pblProjectTopic": "Tema do projeto",
"pblProjectTopicPlaceholder": "Tema do projeto",
"pblProjectDescription": "Descrição",
"pblProjectDescriptionPlaceholder": "O que os alunos vão criar",
"pblScenarioBrief": "Resumo do cenário",
"pblScenarioBriefPlaceholder": "Situação, personagens e objetivo de prática",
"pblTargetSkills": "Habilidades-alvo",
"pblAddSkill": "Adicionar habilidade",
"widgetProceduralSkill": "Habilidade prática",
"removeSkill": "Remover habilidade",
"dragSceneHint": "Arraste para reordenar; ou foque e pressione Ctrl/⌘ + ↑ / ↓",
"deleteScene": "Excluir cena",
"backToRequirements": "Voltar aos objetivos",
"confirmAndGenerateCourse": "Confirmar e gerar curso",
"generatingInProgress": "Gerando...",
"webSearching": "Buscando na Web",
"webSearchingDesc": "Pesquisando informações atualizadas na web",
"webSearchFailed": "Falha na pesquisa na web",
"outlinesReadyCount": "{{ready}} / {{total}} seções prontas",
"jumpToBlankTitle": "Ir para uma seção que ainda precisa de título",
"analyzingMediaMaterial": "Analisando áudio/vídeo"
},
"settings": {
"title": "Configurações",
"description": "Configurar opções do aplicativo",
"language": "Idioma",
"languageDesc": "Selecione o idioma da interface",
"theme": "Tema",
"themeDesc": "Selecione o modo de tema (Claro/Escuro/Sistema)",
"themeOptions": {
"light": "Claro",
"dark": "Escuro",
"system": "Sistema"
},
"apiKey": "Chave de API",
"apiKeyDesc": "Configure sua chave de API",
"apiBaseUrl": "URL do Endpoint da API",
"apiBaseUrlDesc": "Configure a URL do endpoint da sua API",
"apiKeyRequired": "A chave de API não pode ficar vazia",
"model": "Configuração do Modelo",
"modelDesc": "Configure os modelos de IA",
"modelPlaceholder": "Digite ou selecione o nome do modelo",
"ttsModel": "Modelo TTS",
"ttsModelDesc": "Configure os modelos TTS",
"ttsModelPlaceholder": "Digite ou selecione o nome do modelo TTS",
"ttsModelOptions": {
"openaiTts": "OpenAI TTS",
"azureTts": "Azure TTS"
},
"availableModels": "Modelos Disponíveis",
"modelSelectedViaVoice": "O modelo é determinado pela escolha da voz",
"testConnection": "Testar Conexão",
"testConnectionDesc": "Testar se a configuração de API atual está disponível",
"testing": "Testando...",
"agentSettings": "Configurações dos Agentes",
"agentSettingsDesc": "Selecione os agentes que participarão da conversa. Escolha 1 para modo de agente único, ou vários para modo colaborativo.",
"agentMode": "Modo de Agentes",
"agentModePreset": "Predefinido",
"agentModeAuto": "Gerar automaticamente",
"agentModeAutoDesc": "A IA criará automaticamente papéis adequados",
"autoAgentCount": "Número de Agentes",
"autoAgentCountDesc": "Quantidade de agentes a gerar (incluindo o professor)",
"atLeastOneAgent": "Selecione ao menos 1 agente",
"singleAgentMode": "Modo de Agente Único",
"directAnswer": "Resposta Direta",
"multiAgentMode": "Modo Multi-Agente",
"agentsCollaborating": "Discussão Colaborativa",
"agentsCollaboratingCount": "{{count}} agentes selecionados para discussão colaborativa",
"priority": "Prioridade",
"actions": "Ações",
"actionCount": "{{count}} ações",
"selectedAgent": "Agente Selecionado",
"selectedAgents": "Agentes Selecionados",
"required": "Obrigatório",
"agentNames": {
"default-1": "Professor de IA",
"default-2": "Assistente de IA",
"default-3": "Animador da Turma",
"default-4": "Mente Curiosa",
"default-5": "Anotador",
"default-6": "Pensador Profundo"
},
"agentRoles": {
"teacher": "Professor",
"assistant": "Assistente",
"student": "Estudante"
},
"agentDescriptions": {
"default-1": "Professor principal com explicações claras e bem estruturadas",
"default-2": "Apoia o aprendizado e ajuda a esclarecer pontos-chave",
"default-3": "Traz humor e energia para a sala de aula",
"default-4": "Sempre curioso, adora perguntar por quê e como",
"default-5": "Registra e organiza as anotações da aula com dedicação",
"default-6": "Pensa profundamente e explora a essência dos temas"
},
"close": "Fechar",
"save": "Salvar",
"providers": "LLM",
"addProviderDescription": "Adicione provedores de modelo personalizados para ampliar os modelos de IA disponíveis",
"providerNames": {
"openai": "OpenAI",
"azure": "Azure OpenAI",
"anthropic": "Claude",
"google": "Gemini",
"bedrock": "Amazon Bedrock",
"deepseek": "DeepSeek",
"qwen": "Qwen",
"kimi": "Kimi",
"minimax": "MiniMax",
"glm": "GLM",
"siliconflow": "SiliconFlow",
"doubao": "Doubao",
"openrouter": "OpenRouter",
"grok": "Grok",
"tencent-hunyuan": "Tencent Hunyuan",
"xiaomi": "Xiaomi MiMo",
"lemonade": "Lemonade (Local)",
"ollama": "Ollama (Local)",
"tavily": "Tavily",
"bocha": "Bocha",
"brave": "Brave Search",
"baidu": "Baidu",
"claude": "Claude",
"searxng": "SearXNG"
},
"providerTypes": {
"openai": "Protocolo OpenAI",
"azure": "Azure OpenAI",
"anthropic": "Protocolo Claude",
"google": "Protocolo Gemini",
"bedrock": "Amazon Bedrock"
},
"modelCount": "modelos",
"modelSingular": "modelo",
"defaultModel": "Modelo Padrão",
"webSearch": "Busca na Web",
"mcp": "MCP",
"knowledgeBase": "Base de Conhecimento",
"documentParser": "Analisador de Documentos",
"conversationSettings": "Conversa",
"keyboardShortcuts": "Atalhos",
"generalSettings": "Geral",
"systemSettings": "Sistema",
"addProvider": "Adicionar",
"importFromClipboard": "Importar da Área de Transferência",
"apiSecret": "Chave de API",
"apiHost": "URL Base",
"azureDeploymentHint": "Informe o endpoint do Azure OpenAI acima e adicione cada nome de implantação do Azure como um modelo.",
"baseUrlRegion": {
"china": "China",
"international": "Internacional",
"xiaomiPayg": "Pagamento por uso",
"xiaomiTokenPlanCN": "Plano de Tokens CN",
"xiaomiTokenPlanSGP": "Plano de Tokens SG",
"xiaomiTokenPlanEU": "Plano de Tokens EU"
},
"requestUrl": "URL da Requisição",
"models": "Modelos",
"comfyuiWorkflows": "Fluxos de trabalho",
"comfyuiRefresh": "Atualizar",
"comfyuiNoWorkflowsFoundPrefix": "Nenhum arquivo JSON de fluxo de trabalho encontrado em",
"comfyuiAddWorkflowPrefix": "Adicione um arquivo",
"comfyuiAddWorkflowSuffix": "para começar.",
"comfyuiFolderHintPrefix": "Coloque os arquivos JSON de fluxo de trabalho na sua pasta",
"comfyuiFolderHintMiddle": "O nome do arquivo se torna o nome exibido — ex.",
"comfyuiLoadError": "Falha ao carregar fluxos de trabalho: {error}",
"addModel": "Adicionar",
"reset": "Restaurar",
"fetch": "Buscar",
"connectionSuccess": "Conexão bem-sucedida",
"connectionFailed": "Falha na conexão",
"capabilities": {
"vision": "Visão",
"tools": "Ferramentas",
"streaming": "Streaming"
},
"contextWindow": "Contexto",
"contextShort": "ctx",
"outputWindow": "Saída",
"addProviderButton": "Adicionar",
"addProviderDialog": "Adicionar Provedor de Modelo",
"providerName": "Nome",
"providerNamePlaceholder": "ex.: Meu Proxy OpenAI",
"providerNameRequired": "Digite o nome do provedor",
"providerApiMode": "Modo da API",
"apiModeOpenAI": "Protocolo OpenAI",
"apiModeAnthropic": "Protocolo Claude",
"apiModeGoogle": "Protocolo Gemini",
"defaultBaseUrl": "URL Base Padrão",
"providerIcon": "URL do Ícone do Provedor",
"requiresApiKey": "Requer Chave de API",
"deleteProvider": "Excluir Provedor",
"deleteProviderConfirm": "Tem certeza que deseja excluir este provedor?",
"addCustomTTSProvider": "Adicionar Provedor TTS Personalizado",
"addCustomASRProvider": "Adicionar Provedor ASR Personalizado",
"addCustomAudioProviderDescription": "Adicione um provedor de áudio personalizado compatível com OpenAI",
"customVoices": "Vozes",
"voiceIdPlaceholder": "ID da Voz (ex.: alloy)",
"voiceNamePlaceholder": "Nome de Exibição",
"addVoice": "Adicionar",
"modelNamePlaceholder": "Opcional",
"defaultModelHint": "Nome do modelo enviado nas requisições à API (ex.: kokoro, tts-1)",
"noVoicesAdded": "Nenhuma voz adicionada ainda. Adicione vozes abaixo para seleção por agente.",
"noModelsAdded": "Nenhum modelo adicionado ainda. Adicione modelos abaixo para habilitar a seleção.",
"noModelsWarning": "Adicione pelo menos um modelo abaixo antes de usar este provedor.",
"asrNoTranscription": "Nenhuma transcrição gerada. Tente falar mais alto ou por mais tempo.",
"cannotDeleteBuiltIn": "Não é possível excluir provedor nativo",
"resetToDefault": "Restaurar Padrão",
"resetToDefaultDescription": "Restaure a lista de modelos para a configuração padrão (chave de API e URL base serão preservadas)",
"resetConfirmDescription": "Isto removerá todos os modelos personalizados e restaurará a lista padrão. Chave de API e URL base serão preservadas.",
"confirmReset": "Confirmar Restauração",
"resetSuccess": "Restauração para padrão bem-sucedida",
"saveSuccess": "Configurações salvas",
"saveFailed": "Falha ao salvar configurações, tente novamente",
"cannotDeleteBuiltInModel": "Não é possível excluir modelo nativo",
"cannotEditBuiltInModel": "Não é possível editar modelo nativo",
"modelIdRequired": "Digite o ID do modelo",
"noModelsAvailable": "Nenhum modelo disponível para teste",
"providerMetadata": "Metadados do Provedor",
"editModel": "Editar Modelo",
"editModelDescription": "Edite a configuração e capacidades do modelo",
"addNewModel": "Novo Modelo",
"modelsManagementDescription": "Gerencie os modelos e capacidades disponíveis para este provedor.",
"addNewModelDescription": "Adicionar uma nova configuração de modelo",
"modelId": "ID do Modelo",
"modelIdPlaceholder": "ex.: gpt-4o",
"modelName": "Nome de Exibição",
"modelCapabilities": "Capacidades",
"advancedSettings": "Configurações Avançadas",
"contextWindowLabel": "Janela de Contexto",
"contextWindowPlaceholder": "ex.: 128000",
"outputWindowLabel": "Tokens Máx. de Saída",
"outputWindowPlaceholder": "ex.: 4096",
"testModel": "Testar Modelo",
"deleteModel": "Excluir",
"cancelEdit": "Cancelar",
"saveModel": "Salvar",
"howToUse": "Como Usar",
"step1ConfigureProvider": "Vá em \"Provedores de Modelo\", selecione ou adicione um provedor e configure a conexão (chave de API, URL base etc.)",
"step2SelectModel": "Escolha o modelo que deseja usar em \"Modelo Ativo\" abaixo",
"step3StartUsing": "Após salvar, o sistema usará o modelo selecionado",
"activeModel": "Modelo Ativo",
"activeModelDescription": "Selecione o modelo para conversas e geração de conteúdo",
"searchModels": "Pesquisar modelos",
"noModelsFound": "Nenhum modelo correspondente encontrado",
"noConfiguredProviders": "Nenhum provedor configurado",
"configureProvidersFirst": "Configure a conexão em \"Provedores de Modelo\" à esquerda",
"currentlyUsing": "Em uso",
"ttsSettings": "Texto para Fala",
"asrSettings": "Reconhecimento de Fala",
"audioSettings": "Configurações de Áudio",
"ttsSection": "Texto para Fala (TTS)",
"asrSection": "Reconhecimento Automático de Fala (ASR)",
"ttsDescription": "TTS (Texto para Fala) — converte texto em fala",
"asrDescription": "ASR (Reconhecimento Automático de Fala) — converte fala em texto",
"enableTTS": "Habilitar Texto para Fala",
"ttsEnabledDescription": "Quando ativado, o áudio de fala será gerado durante a criação do curso",
"ttsVoiceConfigHint": "A voz por agente pode ser configurada em \"Configuração de Papéis da Sala\" na página inicial",
"enableASR": "Habilitar Reconhecimento de Fala",
"asrEnabledDescription": "Quando ativado, os estudantes podem usar o microfone para entrada por voz",
"ttsProvider": "Provedor TTS",
"ttsLanguageFilter": "Filtro de Idioma",
"allLanguages": "Todos os Idiomas",
"ttsVoice": "Voz",
"ttsSpeed": "Velocidade",
"ttsBaseUrl": "URL Base",
"ttsApiKey": "Chave de API",
"doubaoAppId": "App ID",
"doubaoAccessKey": "Access Key",
"asrProvider": "Provedor ASR",
"asrLanguage": "Idioma de Reconhecimento",
"asrBaseUrl": "URL Base",
"asrApiKey": "Chave de API",
"enterApiKey": "Digite a chave de API",
"enterCustomBaseUrl": "Digite uma URL base personalizada",
"browserNativeNote": "O ASR nativo do navegador não exige configuração e é totalmente gratuito",
"providerOpenAITTS": "OpenAI TTS (gpt-4o-mini-tts)",
"providerAzureTTS": "Azure TTS",
"providerGLMTTS": "GLM TTS",
"providerQwenTTS": "Qwen TTS (Alibaba Cloud Bailian)",
"providerVoxCPMTTS": "VoxCPM2",
"providerDoubaoTTS": "Doubao TTS 2.0 (Volcengine)",
"providerElevenLabsTTS": "ElevenLabs TTS",
"providerMiniMaxTTS": "MiniMax TTS",
"providerLemonadeTTS": "Lemonade TTS (Local)",
"providerBrowserNativeTTS": "TTS Nativo do Navegador",
"voxcpmBackend": "Backend",
"voxcpmBaseUrlPending": "Digite uma URL base para gerar a URL da requisição",
"voxcpmAutoVoiceNoPreview": "A Voz Automática é gerada a partir do contexto do agente e não pode ser pré-visualizada diretamente",
"voxcpmVoicesTitle": "Vozes VoxCPM",
"voxcpmVoicesDescription": "Salvas neste navegador e adicionadas ao conjunto de vozes da Barra de Agentes.",
"voxcpmAutoVoicePrivacyNote": "A Voz Automática envia a persona do agente ao seu backend VoxCPM configurado como prompt de voz.",
"voxcpmPromptCount": "Prompt {{count}}",
"voxcpmCloneCount": "Clone {{count}}",
"voxcpmCloneUnsupported": "O backend atual não suporta clonagem",
"voxcpmVoicePool": "Conjunto de Vozes",
"voxcpmVoiceCount": "{{count}} vozes",
"voxcpmAutoVoice": "Voz Automática",
"voxcpmAutoVoiceDescription": "Usa a persona do agente como prompt de voz",
"voxcpmUnavailable": "Indisponível",
"voxcpmClone": "Clonar",
"voxcpmCloneUnsupportedDetail": "O backend atual não suporta clonagem",
"voxcpmNoCustomVoices": "Ainda não há vozes personalizadas",
"voxcpmCloneSaveOnly": "Salva somente para este backend",
"voxcpmVoiceNamePlaceholder": "Nome da voz",
"voxcpmPromptPlaceholder": "Exemplo: voz de professor clara, natural e em ritmo moderado",
"voxcpmAddVoice": "Adicionar Voz",
"voxcpmCloneVoiceNamePlaceholder": "Nome da voz clonada",
"voxcpmUploadReferenceAudio": "Enviar áudio de referência",
"voxcpmRecord": "Gravar",
"voxcpmReferenceAudioLimitHint": "O áudio de referência deve ter no máximo 10 MB / 60 segundos e é convertido para WAV antes de ser salvo.",
"voxcpmReferenceTextPlaceholder": "Transcrição do áudio de referência, opcional",
"voxcpmVoiceDescriptionPlaceholder": "Descrição da voz, opcional",
"voxcpmAddClone": "Adicionar Clone",
"voxcpmRecordingUnsupported": "Este navegador não suporta gravação",
"voxcpmRecordedVoiceName": "Voz Gravada",
"voxcpmRecordingFailed": "Falha na conversão da gravação",
"voxcpmRecordingStartFailed": "Não foi possível iniciar a gravação",
"voxcpmBaseUrlRequired": "Digite uma URL base do VoxCPM primeiro",
"voxcpmPreviewFailed": "Falha na pré-visualização",
"voxcpmVoiceSaved": "Voz VoxCPM salva",
"voxcpmVoiceSaveFailed": "Falha ao salvar a voz",
"voxcpmReferenceAudioInvalid": "Áudio de referência inválido",
"voxcpmCloneSaved": "Voz clonada VoxCPM salva",
"voxcpmCloneSaveFailed": "Falha ao salvar voz clonada",
"voxcpmStopPreview": "Parar pré-visualização",
"voxcpmPreviewVoice": "Pré-visualizar voz",
"voxcpmDeleteVoice": "Excluir voz",
"providerOpenAIWhisper": "OpenAI ASR (gpt-4o-mini-transcribe)",
"providerBrowserNative": "ASR Nativo do Navegador",
"providerQwenASR": "Qwen ASR (Alibaba Cloud Bailian)",
"providerFunASRASR": "FunASR (Local)",
"providerLemonadeASR": "Lemonade ASR (Local)",
"providerAzureASR": "Azure STT",
"providerUnpdf": "unpdf (Nativo)",
"providerMinerU": "MinerU",
"providerMinerUCloud": "MinerU (Nuvem)",
"browserNativeTTSNote": "O TTS nativo do navegador não exige configuração e é totalmente gratuito, usando vozes integradas ao sistema",
"testTTS": "Testar TTS",
"testASR": "Testar ASR",
"testSuccess": "Teste bem-sucedido",
"testFailed": "Teste falhou",
"ttsTestText": "Texto de Teste TTS",
"ttsTestSuccess": "Teste TTS bem-sucedido, áudio reproduzido",
"ttsTestFailed": "Falha no teste TTS",
"asrTestSuccess": "Reconhecimento de fala bem-sucedido",
"asrTestFailed": "Falha no reconhecimento de fala",
"asrProcessing": "Processando...",
"asrResult": "Resultado do Reconhecimento",
"asrNotSupported": "O navegador não suporta a API de Reconhecimento de Fala",
"browserTTSNotSupported": "O navegador não suporta a API de Síntese de Fala",
"browserTTSNoVoices": "O navegador atual não tem vozes TTS disponíveis",
"microphoneAccessDenied": "Acesso ao microfone negado",
"microphoneAccessFailed": "Falha ao acessar o microfone",
"asrResultPlaceholder": "O resultado do reconhecimento aparecerá após a gravação",
"useThisProvider": "Usar Este Provedor",
"fetchVoices": "Buscar Lista de Vozes",
"fetchingVoices": "Buscando...",
"voicesFetched": "Vozes obtidas",
"fetchVoicesFailed": "Falha ao buscar vozes",
"voiceApiKeyRequired": "Chave de API obrigatória",
"voiceBaseUrlRequired": "URL base obrigatória",
"ttsTestTextPlaceholder": "Digite o texto a ser convertido",
"ttsTestTextDefault": "Olá, este é um teste de fala.",
"startRecording": "Iniciar Gravação",
"stopRecording": "Parar Gravação",
"recording": "Gravando...",
"transcribing": "Transcrevendo...",
"transcriptionResult": "Resultado da Transcrição",
"noTranscriptionResult": "Sem resultado de transcrição",
"baseUrlOptional": "URL Base (opcional)",
"defaultValue": "Padrão",
"voiceMarin": "Recomendada — Melhor Qualidade",
"voiceCedar": "Recomendada — Melhor Qualidade",
"voiceAlloy": "Neutra, Equilibrada",
"voiceAsh": "Firme, Profissional",
"voiceBallad": "Elegante, Lírica",
"voiceCoral": "Calorosa, Amigável",
"voiceEcho": "Masculina, Clara",
"voiceFable": "Narrativa, Vívida",
"voiceNova": "Feminina, Brilhante",
"voiceOnyx": "Masculina, Grave",
"voiceSage": "Sábia, Serena",
"voiceShimmer": "Feminina, Suave",
"voiceVerse": "Natural, Fluida",
"glmVoiceTongtong": "Voz padrão",
"glmVoiceChuichui": "Voz Chuichui",
"glmVoiceXiaochen": "Voz Xiaochen",
"glmVoiceJam": "Voz Jam",
"glmVoiceKazi": "Voz Kazi",
"glmVoiceDouji": "Voz Douji",
"glmVoiceLuodo": "Voz Luodo",
"qwenVoiceCherry": "Solar, calorosa e natural",
"qwenVoiceSerena": "Gentil e suave",
"qwenVoiceEthan": "Enérgica e vibrante",
"qwenVoiceChelsie": "Namorada virtual estilo anime",
"qwenVoiceMomo": "Brincalhona e alegre",
"qwenVoiceVivian": "Fofa e atrevida",
"qwenVoiceMoon": "Descolado e bonito",
"qwenVoiceMaia": "Intelectual e gentil",
"qwenVoiceKai": "Um SPA para os seus ouvidos",
"qwenVoiceNofish": "Designer que não consegue pronunciar sons retroflexos",
"qwenVoiceBella": "Lolita que não fica bêbada",
"qwenVoiceJennifer": "Voz feminina americana cinematográfica e de marca",
"qwenVoiceRyan": "Ritmo acelerado, performance dramática",
"qwenVoiceKaterina": "Mulher madura com ritmo marcante",
"qwenVoiceAiden": "Menino americano que domina a cozinha",
"qwenVoiceEldricSage": "Ancião firme e sábio",
"qwenVoiceMia": "Suave como água de primavera, bem-comportada como a neve",
"qwenVoiceMochi": "Pequena adulta esperta com inocência infantil",
"qwenVoiceBellona": "Voz alta, pronúncia clara, personagens vívidos",
"qwenVoiceVincent": "Voz rouca única que conta histórias de guerra e honra",
"qwenVoiceBunny": "Lolita super fofa",
"qwenVoiceNeil": "Apresentador profissional de notícias",
"qwenVoiceElias": "Instrutor profissional",
"qwenVoiceArthur": "Voz simples marcada pelos anos e pelo tabaco seco",
"qwenVoiceNini": "Voz macia e grudenta como mochi",
"qwenVoiceEbona": "Seu sussurro é como uma chave enferrujada",
"qwenVoiceSeren": "Voz gentil e tranquilizante para te ajudar a dormir",
"qwenVoicePip": "Travesso, mas cheio de inocência infantil",
"qwenVoiceStella": "Voz de menina doce e confusa que se firma ao gritar",
"qwenVoiceBodega": "Tio espanhol entusiasmado",
"qwenVoiceSonrisa": "Senhora latino-americana entusiasmada",
"qwenVoiceAlek": "Frio em batalha, caloroso sob o casaco de lã",
"qwenVoiceDolce": "Tio italiano preguiçoso",
"qwenVoiceSohee": "Unnie coreana gentil e alegre",
"qwenVoiceOnoAnna": "Amiga de infância travessa",
"qwenVoiceLenn": "Jovem alemão racional, de terno, que ouve pós-punk",
"qwenVoiceEmilien": "Irmão mais velho francês e romântico",
"qwenVoiceAndre": "Voz masculina magnética, natural e calma",
"qwenVoiceRadioGol": "Poeta do futebol — Rádio Gol!",
"qwenVoiceJada": "Senhora animada de Xangai",
"qwenVoiceDylan": "Garoto de Pequim",
"qwenVoiceLi": "Professora paciente de yoga",
"qwenVoiceMarcus": "Rosto largo, palavras curtas, coração firme — sotaque típico de Shaanxi",
"qwenVoiceRoy": "Garoto taiwanês bem-humorado e direto",
"qwenVoicePeter": "Animador profissional de crosstalk de Tianjin",
"qwenVoiceSunny": "Doce garota de Sichuan",
"qwenVoiceEric": "Cavalheiro de Chengdu",
"qwenVoiceRocky": "Cara bem-humorado de Hong Kong",
"qwenVoiceKiki": "Garota doce de Hong Kong",
"lang_auto": "Detecção automática",
"lang_zh": "中文",
"lang_yue": "粤語",
"lang_en": "English",
"lang_ja": "日本語",
"lang_ko": "한국어",
"lang_es": "Español",
"lang_fr": "Français",
"lang_de": "Deutsch",
"lang_ru": "Русский",
"lang_ar": "العربية",
"lang_pt": "Português",
"lang_it": "Italiano",
"lang_af": "Afrikaans",
"lang_hy": "Հայերեն",
"lang_az": "Azərbaycan",
"lang_be": "Беларуская",
"lang_bs": "Bosanski",
"lang_bg": "Български",
"lang_ca": "Català",
"lang_hr": "Hrvatski",
"lang_cs": "Čeština",
"lang_da": "Dansk",
"lang_nl": "Nederlands",
"lang_et": "Eesti",
"lang_fi": "Suomi",
"lang_gl": "Galego",
"lang_el": "Ελληνικά",
"lang_he": "עברית",
"lang_hi": "हिन्दी",
"lang_hu": "Magyar",
"lang_is": "Íslenska",
"lang_id": "Bahasa Indonesia",
"lang_kn": "ಕನ್ನಡ",
"lang_kk": "Қазақша",
"lang_lv": "Latviešu",
"lang_lt": "Lietuvių",
"lang_mk": "Македонски",
"lang_ms": "Bahasa Melayu",
"lang_mr": "मराठी",
"lang_mi": "Te Reo Māori",
"lang_ne": "नेपाली",
"lang_no": "Norsk",
"lang_fa": "فارسی",
"lang_pl": "Polski",
"lang_ro": "Română",
"lang_sr": "Српски",
"lang_sk": "Slovenčina",
"lang_sl": "Slovenščina",
"lang_sw": "Kiswahili",
"lang_sv": "Svenska",
"lang_tl": "Tagalog",
"lang_fil": "Filipino",
"lang_ta": "தமிழ்",
"lang_th": "ไทย",
"lang_tr": "Türkçe",
"lang_uk": "Українська",
"lang_ur": "اردو",
"lang_vi": "Tiếng Việt",
"lang_cy": "Cymraeg",
"lang_zh-CN": "中文(简体,中国)",
"lang_zh-TW": "中文(繁體,台灣)",
"lang_zh-HK": "粵語(香港)",
"lang_yue-Hant-HK": "粵語(繁體)",
"lang_en-US": "English (United States)",
"lang_en-GB": "English (United Kingdom)",
"lang_en-AU": "English (Australia)",
"lang_en-CA": "English (Canada)",
"lang_en-IN": "English (India)",
"lang_en-NZ": "English (New Zealand)",
"lang_en-ZA": "English (South Africa)",
"lang_ja-JP": "日本語(日本)",
"lang_ko-KR": "한국어(대한민국)",
"lang_de-DE": "Deutsch (Deutschland)",
"lang_fr-FR": "Français (France)",
"lang_es-ES": "Español (España)",
"lang_es-MX": "Español (México)",
"lang_es-AR": "Español (Argentina)",
"lang_es-CO": "Español (Colombia)",
"lang_it-IT": "Italiano (Italia)",
"lang_pt-BR": "Português (Brasil)",
"lang_pt-PT": "Português (Portugal)",
"lang_ru-RU": "Русский (Россия)",
"lang_nl-NL": "Nederlands (Nederland)",
"lang_pl-PL": "Polski (Polska)",
"lang_cs-CZ": "Čeština (Česko)",
"lang_da-DK": "Dansk (Danmark)",
"lang_fi-FI": "Suomi (Suomi)",
"lang_sv-SE": "Svenska (Sverige)",
"lang_no-NO": "Norsk (Norge)",
"lang_tr-TR": "Türkçe (Türkiye)",
"lang_el-GR": "Ελληνικά (Ελλάδα)",
"lang_hu-HU": "Magyar (Magyarország)",
"lang_ro-RO": "Română (România)",
"lang_sk-SK": "Slovenčina (Slovensko)",
"lang_bg-BG": "Български (България)",
"lang_hr-HR": "Hrvatski (Hrvatska)",
"lang_ca-ES": "Català (Espanya)",
"lang_ar-SA": "العربية (السعودية)",
"lang_ar-EG": "العربية (مصر)",
"lang_he-IL": "עברית (ישראל)",
"lang_hi-IN": "हिन्दी (भारत)",
"lang_th-TH": "ไทย (ประเทศไทย)",
"lang_vi-VN": "Tiếng Việt (Việt Nam)",
"lang_id-ID": "Bahasa Indonesia (Indonesia)",
"lang_ms-MY": "Bahasa Melayu (Malaysia)",
"lang_fil-PH": "Filipino (Pilipinas)",
"lang_af-ZA": "Afrikaans (Suid-Afrika)",
"lang_uk-UA": "Українська (Україна)",
"pdfSettings": "Análise de PDF",
"documentParsingSettings": "Análise de Documentos",
"supportedFormats": "Formatos Suportados",
"mineruSelfHostFormatsNote": "A análise de PDF e imagens requer os extras mineru[pipeline] ou mineru[core] no seu servidor MinerU. Instalações leves do mineru-api podem processar apenas documentos do Office.",
"pdfParsingSettings": "Configurações de Análise de PDF",
"pdfDescription": "Escolha o mecanismo de análise de PDF com suporte a extração de texto, processamento de imagens e reconhecimento de tabelas",
"pdfProvider": "Analisador de PDF",
"pdfFeatures": "Recursos Suportados",
"pdfApiKey": "Chave de API",
"pdfBaseUrl": "URL Base",
"mineruDescription": "O MinerU é um serviço comercial de análise de PDF com recursos avançados como extração de tabelas, reconhecimento de fórmulas e análise de layout.",
"mineruApiKeyRequired": "É preciso solicitar uma chave de API no site do MinerU antes de usar.",
"mineruWarning": "Aviso",
"mineruCostWarning": "O MinerU é um serviço comercial e pode gerar cobranças. Confira os preços no site do MinerU.",
"enterMinerUApiKey": "Digite a chave de API do MinerU",
"mineruLocalDescription": "O MinerU suporta implantação local com análise avançada de PDF (tabelas, fórmulas, layout). Requer implantar o serviço MinerU primeiro.",
"mineruServerAddress": "Endereço local do servidor MinerU (ex.: http://localhost:8080)",
"mineruApiKeyOptional": "Necessária somente se o servidor exigir autenticação",
"mineruCloudApiKeyPlaceholder": "Digite a chave de API do MinerU Cloud",
"optionalApiKey": "Chave de API opcional",
"featureText": "Extração de Texto",
"featureImages": "Extração de Imagens",
"featureTables": "Extração de Tabelas",
"featureFormulas": "Reconhecimento de Fórmulas",
"featureLayoutAnalysis": "Análise de Layout",
"featureMetadata": "Metadados",
"enableImageGeneration": "Habilitar Geração de Imagens por IA",
"imageGenerationDisabledHint": "Quando ativado, imagens serão geradas automaticamente durante a criação do curso",
"imageSettings": "Geração de Imagens",
"imageSection": "Texto para Imagem",
"imageProvider": "Provedor de Geração de Imagens",
"imageModel": "Modelo de Geração de Imagens",
"providerSeedream": "Seedream (ByteDance)",
"providerOpenAIImage": "OpenAI Image",
"providerQwenImage": "Qwen Image (Alibaba)",
"providerNanoBanana": "Nano Banana (Gemini)",
"providerMiniMaxImage": "MiniMax Image",
"providerGrokImage": "Grok Image (xAI)",
"providerComfyUIImage": "ComfyUI Image",
"providerLemonadeImage": "Lemonade Image (Local)",
"testImageGeneration": "Testar Geração de Imagem",
"testImageConnectivity": "Testar Conexão",
"imageConnectivitySuccess": "Serviço de imagem conectado com sucesso",
"imageConnectivityFailed": "Falha na conexão com o serviço de imagem",
"imageTestSuccess": "Teste de geração de imagem bem-sucedido",
"imageTestFailed": "Falha no teste de geração de imagem",
"imageTestPromptPlaceholder": "Digite uma descrição de imagem para testar",
"imageTestPromptDefault": "Um gatinho fofo sentado em uma mesa",
"imageGenerating": "Gerando imagem...",
"imageGenerationFailed": "Falha na geração de imagem",
"enableVideoGeneration": "Habilitar Geração de Vídeos por IA",
"videoGenerationDisabledHint": "Quando ativado, vídeos serão gerados automaticamente durante a criação do curso",
"videoSettings": "Geração de Vídeos",
"videoSection": "Texto para Vídeo",
"videoProvider": "Provedor de Geração de Vídeos",
"videoModel": "Modelo de Geração de Vídeos",
"providerSeedance": "Seedance (ByteDance)",
"providerKling": "Kling (Kuaishou)",
"providerVeo": "Veo (Google)",
"providerSora": "Sora (OpenAI)",
"providerMiniMaxVideo": "MiniMax Video",
"providerGrokVideo": "Grok Video (xAI)",
"providerHappyHorse": "HappyHorse (Alibaba Cloud)",
"testVideoGeneration": "Testar Geração de Vídeo",
"testVideoConnectivity": "Testar Conexão",
"videoConnectivitySuccess": "Serviço de vídeo conectado com sucesso",
"videoConnectivityFailed": "Falha na conexão com o serviço de vídeo",
"testingConnection": "Testando...",
"videoTestSuccess": "Teste de geração de vídeo bem-sucedido",
"videoTestFailed": "Falha no teste de geração de vídeo",
"videoTestPromptDefault": "Um gatinho fofo andando sobre uma mesa",
"videoGenerating": "Gerando vídeo (estimativa: 1-2 min)...",
"videoGenerationWarning": "A geração de vídeo geralmente leva 1-2 minutos. Aguarde com paciência",
"mediaRetry": "Tentar novamente",
"mediaContentSensitive": "Desculpe, este conteúdo acionou uma verificação de segurança.",
"mediaGenerationDisabled": "Geração desabilitada nas configurações",
"singleAgent": "Agente Único",
"multiAgent": "Multi-Agente",
"selectAgents": "Selecionar Agentes",
"noVisionWarning": "O modelo atual não suporta visão. As imagens ainda podem ser colocadas nos slides, mas o modelo não conseguirá entender o conteúdo das imagens para otimizar seleção e layout",
"serverConfigured": "Servidor",
"serverConfiguredNotice": "Este provedor é gerenciado pelo servidor e não pode ser editado aqui. Para usar suas próprias credenciais, adicione um provedor separado.",
"ttsProviderEnabledLabel": "Ativar este provedor",
"ttsProviderEnabledHint": "Quando desligado, este provedor fica oculto no seletor de voz e nunca é atribuído automaticamente.",
"ttsProviderUnavailableHint": "Configure este provedor antes de ativá-lo.",
"ttsProviderDisabledByAdmin": "Este provedor foi desativado pelo administrador do servidor e não pode ser ativado.",
"optionalOverride": "Opcional — deixe vazio para usar a configuração do servidor",
"setupNeeded": "Configuração necessária",
"modelNotConfigured": "Selecione um modelo para começar",
"dangerZone": "Zona de Perigo",
"clearCache": "Limpar Cache Local",
"clearCacheDescription": "Apaga todos os dados armazenados localmente, incluindo salas de aula, histórico de conversa, cache de áudio e configurações do app. Esta ação não pode ser desfeita.",
"clearCacheConfirmTitle": "Tem certeza que deseja limpar todo o cache?",
"clearCacheConfirmDescription": "Isto apagará permanentemente todos os dados a seguir e não poderá ser recuperado:",
"clearCacheConfirmItems": "Salas e cenas, Histórico de conversa, Cache de áudio e imagens, Configurações e preferências do app",
"clearCacheConfirmInput": "Digite \"DELETE\" para continuar",
"clearCacheConfirmPhrase": "DELETE",
"clearCacheButton": "Excluir Permanentemente Todos os Dados",
"clearCacheSuccess": "Cache limpo. A página será atualizada em instantes",
"clearCacheFailed": "Falha ao limpar o cache, tente novamente",
"clearCacheBlockedByOtherTabs": "Feche as outras abas do app e tente novamente.",
"persistUnavailable": "Suas alterações não estão sendo salvas porque o aplicativo não consegue acessar os dados armazenados. Se recarregar não resolver, limpe o cache local nas Configurações.",
"persistChangesLost": "O armazenamento voltou a funcionar, mas as alterações feitas enquanto ele estava indisponível não puderam ser salvas e foram substituídas pela última versão salva.",
"webSearchSettings": "Busca na Web",
"webSearchApiKey": "Chave de API de Busca",
"webSearchApiKeyPlaceholder": "Digite sua chave de API de busca",
"webSearchApiKeyPlaceholderServer": "Chave configurada no servidor, opcionalmente sobreponha",
"webSearchApiKeyHint": "Obtenha uma chave de API com o provedor de busca selecionado",
"claudeSearchModel": "Modelo de busca",
"claudeSearchModelHint": "O modelo Claude que realiza as buscas na web e resume os resultados.",
"webSearchApiKeyOptional": "A chave de API é opcional. Sem ela, será usada extração pública de páginas como alternativa.",
"searxngServerOnlyNotice": "O SearXNG deve ser configurado no servidor. Defina a variável de ambiente SEARXNG_BASE_URL (ou a seção web-search em server-providers.yml). URLs de instância fornecidas pelo cliente não são aceitas.",
"baiduSubSources": "Fontes do Baidu",
"baiduSubSourcesDescription": "Escolha pelo menos uma fonte do Baidu para consultar.",
"baiduSubSourceWeb": "Busca Web",
"baiduSubSourceWebDescription": "Páginas web gerais do Baidu AI Search.",
"baiduSubSourceBaike": "Baidu Baike",
"baiduSubSourceBaikeDescription": "Verbetes de enciclopédia do Baidu Baike.",
"baiduSubSourceScholar": "Baidu Scholar",
"baiduSubSourceScholarDescription": "Artigos acadêmicos do Baidu Scholar.",
"viewDocs": "Documentação da API",
"webSearchBaseUrl": "URL Base",
"webSearchServerConfigured": "Chave de API de busca configurada no servidor",
"optional": "Opcional",
"selectProvider": "Select Provider",
"customProvider": "Custom",
"presetPickHint": "Picking a provider auto-fills its base URL and protocol; enter your key then click \"Fetch Models\". Not listed? Use \"Custom\".",
"presetCategory": {
"tokenPlan": "Token Plans",
"aggregator": "Aggregators",
"thirdParty": "Vendors",
"official": "Official"
},
"fetchModels": "Fetch Models",
"fetchModelsResult": "Fetched {total} models, added {added}",
"fetchModelsNoEndpoint": "This provider has no model list endpoint — add models manually",
"fetchModelsAuthError": "API key is invalid or expired",
"fetchModelsFailed": "Failed to fetch models",
"usage": {
"title": "Usage",
"refresh": "Refresh",
"disclaimer": "Usage is system-tracked; only server-side calls are counted.",
"totalRequests": "Requests",
"totalTokens": "LLM Tokens",
"dailyTrend": "Daily Token Trend",
"tokens": "Tokens",
"byModel": "By Model",
"model": "Model",
"type": "Type",
"reqs": "Reqs",
"usage": "Usage",
"empty": "No usage data yet",
"kindLlm": "LLM",
"kindImage": "Image",
"kindVideo": "Video",
"kindTts": "Speech",
"kindAsr": "ASR",
"unitToken": "tokens",
"unitImage": "images",
"unitSecond": "sec",
"unitCharacter": "chars"
},
"tokenPlan": {
"nav": "Token Plan",
"title": "Token Plan Setup",
"desc": "Pick your token plan provider and enter the key — it auto-configures every adapted modality (LLM/image/video/speech/web search).",
"selectPlan": "Select Provider",
"apiKey": "API Key",
"enable": "Enable",
"updateKey": "Update key",
"modelsCount": "{{n}} models",
"capabilities": "Capabilities offered",
"offeredNote": "Models offered by this plan. Pick the ones you want on the generation bar — availability depends on your plan tier, and unsupported models will error at generation time."
},
"ttsBrowserNativeTimelineNotice": "O TTS nativo do navegador não suporta os recursos de áudio da linha do tempo do editor (pré-visualizar, regenerar e narração em lote). Mude para um provedor de TTS gerenciado para gerar e gerenciar o áudio de cada linha.",
"alidocmindAccessKeyId": "AccessKey ID",
"alidocmindAccessKeySecret": "AccessKey Secret"
},
"profile": {
"title": "Perfil",
"defaultNickname": "Estudante"
},
"media": {
"imageCapability": "Geração de Imagens",
"imageShort": "Imagem",
"imageHint": "Gerar imagens nos slides",
"videoCapability": "Geração de Vídeos",
"videoShort": "Vídeo",
"videoHint": "Gerar vídeos nos slides",
"ttsCapability": "Texto para Fala",
"ttsShort": "Voz",
"ttsHint": "O professor de IA fala em voz alta",
"asrCapability": "Reconhecimento de Fala",
"asrShort": "Microfone",
"asrHint": "Entrada por voz nas discussões",
"webSearchShort": "Buscar",
"provider": "Provedor",
"model": "Modelo",
"voice": "Voz",
"speed": "Velocidade",
"language": "Idioma"
},
"accessCode": {
"title": "Digite o Código de Acesso",
"placeholder": "Código de acesso",
"error": "Código inválido. Tente novamente."
}
}