Maschinelle Übersetzungen sind schnell – aber sie kennen nicht die Begriffe, auf die sich eine Community über viele Jahre hinweg geeinigt hat. Mein Google-Summer-of-Code-Projekt erweitert Joomla um einen Feedback-Mechanismus, der genau aus diesen Korrekturen lernt. Dadurch werden automatische Übersetzungen mit der Zeit immer besser.

Hallo, ich bin Krishna Gandhi. Ich studiere Informatik in Indien und beginne gerade mein letztes Jahr im Bachelorstudium (B.Tech). In diesem Jahr nehme ich als Google Summer of Code 2026 Student gemeinsam mit Joomla am GSoC-Programm teil.

Eigentlich war ich nicht immer ein „Computer-Mensch“. Bis in meine Jugend hinein spielte ich Badminton auf Wettkampfniveau. Erst während der Corona-Lockdowns begann ich zu programmieren. Die Neugier darauf, wie Videospiele entwickelt werden, führte mich von C und C++ zur Webentwicklung – und schließlich zu Joomla ❤️.

Ich engagiere mich bereits seit einiger Zeit in der Joomla-Community. Emmanuel Lemor, Vizepräsident von Open Source Matters, hat in der April-Ausgabe des Joomla Magazine bereits ausführlich beschrieben, wie ich meinen Weg in die Community gefunden habe. Deshalb möchte ich diesmal lieber von dem Projekt erzählen, an dem ich diesen Sommer arbeite.

Das Problem, das wir lösen möchten

Wer eine mehrsprachige Website betreibt, weiß: Übersetzungen bedeuten viel Arbeit.

Maschinelle Übersetzungsdienste wie Google Translate, DeepL oder moderne KI-Modelle können innerhalb von Sekunden einen ersten Entwurf liefern. Doch jeder, der solche Werkzeuge bereits für echte Inhalte genutzt hat, weiß auch: Diese Entwürfe sind selten direkt veröffentlichungsreif.

Die Systeme kennen nicht die bevorzugte Terminologie einer Community. Sie übersetzen Markennamen oder Fachbegriffe, die eigentlich unverändert bleiben sollten. Manchmal wählen sie einen zu formellen oder zu lockeren Sprachstil. Deshalb müssen menschliche Übersetzerinnen und Übersetzer die Ergebnisse nachbearbeiten.

Gerade Joomla besitzt eine eigene Fachsprache. Begriffe wie „Article“, „Module“ oder „Template“ haben innerhalb des CMS eine ganz bestimmte Bedeutung. Über mehr als zwanzig Jahre hinweg haben die Übersetzungsteams der verschiedenen Sprachgemeinschaften festgelegt, wie diese Begriffe in ihrer Sprache verwendet werden sollen.

Ein allgemeiner Übersetzungsdienst kennt diese Entscheidungen nicht.

Nehmen wir als Beispiel den Begriff „Article“. Eine gewöhnliche deutsche Übersetzung wäre „Artikel“. Die deutschsprachige Joomla-Community hat sich jedoch bewusst für den Begriff „Beitrag“ entschieden. Ein allgemeines Übersetzungssystem kann diese Entscheidung nicht kennen und greift daher auf die naheliegende Wörterbuchübersetzung zurück.

Das Gegenteil passiert ebenfalls: Die niederländische und die französische Joomla-Community verwenden den Begriff „Template“ bewusst unverändert auf Englisch. Ein Übersetzungswerkzeug, das diesen Begriff automatisch übersetzt, liegt in diesem Fall ebenfalls falsch.

Multipliziert man solche Entscheidungen mit tausenden Dokumentationsseiten in mehr als sechzig Sprachen, wird das Ausmaß des Problems deutlich.

Doch es geht nicht nur darum, die richtigen Begriffe zu verwenden – sie müssen auch konsequent verwendet werden. Übersetzer möchten, dass ein Begriff überall gleich übersetzt wird: in der Dokumentation, in Menüs und in Hilfetexten. Ein System ohne Erinnerung an frühere Entscheidungen kann denselben Begriff auf drei verschiedenen Seiten unterschiedlich übersetzen. Anschließend muss ein Mensch die Konsistenz wiederherstellen.

