Skip to content

Latest commit

 

History

History
249 lines (177 loc) · 17.5 KB

File metadata and controls

249 lines (177 loc) · 17.5 KB

Co-op Translator

Automatisez et maintenez facilement les traductions de votre contenu éducatif GitHub en plusieurs langues au fur et à mesure de l'évolution de votre projet.

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

🌐 Support multilingue

Pris en charge par 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

Vous préférez cloner localement ?

Ce dépôt inclut plus de 50 traductions de langues, ce qui augmente significativement la taille du téléchargement. Pour cloner sans les traductions, utilisez le 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"

Cela vous donne tout ce dont vous avez besoin pour suivre le cours avec un téléchargement beaucoup plus rapide.

GitHub watchers GitHub forks GitHub stars

Microsoft Foundry Discord

Open in GitHub Codespaces

Présentation

Co-op Translator vous aide à localiser facilement votre contenu éducatif GitHub en plusieurs langues.
Lorsque vous mettez à jour vos fichiers Markdown, images ou notebooks, les traductions restent automatiquement synchronisées, garantissant que votre contenu reste précis et à jour pour les apprenants du monde entier.

Exemple d'organisation du contenu traduit :

Example

Comment l’état des traductions est géré

Co-op Translator gère le contenu traduit comme des artefacts logiciels versionnés,
pas comme des fichiers statiques.

L’outil suit l’état des traductions des fichiers Markdown, images et notebooks
en utilisant des métadonnées spécifiques à chaque langue.

Cette conception permet à Co-op Translator de :

  • Détecter de manière fiable les traductions obsolètes
  • Traiter Markdown, images et notebooks de manière cohérente
  • Monter en charge en toute sécurité sur de grands référentiels multilingues et en évolution rapide

En modélisant les traductions comme des artefacts gérés,
les flux de travail de traduction s’alignent naturellement avec les pratiques modernes
de gestion des dépendances et des artefacts logiciels.

Comment l’état des traductions est géré

Démarrage rapide

# Créer et activer un environnement virtuel (recommandé)
python -m venv .venv
# Windows
.venv\Scripts\activate
# macOS/Linux
source .venv/bin/activate
# Installer le paquet
pip install co-op-translator
# Traduire
translate -l "ko ja fr" -md

Docker :

# Récupérer l'image publique depuis GHCR
docker pull ghcr.io/azure/co-op-translator:latest
# Exécuter avec le dossier courant monté et le fichier .env fourni (Bash/Zsh)
docker run --rm -it --env-file .env -v "${PWD}:/work" ghcr.io/azure/co-op-translator:latest -l "ko ja fr" -md

Configuration minimale

  1. Assurez-vous de disposer d’une version de Python prise en charge (actuellement 3.10–3.12). Dans poetry (pyproject.toml) cela est géré automatiquement.
  2. Créez un fichier .env en utilisant le modèle : .env.template
  3. Configurez un fournisseur LLM (Azure OpenAI ou OpenAI)
  4. (Optionnel) Pour la traduction d’images (-img), configurez Azure AI Vision
  5. (Optionnel) Vous pouvez configurer plusieurs jeux d’identifiants en dupliquant les variables avec des suffixes comme _1, _2, etc. Toutes les variables d’un jeu doivent partager le même suffixe.
  6. (Recommandé) Nettoyez les précédentes traductions pour éviter les conflits (ex. translations/)
  7. (Recommandé) Ajoutez une section traduction à votre README en utilisant le modèle README languages template
  8. Voir : Configurer Azure AI

Utilisation

Traduire tous les types pris en charge :

translate -l "ko ja"

Markdown uniquement :

translate -l "de" -md

Markdown + images :

translate -l "pt" -md -img

Notebooks uniquement :

translate -l "zh" -nb

Plus d’options : Référence des commandes

Fonctionnalités

  • Traduction automatisée pour Markdown, notebooks et images
  • Maintient les traductions synchronisées avec les changements source
  • Fonctionne en local (CLI) ou en CI (GitHub Actions)
  • Utilise Azure OpenAI ou OpenAI ; Azure AI Vision optionnel pour les images
  • Préserve la mise en forme et la structure Markdown

Documentation

Guide spécifique à Microsoft

Note

Pour les mainteneurs des dépôts Microsoft « Pour Débutants » uniquement.

Soutenez-nous et favorisez l’apprentissage mondial

Rejoignez-nous pour révolutionner la manière dont le contenu éducatif est partagé dans le monde ! Donnez une ⭐ à Co-op Translator sur GitHub et soutenez notre mission de briser les barrières linguistiques dans l’apprentissage et la technologie. Votre intérêt et vos contributions ont un impact significatif ! Les contributions de code et suggestions de fonctionnalités sont toujours les bienvenues.

