| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176 | const translation = {  steps: {    header: {      creation: 'Criar Conhecimento',      update: 'Adicionar dados',    },    one: 'Escolher fonte de dados',    two: 'Pré-processamento e Limpeza de Texto',    three: 'Executar e finalizar',  },  error: {    unavailable: 'Este Conhecimento não está disponível',  },  stepOne: {    filePreview: 'Visualização do arquivo',    pagePreview: 'Visualização da página',    dataSourceType: {      file: 'Importar de arquivo de texto',      notion: 'Sincronizar do Notion',      web: 'Sincronizar de site',    },    uploader: {      title: 'Enviar arquivo de texto',      button: 'Arraste e solte o arquivo, ou',      browse: 'Navegar',      tip: 'Suporta {{supportTypes}}. Máximo de {{size}}MB cada.',      validation: {        typeError: 'Tipo de arquivo não suportado',        size: 'Arquivo muito grande. Máximo é {{size}}MB',        count: 'Vários arquivos não suportados',        filesNumber: 'Limite de upload em massa {{filesNumber}}.',      },      cancel: 'Cancelar',      change: 'Alterar',      failed: 'Falha no envio',    },    notionSyncTitle: 'Notion não está conectado',    notionSyncTip: 'Para sincronizar com o Notion, a conexão com o Notion deve ser estabelecida primeiro.',    connect: 'Ir para conexão',    button: 'Próximo',    emptyDatasetCreation: 'Quero criar um Conhecimento vazio',    modal: {      title: 'Criar um Conhecimento vazio',      tip: 'Um Conhecimento vazio não conterá documentos e você poderá fazer upload de documentos a qualquer momento.',      input: 'Nome do Conhecimento',      placeholder: 'Por favor, insira',      nameNotEmpty: 'O nome não pode estar vazio',      nameLengthInvalid: 'O nome deve ter entre 1 e 40 caracteres',      cancelButton: 'Cancelar',      confirmButton: 'Criar',      failed: 'Falha na criação',    },    website: {      fireCrawlNotConfiguredDescription: 'Configure o Firecrawl com a chave de API para usá-lo.',      run: 'Correr',      unknownError: 'Erro desconhecido',      crawlSubPage: 'Rastrear subpáginas',      selectAll: 'Selecionar tudo',      resetAll: 'Redefinir tudo',      firecrawlDocLink: 'https://docs.dify.ai/guides/knowledge-base/sync-from-website',      includeOnlyPaths: 'Incluir apenas caminhos',      configure: 'Configurar',      limit: 'Limite',      firecrawlDoc: 'Documentos do Firecrawl',      preview: 'Visualizar',      options: 'Opções',      scrapTimeInfo: 'Páginas {{total}} raspadas no total dentro de {{time}}s',      exceptionErrorTitle: 'Ocorreu uma exceção durante a execução do trabalho Firecrawl:',      fireCrawlNotConfigured: 'O Firecrawl não está configurado',      maxDepthTooltip: 'Profundidade máxima para rastrear em relação ao URL inserido. A profundidade 0 apenas raspa a página do url inserido, a profundidade 1 raspa o url e tudo depois de inseridoURL + um / e assim por diante.',      firecrawlTitle: 'Extraia conteúdo da web com 🔥Firecrawl',      maxDepth: 'Profundidade máxima',      totalPageScraped: 'Total de páginas raspadas:',      excludePaths: 'Excluir caminhos',      extractOnlyMainContent: 'Extraia apenas o conteúdo principal (sem cabeçalhos, navs, rodapés, etc.)',      jinaReaderNotConfiguredDescription: 'Configure o Jina Reader inserindo sua chave de API gratuita para acesso.',      jinaReaderDoc: 'Saiba mais sobre o Jina Reader',      chooseProvider: 'Selecione um provedor',      jinaReaderNotConfigured: 'Jina Reader não está configurado',      jinaReaderDocLink: 'https://jina.ai/reader',      useSitemap: 'Usar o mapa do site',      useSitemapTooltip: 'Siga o mapa do site para rastrear o site. Caso contrário, o Jina Reader rastreará iterativamente com base na relevância da página, produzindo menos páginas, mas de maior qualidade.',      jinaReaderTitle: 'Converter todo o site em Markdown',    },  },  stepTwo: {    segmentation: 'Configurações de fragmentação',    auto: 'Automático',    autoDescription: 'Configura automaticamente as regras de fragmentação e pré-processamento. Usuários não familiarizados são recomendados a selecionar esta opção.',    custom: 'Personalizado',    customDescription: 'Personalize as regras de fragmentação, comprimento dos fragmentos e regras de pré-processamento, etc.',    separator: 'Identificador de segmento',    separatorPlaceholder: 'Por exemplo, nova linha (\\\\n) ou separador especial (como "***")',    maxLength: 'Comprimento máximo do fragmento',    overlap: 'Sobreposição de blocos',    overlapTip: 'Configurar a sobreposição de blocos pode manter a relevância semântica entre eles, melhorando o efeito de recuperação. É recomendado definir de 10% a 25% do tamanho máximo do bloco.',    overlapCheck: 'a sobreposição de blocos não deve ser maior que o comprimento máximo do bloco',    rules: 'Regras de pré-processamento de texto',    removeExtraSpaces: 'Substituir espaços consecutivos, quebras de linha e tabulações',    removeUrlEmails: 'Excluir todos os URLs e endereços de e-mail',    removeStopwords: 'Remover palavras irrelevantes como "um", "uma", "o"',    preview: 'Confirmar e visualizar',    reset: 'Redefinir',    indexMode: 'Modo de índice',    qualified: 'Alta qualidade',    recommend: 'Recomendado',    qualifiedTip: 'Chama a interface de incorporação do sistema padrão para processamento, fornecendo maior precisão ao consultar.',    warning: 'Por favor, configure primeiro a chave da API do provedor do modelo.',    click: 'Ir para configurações',    economical: 'Econômico',    economicalTip: 'Use motores de vetor offline, índices de palavras-chave, etc. para reduzir a precisão sem gastar tokens',    QATitle: 'Fragmentação no formato de Perguntas e Respostas',    QATip: 'Habilitar esta opção consumirá mais tokens',    QALanguage: 'Fragmentar usando',    estimateCost: 'Estimativa',    estimateSegment: 'Fragmentos estimados',    segmentCount: 'fragmentos',    calculating: 'Calculando...',    fileSource: 'Pré-processar documentos',    notionSource: 'Pré-processar páginas',    other: 'e outros ',    fileUnit: ' arquivos',    notionUnit: ' páginas',    previousStep: 'Passo anterior',    nextStep: 'Salvar e Processar',    save: 'Salvar e Processar',    cancel: 'Cancelar',    sideTipTitle: 'Por que fragmentar e pré-processar?',    sideTipP1: 'Ao processar dados de texto, fragmentar e limpar são duas etapas importantes de pré-processamento.',    sideTipP2: 'A fragmentação divide um texto longo em parágrafos para que os modelos possam entender melhor. Isso melhora a qualidade e relevância dos resultados do modelo.',    sideTipP3: 'A limpeza remove caracteres e formatos desnecessários, tornando o Conhecimento mais limpo e fácil de analisar.',    sideTipP4: 'Fragmentação e limpeza adequadas melhoram o desempenho do modelo, fornecendo resultados mais precisos e valiosos.',    previewTitle: 'Visualização',    previewTitleButton: 'Visualização',    previewButton: 'Alternar para visualização no formato de Perguntas e Respostas',    previewSwitchTipStart: 'A visualização atual do fragmento está no formato de texto, alternar para uma visualização no formato de Perguntas e Respostas irá',    previewSwitchTipEnd: ' consumir tokens adicionais',    characters: 'caracteres',    indexSettingTip: 'Para alterar o método de índice, por favor vá para as ',    retrievalSettingTip: 'Para alterar o método de índice, por favor vá para as ',    datasetSettingLink: 'configurações do Conhecimento.',    websiteSource: 'Site de pré-processamento',    webpageUnit: 'Páginas',    separatorTip: 'Um delimitador é o caractere usado para separar o texto. \\n\\n e \\n são delimitadores comumente usados para separar parágrafos e linhas. Combinado com vírgulas (\\n\\n,\\n), os parágrafos serão segmentados por linhas ao exceder o comprimento máximo do bloco. Você também pode usar delimitadores especiais definidos por você (por exemplo, ***).',    maxLengthCheck: 'O comprimento máximo do chunk deve ser inferior a 4000',  },  stepThree: {    creationTitle: '🎉 Conhecimento criado',    creationContent: 'Nomeamos automaticamente o Conhecimento, você pode modificá-lo a qualquer momento',    label: 'Nome do Conhecimento',    additionTitle: '🎉 Documento enviado',    additionP1: 'O documento foi enviado para o Conhecimento',    additionP2: ', você pode encontrá-lo na lista de documentos do Conhecimento.',    stop: 'Parar processamento',    resume: 'Continuar processamento',    navTo: 'Ir para documento',    sideTipTitle: 'O que fazer em seguida',    sideTipContent: 'Após a conclusão da indexação do documento, o Conhecimento pode ser integrado à aplicação como contexto. Você pode encontrar a configuração de contexto na página de orquestração de prompts. Você também pode criá-lo como um plugin de indexação ChatGPT independente para lançamento.',    modelTitle: 'Tem certeza de que deseja parar a incorporação?',    modelContent: 'Se você precisar continuar o processamento posteriormente, você continuará de onde parou.',    modelButtonConfirm: 'Confirmar',    modelButtonCancel: 'Cancelar',  },  firecrawl: {    apiKeyPlaceholder: 'Chave de API do firecrawl.dev',    configFirecrawl: 'Configurar 🔥o Firecrawl',    getApiKeyLinkText: 'Obtenha sua chave de API do firecrawl.dev',  },  jinaReader: {    getApiKeyLinkText: 'Obtenha sua chave de API gratuita em jina.ai',    configJinaReader: 'Configurar o Jina Reader',    apiKeyPlaceholder: 'Chave de API do jina.ai',  },}export default translation
 |