Configurar o pipeline
Defina que etapas do pipeline são executadas em duas camadas: uma predefinição no motor e uma substituição opcional num único pedido.
Já decidiu quais as etapas que pretende à volta da etapa principal de tradução. Agora há duas perguntas: onde fica essa decisão e o que fazer quando uma tarefa precisa de algo diferente das restantes? A resposta são duas camadas. O motor guarda a predefinição que todas as tarefas assíncronas herdam. Um objeto pipelineConfig numa única submissão substitui essa predefinição apenas para essa submissão. As etapas que deixar de fora da substituição herdam do motor, por isso o pedido indica apenas o que é diferente.
Ainda não conhece o pipeline? Comece pela Visão geral do pipeline para perceber o que faz cada etapa. Esta página explica como ativá-las e substituí-las — não o que fazem depois de ativadas.
Apenas tarefas assíncronas
A configuração do pipeline aplica-se a tarefas criadas através da API de Localização Assíncrona. O endpoint síncrono /localize executa apenas a etapa principal de tradução e ignora por completo as definições do pipeline — em qualquer uma das camadas.
Predefinições ao nível do motor#
Abra o separador Pipeline do motor no dashboard e ative ou desative cada etapa de forma independente. Essa configuração é a predefinição do motor: todas as tarefas assíncronas encaminhadas para ele são executadas com estas etapas, a menos que um pedido as substitua. Defina-a uma vez e não precisa de voltar a indicar o pipeline em todas as chamadas.
Cada etapa, exceto Localization, tem o seu próprio interruptor e a alteração é guardada no momento em que o muda. Pode ativar qualquer combinação — nenhuma, todas ou qualquer opção intermédia. Um trabalho executa as etapas por esta ordem:
- Pré-edição – limpa o texto de origem antes da tradução.
- Localization – a etapa central da tradução. Está marcada como Sempre ativa e não tem interruptor.
- Reformular – reescreve para soar natural. É independente das outras etapas.
- Revisão humana – encaminha para revisão interna ou externa. O botão de definições da etapa abre Provider, Timeout e Quality threshold.
- Pós-edição – concilia a edição humana com as regras do seu motor. Só pode ser ativada quando a Revisão humana estiver ativa, e desativar a Revisão humana também a desativa.
- Comprimento do conteúdo – mantém a tradução dentro de um limite de largura, medido em colunas de apresentação e não em caracteres. O botão de definições da etapa abre Budget: Ficar abaixo de um limite fixo (com um Comprimento máximo), Não mais comprido do que o original ou Corresponder ao comprimento do original (com uma Diferença permitida, em percentagem).
- Retrotradução – verifica se o significado se manteve após o percurso de ida e volta. É independente das outras etapas.
Uma etapa não incluída no seu plano apresenta a etiqueta Enterprise e não pode ser ativada.
A predefinição é aquilo que todas as tarefas herdam, por isso a configuração do motor é a estrutura sobre a qual se aplica uma substituição pipelineConfig. Cada etapa corresponde a uma chave:
{
"preEdit": { "enabled": true },
"humanEdit": {
"enabled": true,
"provider": "internal",
"tier": "standard",
"timeoutHours": 48,
"qualityThreshold": 85
},
"postEdit": { "enabled": false },
"rephrase": { "enabled": false },
"contentLength": {
"enabled": true,
"mode": { "_tag": "fixedCap", "maxColumns": 40 }
},
"backTranslation": { "enabled": true }
}| Chave | Campos | Definido na página da etapa |
|---|---|---|
preEdit | enabled | Edição por IA pré-localização |
rephrase | enabled | Reformular para soar natural |
humanEdit | enabled, provider (internal | external), tier (opcional; as escritas aceitam apenas standard, os motores mais antigos ainda podem ler pro), timeoutHours, qualityThreshold (opcional, número inteiro de 1 a 100) | Revisão humana |
postEdit | enabled | avaliação por IA |
contentLength | enabled, mode: { "_tag": "fixedCap", "maxColumns": n }, { "_tag": "noLongerThanSource" } ou { "_tag": "matchSource", "tolerancePct": n } | Esta página — não existe uma página de etapa separada |
backTranslation | enabled | Verificação por retrotradução |
O que cada campo controla — que fornecedor de revisão é usado, que traduções ignoram a revisão e quanto tempo se espera — está documentado na página da própria etapa. Esta página explica onde fica a configuração e como as duas camadas se combinam.
Substituição por pedido#
A maioria das tarefas deve executar a predefinição do motor. A exceção é uma única submissão que precisa de um pipeline diferente — um lote pontual de texto de marketing que quer a etapa de reformulação que o seu motor normalmente deixa desativada, ou uma carga jurídica que a deve ignorar. Editar o motor para tratar um único lote também alteraria todas as outras tarefas.
Por isso, passa a diferença no próprio pedido. Adicione um objeto pipelineConfig ao corpo de POST /jobs/localization e isso substitui a predefinição do motor apenas para essa submissão. Nada muda no motor; a tarefa seguinte sem substituição volta à predefinição.
{
"sourceLocale": "en",
"targetLocales": ["de", "fr"],
"data": { "headline": "Ship in every language." },
"pipelineConfig": {
"rephrase": { "enabled": true },
"backTranslation": { "enabled": false }
}
}Esta é a regra de herança, e é ela que mantém a substituição pequena: uma etapa que indique é substituída; uma etapa que omita herda a predefinição do motor. O pedido acima ativa rephrase e desativa backTranslation para este trabalho. preEdit, humanEdit, postEdit e contentLength não são indicadas, por isso são executadas exatamente como estão configuradas no motor. Indica apenas o que é diferente.
Se incluir uma etapa, tem de a especificar por completo
A substituição é feita por etapa, não por campo. Cada etapa que incluir tem de ser o objeto completo dessa etapa — não pode enviar humanEdit: { "timeoutHours": 24 } para alterar apenas o tempo limite e herdar o resto. Inclua a etapa completa para a substituir, ou omita-a para herdar a predefinição do motor. Não existe fusão parcial dentro de um único objeto de etapa.
Mais duas coisas que a substituição não faz, ditas de forma clara porque esta é a parte que parece poder fazer tudo:
- Altera apenas essa submissão. Não escreve de volta no motor, por isso não é a forma de fazer uma alteração de configuração duradoura — para isso serve o separador Pipeline. Use a substituição para o caso pontual; use o separador para a nova configuração normal.
- Não flexibiliza as regras de execução da própria etapa. Pós-edição só é executada quando a revisão humana produz saída, por isso ativar
postEditnão tem qualquer efeito num trabalho que não tem uma etapa humana para conciliar — independentemente da camada em que a ativou.
Confirmar o que foi executado#
A configuração define que etapas devem ser executadas; o registo da própria tarefa diz-lhe quais foram realmente executadas. A tarefa inclui um array steps[], e esse array é a forma de confirmar que uma substituição por pedido teve mesmo efeito — não apenas que a enviou.
A leitura desses registos — o stepId de cada etapa, o que significa uma etapa skipped, onde surgem falhas não críticas — tem a sua própria página.
Próximos passos#
Pode definir a predefinição no motor e substituí-la num pedido. A partir daqui, submeta uma tarefa com uma substituição ou consulte as etapas para confirmar quais foram executadas.