Sasaran Pembaca: Panduan ini ditujukan kepada pengguna dalam kebanyakan repositori awam atau persendirian di mana kebenaran GitHub Actions standard adalah mencukupi. Ia menggunakan GITHUB_TOKEN
terbina dalam.
Automatikkan terjemahan dokumentasi repositori anda dengan mudah menggunakan Co-op Translator GitHub Action. Panduan ini membimbing anda cara menyediakan action ini untuk secara automatik mencipta pull request dengan terjemahan terkini setiap kali fail Markdown sumber atau imej anda berubah.
[!IMPORTANT]
Memilih Panduan Yang Betul:
Panduan ini menerangkan penyediaan yang lebih mudah menggunakan
GITHUB_TOKEN
standard. Ini adalah kaedah yang disyorkan untuk kebanyakan pengguna kerana ia tidak memerlukan pengurusan Kunci Peribadi GitHub App yang sensitif.
Sebelum mengkonfigurasi GitHub Action, pastikan anda mempunyai kelayakan perkhidmatan AI yang diperlukan.
1. Diperlukan: Kelayakan Model Bahasa AI
Anda perlu kelayakan untuk sekurang-kurangnya satu Model Bahasa yang disokong:
2. Pilihan: Kelayakan AI Vision (untuk Terjemahan Imej)
Ikuti langkah-langkah ini untuk mengkonfigurasi Co-op Translator GitHub Action dalam repositori anda menggunakan GITHUB_TOKEN
standard.
GITHUB_TOKEN
)Aliran kerja ini menggunakan GITHUB_TOKEN
terbina dalam yang disediakan oleh GitHub Actions. Token ini secara automatik memberi kebenaran kepada aliran kerja untuk berinteraksi dengan repositori anda berdasarkan tetapan yang dikonfigurasi dalam Langkah 3.
Anda hanya perlu menambah kelayakan perkhidmatan AI sebagai rahsia tersulit dalam tetapan repositori anda.
Di bawah Repository secrets, klik New repository secret untuk setiap rahsia perkhidmatan AI yang diperlukan seperti disenaraikan di bawah.
(Rujukan Imej: Menunjukkan lokasi menambah rahsia)
Rahsia Perkhidmatan AI Diperlukan (Tambah SEMUA yang berkenaan mengikut Prasyarat anda):
Nama Rahsia | Penerangan | Sumber Nilai |
---|---|---|
AZURE_SUBSCRIPTION_KEY |
Kunci untuk Perkhidmatan Azure AI (Computer Vision) | Azure AI Foundry anda |
AZURE_AI_SERVICE_ENDPOINT |
Endpoint untuk Perkhidmatan Azure AI (Computer Vision) | Azure AI Foundry anda |
AZURE_OPENAI_API_KEY |
Kunci untuk perkhidmatan Azure OpenAI | Azure AI Foundry anda |
AZURE_OPENAI_ENDPOINT |
Endpoint untuk perkhidmatan Azure OpenAI | Azure AI Foundry anda |
AZURE_OPENAI_MODEL_NAME |
Nama Model Azure OpenAI anda | Azure AI Foundry anda |
AZURE_OPENAI_CHAT_DEPLOYMENT_NAME |
Nama Penerapan Azure OpenAI anda | Azure AI Foundry anda |
AZURE_OPENAI_API_VERSION |
Versi API untuk Azure OpenAI | Azure AI Foundry anda |
OPENAI_API_KEY |
Kunci API untuk OpenAI | Platform OpenAI anda |
OPENAI_ORG_ID |
ID Organisasi OpenAI (Pilihan) | Platform OpenAI anda |
OPENAI_CHAT_MODEL_ID |
ID model OpenAI khusus (Pilihan) | Platform OpenAI anda |
OPENAI_BASE_URL |
URL Asas API OpenAI tersuai (Pilihan) | Platform OpenAI anda |
GitHub Action memerlukan kebenaran yang diberikan melalui GITHUB_TOKEN
untuk memeriksa kod dan mencipta pull request.
GITHUB_TOKEN
kebenaran contents: write
dan pull-requests: write
yang diperlukan untuk aliran kerja ini.Akhir sekali, cipta fail YAML yang mentakrifkan aliran kerja automatik menggunakan GITHUB_TOKEN
.
.github/workflows/
jika belum ada..github/workflows/
, cipta fail bernama co-op-translator.yml
.co-op-translator.yml
.name: Co-op Translator
on:
push:
branches:
- main
jobs:
co-op-translator:
runs-on: ubuntu-latest
permissions:
contents: write
pull-requests: write
steps:
- name: Checkout repository
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Set up Python
uses: actions/setup-python@v4
with:
python-version: '3.10'
- name: Install Co-op Translator
run: |
python -m pip install --upgrade pip
pip install co-op-translator
- name: Run Co-op Translator
env:
PYTHONIOENCODING: utf-8
# === AI Service Credentials ===
AZURE_SUBSCRIPTION_KEY: $
AZURE_AI_SERVICE_ENDPOINT: $
AZURE_OPENAI_API_KEY: $
AZURE_OPENAI_ENDPOINT: $
AZURE_OPENAI_MODEL_NAME: $
AZURE_OPENAI_CHAT_DEPLOYMENT_NAME: $
AZURE_OPENAI_API_VERSION: $
OPENAI_API_KEY: $
OPENAI_ORG_ID: $
OPENAI_CHAT_MODEL_ID: $
OPENAI_BASE_URL: $
run: |
# =====================================================================
# IMPORTANT: Set your target languages here (REQUIRED CONFIGURATION)
# =====================================================================
# Example: Translate to Spanish, French, German. Add -y to auto-confirm.
translate -l "es fr de" -y # <--- MODIFY THIS LINE with your desired languages
- name: Create Pull Request with translations
uses: peter-evans/create-pull-request@v5
with:
token: $
commit-message: "π Update translations via Co-op Translator"
title: "π Update translations via Co-op Translator"
body: |
This PR updates translations for recent changes to the main branch.
### π Changes included
- Translated contents are available in the `translations/` directory
- Translated images are available in the `translated_images/` directory
---
π Automatically generated by the [Co-op Translator](https://github.com/Azure/co-op-translator) GitHub Action.
branch: update-translations
base: main
labels: translation, automated-pr
delete-branch: true
add-paths: |
translations/
translated_images/
Run Co-op Translator
step, you MUST review and modify the list of language codes within the translate -l "..." -y
command to match your projectβs requirements. The example list (ar de es...
) needs to be replaced or adjusted.on:
): The current trigger runs on every push to main
. For large repositories, consider adding a paths:
filter (see commented example in the YAML) to run the workflow only when relevant files (e.g., source documentation) change, saving runner minutes.commit-message
, title
, body
, branch
name, and labels
in the Create Pull Request
jika perlu.Penafian:
Dokumen ini telah diterjemahkan menggunakan perkhidmatan terjemahan AI Co-op Translator. Walaupun kami berusaha untuk ketepatan, sila ambil maklum bahawa terjemahan automatik mungkin mengandungi kesilapan atau ketidaktepatan. Dokumen asal dalam bahasa asalnya hendaklah dianggap sebagai sumber yang sahih. Untuk maklumat penting, terjemahan profesional oleh manusia adalah disyorkan. Kami tidak bertanggungjawab atas sebarang salah faham atau salah tafsir yang timbul daripada penggunaan terjemahan ini.