co-op-translator

Logo

Co-op Translator: Автоматизуйте переклад освітньої документації без зусиль

Легко автоматизуйте переклад вашої документації на кілька мов, щоб охопити глобальну аудиторію.

Python package License: MIT Downloads Downloads Code style: black

GitHub contributors GitHub issues GitHub pull-requests PRs Welcome

Підтримка мов за допомогою Co-op Translator

French | Spanish | German | Russian | Arabic | Persian (Farsi) | Urdu | Chinese (Simplified) | Chinese (Traditional, Macau) | Chinese (Traditional, Hong Kong) | Chinese (Traditional, Taiwan) | Japanese | Korean | Hindi | Bengali | Marathi | Nepali | Punjabi (Gurmukhi) | Portuguese (Portugal) | Portuguese (Brazil) | Italian | Polish | Turkish | Greek | Thai | Swedish | Danish | Norwegian | Finnish | Dutch | Hebrew | Vietnamese | Indonesian | Malay | Tagalog (Filipino) | Swahili | Hungarian | Czech | Slovak | Romanian | Bulgarian | Serbian (Cyrillic) | Croatian | Slovenian | Ukrainian | Burmese (Myanmar)

[!NOTE] Це поточні переклади вмісту цього репозиторію. Для повного списку мов, підтримуваних Co-op Translator, будь ласка, дивіться розділ Language Support.

GitHub watchers GitHub forks GitHub stars

Azure AI Community Discord

Open in GitHub Codespaces Open in Dev Containers

Огляд: Оптимізуйте переклад вашого навчального контенту

Мовні бар’єри суттєво ускладнюють доступ до цінних освітніх ресурсів і технічних знань для учнів та розробників у всьому світі. Це обмежує участь і уповільнює темп глобальних інновацій та навчання.

Co-op Translator виник через необхідність розв’язати проблему неефективного ручного перекладу великомасштабних навчальних серій Microsoft (наприклад, посібників «Для початківців»). Він перетворився на зручний та потужний інструмент, створений, щоб усунути ці бар’єри для всіх. Завдяки якісному автоматичному перекладу через CLI та GitHub Actions, Co-op Translator дає змогу освітянам, студентам, дослідникам і розробникам у всьому світі ділитися знаннями та отримувати їх без мовних обмежень.

Дивіться, як Co-op Translator організовує перекладений навчальний контент:

Example

Markdown-файли та текст на зображеннях автоматично перекладаються і акуратно розподіляються по папках, призначених для конкретних мов.

Відкрийте світовий доступ до вашого навчального контенту вже сьогодні з Co-op Translator!

Підтримка глобального доступу до навчальних ресурсів Microsoft

Co-op Translator допомагає подолати мовний бар’єр для ключових освітніх ініціатив Microsoft, автоматизуючи процес перекладу репозиторіїв, що обслуговують глобальну спільноту розробників. Приклади, які вже використовують Co-op Translator:

Generative-AI-for-beginners ML-For-Beginners AI-For-Beginners ai-agents-for-beginners PhiCookBook Generative-AI-for-beginners-dotnet

Ключові можливості

Як це працює

Architecture

Co-op Translator бере Markdown-файли та зображення з вашої папки проєкту і обробляє їх так:

  1. Витяг тексту: Витягує текст із Markdown-файлів і, якщо налаштовано (наприклад, з Azure AI Vision), текст, вбудований у зображення.
  2. AI переклад: Надсилає витягнутий текст у налаштовану LLM (Azure OpenAI, OpenAI тощо) для перекладу.
  3. Збереження результату: Зберігає перекладені Markdown-файли та зображення (з перекладеним текстом) у папки для конкретних мов, зберігаючи оригінальне форматування.

Початок роботи

Почніть швидко з CLI або налаштуйте повну автоматизацію через GitHub Actions. Оберіть підхід, який найкраще підходить для вашого робочого процесу:

  1. Командний рядок (CLI) — для одноразових перекладів або ручного контролю
  2. GitHub Actions — для автоматичного перекладу при кожному пуші

