الإجراء المخصص يستخدم نماذج GitHub لترجمة ملفات Markdown في مستودعك. تم تصميمه ليُستخدم في سير عمل GitHub Actions لترجمة ملفات الوثائق تلقائيًا عند تحديثها.
- uses: pelikhan/action-continuous-translation@v0 with: github_token: ${{ secrets.GITHUB_TOKEN }} lang: fr,es
Installation
Section titled “Installation”يمكنك حفظ هذا الملف في دليل .github/workflows/
الخاص بك كـ ct.yml
:
name: Continuous Translationon: workflow_dispatch: # translate when doc files are changed in main push: branches: - main paths: # update the file paths - "README.md" - "docs/src/content/docs/**"permissions: contents: write # allow the action to use the GitHub Models API models: readconcurrency: # cancel in-progress jobs for the same workflow and ref group: ${{ github.workflow }}-${{ github.ref }} cancel-in-progress: truejobs: continuous_translation: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 # cache the LLM inference results - uses: actions/cache@v4 with: path: .genaiscript/cache/** key: continuous-translation-${{ github.run_id }} restore-keys: | continuous-translation- # this is the translation action - uses: pelikhan/action-continuous-translation@v0 continue-on-error: true # don't stop if translation fails, we still need to store the cache with: github_token: ${{ secrets.GITHUB_TOKEN }} lang: fr,es # commit the generated files - uses: stefanzweifel/git-auto-commit-action@v5 with: file_pattern: "**.md* translations/**" commit_message: "[cai] translated docs" commit_user_name: "genaiscript"
Parameters
Section titled “Parameters”يدعم إجراء pelikhan/action-continuous-translation
في GitHub المعلمات التالية.
جميع المعلمات اختيارية.
القيم الافتراضية موضحة في المرجع أدناه.
with: lang: fr source: en files: README.md instructions: instructions_file: glossary_file: starlight_dir: starlight_base: force: false model_alias: | translate: github:gpt-4o-mini debug: false
راجع النماذج للحصول على مزيد من التفاصيل حول موفرين آخرين مثل OpenAI وAzure OpenAI، وما إلى ذلك.
النوع: string
القيمة الافتراضية: fr
قائمة بأكواد ISO للغات المستهدفة مفصولة بفاصلة (,
) والتي يجب ترجمة الوثائق إليها من اللغة المصدر.
اطلع على قائمة بجميع اللغات المدعومة في ملف models.mts
في المستودع.
source
Section titled “source”النوع: string
القيمة الافتراضية: en
كود ISO للغة المصدر التي تم كتابة المحتوى الرئيسي بها.
النوع: string
القيمة الافتراضية: README.md
قائمة بالملفات التي ستتم معالجتها مفصولة بفاصلة.
instructions
Section titled “instructions”النوع: string
تعليمات إضافية لاستخدام LLM أثناء الترجمة.
instructions_file
Section titled “instructions_file”النوع: string
مسار إلى ملف يحتوي على تعليمات إضافية لاستخدام LLM أثناء الترجمة.
glossary_file
Section titled “glossary_file”النوع: string
مسار إلى ملف يحتوي على مصطلحات القاموس للاستخدام أثناء الترجمة.
translations_dir
Section titled “translations_dir”النوع: string
القيمة الافتراضية: translations
المجلد حيث سيتم تخزين الترجمات.
max_translation_tokens
Section titled “max_translation_tokens”النوع: integer
القيمة الافتراضية: 8000
أقصى عدد من الرموز (Tokens) التي يمكن معالجتها في مكالمة ترجمة باستخدام LLM.
max_validation_tokens
Section titled “max_validation_tokens”النوع: integer
القيمة الافتراضية: 2000
أقصى عدد من الرموز (Tokens) التي يمكن معالجتها في مكالمة تحقق باستخدام LLM.
starlight_dir
Section titled “starlight_dir”النوع: string
المجلد الجذري لوثائق Astro Starlight.
يجب تعيينه إذا تم تعريف خيار starlight_base
.
starlight_base
Section titled “starlight_base”النوع: string
الاسم المستعار الأساسي لوثائق Astro Starlight. إذا لم تقم بتحديد خيار الأساس لـ Astro، فلا تحدد هذا الخيار.
النوع: boolean
القيمة الافتراضية: false
تمكين تسجيل التصحيح. اقرأ المزيد من التفاصيل في وثائق تسجيل GenAIScript.
model_alias
Section titled “model_alias”النوع: string
المثال: translate: github:gpt-4o-mini
تعيين أسماء النماذج إلى ألقابها ككائن YAML. يمكن استخدام ذلك لتحديد النموذج الذي سيتم استخدامه للترجمة المحددة.
github_token
Section titled “github_token”النوع: string
(يفضل أن يكون سرًا)
المثال: ${{ secrets.GITHUB_TOKEN }}
رمز GitHub الخاص بك GitHub token مع إذن models: read
على الأقل.
اقرأ المزيد من التفاصيل في وثائق أذونات نماذج GitHub الخاصة بـ GenAIScript.
Other LLM providers
Section titled “Other LLM providers”يمكنك أيضًا استخدام مزودي LLM الآخرين مثل OpenAI وAzure OpenAI وما إلى ذلك. راجع النماذج للحصول على مزيد من التفاصيل حول الموفرين الآخرين.