Un error tipográfico en tu origen es un error que solo puedes corregir una vez: antes de que se multiplique. Un trabajo asíncrono distribuye una carga útil de origen a cada idioma de destino, y cada uno traduce el texto que recibió. Así, una falta de ortografía, una palabra omitida o una oración rota en el origen no se queda en un solo problema. Se convierte en un problema en alemán, el mismo problema en francés y el mismo problema en todos los demás idiomas por los que pase el trabajo, y cada uno luego necesita su propia corrección.
La edición con IA previa a la localización (preEdit) cierra esa brecha desde el origen. Es la primera etapa del pipeline asíncrono de localización: antes de que se ejecute el paso principal de traducción, un agente de IA revisa la carga útil de origen y corrige errores tipográficos, gramaticales y de ortografía. Lo que se traduce es ese origen ya limpio, así que lo corriges una vez antes de que se distribuya, en lugar de encontrarte con el mismo error en una docena de resultados.
Esta es una etapa del pipeline asíncrono, así que solo se ejecuta en trabajos creados mediante la API de localización asíncrona. El endpoint síncrono /localize ejecuta únicamente el paso principal de traducción e ignora la configuración del pipeline.
Qué hace esta etapa#
preEdit actúa sobre el origen, no sobre la traducción. Un agente de IA lee tu carga útil de origen y la reescribe para eliminar errores superficiales —tipográficos, gramaticales y de ortografía—, y luego entrega el texto corregido al paso principal de localización. Cada idioma de destino traduce a partir de ese origen limpio.
Su alcance es deliberadamente acotado, y justo esa es la idea. Esto es una pasada de limpieza de texto, no una reescritura: apunta al tipo de ruido superficial que vuelve ambiguo el texto de origen para un modelo de traducción, de modo que el modelo concentre su atención en traducir en lugar de adivinar qué quiso decir una oración mal construida. Un origen más limpio produce traducciones más consistentes entre idiomas, porque cada idioma parte del mismo texto corregido en vez de que cada modelo interprete por su cuenta el mismo error.
Si buscas una salida idiomática y natural —reescribir la traducción misma para que parezca escrita por un redactor nativo—, esa es otra etapa. Consulta Reformular para lograr un texto natural. preEdit limpia la entrada; rephrase pule la salida.
No puede empeorar el trabajo#
La primera pregunta que se hace un ingeniero cuidadoso sobre un paso de IA que edita su contenido antes de traducirlo es la correcta: ¿qué pasa cuando ese paso se equivoca o ni siquiera se ejecuta?
preEdit es una etapa no crítica. Si la llamada de preedición falla o agota el tiempo de espera, el origen original pasa sin cambios y el trabajo continúa hacia el paso de traducción exactamente como si la etapa estuviera desactivada. Una falla aquí te cuesta la limpieza en ese trabajo, no el trabajo. La traducción igual se entrega.
¿Qué pasa si la preedición falla o agota el tiempo de espera?
El trabajo no falla. Las etapas no críticas vuelven a su entrada: ante una falla de preEdit, el origen sin editar se traduce tal cual y el trabajo se ejecuta hasta completarse. El estado del trabajo pasa a ser completed_with_warnings, el paso preEdit se registra como failed, y el motivo llega al arreglo warnings del trabajo, para que puedas ver que ocurrió sin bloquear la entrega. Cómo leer esos registros de pasos se explica en Observar ejecuciones del pipeline.
Así que esta es la forma honesta de plantear el piso: habilitar preEdit no puede hacer fallar un trabajo que, de otro modo, habría tenido éxito. En el peor de los casos, no ayuda en un trabajo puntual y se hace a un lado sin ruido.
Lo que no es#
Vale la pena decirlo con total claridad justo en el momento en que más querrías que hiciera más: preEdit es de mejor esfuerzo y es una pasada de limpieza de texto sobre errores superficiales; no es un corrector que entienda tu dominio ni un verificador de hechos que valide tus afirmaciones. Corrige errores tipográficos, gramaticales y de ortografía. No verifica que un precio sea correcto, que el nombre de un producto esté vigente o que una oración diga lo que querías decir. Si tu origen es incorrecto en los hechos, preEdit limpiará fielmente la gramática de una oración incorrecta y la traducirá con limpieza a todos los idiomas.
Para los términos que deben mantenerse exactamente como están escritos, sin importar cualquier pasada de IA —nombres de productos, marcas registradas, identificadores de código—, fíjalos en el origen. Márcalos como no traducibles en el glosario de tu motor o, para campos estructurales de una carga útil específica, exclúyelos con lockedKeys. Esas sí son garantías sobre los datos; preEdit es una limpieza de mejor esfuerzo a su alrededor.
Cuándo habilitarlo#
preEdit justifica esa pasada adicional cuando es probable que tu origen traiga ruido, y resulta redundante cuando tu origen ya está limpio.
- Habilítalo cuando el contenido de origen sea generado por usuarios, extraído por máquinas, scrapeado, procesado con OCR o, en general, creado fuera de un proceso editorial: esos casos en los que los errores superficiales son comunes y el costo de multiplicarlos entre idiomas es real.
- Omítelo en contenido curado que ya pasó por revisión editorial o humana. Si el origen ya está limpio, la etapa no tendrá nada que corregir y estarías pagando por una pasada de IA que no tiene trabajo que hacer. Cada etapa habilitada es un paso más que ejecuta el trabajo y una línea más en su costo: vale la pena cuando la calidad del origen es incierta, y se desperdicia cuando no lo es.
Ese es todo el intercambio: invertir una pasada al inicio, en los trabajos donde la calidad del origen es incierta, para corregirlo una sola vez antes de que se distribuya, en lugar de corregir el mismo error en cada idioma después de la entrega.
Puedes activar preEdit en la pestaña Pipeline del motor, donde se aplica a cada trabajo asíncrono dirigido a ese motor, o sobrescribirlo para un envío puntual con pipelineConfig en la solicitud de creación de trabajos. Ambas capas, y cómo una etapa omitida hereda el valor predeterminado del motor, se explican en Configurar el pipeline.