Découvrez le contenu éducatif Microsoft dans votre langue

Présentations vidéo

👉 Cliquez sur l’image ci-dessous pour regarder sur YouTube.

  • Open at Microsoft : Une brève introduction de 18 minutes et un guide rapide sur l’utilisation de Co-op Translator.

    Open at Microsoft

Contribution

Ce projet accueille contributions et suggestions. Vous souhaitez contribuer à Azure Co-op Translator ? Veuillez consulter notre CONTRIBUTING.md pour les consignes sur la manière d’aider à rendre Co-op Translator plus accessible.

Contributeurs

co-op-translator contributors

Code de conduite

Ce projet a adopté le Code de conduite Open Source de Microsoft. Pour plus d'informations, consultez la FAQ du Code de conduite ou contactez opencode@microsoft.com pour toute question ou commentaire supplémentaire.

Intelligence Artificielle Responsable

Microsoft s'engage à aider ses clients à utiliser ses produits d'intelligence artificielle de manière responsable, à partager nos apprentissages, et à construire des partenariats basés sur la confiance grâce à des outils comme Transparency Notes et Impact Assessments. Beaucoup de ces ressources se trouvent sur https://aka.ms/RAI. L'approche de Microsoft en matière d'IA responsable est fondée sur nos principes d'IA : équité, fiabilité et sécurité, confidentialité et sécurité, inclusion, transparence et responsabilité.

Les modèles à grande échelle de langage naturel, d’image et de parole - comme ceux utilisés dans cet exemple - peuvent potentiellement avoir des comportements injustes, peu fiables ou offensants, causant ainsi des préjudices. Veuillez consulter la note de transparence du service Azure OpenAI pour être informé des risques et limitations.

L'approche recommandée pour atténuer ces risques est d'inclure un système de sécurité dans votre architecture capable de détecter et prévenir un comportement nuisible. Azure AI Content Safety fournit une couche indépendante de protection, capable de détecter le contenu nuisible généré par les utilisateurs et l'IA dans les applications et services. Azure AI Content Safety inclut des API de texte et d'image permettant de détecter le contenu nuisible. Nous disposons également d'un studio interactif Content Safety Studio qui vous permet de visualiser, explorer et tester des exemples de code pour détecter le contenu nuisible dans différentes modalités. La documentation quickstart suivante vous guide dans l'établissement de requêtes au service.

Un autre aspect à prendre en compte est la performance globale de l'application. Avec les applications multi-modales et multi-modèles, nous entendons par performance que le système fonctionne comme vous et vos utilisateurs l'attendez, y compris en ne générant pas de sorties nuisibles. Il est important d'évaluer la performance de votre application globale en utilisant les métriques de qualité de génération, de risque et de sécurité.

Vous pouvez évaluer votre application IA dans votre environnement de développement en utilisant le prompt flow SDK. Avec un jeu de données de test ou un objectif, les générations de votre application d'IA générative sont mesurées quantitativement avec des évaluateurs intégrés ou des évaluateurs personnalisés de votre choix. Pour commencer avec le prompt flow sdk pour évaluer votre système, vous pouvez suivre le guide de démarrage rapide. Une fois que vous exécutez une évaluation, vous pouvez visualiser les résultats dans Azure AI Studio.

Marques déposées

Ce projet peut contenir des marques commerciales ou logos pour des projets, produits ou services. L'utilisation autorisée des marques commerciales ou logos Microsoft est soumise aux Directives sur les marques et la marque de commerce de Microsoft. L'utilisation des marques ou logos Microsoft dans des versions modifiées de ce projet ne doit pas créer de confusion ni impliquer un parrainage de Microsoft. Toute utilisation des marques ou logos de tiers est soumise aux politiques de ces tiers.

Obtenir de l'aide

Si vous êtes bloqué ou avez des questions sur la création d'applications IA, rejoignez :

Microsoft Foundry Discord

Si vous avez des retours produits ou des erreurs lors de la création, visitez :

Microsoft Foundry Developer Forum


Avertissement :
Ce document a été traduit à l'aide du service de traduction automatique Co-op Translator. Bien que nous nous efforcions d'assurer l'exactitude, veuillez noter que les traductions automatisées peuvent contenir des erreurs ou des inexactitudes. Le document original dans sa langue native doit être considéré comme la source faisant autorité. Pour des informations cruciales, une traduction professionnelle humaine est recommandée. Nous déclinons toute responsabilité en cas de malentendus ou de mauvaises interprétations résultant de l'utilisation de cette traduction.