Problemas comunes
Problemas comunesNo se pudo decodificar como JSON la respuesta del servicio de IA

No se pudo decodificar como JSON la respuesta del servicio de IA

Gato AI Translations for Polylang envía un prompt al servicio de IA, y la respuesta llega en formato JSON.

Dependiendo de los datos que envíes (cadenas a traducir e idioma), el servicio de IA podría producir una respuesta que no sea JSON válido. Los logs mostrarán un mensaje de error como este:

Error [Query "translate-customposts"] Execution with errors: 🔴 Translation to zh_CN failed - There was an error requesting data from the API for provider 'OpenRouter': Could not JSON-decode the OpenRouter API's 'choices[0].message.content' field in the response

Cada vez que descubrimos un nuevo problema, ajustamos el prompt para evitar que vuelva a ocurrir.

Actualmente, el prompt contiene lo siguiente:

If a sentence contains HTML:
- Translate the text inside the HTML tags. (eg: `<p>Hello world</p>` => `<p>Hola mundo</p>`)
- Translate the following properties inside the HTML tags: alt, title, placeholder, aria-label, aria-describedby, aria-labelledby, aria-placeholder. Do not translate any other property.
- Ensure that any double quotes (") within a translated string inside an HTML tag attribute are properly escaped by adding a backslash before them (\"), but only if they haven't been escaped already.
- Ensure that the quotes in HTML tag attributes are not escaped (eg: keep `<mark class="has-inline-color">` as is, do not convert to `<mark class=\"has-inline-color\">`).
- Ensure that slashes within HTML tags are not escaped (eg: keep `<p>Hello world</p>` as is, do not convert to `<p>Hello world<\/p>`).
Keep emojis exactly as they are, do not translate them.
Ensure that the response is encoded using UTF-8 for all characters.

Si recibes un error, significa que es un nuevo problema que necesitamos identificar y solucionar.

Haz lo siguiente:

Una vez que funcione, envíanos tu prompt y codificaremos esa solución dentro del plugin.