Membaca eksport data ChatGPT: perbualan itu sebuah pokok, bukan senarai
Minta data anda daripada ChatGPT dan anda dapat fail .zip yang kandungan bergunanya hanyalah satu conversations.json. Bukanya sambil menjangkakan senarai mesej dan anda jumpa sesuatu yang lain: objek bernama mapping, penuh entri berkunci pengecam, setiap satunya menunjuk kepada satu induk dan satu set anak. Mesejnya ada di dalam. Perbualan yang anda ingat itu satu laluan melalui graf.
Halaman ini membina semula laluan tersebut dan menulisnya sebagai Markdown. Lepaskan arkib atau JSON yang telah diekstrak, dan ia dihuraikan dalam tab pelayar ini.
Kenapa ia disimpan sebagai graf
Kerana antara mukanya membenarkan anda menulis semula sejarah. Sunting gesaan yang terdahulu dan bebenang itu bercabang dari titik tersebut. Jana semula satu respons dan anda dapat pilihan lain yang boleh dibelek dengan anak panah kecil itu. Kedua-dua versi masih wujud; antara muka cuma menunjukkan satu.
Tatasusunan rata tidak mampu mewakili keadaan itu. Jadi eksport menyimpan setiap cabang, dan transkrip yang anda benar-benar lihat dipulihkan dengan bermula pada nod yang tiada induk lalu turun ke bawah, memilih antara anak-anaknya pada setiap langkah. Konvensyen yang sepadan dengan antara muka ialah mengikut anak terakhir, kerana penjanaan semula dilampirkan selepas respons yang digantikannya. Itulah yang alat ini lakukan, dan sebab itulah outputnya terbaca sebagai perbualan yang anda alami dan bukan selang-seli setiap percubaan.
Ada pengadang kitaran semasa berjalan melalui graf. Ia sepatutnya tidak pernah terpicu pada eksport yang elok, tetapi gelung tak terhingga dalam penghurai lebih buruk daripada transkrip yang terpotong.
Kandungan yang anda tidak pernah lihat
Eksport itu mengandungi bahan yang disembunyikan oleh antara muka, dan menerbitkannya semula secara harfiah memberi anda transkrip yang tidak sepadan dengan ingatan anda tentang perbualan itu:
- Mesej sistem. Setiap perbualan bermula dengan arahan yang bukan anda tulis dan tidak pernah ditunjukkan kepada anda. Ia muncul sebagai mesej penuh dalam fail.
- Trafik alat. Carian web, pelaksanaan kod dan penjanaan imej masing-masing meninggalkan nod permintaan dan nod hasilnya sendiri, dialamatkan kepada penerima selain pengguna. Ini jentera di sebalik sesuatu respons, bukan sebahagian daripada dialog.
- Nod yang ditanda tersembunyi. Sesetengah mesej membawa bendera yang menandakannya tidak dipaparkan dalam perbualan. Eksport itu jujur tentang hal ini, dan bendera tersebut dihormati.
Ketiga-tiganya ditapis keluar, meninggalkan giliran pengguna dan giliran pembantu.
Kandungan mesej bukan sentiasa satu rentetan
Medan kandungan telah berkembang dari masa ke masa. Giliran teks biasa membawa tatasusunan parts yang berisi rentetan. Sesetengah jenis mesej menggunakan medan text sebaliknya. Giliran multimodal meletakkan objek dalam tatasusunan parts, satu bagi setiap elemen, yang mana imej yang dimuat naik dan soalan yang mengiringinya ialah entri berasingan. Hasil code interpreter pula tiba dalam bentuknya yang tersendiri.
Penghurai membaca bentuk rentetan, bentuk tatasusunan rentetan, dan bentuk tatasusunan objek, lalu mencungkil teks daripada setiap satunya. Bahagian bukan teks tidak menyumbang apa-apa, dan bukan menghasilkan penanda tempat atau ralat, bermakna perbualan yang mengandungi imej muncul sebagai perkataan di sekelilingnya.
Kenapa Markdown sasaran yang betul
Pembantu itu memang sudah menulis dalam Markdown. Responsnya mengandungi blok kod berpagar, tajuk, senarai berbulet dan jadual, dan tanda-tanda itu berada dalam eksport sebagai aksara. Menukar kepada teks biasa akan meninggalkannya terpacak di situ sebagai backtick dan tanda pagar yang harfiah — pemformatan yang tidak dirender dan tidak dibuang, cuma terkandas.
Mengekalkan Markdown bermakna blok kod kekal sebagai blok kod. Tampal hasilnya ke dalam mana-mana aplikasi nota, penjana laman statik, alat dokumentasi atau wiki dan ia dirender. Nama penutur ditebalkan dan setiap perbualan mendapat tajuk daripada namanya, jadi eksport bertahun-tahun menjadi dokumen yang boleh dilayari dan bukan hamparan teks yang tidak berbeza-beza.
Eksport itu besar
Beberapa tahun penggunaan biasa menghasilkan conversations.json berpuluh atau beratus megabait, memuatkan beribu perbualan. Itu masalah bagi editor teks, yang akan cuba menyerlahkan sintaks kesemuanya, dan bagi mana-mana alat yang mencantikkan JSON sebelum menunjukkan apa-apa kepada anda.
Penghuraian di sini berlaku sekali, dalam memori, dan hanya output yang boleh dibaca dirender. Setiap perbualan menjadi satu bahagian di bawah tajuknya sendiri dengan pemisah antara bahagian, jadi anda boleh mencari frasa yang anda ingat separuh-separuh dalam hasilnya dan bukan menatal.
Meminta eksport anda
Dalam ChatGPT: Tetapan, kemudian Kawalan Data, kemudian Eksport Data. Arkib itu dihantar ke e-mel anda, biasanya dalam beberapa minit, sebagai pautan muat turun yang akan luput. Zip itu juga mengandungi pemapar HTML dan pelbagai media; hanya JSON yang diperlukan di sini, dan melepaskan keseluruhan arkib pun berfungsi dengan baik.
Tiada apa yang dimuat naik
Sejarah ChatGPT anda ialah rekod terperinci tentang apa yang anda usahakan, apa yang anda risaukan dan apa yang anda mintakan bantuan. Ia antara fail paling mendedahkan yang dimiliki kebanyakan orang. Penghuraian berjalan dalam JavaScript di tab ini dan tiada langkah muat naik, jadi tiada pelayan menerimanya dan tiada apa untuk dipadam selepasnya.
Eksport Claude ada halamannya sendiri di Eksport Claude kepada Markdown, dan halaman eksport perbualan umum mengendalikan mana-mana platform yang disokong.