Totalmente compatible cara atrás: provider predeterminado en azure, así que os fluxos de traballo existentes de Azure seguen funcionando sen cambios — sen necesidade de edicións.
Selección dun provedor
Configura a entrada provider en azure (por defecto), aws ou google, e logo proporciona as credenciais dese provedor. Só se usa un provedor por chamada de acción; a acción delega deterministicamente ao SDK correspondente detrás dunha fábrica.
Comparación de provedores
subscriptionKey, punto final, rexión (opcional)
OIDC / cadea predeterminada, ou awsAccessKeyId + awsSecretAccessKey; awsRegion
googleApiKey OU googleCredentials (JSON da conta de servizo)
Azure AI Translator (por defecto)
O provedor por defecto. Provisiona un recurso Azure AI Translator e pasa subscriptionKey, endpoint e opcionalmente region. Esta é a mesma configuración que xa usan os fluxos de traballo existentes.
Official Azure docs
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
Usa @aws-sdk/client-translate. Prefiro OIDC vía aws-actions/configure-aws-credentials para que non se almacenen segredos duradeiros — a acción le a cadea de credenciais predeterminada do AWS SDK. Alternativamente, pasa awsAccessKeyId e awsSecretAccessKey explicitamente. Sempre é necesaria unha rexión, a través de awsRegion ou da variable de ambiente AWS_REGION.
Official AWS docs
- Amazon Translate overview
- TranslateText API reference
- Setting formality
- Using brevity
- Custom terminology
- Parallel data
- Supported languages
OIDC (recomendado)
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"]'Para usar teclas estáticas en lugar de OIDC, elimina o paso aws-actions/configure-aws-credentials e pasa awsAccessKeyId / awsSecretAccessKey (vía secrets) máis awsRegion.
Tradución de Google Cloud
Usa @google-cloud/translate (v2). Autenticar con unha clave API (googleApiKey) ou cunha credencial JSON de conta de servizo (googleCredentials). Subministra exactamente un; un googleProjectId opcional inférese da credencial cando se omite.
Official Google docs
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"]'Mapeo de especificadores de intención
Os especificadores específicos do provedor mapeanse onde existe un equivalente. Todo o demais volve a valores predeterminados sensatos para que o comportamento se manteña consistente.
textTypeprofanityActioncategoryIdallowFallbackawsFormalityawsBrevityawsTerminologyNamesawsParallelDataNamesgoogleModelgoogleApiEndpointOs códigos locais varían segundo o provedor
Cada provedor usa os seus propios códigos locais (por exemplo, o chinés simplificado está zh-Hans en Azure, zh en AWS e zh-CN en Google). Os códigos pasan tal cal e controlan os nomes dos ficheiros de saída, así que escolle toLocales valores que soporte o provedor seleccionado.