co-op-translator

ترجمه پروژه خود با استفاده از Co-op Translator

Co-op Translator یک ابزار خط فرمان (CLI) است که به شما کمک می‌کند فایل‌های مارک‌داون و تصویر پروژه‌تان را به زبان‌های مختلف ترجمه کنید. در این بخش نحوه استفاده از این ابزار، گزینه‌های مختلف خط فرمان و مثال‌هایی برای موارد کاربردی گوناگون شرح داده شده است.

[!NOTE] برای مشاهده فهرست کامل دستورات و توضیحات دقیق هر کدام، لطفاً به بخش Command reference مراجعه کنید.


سناریوها و دستورات نمونه

در ادامه چند مورد رایج از کاربردهای Co-op Translator به همراه دستورات مناسب برای اجرای آن‌ها آورده شده است.

۱. ترجمه پایه (یک زبان)

برای ترجمه کل پروژه (فایل‌های مارک‌داون و تصاویر) به یک زبان واحد، مثلاً کره‌ای، از دستور زیر استفاده کنید:

translate -l "ko"

این دستور تمام فایل‌های مارک‌داون و تصاویر را به زبان کره‌ای ترجمه می‌کند و ترجمه‌های جدید را بدون حذف ترجمه‌های قبلی اضافه می‌کند.

[!TIP]

می‌خواهید بدانید چه کدهای زبانی در Co-op Translator پشتیبانی می‌شوند؟ به بخش Supported Languages در مخزن مراجعه کنید.

مثال در Phi-3 CookBook

در Phi-3 CookBook، از روش زیر برای افزودن ترجمه کره‌ای به فایل‌های مارک‌داون و تصاویر موجود استفاده کردم.

(.venv) C:\Users\sms79\dev\Phi-3CookBook>translate -l"ko"
Translating images: 100%|███████████████████████████████████████████████████| 276/276 [1:09:56<00:00, 15.37s/it]
Translating markdown files: 100%|████████████████████████████████████████████████| 153/153 [1:43:07<00:00, 241.31s/it]

۲. ترجمه به چند زبان

برای ترجمه پروژه به چند زبان مختلف (مثلاً اسپانیایی، فرانسوی و آلمانی)، از این دستور استفاده کنید:

translate -l "es fr de"

این دستور پروژه را به زبان‌های اسپانیایی، فرانسوی و آلمانی ترجمه می‌کند و ترجمه‌های جدید را بدون بازنویسی ترجمه‌های قبلی اضافه می‌کند.

مثال در Phi-3 CookBook

در Phi-3 CookBook، پس از دریافت آخرین تغییرات برای به‌روزرسانی جدیدترین کامیت‌ها، از روش زیر برای ترجمه فایل‌های مارک‌داون و تصاویر تازه اضافه شده استفاده کردم.

(.venv) C:\Users\sms79\dev\Phi-3CookBook>translate -l"ko ja zh tw es fr" -a
Translating images: 100%|███████████████████████████████████████████████████| 273/273 [1:09:56<00:00, 15.37s/it]
Translating markdown files: 100%|████████████████████████████████████████████████| 6/6 [24:07<00:00, 241.31s/it]

[!NOTE] معمولاً توصیه می‌شود یک زبان را در هر بار ترجمه کنید، اما در مواردی مانند این که تغییرات خاصی باید اضافه شود، ترجمه همزمان چند زبان می‌تواند به صرفه باشد.

۳. به‌روزرسانی ترجمه‌ها (حذف ترجمه‌های قبلی)

برای به‌روزرسانی ترجمه‌های موجود (یعنی حذف ترجمه‌های فعلی و جایگزینی آن‌ها با ترجمه‌های جدید)، از گزینه -u استفاده کنید. این گزینه تمام ترجمه‌های موجود برای زبان‌های مشخص شده را حذف و دوباره ترجمه می‌کند.

translate -l "ko" -u

هشدار: این دستور قبل از حذف ترجمه‌های موجود، از شما تأیید می‌خواهد.

مثال در Phi-3 CookBook

