co-op-translator

Co-op Translator

Легко автоматизируйте и поддерживайте переводы вашего образовательного контента на GitHub на нескольких языках по мере развития вашего проекта.

Python 3.10–3.12 Python package License: MIT Downloads Downloads Container: GHCR Code style: black

GitHub contributors GitHub issues GitHub pull-requests PRs Welcome

🌐 Поддержка нескольких языков

Поддерживается Co-op Translator

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

Предпочитаете клонировать локально?

В этом репозитории есть более 50 переводов на различные языки, что значительно увеличивает размер загрузки. Чтобы клонировать без переводов, используйте sparse checkout:

Bash / macOS / Linux:

git clone --filter=blob:none --sparse https://github.com/Azure/co-op-translator.git
cd co-op-translator
git sparse-checkout set --no-cone '/*' '!translations' '!translated_images'

CMD (Windows):

git clone --filter=blob:none --sparse https://github.com/Azure/co-op-translator.git
cd co-op-translator
git sparse-checkout set --no-cone "/*" "!translations" "!translated_images"

Это даст вам всё необходимое для прохождения курса с гораздо более быстрой загрузкой.

GitHub watchers GitHub forks GitHub stars

Microsoft Foundry Discord

Open in GitHub Codespaces

Обзор

Co-op Translator помогает вам без труда локализовать ваш образовательный контент на GitHub на несколько языков.
Когда вы обновляете свои Markdown файлы, изображения или ноутбуки, переводы автоматически синхронизируются, гарантируя актуальность и точность контента для учащихся по всему миру.

Пример организации переведённого контента:

Example

Как управляется состояние перевода

Co-op Translator управляет переведённым контентом как версионированными артефактами программного обеспечения,
а не как статическими файлами.

Инструмент отслеживает состояние переведённых Markdown, изображений и ноутбуков
с помощью метаданных, заданных для каждого языка.

Этот подход позволяет Co-op Translator:

Моделируя переводы как управляемые артефакты,
рабочие процессы перевода естественно согласуются с современными
практиками управления зависимостями и артефактами программного обеспечения.

Как управляется состояние перевода

Быстрый старт

# Создайте и активируйте виртуальное окружение (рекомендуется)
python -m venv .venv
# Windows
.venv\Scripts\activate
# macOS/Linux
source .venv/bin/activate
# Установите пакет
pip install co-op-translator
# Перевести
translate -l "ko ja fr" -md

Docker:

# Загрузить публичный образ из GHCR
docker pull ghcr.io/azure/co-op-translator:latest
# Запустить с текущей папкой в качестве монтирования и предоставленным .env (Bash/Zsh)
docker run --rm -it --env-file .env -v "${PWD}:/work" ghcr.io/azure/co-op-translator:latest -l "ko ja fr" -md

Минимальная настройка

  1. Убедитесь, что у вас установлена поддерживаемая версия Python (в настоящее время 3.10-3.12). В poetry (pyproject.toml) это происходит автоматически.
  2. Создайте файл .env на основе шаблона: .env.template
  3. Настройте одного провайдера LLM (Azure OpenAI или OpenAI)
  4. (Опционально) Для перевода изображений (-img) настройте Azure AI Vision
  5. (Опционально) Вы можете настроить несколько наборов учетных данных, продублировав переменные с суффиксами _1, _2 и т.д. Все переменные в наборе должны иметь одинаковый суффикс.
  6. (Рекомендуется) Очистите предыдущие переводы, чтобы избежать конфликтов (например, translations/)
  7. (Рекомендуется) Добавьте раздел перевода в README, используя шаблон README languages template
  8. Смотрите: Настройка Azure AI

Использование

Перевод всех поддерживаемых типов:

translate -l "ko ja"

Только Markdown:

translate -l "de" -md

Markdown + изображения:

translate -l "pt" -md -img

Только ноутбуки:

translate -l "zh" -nb

Дополнительные флаги: Справочник команд

Возможности

Документация

Руководство для Microsoft

