Skip to content

Latest commit

 

History

History
249 lines (177 loc) · 23 KB

File metadata and controls

249 lines (177 loc) · 23 KB

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:

  • Надежно обнаруживать устаревшие переводы
  • Последовательно обрабатывать Markdown, изображения и ноутбуки
  • Безопасно масштабироваться в больших, быстро развивающихся, многоязычных репозиториях

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

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

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

# Создайте и активируйте виртуальное окружение (рекомендуется)
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

Больше флагов: Командная справка

Особенности

  • Автоматизированный перевод Markdown, ноутбуков и изображений
  • Поддерживает синхронизацию переводов с изменениями источника
  • Работает локально (CLI) или в CI (GitHub Actions)
  • Использует Azure OpenAI или OpenAI; опционально Azure AI Vision для изображений
  • Сохраняет форматирование и структуру Markdown

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

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

Note

Только для кураторов репозиториев Microsoft “Для начинающих”.

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

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

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

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

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

  • Open at Microsoft: Краткое 18-минутное введение и быстрое руководство по использованию Co-op Translator.

    Open at Microsoft

Участие

Этот проект приветствует ваши идеи и предложения. Хотите внести вклад в 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, которая позволяет просматривать, исследовать и пробовать пример кода для обнаружения вредоносного контента в разных модальностях. Следующая документация по быстрому старту проведет вас через процесс отправки запросов к сервису.

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

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

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

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

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

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

Microsoft Foundry Discord

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

Microsoft Foundry Developer Forum


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