Maschinelle Übersetzung

BYO Engine

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

Die Funktion „BYO Engine“ (BYO Engine) ermöglicht die Integration externer maschineller Übersetzungssysteme (MT) in Phrase, um diese in Übersetzungsworkflows wie jeden anderen MT-Anbieter zu nutzen.

BYO Engine eignet sich für:

  • Unternehmen mit domänenspezifischen MT-Modellen.

  • Sprachdienstleister (LSPs) mit kundenspezifischen Engines oder bevorzugten KI-Stacks.

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

Kundenspezifisch trainierte Engines können verwendet oder Übersetzungen an interne LLMs oder MT-Anbieter weitergeleitet werden, um die volle Kontrolle über Qualität, Datenschutz und Kosten zu behalten und gleichzeitig von Phrase Translation Memories (TM), Glossaren, QPS und dem CAT-Editor zu profitieren.

Wo eine BYO Engine verwendet werden kann

Nach der Integration steht eine BYO Engine für die Vorübersetzung zur Verfügung. In einem Phrase Language AI-Profil wird die Konfiguration vorgenommen, und dieses Profil wird für die Vorübersetzung aus Phrase TMS-Projekten, dem Phrase Portal, Phrase Strings-Projekten, Phrase Studio und Phrase Language AI über die API eingesetzt.

Konfiguration einer BYO Engine

Erstellung des Adapters

  • Das Unternehmen 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 vom Unternehmen 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, steht die BYO Engine in Phrase Language AI zur Auswahl in MT-Profilen zur Verfügung und kann Projekten zugewiesen werden.

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

  1. Auf der Seite des Phrase Language AI MT-Profils muss MT-Engines verbinden angeklickt werden.

    Die Seite MT-Engine verbinden wird angezeigt.

  2. Es ist Bring Your Own (BYO) Engine auszuwählen.

    Die Konfigurationsseite der BYO Engine öffnet sich.

  3. Die Basis-Engine-URL eintragen.

  4. Die Anmeldedaten sind entsprechend der Authentifizierungsmethode (HTTP-Header oder Client-Anmeldedaten (OAuth 2.0)) anzugeben.

  5. Entscheiden, ob der Übersetzungscache verwendet werden soll. Standardmäßig aktiviert

    Reduziert den Datenverkehr und beschleunigt die Übersetzungsantwort durch die Wiederverwendung von Segmenten, die innerhalb der letzten 30 Tage übersetzt wurden. Dies ist lediglich eine Optimierung der Aufrufleistung; die Übersetzungskosten werden dadurch nicht gesenkt. Standardmäßig aktiviert lassen, nur während der aktiven Entwicklung des zugrunde liegenden Engine-Adapters deaktivieren.

  6. Bei Bedarf unter Benutzerdefinierte Labels zusätzliche Informationen für die Engine angeben.

  7. Durch Anklicken von Verbindung validieren wird überprüft, ob die Engine-Integration funktioniert.

  8. Auf Hinzufügen klicken.

    Die Engine steht nun zur Aktivierung im Profil zur Verfügung.

Tipp

Bei Verwendung einer BYO Engine sollte keine weitere Engine im MT-Profil aktiviert werden. Dies stellt sicher, dass die BYO Engine für die Vorübersetzung ausgewählt wird.

Eine BYO Engine bearbeiten

Zum Bearbeiten einer BYO Engine ist das Bearbeiten-Symbol auf der Engine-Kachel anzuklicken.

BYO Engine löschen

Zum Löschen einer BYO Engine:

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

  2. Auf BYO Engine entfernen klicken.

HÄUFIGE FRAGEN (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 Segmenten 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 einzubinden?

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 ein spezifisches LLM.

Q:

Ist eine benutzerdefinierte 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 durchgereicht.

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 genutzt wird.

Q:

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

A

Die Engine muss in der Lage sein, dies zu handhaben. Eine ordnungsgemäße Handhabung von Nebenläufigkeit und Threadsicherheit über alle Endpunkte hinweg, insbesondere bei asynchronen Endpunkten, muss gewährleistet sein.

Q:

Wie funktioniert Request Metadata?

A

Sie muss statisch bleiben, wie bei der Engine-Einrichtung definiert.

Q:

Wie funktioniert Segment Metadata?

A

Derzeit muss sie 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 werden, aber sie werden 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 gibt es keine Kontrolle darüber, 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. Eine Nichtübereinstimmung 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 sourceLanguage- und targetLanguage-Felder auf oberster Ebene zurückgeben, sowie ein segments-Array, bei dem jedes Segment sowohl ein text-Feld (den wiederholten Quelltext) als auch ein translatedText-Feld enthält. Die Rückgabe von nur translatedText oder die Verwendung eines anderen Schlüsselnamens führt zu einem Deserialisierungsfehler.

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

  • GET /translateAsyncStatus/{id} muss ein status Feld mit einem von drei Enum-Werten zurückgeben: running für einen Auftrag, der noch verarbeitet wird, done für einen erfolgreich abgeschlossenen Auftrag oder failed für einen fehlgeschlagenen Auftrag. Bei einem fehlgeschlagenen Auftrag kann ein optionales detail-Feld den Fehler beschreiben. Beispielwerte: { "status": "running" }, { "status": "done" }, { "status": "failed", "detail": "Beschreibung des Übersetzungsfehlers" }

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.