Jak uruchomić sieć neuronową o 27 miliardach parametrów na zwykłym iPhonie lub domowym PC
Ostatnio złapałem się na myśli: przyzwyczailiśmy się do tego, że uruchamianie poważnych LLM (Large Language Models) wymaga serwerów z A100 lub przynajmniej topowych RTX 4090. Ale co, jeśli powiedziałbym ci, że model na poziomie 27B można teraz „wcisnąć" do pamięci RAM zwykłego smartfona lub laptopa bez dedykowanej karty graficznej? Projekt Bonsai-demo od zespołu Prismml robi dokładnie to, wykorzystując magię kwantyzacji 1-bitowej i ternarnej.
Na czym polega istota projektu
Głównym problemem dużych modeli jest ich „łakomstwo". Standardowy model 27B w formacie 16-bitowym waży około 50 GB. Nawet popularna kompresja 4-bitowa (Q4_K_M) wymaga 16-17 GB pamięci wideo tylko na wagi. Bonsai-demo oferuje przejście na skrajny poziom: modele 1-bitowe i ternarne (1,58-2 bity).
W rezultacie Bonsai-27B w konfiguracji 1-bitowej zajmuje tylko 3,5 GB. To porównywalne z rozmiarem średniej gry mobilnej. Deweloperzy twierdzą, że model zachowuje zdolność do rozumowania, widzenia obrazów, a nawet wywoływania narzędzi.
Co potrafi to „drzewo"
Przejrzałem repozytorium i wyróżniłem kilka rzeczy, które naprawdę się wyróżniają.
Widzenie i przetwarzanie dokumentów
Modele z serii 27B tutaj to nie tylko systemy tekstowe. To systemy multimodalne. Możesz podawać im zrzuty ekranu, zdjęcia lub pliki PDF. W środku używany jest specjalny projektor, który konwertuje dane wizualne na tokeny zrozumiałe dla modelu. Dla lokalnego systemu działającego na CPU wygląda to jak magia.
Zachowania agentowe i MCP
Demo zawiera pełnoprawnego klienta MCP (Model Context Protocol). Jeśli to pominąłeś: to nowy standard od Anthropic, który pozwala modelowi łączyć się z zewnętrznymi danymi. Bonsai-demo ma już skonfigurowane narzędzia out-of-the-box do pracy z DeepWiki i Hugging Face. Więc model nie tylko halucynuje — idzie do internetu po fakty.
Tryb „myślenia"
Modele 27B mają funkcję rozumowania typu chain-of-thought. W interfejsie możesz ustawić budżet myślenia: od szybkiej odpowiedzi do głębokiej analizy 8000+ tokenów. Jeśli masz słaby sprzęt, lepiej ustaw go na Niski, w przeciwnym razie będziesz długo czekać, aż model „obraca" swoje myśli w tle.
Ekstremalna oszczędność kontekstu
Zwykle kontekst 100 000 tokenów zużywa gigabajty pamięci. Tutaj autorzy dodali eksperymentalną obsługę 4-bitowego KV-cache. Zmniejsza to zużycie pamięci podczas długich rozmów 3,5 razy. W liczbach: 100k tokenów zajmuje około 1,8 GB zamiast zwykłych 6,3 GB.
Szczegóły techniczne
Projekt opiera się na forku llama.cpp i frameworku MLX dla Apple Silicon. Co ciekawe, obsługa kwantyzacji 1-bitowej (Q1_0) już zaczęła przepływać do głównego nurtu llama.cpp. W przypadku wag ternarnych (Q2_0) sytuacja jest nieco bardziej złożona: obecnie są w trakcie migracji, więc projekt dostarcza własne prekompilowane pliki binarne dla różnych platform.
Jeśli masz Maca z chipem M, skrypt kompilacji pobierze MLX i skompiluje wszystkie komponenty bezpośrednio dla twojej architektury. Dla Windows i Linux dostępne są skrypty z automatycznym wykrywaniem CUDA i Vulkan.
Jak tego spróbować
Deweloperzy uczynili proces tak „bezproblemowym", jak to tylko możliwe. Nie trzeba ręcznie pobierać wag z Hugging Face ani konfigurować środowiska.
Dla macOS lub Linux wystarczą zaledwie trzy linie:
git clone https://github.com/PrismML-Eng/Bonsai-demo.git
cd Bonsai-demo
./setup.sh
Skrypt automatycznie zainstaluje menedżera pakietów uv, utworzy wirtualne środowisko, pobierze wymagany model (domyślnie Ternary-Bonsai-27B) i przygotuje pliki binarne.
Po tym możesz uruchomić lokalny serwer:
./scripts/start_llama_server.sh
I otworzyć localhost:8080 w przeglądarce. Będzie tam znajomy czat, gdzie możesz przetestować zarówno widzenie, jak i szybkość generowania.
Czy warto spróbować
Bonsai-demo nie chodzi o „zabijanie GPT-4", ale o dostępność. Jeśli potrzebujesz uruchomić inteligentnego asystenta na laptopie biurowym bez karty graficznej lub osadzić LLM w aplikacji mobilnej, ten projekt dostarcza gotową podstawę.
Oczywiście modele 1-bitowe są głupsze niż ich pełnowymiarowe odpowiedniki. Mogą popełniać więcej błędów w złożonych zadaniach logicznych. Ale do podstawowej automatyzacji, klasyfikacji tekstu lub prostych chatbotów z kontekstem 256k tokenów — to jedno z najbardziej efektywnych rozwiązań dostępnych teraz.
Główną zaletą repozytorium jest jego „spakowana" natura. Nie musisz być specjalistą od kwantyzacji, aby uruchomić model ternarny. Wszystkie brudne triki z kompilacją i dostrajaniem parametrów są już ukryte w skryptach bash.
Powiązane projekty