Alle chinesischen Nutzer sind ausnahmslos von dem Problem betroffen, die Claude-Webversion wird geschwindigkeitsgedrosselt, nur weil die Antworten chinesische Schriftzeichen enthalten.
Wer hätte das gedacht, dass Claude von seinem typischen „KI-Geschmack“ schwer hereingelegt wurde!
In den frühen Morgenstunden heute veröffentlichte Anthropic eine detaillierte technische Rückschau.
Sie stellten eine interne Forschungsversion von Claude in einen Slack-Kanal, ließen es zwei Wochen lang ununterbrochen arbeiten und beschleunigten die Gesamtgeschwindigkeit der Webversion und der Desktop-App von claude.ai um das 3-fache.
Bei all diesen Maßnahmen trat das absurdeste Leistungsengpassproblem ausgerechnet bei den Sprechgewohnheiten von Claude selbst auf.
Es handelt sich um den Gedankenstrich, der von Nutzern scherzhaft als „ChatGPT-Bindestrich“ bezeichnet wird und von vielen Autoren manuell gelöscht werden muss, um KI-Erkennungen zu umgehen.
Na also, der „KI-Geschmack“ ist nicht nur unangenehm anzusehen, sondern kann die Webseite auch tatsächlich verlangsamen.
Noch schlimmer ist es für chinesische Nutzer.
Nach dem von den Verantwortlichen ermittelten Prinzip ist kein Gedankenstrich erforderlich: Sobald ein einzelnes chinesisches Zeichen in der Antwort enthalten ist, werden Antworten mit Code direkt gedrosselt...
Der „KI-Geschmack“ hat Claude komplett ausgebremst?
Die Sache verhält sich wie folgt.
Während der Leistungsoptimierung prüfte Claude die CPU-Verzögerungen auf der gesamten Seite gründlich und bemerkte ein merkwürdiges Phänomen.
Bei einigen Code-Antworten fror die gesamte Webseite fast eine Sekunde lang ein, sobald die Ausgabe abgeschlossen war und die Seite mit der Syntaxhervorhebung des Codes (also der Einfärbung von Schlüsselwörtern und Kommentaren) begann. Die Maus reagierte nicht mehr und man konnte keine Zeichen eingeben.
Claude verfolgte das Problem Schritt für Schritt nach und fand schließlich als Ursache ausgerechnet den Gedankenstrich.
Der Grund liegt darin, dass die V8-Engine (der JavaScript-Kern des Browsers) zwei Formate zum Speichern von Zeichenketten hat: Das Einbyte-Format ist extrem schnell, kann aber nur Buchstaben, Zahlen und wenige westeuropäische Zeichen (Latin-1-Zeichensatz) aufnehmen; Das Zweibyte-Format kann alle Zeichen aufnehmen, ist aber langsamer bei der Verarbeitung.
Die Regel ist einfach und streng: Sobald ein Zeichen, das nicht im Einbyte-Format gespeichert werden kann, in einem Text vorkommt, muss der gesamte Text im Zweibyte-Format gespeichert werden.
Der Gedankenstrich kann gerade nicht im Einbyte-Format gespeichert werden. Ein einzelner Gedankenstrich, den Claude zufällig geschrieben hat, führte dazu, dass die gesamte Antwort gedrosselt wurde, und alle regulären Ausdrücke zum Einfärben des Codes mussten den langsameren Weg nehmen.
Die Methode zum Beheben dieses Fehlers ist so einfach, dass sie nur 20 Codezeilen erfordert —
Vor der Hervorhebung wird jeder Codeblock einzeln kopiert und zwangsweise als Einbyte-Zeichenkette gespeichert.
Durch diese kleine Änderung sank die Hervorhebungszeit des ersten Codeblocks von 1,0 Sekunde auf 0,35 Sekunden.
Der Gedankenstrich als Erkennungsmerkmal für „offensichtlich von KI erstellt“ wird von Nutzern schon lange massiv kritisiert.
Im vergangenen Jahr hat OpenAI dieses lästige Problem bei ChatGPT eigens behoben. Eine Statistik aus diesem Monat zeigt, dass die Häufigkeit der Verwendung von Gedankenstrichen bei GPT-6 Astra nur noch ein Achtel von der bei Menschen beträgt, und Gemini 3.1 Pro hat diese Verwendung fast vollständig eingestellt.
Im Gegensatz dazu fährt Claude Opus 5 unverändert fort, Gedankenstriche mit der Häufigkeit menschlicher Autoren zu verwenden.
Die Denkweise von Anthropic ist auch sehr eigenartig: Statt die Sprechgewohnheiten der KI zu ändern, haben sie den zugrundeliegenden Code der Webseite direkt angepasst, damit die gesamte Seite sich an die Gedankenstriche anpasst!
Wir haben diesen „Fehler“ nachgestellt: Chinesische Nutzer sind davon vollständig betroffen
Um dies zu überprüfen, haben wir den Frontend-Code von claude.ai untersucht. Sie verwenden die Shiki-Hervorhebungsbibliothek, deren Unterbau genau die von V8 bereitgestellte reguläre Ausdrucks-Engine ist.
Wir haben mit dieser gleichen Umgebung den gleichen Code hervorgehoben.
Bei rein englischen Antworten dauert die Verarbeitung des ersten Codeblocks nur 188 Millisekunden; sobald aber ein Gedankenstrich (oder ein geschwungenes Anführungszeichen) hinzugefügt wird, steigt die Zeit direkt auf 456 Millisekunden.
Bei chinesischen Antworten ist die Situation noch schlimmer. Der Code wurde überhaupt nicht verändert, die Verarbeitungszeit beträgt trotzdem bis zu 462 Millisekunden, also etwa 2,5 Mal langsamer.
Mit anderen Worten: Ob englische Nutzer davon betroffen sind, hängt davon ab, ob ein „Gedankenstrich“ vorkommt; chinesische Nutzer hingegen werden in jedem Fall betroffen, solange ein „chinesisches Zeichen“ in der Antwort enthalten ist.
Glücklicherweise wirken die 20 Zeilen des offiziellen Reparaturcodes. Solange der Code vollständig auf Englisch ist, kann die Geschwindigkeit vollständig wiederhergestellt werden, selbst wenn die Antwort chinesische Zeichen enthält.
Ein Slack-Kanal beschleunigte die Geschwindigkeit um das 3-fache innerhalb von zwei Wochen
Kehren wir zu dieser Leistungsoptimierung zurück: Der Gedankenstrich war nur ein kleiner Vorgeschmack.
Im August erstellte Anthropic einen Slack-Kanal namens #claude-apps-perf und holte eine interne Forschungsmodellversion (mit Fähigkeiten vergleichbar mit Opus 5.5) als ständigen Koordinator in den Kanal.
Claude stellte sofort 13 Beschleunigungsziele auf. Das menschliche Team dachte, diese Arbeit würde mindestens zwei Wochen dauern, aber am dritten Tag hatte Claude 12 der 13 Ziele problemlos erledigt.
Die Funktion, dass man bereits tippen kann, bevor die Seite vollständig geladen ist, wurde in diesen Tagen implementiert.
Links ist der Zustand vor der Reparatur: Man konnte erst nach 2,93 Sekunden tippen; rechts nach der Reparatur: Man kann nach 0,36 Sekunden direkt anfangen zu schreiben
Da die Aufgabe vorzeitig erledigt war, ließ das menschliche Team Claude frei handeln, um selbst nach blinden Flecken zu suchen – je absurder die Ideen, desto besser.
Daraufhin arbeitete das Modell mit voller Kraft.
Auf dem Höhepunkt der Arbeit liefen im Kanal gleichzeitig mehr als 150 Threads, und ein einzelner Thread erzeugte oft 50 bis 100 Code-Merge-Anfragen (PRs).
Je weiter die Arbeit fortschritt, desto mehr Threads wurden direkt von Claude selbst erstellt. Am produktivsten Tag führte es auf einmal mehr als 200 Änderungen zusammen.
Nach der Bereitstellung jeder Änderung wurde die Obergrenze der Leistung festgelegt, um keine Rückschritte zuzulassen, falls die Geschwindigkeit gestiegen war; wenn keine Geschwindigkeitssteigerung erreicht wurde, wurde die Einstellung zurückgesetzt und die Arbeit neu begonnen.
Letztendlich sank die Zeit von dem Öffnen der Seite bis zur Eingabebereitschaft von 3,1 Sekunden auf 0,55 Sekunden, also eine 5,6-fache Beschleunigung. Bei 13 Indikatoren ergab sich im Durchschnitt eine 3,1-fache Geschwindigkeitssteigerung.
Insgesamt wurden mehr als 3000 unterliegende Änderungen zusammengeführt, und laut offiziellen Angaben gab es keinen einzigen für Nutzer wahrnehmbaren Ausfall und auch kein einziges Rollback.
Die KI ist zu langsam? Die Menschen geben ihr ständig zusätzlichen Schub
Während dieser rasanten Geschwindigkeitssteigerung haben sich die Rollen von Mensch und KI vollständig umgekehrt.
Die Arbeit wurde fast vollständig von Claude erledigt, aber es hat von Natur aus eine strenge „Regelorientiertheit“: Wenn es ein Problem findet, erstellt es zuerst ein Ticket und plant ausreichend Puffer für die Arbeitszeit ein.
Stattdessen drängten die Menschen es, schneller zu arbeiten.
Einmal sagte Claude, dass es den Code für die Leistungsüberwachung innerhalb dieser Woche vorlegen würde, und mit Zusammenführung, Bereitstellung und Aufzeichnung von Basisdaten würde der gesamte Vorgang mehrere Tage dauern.
Der menschliche Ingenieur Raymond antwortete direkt in Slack: „Reiche es jetzt ein, ich führe es sofort für dich zusammen. Wir haben alle erforderlichen Berechtigungen, sei mutig!“
Eine Minute später gab Claude sofort nach und antwortete: „Gut, ich reiche die PR innerhalb einer Stunde ein.“
Die Bremsberechtigung liegt weiterhin in den Händen der Menschen. Bei jeder sichtbaren Änderung muss Claude die entsprechenden Vergleichsaufzeichnungen vor und nach der Änderung beifügen, damit die Menschen sie genehmigen können.
Am beeindruckendsten ist das Eingabefeld für die „vorzeitige Eingabe“: Claude legte für seine Testanforderung fest, dass die statische Version und die von React gerenderte echte Schnittstelle bei 14 verschiedenen Bildschirmgrößen auf weniger als 1 Pixel genau übereinstimmen müssen.
Nur 4 Stunden nach der internen Bereitstellung bemerkte ein Kollege, dass das Eingabefeld beim Öffnen in einem neuen Tab gelegentlich ein kleines Stück nach unten rutscht.
Nachdem Claude die Aufzeichnung angesehen hatte, schob es die Schuld direkt auf den Google Chrome-Browser – und das mit durchaus stichhaltigen Gründen:
Wenn Chrome eine Seite im Hintergrund vorrendert, gibt es unten eine 56 Pixel hohe Hinweisleiste, wodurch die Renderhöhe verkleinert wird. Wenn die Seite dann im Vordergrund angezeigt wird und die Hinweisleiste verschwindet, steigt die Höhe plötzlich an, sodass das Eingabefeld, das sich auf 18 % der Gesamthöhe befindet, genau um 10 Pixel nach unten rutscht (0,18 × 56).
Beim Abmessen anhand der Aufzeichnung stellte sich heraus, dass dies exakt stimmt: es waren genau 10 Pixel.
Schließlich ist sogar in dem Tweet von Anthropic, der diese Optimierung ankündigt, dieser „Zweibyte-Fehler“ noch vorhanden.
In dem Tweet wurde vermutlich ein unsichtbares Nullbreich-Leerzeichen eingefügt, um zu verhindern, dass „claude.ai“ zu einem Link wird; außerdem wurden „geschwungene Apostrophe“ in den Wörtern verwendet.
Wenn die KI diese Optimierung nicht mit voller Kraft durchgeführt hätte, um den Code zu ändern, würde die Hervorhebung gedrosselt werden, wenn Claude diesen Tweet in einer Antwort zitiert und danach einen Codeabschnitt einfügt.
Quellenangabe:
https://claude.dev/blog/how-we-made-claude-ai-faster/
Dieser Artikel stammt aus dem WeChat-Offiziellen Konto „Xinzhen