Jawapan ringkasnya
Araluma menggunakan seni bina hibrid: kebanyakan alat berjalan sepenuhnya dalam pelayar anda tanpa sebarang muat naik, dan segelintir menghala satu permintaan rangkaian melalui infrastruktur kami sendiri apabila pelayar tidak mampu menandingi kualitinya, sentiasa dengan sandaran sisi klien yang tidak kelihatan. Kami beritahu anda laluan mana yang anda gunakan, dalam setiap alat dan di halaman ini.
Jadual di bawah bersifat mewakili, bukan menyeluruh (katalog terus berkembang). Ia menunjukkan satu contoh bagi setiap jenis laluan:
| Alat contoh | Di mana kerja berlaku |
|---|---|
| Circle Crop (pelayar sahaja) | 100% dalam pelayar anda, Canvas API. Tiada muat naik, berfungsi tanpa talian. |
| Compress pratonton (pelayar sahaja) | 100% dalam pelayar anda, canvas.toBlob. Tiada muat naik. Gelangsar kekal serta-merta. |
| Compress muat turun (menyentuh pelayan) | Satu perjalanan pergi balik ke perkhidmatan kami di api.araluma.com (sharp dan libvips pada VPS di Jerman), dengan sandaran pelayar. |
| Remove Background (menyentuh pelayan) | Satu perjalanan pergi balik ke Cloudflare Worker yang menjalankan BiRefNet pada GPU edge, dengan sandaran WebAssembly dalam pelayar anda. |
Alat pemangkasan, pengubahsaizan, PDF dan penukaran format (kecuali laluan output AVIF) berada di sisi pelayar sahaja. Muat turun pemampatan, penyingkiran latar belakang, peningkatan skala AI, dan penukaran output AVIF berada di sisi menyentuh pelayan, setiap satunya dengan sandaran tempatan.
Anda boleh mengesahkan dakwaan pelayar-sahaja dalam masa kira-kira 30 saat: buka DevTools, pergi ke panel Network, kosongkan log, kemudian gunakan mana-mana alat pelayar-sahaja. Anda akan melihat tiada permintaan yang membawa bait imej anda meninggalkan halaman. Bagi alat yang menyentuh pelayan, anda akan melihat tepat satu muat naik setiap operasi, ke titik akhir bernama di atas.
Mengapa hibrid
Kebanyakan alat imej dalam talian berada di satu hujung yang melampau: muat naik semua ke pelayan (anda menunggu perjalanan pergi balik dan pengendali menyimpan fail anda), atau semuanya dalam pelayar (anda membayar dengan kualiti dan kelajuan pada langkah pengekodan dan AI). Tiada satu hujung pun menang di mana-mana sahaja.
Kami memilih sisi klien di mana pelayar sudah pun cemerlang. Elemen <canvas>
mengendalikan pemangkasan, putaran, pengubahsaizan, dan pengekodan pratonton lossy
dalam JPG atau WebP, dan pelayar moden menyahkod setiap format lazim secara asli. Kami
memilih sisi pelayan hanya untuk beberapa langkah yang pelayar masih ketinggalan secara
boleh ukur:
- Pemampatan, pada muat turun akhir.
sharpdanlibvipssisi pelayan menghasilkan fail 10 hingga 15% lebih kecil bait demi bait berbanding pengekod pelayar pada kualiti visual yang sama, serta mendedahkan penalaan kelajuan dan kroma AVIF yang tidak diberikan pelayar. Gelangsar dan pratonton masih berjalan dalam pelayar anda supaya lelaran kekal serta-merta. Hanya ketukan “Muat Turun” yang melalui perkhidmatan kami. - Penyingkiran latar belakang AI, pada laluan lalai. Model BiRefNet yang dijalankan oleh segmentasi imej Cloudflare (seni bina yang sama seperti remove.bg) memerlukan GPU sebenar untuk selesai dalam satu dua saat. Sandaran dalam pelayar (ISNet melalui ONNX Runtime dan WebAssembly) berfungsi, tetapi mengambil masa jauh lebih lama dan menghasilkan potongan yang ketara lebih kasar pada rambut, bulu, dan tepi halus.
- Peningkatan skala AI, pada laluan lalai. Super-resolution awan memulihkan perincian yang persampelan semula sisi pelayar tidak mampu, dengan sandaran pelayar apabila perkhidmatan tidak dapat dicapai.
Kos yang kami terima kerana berada di sisi pelayan pada laluan tersebut ialah satu perjalanan pergi balik setiap operasi. Kos yang kami elakkan dengan kekal di sisi klien di tempat lain ialah yuran yang sama itu pada bahagian aliran kerja yang paling pantas berulang.
Saluran paip, langkah demi langkah
1. Anda memilih fail
Melalui pemilih fail, seret dan lepas, atau tampal, pelayar menyerahkan objek File
kepada JavaScript. JavaScript membaca bait menggunakan FileReader atau
Blob.arrayBuffer(). Pada mana-mana titik dalam langkah ini, fail tidak dihantar
melalui rangkaian, tanpa mengira alat yang anda gunakan.
2. Pelayar menyahkod imej
Pelayar moden menyahkod JPG, PNG, WebP, GIF, dan AVIF secara asli. Kami menggunakan
createImageBitmap() untuk menukar bait mentah kepada bitmap yang boleh digunakan GPU,
di luar benang utama. Untuk HEIC pada pelayar yang tidak menyahkodnya secara asli, kami
kembali kepada penyahkod WebAssembly yang berjalan secara tempatan dalam pelayar anda.
3. Alat melakukan tugasnya, di sinilah laluan berbeza
- Alat pelayar sahaja (pemangkasan, pengubahsaizan, pratonton dan gelangsar pemampatan, penyusunan PDF, dan kebanyakan penukaran format). Ini berjalan sebagai transformasi piksel Canvas dan pengekodan semula
canvas.toBlobterus pada mesin anda. Bingkai pemangkasan interaktif menggunakan Cropper.js. Tiada apa-apa meninggalkan halaman. - Muat turun pemampatan. Apabila anda mengetuk “Muat Turun”, imej pergi sekali ke
api.araluma.com(perkhidmatan Fastify pada VPS Hostinger di Jerman, Node dengansharpdanlibvips, pustaka C yang sama digunakan Squoosh pada laluan pelayannya). Ia dikodkan semula dengan parameter yang anda tetapkan dalam pratonton, dan bait dialirkan semula. Perkhidmatan menyimpan cache beralamat kandungan yang diasingkan mengikut penyewa (hash bait input dan parameter) supaya memuat turun semula imej yang sama dengan tetapan yang sama memainkan semula bait yang dicache. Cache itu tidak diindeks mengikut anda, IP anda, atau nama fail. Jika perkhidmatan tidak dapat dicapai, alat kembali kepada blob pratonton dalam pelayar. - Penyingkiran latar belakang, laluan awan lalai. Imej dimuat naik sekali ke sebuah Cloudflare Worker, dipentaskan dalam baldi R2 peribadi, diproses oleh segmentasi imej Cloudflare yang menjalankan model BiRefNet pada GPU edge, dan potongan dialirkan semula. Objek yang dipentaskan dipadamkan dalam masa satu jam oleh peraturan kitaran hayat R2, tanpa mengira hasilnya. Foto biasa selesai dalam satu dua saat. Had setiap IP harian dan had saiz muat naik mengekalkan peringkat percuma kekal mampan.
- Penyingkiran latar belakang, sandaran WebAssembly. Jika Worker tidak dapat dicapai (rangkaian anda terputus, tembok api ketat menyekatnya, kuota harian penuh, atau fail melebihi had awan), alat beralih secara senyap kepada model ISNet yang berjalan secara tempatan melalui ONNX Runtime Web dan WebAssembly. Larian pertama memuat turun model dan mengambil masa lebih lama, larian seterusnya lebih pantas. Tiada muat naik pada laluan ini, boleh disahkan dalam DevTools.
- Peningkatan skala AI. Laluan lalai menghantar imej sekali ke perkhidmatan super-resolution awan dan mengalirkan hasil yang dibesarkan semula, dengan sandaran sisi pelayar jika perkhidmatan tidak dapat dicapai.
4. Anda memuat turun hasilnya
Bitmap output dikodkan menjadi sebuah Blob, dibungkus dalam sebuah object URL, dan
diserahkan kepada dialog simpan fail standard pelayar anda. Fail mendarat pada cakera
anda.
Cara mengesahkan sendiri
Pilih mana-mana yang anda suka:
Kaedah 1. Perhatikan tab Network
- Buka Araluma dalam tab baharu dan buka DevTools, kemudian panel Network.
- Gunakan alat pelayar sahaja seperti Circle Crop atau gelangsar pratonton Compress. Anda akan melihat permintaan untuk HTML, CSS, JS, dan fon sahaja, ditambah modul WebAssembly yang berkaitan pada penggunaan pertama. Tiada permintaan akan membawa bait imej anda.
- Sekarang gunakan alat yang menyentuh pelayan seperti Compress muat turun atau Remove Background. Anda akan melihat tepat satu
POSTyang membawa imej anda ke titik akhir bernama itu, dan satu respons yang kembali dengan hasilnya. Tuding mana-mana permintaan untuk membaca saiz dan masanya.
Lajur “Initiator” memberitahu anda skrip mana yang mencetuskan setiap permintaan, dan lajur “Type” memberitahu anda apa yang dihantar. Kami tidak menyembunyikan mana-mana daripada keduanya.
Kaedah 2. Gunakan alat secara luar talian
- Muatkan mana-mana halaman alat Araluma. Jalankan Remove Background sekali pada imej kecil supaya model ISNet dalam pelayar dicache.
- Buka DevTools, pergi ke Network, dan tandakan Offline (atau matikan Wi-Fi).
- Muat semula halaman. Aset statik dicache, jadi ia masih dimuatkan.
- Cuba alat-alat:
- Alat pelayar sahaja terus berfungsi. Ia tidak pernah memerlukan rangkaian.
- Compress muat turun kembali kepada blob pratonton dalam pelayar (pengekodan sedikit kurang cekap, tetapi berfungsi).
- Remove Background kembali kepada model ISNet WebAssembly dan berfungsi tanpa sebarang permintaan keluar.
Jika alat-alat itu berfungsi tanpa talian (sebahagiannya menurun, yang pelayar sahaja serupa), maka secara takrifannya tiada pelayan yang melihat imej anda.
Apa yang kami lihat, dan apa yang tidak kami lihat
Pada laluan pelayar sahaja, kami tidak melihat apa-apa tentang imej anda. Tiada permintaan untuk dilihat, tiada cache untuk menyimpannya, tiada baris log untuk dicari.
Pada laluan menyentuh pelayan:
- Compress muat turun melihat bait imej untuk tempoh pengekodan (biasanya beberapa ratus milisaat), menyimpan satu entri cache beralamat kandungan untuk TTL-nya, dan itu sahaja. Cache tidak diindeks mengikut pengguna, IP, nama fail, atau sebarang pengecam yang boleh kami gunakan untuk mencari imej “anda”. Kami tidak merekodkan kandungan imej. Perkhidmatan pengekodan dikongsi antara penyewa yang sama yang dilayan oleh v1 sebelum peralihan, dengan CORS, had kadar, dan URL kanonik bertanda HMAC setiap penyewa.
- Remove Background melihat imej untuk tempoh muat naik pementasan dan panggilan segmentasi (biasanya satu dua saat), selepas itu salinan yang dipentaskan dipadamkan oleh peraturan kitaran hayat R2. Kami tidak pernah menyerahkan bait anda kepada penyedia model pihak ketiga. Model BiRefNet berjalan dalam infrastruktur Cloudflare sendiri, bukan pada API luaran bergaya remove.bg, fal.ai, atau Replicate.
- Peningkatan skala AI melihat imej untuk tempoh panggilan super-resolution, memulangkan hasil, dan tidak menyimpan apa-apa yang terikat dengan anda.
Pada setiap laluan, pembekal analitik kami (Cloudflare Web Analytics) merekodkan data paparan halaman agregat: URL, negara, keluarga pelayar, Core Web Vitals. Tiada kuki, tiada pengecam berterusan, tiada yang terikat dengan seseorang.
Untuk alat yang memuat turun modul WebAssembly pada penggunaan pertama (penyahkod HEIC, model ONNX ISNet), pembekal pengehosan kami melihat bahawa seseorang mengambil modul itu, sama seperti ia melihat fail CSS diambil. Modul itu sendiri tidak membawa sebarang maklumat tentang imej anda.
Inventori data penuh terdapat dalam dasar privasi kami.
Timbunan teknologi
Bagi yang ingin tahu:
- Astro, penjana tapak statik. Setiap halaman dihantar sebagai HTML biasa dengan “islands” JavaScript yang dipertingkat secara progresif hanya di tempat alat interaktif berada.
- CSS vanilla dengan sifat tersuai, tanpa Tailwind, tanpa CSS-in-JS. Sistem reka bentuk penuh ialah satu fail
tokens.css. canvas.toBlobdan<canvas>, pengekodan JPEG, PNG, WebP, dan AVIF untuk alat dan pratonton sisi pelayar.- Cropper.js, lapisan interaksi bingkai pemangkasan.
- ONNX Runtime Web, menjalankan sandaran ISNet WebAssembly untuk Remove Background.
- Cloudflare mengehoskan binaan statik dan menyajikannya dari edge, serta menjalankan Workers, R2, dan saluran paip segmentasi imej (BiRefNet) di sebalik laluan Remove Background lalai.
- Fastify dengan
sharpdanlibvipspada Node, perkhidmatan muat turun pemampatan diapi.araluma.com, pada VPS Hostinger di Jerman. - Cloudflare Web Analytics, kiraan paparan halaman agregat tanpa kuki.
Sokongan pelayar
Setiap alat berfungsi pada versi semasa dan sebelumnya Chrome, Firefox, Safari, dan
Edge, desktop dan mudah alih. Tapak ini menggunakan peningkatan progresif: di mana
pelayar menyokong API yang lebih baharu (contohnya showSaveFilePicker atau
OffscreenCanvas), kami menggunakannya, dan di mana tidak, kami kembali kepada padanan
yang lebih lama. Tiada halangan “pelayar anda tidak disokong”.
Keperluan wajib hanyalah JavaScript (untuk mana-mana alat) dan sambungan rangkaian (hanya apabila menggunakan laluan yang menyentuh pelayan, alat pelayar sahaja berjalan sepenuhnya tanpa talian selepas muat halaman pertama).
Soalan
Ada yang tidak kami liputi? E-mel kami di support@araluma.com. Soalan teknikal dialu-alukan.