Target na Tagapakinig: Ang gabay na ito ay para sa mga gumagamit sa karamihan ng pampubliko o pribadong mga repository kung saan sapat ang karaniwang mga pahintulot ng GitHub Actions. Ginagamit nito ang built-in na GITHUB_TOKEN
.
I-automate ang pagsasalin ng dokumentasyon ng iyong repository nang madali gamit ang Co-op Translator GitHub Action. Tinatalakay ng gabay na ito kung paano i-setup ang action upang awtomatikong gumawa ng mga pull request na may mga na-update na pagsasalin tuwing may pagbabago sa iyong source Markdown files o mga imahe.
[!IMPORTANT]
Pagpili ng Tamang Gabay:
Detalyado sa gabay na ito ang mas simpleng setup gamit ang karaniwang
GITHUB_TOKEN
. Ito ang inirerekomendang paraan para sa karamihan ng mga gumagamit dahil hindi nito kailangan ng pamamahala ng sensitibong GitHub App Private Keys.
Bago i-configure ang GitHub Action, tiyaking handa na ang mga kinakailangang kredensyal ng AI service.
1. Kinakailangan: Kredensyal ng AI Language Model
Kailangan mo ng kredensyal para sa kahit isa sa mga suportadong Language Model:
2. Opsyonal: Kredensyal ng AI Vision (para sa Pagsasalin ng Imahe)
Sundin ang mga hakbang na ito upang i-configure ang Co-op Translator GitHub Action sa iyong repository gamit ang karaniwang GITHUB_TOKEN
.
GITHUB_TOKEN
)Ginagamit ng workflow na ito ang built-in na GITHUB_TOKEN
na ibinibigay ng GitHub Actions. Ang token na ito ay awtomatikong nagbibigay ng mga pahintulot sa workflow para makipag-interact sa iyong repository base sa mga setting na iaayos sa Hakbang 3.
Kailangan mo lang idagdag ang iyong AI service credentials bilang encrypted secrets sa settings ng iyong repository.
Sa ilalim ng Repository secrets, i-click ang New repository secret para sa bawat kinakailangang AI service secret na nakalista sa ibaba.
(Larawan ng sanggunian: Ipinapakita kung saan magdagdag ng mga secrets)
Kinakailangang AI Service Secrets (Idagdag LAHAT na naaangkop base sa iyong Mga Kinakailangan):
Pangalan ng Secret | Paglalarawan | Pinagmulan ng Halaga |
---|---|---|
AZURE_SUBSCRIPTION_KEY |
Key para sa Azure AI Service (Computer Vision) | Iyong Azure AI Foundry |
AZURE_AI_SERVICE_ENDPOINT |
Endpoint para sa Azure AI Service (Computer Vision) | Iyong Azure AI Foundry |
AZURE_OPENAI_API_KEY |
Key para sa Azure OpenAI service | Iyong Azure AI Foundry |
AZURE_OPENAI_ENDPOINT |
Endpoint para sa Azure OpenAI service | Iyong Azure AI Foundry |
AZURE_OPENAI_MODEL_NAME |
Pangalan ng Azure OpenAI Model | Iyong Azure AI Foundry |
AZURE_OPENAI_CHAT_DEPLOYMENT_NAME |
Pangalan ng Azure OpenAI Deployment | Iyong Azure AI Foundry |
AZURE_OPENAI_API_VERSION |
API Version para sa Azure OpenAI | Iyong Azure AI Foundry |
OPENAI_API_KEY |
API Key para sa OpenAI | Iyong OpenAI Platform |
OPENAI_ORG_ID |
OpenAI Organization ID (Opsyonal) | Iyong OpenAI Platform |
OPENAI_CHAT_MODEL_ID |
Tiyak na OpenAI model ID (Opsyonal) | Iyong OpenAI Platform |
OPENAI_BASE_URL |
Custom OpenAI API Base URL (Opsyonal) | Iyong OpenAI Platform |
Kailangan ng GitHub Action ng mga pahintulot na ibibigay sa pamamagitan ng GITHUB_TOKEN
para makapag-check out ng code at makagawa ng pull requests.
GITHUB_TOKEN
ng kinakailangang contents: write
at pull-requests: write
na mga pahintulot para sa workflow na ito.Sa wakas, gumawa ng YAML file na naglalarawan ng automated workflow gamit ang GITHUB_TOKEN
.
.github/workflows/
na folder kung wala pa ito..github/workflows/
, gumawa ng file na pinangalanang 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
kung kinakailangan.Pahayag ng Pagtanggi:
Ang dokumentong ito ay isinalin gamit ang AI translation service na Co-op Translator. Bagamat nagsusumikap kami para sa katumpakan, pakatandaan na ang mga awtomatikong pagsasalin ay maaaring maglaman ng mga pagkakamali o di-tumpak na impormasyon. Ang orihinal na dokumento sa kanyang likas na wika ang dapat ituring na pangunahing sanggunian. Para sa mga mahahalagang impormasyon, inirerekomenda ang propesyonal na pagsasalin ng tao. Hindi kami mananagot sa anumang hindi pagkakaunawaan o maling interpretasyon na maaaring magmula sa paggamit ng pagsasaling ito.