Skip to content

Latest commit

 

History

History
248 lines (176 loc) · 18 KB

File metadata and controls

248 lines (176 loc) · 18 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以上の言語翻訳が含まれており、ダウンロードサイズが大幅に増加します。翻訳を含めずにクローンするには、スパースチェックアウトを使用してください:

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.template を使用して .env ファイルを作成します。
  3. LLMプロバイダー(Azure OpenAIまたはOpenAI)を1つ設定します。
  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: Co-op Translatorの簡単な18分間の紹介とクイックガイド。

    Open at Microsoft

貢献について

このプロジェクトでは貢献や提案を歓迎しています。Azure Co-op Translatorに貢献したい方は、CONTRIBUTING.md をご覧ください。Co-op Translator をより使いやすくするためにあなたも手助けできます。

貢献者一覧

co-op-translator contributors

行動規範

このプロジェクトは Microsoft Open Source Code of Conduct を採用しています。 詳細については Code of Conduct FAQ をご覧いただくか、 ご質問やご意見がある場合は opencode@microsoft.com までご連絡ください。

責任あるAI

Microsoftは、お客様が当社のAI製品を責任を持って使用できるよう支援し、学びを共有し、Transparency NotesやImpact Assessmentsなどのツールを通じて信頼に基づくパートナーシップを構築することに取り組んでいます。これらの多くのリソースは https://aka.ms/RAI にてご覧いただけます。
Microsoftの責任あるAIへのアプローチは、公平性、信頼性と安全性、プライバシーとセキュリティ、包括性、透明性、説明責任というAIの原則に根ざしています。

このサンプルで使用されているような大規模な自然言語、画像、音声モデルは、不公平、不確実、または不快な動作を示す可能性があり、結果として害を及ぼすことがあります。リスクや制限については、Azure OpenAI service Transparency note をご参照ください。

これらのリスクを軽減する推奨される方法は、害を及ぼす行動を検出・防止できる安全システムをアーキテクチャに組み込むことです。Azure AI Content Safety は、アプリケーションやサービス内のユーザー生成コンテンツやAI生成コンテンツの害を検出できる独立した保護レイヤーを提供します。Azure AI Content Safetyはテキストおよび画像APIを含み、有害な素材を検出することができます。また、異なるモダリティにわたる有害コンテンツの検出サンプルコードを表示、探索、試すことができるインタラクティブなContent Safety Studioも提供しています。以下の クイックスタートドキュメント では、サービスへのリクエストの方法を案内しています。

別の考慮すべき点として、アプリケーション全体のパフォーマンスがあります。マルチモーダルかつマルチモデルのアプリケーションでは、パフォーマンスとは、システムがあなたやユーザーの期待通りに動作し、有害な出力を生成しないことを意味します。生成品質およびリスクと安全性の指標 を使用して、全体のアプリケーションのパフォーマンスを評価することが重要です。

開発環境でAIアプリケーションを評価するには、prompt flow SDK を使うことができます。テストデータセットまたは目標を指定すると、生成型AIアプリケーションの生成物は組み込み評価器または任意のカスタム評価器で定量的に測定されます。prompt flow sdkでシステム評価を開始するには、クイックスタートガイド に従ってください。評価実行を完了すると、Azure AI Studioで結果を可視化 できます。

商標

このプロジェクトには、プロジェクト、製品、サービスの商標やロゴが含まれている場合があります。
Microsoftの商標やロゴの使用は Microsoft's Trademark & Brand Guidelines に従う必要があります。
本プロジェクトの変更版においてMicrosoftの商標やロゴを使用する場合、混同やMicrosoftのスポンサーシップを示唆しないようにしてください。
第三者の商標やロゴの使用は、それら第三者のポリシーに従う必要があります。

ヘルプを得るには

もし行き詰まったり、AIアプリ構築の質問がある場合は、以下に参加してください:

Microsoft Foundry Discord

製品のフィードバックや構築中のエラーがある場合は、こちらをご利用ください:

Microsoft Foundry Developer Forum


免責事項:
本書類は AI 翻訳サービス Co-op Translator を使用して翻訳されています。正確性を期していますが、自動翻訳には誤りや不正確な部分が含まれている可能性があります。原文の言語で記載された元の文書が正式な情報源とみなされるべきです。重要な情報については、専門の人翻訳を推奨します。本翻訳の使用に起因するいかなる誤解や誤訳についても責任を負いかねます。