Proyek
Uji nol dan nilai terbesar yang muat, lalu tolak boolean, lebar tidak sah, dan nilai yang melampaui lebar.
Ubah bilangan bulat menjadi kode Gray dan kembali dengan lebar eksplisit satu hingga 16 bit.
def checked_word(value, width):
if type(width) is not int or not 1 <= width <= 16:
raise ValueError("word.width")
if type(value) is not int or not 0 <= value < (1 << width):
raise ValueError("word.value")
return value
def to_gray(value, width):
value = checked_word(value, width)
return value ^ (value >> 1)
def from_gray(value, width):
value = checked_word(value, width)
result = 0
while value:
result ^= value
value >>= 1
return resultUji nol dan nilai terbesar yang muat, lalu tolak boolean, lebar tidak sah, dan nilai yang melampaui lebar.
Bandingkan 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.
def checked_word(value, width):
if type(width) is not int or not 1 <= width <= 16:
raise ValueError("word.width")
if type(value) is not int or not 0 <= value < (1 << width):
raise ValueError("word.value")
return value
def to_gray(value, width):
value = checked_word(value, width)
return value ^ (value >> 1)
def from_gray(value, width):
value = checked_word(value, width)
result = 0
while value:
result ^= value
value >>= 1
return resultGraySorrel adalah ruang kerja pemrograman AI untuk Windows yang membantu memperjelas asumsi representasi selama pengembangan. Sertakan kode konversi dan kode yang menggunakannya dalam percakapan proyek, lalu jelaskan nilai dan lebar yang diterima antarmuka. Konteks itu membantu model membahas perubahan konkret alih-alih menyarankan rutin umum dengan batas berbeda.
Ambil konversi kode Gray dengan lebar tetap sebagai tugas. Minta pemeriksaan konversi maju dan balik secara bersamaan, termasuk pemeriksaan masukan yang digunakan keduanya. Berikan beberapa nilai yang sudah diketahui serta kasus batas lebar, lalu minta hanya perbaikan yang diperlukan untuk kontrak yang Anda inginkan. Contoh ini memberi percakapan sasaran yang dapat diuji.
Tinjau cara usulan menangani nilai di luar lebar yang dipilih. Pemotongan diam-diam dan penolakan eksplisit menghasilkan perilaku perangkat lunak berbeda, meskipun hasil konversi biasa sama. Jalankan pengujian proyek, bandingkan konversi bolak-balik dalam rentang yang didukung, dan periksa penanganan kesalahan pada kode pemanggil. Sertakan pengodean tepat yang diharapkan maupun contoh yang dapat dikonversi kembali.
Hubungkan model melalui endpoint kompatibel OpenAI atau endpoint Anthropic yang didukung, dengan menambahkan kredensial jika diperlukan. Pilihan model AI tanpa sensor berlaku jika endpoint Anda menawarkan model tersebut; batasan aktualnya tetap perlu diperhatikan. Dukungan alat dan kapasitas konteks bergantung pada model dan server, sedangkan tanggung jawab atas kontrak dan perubahan akhir tetap pada Anda.
Tidak. Dua fungsi bisa saling membalikkan tetapi menerapkan pemetaan yang salah. Sertakan pengodean yang diketahui secara independen selain pemeriksaan bolak-balik, dan periksa cara kode pengguna menafsirkan hasil sebelum menerima perubahan yang diusulkan.
Tentukan apakah kontrak Anda menolaknya atau sengaja memotongnya. Minta model menelusuri validasi yang ada dan ekspektasi pemanggil. Masking merupakan perubahan perilaku jika sebelumnya pemanggil menerima kesalahan, sekalipun menyederhanakan konversi.
Mulailah dengan kode yang menyimpan, membandingkan, atau mengirim nilai hasil konversi, beserta pengujian terkait. Ini mengungkap asumsi mengenai lebar dan representasi. Perluas konteks hanya jika pemeriksaan menemukan dependensi lain yang diperlukan untuk memahami perubahan yang diusulkan.
Tidak. Verifikasi rentang yang didukung dalam kode dan pengujian. Periksa juga eksekusi alat: penggunaan server model lokal yang berjalan terpisah tidak membuat semua alat terhubung menjadi lokal atau memastikan tempat pengujian tersebut sebenarnya dijalankan.
GraySorrel · Diperbarui 2026-10-25