Ich habe die KI-Übersetzung mit 14 Sprachen aktiviert, darunter Portugiesisch (pt). Wenn ein neuer Beitrag erstellt wird, werden alle Sprachen automatisch übersetzt – außer Portugiesisch, das einfach in der Übersetzungsliste fehlt. Andere Locales (ru, de, fr, es, it, nl, pl, uk, fi, sv, da, nb_NO) werden korrekt generiert.
Könntest du dir das bitte ansehen? Das Portugiesisch (pt)-Locale wird bei der automatischen KI-Übersetzung konsequent übersprungen. Alle anderen 13 Sprachen werden korrekt übersetzt. Dies ist ein kritisches Problem für unsere Community, da wir portugiesischsprachige Nutzer auf Madeira, Portugal, bedienen.
Welche Einstellung ist auf diesem Screenshot zu sehen? Content localization supported locales?
Und auf dem zweiten Screenshot: Welche Sprache hat der Beitrag? Und damit zusammenhängend: Was ist die Standardsprache deiner Seite, also die Site-Einstellung default locale?
Hmm, interessant. Ist das eine von uns gehostete Seite? Falls ja, würde ich mir gerne die Konfiguration ansehen, um herauszufinden, was los ist. Könntest du mir bitte eine PN mit der URL der Seite senden?
Hier auf Meta ist Portugiesisch aktiviert und funktioniert einwandfrei.
Ich bringe das wieder auf das öffentliche Thema zurück, das aus einem kurzen Chat in einer PN stammt:
Das ist ein interessantes Ergebnis.
Es gibt einige relevante Einstellungen dafür unter KI > Übersetzungen > Übersetzungseinstellungen, aber nicht ganz das, was du brauchst. Ich glaube nicht, dass der geplante Auftrag 14 gleichzeitige Übersetzungsanforderungen sendet.
Ich bin neugierig, ob @nat dies während der Entwicklung und des Tests der Funktion irgendwann einmal erlebt hat.
Hmm, mir ist nichts davon bekannt. Ich erinnere mich zwar daran, dass einige Websites mehr als 10 Sprachen unterstützten, aber dieses Problem habe ich noch nie gesehen.
Deuten die /logs auf etwas hin? Wir haben eine versteckte Einstellung für ausführliche Protokolle, die du für einen bestimmten Zeitraum aktivieren kannst: ai_translation_verbose_logs.
Update: Das Problem ist nicht spezifisch für Portugiesisch. Bei drei Lokalen (EN, RU, PT) kann jedes Lokal zufällig übersprungen werden – manchmal RU, manchmal PT. Außerdem werden Titel und Inhalt unabhängig und inkonsistent übersetzt – der Titel kann übersetzt sein, während der Inhalt übersprungen wird, oder umgekehrt. Getestet mit Mistral Small, Mistral Large und GPT gpt mini. Das Problem tritt bei allen Modellen auf.
Alle Beiträge werden auf Englisch veröffentlicht (die Standardsprache der Website ist Englisch). Die Übersetzung in andere Lokale ist inkonsistent und zufällig, unabhängig vom Inhalt oder der Länge des Beitrags. Ich kann nicht herausfinden, was dies verursacht oder warum es passiert.
Ich kann die Einstellung ai_translation_verbose_logs in unserer Installation nicht finden. Sie wird nicht in der Suche unter den Verwaltungseinstellungen angezeigt.
In diesem Fall hat Moin kürzlich ein Problem im Meta-Bereich gemeldet, bei dem der Titel übersetzt, der Beitragstext jedoch übersprungen wurde, weil er zu groß war.
Es sollte eine Sitteinstellung für die Begrenzung von Beiträgen geben, aber ich bezweifle, dass dies der Grund für dieses Problem ist – es hätte dann beim Übersetzen in jede Sprache fehlschlagen müssen, nicht nur sporadisch bei ein oder zwei Sprachen.
Ein weiterer Punkt, den Sie überprüfen können, ist Ihr LLM-Kontextfenster in Ihren LLM-Einstellungen.
Übrigens empfehle ich GPT mini für Übersetzungen überhaupt nicht. Viele Kunden haben Rückmeldung gegeben, dass die Qualität sehr schlecht ist, und auch in unseren ersten Tests hat es sich als solches erwiesen.
Fehler beim Übersetzen des Tags 31 nach pt: {"object":"error","message":"Interner Serverfehler","type":"unreachable_backend","param":null,"code":"1100","raw_status_code":503}
/var/www/discourse/plugins/discourse-ai/lib/completions/endpoints/base.rb:206:in 'block (2 levels) in DiscourseAi::Completions::Endpoints::Base#perform_completion!'
Auch „Fehler beim Übersetzen des Themas“ und „Fehler beim Übersetzen des Beitrags“ mit denselben Backend-Fehlern.
Ich habe mich noch nicht tief in den Code eingearbeitet, aber ich frage mich, warum die Jobs DetectTranslatePost und DetectTranslateTopic die Option sidekiq_options retry: false haben?
Mein Problem ist immer noch nicht gelöst.
Dies ist für mich und mein Forum kritisch.
Mehrsprachigkeit sollte einwandfrei funktionieren.
Sprachen werden weiterhin zufällig übersprungen, unabhängig vom lokalen Modell.
KI-Übersetzung schlägt bei LLM-503-Fehlern stillschweigend fehl – keine Wiederholungslogik
Fehler: Wenn ein beliebiger LLM-Anbieter (Mistral, OpenAI) einen 503-Fehler zurückgibt, überspringt DiscourseAi::Translation die Übersetzung stillschweigend ohne Wiederholungsversuch.
Beispiel für die Protokolldatei:
DiscourseAi::Completions::Endpoints::Mistral: status: 503
{“type”:“unreachable_backend”,“code”:“1100”}
DiscourseAi::Translation: Übersetzung des Themas X nach ru fehlgeschlagen
Ursache: DiscourseAi::Completions::Endpoints verfügt über keine Wiederholungslogik für vorübergehende Serverfehler. Dies ist nicht anbieterabhängig – das gleiche Verhalten wurde zuvor auch bei OpenAI beobachtet.
Erwartetes Verhalten: Bei 503-/504-Antworten mit exponentieller Backoff-Strategie wiederholen, bevor die Übersetzung als fehlgeschlagen markiert wird.
Vorgeschlagene Lösung: Fügen Sie eine einheitliche Wiederholungslogik in DiscourseAi::Completions::Endpoints für alle Anbieter hinzu.
Dies betrifft jede Discourse-Instanz, die KI-Übersetzung mit mehreren Sprachen verwendet.
Sie müssen das zugrunde liegende Problem beheben, nämlich dass das Backend eine 503 zurückgibt. Es mag einfach klingen, Discourse dazu zu bringen, dieselbe Übersetzung immer wieder zu wiederholen, aber bedenken Sie, dass jede Anfrage an ein LLM Token-Kosten verursacht. Wir müssen daher auf unserer Seite sparsam damit umgehen, um diese Token nicht zu verbrauchen. Sobald Sie das LLM-Problem behoben haben, können Sie ein Thema manuell zur Übersetzung einplanen und prüfen, ob es gelöst wird.
Bitte passen Sie Ihre Erwartungen an. Sie nutzen kostenlose Software, und wir helfen Ihnen so gut es geht.
vielen Dank für deine Antwort. Nur zur Klarstellung: Ich verwende nicht das günstigste LLM-Modell, um Geld zu sparen, sondern um zu testen, wie die Übersetzungsfunktion in der Praxis funktioniert. Die Wahl des Modells ist nicht der Kernpunkt.
Der Punkt ist: Wenn Mistral einen 503-Fehler zurückgibt, verwirft Discourse AI die Übersetzung stillschweigend, ohne dem Administrator eine Meldung zu geben, ohne eine Warteschlange für Wiederholungen und ohne Möglichkeit zu erkennen, welche Themen übersehen wurden. Das ist das UX-Problem, das ich anspreche – nicht die Kosten für Tokens.
Ich verstehe, dass dies Open Source ist und du so gut es geht hilfst. Das schätze ich sehr. Aber „passt eure Erwartungen an
Da du die ESR-Version verwendest, musst du deutlich mehr Geduld haben als nur bis zum Wiedereinstieg der Leute nach dem Wochenende zu warten. ESR-Updates erscheinen nur zweimal pro Jahr.
Nur zur Info: Das tun sie nicht mehr. Sie haben das letzte Woche auf 4.0-latest umgestellt, um andere Fehlerkorrekturen zu erhalten.
(Und die ESR-Version erhält Backports für einige Fehlerkorrekturen).