← Semua panduan Di balik layar

Mengapa detektor berjalan di peramban Anda

Model 40 MB, WebAssembly, dan tanpa titik akhir unggahan. Keuntungan yang didapat dari arsitektur tersebut, biayanya, dan alasan mengapa pertukaran itu layak dilakukan.

· 8 mnt baca · Best AI Image Detector

Jadi, gambar Anda tidak pernah meninggalkan perangkat Anda. Model diunduh sekali dan berjalan di mesin Anda, yang sekaligus menghilangkan unggahan, biaya server, dan hubungan pemrosesan data.

Seperti apa bentuk arsitektur sebenarnya

Vision transformer, yang dikonversi ke ONNX dan dikompresi menjadi sekitar 40 MB, dibagi menjadi dua bagian agar masing-masing tetap berada di bawah batas ukuran file platform hosting. Model ini dirakit kembali di peramban dan checksum-nya diverifikasi sebelum ada yang berjalan.

Inferensi terjadi melalui WebAssembly, yang memungkinkan runtime yang dikompilasi berjalan dengan kecepatan yang mendekati kecepatan asli di dalam tab peramban. Runtime itu sendiri adalah biner WASM terkompresi yang dimuat bersama dengan bobotnya.

Tidak ada hal yang aneh dari ini lagi. Apa yang dulunya merupakan demonstrasi penelitian pada tahun 2021 kini menjadi cara normal untuk mengirimkan model, dan peramban melakukan sebagian besar pekerjaan tersebut.

Yang didapat

Properti Di dalam peramban Di server
Gambar meninggalkan perangkat Anda No mustahil Yes diperlukan
Biaya per pemeriksaan Yes nol No komputasi nyata
Perjanjian pemrosesan data diperlukan No Yes
Berfungsi tanpa jaringan setelah dimuat Yes No
Model dapat dijaga kerahasiaannya No model diunduh Yes
Pemeriksaan pertama instan No model diunduh sekali Yes
Produk yang sama, dibuat dengan dua cara. Perbedaan tersebut lebih bersifat arsitektural daripada pilihan kebijakan.

Baris pertama adalah alasan mengapa baris lainnya ada. Karena tidak ada titik akhir unggahan, tidak ada kumpulan foto orang lain, tidak ada kebijakan retensi yang harus ditulis, tidak ada kebocoran yang harus diungkapkan, dan tidak ada yang harus diserahkan atas permintaan.

Baris kedua adalah alasan mengapa layanan ini dapat disediakan gratis tanpa meteran penggunaan. Biaya pemeriksaan tidak ada untuk disajikan, sehingga tidak ada biaya per gambar yang harus ditutupi, yang mengubah bentuk harga.

Biayanya

Tiga pertukaran nyata, dinyatakan secara terus terang, karena halaman yang hanya mencantumkan keunggulan adalah iklan.

  1. Pemeriksaan pertama lambat. Empat puluh megabita harus tiba sebelum terjadi apa pun. Pada koneksi cepat, itu memakan waktu beberapa detik; pada koneksi buruk, waktu yang dibutuhkan lebih lama. Pemeriksaan berikutnya menggunakan kembali model yang di-cache dan langsung dimulai.
  2. Perangkat lama mengalami kendala. Inferensi membutuhkan memori dan pemrosesan yang mungkin tidak dimiliki oleh ponsel berusia lima tahun dengan nyaman. Server tidak akan peduli perangkat apa yang Anda pegang.
  3. Model bersifat publik. Apa pun yang diunduh ke peramban dapat disimpan. Model sisi server dapat bersifat hak milik; model ini tidak, dan bobotnya tetap merupakan pos pemeriksaan penelitian terbuka.

Poin ketiga layak untuk dibahas secara langsung. Mengirimkan model ke klien berarti memberikannya secara cuma-cuma. Itu adalah pertukaran yang dapat diterima di sini karena bobotnya sudah dipublikasikan, dan pekerjaan yang membuat alat ini berguna adalah kalibrasi, penjubahan (tiling), dan interpretasi yang dibangun di sekitarnya.

Masalah rekayasa yang layak diketahui

Memecah file besar

Platform hosting statis membatasi ukuran file individual. Model 40 MB melebihi batas tersebut, sehingga dikirim sebagai dua bagian deterministik yang dirakit ulang di peramban dan dicocokkan dengan hash manifes sebelum digunakan. Bagian yang rusak atau digantikan akan gagal secara jelas alih-alih secara senyap menghasilkan skor yang salah.

Tidak memuat apa pun hingga diperlukan

Model, runtime, dan pembaca kredensial tidak diambil saat halaman dimuat. Komponen-komponen tersebut tiba pada keterlibatan pertama, sehingga seseorang yang membaca artikel tidak mengunduh bagian mana pun darinya. Hal tersebut menjaga kecepatan halaman bagi sebagian besar pengunjung yang tidak pernah menjalankan pemeriksaan.

