Traduction automatique

BYO Engine

Le contenu est traduit de l’anglais par Phrase Language AI.

La fonctionnalité « BYO Engine » permet l'intégration de moteurs de traduction automatique (MT) externes dans Phrase afin de les utiliser dans des flux de travail de traduction comme n'importe quel autre fournisseur de MT.

BYO Engine est adapté pour :

  • Les entreprises disposant de modèles de MT spécifiques à un domaine.

  • Les LSP disposant de moteurs clients personnalisés ou de piles d'IA privilégiées.

  • Les organisations ayant des politiques internes qui exigent l'utilisation de moteurs spécifiques (par exemple, Gemini, LLM internes, etc.).

Des moteurs entraînés sur mesure peuvent être utilisés ou les traductions peuvent être acheminées vers des LLM ou des fournisseurs de MT internes afin de conserver un contrôle total sur la qualité, la confidentialité et les coûts, tout en continuant à bénéficier des mémoires de traduction (MT), des glossaires, des QPS et de l'éditeur CAT de Phrase.

Où un BYO Engine peut être utilisé

Une fois intégré, un BYO Engine est disponible pour la pré-traduction. Configurez-le dans un profil Phrase Language AI et utilisez ce profil pour effectuer une pré-traduction à partir des projets Phrase TMS, du portail Phrase, des projets Phrase Strings, de Phrase Studio et de Phrase Language AI via l'API.

Configurer un BYO Engine

Création de l'adaptateur

  • L'organisation doit créer et tester un adaptateur d'API léger. Cet adaptateur permet la communication entre Phrase et le moteur.

    L'adaptateur doit prendre en charge :

    • Les demandes de traduction

    • La prise en charge des paires de langues

    • La vérification de l'état du moteur (Phrase envoie une demande d'état)

  • L'infrastructure sous-jacente (moteur de MT ou LLM) doit être hébergée et maintenue par l'organisation.

  • Phrase nécessite des autorisations pour se connecter à cette infrastructure.

  • L'adaptateur doit renvoyer des traductions avec le même nombre de segments et le même ordre.

Intégration du moteur dans un profil MT

Une fois l'adaptateur API implémenté et déployé, le BYO Engine devient disponible dans Phrase Language AI pour être sélectionné dans les profils MT et peut être affecté à des projets.

Pour connecter un BYO Engine à un profil MT :

  1. Depuis la page du profil MT de Phrase Language AI, cliquez sur Connecter des moteurs MT.

    La page Connecter un moteur MT s'affiche.

  2. Sélectionnez Bring Your Own (BYO) Engine.

    La page de configuration du BYO Engine s'ouvre.

  3. Saisissez l'URL du moteur de base.

  4. Fournissez les identifiants en fonction de la méthode d'authentification (en-tête HTTP ou identifiants client (OAuth 2.0)).

  5. Sélectionnez si vous souhaitez utiliser le cache de traduction. Activé par défaut

    Réduit le trafic et accélère la réponse de traduction en réutilisant les segments traduits au cours des 30 derniers jours. Il s'agit uniquement d'une optimisation des performances d'appel, cela ne réduit pas le coût de traduction. Gardez cette option activée par défaut, désactivez-la uniquement pendant que l'adaptateur du moteur sous-jacent est en cours de développement actif.

  6. Si nécessaire, fournissez toute information supplémentaire pour le moteur sous Étiquettes personnalisées.

  7. Cliquez sur Valider la connexion pour vérifier si l'intégration du moteur fonctionne.

  8. Cliquez sur Ajouter.

    Le moteur est désormais disponible pour être activé dans le profil.

Astuce

Lors de l'utilisation d'un BYO Engine, n'activez aucun autre moteur dans le profil MT. Cela garantit que le BYO Engine est sélectionné pour la pré-traduction.

Modifier un BYO Engine

Pour modifier un BYO Engine, cliquez sur l'icône de modification sur la tuile du moteur.

Supprimer un BYO Engine

Pour supprimer un BYO Engine :

  1. Cliquez sur l'icône de modification sur la tuile du moteur.

  2. Cliquez sur Supprimer le BYO Engine.

FAQ

Q :

Pourquoi la requête de statut est-elle requise ? Est-elle envoyée par Phrase au moteur, ou est-il attendu qu'elle soit gérée par le client ?

A

Phrase envoie la requête pour vérifier si le moteur fonctionne ou non.

Q :

Une requête peut contenir 500 maxItems dans segments. Cela implique-t-il que 500 phrases sources doivent être traduites en temps réel ?

A

Les appels synchrones incluent seulement jusqu'à 5 segments, tandis que les appels asynchrones peuvent en inclure davantage, jusqu'à 500. De plus, le délai d'expiration asynchrone est d'environ 30 minutes.

