เข้ากันได้แบบย้อนหลังอย่างสมบูรณ์: provider ค่าเริ่มต้นเป็น azure ดังนั้นเวิร์กโฟลว์ Azure ที่มีอยู่จึงยังคงทํางานไม่เปลี่ยนแปลง — ไม่จําเป็นต้องแก้ไข
การเลือกผู้ให้บริการ
ตั้งค่าอินพุต provider เป็น azure (ค่าเริ่มต้น) aws หรือ google จากนั้นระบุข้อมูลประจําตัวของผู้ให้บริการรายนั้น มีการใช้ผู้ให้บริการเพียงรายเดียวต่อการเรียกใช้การดําเนินการ การดําเนินการจะมอบหมายให้กับ SDK ที่ตรงกันที่อยู่เบื้องหลังโรงงาน
การเปรียบเทียบผู้ให้บริการ
subscriptionKey, endpoint, region (ไม่บังคับ)
OIDC / เชนเริ่มต้น หรือ awsAccessKeyId + awsSecretAccessKey; aws ภูมิภาค
googleApiKey หรือ googleCredentials (JSON ของบัญชีบริการ)
Azure AI Translator (ค่าเริ่มต้น)
ผู้ให้บริการเริ่มต้น เตรียมใช้งานทรัพยากร Azure AI Translator และส่งผ่าน subscriptionKey, endpoint และ region ที่เลือกได้ นี่เป็นการกําหนดค่าเดียวกันกับที่เวิร์กโฟลว์ที่มีอยู่ใช้อยู่แล้ว
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
ใช้ @aws-sdk/client-translate ต้องการ OIDC ผ่าน aws-actions/configure-aws-credentials เพื่อไม่ให้มีการจัดเก็บข้อมูลลับที่มีอายุการใช้งานยาวนาน — การดําเนินการจะอ่านห่วงโซ่ข้อมูลประจําตัวเริ่มต้นของ AWS SDK หรือส่ง awsAccessKeyId และ awsSecretAccessKey อย่างชัดเจน จําเป็นต้องมีภูมิภาคเสมอ ผ่าน awsRegion หรือตัวแปรสภาพแวดล้อม AWS_REGION
Official AWS docs
- Amazon Translate overview
- TranslateText API reference
- Setting formality
- Using brevity
- Custom terminology
- Parallel data
- Supported languages
OIDC (แนะนํา)
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
ใช้ @google-cloud/translate (v2) ตรวจสอบสิทธิ์ด้วยคีย์ API (googleApiKey) หรือข้อมูลเข้าสู่ระบบ JSON ของบัญชีบริการ (googleCredentials) จัดหาหนึ่งอย่าง googleProjectId เสริมจะอนุมานจากข้อมูลประจําตัวเมื่อละเว้น
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"]'การแม็ปตัวระบุเจตนา
ตัวระบุเฉพาะผู้ให้บริการจะถูกแมปเมื่อมีรายการที่เทียบเท่าอยู่ ทุกอย่างจะกลับไปเป็นค่าเริ่มต้นที่สมเหตุสมผลเพื่อให้พฤติกรรมยังคงสอดคล้องกัน
textTypeprofanityActioncategoryIdallowFallbackawsFormalityawsBrevityawsTerminologyNamesawsParallelDataNamesgoogleModelgoogleApiEndpointรหัสตําแหน่งที่ตั้งแตกต่างกันไปในแต่ละผู้ให้บริการ
ผู้ให้บริการแต่ละรายใช้รหัสภาษาของตนเอง (เช่น ภาษาจีนตัวย่อ zh-Hans ใน Azure, zh บน AWS และ zh-CN บน Google) รหัสจะส่งผ่านตามที่เป็นอยู่และขับเคลื่อนชื่อไฟล์เอาต์พุต ดังนั้นให้เลือกค่า toLocales ผู้ให้บริการที่คุณเลือกรองรับ