Mendekode format yang rumit

HEIC dari iPhone, AVIF, TIFF, dan JPEG XL semuanya perlu didekode sebelum diberi skor. Peramban sekarang menangani sebagian besar format ini secara natif, yang menghilangkan bagian terbesar dari pekerjaan sisi klien dalam alat seperti ini.

Saat arsitektur ini menjadi pilihan yang salah

Ini bukan pilihan yang selalu lebih baik di segala situasi. Server lebih masuk akal ketika model bersifat hak milik dan layak dilindungi, ketika ukurannya terlalu besar untuk dikirimkan, ketika Anda memerlukan hasil dalam alur kerja backend alih-alih di hadapan seseorang, atau ketika Anda memerlukan waktu respons yang dijamin terlepas dari perangkatnya.

Untuk alat yang dibuka seseorang untuk memeriksa satu foto yang mencurigakan, tidak ada satu pun dari hal tersebut yang berlaku, dan properti privasi bernilai lebih tinggi daripada semua yang akan ditambahkan oleh server.

Hal yang tidak dapat dilakukan oleh ini

Memilih klien memiliki konsekuensi di luar privasi, dan beberapa di antaranya adalah batasan yang layak diberi nama alih-alih dianggap sebagai fitur.

Tidak ada riwayat. Hasil hanya ada di tab yang menghasilkan hasil tersebut, sehingga tidak ada yang dapat dicari nanti kecuali jika diekspor. Itu adalah biaya langsung dari ketiadaan akun, dan itu adalah satu hal yang paling banyak diminta yang membuat arsitektur ini menjadi canggung.

Tidak ada status bersama. Dua orang tidak dapat melihat antrean yang sama, dan sebuah tim tidak dapat saling meninjau pemeriksaan masing-masing. Tautan bersama membawa satu hasil tunggal, yang mencakup percakapan dan bukan alur kerja.

Tidak ada API. Apa pun yang berjalan di tab peramban tidak dapat dipanggil dari alur kerja backend, yang sepenuhnya menyingkirkan penggunaan bervolume tertinggi. Itu adalah celah yang nyata, dan posisi yang jujur adalah bahwa hal tersebut adalah harga dari properti yang lebih penting.

Pertanyaan yang diajukan orang

Apakah gambar saya benar-benar tidak diunggah?
Ya, dan Anda tidak perlu mempercayai hal itu begitu saja. Buka tab jaringan di alat pengembang dan jalankan pemeriksaan. Anda akan melihat unduhan model dan runtime, serta tidak ada permintaan yang membawa file Anda. Itu adalah salah satu klaim privasi yang dapat diverifikasi pengguna secara langsung dalam waktu sekitar tiga puluh detik.
Mengapa modelnya begitu besar?
Ini adalah vision transformer dengan jutaan parameter, yang dikompresi sejauh mungkin tanpa kehilangan akurasi. Model yang lebih kecil ada dan kinerjanya jauh lebih buruk, terutama pada gambar terkompresi dan terpotong yang benar-benar diperiksa oleh orang-orang. Empat puluh megabita adalah harga untuk akurasi.
Apakah alat ini berfungsi secara luring?
Setelah pemuatan pertama, sebagian besar ya. Begitu model di-cache, penilaian berjalan tanpa jaringan sama sekali. Satu bagian yang memerlukan koneksi adalah mengambil gambar dari URL yang ditempel, dan memeriksa file lokal berfungsi tanpa jaringan.
Apakah ini akan menguras baterai ponsel saya?
Satu pemeriksaan memerlukan waktu pemrosesan beberapa detik, setara dengan memuat halaman web yang berat. Menjalankan sekumpulan dua puluh lima pemeriksaan akan lebih terasa. Ini bukan sesuatu yang akan Anda biarkan terus berjalan, dan ini bukan biaya yang berarti untuk penggunaan sesekali.
Bisakah Anda tidak menggunakan WebGPU untuk membuatnya lebih cepat?
Untuk perangkat yang mendukungnya, ya, dan dukungan tersebut masih belum merata sehingga jalur WASM harus tetap ada. Menambahkan jalur eksekusi kedua melipatgandakan area tempat hasil dapat berbeda di antara pengguna, yang merupakan biaya nyata dibandingkan dengan peningkatan kecepatan yang tidak akan disadari oleh kebanyakan orang.
Apakah peramban mengirimkan apa pun tentang gambar saya?
Tidak. Tidak ada telemetri pada nama file, dimensi, atau skor, karena hasilnya tidak pernah ada di mana pun kecuali di tab Anda. Itu adalah konsekuensi dari arsitektur alih-alih sebuah pengaturan, yang merupakan bagian yang perlu dipahami.