Her koşudan sonra bir pull request açın
- 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: paket başına kapsam çevirisi
with: sourceLocale: en include: | apps/web/**/*.en.resx packages/shared/**/*.en.json exclude: | **/dist/** **/__tests__/**Marka isimleri ve ürün terimleri için sözlük
Depoya bir .github/resource-translator.yml bırakın:
glossary: Acme: Contoso Octocat: Octocat ".NET": ".NET" "C++": "C++"Sözlük terimleri çeviri Sonrasında uygulanır, böylece makine çevirisi çıktısı, model eşanlamlıyla değiştirilse bile tercih ettiğiniz markayı korur.
Özel Çevirici kategorisi (sektör / alan alanı)
with: sourceLocale: en subscriptionKey: ${{ secrets.TRANSLATOR_KEY }} endpoint: ${{ secrets.TRANSLATOR_ENDPOINT }} categoryId: 1234abcd-5678-90ef-... Sektörünüzdeki kelime dağarcığını ve tonunu (hukuk, tıbbi, pazarlama, iç mühendislik vb.) kapsayan bir Azure Custom Translator kategorisi üzerinde eğitin ve ID'sini categoryId üzerinden geçirin. Bu, Azure'un sunduğu en güçlü ton koludur.
Ton kontrolü + katı yedek
# .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 Özel Çevirici categoryId'yi profanityAction ve allowFallback: false ile birleştirerek tutarlı bir ses sağlayın ve seçilen kategoride hedef bölgelerden biri için dağıtım yoksa iş akışını başarısız kalın.
İş akışını açmadan önce deneme yap
with: dryRun: true failOnError: false Eylem yine özet çıktıları ve bir adım özeti gönderir, ancak dosya yazılmaz. Her sorunu uyarı olarak ortaya çıkarmak için failOnError: false ile birleştirin.