„Na Twoim komputerze działa model językowy” to zdanie, które wielu osobom przywodzi na myśl rozpędzający się wentylator i laptop nagrzewający się bez powodu. To uzasadnione skojarzenie, bo tak właśnie wygląda nieumiejętne uruchamianie modelu czatowego.
Podpowiadanie podczas pisania to zupełnie inne obciążenie. Oto jego rzeczywisty koszt, aby można było dobrać model do posiadanego komputera.
Cztery rodzaje kosztów, ale tylko jeden jest stały
Dysk. Plik modelu — jednorazowo. Od kilkuset megabajtów do kilku gigabajtów, zajętych po pobraniu.
Pamięć. Wagi modelu muszą pozostawać w pamięci, gdy model jest załadowany: mniej więcej tyle, ile zajmuje plik, plus niewielki narzut na pracę. To stały koszt i czynnik decydujący o tym, czy model danego rozmiaru zmieści się na Twoim komputerze. Na laptopie z 16 GB pamięci jeden gigabajt zajmowany przez załadowany model nie jest niczym niezwykłym. Na laptopie z 8 GB, gdy przeglądarka jest otwarta, trzy gigabajty to już dużo.
Moc obliczeniowa. Jest potrzebna tylko podczas generowania podpowiedzi. Przy dokańczaniu zdań to seria trwająca kilkaset milisekund, powtarzana kilka razy na minutę i rozdzielona przerwami między kolejnymi naciśnięciami Twoich klawiszy. Dla porównania: asystent czatowy generujący sześćset słów przez kilka sekund maksymalnie obciąża procesor.
Bateria. Zużycie baterii zależy od ilości wykonywanych obliczeń. Krótkie serie obliczeń kosztują niewiele. Uczciwie trzeba jednak zaznaczyć, że komputer, który nigdy nie przechodzi w głębokie stany oszczędzania energii, zużywa jej więcej niż taki, który to robi — efekt nie jest więc dokładnie zerowy.
Warto zapamiętać: przez niemal cały czas przewidywanie tekstu pozostaje bezczynne. Rzeczywistym kosztem jest zajęta pamięć, a wszystko inne ma znikome znaczenie, chyba że model jest zdecydowanie za duży dla danego komputera.
Dlaczego plik jest mniejszy, niż można się spodziewać
Model reklamowany jako zajmujący kilkaset megabajtów nie ma kilkuset milionów parametrów. Modele są dystrybuowane w postaci skwantyzowanej, z wagami zapisanymi z mniejszą precyzją — zwykle czterema lub pięcioma bitami zamiast szesnastu. Zmniejsza to rozmiar i zapotrzebowanie na pamięć mniej więcej czterokrotnie, przy umiarkowanej, mierzalnej utracie jakości.
W przypadku otwartego rozumowania taka utrata ma znaczenie. Przy dokańczaniu rozpoczętego zdania przeważnie nie ma, ponieważ ograniczenia wynikają z Twojego tekstu, a nie z głębi modelu. To techniczny powód, dla którego mały model lokalny nadaje się do tego zadania, ale nie do innych.
Prawdziwym ograniczeniem jest opóźnienie, nie jakość
Istnieje nieprzekraczalny termin. Podpowiedź, która pojawia się, gdy samodzielnie wpiszesz już te słowa, jest gorsza niż jej brak: wyświetla się akurat wtedy, gdy kończysz pisać, a Ty czytasz ją na próżno.
To ograniczenie czasowe ogranicza rozmiar modelu niezależnie od ilości dostępnej pamięci. Po przekroczeniu pewnego rozmiaru lepszy model staje się wolniejszy, a wolniejszy oznacza niewykorzystany. W praktyce podpowiedź powinna pojawić się, gdy palce zatrzymują się między słowami — w ciągu kilkuset milisekund, a nie półtorej sekundy.
To odwraca zwykłe intuicje. W tym przypadku większy model nie jest lepszy, jeśli podpowiedź pojawia się za późno. Właściwy rozmiar to największy model, który nadal odpowiada w przerwie na Twoim sprzęcie — i będzie on inny na ultrabooku z 2019 roku niż na komputerze stacjonarnym z dedykowaną kartą graficzną.
Wybór rozmiaru
Typeahead oferuje trzy warianty, które bezpośrednio odpowiadają różnym kompromisom.
| Rozmiar | Na dysku | Podane wymagania | Dla kogo |
|---|---|---|---|
| Szybki (domyślny) | ~600 MB | — | Każdy obsługiwany komputer; najlepszy punkt wyjścia |
| Zrównoważony | ~1,2 GB | 8 GB pamięci systemowej | Komputery z zapasem zasobów: lepsze podpowiedzi, a nadal wygodne tempo działania |
| Maksymalna jakość | ~2,5 GB | Dedykowana karta graficzna z własną pamięcią 8 GB, 16 GB pamięci systemowej | Komputery stacjonarne i stacje robocze z prawdziwym GPU |
Dwie uwagi do tej tabeli.
Zacznij od wariantu Szybkiego, nawet jeśli Twój komputer poradzi sobie z większym modelem. Korzystaj z niego przez tydzień. Jeśli podpowiedzi są wystarczająco trafne, większy model nie da Ci niczego, co zauważysz podczas pisania wiadomości na czacie. Jeśli wyraźnie odbiegają od tego, czego potrzebujesz, przejdź na większy wariant — będziesz już wiedzieć, za co płacisz opóźnieniem.
Największy wariant wymaga dedykowanej karty z własną pamięcią 8 GB, a nie 8 GB współdzielonej pamięci systemowej. Zintegrowana grafika w laptopie nie spełnia tego warunku, a zmuszanie modelu do pracy na sprzęcie, który musi przenosić jego dane między pamięcią a dyskiem, to dokładnie sposób na doświadczenie z rozpędzającym się wentylatorem opisane na początku artykułu.
Komputery z naprawdę ograniczonymi zasobami
- 8 GB pamięci RAM, otwarta przeglądarka, Teams i Office. Już przed uruchomieniem czegokolwiek innego jesteś blisko limitu. Używaj najmniejszego modelu i pamiętaj, że zauważysz jego działanie bardziej niż osoba z 16 GB pamięci. Jeśli komputer już podczas zwykłej pracy przenosi dane między pamięcią a dyskiem, załadowany model pogorszy sytuację.
- Starsze procesory bez AVX2. Biblioteki do wnioskowania wykorzystują instrukcje wektorowe. Procesor sprzed 2013 roku będzie działał wolniej, niż sugeruje dowolna podana wartość — odczujesz wtedy ograniczenie związane z opóźnieniem, opisane powyżej.
- Cienkie laptopy z ograniczeniami termicznymi. Serie obliczeń są na tyle krótkie, że samo to obciążenie prawdopodobnie nie doprowadzi do długotrwałego ograniczania wydajności z powodu temperatury. Jeśli jednak komputer już ogranicza wydajność pod innym obciążeniem, nie ma żadnego zapasu.
- Praca na baterii, z dala od źródła zasilania. Podpowiedzi nadal działają, ponieważ są generowane lokalnie i nie wymagają połączenia. Jeśli chcesz zoptymalizować komputer pod kątem długiego lotu, wybierz mniejszy model.
Jak sprawdzić działanie na własnym komputerze
Wyniki pomiarów z laptopa innej osoby niewiele Ci powiedzą. Dwa pomiary, dziesięć minut.
- 1. Zanim cokolwiek zainstalujesz, otwórz Menedżera zadań → Wydajność i zanotuj wykorzystanie pamięci podczas typowej pracy: przy zwykle otwartych kartach przeglądarki, poczcie i komunikatorze.
- 2. Po zainstalowaniu i załadowaniu modelu, sprawdź tę samą wartość oraz wykorzystanie pamięci przez aplikację na karcie Procesy.
Jeśli różnica pozostawia Ci wygodny zapas do całkowitej dostępnej pamięci, wszystko jest w porządku. Jeśli zbliża Cię do limitu, wybierz mniejszy model.
Opóźnienie jest subiektywne — i to dobrze: wpisz zdanie, które normalnie byś napisał, i zwróć uwagę, czy podpowiedź pojawia się, gdy zatrzymujesz palce, czy dopiero po chwili. Najlepiej sprawdzić to w okresie próbnym — okres próbny Typeahead trwa siedem dni i zapewnia dostęp do wszystkich rozmiarów modeli.
Co zyskujesz w zamian za ten koszt
- Nic, co wpisujesz, nie opuszcza komputera. Nie chodzi o politykę dotyczącą tego, jak serwer obchodzi się z Twoim tekstem, ale o właściwość wynikającą z miejsca jego przetwarzania.
- Działa bez połączenia. W samolocie, w pociągu, w hotelu, gdzie Wi-Fi przestało rozwiązywać nazwy DNS.
- Brak abonamentu za stanowisko i brak konta, ponieważ nie ma serwera, za który trzeba płacić.
- Brak zmiennego opóźnienia. Lokalny model działa z taką samą szybkością o 9:00 i o 17:00, w przeciwieństwie do współdzielonej usługi.
Czy warto poświęcić na to gigabajt pamięci, to uzasadnione pytanie, na które każdy odpowie inaczej. To mniejsza sprawa, niż się wydaje, i można ją rozstrzygnąć w tydzień.