[!NOTE] Только для поддерживающих репозитории Microsoft “For Beginners”.

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

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

Исследуйте образовательный контент Microsoft на вашем языке

Видео презентации

👉 Нажмите на изображение ниже, чтобы посмотреть на YouTube.

Внесение вклада

Этот проект приветствует вклады и предложения. Хотите помочь развитию Azure Co-op Translator? Пожалуйста, ознакомьтесь с CONTRIBUTING.md для инструкций о том, как сделать Co-op Translator более доступным.

Участники проекта

co-op-translator contributors

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

Этот проект принял Кодекс поведения с открытым исходным кодом Microsoft. Для получения дополнительной информации смотрите Часто задаваемые вопросы о Кодексе поведения или свяжитесь с opencode@microsoft.com по любым дополнительным вопросам или комментариям.

Ответственный ИИ

Microsoft стремится помочь нашим клиентам ответственно использовать наши продукты ИИ, делиться нашим опытом и строить партнёрства на основе доверия с помощью таких инструментов, как Transparency Notes и Impact Assessments. Многие из этих ресурсов можно найти по адресу https://aka.ms/RAI. Подход Microsoft к ответственному ИИ основан на наших принципах ИИ: справедливость, надежность и безопасность, конфиденциальность и безопасность, инклюзивность, прозрачность и подотчетность.

Крупномасштабные модели естественного языка, изображений и речи — такие, как использованные в этом примере — потенциально могут вести себя несправедливо, ненадежно или оскорбительно, что, в свою очередь, может причинять вред. Пожалуйста, ознакомьтесь с Прозрачностью сервиса Azure OpenAI, чтобы быть проинформированными о рисках и ограничениях.

Рекомендуемый подход к снижению этих рисков — включить в архитектуру систему безопасности, способную обнаруживать и предотвращать вредное поведение. Azure AI Content Safety предоставляет независимый уровень защиты, способный обнаруживать вредоносный пользовательский и сгенерированный ИИ контент в приложениях и сервисах. Azure AI Content Safety включает текстовые и графические API, которые позволяют обнаруживать вредоносные материалы. У нас также есть интерактивная Content Safety Studio, которая позволяет просматривать, изучать и пробовать пример кода для обнаружения вредоносного контента в разных форматах. Следующая документация быстрого начала поможет вам сделать запросы к сервису.

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

Вы можете оценить свое AI-приложение в вашей среде разработки с помощью prompt flow SDK. Имея тестовый набор данных или цель, генерации вашего генеративного AI приложения количественно измеряются встроенными или пользовательскими оценщиками по вашему выбору. Чтобы начать работу с prompt flow sdk для оценки вашей системы, вы можете следовать руководству быстрого старта. После завершения оценки, вы можете визуализировать результаты в Azure AI Studio.

Торговые марки

В этом проекте могут содержаться торговые марки или логотипы проектов, продуктов или сервисов. Авторизованное использование торговых марок или логотипов Microsoft регулируется и должно соответствовать Руководству Microsoft по торговым маркам и брендам. Использование торговых марок или логотипов Microsoft в изменённых версиях этого проекта не должно вызывать путаницу или подразумевать спонсорство Microsoft. Любое использование торговых марок или логотипов третьих сторон подчиняется правилам этих сторон.

Получение помощи

Если вы застряли или у вас есть вопросы по созданию AI-приложений, присоединяйтесь:

Microsoft Foundry Discord

Если у вас есть отзывы о продукте или ошибки при создании, посетите:

Microsoft Foundry Developer Forum


Отказ от ответственности:
Этот документ был переведен с помощью сервиса автоматического перевода Co-op Translator. Несмотря на наши усилия обеспечить точность, просим учитывать, что автоматический перевод может содержать ошибки или неточности. Оригинальный документ на его исходном языке следует считать авторитетным источником. Для критически важной информации рекомендуется использовать профессиональный человеческий перевод. Мы не несем ответственности за любые недоразумения или неправильные толкования, возникшие в результате использования данного перевода.