Sejarah perbualan
Perbualan yang panjang akan terlanggar satu dinding keras: tetingkap konteks model. Semua yang ada pada halaman ini wujud kerana dinding itu, dan bahagian yang menarik ialah apa yang dibuang, apa yang disimpan, dan apa yang boleh diperoleh semula.
Empat cara menuntut semula konteks
Bahagian bertajuk “Empat cara menuntut semula konteks”Kesemuanya bukan sekadar pilihan alternatif, sebaliknya sebuah tangga, dengan yang paling murah didahulukan.
| Mekanisme | Kos | Dikekalkan | Hilang |
|---|---|---|---|
| Penghilangan | Tiada | Setiap perkataan naratif | Hasil alat lama yang tidak berperistiwa |
| Pembuangan imej | Tiada | Teks di sekelilingnya | Tangkapan skrin lama |
| Snapshot | Tiada | Setiap perkataan, sebagai piksel | Kebolehbacaan oleh model tanpa visi |
| Ringkasan | Satu panggilan model | Satu naratif | Butiran yang tidak dipilihnya |
Penghilangan dan pembuangan imej dijalankan dahulu kerana kedua-duanya percuma dan tanpa kehilangan dalam hal yang penting: kedua-duanya membuang pukal yang tidak akan dibaca semula oleh sesiapa.
Mengapa meringkaskan ialah pilihan terakhir
Bahagian bertajuk “Mengapa meringkaskan ialah pilihan terakhir”Ringkasan ialah satu-satunya daripada empat cara itu yang menghabiskan satu panggilan model dan satu-satunya yang membuat keputusan bagi pihak anda tentang apa yang penting. Kedua-duanya ialah kos sebenar. Panggilan model ialah yang lebih menarik, kerana masa ia berlaku.
Pemampatan biasanya berjalan di hadapan dinding, pada satu ambang. Tetapi ia juga berjalan secara reaktif, selepas penyedia sendiri menolak sesuatu permintaan sebagai terlalu besar — anggaran heuristik terkurang kira berbanding apa yang sebenarnya diukur oleh penyedia. Dalam keadaan itu, pemampat yang meringkaskan terpaksa membuat permintaan untuk mengecilkan konteks, dan permintaan yang dibuatnya ialah permintaan yang baru sahaja melimpah.
Snapshot
Bahagian bertajuk “Snapshot”Pemampatan snapshot merender sejarah yang dibuang ke atas halaman padat glif piksel lalu mengembalikannya sebagai imej.
Premisnya ialah satu keanehan pengebilan: model visi mengenakan caj bagi sesuatu imej pada kadar tetap atau berkadar dengan luas yang tidak ada kaitan dengan bilangan aksara di dalamnya. Dua belas ribu aksara perbualan yang dibuang memakan kos bersamaan token teks bagi dua belas ribu aksara. Aksara yang sama, apabila dirender ke satu halaman, hanya memakan kos satu imej.
Yang menjadikannya berbaloi untuk dimiliki dan bukan sekadar pintar ialah ia berjalan tanpa panggilan model, tanpa kunci dan tanpa rangkaian. Ia ialah satu-satunya strategi yang sentiasa tersedia semasa pemulihan daripada limpahan.
Bentuk pembinaan semula ialah kepala kata demi kata, tengah sebagai imej, ekor kata demi kata. Kepala ialah tugas serta kekangan yang menjadi rujukan semua bahagian hiliran; ekor ialah tempat kerja sedang berada. Bahagian tengah ialah yang paling jarang dibaca semula dan paling mahal kosnya.
Snapshot dirender semula daripada teks sumber yang dikekalkan pada setiap pusingan, tidak pernah daripada piksel pusingan sebelumnya. Mengimej imej akan merosotkan glif satu generasi bagi setiap pemampatan sehingga tiada apa yang dapat membacanya.
Daripada apa sesuatu larian sebenarnya menyambung semula
Bahagian bertajuk “Daripada apa sesuatu larian sebenarnya menyambung semula”Dahulunya, setiap larian harness bermula daripada sejarah yang kosong dan membina semula kesinambungan daripada blok <context> dalam prompt — satu ringkasan perbualan dan bukannya perbualan itu sendiri. Tiga perkara menyusul daripada itu:
- Sambung semula hanyalah penceritaan semula. Model tidak pernah melihat penaakulan awalnya sendiri atau bait sebenar yang dikembalikan oleh alatnya, hanya perihalannya.
- Putar balik mati bersama prosesnya. Sesuatu
checkpointialah indeks ke dalam senarai mesej langsung, jadi permulaan semula menghilangkan setiap label yang telah ditetapkan oleh model. - Cuba semula tidak dapat membezakan “tiada apa untuk dicuba semula” daripada “tiada apa yang dimuatkan”. Selepas permulaan semula, giliran yang gagal hilang daripada keadaan langsung dalam kedua-dua kes.
Ketiga-tiganya diperbaiki dengan menyimpan transkrip secara kekal. Ia disimpan pada setiap sempadan giliran dan tidak pernah semasa pertengahan giliran: sejarah yang ditangkap antara panggilan alat dan hasilnya ialah sejarah yang tidak akan diterima oleh mana-mana penyedia, jadi ranap pada saat itu memulihkan giliran sebelumnya dan bukannya separuh giliran yang tidak dapat diputar semula.
Larian yang disambung semula dipangkas kepada mesej terbaharunya sahaja, dengan pemotongan pada sempadan yang bukan hasil alat yatim — hasil yang panggilannya telah dipangkas ialah permintaan yang terus ditolak oleh penyedia, dan transkrip yang tidak dapat dihantar adalah lebih buruk daripada transkrip yang pendek.
Pokok sesi
Bahagian bertajuk “Pokok sesi”Setiap mesej merekodkan mesej yang disambungnya, dan setiap perbualan menamakan hujung cabang semasanya. Satu keputusan itulah keseluruhan ciri ini.
Pencabangan tidak menulis apa-apa. Ia hanya menggerakkan penunjuk. Laluan yang anda tinggalkan masih ada, jadi bertukar kembali hanyalah satu lagi pergerakan penunjuk dan bukannya pemulihan — dan menyunting prompt untuk menjalankannya semula tidak lagi menghilangkan jawapan yang sedang anda bandingkan.
Tanpanya, setiap bentuk langkah kembali terpaksa menyembunyikan atau menghapuskan mesej, dan penyembunyian ialah satu pembohongan yang tidak dapat ditembusi oleh pembaca seterusnya.
Cabang berbanding fork
Bahagian bertajuk “Cabang berbanding fork”| Cabang | Fork | |
|---|---|---|
| Apa yang berlaku | Penunjuk bergerak | Laluan disalin |
| Ke mana ia pergi | Perbualan yang sama | Perbualan baharu |
| Kos | Tiada | Satu salinan cabang |
Fork menyalin dengan id baharu dan bukannya berkongsi baris. Dua perbualan yang berkongsi baris akan saling menunjukkan mesej kemudian masing-masing, dan itulah satu perkara yang tidak boleh dilakukan oleh fork.
Putar balik menggunakan penunjuk yang sama
Bahagian bertajuk “Putar balik menggunakan penunjuk yang sama”Pasangan checkpoint / rewind dalam larian menandakan sempadan giliran yang bersih dan kembali kepadanya selepas sesuatu penerokaan, sambil menyimpan satu ikhtisar. Oleh sebab checkpoint disimpan secara kekal bersama transkrip, label yang ditetapkan oleh model sebelum permulaan semula masih terletak di tempat ia ditetapkan. Checkpoint yang sasarannya tidak terselamat daripada pemangkasan akan digugurkan, bukan dijepit — memutar balik “ke label” kemudian mendarat di tempat lain ialah tepat-tepat kegagalan yang ingin dicegah oleh kewujudan label.
Berkaitan
Bahagian bertajuk “Berkaitan”- Cabangkan perbualan — penavigasi pokok, fork dan eksport
- Konteks alat dan caching prompt — separuh lagi daripada apa yang mengisi tetingkap konteks
- Perintah slash —
/compact,/shake,/context,/tree