Internacionalización (i18n) con Modelo de Lenguaje Potenciado por IA

Rate this content
Bookmark

Los chatbots de IA son los más cercanos a un modelo de conversación humana, lo que hace que la comunicación sea fácil y precisa. Pueden ser una herramienta poderosa para traducir fragmentos más pequeños de texto presentados en idiomas comunes. Aprenda cómo las sugerencias de chatbot convincentes pueden revolucionar su comunicación y traducir cientos de documentos enriquecidos con formato de texto HTML y bloques de código en un solo chat.

This talk has been presented at JSNation 2024, check out the latest edition of this JavaScript Conference.

Sintija Birgele
Sintija Birgele
14 min
17 Jun, 2024

Comments

Sign in or register to post your comment.

Video Summary and Transcription

La charla de hoy cubre la internacionalización con el Paquete de Lenguaje Potenciado y aprovechando las capacidades de IA. Se enfatiza la importancia de planificar roles y flujos de trabajo de IA, personalizar el contenido localmente y comprender diferentes tipos de contenido. El proceso de traducción implica análisis lingüístico, instrucciones precisas del sistema y experimentación con diferentes métodos de comunicación. El flujo de trabajo incluye el uso de Express Server y Storybook para traducciones, la conexión de metadatos con la interfaz de usuario e integrar tecnología de IA de manera responsable para obtener resultados eficientes y efectivos.

1. Introducción a la Internacionalización y la IA

Short description:

Hoy hablaré sobre la internacionalización con el Paquete de Lenguaje Potenciado y cómo hacer que la IA funcione para ti. Comenzaremos por delimitar el alcance y comprender la importancia de planificar los roles y flujos de trabajo de la IA. También te mostraré cómo personalizar completamente el contenido localmente con OpenAI. Además, exploraremos las diferencias entre los tipos de contenido y cómo lograr el mismo objetivo al trabajar con diferentes tipos de contenido.

Hola a todos, mi nombre es Cynthia y hoy hablaré sobre la internacionalización con el Paquete de Lenguaje Potenciado. En resumen sobre mí, soy ingeniera de software y líder técnica en la empresa InterTech con sede en Berlín. Trabajo en la Ready School of Digital Integration donde enseño los fundamentos del desarrollo web. También soy miembro de varias comunidades y gremios de ingeniería, y trabajo en estrecha colaboración con equipos internacionales. Mi motivación para trabajar con las traducciones y hablar sobre ello hoy es realmente intentar desafiar la escalabilidad del negocio y la tecnología a través de la localización para hacer que los productos y el contenido sean accesibles a nivel mundial, así como introducir la localización en los fundamentos web. Al comienzo del viaje de desarrollo, es muy importante aprender cómo implementar correctamente dentro de las organizaciones. Por lo tanto, hoy intentaremos responder una pregunta, ¿cómo hacer que la IA funcione para ti? Y el comienzo de este proceso es delimitar el alcance. Las máquinas no aprenden como los seres humanos, sino que mejoran gradualmente su capacidad y precisión, de modo que cuanto más datos se les alimente, mayores probabilidades tendrán de recibir la respuesta correcta. Por lo tanto, es importante delimitar el alcance a un problema y una tarea al planificar los roles y flujos de trabajo de la IA, así como modelar el proceso en sí mismo. Y las tareas que consumen mucho tiempo y mano de obra y que son estandarizadas son especialmente propicias para la automatización mediante la IA. Los sistemas de gestión de contenido suelen estar limitados por las integraciones disponibles para la localización y el número de ubicaciones. Por lo tanto, hoy te mostraré cómo personalizar completamente el contenido localmente con OpenAI sin depender de ningún sistema externo de gestión de contenido. Por lo tanto, es importante distinguir tres flujos para cada tipo de contenido para comprender cuáles son las principales diferencias, cuáles son las funciones comunes y cómo podemos lograr el mismo objetivo al tener diferentes tipos de contenido en la aplicación. Porque al final, no estamos trabajando solo con un tipo de contenido, probablemente estemos cruzando más de uno al construir nuevos productos.

2. Proceso de Traducción e Instrucciones del Sistema

Short description:

Al traducir diferentes archivos, debemos supervisar el nivel de contenido y comprender los límites. Los componentes de traducción difieren entre los formatos Markdown y JSON. El procesamiento del lenguaje natural realiza un análisis lingüístico para comprender el significado de las oraciones y las palabras. Las instrucciones precisas del sistema son esenciales para obtener resultados precisos. La comunicación a través de la API requiere precisión estricta, mientras que el chat abierto permite experimentación. En Node.js, podemos usar claves dinámicas diferentes para cada tipo de contenido, y herramientas como Storybook se pueden utilizar para automatizar las traducciones.

