Po každém spuštění otevřete pull request
- id: translate uses: IEvangelist/resource-translator@v3 with: sourceLocale: en subscriptionKey: ${{ secrets.TRANSLATOR_KEY }} endpoint: ${{ secrets.TRANSLATOR_ENDPOINT }} region: ${{ secrets.TRANSLATOR_REGION }}
- if: steps.translate.outputs.has-new-translations == 'true' uses: peter-evans/create-pull-request@v7 with: branch: machine-translation title: ${{ steps.translate.outputs.summary-title }} body: ${{ steps.translate.outputs.summary-details }} labels: localizationMonorepos: překlad rozsahu na každý balíček
with: sourceLocale: en include: | apps/web/**/*.en.resx packages/shared/**/*.en.json exclude: | **/dist/** **/__tests__/**Slovníček pro názvy značek a produktové termíny
Vložte .github/resource-translator.yml do repozitáře:
glossary: Acme: Contoso Octocat: Octocat ".NET": ".NET" "C++": "C++"Slovníčky se používají Po překladu, takže strojově přeložený výstup si zachovává preferovanou značku i tehdy, když ji model vyměnil za synonymum.
Kategorie vlastních překladačů (průmysl / doména)
with: sourceLocale: en subscriptionKey: ${{ secrets.TRANSLATOR_KEY }} endpoint: ${{ secrets.TRANSLATOR_ENDPOINT }} categoryId: 1234abcd-5678-90ef-... Natrénujte Custom Translator kategorii Azure na korpusu, který zachycuje slovní zásobu a tón vašeho oboru (právní, lékařské, marketingové, interní inženýrství atd.) a předejte jeho ID přes categoryId. Tohle je nejsilnější tónová páka, kterou Azure nabízí.
Ovládání tónu + přísný záložní systém
# .github/resource-translator.yml# Industry / domain — choose your tone via a Custom Translator categorycategoryId: legal-en
# Treat profanity strictly for content aimed at younger audiencesprofanityAction: MarkedprofanityMarker: Tag
# Fail the run rather than silently fall back to the general modelallowFallback: false Kombinujte categoryId vlastního překladače s profanityAction a allowFallback: false, abyste vynutili konzistentní hlas a nevyšli v pracovním postupu, pokud vybraná kategorie nemá nasazení pro jednu z vašich cílových lokalit.
Zkušební zkouška před zapnutím workflow
with: dryRun: true failOnError: false Akce stále generuje souhrnné výstupy a shrnutí kroku, ale žádné soubory se nepíšou. Kombinujte s failOnError: false tak, abyste každý problém odhalili jako varování během iterace.