អ្នកគោលដៅ៖ មគ្គុទេសក៍នេះគឺសំរាប់អ្នកប្រើប្រាស់នៅក្នុងឃ្លាំងទិន្នន័យសាធារណៈ ឬឯកជនភាគច្រើន ដែលសិទ្ធិ GitHub Actions លំនាំដើមគឺគ្រប់គ្រាន់។ វាប្រើប្រាស់ GITHUB_TOKEN នៅក្នុង។
ធ្វើឲ្យប្រព័ន្ធបកប្រែឯកសាររបស់ឃ្លាំងទិន្នន័យរបស់អ្នកដោយស្វ័យប្រវត្តិ ដោយប្រើ GitHub Action Co-op Translator។ មគ្គុទេសក៍នេះនឹងណែនាំអ្នកដោយជំហានក្នុងការកំណត់កិច្ចការដើម្បីបង្កើត pull requests ដោយស្វ័យប្រវត្តិជាមួយការបកប្រែបានធ្វើបច្ចុប្បន្នភាព នៅពេលដែលឯកសារ Markdown ប្រភព ឬរូបភាពរបស់អ្នកមានការផ្លាស់ប្ដូរ។
[!IMPORTANT]
ការជ្រើសរើសមគ្គុទេសក៍ត្រឹមត្រូវ៖
មគ្គុទេសក៍នេះពិស្តារការកំណត់សាមញ្ញជាមួយ
GITHUB_TOKENលំនាំដើម។ វាជាវិធីសាស្រ្តណែនាំសម្រាប់អ្នកភាគច្រើន ដោយមិនចាំបាច់គ្រប់គ្រងកិចឯរកូនសោឯកជន GitHub App ដែលមានភាពទាន់សម័យ។
មុនពេលកំណត់ GitHub Action សូមប្រាកដថាអ្នកមានសក្ខីប័ត្រជំនួយសេវាកម្ម AI ដែលចាំបាច់រួចរាល់។
1. ចាំបាច់៖ សក្ខីប័ត្រម៉ូដែលភាសា AI
អ្នកត្រូវការសក្ខីប័ត្រសម្រាប់យុទ្ធសាស្រ្តភាសាដែលគាំទ្ររឺមួយប្រភេទយ៉ាងហោចណាស់៖
2. ជាជម្រើស៖ សក្ខីប័ត្រធ្វើ AI Vision (សម្រាប់បកប្រែរូបភាព)
អនុវត្តជំហានទាំងនេះដើម្បីកំណត់ប្រើ GitHub Action Co-op Translator ក្នុងឃ្លាំងទិន្នន័យរបស់អ្នកជាមួយ GITHUB_TOKEN លំនាំដើម។
GITHUB_TOKEN)កិច្ចការនេះប្រើ GITHUB_TOKEN ដែលបង្កើតឡើងដោយ GitHub Actions។ កូនសោនេះផ្តល់សិទ្ធិស្វ័យប្រវត្ដទៅកាន់កិច្ចការដើម្បីធ្វើប្រតិបត្តិការចំពោះឃ្លាំងទិន្នន័យរបស់អ្នក តាមបណ្ដាការកំណត់ ដែលស្ថិតក្នុង ជំហាន 3។
អ្នកត្រូវបញ្ចូលសក្ខីប័ត្រជំនួយសេវាកម្ម AI របស់អ្នកជារឿងសម្ងាត់ដែលចាក់សោរ នៅក្នុងការកំណត់ឃ្លាំងទិន្នន័យ។
នៅខាងក្រោម Repository secrets ចុច New repository secret សម្រាប់មួយៗនៃសម្ងាត់សេវាកម្ម AI ដែលទាមទារខាងក្រោម។
(យោងរូបភាព៖ បង្ហាញទីតាំងបញ្ចូលសម្ងាត់)
សម្ងាត់សេវាកម្ម AI ដែលចាំបាច់ (បញ្ចូលទាំងអស់ដែលត្រូវអាស្រ័យលើលក្ខខ័ណ្ឌមុន)៖
| ឈ្មោះសម្ងាត់ | ការពិពណ៌នា | ប្រភពតម្លៃ |
|---|---|---|
AZURE_AI_SERVICE_API_KEY |
កូនសោសម្រាប់ Azure AI Service (Computer Vision) | Azure AI Foundry របស់អ្នក |
AZURE_AI_SERVICE_ENDPOINT |
ចំណុចបញ្ចូលសម្រាប់ Azure AI Service (Computer Vision) | Azure AI Foundry របស់អ្នក |
AZURE_OPENAI_API_KEY |
កូនសោសម្រាប់សេវាកម្ម Azure OpenAI | Azure AI Foundry របស់អ្នក |
AZURE_OPENAI_ENDPOINT |
ចំណុចបញ្ចូលសម្រាប់សេវាកម្ម Azure OpenAI | Azure AI Foundry របស់អ្នក |
AZURE_OPENAI_MODEL_NAME |
ឈ្មោះម៉ូដែល Azure OpenAI របស់អ្នក | Azure AI Foundry របស់អ្នក |
AZURE_OPENAI_CHAT_DEPLOYMENT_NAME |
ឈ្មោះការចែកចាយ Azure OpenAI របស់អ្នក | Azure AI Foundry របស់អ្នក |
AZURE_OPENAI_API_VERSION |
កំណែ API សម្រាប់ Azure OpenAI | Azure AI Foundry របស់អ្នក |
OPENAI_API_KEY |
កូនសោសម្រាប់ OpenAI | OpenAI Platform របស់អ្នក |
OPENAI_ORG_ID |
អាយឌីអង្គការជាមួយ OpenAI (ជាជម្រើស) | OpenAI Platform របស់អ្នក |
OPENAI_CHAT_MODEL_ID |
អាយឌីម៉ូដែល OpenAI ជាក់លាក់ (ជាជម្រើស) | OpenAI Platform របស់អ្នក |
OPENAI_BASE_URL |
URL មូលដ្ឋាន API OpenAI ផ្ទាល់ខ្លួន (ជាជម្រើស) | OpenAI Platform របស់អ្នក |
GitHub Action ត្រូវការសិទ្ធិធ្វើប្រតិបត្តិការតាម GITHUB_TOKEN ដើម្បីចាក់សោរកូដ និងបង្កើត pull requests។
contents: write និង pull-requests: write ទាំងនេះសម្រាប់ GITHUB_TOKEN ក្នុងកិច្ចការនេះ។
ចុងក្រោយ បង្កើតឯកសារ YAML ដែលកំណត់លំដាប់ស្វ័យប្រវត្តិកម្មសម្រាប់ប្រើ GITHUB_TOKEN។
.github/workflows/ ប្រសិនបើវាមិនមានទេ។.github/workflows/ បង្កើតឯកសារឈ្មោះ 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_AI_SERVICE_API_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 អ្នក ត្រូវពិនិត្យនិងកែប្រែបញ្ជីកូដភាសា នៅក្នុងបញ្ជា translate -l "..." -y ឲ្យសមរម្យជាមួយគម្រោងរបស់អ្នក។ បញ្ជីឧទាហរណ៍ (ar de es...) ត្រូវបានជំនួស ឬកែប្រែ។on:): ការចាប់ផ្ដើមបច្ចុប្បន្នបើកការងារនេះនៅពេលមាន push ថ្មីទៅកាន់ main។ សម្រាប់ឃ្លាំងធំនេះ អាចបន្ថែម paths: ជា filter (មើលឧទាហរណ៍មិនបានដំណើរការជាលាយឡំក្នុង YAML) ដើម្បីដំណើរការកិច្ចការនេះតែលើពេលដែលឯកសារពាក់ព័ន្ធ (ឧ. ឯកសារជំនួយប្រភព) មានការផ្លាស់ប្ដូរ ដើម្បីការពារពេលរបស់ runner។commit-message, title, body, ឈ្មោះbranch និង labels នៅក្នុងជំហាន Create Pull Request ប្រសិនបើចាំបាច់។[!WARNING]
កំណត់ពេលរត់ GitHub-hosted Runner:
GitHub-hosted runners ដូចជាubuntu-latestមាន កំណត់ពេលអតិបរមារត្រឹម 6 ម៉ោង។
សម្រាប់ឃ្លាំងឯកសារធំ ប្រសិនបើដំណើរការបកប្រែហួស 6 ម៉ោង កិច្ចការនឹងត្រូវបញ្ចប់ដោយស្វ័យប្រវត្តិ។
ដើម្បីជៀសវាងនេះ សូមពិចារណា៖
- ប្រើ self-hosted runner (គ្មានកំណត់ពេល)
- បន្ថយចំនួនភាសាគោលដៅក្នុងមួយដំណើរ
ពេលដែលឯកសារ co-op-translator.yml ត្រូវបានបញ្ចូលក្នុងសាខា main របស់អ្នក (ឬសាខាដែលកំណត់នៅក្នុងកម្មវិធីចាប់ផ្ដើម on:) កិច្ចការនេះនឹងដំណើរការដោយស្វ័យប្រវត្តិនៅពេលមានការផ្លាស់ប្ដូរទៅកាន់សាខានោះ (ហើយត្រូវនឹង filter paths ប្រសិនបើមានកំណត់)។
ការបដិសេធៈ
ឯកសារនេះបានបកប្រែដោយប្រើសេវាកម្មបកប្រែ AI Co-op Translator។ បើទោះជាយើងខិតខំរកភាពត្រឹមត្រូវ ក៏សូមជ្រាបថាការបកប្រែដោយស្វ័យប្រវត្តិនេះអាចមានកំហុសឬមិនត្រឹមត្រូវ។ គួរមើលឯកសារដើមដែលមានភាសាគោលជាធនធានដ៏ទៃទៀតដែលមានសុពលភាព។ សម្រាប់ព័ត៌មានសំខាន់ៗ សូមផ្តល់អនុសាសន៍ឲ្យបកប្រែដោយមនុស្សជំនាញជាមនុស្សវិជ្ជាជីវៈ។ យើងមិនទទួលខុសត្រូវចំពោះការយល់ច្រឡំ ឬការបកស្រាយខុសបច្ចុប្បន្នភាពណាមួយនៅពីក្រោយការប្រើប្រាស់ការបកប្រែនេះឡើយ។