Hapni një kërkesë tërheqjeje pas çdo ekzekutimi
- 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ërkthimi i fushës për paketë
with: sourceLocale: en include: | apps/web/**/*.en.resx packages/shared/**/*.en.json exclude: | **/dist/** **/__tests__/**Fjalor për emrat e markave dhe termat e produkteve
Hidhni një .github/resource-translator.yml në depo:
glossary: Acme: Contoso Octocat: Octocat ".NET": ".NET" "C++": "C++"Termat e fjalorit aplikohen pas përkthim, kështu që rezultati i përkthyer nga makina ruan markën tuaj të preferuar edhe kur modeli e ndërroi atë me një sinonim.
Kategoria e përkthyesit me porosi (industri / domen)
with: sourceLocale: en subscriptionKey: ${{ secrets.TRANSLATOR_KEY }} endpoint: ${{ secrets.TRANSLATOR_ENDPOINT }} categoryId: 1234abcd-5678-90ef-... Trajnoni një kategori Azure Custom Translator në një korpus që kap fjalorin dhe tonin e industrisë tuaj (ligjore, mjekësore, marketingu, inxhinieri të brendshme, etj.) dhe kaloni ID-në e saj përmes categoryId. Kjo është leva më e fortë e tonit që ofron Azure.
Kontrolli i tonit + rezervë e rreptë
# .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 Kombinoni një categoryId përkthyesi të personalizuar me profanityAction dhe allowFallback: false për të zbatuar një zë të qëndrueshëm dhe për të dështuar në rrjedhën e punës nëse kategoria e zgjedhur nuk ka një vendosje për një nga vendet tuaja të synuara.
Funksionimi i thatë përpara se të ndizni rrjedhën e punës
with: dryRun: true failOnError: false Veprimi ende lëshon rezultate përmbledhëse dhe një përmbledhje hapash, por asnjë skedar nuk është shkruar. Kombinoni me failOnError: false për të shfaqur çdo problem si paralajmërim ndërsa përsërisni.