เครื่องมือสองประเภท
เครื่องมือทุกตัวของ Araluma อยู่ในหนึ่งในสองกลุ่ม เครื่องมือในเบราว์เซอร์จะอ่าน แก้ไข และบันทึกไฟล์บนอุปกรณ์ของคุณเอง ส่วนเครื่องมือที่ใช้เซิร์ฟเวอร์จะอัปโหลดไฟล์ ประมวลผลบนเซิร์ฟเวอร์ของเราหรือผ่านผู้ให้บริการรูปภาพ แล้วส่งผลลัพธ์กลับมา เครื่องมือที่ใช้เซิร์ฟเวอร์ยังมีแผนสำรองที่ทำงานให้เสร็จในเบราว์เซอร์เมื่อเชื่อมต่อเซิร์ฟเวอร์ไม่ได้
| เครื่องมือ | เบราว์เซอร์เท่านั้น | ใช้เซิร์ฟเวอร์ | แผนสำรองเมื่อเซิร์ฟเวอร์ล้มเหลว |
|---|---|---|---|
| ตัดรูปเป็นวงกลม, ครอบตัดรูป, ปรับขนาดรูป | ทุกครั้ง | ไม่เคย | ไม่จำเป็น |
| แปลงรูปแบบไฟล์ (ไฟล์เดียว ผลลัพธ์เป็น PNG, JPG หรือ WebP) | ใช่ | ไม่ | ไม่จำเป็น |
| แปลงรูปแบบไฟล์ (ผลลัพธ์เป็น AVIF หรือตั้งแต่สองไฟล์ขึ้นไป) | ไม่ | ใช่ | ตัวเข้ารหัสในเบราว์เซอร์ |
| แปลง JPG เป็น PDF (รูปเดียว) | ใช่ | ไม่ | ไม่จำเป็น |
| แปลง JPG เป็น PDF (ตั้งแต่สองรูปขึ้นไป) | ไม่ | ใช่ | ประกอบไฟล์ในเบราว์เซอร์ |
| บีบอัดรูป | เฉพาะ SVG และชุดไฟล์ขนาดใหญ่มาก | ใช่ | บีบอัดในเบราว์เซอร์ |
| ลบพื้นหลัง | ไม่ | ใช่ Cloudflare ก่อน ImageKit เป็นลำดับที่สอง | โมเดล AI ที่ทำงานในเบราว์เซอร์ของคุณ |
| เพิ่มความละเอียดรูป | ไม่ | ใช่ Cloudflare ก่อน ImageKit เป็นลำดับที่สอง | สุ่มตัวอย่างใหม่ในเบราว์เซอร์ |
ยังมีอีกกรณีหนึ่งที่ใช้กับทุกเครื่องมือ นั่นคือการสร้างลิงก์แชร์หรือการบันทึกผลลัพธ์ไปยัง Dropbox จะเก็บไฟล์ผลลัพธ์ไว้ราวสองชั่วโมงเพื่อให้เปิดลิงก์ได้
ทำไมไม่ทำทุกอย่างในเบราว์เซอร์?
เบราว์เซอร์เก่งเรื่องเรขาคณิตมาก การตัด หมุน ย่อขยาย และบันทึกรูปในรูปแบบไฟล์ทั่วไปใช้เวลาเพียงเสี้ยววินาทีบนอุปกรณ์ โดยไม่ต้องรอเครือข่าย เครื่องมือเหล่านั้นจึงไม่เคยออกจากอุปกรณ์
งานอื่น ๆ ยังทำบนเซิร์ฟเวอร์ได้ดีกว่า:
- การบีบอัด ตัวเข้ารหัสฝั่งเซิร์ฟเวอร์ที่สร้างบน libvips ให้ไฟล์ที่เล็กกว่าตัวเข้ารหัสในเบราว์เซอร์อย่างเห็นได้ชัดที่คุณภาพของภาพเท่ากัน และมีการตั้งค่า AVIF ที่เบราว์เซอร์ไม่มี
- ผลลัพธ์เป็น AVIF การเข้ารหัส AVIF ในเบราว์เซอร์ช้าและกินหน่วยความจำมากบนโทรศัพท์ การแปลงเป็น AVIF จึงใช้เซิร์ฟเวอร์เดียวกัน
- งานหลายไฟล์และ PDF หลายหน้า คิวรูปหลายสิบรูปจะทำให้โทรศัพท์ค้าง เซิร์ฟเวอร์จะประมวลผลพร้อมกันแล้วส่งกลับเป็นไฟล์ ZIP หรือ PDF ไฟล์เดียว
- การลบพื้นหลังและเพิ่มความละเอียด ทั้งสองอย่างใช้โมเดล AI ที่ต้องใช้ GPU เพื่อให้ได้ผลในไม่กี่วินาที แผนสำรองในเบราว์เซอร์ใช้งานได้ แต่ช้ากว่าและขอบบริเวณเส้นผมหรือขนสัตว์หยาบกว่า
เกิดอะไรขึ้นกับไฟล์ ทีละขั้นตอน
- คุณเลือกไฟล์ การเลือก ลาก หรือวางไฟล์ทำให้หน้าเว็บได้การอ้างอิงถึงไฟล์ในเครื่อง ยังไม่มีการส่งสิ่งใดในขั้นนี้
- เบราว์เซอร์เปิดไฟล์ JPG, PNG, WebP, GIF และ AVIF ถอดรหัสได้โดยตรง ส่วนรูป HEIC จาก iPhone ถอดรหัสด้วยโมดูลขนาดเล็กที่ทำงานในหน้าเว็บ
- การประมวลผลเกิดขึ้น เครื่องมือในเบราว์เซอร์แก้ไขพิกเซลบน canvas และเข้ารหัสผลลัพธ์ในที่นั้นทันที เครื่องมือที่ใช้เซิร์ฟเวอร์อัปโหลดไฟล์ผ่าน HTTPS ไปยังพื้นที่จัดเก็บชั่วคราว Cloudflare R2 หรือตรงไปยัง Cloudflare Worker และงานจะทำงานบนเซิร์ฟเวอร์ของเราในเซาเปาลู (บีบอัด แปลงไฟล์ PDF) หรือในบริการรูปภาพของ Cloudflare หรือ ImageKit (ลบพื้นหลัง เพิ่มความละเอียด) บีบอัดรูปอาจเริ่มอัปโหลดไม่กี่วินาทีหลังจากคุณเพิ่มไฟล์ เพื่อให้ผลลัพธ์พร้อมเมื่อคุณกดปุ่ม
- คุณได้รับผลลัพธ์ ไฟล์ที่เสร็จแล้วจะถูกส่งให้ดาวน์โหลดตามปกติของเบราว์เซอร์ ผลลัพธ์ที่สร้างบนเซิร์ฟเวอร์จะอยู่ในพื้นที่จัดเก็บชั่วคราวราวสองชั่วโมง (หน้าดาวน์โหลดของบีบอัดรูปสามารถลบได้ทันที) จากนั้นจะถูกลบโดยอัตโนมัติ
นโยบายความเป็นส่วนตัว มีตารางระยะเวลาการเก็บข้อมูลฉบับเต็มและรายชื่อผู้ให้บริการ
ตรวจสอบในเบราว์เซอร์ของคุณเอง
แผง Network เปิดเครื่องมือสำหรับนักพัฒนา (F12 ในเบราว์เซอร์เดสก์ท็อปส่วนใหญ่) เลือกแท็บ Network แล้วล้างรายการ จากนั้นใช้ตัดรูปเป็นวงกลม ครอบตัดรูป หรือปรับขนาดรูป คุณจะเห็นไฟล์ของหน้าเว็บถูกโหลด และไม่มีคำขอใดที่นำรูปของคุณออกไป จากนั้นใช้บีบอัดรูปหรือลบพื้นหลัง คุณจะเห็นคำขออัปโหลดปรากฏขึ้น ตามด้วยการดาวน์โหลดผลลัพธ์
ทดสอบแบบออฟไลน์ โหลดเครื่องมือในเบราว์เซอร์ เปิดโหมดเครื่องบินหรือเลือก “Offline” ในแท็บ Network แล้วใช้งานอีกครั้ง เครื่องมือยังทำงานได้ เพราะไม่เคยต้องใช้เครือข่ายเลย ส่วนเครื่องมือที่ใช้เซิร์ฟเวอร์จะเปลี่ยนไปใช้แผนสำรอง ซึ่งเป็นอีกวิธีหนึ่งในการดูว่าแต่ละขั้นตอนทำงานที่ใด
สิ่งที่เราเห็นได้และเห็นไม่ได้
สำหรับเครื่องมือในเบราว์เซอร์ เราไม่ได้รับสิ่งใดเกี่ยวกับรูปของคุณเลย เพราะไม่มีคำขอใดนำรูปออกไป
สำหรับเครื่องมือที่ใช้เซิร์ฟเวอร์ ไฟล์จะอยู่บนโครงสร้างพื้นฐานของเราเฉพาะระหว่างที่งานทำงาน และตามระยะเวลาการเก็บข้อมูลในนโยบายความเป็นส่วนตัว เราไม่มีระบบบัญชี ไฟล์ที่อัปโหลดจึงไม่ผูกกับชื่อหรือโปรไฟล์ใด เราไม่เปิดดูไฟล์ที่อัปโหลดและไม่นำไปฝึกโมเดล
ในทุกหน้า เราบันทึกเหตุการณ์การใช้งานแบบไม่ระบุตัวตน (เครื่องมือ ขั้นตอน เวลา ข้อผิดพลาด ประเทศ ประเภทอุปกรณ์) เพื่อหาข้อบกพร่องและจุดที่ทำงานช้า เราไม่ได้ตั้งค่าคุกกี้ติดตามข้ามเว็บไซต์เอง ส่วนคุกกี้โฆษณาที่ Google ใช้บนหน้าเครื่องมือมีคำอธิบายพร้อมวิธีปฏิเสธอยู่ในนโยบายความเป็นส่วนตัว เมื่อโมเดล AI หรือตัวถอดรหัสถูกดาวน์โหลดมายังเบราว์เซอร์ของคุณ ระบบโฮสติ้งของเราจะเห็นว่ามีการขอไฟล์นั้น เช่นเดียวกับที่เห็นการขอไฟล์ stylesheet และไม่รู้สิ่งใดเกี่ยวกับรูปของคุณ
สร้างด้วยอะไร
- Astro ซึ่งเรนเดอร์ทุกหน้าเป็น HTML ธรรมดา และเพิ่ม JavaScript เฉพาะจุดที่เครื่องมือต้องใช้
- CSS ล้วน พร้อม design token โดยไม่ใช้เฟรมเวิร์ก CSS
- Canvas และ codec แบบ WebAssembly สำหรับเครื่องมือที่ทำงานในเบราว์เซอร์
- ONNX Runtime Web ซึ่งรันโมเดลลบพื้นหลังบนอุปกรณ์ของคุณเมื่อเส้นทางคลาวด์ใช้งานไม่ได้
- Cloudflare สำหรับโฮสติ้ง Workers พื้นที่จัดเก็บ R2 และโมเดลรูปภาพเบื้องหลังการลบพื้นหลังและการเพิ่มความละเอียด
- บริการ Node.js ที่ใช้ sharp และ libvips บนเซิร์ฟเวอร์ Hostinger ในเซาเปาลู ประเทศบราซิล สำหรับงานบีบอัด แปลงไฟล์ และ PDF
เบราว์เซอร์ที่รองรับ
เครื่องมือทำงานบนรุ่นปัจจุบันและรุ่นก่อนหน้าของ Chrome, Edge, Firefox และ Safari ทั้งบนคอมพิวเตอร์และโทรศัพท์ เมื่อเบราว์เซอร์มีความสามารถใหม่กว่า เครื่องมือจะใช้ความสามารถนั้น และเมื่อไม่มี วิธีที่เก่ากว่าจะทำงานแทน จึงไม่มีเบราว์เซอร์ใดถูกปฏิเสธ ทุกเครื่องมือต้องใช้ JavaScript และต้องเชื่อมต่ออินเทอร์เน็ตเฉพาะเครื่องมือที่ใช้เซิร์ฟเวอร์เท่านั้น
มีคำถามเพิ่มเติม?
ยินดีรับคำถามทางเทคนิคที่ support@araluma.com