Maschinelle Übersetzung

Verwendung von Bring Your Own Engine

Inhalte werden von Phrase Language AI maschinell aus dem Englischen übersetzt.

Die Funktion „Bring Your Own Engine“ (BYO Engine) ermöglicht die Integration externer maschineller Übersetzungs-Engines (MT) in Phrase, um sie in Übersetzungsworkflows wie jede andere MT-Engine zu verwenden.

BYO Engine eignet sich für:

  • Unternehmen mit fachbereichsspezifischen MT-Modellen.

  • LSPs mit benutzerdefinierten Kunden-Engines oder bevorzugten KI-Stacks.

  • Organisationen mit internen Richtlinien, die die Verwendung spezifischer Engines erfordern (z. B. Gemini, interne LLMs usw.).

Benutzerdefinierte Engines können verwendet oder Übersetzungen an interne LLMs oder MT-Dienstleister weitergeleitet werden, um die volle Kontrolle über Qualität, Datenschutz und Kosten zu behalten, während weiterhin von den Translation Memories (TM), Glossaren, QPS und dem CAT Editor von Phrase profitiert wird.

Wo eine BYO Engine verwendet werden kann

Nach der Integration steht eine BYO Engine für die Vorübersetzung zur Verfügung. Konfiguration in einem Phrase Language AI Profil und Verwendung dieses Profils zum Vorübersetzen aus Phrase TMS-Projekten, Phrase Portal, Phrase Strings-Projekten, Phrase Studio und Phrase Language AI über die API.

Konfigurieren einer Bring Your Own Engine

Erstellen des Adapters

  • Die Organisation muss einen leichtgewichtigen API-Adapter erstellen und testen. Dieser Adapter ermöglicht die Kommunikation zwischen Phrase und der Engine.

    Der Adapter muss Folgendes unterstützen:

    • Übersetzungsanfragen

    • Unterstützung von Sprachpaaren

    • Statusprüfung der Engine (Phrase sendet eine Statusanfrage)

  • Die zugrunde liegende Infrastruktur (MT-Engine oder LLM) muss von der Organisation gehostet und gewartet werden.

  • Phrase benötigt Berechtigungen, um eine Verbindung zu dieser Infrastruktur herzustellen.

  • Der Adapter muss Übersetzungen mit der gleichen Segmentanzahl und Reihenfolge zurückgeben.

Integration der Engine in ein MT-Profil

Sobald der API-Adapter implementiert und bereitgestellt ist, wird die BYO-Engine in Phrase Language AI für die Auswahl in MT-Profilen verfügbar und kann Projekten zugewiesen werden.

Um eine BYO-Engine mit einem MT-Profil zu verbinden:

  1. Auf der MT-Profilseite von Phrase Language AI auf Connect MT engines klicken.

    Die Seite Connect MT engine wird angezeigt.

  2. Auf Bring Your Own (BYO) Engine klicken.

    Die Konfigurationsseite für die BYO-Engine wird geöffnet.

  3. Die Basis-Engine-URL eingeben.

  4. Anmeldeinformationen entsprechend der Authentifizierungsmethode angeben (HTTP-Header oder Client-Anmeldeinformationen (OAuth 2.0)).

  5. Es kann ausgewählt werden, ob Übersetzungscache verwendet wird. Standardmäßig aktiviert.

    Reduziert den Datenverkehr und beschleunigt die Übersetzungsantwort durch Wiederverwendung von Segmenten, die innerhalb der letzten 30 Tage übersetzt wurden. Dies ist nur eine Optimierung der Aufrufleistung, die Übersetzungskosten werden dadurch nicht reduziert. Standardmäßig aktiviert lassen, nur deaktivieren, während sich der zugrunde liegende Engine-Adapter in der aktiven Entwicklung befindet.

  6. Bei Bedarf können zusätzliche Informationen für die Engine unter Custom labels angegeben werden.

  7. Auf Verbindung validieren klicken, um zu prüfen, ob die Engine-Integration funktioniert.

  8. Auf Hinzufügen klicken.

    Im Profil kann die Engine nun aktiviert werden.

Tipp

Beim Verwenden einer BYO-Engine sollte keine andere Engine im MT-Profil aktiviert werden. Dies stellt sicher, dass die BYO-Engine für die Vorübersetzung ausgewählt ist.

Bring Your Own Engine bearbeiten

Um eine BYO-Engine zu bearbeiten, das Bearbeiten-Symbol auf der Engine-Kachel anklicken.

Bring Your Own Engine löschen

Um eine BYO-Engine zu löschen:

  1. Das Bearbeiten-Symbol auf der Engine-Kachel anklicken.

  2. Auf Bring Your Own Engine entfernen klicken.

FAQ

Q:

Warum ist die Statusanfrage erforderlich? Wird sie von Phrase an die Engine gesendet oder wird erwartet, dass sie vom Kunden bearbeitet wird?

A:

