Minden futás után nyiss pull requestet
- 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: scope-fordítás csomagonként
with: sourceLocale: en include: | apps/web/**/*.en.resx packages/shared/**/*.en.json exclude: | **/dist/** **/__tests__/**Márkanevek és termékkifejezések szószedet
Dobj egy .github/resource-translator.yml a repóba:
glossary: Acme: Contoso Octocat: Octocat ".NET": ".NET" "C++": "C++"Szószedet kifejezéseket utána fordítást alkalmaznak, így a gépi fordítás megtartja a kedvenc márkádat, még akkor is, ha a modell szinonimára cserélte.
Egyedi fordító kategória (iparág / domain)
with: sourceLocale: en subscriptionKey: ${{ secrets.TRANSLATOR_KEY }} endpoint: ${{ secrets.TRANSLATOR_ENDPOINT }} categoryId: 1234abcd-5678-90ef-... Képezz egy Azure Custom Translator kategóriát egy olyan korpuszon, amely rögzíti az iparági szókincsed és hangzásod (jogi, orvosi, marketing, belső mérnöki stb.), és add át az ID-jét categoryId-n keresztül. Ez az Azure legerősebb hangkarja.
Hangzás irányítása + szigorú tartalék
# .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 Kombinálj egy egyedi fordító categoryId-t profanityAction-vel és allowFallback: false-vel, hogy következetes hangot kényszerítsd ki, és ha a kiválasztott kategória nem rendelkezik telepítéssel az egyik célterületedhez.
Próbáld a munkafolyamatot, mielőtt bekapcsolnád a munkafolyamatot
with: dryRun: true failOnError: false Az akció továbbra is összefoglaló kimeneteket és lépési összefoglalót bocsát ki, de fájlokat nem írnak. Kombináld failOnError: false-t, hogy minden problémát előhívj figyelmeztetésként, miközben iterálsz.