Entonces, al traducir diferentes archivos, debemos supervisar el nivel de contenido para comprender los límites y planificar cómo traducir los diferentes archivos y dónde comenzar básicamente. Entonces, cuando observamos los principales tipos de contenido, vemos los componentes comunes de traducción, que son los valores de texto. Para Markdown, es todo el texto que podemos pasar directamente. Digamos que si comenzamos a usar JGPT, pasaríamos todo este texto al comando y pediríamos al traductor que solicite a OpenAI que lo traduzca. Pero cuando se trata de JSON, probablemente queramos mantener las claves del objeto en el mismo idioma y traducir solo los valores. Por lo tanto, hay excepciones tanto en el formato JSON como en el encabezado YAML. En el encabezado YAML, probablemente sería el bloque del encabezado y las claves del encabezado que también nos gustaría mantener en el mismo idioma y traducir los valores. Probablemente, si habláramos con JGPT, le diríamos que no traduzca las secciones de título y descripción, sino que traduzca todo el Markdown y los valores de las claves. Entonces, cuando se trata de traducciones con el procesamiento del natural language|lenguaje natural, hay diferencias entre las traducciones humanas o las traducciones realizadas por AI|IA. Y para extraer el máximo valor de los datos entrantes y que sea útil para sus propósitos, primero debemos analizarlo y asegurarnos de ello. Por lo tanto, el procesamiento del natural language|lenguaje natural entra en juego y realiza un análisis lingüístico del texto en diferentes niveles de complejidad creciente. Entonces, en el nivel más bajo, el natural language|lenguaje natural realiza acciones para que las oraciones y las palabras sean comprensibles y comparables. Inicialmente, se utiliza la información para obtener una representación sintáctica y semántica de las oraciones y su significado. Y el objetivo final es que el sistema obtenga un contexto más profundo de las palabras y las oraciones individuales. Entonces, al trabajar con OpenAI, entre las instrucciones del nivel del sistema o las instrucciones de JGPT, es importante destacar que JGPT puede ser bueno para las etapas iniciales de experimentación, cuáles son las instrucciones del nivel del sistema. Digamos que tenemos las instrucciones comunes, como el uso del idioma de origen, el idioma de destino, el formato del texto, asegurándonos de que la salida no tenga comentarios u otros detalles adicionales del texto extraídos exactamente. Por lo tanto, hay diferentes detalles que el sistema debe conocer. Y cuando trabajamos con la API de OpenAI, podemos construir sobre esto, y se puede realizar un análisis dependiente del dominio de la aplicación a través del reconocimiento de sentimientos y objetivos, lo que permite que el procesamiento del natural language|lenguaje natural detecte la polaridad de las oraciones, ya sea negativa, positiva o neutral, y el objetivo correspondiente en las instrucciones del nivel del sistema. Por lo tanto, es importante definir claramente las reglas basadas en el nivel de contenido para que el sistema nos devuelva exactamente la misma salida que esperamos y nada más. Y cuando las instrucciones del sistema se realizan con precisión, mejorará las funciones analíticas, pero sin aumentarlas en exceso. Y también aumentará la eficiencia de las operaciones debido a la disminución del tiempo invertido en adquirir la información al final. Por lo tanto, es muy importante ser preciso en este nivel al comunicarse a través de la API. Pero puede ser menos estricto a través del chat abierto, donde no tenemos los costos adicionales del precio, el costo de usar la API, por lo que para experimentar, ChatGPT es ideal. Entonces, cuando trabajamos con Node.js, el proceso es muy simple. Usamos el idioma de origen y de destino y pasamos diferentes claves dinámicas específicas para cada tipo de contenido. Y en este ejemplo, estoy usando solo un mensaje para los tres tipos de contenido, ya sea JSON para traducir páginas con encabezado o simplemente Markdown. Algunos términos generales también funcionan. Y también la última parte sobre JSON, el formato se puede excluir para este proyecto, para este ejemplo, porque también me aseguro de analizar los datos en la capa intermedia, donde realmente estamos recuperando el contenido y asegurándonos de que sea analizable al final. Entonces, al automatizar las traducciones, primero con un marcado de trabajo, necesitamos usar algún tipo de interfaz. Para el propósito de la demostración, estoy usando

Check out more articles and videos

We constantly think of articles and videos that might spark Git people interest / skill us up or help building a stellar career