Q :

Tous les termes d'un glossaire sont-ils envoyés dans une requête, ou seulement un sous-ensemble ?

A

Tous les termes du glossaire sont envoyés.

Q :

Est-il possible de connecter un LLM ?

A

Cela devrait être possible avec un wrapper. Tant que le moteur renvoie des segments tels que définis dans le schéma, Phrase n'exige pas de moteur ou de LLM spécifique.

Q :

Une évaluation de la qualité (QE) personnalisée est-elle possible ?

A

La QE tierce n'est pas prise en charge.

Q :

Comment les balises sont-elles gérées ?

A

Le contenu que Phrase reçoit est prétraité. Les balises HTML sont converties en marques, et ces marques sont transmises telles quelles.

Q :

Pouvons-nous implémenter uniquement l'approche asynchrone ? Cela fonctionnera-t-il correctement dans toutes les zones de Phrase (pré-traduction, Éditeur, etc.) ?

A

Non, les deux approches (idéalement tous les points de terminaison) doivent être implémentées. Le point de terminaison synchrone est utilisé, par exemple, par l'Éditeur, tandis que le point de terminaison asynchrone est utilisé dans des zones telles que la pré-traduction.

Q :

Que se passe-t-il lorsque le moteur reçoit plusieurs requêtes en même temps ?

A

Le moteur doit être capable de gérer cela. Assurez une gestion appropriée de la concurrence et de la sécurité des threads sur tous les points de terminaison, en particulier les points de terminaison asynchrones.

Q :

Comment fonctionnent les métadonnées de requête ?

A

Elles doivent rester statiques, telles que définies lors de la configuration du moteur.

Q :

Comment fonctionnent les métadonnées de segment ?

A

Actuellement, elles doivent faire partie du schéma.

Q :

Lors du traitement par MT, BYOE utilise-t-il la RAG pour récupérer le contexte ?

A

Non, BYOE n'utilise pas la RAG. Les utilisateurs peuvent exploiter les mémoires de traduction pour déterminer quels segments sont traduits, mais celles-ci ne sont pas utilisées dans le processus de traduction automatique lui-même. C'est parce que les moteurs MT doivent être spécifiquement conçus pour intégrer les données de MT via la RAG, et dans les scénarios BYOE, il n'y a aucun contrôle sur la façon dont les moteurs sont construits ou configurés.

Référence du schéma de l'adaptateur

L'adaptateur doit renvoyer des réponses qui correspondent exactement aux noms de champs et aux valeurs d'énumération suivants. Une inadéquation entraîne une INTERNAL_ERROR générique de la part de Phrase, même lorsque l'adaptateur lui-même renvoie une réponse 200 OK.

  • POST /status doit renvoyer un champ status avec une valeur d'énumération strictement en minuscules, soit ok, soit not_ok. Exemple : { \"status\": \"ok\" }

  • POST /languages doit renvoyer un tableau languagePairs (camelCase), chaque entrée contenant un champ sourceLanguage et un champ targetLanguage. Exemple : { \"languagePairs\": [ { \"sourceLanguage\": \"en\", \"targetLanguage\": \"es\" } ] }

  • POST /translate et GET /translateAsyncResult/{id} doivent renvoyer des champs sourceLanguage et targetLanguage de premier niveau, ainsi qu'un tableau segments où chaque segment inclut à la fois un champ text (le texte source reproduit) et un champ translatedText. Le renvoi du seul translatedText, ou l'utilisation d'un nom de clé différent, provoque un échec de désérialisation.

  • POST /translateAsync ne nécessite qu'un champ id dans sa réponse. Un champ status ne fait pas partie de ce schéma de réponse et est ignoré s'il est présent.

  • GET /translateAsyncStatus/{id} doit renvoyer un champ status utilisant l'une des trois valeurs d'énumération : running pour un travail toujours en cours de traitement, done pour un travail terminé avec succès, ou failed pour un travail ayant échoué. Dans le cas d'un job échoué, le champ optionnel detail peut fournir une description détaillée de l'échec. Exemples de valeurs : { "status": "running" }, { "status": "done" }, { "status": "failed", "detail": \"Description de l'échec de la traduction\" }

Cet article vous a-t-il été utile ?
★ ★ ★ ★ ★

Sorry about that! In what way was it not helpful?

The article didn’t address my problem.
I couldn’t understand the article.
The feature doesn’t do what I need.
Other reason.

Note that feedback is provided anonymously so we aren't able to reply to questions.
If you'd like to ask a question, submit a request to our Support team.
Thank you for your feedback.