Phrase sendet die Anfrage, um zu prüfen, ob die Engine funktioniert oder nicht.

Q:

Eine Anfrage kann 500 maxItems in segments enthalten. Bedeutet dies, dass 500 Quellsätze in Echtzeit übersetzt werden müssen?

A:

Synchrone Aufrufe umfassen nur bis zu 5 Segmente, während asynchrone Aufrufe mehr, bis zu 500, umfassen können. Außerdem beträgt das asynchrone Timeout etwa 30 Minuten.

Q:

Werden alle Begriffe eines Glossars in einer Anfrage gesendet oder nur eine Teilmenge?

A:

Alle Begriffe des Glossars werden gesendet.

Q:

Ist es möglich, ein LLM anzubinden?

A:

Dies sollte mit einem Wrapper möglich sein. Solange die Engine Segmente wie im Schema definiert zurückgibt, erfordert Phrase keine spezifische Engine oder LLM.

Q:

Ist eine individuelle Qualitätsbewertung (QE) möglich?

A:

QE von Drittanbietern wird nicht unterstützt.

Q:

Wie werden Tags gehandhabt?

A:

Der Inhalt, den Phrase erhält, wird vorverarbeitet. HTML-Tags werden in Markierungen umgewandelt und diese Markierungen werden unverändert weitergegeben.

Q:

Können wir nur den asynchronen Ansatz implementieren? Wird es in allen Phrase-Bereichen (Vorübersetzung, Editor usw.) korrekt funktionieren?

A:

Nein, beide Ansätze (idealerweise alle Endpunkte) müssen implementiert werden. Der synchrone Endpunkt wird zum Beispiel vom Editor verwendet, während der asynchrone in Bereichen wie der Vorübersetzung verwendet wird.

Q:

Was passiert, wenn die Engine mehrere Anfragen gleichzeitig erhält?

A:

Die Engine muss in der Lage sein, dies zu verarbeiten. Stellen Sie eine ordnungsgemäße Handhabung von Nebenläufigkeit und Threadsicherheit über alle Endpunkte hinweg sicher, insbesondere bei asynchronen.

Q:

Wie funktioniert Request Metadata?

A:

Die Request Metadata müssen statisch bleiben, wie während des Engine-Setups definiert.

Q:

Wie funktioniert Segment Metadata?

A:

Die Segment Metadata müssen Teil des Schemas sein.

Q:

Verwendet BYOE während der MT-Verarbeitung RAG, um Kontext abzurufen?

A:

Nein, BYOE verwendet kein RAG. Benutzer können TMs nutzen, um zu bestimmen, welche Segmente übersetzt sind, sie werden jedoch nicht innerhalb des MT-Prozesses selbst verwendet. Dies liegt daran, dass MT-Engines speziell dafür ausgelegt sein müssen, TM-Daten über RAG einzubinden, und bei BYOE-Szenarien keine Kontrolle darüber besteht, wie Engines erstellt oder konfiguriert werden.

Adapter-Schema-Referenz

Der Adapter muss Antworten zurückgeben, die exakt mit den folgenden Feldnamen und Enum-Werten übereinstimmen. Ein Match-Fehler führt zu einem generischen INTERNAL_ERROR von Phrase, selbst wenn der Adapter selbst eine 200 OK-Antwort zurückgibt.

  • POST /status muss ein status-Feld mit einem strikten kleingeschriebenen Enum-Wert von entweder ok oder not_ok zurückgeben. Beispiel: { "status": "ok" }

  • POST /languages muss ein languagePairs-Array (camelCase) zurückgeben, wobei jeder Eintrag ein sourceLanguage-Feld und ein targetLanguage-Feld enthält. Beispiel: { "languagePairs": [ { "sourceLanguage": "en", "targetLanguage": "es" } ] }

  • POST /translate und GET /translateAsyncResult/{id} müssen die übergeordneten Felder sourceLanguage und targetLanguage sowie ein segments-Array zurückgeben, wobei jedes Segment sowohl ein text-Feld (den wiedergegebenen Ausgangssprache-Text) als auch ein translatedText-Feld enthält. Die Rückgabe von nur translatedText oder die Verwendung eines anderen Key-Namens führt zu einem Deserialisierungsfehler.

  • POST /translateAsync erfordert nur ein id-Feld in der Antwort. Ein status-Feld ist nicht Teil dieses Antwortschemas und wird ignoriert, falls es vorhanden ist.

  • GET /translateAsyncStatus/{id} muss ein status-Feld unter Verwendung eines der drei Enum-Werte zurückgeben: running für einen Job, der noch verarbeitet wird, done für einen erfolgreich abgeschlossenen Job oder failed für einen fehlgeschlagenen Job. Für einen fehlgeschlagenen Job kann ein optionales detail-Feld den Fehler beschreiben. Beispielwerte: { "status": "running" }, { "status": "done" }, { "status": "failed", "detail": "Description of translation failure" }

War dieser Beitrag hilfreich?

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.