در Phi-3 CookBook، از روش زیر برای به‌روزرسانی تمام فایل‌های ترجمه شده به زبان اسپانیایی استفاده کردم. توصیه می‌کنم وقتی تغییرات قابل توجهی در محتوای اصلی در چندین فایل مارک‌داون وجود دارد، از این روش استفاده کنید. اگر فقط چند فایل ترجمه شده نیاز به به‌روزرسانی دارند، بهتر است آن فایل‌ها را به صورت دستی حذف کرده و سپس با روش -a ترجمه‌های به‌روزشده را اضافه کنید.

(.venv) C:\Users\sms79\dev\Phi-3CookBook>translate -l "es" -u
Warning: The update command will delete all existing translations for 'es' and re-translate everything.
Do you want to continue? Type 'yes' to proceed: yes
Proceeding with update...
Translating images: 100%|████████████████████████████████████████████| 150/150 [43:46<00:00, 15.55s/it]
Translating markdown files: 100%|███████████████████████████████████| 95/95 [1:40:27<00:00, 125.62s/it]

۵. ترجمه فقط تصاویر

برای ترجمه فقط فایل‌های تصویری پروژه، از گزینه -img استفاده کنید:

translate -l "ko" -img

این دستور فقط تصاویر را به زبان کره‌ای ترجمه می‌کند و هیچ فایلی از نوع مارک‌داون را تغییر نمی‌دهد.

۶. ترجمه فقط فایل‌های مارک‌داون

برای ترجمه فقط فایل‌های مارک‌داون پروژه، از گزینه -md استفاده کنید:

translate -l "ko" -md

۷. بررسی خطا در فایل‌های ترجمه شده

اگر می‌خواهید فایل‌های ترجمه شده را برای خطا بررسی کنید و در صورت نیاز ترجمه را دوباره انجام دهید، از گزینه -chk استفاده کنید:

translate -l "ko" -chk

این دستور فایل‌های مارک‌داون ترجمه شده را اسکن می‌کند و برای فایل‌هایی که خطا دارند، ترجمه را مجدداً انجام می‌دهد.

مثال در Phi-3 CookBook

در Phi-3 CookBook، از روش زیر برای بررسی خطاهای ترجمه در فایل‌های کره‌ای استفاده کردم و به صورت خودکار ترجمه فایل‌هایی که مشکل داشتند را دوباره اجرا کردم.

(.venv) C:\Users\sms79\dev\Phi-3CookBook>translate -l"ko" -chk 
Checking translated files for errors in ko...
Checking files for ko: 100%|██████████████████████████████████████████████████| 95/95 [00:01<00:00, 65.47file/s]
Retrying vsc-extension-quickstart.md for ko:   0%|                                     | 0/17 [00:00<?, ?file/s] 

این گزینه خطاهای ترجمه را بررسی می‌کند. در حال حاضر، اگر تفاوت تعداد شکست خط بین فایل اصلی و ترجمه شده بیش از شش باشد، آن فایل به عنوان دارای خطای ترجمه علامت‌گذاری می‌شود. در آینده قصد دارم این معیار را به گونه‌ای انعطاف‌پذیرتر بهبود دهم.

برای مثال، این روش برای شناسایی بخش‌های حذف شده یا ترجمه‌های خراب مفید است و به صورت خودکار ترجمه آن فایل‌ها را دوباره انجام می‌دهد.

اما اگر قبلاً می‌دانید کدام فایل‌ها مشکل دارند، بهتر است آن‌ها را به صورت دستی حذف کنید و سپس با گزینه -a option to re-translate them.

8. Debug Mode

To enable detailed logging for troubleshooting, use the -d دوباره ترجمه را اجرا کنید:

translate -l "ko" -d

این دستور ترجمه را در حالت اشکال‌زدایی اجرا می‌کند و اطلاعات لاگ بیشتری ارائه می‌دهد که می‌تواند در شناسایی مشکلات هنگام ترجمه کمک کند.

مثال در Phi-3 CookBook

