feat: translations (#3176)

This commit is contained in:
crazywoola 2024-04-08 23:17:16 +08:00 • committed by GitHub
commit 1382f10433
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
40 changed files with 2595 additions and 696 deletions

View file

@ -266,19 +266,32 @@ const translation = {
queryNoBeEmpty: 'A consulta deve ser definida na solicitação',
},
variableConig: {
'addModalTitle': 'Configurações do Campo',
'addModalTitle': 'Adicionar Campo de Entrada',
'editModalTitle': 'Editar Campo de Entrada',
'description': 'Configuração para a variável {{varName}}',
'fieldType': 'Tipo de Campo',
'string': 'Texto Curto',
'text-input': 'Texto Curto',
'paragraph': 'Parágrafo',
'select': 'Selecionar',
'notSet': 'Não definido, tente digitar {{input}} na solicitação',
'stringTitle': 'Opções da Caixa de Texto do Formulário',
'number': 'Número',
'notSet': 'Não definido, tente digitar {{input}} no prompt de prefixo',
'stringTitle': 'Opções da caixa de texto do formulário',
'maxLength': 'Comprimento Máximo',
'options': 'Opções',
'addOption': 'Adicionar opção',
'apiBasedVar': 'Variável Baseada em API',
'varName': 'Nome da Variável',
'labelName': 'Nome do Rótulo',
'inputPlaceholder': 'Por favor, insira',
'required': 'Obrigatório',
'errorMsg': {
varNameRequired: 'O nome da variável é obrigatório',
labelNameRequired: 'O nome do rótulo é obrigatório',
varNameCanBeRepeat: 'O nome da variável não pode ser repetido',
atLeastOneOption: 'Pelo menos uma opção é obrigatória',
optionRepeat: 'Tem opções repetidas',
},
},
vision: {
name: 'Visão',
@ -349,6 +362,7 @@ const translation = {
result: 'Texto de Saída',
datasetConfig: {
settingTitle: 'Configurações de Recuperação',
knowledgeTip: 'Clique no botão “+” para adicionar conhecimento',
retrieveOneWay: {
title: 'Recuperação N-para-1',
description: 'Com base na intenção do usuário e nas descrições do Conhecimento, o Agente seleciona autonomamente o melhor Conhecimento para consulta. Melhor para aplicativos com Conhecimento distinto e limitado.',

View file

@ -1,10 +1,10 @@
const translation = {
title: 'Registros',
description: 'Os registros registram o status de execução do aplicativo, incluindo as entradas do usuário e as respostas da IA.',
description: 'Os registros registram o status de execução do aplicativo, incluindo entradas do usuário e respostas do AI.',
dateTimeFormat: 'MM/DD/YYYY hh:mm A',
table: {
header: {
time: 'Tempo',
time: 'Hora',
endUser: 'Usuário Final',
input: 'Entrada',
output: 'Saída',
@ -12,58 +12,72 @@ const translation = {
messageCount: 'Contagem de Mensagens',
userRate: 'Taxa de Usuário',
adminRate: 'Taxa de Op.',
startTime: 'HORA DE INÍCIO',
status: 'STATUS',
runtime: 'TEMPO DE EXECUÇÃO',
tokens: 'TOKENS',
user: 'USUÁRIO FINAL',
version: 'VERSÃO',
},
pagination: {
previous: 'Anterior',
next: 'Próximo',
},
empty: {
noChat: 'Nenhuma conversa ainda',
noOutput: 'Nenhuma saída',
noChat: 'Ainda não há conversas',
noOutput: 'Sem saída',
element: {
title: 'Tem alguém aí?',
content: 'Observe e anote as interações entre usuários finais e aplicativos de IA aqui para melhorar continuamente a precisão da IA. Você pode tentar <shareLink>compartilhar</shareLink> ou <testLink>testar</testLink> o aplicativo da Web você mesmo e depois voltar para esta página.',
content: 'Observe e anote as interações entre os usuários finais e os aplicativos de IA aqui para melhorar continuamente a precisão da IA. Você pode tentar <shareLink>compartilhar</shareLink> ou <testLink>testar</testLink> o aplicativo da Web você mesmo, e depois voltar para esta página.',
},
},
},
detail: {
time: 'Tempo',
time: 'Hora',
conversationId: 'ID da Conversa',
promptTemplate: 'Modelo de Prompt',
promptTemplateBeforeChat: 'Modelo de Prompt Antes da Conversa · Como Mensagem do Sistema',
promptTemplateBeforeChat: 'Modelo de Prompt Antes do Chat · Como Mensagem do Sistema',
annotationTip: 'Melhorias Marcadas por {{user}}',
timeConsuming: '',
second: 's',
tokenCost: 'Tokens gastos',
tokenCost: 'Token gasto',
loading: 'carregando',
operation: {
like: 'curtir',
dislike: 'não curtir',
addAnnotation: 'Adicionar Melhoria',
editAnnotation: 'Editar Melhoria',
annotationPlaceholder: 'Digite a resposta esperada que você deseja que a IA responda, que pode ser usada para ajustar o modelo e melhorar continuamente a qualidade da geração de texto no futuro.',
annotationPlaceholder: 'Digite a resposta esperada que você deseja que o AI responda, o que pode ser usado para ajustar o modelo e melhorar continuamente a qualidade da geração de texto no futuro.',
},
variables: 'Variáveis',
uploadImages: 'Imagens Enviadas',
uploadImages: 'Imagens Carregadas',
},
filter: {
period: {
today: 'Hoje',
last7days: 'Últimos 7 Dias',
last7days: 'Últimos 7 dias',
last4weeks: 'Últimas 4 semanas',
last3months: 'Últimos 3 meses',
last12months: 'Últimos 12 meses',
monthToDate: 'Mês até a data',
quarterToDate: 'Trimestre até a data',
yearToDate: 'Ano até a data',
monthToDate: 'Mês até hoje',
quarterToDate: 'Trimestre até hoje',
yearToDate: 'Ano até hoje',
allTime: 'Todo o tempo',
},
annotation: {
all: 'Todos',
all: 'Tudo',
annotated: 'Melhorias Anotadas ({{count}} itens)',
not_annotated: 'Não Anotadas',
not_annotated: 'Não Anotado',
},
},
workflowTitle: 'Registros de Fluxo de Trabalho',
workflowSubtitle: 'O registro registrou a operação do Automate.',
runDetail: {
title: 'Registro de Conversa',
workflowTitle: 'Detalhes do Registro',
},
promptLog: 'Registro de Prompt',
viewLog: 'Ver Registro',
}
export default translation

View file

@ -1,47 +1,47 @@
const translation = {
welcome: {
firstStepTip: 'Para começar,',
enterKeyTip: 'insira sua chave de API do OpenAI abaixo',
getKeyTip: 'Obtenha sua chave de API no painel do OpenAI',
placeholder: 'Sua chave de API do OpenAI (por exemplo, sk-xxxx)',
enterKeyTip: 'insira sua chave de API OpenAI abaixo',
getKeyTip: 'Obtenha sua chave de API no painel da OpenAI',
placeholder: 'Sua chave de API OpenAI (ex. sk-xxxx)',
},
apiKeyInfo: {
cloud: {
trial: {
title: 'Você está usando a cota de teste do {{providerName}}.',
description: 'A cota de teste é fornecida para uso de teste. Antes que as chamadas da cota de teste se esgotem, configure seu próprio provedor de modelo ou compre uma cota adicional.',
title: 'Você está usando a cota de teste da {{providerName}}.',
description: 'A cota de teste é fornecida para seu uso de teste. Antes que as chamadas de cota de teste se esgotem, configure seu próprio provedor de modelo ou compre cota adicional.',
},
exhausted: {
title: 'Sua cota de teste foi esgotada, configure sua chave de API.',
description: 'Sua cota de teste foi esgotada. Configure seu próprio provedor de modelo ou compre uma cota adicional.',
title: 'Sua cota de teste foi usada, configure sua chave de API.',
description: 'Sua cota de teste foi esgotada. Configure seu próprio provedor de modelo ou compre cota adicional.',
},
},
selfHost: {
title: {
row1: 'Para começar,',
row2: 'configure seu próprio provedor de modelo primeiro.',
row2: 'configure primeiro seu provedor de modelo.',
},
},
callTimes: 'Número de chamadas',
usedToken: 'Tokens usados',
setAPIBtn: 'Ir para configurar provedor de modelo',
setAPIBtn: 'Ir para configurar o provedor de modelo',
tryCloud: 'Ou experimente a versão em nuvem do Dify com cota gratuita',
},
overview: {
title: 'Visão geral',
title: 'Visão Geral',
appInfo: {
explanation: 'Aplicativo Web de IA pronto para uso',
accessibleAddress: 'URL pública',
explanation: 'WebApp de IA Pronta para Uso',
accessibleAddress: 'URL Pública',
preview: 'Visualização',
regenerate: 'Regenerar',
preUseReminder: 'Ative o aplicativo da Web antes de continuar.',
preUseReminder: 'Por favor, ative o WebApp antes de continuar.',
settings: {
entry: 'Configurações',
title: 'Configurações do aplicativo da Web',
webName: 'Nome do aplicativo da Web',
webDesc: 'Descrição do aplicativo da Web',
title: 'Configurações do WebApp',
webName: 'Nome do WebApp',
webDesc: 'Descrição do WebApp',
webDescTip: 'Este texto será exibido no lado do cliente, fornecendo orientações básicas sobre como usar o aplicativo',
webDescPlaceholder: 'Insira a descrição do aplicativo da Web',
webDescPlaceholder: 'Insira a descrição do WebApp',
language: 'Idioma',
more: {
entry: 'Mostrar mais configurações',
@ -49,55 +49,55 @@ const translation = {
copyRightPlaceholder: 'Insira o nome do autor ou organização',
privacyPolicy: 'Política de Privacidade',
privacyPolicyPlaceholder: 'Insira o link da política de privacidade',
privacyPolicyTip: 'Ajuda os visitantes a entender os dados que o aplicativo coleta, consulte a <privacyPolicyLink>Política de Privacidade</privacyPolicyLink> do Dify.',
privacyPolicyTip: 'Ajuda os visitantes a entender os dados coletados pelo aplicativo, consulte a <privacyPolicyLink>Política de Privacidade</privacyPolicyLink> do Dify.',
},
},
embedded: {
entry: 'Embutido',
title: 'Incorporar no site',
explanation: 'Escolha a maneira de incorporar o aplicativo de bate-papo ao seu site',
iframe: 'Para adicionar o aplicativo de bate-papo em qualquer lugar do seu site, adicione este iframe ao seu código HTML.',
scripts: 'Para adicionar um aplicativo de bate-papo na parte inferior direita do seu site, adicione este código ao seu HTML.',
chromePlugin: 'Instalar Extensão do Chatbot Dify para o Chrome',
explanation: 'Escolha a maneira de incorporar o aplicativo de chat ao seu site',
iframe: 'Para adicionar o aplicativo de chat em qualquer lugar do seu site, adicione este iframe ao seu código HTML.',
scripts: 'Para adicionar um aplicativo de chat no canto inferior direito do seu site, adicione este código ao seu HTML.',
chromePlugin: 'Instalar a Extensão do Chrome Dify Chatbot',
copied: 'Copiado',
copy: 'Copiar',
},
qrcode: {
title: 'Código QR para compartilhar',
scan: 'Digitalizar para compartilhar o aplicativo',
scan: 'Digitalizar e compartilhar o aplicativo',
download: 'Baixar código QR',
},
customize: {
way: 'maneira',
way: 'modo',
entry: 'Personalizar',
title: 'Personalizar aplicativo Web de IA',
explanation: 'Você pode personalizar a interface do usuário do aplicativo Web para se adequar ao seu cenário e necessidades de estilo.',
title: 'Personalizar WebApp de IA',
explanation: 'Você pode personalizar a interface do usuário do Web App para atender às suas necessidades de cenário e estilo.',
way1: {
name: 'Fork do código do cliente, modifique-o e implante no Vercel (recomendado)',
step1: 'Fork do código do cliente e modifique-o',
step1Tip: 'Clique aqui para fazer um fork do código-fonte em sua conta do GitHub e modificar o código',
step1Operation: 'Dify-WebClient',
name: 'Faça um fork do código do cliente, modifique-o e implante-o no Vercel (recomendado)',
step1: 'Faça um fork do código do cliente e modifique-o',
step1Tip: 'Clique aqui para fazer um fork do código-fonte na sua conta GitHub e modificar o código',
step1Operation: 'Cliente-Web-Dify',
step2: 'Implantar no Vercel',
step2Tip: 'Clique aqui para importar o repositório no Vercel e implantar',
step2Operation: 'Importar repositório',
step3: 'Configurar variáveis de ambiente',
step3: 'Configurar as variáveis de ambiente',
step3Tip: 'Adicione as seguintes variáveis de ambiente no Vercel',
},
way2: {
name: 'Escrever código do lado do cliente para chamar a API e implantá-lo em um servidor',
name: 'Escreva código do lado do cliente para chamar a API e implante-o em um servidor',
operation: 'Documentação',
},
},
},
apiInfo: {
title: 'API do serviço de backend',
explanation: 'Integração fácil em seu aplicativo',
accessibleAddress: 'Endpoint da API de serviço',
title: 'API de Serviço de Back-end',
explanation: 'Facilmente integrado em sua aplicação',
accessibleAddress: 'Endpoint do Serviço API',
doc: 'Referência da API',
},
status: {
running: 'Em serviço',
disable: 'Desativar',
disable: 'Desabilitar',
},
},
analysis: {
@ -105,32 +105,36 @@ const translation = {
ms: 'ms',
tokenPS: 'Token/s',
totalMessages: {
title: 'Total de mensagens',
explanation: 'Contagem diária de interações de IA; engenharia de prompt/depuração excluída.',
title: 'Total de Mensagens',
explanation: 'Contagem diária de interações AI; engenharia/de depuração excluída.',
},
activeUsers: {
title: 'Usuários ativos',
explanation: 'Usuários únicos envolvidos em perguntas e respostas com IA; engenharia de prompt/depuração excluída.',
title: 'Usuários Ativos',
explanation: 'Usuários únicos engajando em Q&A com AI; engenharia/de depuração excluída.',
},
tokenUsage: {
title: 'Uso de tokens',
explanation: 'Reflete o uso diário de tokens do modelo de linguagem para o aplicativo, útil para fins de controle de custos.',
consumed: 'Consumidos',
title: 'Uso de Token',
explanation: 'Reflete o uso diário do token do modelo de linguagem para o aplicativo, útil para fins de controle de custos.',
consumed: 'Consumido',
},
avgSessionInteractions: {
title: 'Média de interações por sessão',
explanation: 'Contagem contínua de comunicação usuário-IA; para aplicativos baseados em conversas.',
title: 'Média de Interações por Sessão',
explanation: 'Contagem de comunicação contínua entre usuário e AI; para aplicativos baseados em conversação.',
},
avgUserInteractions: {
title: 'Média de Interações por Usuário',
explanation: 'Reflete a frequência de uso diário dos usuários. Essa métrica reflete a fidelidade do usuário.',
},
userSatisfactionRate: {
title: 'Taxa de satisfação do usuário',
title: 'Taxa de Satisfação do Usuário',
explanation: 'O número de curtidas por 1.000 mensagens. Isso indica a proporção de respostas com as quais os usuários estão altamente satisfeitos.',
},
avgResponseTime: {
title: 'Tempo médio de resposta',
explanation: 'Tempo (ms) para o processamento/resposta da IA; para aplicativos baseados em texto.',
title: 'Tempo Médio de Resposta',
explanation: 'Tempo (ms) para o AI processar/responder; para aplicativos baseados em texto.',
},
tps: {
title: 'Velocidade de saída de tokens',
title: 'Velocidade de Saída do Token',
explanation: 'Mede o desempenho do LLM. Conta a velocidade de saída de tokens do LLM desde o início da solicitação até a conclusão da saída.',
},
},

View file

@ -1,62 +1,90 @@
const translation = {
createApp: 'Criar aplicativo',
createApp: 'CRIAR APLICATIVO',
types: {
all: 'Tudo',
all: 'Todos',
chatbot: 'Chatbot',
agent: 'Agente',
workflow: 'Fluxo de trabalho',
completion: 'Gerador de Texto',
completion: 'Conclusão',
},
duplicate: 'Duplicar',
duplicateTitle: 'Duplicate aplicativo',
duplicateTitle: 'Duplicar Aplicativo',
export: 'Exportar DSL',
createFromConfigFile: 'Criar através do arquivo DSL',
exportFailed: 'Falha ao exportar DSL.',
importDSL: 'Importar arquivo DSL',
createFromConfigFile: 'Criar a partir do arquivo DSL',
deleteAppConfirmTitle: 'Excluir este aplicativo?',
deleteAppConfirmContent:
'A exclusão do aplicativo é irreversível. Os usuários não poderão mais acessar seu aplicativo e todas as configurações de prompt e logs serão excluídas permanentemente.',
'A exclusão do aplicativo é irreversível. Os usuários não poderão mais acessar seu aplicativo e todas as configurações de prompt e logs serão permanentemente excluídas.',
appDeleted: 'Aplicativo excluído',
appDeleteFailed: 'Falha ao excluir o aplicativo',
appDeleteFailed: 'Falha ao excluir aplicativo',
join: 'Participe da comunidade',
communityIntro:
'Discuta com membros da equipe, colaboradores e desenvolvedores em diferentes canais.',
roadmap: 'Veja nosso roteiro',
newApp: {
startFromBlank: 'Começar de um aplicativo em branco',
startFromTemplate: 'Começar a partir de um modelo',
captionAppType: 'Que tipo de aplicativo você deseja?',
chatbotDescription: 'Construir um assistente baseado em chat usando um Modelo de Linguagem de Grande Escala',
agentDescription: 'Construir um Agente inteligente que pode escolher autonomamente ferramentas para completar as tarefas',
workflowDescription: 'Description text here',
captionName: 'Dê um nome ao seu aplicativo',
appNamePlaceholder: 'Dê um nome ao seu aplicativo',
startFromBlank: 'Criar do zero',
startFromTemplate: 'Criar do modelo',
captionAppType: 'Que tipo de aplicativo você deseja criar?',
chatbotDescription: 'Construa um aplicativo baseado em chat. Este aplicativo usa um formato de pergunta e resposta, permitindo várias rodadas de conversa contínua.',
completionDescription: 'Construa um aplicativo que gera texto de alta qualidade com base em prompts, como geração de artigos, resumos, traduções e muito mais.',
completionWarning: 'Este tipo de aplicativo não será mais suportado.',
agentDescription: 'Construa um Agente inteligente que pode escolher ferramentas para completar as tarefas autonomamente',
workflowDescription: 'Construa um aplicativo que gera texto de alta qualidade com base em fluxo de trabalho com alto grau de personalização. É adequado para usuários experientes.',
workflowWarning: 'Atualmente em beta',
chatbotType: 'Método de orquestração do Chatbot',
basic: 'Básico',
basicTip: 'Para iniciantes, pode mudar para o Chatflow mais tarde',
basicFor: 'PARA INICIANTES',
basicDescription: 'A Orquestração Básica permite orquestrar um aplicativo Chatbot usando configurações simples, sem a capacidade de modificar prompts integrados. É adequado para iniciantes.',
advanced: 'Chatflow',
advancedFor: 'Para usuários avançados',
advancedDescription: 'A Orquestração de Fluxo de Trabalho orquestra Chatbots na forma de fluxos de trabalho, oferecendo um alto grau de personalização, incluindo a capacidade de editar prompts integrados. É adequado para usuários experientes.',
captionName: 'Ícone e nome do aplicativo',
appNamePlaceholder: 'Dê um nome para o seu aplicativo',
captionDescription: 'Descrição',
appDescriptionPlaceholder: 'Enter the description of the app',
useTemplate: 'Insira a descrição do aplicativo',
appDescriptionPlaceholder: 'Digite a descrição do aplicativo',
useTemplate: 'Usar este modelo',
previewDemo: 'Visualizar demonstração',
chatApp: 'Usar este modelo',
chatApp: 'Assistente',
chatAppIntro:
'Quero construir um aplicativo baseado em chat. Este aplicativo usa um formato de pergunta e resposta, permitindo várias rodadas de conversa contínua.',
agentAssistant: 'Assistente de novo agente',
'Eu quero construir um aplicativo baseado em chat. Este aplicativo usa um formato de pergunta e resposta, permitindo várias rodadas de conversa contínua.',
agentAssistant: 'Novo Assistente de Agente',
completeApp: 'Gerador de Texto',
completeAppIntro:
'Quero criar um aplicativo que gera texto de alta qualidade com base em prompts, como geração de artigos, resumos, traduções e muito mais.',
showTemplates: 'Quero escolher um modelo',
hideTemplates: 'Voltar para seleção de modo',
'Eu quero criar um aplicativo que gera texto de alta qualidade com base em prompts, como geração de artigos, resumos, traduções e muito mais.',
showTemplates: 'Quero escolher a partir de um modelo',
hideTemplates: 'Voltar para a seleção de modo',
Create: 'Criar',
Cancel: 'Cancelar',
nameNotEmpty: 'O nome não pode estar vazio',
appTemplateNotSelected: 'Por favor, selecione um modelo',
appTypeRequired: 'Por favor, selecione um tipo de aplicativo',
appCreated: 'Aplicativo criado',
appCreateFailed: 'Falha ao criar o aplicativo',
},
editApp: {
startToEdit: 'Editar Aplicativo',
appCreateFailed: 'Falha ao criar aplicativo',
},
editApp: 'Editar Informações',
editAppTitle: 'Editar Informações do Aplicativo',
editDone: 'Informações do aplicativo atualizadas',
editFailed: 'Falha ao atualizar informações do aplicativo',
emoji: {
ok: 'OK',
cancel: 'Cancelar',
},
switch: 'Mudar para Orquestração de Fluxo de Trabalho',
switchTipStart: 'Será criada uma nova cópia do aplicativo para você e a nova cópia mudará para Orquestração de Fluxo de Trabalho. A nova cópia não permitirá a ',
switchTip: 'volta',
switchTipEnd: ' para Orquestração Básica.',
switchLabel: 'A cópia do aplicativo a ser criada',
removeOriginal: 'Excluir o aplicativo original',
switchStart: 'Iniciar mudança',
typeSelector: {
all: 'Todos os Tipos',
chatbot: 'Chatbot',
agent: 'Agente',
workflow: 'Fluxo de trabalho',
completion: 'Conclusão',
},
}
export default translation

View file

@ -478,6 +478,10 @@ const translation = {
title: 'Variáveis e Ferramentas Externas',
desc: 'Inserir Variáveis e Ferramentas Externas',
},
outputToolDisabledItem: {
title: 'Variáveis',
desc: 'Inserir variáveis',
},
modal: {
add: 'Nova variável',
addTool: 'Nova ferramenta',

View file

@ -18,7 +18,7 @@ const translation = {
apps: {
title: 'Explorar Aplicações por Dify',
description: 'Use esses aplicativos modelo instantaneamente ou personalize seus próprios aplicativos com base nos modelos.',
allCategories: 'Todas as Categorias',
allCategories: 'Recomendado',
},
appCard: {
addToWorkspace: 'Adicionar ao Espaço de Trabalho',

View file

@ -1,10 +1,22 @@
const translation = {
result: 'RESULT',
tracing: 'TRACING',
input: 'ENTRADA',
result: 'RESULTADO',
detail: 'DETALHE',
tracing: 'RASTREIO',
resultPanel: {
status: 'STATUS',
time: 'ELAPSED TIME',
tokens: 'TOTAL TOKENS',
time: 'TEMPO DECORRIDO',
tokens: 'TOTAL DE TOKENS',
},
meta: {
title: 'METADADOS',
status: 'Status',
version: 'Versão',
executor: 'Executor',
startTime: 'Hora de Início',
time: 'Tempo Decorrido',
tokens: 'Total de Tokens',
steps: 'Passos de Execução',
},
}

View file

@ -1,90 +1,332 @@
const translation = {
common: {
editing: 'Editando',
autoSaved: 'Auto-salvo',
unpublished: 'Não publicado',
published: 'Publicado',
publish: 'Publicar',
update: 'Atualizar',
run: 'Executar',
running: 'Executando',
inRunMode: 'No modo de execução',
inPreview: 'Na prévia',
inPreviewMode: 'No modo de prévia',
preview: 'Prévia',
viewRunHistory: 'Ver histórico de execução',
runHistory: 'Histórico de execução',
goBackToEdit: 'Voltar para a edição',
conversationLog: 'Registro de conversa',
features: 'Recursos',
debugAndPreview: 'Depurar e pré-visualizar',
restart: 'Reiniciar',
currentDraft: 'Rascunho atual',
currentDraftUnpublished: 'Rascunho atual não publicado',
latestPublished: 'Último publicado',
publishedAt: 'Publicado em',
restore: 'Restaurar',
runApp: 'Executar aplicativo',
batchRunApp: 'Executar aplicativo em lote',
accessAPIReference: 'Acessar referência da API',
embedIntoSite: 'Incorporar no site',
addTitle: 'Adicionar título...',
addDescription: 'Adicionar descrição...',
noVar: 'Sem variável',
searchVar: 'Buscar variável',
variableNamePlaceholder: 'Nome da variável',
setVarValuePlaceholder: 'Definir variável',
needConnecttip: 'Esta etapa não está conectada a nada',
maxTreeDepth: 'Limite máximo de {{depth}} nós por ramificação',
needEndNode: 'O bloco de fim deve ser adicionado',
needAnswerNode: 'O bloco de resposta deve ser adicionado',
workflowProcess: 'Processo de fluxo de trabalho',
notRunning: 'Ainda não em execução',
previewPlaceholder: 'Digite o conteúdo na caixa abaixo para iniciar a depuração do Chatbot',
effectVarConfirm: {
title: 'Remover variável',
content: 'A variável está sendo usada em outros nós. Deseja removê-la mesmo assim?',
},
insertVarTip: 'Pressione a tecla \'/\' para inserir rapidamente',
},
errorMsg: {
fieldRequired: '{{field}} é obrigatório',
authRequired: 'Autorização é necessária',
invalidJson: '{{field}} é JSON inválido',
fields: {
variable: 'Nome da Variável',
variableValue: 'Valor da Variável',
code: 'Código',
model: 'Modelo',
rerankModel: 'Modelo de Re-ordenação',
},
invalidVariable: 'Variável inválida',
},
singleRun: {
testRun: 'Execução de teste ',
startRun: 'Iniciar execução',
running: 'Executando',
},
tabs: {
'searchBlock': 'Buscar bloco',
'blocks': 'Blocos',
'builtInTool': 'Ferramenta incorporada',
'customTool': 'Ferramenta personalizada',
'question-understand': 'Entendimento da pergunta',
'logic': 'Lógica',
'transform': 'Transformar',
'utilities': 'Utilitários',
'noResult': 'Nenhum resultado encontrado',
},
blocks: {
'start': 'Início',
'end': 'Fim',
'answer': 'Resposta',
'llm': 'LLM',
'knowledge-retrieval': 'Recuperação de conhecimento',
'question-classifier': 'Classificador de perguntas',
'if-else': 'Se/Senão',
'code': 'Código',
'template-transform': 'Modelo',
'http-request': 'Requisição HTTP',
'variable-assigner': 'Atribuidor de variáveis',
},
blocksAbout: {
'start': 'Defina os parâmetros iniciais para iniciar um fluxo de trabalho',
'end': 'Defina o final e o tipo de resultado de um fluxo de trabalho',
'answer': 'Defina o conteúdo da resposta de uma conversa no chat',
'llm': 'Invocar grandes modelos de linguagem para responder perguntas ou processar linguagem natural',
'knowledge-retrieval': 'Permite consultar conteúdo de texto relacionado a perguntas de usuário do conhecimento',
'question-classifier': 'Define as condições de classificação de perguntas do usuário, LLM pode definir como a conversa progride com base na descrição da classificação',
'if-else': 'Permite dividir o fluxo de trabalho em dois ramos com base em condições if/else',
'code': 'Execute um trecho de código Python ou NodeJS para implementar lógica personalizada',
'template-transform': 'Converta dados em string usando a sintaxe do modelo Jinja',
'http-request': 'Permite enviar solicitações de servidor sobre o protocolo HTTP',
'variable-assigner': 'Atribua variáveis em diferentes ramos à mesma variável para alcançar uma configuração unificada de pós-nós',
},
operator: {
zoomIn: 'Aumentar zoom',
zoomOut: 'Diminuir zoom',
zoomTo50: 'Zoom para 50%',
zoomTo100: 'Zoom para 100%',
zoomToFit: 'Zoom para ajustar',
},
panel: {
userInputField: 'Campo de entrada do usuário',
changeBlock: 'Mudar bloco',
helpLink: 'Link de ajuda',
about: 'Sobre',
createdBy: 'Criado por ',
nextStep: 'Próximo passo',
addNextStep: 'Adicionar o próximo bloco neste fluxo de trabalho',
selectNextStep: 'Selecionar próximo bloco',
runThisStep: 'Executar este passo',
checklist: 'Lista de verificação',
checklistTip: 'Certifique-se de resolver todos os problemas antes de publicar',
checklistResolved: 'Todos os problemas estão resolvidos',
organizeBlocks: 'Organizar blocos',
change: 'Mudar',
},
nodes: {
common: {
outputVars: 'Output Variables',
insertVarTip: 'Insert Variable',
},
start: {
required: 'required',
inputField: 'Input Field',
builtInVar: 'Built-in Variables',
outputVars: {
query: 'User input',
memories: {
des: 'Conversation history',
type: 'message type',
content: 'message content',
},
files: 'File list',
outputVars: 'Variáveis de saída',
insertVarTip: 'Pressione a tecla \'/\' para inserir',
memory: {
memory: 'Memória',
memoryTip: 'Configurações de memória do chat',
windowSize: 'Tamanho da janela',
conversationRoleName: 'Nome do papel na conversa',
user: 'Prefixo do usuário',
assistant: 'Prefixo do assistente',
},
memories: {
title: 'Memórias',
tip: 'Memória do chat',
builtIn: 'Incorporada',
},
},
start: {
required: 'obrigatório',
inputField: 'Campo de entrada',
builtInVar: 'Variáveis incorporadas',
outputVars: {
query: 'Entrada do usuário',
memories: {
des: 'Histórico da conversa',
type: 'Tipo de mensagem',
content: 'Conteúdo da mensagem',
},
files: 'Lista de arquivos',
},
noVarTip: 'Defina as entradas que podem ser usadas no fluxo de trabalho',
},
end: {
outputs: 'Outputs',
outputs: 'Saídas',
output: {
type: 'Tipo de saída',
variable: 'Variável de saída',
},
type: {
'none': 'None',
'plain-text': 'Plain Text',
'structured': 'Structured',
'none': 'Nenhum',
'plain-text': 'Texto simples',
'structured': 'Estruturado',
},
},
answer: {
answer: 'Answer',
inputVars: 'Input Variables',
answer: 'Resposta',
outputVars: 'Variáveis de saída',
},
llm: {
model: 'model',
variables: 'variables',
context: 'context',
model: 'modelo',
variables: 'variáveis',
context: 'contexto',
contextTooltip: 'Você pode importar conhecimento como contexto',
notSetContextInPromptTip: 'Para habilitar o recurso de contexto, preencha a variável de contexto em PROMPT.',
prompt: 'prompt',
vision: 'vision',
roleDescription: {
system: 'Dar instruções de alto nível para a conversa',
user: 'Fornecer instruções, consultas ou qualquer entrada baseada em texto para o modelo',
assistant: 'Respostas do modelo com base nas mensagens do usuário',
},
addMessage: 'Adicionar mensagem',
vision: 'visão',
files: 'Arquivos',
resolution: {
name: 'Resolução',
high: 'Alta',
low: 'Baixa',
},
outputVars: {
output: 'Generate content',
usage: 'Model Usage Information',
output: 'Gerar conteúdo',
usage: 'Informações de uso do modelo',
},
singleRun: {
variable: 'Variável',
},
},
knowledgeRetrieval: {
queryVariable: 'Variável de consulta',
knowledge: 'Conhecimento',
outputVars: {
output: 'Dados segmentados de recuperação',
content: 'Conteúdo segmentado',
title: 'Título segmentado',
icon: 'Ícone segmentado',
url: 'URL segmentada',
metadata: 'Outros metadados',
},
},
http: {
inputVars: 'Input Variables',
inputVars: 'Variáveis de entrada',
api: 'API',
headers: 'Headers',
params: 'Params',
body: 'Body',
apiPlaceholder: 'Insira o URL, digite \'/\' para inserir a variável',
notStartWithHttp: 'A API deve começar com http:// ou https://',
key: 'Chave',
value: 'Valor',
bulkEdit: 'Editar em massa',
keyValueEdit: 'Edição de chave-valor',
headers: 'Cabeçalhos',
params: 'Parâmetros',
body: 'Corpo',
outputVars: {
body: 'Response Content',
statusCode: 'Response Status Code',
headers: 'Response Header List JSON',
body: 'Conteúdo da resposta',
statusCode: 'Código de status da resposta',
headers: 'Lista de cabeçalhos de resposta JSON',
files: 'Lista de arquivos',
},
authorization: {
'authorization': 'Autorização',
'authorizationType': 'Tipo de autorização',
'no-auth': 'Nenhum',
'api-key': 'Chave da API',
'auth-type': 'Tipo de autenticação',
'basic': 'Básica',
'bearer': 'Bearer',
'custom': 'Personalizada',
'api-key-title': 'Chave da API',
'header': 'Cabeçalho',
},
insertVarPlaceholder: 'digite \'/\' para inserir variável',
},
code: {
inputVars: 'Input Variables',
outputVars: 'Output Variables',
inputVars: 'Variáveis de entrada',
outputVars: 'Variáveis de saída',
},
templateTransform: {
inputVars: 'Input Variables',
code: 'Code',
codeSupportTip: 'Only supports Jinja2',
inputVars: 'Variáveis de entrada',
code: 'Código',
codeSupportTip: 'Suporta apenas Jinja2',
outputVars: {
output: 'Transformed content',
output: 'Conteúdo transformado',
},
},
ifElse: {
conditions: 'Conditions',
and: 'and',
or: 'or',
if: 'Se',
else: 'Senão',
elseDescription: 'Usado para definir a lógica que deve ser executada quando a condição if não é atendida.',
and: 'e',
or: 'ou',
operator: 'Operador',
notSetVariable: 'Por favor, defina a variável primeiro',
comparisonOperator: {
'contains': 'contains',
'not contains': 'not contains',
'start with': 'start with',
'end with': 'end with',
'is': 'is',
'is not': 'is not',
'empty': 'empty',
'not empty': 'not empty',
'null': 'is null',
'not null': 'is not null',
'contains': 'contém',
'not contains': 'não contém',
'start with': 'começa com',
'end with': 'termina com',
'is': 'é',
'is not': 'não é',
'empty': 'vazio',
'not empty': 'não está vazio',
'null': 'nulo',
'not null': 'não é nulo',
},
enterValue: 'Digite o valor',
addCondition: 'Adicionar condição',
conditionNotSetup: 'Condição NÃO configurada',
},
variableAssigner: {
title: 'Assign variables',
title: 'Atribuir variáveis',
outputType: 'Tipo de saída',
outputVarType: 'Tipo de variável de saída',
varNotSet: 'Variável não definida',
noVarTip: 'Adicione as variáveis a serem atribuídas',
type: {
string: 'String',
number: 'Número',
object: 'Objeto',
array: 'Array',
},
outputVars: {
output: 'Valor da variável atribuída',
},
},
tool: {
toAuthorize: 'Para autorizar',
inputVars: 'Variáveis de entrada',
outputVars: {
text: 'conteúdo gerado pela ferramenta',
files: {
title: 'arquivos gerados pela ferramenta',
type: 'Tipo de suporte. Agora apenas suporte a imagem',
transfer_method: 'Método de transferência. O valor é remote_url ou local_file',
url: 'URL da imagem',
upload_file_id: 'ID de upload do arquivo',
},
},
},
questionClassifiers: {
model: 'modelo',
inputVars: 'Variáveis de entrada',
class: 'Classe',
classNamePlaceholder: 'Escreva o nome da classe',
advancedSetting: 'Configuração avançada',
topicName: 'Nome do tópico',
topicPlaceholder: 'Escreva o nome do tópico',
addClass: 'Adicionar classe',
instruction: 'Instrução',
instructionPlaceholder: 'Escreva sua instrução',
},
},
tracing: {
stopBy: 'Parado por {{user}}',
},
}