Das eigentliche Problem ist jedoch: Die Maschine lernt nichts aus diesen Korrekturen.

Freiwillige Übersetzer korrigieren dieselben Fehler Woche für Woche immer wieder. Das gesamte Wissen – etwa „diesen Begriff übersetzen wir immer so“ oder „dieser Begriff darf niemals übersetzt werden“ – existiert lediglich in den Köpfen der Beteiligten und geht für das Übersetzungssystem jedes Mal verloren.

Ein Feedback-Kreislauf für bessere Übersetzungen

Genau hier setzt mein GSoC-Projekt an.

Die Idee orientiert sich an modernen KI-Verfahren, die aus menschlichem Feedback lernen. Ein bekanntes Konzept ist Reinforcement Learning from Human Feedback (RLHF): Die Maschine erstellt einen Vorschlag, ein Mensch korrigiert ihn, und das System lernt aus diesen Korrekturen.

In meinem Projekt läuft dieser Prozess wie folgt ab:

Wird ein Beitrag gespeichert, erstellt ein Hintergrundprozess automatisch Übersetzungsentwürfe für die gewünschten Zielsprachen. Anschließend überprüft ein Übersetzer diese Entwürfe und korrigiert fehlerhafte Stellen.

Das System analysiert dabei exakt, welche Änderungen vorgenommen wurden. Wenn dieselben Korrekturen immer wieder auftreten, werden daraus Regeln abgeleitet und gespeichert. So entsteht nach und nach ein Gedächtnis für die Terminologie und den Sprachstil der jeweiligen Community.

Bei zukünftigen Übersetzungen werden diese Regeln wieder abgerufen und dem KI-Modell vor der eigentlichen Übersetzung zur Verfügung gestellt. Dieser Ansatz wird als Retrieval-Augmented Generation (RAG) bezeichnet. Dadurch macht das System mit der Zeit immer weniger dieselben Fehler.

Für Übersetzerinnen und Übersetzer soll der Prozess möglichst einfach bleiben: Originaltext auf der einen Seite, Übersetzungsvorschlag auf der anderen. Korrigiert wird nur das, was tatsächlich falsch ist. Das Lernen geschieht automatisch im Hintergrund.

Anders ausgedrückt: Die Korrekturen werden nicht mehr weggeworfen, sondern dauerhaft gespeichert und wiederverwendet. Jede zukünftige Übersetzung profitiert davon.

Aufbauend auf zwanzig Jahren Übersetzungsarbeit

Das Schönste an diesem Projekt ist, dass es nicht bei null beginnt.

Seit über zwanzig Jahren treffen die Joomla-Übersetzungsteams sorgfältige Entscheidungen darüber, wie die Software in ihren jeweiligen Sprachen formuliert werden soll. Dieses Wissen steckt bereits in den offiziellen Joomla-Sprachpaketen.

Das Projekt extrahiert diese vorhandenen Übersetzungen und nutzt sie als erste Regelbasis. Dadurch weiß das System von Anfang an beispielsweise, dass die deutsche Community „Beitrag“ statt „Artikel“ verwendet.

Die späteren Korrekturen der Übersetzer verfeinern diese Regeln weiter und ergänzen sie um neue Erkenntnisse.

Ein wichtiges Ziel des Projekts ist die Nutzung für die Joomla-Dokumentation. Langfristig sollen neue Anwender die Dokumentation leichter in ihrer eigenen Sprache lesen können.

Besonders wertvoll sind dabei die Übersetzungen aus dem früheren offiziellen Joomla-Wiki docs.joomla.org. Über viele Jahre hinweg haben Community-Mitglieder dort umfangreiche Übersetzungen erstellt, die nun als zusätzliche Wissensquelle dienen können.

Warum ich dieses Projekt gewählt habe