[!NOTE] Хоч цей посібник і зосереджений на ресурсах Azure, ви можете використовувати будь-яку підтримувану мовну модель.

Підтримка мов

Co-op Translator підтримує широкий спектр мов, щоб допомогти вам охопити глобальну аудиторію. Ось що потрібно знати:

Швидка довідка

Мова Код Мова Код Мова Код
Arabic ar Bengali bn Bulgarian bg
Burmese (Myanmar) my Chinese (Simplified) zh Chinese (Traditional, HK) hk
Chinese (Traditional, Macau) mo Chinese (Traditional, TW) tw Croatian hr
Czech cs Danish da Dutch nl
Finnish fi French fr German de
Greek el Hebrew he Hindi hi
Hungarian hu Indonesian id Italian it
Japanese ja Korean ko Malay ms
Marathi mr Nepali ne Norwegian no
Persian (Farsi) fa Polish pl Portuguese (Brazil) br
Portuguese (Portugal) pt Punjabi (Gurmukhi) pa Romanian ro
Russian ru Serbian (Cyrillic) sr Slovak sk
Slovenian sl Spanish es Swahili sw
Swedish sv Tagalog (Filipino) tl Thai th
Turkish tr Ukrainian uk Urdu ur
Vietnamese vi

Використання кодів мов

При використанні Co-op Translator потрібно вказувати мови за їх кодами. Наприклад:

# Translate to French, Spanish, and German
translate -l "fr es de"

# Translate to Chinese (Simplified) and Japanese
translate -l "zh ja"

[!NOTE] Для детальної технічної інформації про підтримку мов, включно з:

Дивіться наш Supported Languages Documentation.

Підтримувані моделі та сервіси

Тип Назва
Language Model Azure OpenAI OpenAI
AI Vision Azure AI Vision

[!NOTE] Якщо сервіс AI Vision недоступний, co-op translator переключиться в Markdown-only mode.

Початкове налаштування

Перед початком вам потрібно підготувати такі ресурси:

  1. Ресурс мовної моделі (обов’язково):
    • Azure OpenAI (рекомендовано) — забезпечує якісний переклад з корпоративною надійністю
    • OpenAI — альтернативний варіант, якщо у вас немає доступу до Azure
    • Для детальної інформації про підтримувані моделі дивіться Supported Models and Services
  2. Ресурс AI Vision (за бажанням):
    • Azure AI Vision — дозволяє перекладати текст на зображеннях
    • Якщо не налаштовано, перекладач автоматично використовуватиме Markdown-only mode
    • Рекомендовано для проєктів із зображеннями, що містять текст для перекладу
  3. Кроки налаштування:
    • Дотримуйтесь нашого Azure AI setup guide для детальних інструкцій
    • Створіть файл .env з вашими API ключами та кінцевими точками (див. розділ Quick Start)
    • Переконайтеся, що у вас є необхідні дозволи та квоти для обраних сервісів

Підготовка проєкту перед перекладом

