Dwa rodzaje narzędzi
Każde narzędzie Aralumy należy do jednej z dwóch grup. Narzędzia przeglądarkowe odczytują, edytują i zapisują Twój plik na Twoim urządzeniu. Narzędzia serwerowe przesyłają plik, przetwarzają go na naszych serwerach lub u dostawcy usług obrazów i zwracają wynik. Narzędzia serwerowe mają też plan B, który kończy zadanie w Twojej przeglądarce, gdy serwery są nieosiągalne.
| Narzędzie | Tylko w przeglądarce | Na serwerze | Plan B, gdy serwery zawiodą |
|---|---|---|---|
| Przytnij zdjęcie do koła, Przytnij obraz, Zmień rozmiar obrazu | Zawsze | Nigdy | Niepotrzebny |
| Konwersja formatu (jeden plik, wynik PNG, JPG lub WebP) | Tak | Nie | Niepotrzebny |
| Konwersja formatu (wynik AVIF albo dwa pliki lub więcej) | Nie | Tak | Koder w przeglądarce |
| JPG do PDF (jeden obraz) | Tak | Nie | Niepotrzebny |
| JPG do PDF (dwa obrazy lub więcej) | Nie | Tak | Składanie w przeglądarce |
| Kompresuj obraz | Tylko SVG i bardzo duże partie | Tak | Kompresja w przeglądarce |
| Usuń tło | Nie | Tak, najpierw Cloudflare, potem ImageKit | Model AI działający w Twojej przeglądarce |
| Powiększ obraz | Nie | Tak, najpierw Cloudflare, potem ImageKit | Przepróbkowanie w przeglądarce |
Jeszcze jeden przypadek dotyczy każdego narzędzia: utworzenie linku do udostępniania lub zapisanie wyniku w Dropbox powoduje przechowanie pliku wynikowego przez około dwie godziny, aby link dało się otworzyć.
Dlaczego nie robić wszystkiego w przeglądarce?
Przeglądarki świetnie radzą sobie z geometrią. Wycinanie, obracanie, skalowanie i zapisywanie obrazu w popularnych formatach zajmuje na urządzeniu ułamek sekundy, bez czekania na sieć, więc te narzędzia nigdy go nie opuszczają.
Inne zadania wciąż lepiej wykonuje serwer:
- Kompresja. Serwerowe kodery oparte na libvips tworzą przy tej samej jakości wizualnej wyraźnie mniejsze pliki niż kodery wbudowane w przeglądarki i udostępniają ustawienia AVIF, których przeglądarki nie mają.
- Wynik w AVIF. Kodowanie AVIF w przeglądarce jest na telefonach powolne i pamięciożerne, dlatego konwersje do AVIF korzystają z tego samego serwera.
- Partie i wielostronicowe PDF. Kolejka kilkudziesięciu zdjęć zablokowałaby telefon. Serwer przetwarza je razem i zwraca jeden plik ZIP lub PDF.
- Usuwanie tła i powiększanie. Oba zadania korzystają z modeli AI, które potrzebują GPU, by odpowiedzieć w kilka sekund. Plan B w przeglądarce działa, ale jest wolniejszy, a krawędzie włosów i sierści wychodzą bardziej poszarpane.
Co dzieje się z plikiem, krok po kroku
- Wybierasz plik. Wybranie, przeciągnięcie lub wklejenie pliku daje stronie lokalne odwołanie do niego. Na tym etapie nic nie jest wysyłane.
- Przeglądarka go otwiera. JPG, PNG, WebP, GIF i AVIF są dekodowane natywnie. Zdjęcia HEIC z iPhone’a dekoduje mały moduł działający na stronie.
- Wykonywana jest praca. Narzędzia przeglądarkowe edytują piksele na elemencie canvas i od razu kodują wynik. Narzędzia serwerowe przesyłają plik przez HTTPS do tymczasowego magazynu Cloudflare R2 lub bezpośrednio do Cloudflare Worker, a zadanie jest wykonywane na naszym serwerze w São Paulo (kompresja, konwersja, PDF) albo w usługach obrazów Cloudflare lub ImageKit (usuwanie tła, powiększanie). Kompresuj obraz może zacząć przesyłanie kilka sekund po dodaniu plików, aby wynik był gotowy, gdy naciśniesz przycisk.
- Otrzymujesz wynik. Gotowy plik trafia do zwykłego pobierania w przeglądarce. Wyniki przygotowane na serwerze leżą w tymczasowym magazynie przez około dwie godziny (ekran pobierania w narzędziu Kompresuj obraz pozwala usunąć je od razu), a potem są usuwane automatycznie.
Polityka prywatności zawiera pełną tabelę okresów przechowywania i listę dostawców.
Sprawdź to we własnej przeglądarce
Panel sieci. Otwórz narzędzia deweloperskie (F12 w większości przeglądarek na komputerze), wybierz kartę Network i ją wyczyść. Uruchom Przytnij zdjęcie do koła, Przytnij obraz lub Zmień rozmiar obrazu: zobaczysz ładowanie zasobów strony i żadnego żądania zawierającego Twoje zdjęcie. Następnie uruchom Kompresuj obraz lub Usuń tło: pojawi się żądanie przesłania, a po nim pobranie wyniku.
Test offline. Załaduj narzędzie przeglądarkowe, włącz tryb samolotowy lub zaznacz „Offline” na karcie Network i użyj narzędzia ponownie. Nadal działa, bo nigdy nie potrzebowało sieci. Narzędzia serwerowe przełączą się natomiast na plan B, co również pozwala zobaczyć, gdzie wykonywany jest każdy krok.
Co widzimy, a czego nie
W przypadku narzędzi przeglądarkowych nie otrzymujemy niczego na temat Twojego zdjęcia, bo żadne żądanie go nie zawiera.
W przypadku narzędzi serwerowych plik istnieje w naszej infrastrukturze tylko w trakcie wykonywania zadania i przez okresy przechowywania podane w polityce prywatności. Nie ma kont, więc przesłany plik nie jest powiązany z żadnym nazwiskiem ani profilem. Nie przeglądamy przesłanych plików i nie używamy ich do trenowania modeli.
Na każdej stronie rejestrujemy anonimowe zdarzenia użycia (narzędzie, krok, czas, błędy, kraj, typ urządzenia), aby znajdować błędy i wolne miejsca. Sami nie ustawiamy plików cookie śledzących między witrynami. Reklamowe pliki cookie, których Google używa na stronach narzędzi, oraz sposoby ich odrzucenia opisuje polityka prywatności. Gdy do Twojej przeglądarki pobierany jest model AI lub dekoder, nasz hosting widzi, że plik został pobrany, tak samo jak widzi pobranie arkusza stylów, i nie dowiaduje się niczego o Twoim obrazie.
Na czym to zbudowano
- Astro, który renderuje każdą stronę jako zwykły HTML i dodaje JavaScript tylko tam, gdzie potrzebuje go narzędzie.
- Czysty CSS z tokenami projektowymi, bez frameworka CSS.
- Canvas i kodeki WebAssembly dla narzędzi działających w przeglądarce.
- ONNX Runtime Web, który uruchamia model usuwania tła na Twoim urządzeniu, gdy ścieżka chmurowa jest niedostępna.
- Cloudflare do hostingu, Workers, magazynu R2 i modeli obrazów obsługujących usuwanie tła i powiększanie.
- Usługa Node.js z sharp i libvips na serwerze Hostinger w São Paulo w Brazylii, do kompresji, konwersji i tworzenia PDF.
Obsługiwane przeglądarki
Narzędzia działają w bieżącej i poprzedniej wersji Chrome, Edge, Firefox i Safari, na komputerach i telefonach. Gdy przeglądarka oferuje nowszą funkcję, narzędzie z niej korzysta, a gdy jej brakuje, zastępuje ją starsza metoda, więc żadna przeglądarka nie zostaje odrzucona. Każde narzędzie wymaga JavaScriptu, a połączenie z internetem jest potrzebne tylko narzędziom serwerowym.
Masz więcej pytań?
Pytania techniczne chętnie przyjmujemy pod adresem support@araluma.com.