A maior parte do seu conteúdo pode ser publicada no momento em que o motor a devolve. Mas nem sempre. Uma divulgação regulamentada, uma instrução médica, um título que transporta a marca — nesses casos, vai querer que uma pessoa leia a tradução e lhe dê aprovação antes de entrar em produção, e não depois de um cliente apresentar uma reclamação.
A forma habitual de pôr uma pessoa num fluxo automatizado é também a mais penosa: manter o pedido aberto enquanto alguém lê, criar a sua própria fila de revisão ou integrar manualmente a API de um fornecedor de tradução. Esta fase trata disso dentro do próprio trabalho. Quando humanEdit está ativado, o trabalho assíncrono executa o motor e depois faz uma pausa para revisão humana — pela sua equipa ou por um profissional externo — retomando com a respetiva edição e transportando esse resultado para as fases seguintes.
Esta é a terceira fase do pipeline de localização e, como todas as fases, aplica-se apenas a trabalhos criados através da API de Localização Assíncrona. Ainda não conhece o pipeline? Comece pela Visão geral.
Nesta página
Como funciona a pausa#
Depois da etapa principal de tradução, o trabalho entrega a tradução por IA a uma pessoa para revisão. O revisor lê-a e depois aprova-a tal como está ou submete uma versão editada. Só então o trabalho continua. O resultado humano — aprovado ou editado — passa a ser a entrada de todas as fases seguintes e, no fim, o outputData do trabalho.
A objeção óbvia a pausar um trabalho durante minutos, horas ou até um dia é o custo: um pedido mantido aberto consome recursos enquanto nada acontece. Esta fase não funciona assim.
A espera é orientada por eventos, não por uma ligação mantida aberta
O workflow retoma com base num evento — um revisor a submeter no dashboard (Revisão Interna) ou um callback do fornecedor de tradução (Revisão Externa). Não está a fazer polling num ciclo apertado nem a manter uma ligação aberta, por isso um tempo limite longo não consome capacidade de computação em segundo plano. Um trabalho pode esperar 48 horas por uma pessoa da mesma forma que espera por um modelo: fica em espera, não a consumir recursos.
Estão disponíveis dois modos de revisão, definidos por motor. A única diferença é quem faz a leitura — o comportamento de pausa, retoma e transporte do resultado é exatamente o mesmo.
Revisão Interna#
A sua própria equipa revê as traduções diretamente no dashboard do Lingo.dev. As revisões pendentes aparecem na página Human Reviewer da sua organização (/orgs/<org-id>/human-reviewer), e os revisores são notificados quando chegam novos itens. Um revisor assume um item e depois aprova a tradução tal como está ou submete uma versão editada. O trabalho retoma de imediato com esse resultado.
Um segundo revisor não pode pegar num item em que alguém já esteja a trabalhar. As atribuições são exclusivas — cada item fica com um único revisor de cada vez, para que duas pessoas nunca editem a mesma tradução e acabem por se sobrepor sem se aperceberem. A string fica bloqueada para quem a assumiu até essa pessoa a libertar ou submeter.
A Revisão Interna é o modo predefinido para novos motores. Recorra a ela quando a sua equipa tem competência linguística internamente e quer controlo total sobre a formulação final, sem terceiros envolvidos.
Permissões#
A revisão interna não está aberta a toda a gente na organização — a página Human Reviewer é protegida por permissões, pelo que uma tradução em revisão só fica visível para as pessoas a quem conceder acesso. Um administrador da organização atribui esse acesso através de funções (Definições → Funções):
| Permissão | O que permite |
|---|---|
Rever traduções (engine:review_translations) | Ver e tratar a fila de revisão — assumir uma tradução pendente, editá-la, aprová-la tal como está ou submeter a versão editada |
Gerir revisões (org:manage_reviews) | Histórico de revisão e estatísticas dos revisores para todas as revisões internas em toda a organização |
As duas permissões estão deliberadamente separadas. Um revisor só precisa de Rever traduções — essa única permissão cobre o trabalho todo: assumir, editar, aprovar e submeter. Gerir revisões destina-se a quem supervisiona a operação; acrescenta a vista de histórico e estatísticas de toda a organização, mas não inclui, por si só, acesso à fila. Conceda ambas a um responsável que revê e reporta; conceda apenas a primeira a alguém que só trata da fila.
Revisão Externa#
Quando não tem revisores internos para um idioma, a tradução é enviada a um tradutor profissional qualificado através de um fornecedor externo. O trabalho pausa da mesma forma e retoma quando o fornecedor devolve a tradução editada. Nada muda no seu código — a diferença está em quem lê a string, não na forma como o trabalho se comporta.
A Revisão Externa tem dois níveis, e a distinção depende do grau de exatidão que o conteúdo exige:
| Nível | Mais indicado para |
|---|---|
| Standard | Tradução rigorosa com voz humana — texto de marketing, strings de IU, conteúdo de ajuda |
| Pro | Utilização profissional com um nível de exatidão ainda mais exigente — conteúdo jurídico, médico e regulamentado |
Convém ser totalmente claro: a Revisão Externa põe um tradutor humano real do outro lado, com os prazos e os custos que isso implica. Não é um modelo mais rápido. Use-a quando o valor está precisamente no julgamento humano — texto regulamentado, conteúdo de alto risco — e reserve o percurso só com IA para a maior parte do conteúdo que não precisa desse nível de intervenção.
Tempo limite#
Uma fase humana introduz um risco que as fases de IA não têm: a pessoa pode nunca responder. Um revisor está de férias, o fornecedor está atrasado, o item é esquecido. Sem um limite, o trabalho ficaria à espera para sempre.
Por isso, a espera tem um limite. Define quanto tempo o workflow espera pelo resultado humano — a mesma definição timeoutHours aplica-se aos dois modos de revisão. Se o tempo limite expirar sem resposta, a fase é marcada como skipped e o trabalho continua com a tradução por IA como resultado final. O valor predefinido é 48 horas.
Vale a pena dizer isto sem rodeios: quando o tempo limite expira, publica a tradução por IA sem revisão. Esse é o fallback certo para a maioria dos conteúdos — mais vale uma tradução publicada do que um trabalho bloqueado indefinidamente — mas continua a ser um compromisso real. Para conteúdos em que a aprovação humana é obrigatória, defina um tempo limite generoso e crie um alerta para a omissão; para conteúdos em que a revisão é apenas desejável, um tempo limite curto mantém o pipeline a avançar.
O tempo limite é por fase, não por trabalho
O tempo limite controla apenas quanto tempo esta fase espera por uma pessoa. É independente do tempo que o resto do trabalho demora. Como a espera é orientada por eventos, um tempo limite longo só lhe custa latência até ao resultado final se o revisor for lento — nunca capacidade de computação em segundo plano.
Ativar a fase#
humanEdit é configurado como qualquer fase do pipeline: uma predefinição ao nível do motor no separador Pipeline do motor, com possibilidade de substituição por pedido. O modelo completo de duas camadas está em Configurar o pipeline; a configuração específica desta fase é:
{
"humanEdit": {
"enabled": true,
"provider": "internal",
"tier": "standard",
"timeoutHours": 48
}
}provider seleciona o modo — internal para a sua própria equipa, caso contrário o fornecedor externo. tier (standard ou pro) aplica-se à Revisão Externa e é ignorado na Interna. timeoutHours é o limite referido na secção anterior. Para substituir numa única submissão, passe este bloco dentro de pipelineConfig na chamada create; se o omitir, o trabalho herda a definição do motor.
Quando a fase é executada, fica registada no trabalho em stepId: "humanEdit" com um estado de completed, failed ou skipped — o mesmo registo de etapa que todas as fases produzem. A leitura desses registos é abordada em Observe pipeline runs.
Uma edição humana pode afastar-se das regras do seu motor
Um tradutor humano pode formular algo de uma forma que entre em conflito com o seu glossary, a voz da marca ou as instrução — está a traduzir bem, não a decorar a sua configuração. Para reconciliar automaticamente a edição humana com as regras do seu motor, ative a fase seguinte, avaliação por IA. Esta só é executada depois de uma fase humana que tenha efetivamente produzido resultado.