Перед початком перекладу виконайте такі дії для підготовки проєкту:

  1. Підготуйте README:
    • Додайте таблицю перекладів у ваш README.md для посилань на перекладені версії
    • Приклад формату:

      
      ### 🌐 Multi-Language Support
           
      [French](/co-op-translator/translations/fr/) | [Spanish](/co-op-translator/translations/es/) | [German](/co-op-translator/translations/de/) | [Russian](/co-op-translator/translations/ru/) | [Arabic](/co-op-translator/translations/ar/) | [Persian (Farsi)](/co-op-translator/translations/fa/) | [Urdu](/co-op-translator/translations/ur/) | [Chinese (Simplified)](/co-op-translator/translations/zh/) | [Chinese (Traditional, Macau)](/co-op-translator/translations/mo/) | [Chinese (Traditional, Hong Kong)](/co-op-translator/translations/hk/) | [Chinese (Traditional, Taiwan)](/co-op-translator/translations/tw/) | [Japanese](/co-op-translator/translations/ja/) | [Korean](/co-op-translator/translations/ko/) | [Hindi](/co-op-translator/translations/hi/) | [Bengali](/co-op-translator/translations/bn/) | [Marathi](/co-op-translator/translations/mr/) | [Nepali](/co-op-translator/translations/ne/) | [Punjabi (Gurmukhi)](/co-op-translator/translations/pa/) | [Portuguese (Portugal)](/co-op-translator/translations/pt/) | [Portuguese (Brazil)](/co-op-translator/translations/br/) | [Italian](/co-op-translator/translations/it/) | [Polish](/co-op-translator/translations/pl/) | [Turkish](/co-op-translator/translations/tr/) | [Greek](/co-op-translator/translations/el/) | [Thai](/co-op-translator/translations/th/) | [Swedish](/co-op-translator/translations/sv/) | [Danish](/co-op-translator/translations/da/) | [Norwegian](/co-op-translator/translations/no/) | [Finnish](/co-op-translator/translations/fi/) | [Dutch](/co-op-translator/translations/nl/) | [Hebrew](/co-op-translator/translations/he/) | [Vietnamese](/co-op-translator/translations/vi/) | [Indonesian](/co-op-translator/translations/id/) | [Malay](/co-op-translator/translations/ms/) | [Tagalog (Filipino)](/co-op-translator/translations/tl/) | [Swahili](/co-op-translator/translations/sw/) | [Hungarian](/co-op-translator/translations/hu/) | [Czech](/co-op-translator/translations/cs/) | [Slovak](/co-op-translator/translations/sk/) | [Romanian](/co-op-translator/translations/ro/) | [Bulgarian](/co-op-translator/translations/bg/) | [Serbian (Cyrillic)](/co-op-translator/translations/sr/) | [Croatian](/co-op-translator/translations/hr/) | [Slovenian](/co-op-translator/translations/sl/) | [Ukrainian](/co-op-translator/translations/uk/) | [Burmese (Myanmar)](/co-op-translator/translations/my/) 
          
      
  2. Очистіть існуючі переклади (за потреби):
    • Видаліть усі існуючі папки з перекладами (наприклад, translations/)
    • Видаліть старі файли перекладу для чистого старту
    • Це допоможе уникнути конфліктів із новим процесом перекладу

Швидкий старт: Командний рядок

Для швидкого початку з командного рядка:

  1. Створіть віртуальне середовище:

     python -m venv .venv
    
  2. Активуйте віртуальне середовище:

    • Для Windows:
     .venv\scripts\activate
    
    • Для Linux/macOS:
     source .venv/bin/activate
    
  3. Встановіть пакет:

     pip install co-op-translator
    
  4. Налаштуйте облікові дані:

    • Створіть файл .env file in your project’s root directory.
    • Copy the contents from the .env.template file into your new .env file.
    • Fill in the required API keys and endpoint information in your .env file.
  5. Run Translation:

    • Navigate to your project’s root directory in your terminal.
    • Execute the translate command, specifying target languages with the -l прапорець:
     translate -l "ko ja fr"
    

(Далі текст файлу .env та приклади конфігурації згідно з оригіналом)

GitHub Actions

Для повної автоматизації перекладів через GitHub Actions у вашому репозиторії:

Вирішення проблем і поради

Додаткові ресурси

Відеопрезентації

Дізнайтеся більше про Co-op Translator через наші презентації (натисніть на зображення нижче, щоб переглянути на YouTube):

Підтримайте нас і сприяйте глобальному навчанню

Приєднуйтеся до нас у революції способів поширення освітнього контенту по всьому світу! Поставте ⭐ Co-op Translator на GitHub і підтримайте нашу місію подолання мовних бар’єрів у навчанні та технологіях. Ваша зацікавленість і внески мають велике значення! Ми завжди раді отримувати код та пропозиції щодо функцій.