Cómo localizar y personalizar contenido con Sanity.io y Next.js
React Advanced Conference 2021React Advanced Conference 2021
8 min
Cómo localizar y personalizar contenido con Sanity.io y Next.js
Sanity.io provides a content platform for structured content that replaces traditional CMS. Their solution allows businesses to structure and query content anywhere using the Sanity studio and open source React application. The talk focuses on solving the challenge of sending personalized data to users in a static website environment using Next.js Vercel for hosting and Sanity for content querying and delivery. The Sanity studio allows for modeling pages, articles, and banners, with banners being shown to visitors based on their country. The solution involves using Grok queries to fetch the right banner based on country information, demonstrating personalization based on localization and dynamic content querying.
End-to-end i18n
React Advanced Conference 2021React Advanced Conference 2021
26 min
End-to-end i18n
Thanks for joining my talk on end-to-end internationalization. I'll walk you through internationalizing a React app, covering translated strings, currency and date formatting, translator management, and injecting translated strings back into the app. The constants used throughout the app define localization settings and translations. The React Intel library is used for managing translations, and custom functions are created for consistent date and number formatting. The translation process involves extracting strings, using tools like PO Edit, and compiling the translated strings into JSON files for the React app.
Construyendo aplicaciones JS con internacionalización (i18n) en mente
JSNation 2022JSNation 2022
21 min
Construyendo aplicaciones JS con internacionalización (i18n) en mente
This Talk discusses building JavaScript apps with internationalization in mind, addressing issues such as handling different name formats, using Unicode for compatibility, character encoding bugs, localization and translation solutions, testing in different languages, accommodating translated text in layouts, cultural considerations, and the importance of enabling different languages for users. The speaker also mentions various open source tools for internationalization. The Talk concludes with a reminder to avoid assumptions and embrace diversity in the World Wide Web.
Internacionalizando React
React Summit Remote Edition 2021React Summit Remote Edition 2021
29 min
Internacionalizando React
The Talk discusses the challenges of adding and maintaining new languages in a React application and suggests ways to make the process easier. It defines internationalization as the process of architecting an application for localization and explains that localization involves adapting the content and experience for a specific locale. The speaker recommends using libraries for internationalization and provides resources for learning more about the topic. The Talk also addresses edge cases and difficulties with multiple dialects or languages, translation processes, and right-to-left CSS libraries.
Codificación de emojis, Unicode e internacionalización
JSNation Live 2020JSNation Live 2020
34 min
Codificación de emojis, Unicode e internacionalización
This Talk explores the UTF-8 encoding and its relationship with emojis. It discusses the history of encoding, the birth of Unicode, and the importance of considering global usage when building software products. The Talk also covers JavaScript's encoding issues with Unicode and the use of the string.prototype.normalize method. It highlights the addition of emoji support in Unicode, the variation and proposal process for emojis, and the importance of transparency in emoji encoding. The Talk concludes with the significance of diverse emojis, the recommendation of UTF-8 for web development, and the need to understand encoding and decoding in app architecture.
Localización para casos de uso del mundo real: Aprendizajes clave de la incorporación de marcas globales
React Summit 2022React Summit 2022
8 min
Localización para casos de uso del mundo real: Aprendizajes clave de la incorporación de marcas globales
I'm going to talk about localisation in the real world and how Sanity, a platform for structured content, focuses on content as data and flexible internationalization. Sanity allows for multiple languages in different markets, providing customization options for content visibility based on location. The platform offers a flexible approach to content creation and customization, allowing organizations to internationalize their content based on their specific needs. With Sanity's query language and the brand new version of Sanity Studio, developers have more flexibility than ever before.

Workshops on related topic

Localizando tu sitio web de Remix
React Summit 2023React Summit 2023
154 min
Localizando tu sitio web de Remix
WorkshopFree
Harshil Agrawal
Harshil Agrawal
El contenido localizado te ayuda a conectarte con tu audiencia en su idioma preferido. No solo te ayuda a hacer crecer tu negocio, sino que también ayuda a tu audiencia a comprender mejor tus ofertas. En este masterclass, obtendrás una introducción a la localización y aprenderás cómo implementar la localización en tu sitio web de Remix alimentado por Contentful.
Tabla de contenidos:- Introducción a la localización- Introducción a Contentful- Localización en Contentful- Introducción a Remix- Configuración de un nuevo proyecto de Remix- Renderización de contenido en el sitio web- Implementación de la localización en el sitio web de Remix- Recapitulación- Próximos pasos