Overstyr stien med configPath-inngangen hvis du trenger en ikke-standard plassering.
Skjema
# .github/resource-translator.ymlsourceLocale: entoLocales: - fr - de - esinclude: - "src/**/*.en.json" - "apps/**/*.en.resx"exclude: - "**/__tests__/**"glossary: Acme: Contoso Octocat: Octocat # keep brand names verbatim
# Domain / industry — uses an Azure Custom Translator category trained on# your tone and vocabulary. Leave unset for the general model.categoryId: my-custom-translator-category
# Translator request shape — most users can ignore these.textType: plain # plain | htmlprofanityAction: NoAction # NoAction | Marked | DeletedprofanityMarker: Asterisk # Asterisk | Tag (only when profanityAction == Marked)allowFallback: true # false fails when the categoryId has no deployment
apiVersion: "3.0"
# Resilience — Translator returns 429 under load. Defaults are usually# fine; tune only if your runs are large enough to hit them.maxRetries: 5retryBackoffMs: 30000 # cap on any single backoff sleep (ms)
# Placeholder protection. ON by default — wraps tokens like {{name}},# {0}, %s, ${var} into sentinels before translation and restores them# on the way back. Set false only when source intentionally contains# placeholder-shaped literals.protectPlaceholders: truecustomPlaceholderPatterns: - "<<.+?>>" # any extra token syntax you use
# Per-key opt-out. Keys matching any glob are dropped from the request# and pass through with the source value preserved.noTranslatePatterns: - "errors.code.*" - "brands.*"Feltreferanse
| Felt | Type | Noter |
|---|---|---|
sourceLocale | string | Faller tilbake til sourceLocale inngang hvis den ikke er satt. Også videresendt til Oversetteren som from=<locale> slik at korte strenger ikke blir automatisk oppdaget. |
toLocales | string[] | Enten et array eller en komma-separert streng. |
include / exclude | string[] | Klumpmønstre evaluert mot absolutte og arbeidsplass-relative baner. |
glossary | map<string,string> | Overstyrer begreper etter oversettelse. Ordgrensebevisst (håndterer C++, .NET). |
categoryId | string | Azure Custom Translator kategori — din bransje-/domeneknop (juridisk, medisinsk, markedsføringstone, osv.). Sendt som ?category=.... |
textType | "plain" | "html" | Som standard er plain. Bruk html kun hvis ressursverdiene dine inneholder ekte HTML-fragmenter. |
profanityAction | "NoAction" | "Marked" | "Deleted" | Hvordan behandle grove uttrykk i oversatt output. |
profanityMarker | "Asterisk" | "Tag" | Bare meningsfull når profanityAction er "Marked". |
allowFallback | boolean | Sett til false til å feile oversettelsen når categoryId ikke har distribusjon for et målområde, i stedet for å falle tilbake til den generelle modellen. |
apiVersion | string | Oversetter REST API-versjon. Som standard er 3.0. |
maxRetries | integer | Maksimalt antall forsøk på midlertidig HTTP-respons (408, 425, 429, 500, 502, 503, 504). Går som standard til 5. Totalt antall HTTP-anrop per forespørsel er 1 + maxRetries. |
retryBackoffMs | integer | Begrens (MS) på enhver enkelt backoff-søvn. Som standard er 30000. Azures Retry-After header blir respektert nøyaktig når den er til stede; ellers brukes jitteret eksponentiell backoff, begrenset til denne verdien. |
protectPlaceholders | boolean | Som standard er true. Når de er på, erstattes tokens som {{name}}, ${var}, {0}, {0:N2}, %s, %1$s og HTML-entiteter med sentinel-tokens før oversettelse og gjenopprettes etterpå. Deaktiver kun når kilden bevisst inneholder plassholderformede bokstaver. |
customPlaceholderPatterns | string[] | Ekstra regex-mønstre (uten avgrensere) lagt til standard plassholder-settet, for eksempel <<.+?>> for egendefinert token-syntaks. Ugyldige regexer ignoreres. |
noTranslatePatterns | string[] | Glob-mønstre matchet mot parser-nivå nøkler (JSON prikket sti, RESX name, PO msgid, XLIFF enhet id, INI/restext-tast). Matchende nøkler fjernes fra forespørselen og sendes videre med kildeverdien bevart. |
Lasterekkefølge
- Handlingen leser eksplisitte input fra arbeidsflyten.
- Den laster YAML-konfigurasjonen fra
configPath. - For hvert delt felt vinner inputen; ellers brukes YAML-verdien.
- De sammenslåtte verdiene valideres. Ugyldige enums (f.eks.
profanityAction: Mask) fører til at handlingen feiler raskt med en klar melding.
Tone og industri, enkelt sagt
Azure AI Translator v3 API har ikke en enkelt toneknapp. To innstillinger kombineres for å gi deg det meste av samme kontroll:
- Bransje / område: bruk
categoryIdtil å peke på en Azure Custom Translator-kategori som er trent på ditt eget korpus — juridisk, teknisk, medisinsk, markedsføringsmessig eller noe annet. Dette er den sterkeste spaken for tone, merkevarestemme og vokabular. - Overflatetekst: Bruk Ordliste til å låse merkenavn og produktbegreper ordrett, og bruk
profanityActiontil å fjerne grove uttrykk når du retter lokalisering mot yngre målgrupper.