Внесок у проект

Цей проєкт відкритий для внесків і пропозицій. Хочете допомогти з Azure Co-op Translator? Будь ласка, ознайомтеся з нашим CONTRIBUTING.md, щоб дізнатися, як ви можете зробити Co-op Translator більш доступним.

Учасники проєкту

co-op-translator contributors

Кодекс поведінки

У цьому проєкті застосовується Microsoft Open Source Code of Conduct. Детальніше дивіться у поширених запитаннях щодо Кодексу поведінки або звертайтеся на opencode@microsoft.com з будь-якими додатковими питаннями чи коментарями.

Відповідальний ШІ

Microsoft прагне допомагати клієнтам відповідально використовувати наші продукти штучного інтелекту, ділитися набутими знаннями та будувати довірчі партнерства за допомогою таких інструментів, як Transparency Notes і Impact Assessments. Багато з цих ресурсів доступні за посиланням https://aka.ms/RAI. Підхід Microsoft до відповідального ШІ базується на наших принципах: справедливість, надійність і безпека, конфіденційність і захист, інклюзивність, прозорість і підзвітність.

Великі моделі природної мови, зображень і мови — такі, як у цьому прикладі — можуть потенційно проявляти несправедливу, ненадійну або образливу поведінку, що може призводити до шкоди. Будь ласка, ознайомтеся з Transparency note для Azure OpenAI service, щоб дізнатися про ризики та обмеження.

Рекомендований спосіб зменшення цих ризиків — включити в архітектуру систему безпеки, яка може виявляти та запобігати шкідливій поведінці. Azure AI Content Safety забезпечує незалежний рівень захисту, здатний виявляти шкідливий контент, створений користувачами та ШІ, у застосунках і сервісах. Azure AI Content Safety включає API для тексту та зображень, які дозволяють виявляти шкідливий матеріал. Також є інтерактивна Content Safety Studio, що дозволяє переглядати, досліджувати та випробовувати приклади коду для виявлення шкідливого контенту в різних форматах. Наступна документація швидкого запуску допоможе вам зробити запити до сервісу.

Ще один важливий аспект — загальна продуктивність застосунку. Для мультимодальних і мультимодельних застосунків продуктивність означає, що система працює так, як ви та ваші користувачі очікують, включно з тим, що не генерує шкідливий вміст. Важливо оцінювати продуктивність вашого застосунку, використовуючи метрики якості генерації та ризиків і безпеки.

Ви можете оцінити свій застосунок ШІ у середовищі розробки за допомогою prompt flow SDK. За наявності тестового набору даних або цілі, генерації вашого генеративного застосунку ШІ кількісно оцінюються за допомогою вбудованих або власних оцінювачів. Щоб почати працювати з prompt flow sdk для оцінки вашої системи, дотримуйтеся керівництва швидкого запуску. Після виконання оцінки ви можете візуалізувати результати в Azure AI Studio.

Торговельні марки

Цей проєкт може містити торговельні марки або логотипи проєктів, продуктів чи сервісів. Авторизоване використання торговельних марок або логотипів Microsoft підпорядковується і має відповідати Microsoft’s Trademark & Brand Guidelines. Використання торговельних марок або логотипів Microsoft у змінених версіях цього проєкту не повинно вводити в оману або припускати спонсорство Microsoft. Використання торговельних марок або логотипів третіх сторін підпорядковується політикам відповідних третіх сторін.

Відмова від відповідальності:
Цей документ було перекладено за допомогою сервісу автоматичного перекладу Co-op Translator. Хоча ми прагнемо до точності, просимо враховувати, що автоматичні переклади можуть містити помилки або неточності. Оригінальний документ рідною мовою слід вважати авторитетним джерелом. Для критично важливої інформації рекомендується звертатися до професійного людського перекладу. Ми не несемо відповідальності за будь-які непорозуміння чи неправильні тлумачення, що виникли внаслідок використання цього перекладу.