-
Notifications
You must be signed in to change notification settings - Fork 572
Description
What would you like to be added?
The workshop content should be offered in other languages, but has historically represented complexity that would hinder our ability to maintain the workshop at the velocity that we do. Generative AI now offers the opportunity to automate content translation at scale in a repeatable manner.
The first language to be targeted will be Japanese. With these languages considered as follow-ups:
- French
- Spanish
- Portugues
- Korean
Requirements:
- The process must be repeatable, either in response to merge events or as part of the release process
- It should be possible to provide per-language instructions to the LLM to account for language-specific details
- Consistency is desired so the translations don't potentially change drastically between each release
Implementation:
The plan is to use toolkit-md to perform the translation of the Markdown content itself as it has mechanism to help with on-going maintenance of the translated content.
There are perceived to be two phases of implementation:
1. Onboarding
Adding a new language involves some "one-time" setup, as documented in the Docusaurus docs:
https://docusaurus.io/docs/i18n/git
This includes:
- Add the locale to
docusaurus.config.js - Initialize the
i18ndirectory for the locale withyarn write-translations --locale [...] - Translate various static parts of the site like the homepage, menu, footer etc.
- Establish a language-specific style guide for translations in the
i18ndirectory - Perform an initial translation of the Markdown content
2. Translation updates
As content written in English is added or updated the translated content will need to be updated. The plan is to handle this with a GitHub Actions workflow that runs on merge events to the main branch. The workflow will run toolkit-md for a matrix of languages in order to ensure the 60 minute time limit of IAM credentials is not breached. Once all the language steps are completed the workflow can consolidate the various files in to a step that will commit changes to a branch and create/update a PR. Subsequent runs will rebase the same branch and re-translate.
The PR can then be merged before the monthly release process.
Why is this needed?
We have had sporadic requests to translate the workshop to other languages.
Metadata
Metadata
Assignees
Labels
Type
Projects
Status