Перейти к содержанию

Язык

Выбирайте свой язык

Переключитесь на ту же страницу на другом языке.

EnglishEnglishenAfrikaansAfrikaansafአማርኛAmharicamالعربيةArabicarঅসমীয়াAssameseasAzərbaycanAzerbaijaniazБашҡортBashkirbaБългарскиBulgarianbgभोजपुरीBhojpuribhoবাংলাBanglabnབོད་སྐད་Tibetanboबड़ोBodobrxBosanskiBosnianbsCatalàCatalancaČeštinaCzechcsCymraegWelshcyDanskDanishdaDeutschGermandeडोगरीDogridoiDolnoserbšćinaLower SorbiandsbދިވެހިބަސްDivehidvΕλληνικάGreekelEspañolSpanishesEestiEstonianetEuskaraBasqueeuفارسیPersianfaSuomiFinnishfiFilipinoFilipinofilVakavitiFijianfjFøroysktFaroesefoFrançaisFrenchfrFrançais (Canada)French (Canada)fr-CAGaeilgeIrishgaGalegoGalicianglकोंकणीKonkanigomગુજરાતીGujaratiguHausaHausahaעבריתHebrewheहिन्दीHindihiछत्तीसगढ़ीChhattisgarhihneHrvatskiCroatianhrHornjoserbsceUpper SorbianhsbHaitian CreoleHaitian CreolehtMagyarHungarianhuՀայերենArmenianhyIndonesiaIndonesianidÌgbòIgboigInuinnaqtunInuinnaqtuniktÍslenskaIcelandicisItalianoItalianitᐃᓄᒃᑎᑐᑦInuktitutiuInuktitut (Latin)Inuktitut (Latin)iu-Latn日本語JapanesejaქართულიGeorgiankaҚазақ ТіліKazakhkkខ្មែរKhmerkmKurmancîKurdish (Northern)kmrಕನ್ನಡKannadakn한국어KoreankoكٲشُرKashmiriksکوردیی ناوەندیKurdish (Central)kuКыргызчаKyrgyzkyLëtzebuergeschLuxembourgishlbLingálaLingalalnລາວLaoloLietuviųLithuanianltLugandaGandalugLatviešuLatvianlv中文 (文言文)Chinese (Literary)lzhमैथिलीMaithilimaiMalagasyMalagasymgTe Reo MāoriMāorimiМакедонскиMacedonianmkമലയാളംMalayalammlМонгол хэлMongolian (Cyrillic)mn-Cyrlᠮᠣᠩᠭᠣᠯ ᠬᠡᠯᠡMongolian (Traditional)mn-MongমৈতৈলোনManipurimniमराठीMarathimrMelayuMalaymsMaltiMaltesemtHmong DawHmong Dawmwwမြန်မာMyanmar (Burmese)myNorsk BokmålNorwegian BokmålnbनेपालीNepalineNederlandsDutchnlSesotho sa LeboaSesotho sa LeboansoChinyanjaChichewanyaଓଡ଼ିଆOdiaorHñähñuQuerétaro OtomiotqਪੰਜਾਬੀPunjabipaPolskiPolishplدریDariprsپښتوPashtopsPortuguês (Brasil)Portuguese (Brazil)ptPortuguês (Portugal)Portuguese (Portugal)pt-PTRomânăRomanianroРусскийRussianruIkirundiRundirunKinyarwandaKinyarwandarwسنڌيSindhisdසිංහලSinhalasiSlovenčinaSlovakskSlovenščinaSlovenianslGagana SāmoaSamoansmchiShonaShonasnSoomaaliSomalisoShqipAlbaniansqСрпски (ћирилица)Serbian (Cyrillic)sr-CyrlSrpski (latinica)Serbian (Latin)sr-LatnSesothoSesothostSvenskaSwedishsvKiswahiliSwahiliswதமிழ்TamiltaతెలుగుTeluguteไทยThaithትግርTigrinyatiTürkmen DiliTurkmentkLea fakatongaTongantoTürkçeTurkishtrТатарTatarttReo TahitiTahitiantyئۇيغۇرچەUyghurugУкраїнськаUkrainianukاردوUrduurUzbek (Latin)Uzbek (Latin)uzTiếng ViệtVietnameseviisiXhosaisiXhosaxhÈdè YorùbáYorubayoYucatec MayaYucatec Mayayua粵語Cantonese (Traditional)yue中文 (简体)Chinese Simplifiedzh-Hans中文 (繁體)Chinese Traditionalzh-HantisiZuluisiZuluzu

Ссылка

Поставщики переводов

Выбирайте одного провайдера перевода на каждый запуск — Azure AI Translator, AWS Translate или Google Cloud Translation — за единой единой API-поверхностью. Переводчик ведёт себя одинаково независимо от поставщика; Различаются только квалификации.

