Dlaczego Groq sprawia wrażenie oszustwa

Niedawno zbudowałem potok wieloagentowy (multi-agent pipeline) przy użyciu LangGraph. Porównałem Groq ze standardowymi dostawcami LLM. Różnica była kolosalna.

Inni dostawcy działają jak zwykłe wywołanie API. Wysyłasz zapytanie i czekasz na tekst. Groq sprawia wrażenie oszustwa. Model 70B zwrócił pełną odpowiedź, zanim skończyłem czytać własny prompt.

Większość ludzi zakłada, że Groq posiada lepsze procesory GPU. To błąd. Groq w ogóle nie używa GPU. Zbudowali nowy chip o nazwie LPU, czyli Language Processing Unit.

Procesory GPU zostały stworzone do grafiki i trenowania modeli. Sprawdzają się dobrze, gdy przetwarzasz ogromne partie danych. Mają jednak trudności z wnioskowaniem (inference) w czasie rzeczywistym.

Problemem jest „ściana pamięci” (memory wall). W GPU wagi modelu znajdują się w pamięci oddzielonej od rdzeni obliczeniowych. Chip spędza zbyt dużo czasu, czekając na nadejście danych.

Groq rozwiązał to, umieszczając pamięć bezpośrednio na chipie. Używają SRAM zamiast HBM. Tworzy to 10-krotną różnicę w przepustowości. Sprawia to również, że dostęp do danych jest 20-krotnie szybszy, gdy weźmie się pod uwagę opóźnienia (latency).

Istnieje jeszcze jeden powód tej szybkości: determinizm.

GPU korzystają z dynamicznego szeregowania (dynamic scheduling). Chip decyduje, co robić, w trakcie pracy. Powoduje to drobne opóźnienia. Groq stosuje podejście „software-first”. Ich kompilator oblicza każdą pojedynczą operację i instrukcję z wyprzedzeniem. Chip postępuje zgodnie z ustalonym harmonogramem. Nie musi zastanawiać się, co zrobić dalej.

Wyniki mówią same za siebie: • Llama 2 70B działa z prędkością 300 tokenów na sekundę na Groq. • Nvidia H100 osiąga 30–40 tokenów na sekundę. • Llama 3 8B osiąga ponad 1300 tokenów na sekundę na Groq.

Groq jest również bardziej wydajny. Zużywa mniej całkowitej energii na token, ponieważ wykonuje pracę znacznie szybciej.

Ta konstrukcja wiąże się z kompromisami. SRAM jest drogi i zajmuje dużo miejsca fizycznego. Pojedynczy chip nie jest w stanie pomieścić gigantycznego modelu. Aby obsługiwać duże modele, potrzeba setek współpracujących ze sobą jednostek LPU. To sprawia, że sprzęt jest droższy niż GPU.

Groq nie próbuje trenować modeli. Skupiają się na jak najszybszym uruchamianiu istniejących modeli, takich jak Llama czy Mixtral.

Branża zmierza w stronę wykorzystywania obu rozwiązań. GPU zajmują się ciężkim trenowaniem i wstępnym przetwarzaniem. LPU obsługują szybką rozmowę w czasie rzeczywistym.

Nvidia optymalizuje pod kątem całkowitej mocy obliczeniowej. Groq optymalizuje tak, aby jednostki obliczeniowe nigdy nie czekały na dane. W przypadku agentów AI działających w czasie rzeczywistym, to właśnie ten drugi cel jest kluczowy.

Source: https://dev.to/priyanshu79/why-groq-feels-like-cheating-29hm

Optional learning community: https://t.me/GyaanSetuAi