Die kurze Antwort
Wenn Whizi deinen Import abgelehnt hat, prüfe zuerst die Datei, die du ausgewählt hast: Die einzige Datei, die Whizi liest, ist conversations.json innerhalb eines ChatGPT- oder Claude-Exports, entpacke also den Export und wähle diese Datei statt des Zip selbst. Davon abgesehen scheitert ein Import an einer von zwei Stellen, und der Wortlaut der Meldung verrät, welche: der Browser-Parser, der deine Exportdatei liest, oder der Import-Endpunkt, der die vom Parser erzeugten Unterhaltungen empfängt. Dateifehler betreffen die Datei, die du ausgewählt hast. Upload-Fehler betreffen das Netzwerk oder die Sitzung. Nichts dazwischen ist mehrdeutig, weil jede Meldung eine feste Zeichenkette ist, die an eine Bedingung gebunden ist.
Das Zweite, was du wissen solltest, bevor du irgendetwas erneut versuchst: Ein erneuter Import verdoppelt Chats nie. Jede importierte Unterhaltung wird über Konto, Quelle und Quell-ID eindeutig identifiziert, sodass der zweifache Import desselben Exports, die Fortsetzung nach einer abgebrochenen Verbindung oder ein doppelter Klick auf Importieren dieselben Chats jeweils nur einmal landen lässt.
| Was du gesehen hast | Wo es gescheitert ist | Was zu tun ist |
|---|---|---|
| Eine Meldung zum Exportformat oder zu conversations.json | Beim Lesen deiner Datei, bevor irgendetwas hochgeladen wurde | Wähle eine andere Datei aus dem Export, siehe Tabelle unten |
| Eine Meldung zu deiner Sitzung oder deiner Verbindung | Beim Hochladen, mitten im Vorgang | Melde dich erneut an oder verbinde dich neu, führe den Import dann erneut aus |
| Eine Anzahl von Unterhaltungen, die nicht importiert werden konnten | Manche Batches sind bei jedem Versuch gescheitert | Führe den Import erneut aus, er holt nur das Fehlende nach |
| Nichts, aber es dauert lange | Ratenbegrenzung, funktioniert wie vorgesehen | Warte, der Importer versucht es von selbst erneut |
Fehler beim Lesen deiner Exportdatei
Diese entstehen im Browser, bevor auch nur ein Byte deinen Rechner verlässt. Die Exportdatei selbst wird nie hochgeladen: Der Browser parst sie und sendet nur normalisierte Unterhaltungen, ein Fehler hier bedeutet also, dass die Datei nie weit genug gekommen ist, um gesendet zu werden.
| Meldung | Auslöser | Lösung |
|---|---|---|
That file is not a ChatGPT or Claude export. Look for conversations.json inside the export zip. | Der Parser kann keines der beiden Exportformate erkennen, oder ein Zip liefert eine nicht erkannte Nutzlast | Öffne das Export-Archiv und wähle gezielt conversations.json |
There is no conversations.json inside that zip. Unzip it and pick the file directly. | Das ausgewählte Zip enthält keinen passenden Eintrag | Entpacke es selbst, finde conversations.json und wähle diese Datei |
That file is not valid JSON, so there was nothing to read. | Die ausgewählte Datei lässt sich nicht als JSON parsen | Lade den Export erneut von ChatGPT oder Claude herunter und wähle daraus conversations.json |
That export has no conversations with text in them. | Der Export lässt sich parsen, ergibt aber null Unterhaltungen | Der Export enthält tatsächlich keine Text-Transkripte. Auf Whizi-Seite gibt es nichts zu beheben |
That file is too large for the browser to open. Pick the export .zip instead, which is read one file at a time. | Die ausgewählte rohe .json-Datei überschreitet das Leselimit des Browsers | Wähle stattdessen die .zip. Ein roher .json-Export wird bis 300 MB akzeptiert; der .zip-Pfad hat keine eigene Obergrenze, weil nur der Eintrag conversations.json entpackt wird |
Could not read that file. Please try again. | Das Lesen der Datei ist aus einem anderen Grund fehlgeschlagen | Ein echter Fall für einen erneuten Versuch. Tritt es bei derselben Datei erneut auf, wähle die Export-.zip, die Eintrag für Eintrag gelesen wird |
Die erste Meldung ist die weit gefasste, weil eine Zeichenkette zwei Bedingungen abdeckt: ein Exportformat, das der Parser nicht erkennen kann, und ein Zip, das eine nicht erkannte Nutzlast liefert. Beide führen zur selben Lösung, nämlich den Export zu entpacken und conversations.json direkt auszuwählen.
Fehler beim Upload selbst
Sobald die Datei geparst ist, sendet der Importer die Unterhaltungen in Batches. An dieser Stelle können zwei Dinge schiefgehen, beide sind behebbar.
| Meldung | Auslöser | Lösung |
|---|---|---|
Your session ended. Sign in again, then start the import. | Der Token-Abruf lieferte mitten im Import nichts zurück | Melde dich erneut an und starte den Import neu. Was bereits gelandet ist, bleibt erhalten, der erneute Lauf überspringt es |
The import could not be finished. Check your connection and try again. | Jeder andere Upload-Fehler während des Importlaufs | Prüfe die Verbindung und führe ihn erneut aus |
Ein drittes Ergebnis ist gar kein Fehler, sondern eine Zusammenfassung: {count} could not be imported. Run the import again to pick them up. Das ist die Anzahl der Unterhaltungen, deren Batches bei jedem Versuch gescheitert sind. Die Anweisung in der Meldung ist bereits die ganze Lösung, und der in der kurzen Antwort beschriebene Dedupe-Schlüssel ist der Grund, warum der zweite Lauf dich nichts kostet.
Fehler, die der Import-Endpunkt zurückgibt
Das sind die Codes und Zeichenketten, die die Import-Route selbst erzeugt. Die Website spiegelt dieselben Obergrenzen und validiert vor dem Senden, sie sind also am wichtigsten, wenn etwas direkt an den Endpunkt sendet oder wenn ein Batch fehlerhaft ist.
| Code | Meldung | Auslöser |
|---|---|---|
invalid_import | A JSON object body is required. | Der Import-Body ist kein Objekt |
invalid_source | An import source of chatgpt or claude is required. | Das source-Feld fehlt oder ist keine der beiden akzeptierten Quellen |
empty_import | At least one conversation is required. | Das conversations-Array fehlt oder ist leer |
too_many_conversations | This batch has {count} conversations, over the 25 per request limit. | Mehr als 25 Unterhaltungen in einer Anfrage |
too_many_messages | Conversation {n} carries {count} messages, over the 400 per request limit. Send the rest as an append. | Mehr als 400 Nachrichten in einer Unterhaltung in einer Anfrage |
invalid_import | Conversation {n} is not an object. | Ein Eintrag im conversations-Array ist kein Objekt |
invalid_import | Conversation {n} has no messages array. | Eine Unterhaltung trägt kein messages-Array |
invalid_import | Conversation {n} has an invalid append target. | Das appendTo-Feld ist weder ein String noch null |
invalid_message | Conversation {n} message {m} is not an object. | Ein Nachrichteneintrag ist kein Objekt |
invalid_message | Conversation {n} message {m} needs a role of "user" or "assistant". | Eine Nachricht hat eine Rolle außerhalb dieser beiden |
invalid_message | Conversation {n} message {m} has no text. | Der Nachrichteninhalt ist kein String |
request_too_large | Request is too large. | Der JSON-Body überschreitet das Byte-Limit der Route, entweder laut angegebenem Content-Length oder anhand tatsächlich gelesener Bytes |
Die Obergrenzen hinter diesen Meldungen: 25 Unterhaltungen pro Anfrage, 400 Nachrichten pro Unterhaltung pro Anfrage und ein Anfrage-Body von höchstens 2,000,000 Bytes. Der Website-Importer teilt exakt bei 25 und 400 auf und hält jede Anfrage unter 1,200,000 Bytes, bewusst unterhalb der Obergrenze von 2,000,000 Bytes, um Platz für den Anfrage-Umschlag zu lassen. Eine Unterhaltung mit mehr als 400 Nachrichten wird nicht abgelehnt, sondern zerteilt: Der Rest wird als Append-Teile an den Chat gesendet, den der erste Teil erstellt hat.
Ein großer Import pausiert jeweils 20 Sekunden
Der Import von Unterhaltungen ist auf 20 Anfragen pro Minute pro Nutzer begrenzt. Ein großer Export stößt an diese Grenze, das ist erwartet und kein Defekt.
Du wirst keinen Fehler sehen, wenn das passiert. Ein Import, der auf HTTP 429 trifft, wird nicht angezeigt: Der Client wartet 20 Sekunden und versucht es erneut, bis zu 4 Versuche pro Batch. Ein Import, der bei einem großen Export jeweils 20 Sekunden lang festzustecken scheint, tut also genau das Richtige. Lass ihn laufen.
Scheitern Batches auch nach diesen 4 Versuchen weiterhin, landen sie in der Zusammenfassung {count} could not be imported. Run the import again to pick them up., und den Import ein zweites Mal auszuführen ist die Lösung, nicht der Support.
Was der Import absichtlich weglässt
Manche Inhalte werden bewusst weggelassen, und ein erfolgreicher Import kann neben dem Original trotzdem unvollständig wirken.
Bei einem ChatGPT-Export wird nur der Zweig importiert, der auf dem Bildschirm zu sehen war. Neu generierte Antworten und verworfene Entwürfe werden nicht als Nachrichten wiedergegeben. Auch Nicht-Transkript-Inhalte werden übersprungen: verborgenes Reasoning, Code und Ausgabe von Analyse-Tools, Browsing-Notizblöcke, Blöcke mit benutzerdefinierten Anweisungen und Funktionsaufrufe.
Bei einem Claude-Export werden Thinking-Blöcke, Tool-Aufrufe und Anhänge weggelassen. Es werden nur Textblöcke importiert.
Unterhaltungen in der Datei ohne lesbaren Text werden gezählt und als übersprungen gemeldet statt still verworfen, eine übersprungene Anzahl ist also eine Information, kein Fehlschlag.
Eine Unterhaltung ohne brauchbaren Titel wird zu Imported chat, und ein Titel über 120 Zeichen wird gekürzt. Eine importierte Nachricht, die länger als die Inhaltsobergrenze ist, wird gekürzt statt abgelehnt, sodass eine einzelne übergroße Nachricht dich nicht den Rest dieser Unterhaltung kostet.
Schließlich die Zeitstempel: Eine importierte Nachricht, die vor dem 2015-01-01 datiert ist oder in der Zukunft liegt, wird als Zeitstempel verworfen, und die Zeile fällt auf die Importzeit zurück. Ein Chat, der mit dem Datum landet, an dem du den Import ausgeführt hast, statt mit seinem ursprünglichen Datum, hat diese Regel getroffen.
Warum ein erneuter Import sicher ist
Der Dedupe-Schlüssel aus der kurzen Antwort hat einen Fallback. Wenn ein Export keine stabile Unterhaltungs-ID liefert, wird der Schlüssel zu einem Hash des Transkripts selbst, sodass ein erneuter Lauf diese Unterhaltungen weiterhin zuordnet statt zweite Kopien anzulegen.
Eine Konsequenz, die du kennen solltest: Das Löschen eines importierten Chats und der erneute Import desselben Exports bringt den Chat zurück, statt ein Duplikat zu melden. Wenn du eine importierte Unterhaltung absichtlich gelöscht hast, führe diesen Export nicht erneut aus, es sei denn, du willst sie zurückhaben.
- Wähle conversations.json aus dem Export, nicht das Export-Zip selbst
- Ein roher .json-Export wird bis 300 MB akzeptiert, darüber hinaus die .zip verwenden
- Sitzungs- und Verbindungsfehler bedeuten: erneut anmelden oder neu verbinden, dann erneut ausführen
- Eine Anzahl, die nicht importiert werden konnte, bedeutet: den Import erneut ausführen
- Das Löschen eines importierten Chats und der erneute Import bringen ihn zurück
- Ein großer Import, der jeweils 20 Sekunden pausiert, ist Ratenbegrenzung, kein Fehler
- Neu generierte ChatGPT-Zweige sowie Claude-Thinking-Blöcke und -Anhänge werden absichtlich weggelassen
Häufige Fragen
Whizi sagt, mein ChatGPT-Export sei kein ChatGPT-Export. Warum?
Die Meldung lautet That file is not a ChatGPT or Claude export. Look for conversations.json inside the export zip. und erscheint, wenn der Parser keines der beiden Formate in der ausgewählten Datei erkennen kann oder wenn ein Zip eine nicht erkannte Nutzlast liefert. Die Datei, die Whizi liest, ist conversations.json, entpacke also den Export und wähle diese Datei direkt aus. Wenn du das Zip ausgewählt hast und stattdessen There is no conversations.json inside that zip. Unzip it and pick the file directly. erhalten hast, enthält das Zip überhaupt keinen passenden Eintrag und der Export muss erneut heruntergeladen werden.
Mein Import ist mittendrin stehen geblieben. Verdoppelt ein erneuter Lauf meine Chats?
Nein. Ein erneuter Lauf ist die vorgesehene Wiederherstellung bei abgebrochener Verbindung, beendeter Sitzung oder gescheitertem Batch: Der zweite Lauf lässt dieselben Chats jeweils nur einmal landen und holt nur das Fehlende nach. Es gibt keinen vorherigen Aufräumschritt.
Warum wurden nur einige meiner Unterhaltungen importiert?
Es können zwei verschiedene Zahlen auftauchen, und nur eine davon ist ein Fehlschlag. {count} could not be imported. Run the import again to pick them up. zählt Batches, die bei jedem Versuch gescheitert sind, und der erneute Import ist die Lösung. Eine übersprungene Anzahl ist die andere, sie meldet Unterhaltungen in der Datei ohne lesbaren Text statt Unterhaltungen, die schiefgegangen sind.
Der Import hängt schon eine Weile fest. Ist er kaputt?
Achte darauf, ob er sich wieder bewegt, statt wie lange er schon läuft. Eine Pause von etwa 20 Sekunden, gefolgt von weiterem Fortschritt, ist der Ratenbegrenzer, weil der Client 20 Sekunden wartet und es erneut versucht, statt dir etwas anzuzeigen. Ein tatsächlich abgeschlossener Import sagt das auch, entweder mit einer der Fehlermeldungen auf dieser Seite oder mit der Zusammenfassung {count} could not be imported. Run the import again to pick them up.. Stille plus regelmäßiger Fortschritt bedeutet: lass ihn in Ruhe.
Wird meine ChatGPT- oder Claude-Exportdatei zu Whizi hochgeladen?
Nein. Die Exportdatei selbst erreicht den Server nie. Dein Browser liest sie, parst sie und sendet nur die normalisierten Unterhaltungen, weshalb auch jeder Formatfehler auf dieser Seite auftritt, bevor überhaupt etwas gesendet wird. Die vollständigen Details zur Datenverarbeitung findest du unter was Whizi mit deinen Daten macht.