Tinjau sebelum menerapkan
Bandingkan perilaku sebenarnya dengan hasil yang diharapkan. Jika pemeriksaan gagal, cari penyebabnya sebelum membuat perubahan lain.
Kodekan hingga 4096 byte menjadi pasangan indeks kamus dan byte berikutnya dengan LZ78.
def lz78_tokens(data):
if type(data) is not bytes or len(data) > 4096:
raise ValueError("lz78.input")
dictionary, phrase, output = {b"": 0}, b"", []
for byte in data:
extended = phrase + bytes([byte])
if extended in dictionary:
phrase = extended
else:
output.append((dictionary[phrase], byte))
dictionary[extended] = len(dictionary)
phrase = b""
if phrase:
output.append((dictionary[phrase], None))
return outputBandingkan perilaku sebenarnya dengan hasil yang diharapkan. Jika pemeriksaan gagal, cari penyebabnya sebelum membuat perubahan lain.
Atur endpoint kompatibel OpenAI atau Anthropic dengan URL dasar dan kunci API jika diperlukan. Uji koneksi. Server model lokal harus berjalan; alat jarak jauh dapat mengirim data secara terpisah.
Uji masukan kosong dan pengulangan, gunakan penanda byte null terakhir hanya untuk frasa yang sudah ada dalam kamus.
def lz78_tokens(data):
if type(data) is not bytes or len(data) > 4096:
raise ValueError("lz78.input")
dictionary, phrase, output = {b"": 0}, b"", []
for byte in data:
extended = phrase + bytes([byte])
if extended in dictionary:
phrase = extended
else:
output.append((dictionary[phrase], byte))
dictionary[extended] = len(dictionary)
phrase = b""
if phrase:
output.append((dictionary[phrase], None))
return outputPhraseNacre menyediakan ruang kerja proyek Windows untuk mengembangkan kode yang mengubah byte menjadi representasi yang digunakan di tempat lain. Mulailah dengan folder sumber dan kesepakatan antara penghasil dan pembaca. Minta model memeriksa antarmuka itu sebelum mengusulkan perubahan encoder, karena keluaran yang tampak lebih ringkas mungkin tidak lagi bermakna sama bagi penggunanya.
Sebagai tugas konkret, gunakan lz78.py untuk membahas representasi frasa akhir yang sudah dikenal. Berikan data uji byte singkat dengan konten berulang serta urutan token yang diharapkan pembaca. Percakapan kemudian dapat berfokus pada apakah usulan perubahan mempertahankan konvensi akhir, alih-alih menganggap semua pasangan implementasi encoder dan decoder memakai satu format.
Periksa pembaca bersama penghasil yang diubah dan jalankan pemeriksaan proyek Anda sendiri. Sertakan masukan kosong, frasa berulang, dan byte berbeda, dengan keluaran yang diharapkan secara independen jika memungkinkan. Pengujian bolak-balik merupakan bukti berguna, tetapi bandingkan juga data uji lama agar dua komponen yang diubah tidak sama-sama memakai format baru yang tidak kompatibel tanpa terdeteksi saat peninjauan.
Anda memilih model pembantu melalui endpoint yang didukung, baik yang kompatibel dengan OpenAI maupun Anthropic, dengan kredensial bila diperlukan. Model AI abliterasi hanya tersedia jika endpoint menawarkannya; pembatasan penyedia tetap berlaku. Akses alat dan batas konteks bergantung pada model serta server terpilih, sementara kompatibilitas format tetap menjadi persyaratan proyek yang eksplisit.
Keluaran merupakan antarmuka, termasuk penanda yang digunakan untuk frasa akhir. Penghasil dapat mengeluarkan token yang konsisten secara internal tetapi ditafsirkan berbeda oleh pembaca lama. Tinjau kedua sisi dan pertahankan data uji lama agar perubahan kecil encoder tidak diam-diam mengubah format.
Itu berguna, tetapi dua komponen yang diubah bersama dapat memiliki kesalahan yang sama. Bandingkan juga contoh token yang ditentukan secara independen dan data uji terenkode lama. Nyatakan arah kompatibilitas yang penting, misalnya apakah pembaca saat ini harus tetap menerima data yang dibuat sebelumnya.
Hanya dengan kontrak pengodean yang eksplisit. Contoh menerima byte, sehingga memindahkan konversi teks ke dalamnya mengubah antarmuka. Periksa lokasi aplikasi saat ini memilih pengodean karakter dan pertahankan batas itu kecuali fitur yang diminta sengaja memindahkannya.
Tidak. Panjang sumber tidak membuktikan ukuran keluaran atau kinerja beban kerja. Fokuskan peninjauan pada perilaku yang diminta dan gunakan pengukuran terpisah yang sesuai jika karakteristik kompresi penting. Laporkan hanya hasil dari data uji dan implementasi yang benar-benar diuji.
PhraseNacre · Diperbarui 2026-10-25