Dieses Projekt wurde von Joomla für den Google Summer of Code 2026 vorgeschlagen und wird von Herman Peeren, Charvi Mehra und Stefan Wendhausen betreut.

Ich habe mich aus zwei Gründen dafür entschieden.

Zum einen beschäftige ich mich im Studium mit Systemen, die aus Feedback lernen, und wollte mein theoretisches Wissen endlich in einem praktischen Projekt anwenden.

Zum anderen gefällt mir besonders, dass Menschen weiterhin die zentrale Rolle spielen.

Es geht nicht darum, „die KI alles übersetzen zu lassen und auf das Beste zu hoffen“. Vielmehr sollen die Menschen, denen die Qualität der Übersetzungen wichtig ist, die Kontrolle behalten – während ihre Arbeit gleichzeitig einen deutlich größeren Nutzen entfaltet als bisher.

Diese Balance empfinde ich als genau richtig.

Was Joomla mich bisher gelehrt hat

Vor meiner Mitarbeit bei Joomla hatte ich hauptsächlich an Hochschulprojekten gearbeitet, in denen Programmierstandards oft eher locker gehandhabt wurden.

Eine meiner wichtigsten Erfahrungen war zu verstehen, wie konsequent professionelle Standards eingehalten werden – und warum das notwendig ist.

Außerdem habe ich gelernt, wie wichtig Themen wie Barrierefreiheit sind. Offen gestanden hatte ich mich vorher kaum damit beschäftigt.

Und nicht zuletzt habe ich gelernt, Feedback bei Code-Reviews anzunehmen, ohne es persönlich zu nehmen. Das hat mich nicht nur als Entwickler, sondern auch persönlich weitergebracht.

Ein besonderer Dank an meinen Mentor

Über dieses Projekt zu schreiben, ohne meinen Mentor Herman Peeren zu erwähnen, wäre unmöglich.

Er ist geduldig, bescheiden und unglaublich unterstützend. Selbst meine kleinsten – und manchmal auch ziemlich naiven – Fragen beantwortet er, ohne mich jemals klein fühlen zu lassen.

Mehr als zwei Wochen lang hat er gemeinsam mit mir in Google-Meet-Sitzungen Schritt für Schritt eine Joomla-Komponente entwickelt. Dabei erklärte er nicht nur den Code, sondern auch die Joomla-spezifischen Vorgehensweisen und Best Practices.

Besonders beeindruckt mich seine Begeisterung für Modellierung und Software-Design. Für ihn geht es nicht nur darum, dass etwas funktioniert, sondern darum, es durchdacht und nachhaltig zu gestalten.

Eine Lektion von ihm ist mir besonders im Gedächtnis geblieben:

Ein Problem sollte zuerst gemeinsam verstanden und ein Plan abgestimmt werden, bevor man mit dem Programmieren beginnt. Wenn mehrere Menschen zusammenarbeiten, hat jeder oft eine andere Vorstellung davon, wie die Lösung aussehen soll.

Ich bin überzeugt, dass ich einen der besten GSoC-Mentoren bekommen habe, die man sich wünschen kann.

Wie geht es weiter?

Das Projekt läuft noch den gesamten Sommer über, und ich werde regelmäßig über die Fortschritte berichten.

Besonders freue ich mich darauf, das Projekt gemeinsam mit meinem Mentor Herman Peeren auf der Joomla World Conference vorzustellen.

Das Ziel ist klar: Die gleichen Fehler maschineller Übersetzungen sollen nicht immer wieder neu korrigiert werden müssen. Gleichzeitig soll die hohe Qualität der Joomla-spezifischen Terminologie erhalten bleiben.

So können Übersetzerinnen und Übersetzer ihre Zeit für neue Inhalte nutzen, statt immer wieder dieselben Fehler zu beheben.

 

Originalartikel von Krishna Gandhi im Joomla-Magazin: https://magazine.joomla.org/issues/2026/june-2026/reusing-20-years-of-joomla-translations-to-improve-automatic-translations

Übersetzt mit Unterstützung der KI.

Mastodon