На этой странице

    Полностью обратная совместимость: provider по умолчанию установлена azure, поэтому существующие рабочие процессы Azure продолжают работать без изменений — никаких изменений не требуется.

    Выбор поставщика

    Установите provider вход на azure (по умолчанию), aws или google, затем введите учетные данные этого провайдера. На каждый вызов с действием используется только один провайдер; действие детерминированно делегирует соответствующий SDK за фабрикой.

    Сравнение поставщиков

    Azure AI Translator
    Ценность поставщика
    Azure (по умолчанию)
    SDK
    @azure-rest/ai-translation-text

    подпискаКлюч, конечная точка, регион (по желанию)

    AWS Translate
    Ценность поставщика
    AWS
    SDK
    @aws-sdk/client-translate

    OIDC / по умолчанию или awsAccessKeyId + awsSecretAccessKey; awsRegion

    Google Cloud Translation
    Ценность поставщика
    Погугли
    SDK
    @google-cloud/translate

    googleApiKey ИЛИ googleCredentials (сервис-аккаунт JSON)

    Azure AI Translator (по умолчанию)

    Провайдер по умолчанию. Предоставьте ресурс Azure AI Translator и пропустите subscriptionKey, endpoint и, по желанию, region. Это та же конфигурация, что уже используется в существующих рабочих процессах.

    Official Azure docs

    .github/workflows/translate.yml
    jobs:
    translate:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v5
    - id: translator
    uses: IEvangelist/resource-translator@v3
    with:
    provider: |
    azure:
    subscriptionKey: ${{ secrets.TRANSLATOR_KEY }}
    endpoint: ${{ secrets.TRANSLATOR_ENDPOINT }}
    region: ${{ secrets.TRANSLATOR_REGION }}
    sourceLocale: en
    toLocales: '["es","fr","de"]'

    AWS Translate

    Использует @aws-sdk/client-translate. Предпочитаю OIDC через aws-actions/configure-aws-credentials, чтобы не хранились долговременные секреты — действие считывает цепочку учетных данных AWS SDK по умолчанию. Или пропустите awsAccessKeyId и awsSecretAccessKey явно. Регион всегда необходим через awsRegion или AWS_REGION переменную среды.

    Official AWS docs

    OIDC (рекомендую)

    .github/workflows/translate.yml
    permissions:
    id-token: write # for aws-actions/configure-aws-credentials OIDC
    contents: write
    pull-requests: write
    jobs:
    translate:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v5
    - uses: aws-actions/configure-aws-credentials@v4
    with:
    role-to-assume: arn:aws:iam::123456789012:role/gh-actions-translate
    aws-region: us-east-1
    - id: translator
    uses: IEvangelist/resource-translator@v3
    with:
    provider: |
    aws:
    region: us-east-1 # or rely on AWS_REGION from the step above
    formality: FORMAL
    brevity: true
    sourceLocale: en
    toLocales: '["es","fr","de"]'

    Чтобы использовать статические клавиши вместо OIDC, отбросьте aws-actions/configure-aws-credentials шаг и передайте awsAccessKeyId / awsSecretAccessKey (через secrets) плюс awsRegion.

    Google Cloud Translation

    Использует @google-cloud/translate (v2). Аутентифицироваться либо с помощью API-ключа (googleApiKey), либо JSON-учетной записи сервиса (googleCredentials). Поставьте ровно одного; Необязательный googleProjectId выводится из удостоверения при опускении.

    Official Google docs

    .github/workflows/translate.yml
    jobs:
    translate:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v5
    - id: translator
    uses: IEvangelist/resource-translator@v3
    with:
    provider: |
    google:
    # Provide EITHER a service-account JSON credential...
    credentials: ${{ secrets.GCP_TRANSLATE_CREDENTIALS }}
    # ...OR an API key:
    # apiKey: ${{ secrets.GCP_TRANSLATE_API_KEY }}
    model: nmt
    sourceLocale: en
    toLocales: '["es","fr","de"]'

    Отображение спецификатора намерения

    Специфические спецификаторы поставщика отображаются там, где существует эквивалент. Всё остальное сводится к разумным стандартам, чтобы поведение оставалось постоянным.

    textType
    Azure
    textType (простой / html)
    AWS
    Игнорируется (без переключателя)
    Google
    Формат (текст / HTML)
    profanityAction
    Azure
    Полная поддержка
    AWS
    Отмечено / Удалено → маскировка
    Google
    Игнорируется
    categoryId
    Azure
    Индивидуальный переводчик
    AWS
    Игнорируется
    Google
    Игнорируется
    allowFallback
    Azure
    Поддерживается
    AWS
    Игнорируется
    Google
    Игнорируется
    awsFormality
    Azure
    Ignored
    AWS
    Formality setting
    Google
    Ignored
    awsBrevity
    Azure
    Ignored
    AWS
    Brevity mode
    Google
    Ignored
    awsTerminologyNames
    Azure
    Ignored
    AWS
    Custom terminology
    Google
    Ignored
    awsParallelDataNames
    Azure
    Ignored
    AWS
    Parallel data
    Google
    Ignored
    googleModel
    Azure
    Ignored
    AWS
    Ignored
    Google
    Translation model
    googleApiEndpoint
    Azure
    Ignored
    AWS
    Ignored
    Google
    API endpoint override

    Коды локализации различаются в зависимости от провайдера

    Каждый провайдер использует свои коды локализации (например, упрощённый китайский zh-Hans на Azure, zh на AWS и zh-CN в Google). Коды проходят как есть и управляют имёнами выходных файлов, поэтому выбирайте toLocales значения, которые поддерживает выбранный вами провайдер.