در Phi-3 CookBook با مشکلی مواجه شدم که ترجمه‌هایی که لینک‌های زیادی در فایل‌های مارک‌داون داشتند، باعث خطاهای قالب‌بندی مثل ترجمه‌های ناقص و نادیده گرفتن شکست خط می‌شدند. برای تشخیص این مشکل، از گزینه -d استفاده کردم تا روند ترجمه را مشاهده کنم.

(.venv) C:\Users\sms79\dev\Phi-3CookBook>translate -l "ko" -d
DEBUG:openai._base_client:Request options: {'method': 'post', 'url': '/chat/completions', 'headers': {'api-key': 'af04e0bea45747d8a7b8c131c1971044'}, 'files': None, 'json_data': {'messages': [{'role': 'user', 'content': "Translate the following text to ko. NEVER ADD ANY EXTRA CONTENT OUTSIDE THE TRANSLATION. TRANSLATE ONLY WHAT IS GIVEN TO YOU.. MAINTAIN MARKDOWN FORMAT\n\n# Phi-3 Cookbook: Hands-On Examples with Microsoft's Phi-3 Models [![Open and use the samples in GitHub Codespaces](https://github.com/codespaces/badge.svg)](https://codespaces.new/microsoft/phi-3cookbook) [![Open in Dev Containers](https://img.shields.io/static/v1?style=for-the-badge&label=Dev%
...

۹. ترجمه همه زبان‌ها

اگر می‌خواهید پروژه را به تمام زبان‌های پشتیبانی شده ترجمه کنید، از کلیدواژه all استفاده کنید.

[!WARNING] ترجمه همزمان همه زبان‌ها ممکن است بسته به اندازه پروژه زمان زیادی ببرد. برای مثال، ترجمه Phi-3 CookBook به زبان اسپانیایی حدود ۲ ساعت طول کشید. با توجه به این حجم، مدیریت ۲۰ زبان توسط یک نفر عملی نیست. توصیه می‌شود کار بین چند نفر تقسیم شود، به طوری که هر فرد مسئول یک یا دو زبان باشد و ترجمه‌ها به تدریج به‌روزرسانی شوند.

translate -l "all"

این دستور پروژه را به تمام زبان‌های موجود ترجمه می‌کند. اگر ادامه دهید، ترجمه ممکن است بسته به اندازه پروژه زمان قابل توجهی طول بکشد.

[!TIP]

حذف دستی فایل‌های ترجمه شده (اختیاری)

اکنون فایل‌های ترجمه شده به صورت خودکار هنگام به‌روزرسانی فایل منبع شناسایی و پاک می‌شوند.

با این حال، اگر بخواهید به صورت دستی ترجمه‌ای را به‌روزرسانی کنید - مثلاً برای بازسازی یک فایل خاص یا نادیده گرفتن رفتار سیستم - می‌توانید از دستور زیر برای حذف تمام نسخه‌های آن فایل در پوشه‌های زبان استفاده کنید.

در ویندوز:

۱. استفاده از Command Prompt:

۲. استفاده از PowerShell:

On macOS/Linux:

  1. Using Terminal:
    • Open Terminal.
    • Navigate to the directory with cd.
    • Use the find را جایگزین کنید:
       find . -type f -name "*filename*" -delete
      

      دستور filename with the specific name.

Always double-check the files before deleting to avoid accidental loss.

Once you have deleted the files which need to be replace simply rerun your translate -l را برای به‌روزرسانی جدیدترین تغییرات فایل‌ها استفاده کنید.

سلب مسئولیت:
این سند با استفاده از سرویس ترجمه هوش مصنوعی Co-op Translator ترجمه شده است. در حالی که ما در تلاش برای دقت هستیم، لطفاً توجه داشته باشید که ترجمه‌های خودکار ممکن است شامل خطاها یا نواقصی باشند. سند اصلی به زبان بومی خود به عنوان منبع معتبر در نظر گرفته شود. برای اطلاعات حیاتی، ترجمه حرفه‌ای انسانی توصیه می‌شود. ما مسئول هیچ گونه سوءتفاهم یا برداشت نادرستی که از استفاده این ترجمه به وجود آید، نیستیم.