Automatisez facilement les traductions multilingues pour vos projets avec Co-op-translator, optimisé par la technologie avancée LLM et Azure AI Services.
Co-op Translator est un package Python conçu pour automatiser les traductions multilingues de vos projets à l'aide de la technologie avancée LLM (Large Language Model) et d'Azure AI Services. Ce projet vise à simplifier le processus de traduction du contenu dans plusieurs langues, le rendant accessible et efficace pour les développeurs.
En intégrant Co-op Translator dans votre flux de travail, vous pouvez générer automatiquement des dossiers de traduction organisés pour différentes langues et traduire sans effort les fichiers Markdown et les images.
Voici un exemple de la façon dont Co-op Translator structure les traductions et traduit à la fois les fichiers Markdown et le texte dans les images de votre projet :
Avez-vous eu des difficultés avec les outils de traduction traditionnels lorsque vous travaillez avec des fichiers Markdown ? De nombreux moteurs de traduction ne parviennent pas à préserver la syntaxe Markdown, vous obligeant à résoudre manuellement les problèmes de formatage après la traduction. Même des outils avancés comme ChatGPT peuvent mal interpréter les blocs de code, ce qui rend difficile le copier-coller du contenu traduit tout en conservant la structure d'origine.
Co-op Translator est spécialement conçu pour résoudre ces problèmes. Avec une seule commande, vous pouvez traduire tous les fichiers et images Markdown de votre projet dans la langue de votre choix tout en préservant la syntaxe Markdown correcte.
Traduisez facilement les fichiers Markdown de votre projet avec Co-op Translator !
Le processus commence par les fichiers Markdown et image de votre dossier de projet, qui sont traités par Azure AI Services :
Les fichiers Markdown et image finaux traduits sont enregistrés dans le dossier de traduction désigné, prêts à être utilisés dans plusieurs langues.
pip install co-op-translator
poetry add co-op-translator
Ces études de cas montrent comment Co-op Translator a été appliqué pour traduire un projet du monde réel. Il met en évidence le processus de traduction, les défis rencontrés et les résultats obtenus, fournissant une référence utile pour appliquer l'outil à des projets similaires.
Avant de commencer le processus de traduction, vous pouvez ajouter un tableau dans le README qui renvoie aux versions traduites de votre document. Co-op Translator ajustera automatiquement ces liens pendant le processus de traduction, permettant aux utilisateurs de basculer de manière transparente entre les différentes versions linguistiques.
Par exemple, si un utilisateur accède au fichier README coréen, il peut facilement passer à d'autres traductions comme l'espagnol ou le japonais sans quitter la page traduite.
Voici un exemple de ce à quoi devrait ressembler le tableau avant d'exécuter la traduction :
## ? Multi-Language Support
> ** Note: **
> These translations were automatically generated using the open-source [ co-op-translator ] ( https://github.com/Azure/co-op-translator ) and may contain errors or inaccuracies. For critical information, it is recommended to refer to the original or consult a professional human translation. If you'd like to add or update a translation, please refer to the [ co-op-translator ] ( https://github.com/Azure/co-op-translator ) repository, where you can easily contribute using simple commands.
| Language | Code | Link to Translated README | Last Updated |
| ---------------------- | ------ | --------------------------------------------------------- | -------------- |
| Chinese (Simplified) | zh | [ Chinese Translation ] ( ./translations/zh/README.md ) | 2024-10-04 |
| Chinese (Traditional) | tw | [ Chinese Translation ] ( ./translations/tw/README.md ) | 2024-10-04 |
| French | fr | [ French Translation ] ( ./translations/fr/README.md ) | 2024-10-04 |
| Japanese | ja | [ Japanese Translation ] ( ./translations/ja/README.md ) | 2024-10-04 |
| Korean | ko | [ Korean Translation ] ( ./translations/ko/README.md ) | 2024-10-04 |
| Spanish | es | [ Spanish Translation ] ( ./translations/es/README.md ) | 2024-10-04 |
## ? Multi-Language Support
| [English](./translations/en/README.md) | [French](./translations/fr/README.md) | [Spanish](./translations/es/README.md) | [German](./translations/de/README.md) | [Russian](./translations/ru/README.md) | [Arabic](./translations/ar/README.md) | [Persian (Farsi)](./translations/fa/README.md) | [Urdu](./translations/ur/README.md) | [Chinese (Simplified)](./translations/zh/README.md) | [Chinese (Traditional, Macau)](./translations/mo/README.md) | [Chinese (Traditional, Hong Kong)](./translations/hk/README.md) | [Chinese (Traditional, Taiwan)](./translations/tw/README.md) | [Japanese](./translations/ja/README.md) | [Korean](./translations/ko/README.md) | [Hindi](./translations/hi/README.md) | [Bengali](./translations/bn/README.md) | [Marathi](./translations/mr/README.md) | [Nepali](./translations/ne/README.md) | [Punjabi (Gurmukhi)](./translations/pa/README.md) | [Portuguese](./translations/pt/README.md) | [Italian](./translations/it/README.md) | [Polish](./translations/pl/README.md) | [Turkish](./translations/tr/README.md) | [Greek](./translations/el/README.md) | [Thai](./translations/th/README.md) | [Swedish](./translations/sv/README.md) | [Danish](./translations/da/README.md) | [Norwegian](./translations/no/README.md) | [Finnish](./translations/fi/README.md) | [Dutch](./translations/nl/README.md) | [Hebrew](./translations/he/README.md) | [Vietnamese](./translations/vi/README.md) | [Indonesian](./translations/id/README.md) | [Malay](./translations/ms/README.md) | [Tagalog (Filipino)](./translations/tl/README.md) | [Swahili](./translations/sw/README.md) | [Hungarian](./translations/hu/README.md) | [Czech](./translations/cs/README.md) | [Slovak](./translations/sk/README.md) | [Romanian](./translations/ro/README.md) | [Bulgarian](./translations/bg/README.md) | [Serbian (Cyrillic)](./translations/sr/README.md) | [Croatian](./translations/hr/README.md) | [Slovenian](./translations/sl/README.md) |
> ** Note: **
> These translations were automatically generated using the open-source [ co-op-translator ] ( https://github.com/Azure/co-op-translator ) and may contain errors or inaccuracies. For critical information, it is recommended to refer to the original or consult a professional human translation. If you'd like to add or update a translation, please refer to the [ co-op-translator ] ( https://github.com/Azure/co-op-translator ) repository, where you can easily contribute using simple commands.
Le tableau ci-dessous répertorie les langues actuellement prises en charge par Co-op Translator . Il comprend les codes de langue, les noms de langue et tous les problèmes connus associés à chaque langue. Si vous souhaitez ajouter la prise en charge d'une nouvelle langue, veuillez ajouter le code de langue, le nom et la police appropriée correspondants dans le fichier font_language_mappings.yml
situé dans src/co_op_translator/fonts/
et soumettre une pull request après le test.
Code de langue | Nom de la langue | Fonte | Prise en charge RTL | Problèmes connus |
---|---|---|---|---|
fr | Anglais | NotoSans-Medium.ttf | Non | Non |
fr | Français | NotoSans-Medium.ttf | Non | Non |
es | Espagnol | NotoSans-Medium.ttf | Non | Non |
de | Allemand | NotoSans-Medium.ttf | Non | Non |
ru | russe | NotoSans-Medium.ttf | Non | Non |
ar | arabe | NotoSansArabic-Medium.ttf | Oui | Oui |
fa | persan (farsi) | NotoSansArabic-Medium.ttf | Oui | Oui |
ton | Ourdou | NotoSansArabic-Medium.ttf | Oui | Oui |
zh | Chinois (simplifié) | NotoSansCJK-Medium.ttc | Non | Non |
mo | Chinois (traditionnel, Macao) | NotoSansCJK-Medium.ttc | Non | Non |
hé | Chinois (traditionnel, Hong Kong) | NotoSansCJK-Medium.ttc | Non | Non |
deux | Chinois (traditionnel, Taïwan) | NotoSansCJK-Medium.ttc | Non | Non |
oui | japonais | NotoSansCJK-Medium.ttc | Non | Non |
ko | coréen | NotoSansCJK-Medium.ttc | Non | Non |
Salut | hindi | NotoSansDevanagari-Medium.ttf | Non | Non |
milliard | bengali | NotoSansBengali-Medium.ttf | Non | Non |
M. | Marathi | NotoSansDevanagari-Medium.ttf | Non | Non |
ne | Népalais | NotoSansDevanagari-Medium.ttf | Non | Non |
Pennsylvanie | Pendjabi (Gurmukhi) | NotoSansGurmukhi-Medium.ttf | Non | Non |
pt | portugais | NotoSans-Medium.ttf | Non | Non |
il | italien | NotoSans-Medium.ttf | Non | Non |
svp | polonais | NotoSans-Medium.ttf | Non | Non |
tr | turc | NotoSans-Medium.ttf | Non | Non |
el | grec | NotoSans-Medium.ttf | Non | Non |
ème | thaïlandais | NotoSansThai-Medium.ttf | Non | Non |
sv | suédois | NotoSans-Medium.ttf | Non | Non |
papa | danois | NotoSans-Medium.ttf | Non | Non |
Non | norvégien | NotoSans-Medium.ttf | Non | Non |
fi | finlandais | NotoSans-Medium.ttf | Non | Non |
nl | Néerlandais | NotoSans-Medium.ttf | Non | Non |
il | hébreu | NotoSansHebrew-Medium.ttf | Oui | Non |
vi | vietnamien | NotoSans-Medium.ttf | Non | Non |
identifiant | indonésien | NotoSans-Medium.ttf | Non | Non |
MS | malais | NotoSans-Medium.ttf | Non | Non |
télé | Tagalog (philippin) | NotoSans-Medium.ttf | Non | Non |
sw | Swahili | NotoSans-Medium.ttf | Non | Non |
hein | hongrois | NotoSans-Medium.ttf | Non | Non |
cs | tchèque | NotoSans-Medium.ttf | Non | Non |
sk | slovaque | NotoSans-Medium.ttf | Non | Non |
ro | roumain | NotoSans-Medium.ttf | Non | Non |
bg | bulgare | NotoSans-Medium.ttf | Non | Non |
sr | Serbe (cyrillique) | NotoSans-Medium.ttf | Non | Non |
heure | croate | NotoSans-Medium.ttf | Non | Non |
sl | slovène | NotoSans-Medium.ttf | Non | Non |
Pour ajouter la prise en charge d'une nouvelle langue :
rtl
si la langue est de droite à gauche.src/co_op_translator/fonts/
.Exemple:
new_lang :
name : " New Language "
font : " NotoSans-Medium.ttf "
rtl : false
Ce projet accueille les contributions et suggestions. Vous souhaitez contribuer à Azure Co-op Translator ? Veuillez consulter notre CONTRIBUTING.md pour obtenir des directives sur la manière dont vous pouvez contribuer à rendre Co-op Translator plus accessible.
Ce projet a adopté le code de conduite Microsoft Open Source. Pour plus d’informations, consultez la FAQ sur le code de conduite ou contactez [email protected] pour toute question ou commentaire supplémentaire.
Microsoft s'engage à aider nos clients à utiliser nos produits d'IA de manière responsable, à partager nos apprentissages et à établir des partenariats fondés sur la confiance grâce à des outils tels que les notes de transparence et les évaluations d'impact. Beaucoup de ces ressources sont disponibles sur https://aka.ms/RAI. L'approche de Microsoft en matière d'IA responsable est fondée sur nos principes d'équité, de fiabilité et de sûreté, de confidentialité et de sécurité, d'inclusivité, de transparence et de responsabilité.
Les modèles de langage naturel, d’image et de parole à grande échelle – comme ceux utilisés dans cet exemple – peuvent potentiellement se comporter de manière injuste, peu fiable ou offensante, causant à leur tour des préjudices. Veuillez consulter la note de transparence du service Azure OpenAI pour être informé des risques et des limites.
L'approche recommandée pour atténuer ces risques consiste à inclure un système de sécurité dans votre architecture capable de détecter et de prévenir les comportements nuisibles. Azure AI Content Safety fournit une couche de protection indépendante, capable de détecter le contenu nuisible généré par les utilisateurs et par l'IA dans les applications et les services. Azure AI Content Safety inclut des API de texte et d’image qui vous permettent de détecter les éléments nuisibles. Nous disposons également d'un Content Safety Studio interactif qui vous permet de visualiser, d'explorer et d'essayer des exemples de code pour détecter les contenus nuisibles selon différentes modalités. La documentation de démarrage rapide suivante vous guide tout au long de la procédure de requête auprès du service.
Un autre aspect à prendre en compte est la performance globale de l’application. Avec les applications multimodales et multimodèles, nous considérons que les performances signifient 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 les performances de votre application globale à l'aide de mesures de qualité de production, de risque et de sécurité.
Vous pouvez évaluer votre application d'IA dans votre environnement de développement à l'aide du SDK de flux d'invite. À partir d'un ensemble de données de test ou d'une cible, vos générations d'applications d'IA générative sont mesurées quantitativement avec des évaluateurs intégrés ou des évaluateurs personnalisés de votre choix. Pour démarrer avec le SDK de flux d'invite pour évaluer votre système, vous pouvez suivre le guide de démarrage rapide. Une fois que vous avez exécuté une exécution d’évaluation, vous pouvez visualiser les résultats dans Azure AI Studio.
Ce projet peut contenir des marques ou des logos pour des projets, des produits ou des services. L'utilisation autorisée des marques ou logos Microsoft est soumise et doit respecter les directives relatives aux marques et aux marques de Microsoft. L'utilisation des marques ou logos Microsoft dans les versions modifiées de ce projet ne doit pas prêter à confusion ni impliquer le parrainage de Microsoft. Toute utilisation de marques ou de logos tiers est soumise aux politiques de ces tiers.