Ein Nachrichten-Array ist leicht zu erzeugen und unangenehm zu lesen; ein Transkript ist das Gegenteil. Zwischen beidem zu wechseln passiert ständig — ein Protokoll in einen Fehlerbericht einfügen, einen guten Austausch als Testfixture herausziehen — und von Hand gehen dabei die interessanten Teile verloren. Inhalt ist nicht immer eine Zeichenkette: Werkzeugaufrufe, Bilder, Dokumente und Denkblöcke sind Inhaltsblöcke, und sie zu Text zu plätten verwirft sie spurlos. Hier stehen sie in Klammern und werden gezählt, damit Sie sehen, was ein geplättetes Protokoll ausgelassen hat, und ein Transkript wird bei Bedarf wieder zu JSON gelesen.
Funktionen
Beide Richtungen: von Nachrichten zum Transkript und zurück
Werkzeugaufrufe, Bilder und Dokumente gezeigt statt verworfen
Zählt die Nicht-Text-Blöcke, die ein flaches Transkript verlieren würde
Nimmt ein bloßes Array oder ein Objekt mit messages, conversation oder history
Drei Transkriptstile, von Markdown bis schlicht
Systemnachrichten optional
Liest sowohl „Nutzer:“ als auch „**Nutzer**“ als Überschrift
Nachrichtenzahlen je Rolle
So verwendest du Transkript-Konverter
Fügen Sie das Nachrichten-JSON ein
Wählen Sie einen Transkriptstil
Entscheiden Sie über Systemnachricht und Werkzeugaufrufe
Kopieren Sie das Transkript — oder wechseln Sie die Richtung
Beispiel
Eingabe
[{"type": "tool_use", "name": "lookup_order"}]
Ausgabe
[tool_use: lookup_order]
Ein flaches Transkript zeigte hier überhaupt nichts.
Häufige Fehler & Fehlerbehebung
Im Transkript fehlt ein Teil einer Nachricht. — Dieser Teil war kein Text. Schalten Sie die Werkzeugaufrufe ein, um die Nicht-Text-Blöcke zu sehen; gezählt werden sie ohnehin.
Es wird kein Nachrichten-Array gefunden. — Ein bloßes Array funktioniert, ebenso ein Objekt mit messages, conversation, history, turns oder chat. Alles andere braucht das Array zuerst herausgelöst.
Beim Zurücklesen gehen die Rollen verloren. — Züge werden an Zeilen wie „Nutzer:“ oder „**Assistent**“ erkannt. Ein Transkript ohne Rollenmarken hat nichts zum Teilen.
Hin und zurück ergibt nicht das Original. — Es ergibt den Text. Werkzeugaufrufe und Bilder lassen sich aus ihren Klammerzusammenfassungen nicht rekonstruieren — ein Transkript ist naturgemäß verlustbehaftet, deshalb die Zählung.
Häufig gestellte Fragen
Warum kommt Inhalt als Blöcke statt als Zeichenkette?
Weil ein Zug mehr als Text enthalten kann: einen Werkzeugaufruf, ein Bild, ein Dokument, einen Denkblock. Die Zeichenkette ist der einfache Fall, und Code, der sie immer annimmt, ist der Grund, warum Werkzeugaufrufe aus Protokollen verschwinden.
Welchen Transkriptstil soll ich nehmen?
Markdown für alles, was in ein Dokument oder ein Ticket geht. Beschriftet für etwas, das Sie eventuell zurücklesen — das geht sauber hin und her. Schlicht, wenn Sie nur die Wörter wollen.
Kann ich ein Protokoll von überall einfügen?
Wenn es ein Nachrichten-Array in JSON ist, ja. Die üblichen Hüllenschlüssel werden erkannt, und ungewöhnliche Rollen bleiben unverändert erhalten.
Geht es verlustfrei hin und zurück?
Der Text ja, exakt. Nicht-Text-Blöcke nicht: Sie werden zum Lesen zusammengefasst, nicht zur Rekonstruktion bewahrt — die ehrliche Grenze jedes Transkripts.
Wofür ist die Blockzählung?
Sie sagt, wie viel das Transkript nicht zeigt. Ein Gespräch mit zwanzig Werkzeugaufrufen liest sich sehr anders, wenn man weiß, dass sie da sind.