פתח בקשת משיכה אחרי כל ריצה
- 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: תרגום היקף לכל חבילה
with: sourceLocale: en include: | apps/web/**/*.en.resx packages/shared/**/*.en.json exclude: | **/dist/** **/__tests__/**מילון מונחים לשמות מותגים ומונחי מוצר
הורד .github/resource-translator.yml למאגר:
glossary: Acme: Contoso Octocat: Octocat ".NET": ".NET" "C++": "C++"מונחי מילון מונחים מיושמים אחרי תרגום, כך שהפלט המתורגם במכונה שומר על המיתוג המועדף גם כאשר הדגם החליף אותו במילה נרדפת.
קטגוריית מתרגם מותאם אישית (תעשייה / תחום)
with: sourceLocale: en subscriptionKey: ${{ secrets.TRANSLATOR_KEY }} endpoint: ${{ secrets.TRANSLATOR_ENDPOINT }} categoryId: 1234abcd-5678-90ef-... אמן קטגוריית Azure Custom Translator על קורפוס שמכסה את אוצר המילים והטון שלך בתעשייה (משפטי, רפואי, שיווק, הנדסה פנימית וכו') והעבר את מזהה שלה דרך categoryId. זהו הטון החזק ביותר ש-Azure מציע.
בקרת טון + גיבוי מחמיר
# .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 שלבו categoryId מתרגם מותאם אישית עם profanityAction ו-allowFallback: false כדי לאכוף קול עקבי ולהיכשל בזרימת העבודה אם לקטגוריה הנבחרת אין פריסה לאחד מהאתרים היעד שלכם.
התחלה לפני הפעלת זרימת העבודה
with: dryRun: true failOnError: false הפעולה עדיין משדרת פלטי סיכום וסיכום שלבים, אך לא נכתבים קבצים. שלב עם failOnError: false כדי להעלות כל בעיה כאזהרה בזמן שאתה מתקדם.