Hacker News

ESP32S3 cluster running 1.58-bit (BitNet) Language model

ESP32-S3 7대로 1.58비트 BitNet 언어 모델 실행

ESP32-S3 7대에 0.5B 언어 모델을 나눠 올리고, SPI 데이지 체인으로 추론을 이어가는 프로젝트입니다. 마스터 보드가 토크나이징과 임베딩, 최종 출력을 맡고 나머지 6대가 트랜스포머 레이어를 분담합니다.

AI 요약

ESP32-S3 7대를 연결해 0.5B 언어 모델의 추론을 분산 처리하는 프로젝트입니다. 모델을 한 보드에 통째로 올리는 대신, 마스터 보드 한 대와 계산 노드 여섯 대가 추론 단계를 나눠 맡습니다. 노드끼리는 고속 SPI 데이지 체인으로 연결합니다.

추론 작업 분배

마스터 보드는 프롬프트를 받아 BPE 토크나이저와 토큰 임베딩을 실행합니다. 임베딩은 INT4 형식으로 저장하며 크기는 약 14MB입니다. 마스터가 만든 FP32 은닉 상태 벡터는 첫 계산 노드로 전달됩니다.

계산 노드는 Transformer 블록을 네 개씩 처리합니다. 첫 노드는 0~3번 레이어를, 마지막 노드는 20~23번 레이어를 맡습니다. 각 블록은 RMSNorm, Attention의 Q·K·V·O 프로젝션, RoPE, MLP의 Gate·Up·Down 프로젝션으로 구성됩니다. Attention과 MLP에는 1.58비트 연산을 적용하고, KV 캐시는 PSRAM에 둡니다. 처리가 끝난 은닉 상태는 다음 노드로 이어집니다.

마지막 노드가 결과를 마스터에 돌려보내면 마스터가 최종 RMSNorm과 LM Head를 실행하고 Greedy Sampling으로 다음 토큰을 고릅니다. LM Head는 INT4 임베딩 가중치를 공유합니다. 최종 정규화 가중치는 fnorm 파티션에 FP16으로 저장하며 크기는 64KB입니다.

펌웨어와 모델 준비

저장소에는 ESP-IDF 기반 마스터·노드 펌웨어와 PC에서 실행하는 모델 전처리 도구가 들어 있습니다. 노드 펌웨어에는 1.58비트 삼진 선형층 구현, 어셈블리 최적화 MAC 연산, Attention·RoPE·KV 캐시 코드와 SPI DMA 송수신기가 포함됩니다. 전처리 도구는 어휘 크기 축소, 모델 가중치 분할, QAT 기반 1.58비트 미세 조정, INT4 임베딩 패킹, 토크나이저와 모델 바이너리 생성을 지원합니다. 저장소의 workflow.md에는 모델 준비와 배선, 펌웨어 플래싱 순서가 정리되어 있습니다.

Hacker News 반응

  • @cameron_b — 압축률을 이렇게 높이니 그럴듯한 LLM 잡음 생성기가 된 점은 조금 아쉽습니다. 그래도 매력은 있습니다.
  • @matthewfcarlson — 저도 정확히 이런 소규모 프로젝트를 작업하고 있습니다. 양자화를 덜 적용해 매개변수는 1억 5천만 개뿐인데, 이 프로젝트는 정말 대단합니다.
  • @NDlurker — 기본적인 워드 프로세서의 문법 검사에는 어떨지 궁금합니다. 아니면 작은 텍스트 게임의 세계를 생성할 수도 있을까요? 이런 클러스터의 능력이 어느 정도인지 잘 모르겠습니다.
  • @nonasking_ — 공유해 주셔서 감사합니다. 0.5B LLM을 ESP32 일곱 대에 나눠 올린 모습이 흥미롭습니다.
  • @ladyanita22 — 오래전부터 이런 걸 상상했습니다. 병렬화를 쉽게 해주는 Rust로, 작은 RISC-V 같은 단순한 마이크로컨트롤러 칩을 많이 모아 거대한 병렬 컴퓨터를 만들려면 얼마나 어려울까요? 흥미로운 실험이겠지만 경제성이 있을지는 모르겠습니다.
    • @sigmoid10 — 경제성은 전혀 없을 겁니다. LLM의 주 병목은 여전히 메모리 대역폭입니다. GPU에 직접 연결되지 않은 메모리 버스는 모두 느립니다. 그래서 VRAM이 두 배인 GPU 하나가 VRAM이 절반인 GPU 두 개보다 훨씬 빠릅니다. 메모리를 칩에 더 납땜하면 되는 문제도 아닙니다. 현대 속도에서는 빛의 속도가 한계입니다. GDDR7은 한 사이클에 신호가 약 10mm만 이동할 수 있습니다. 시스템을 수십, 수백 개의 작은 칩으로 흩어 놓으면 자원을 대부분 낭비하고 단일 칩 시스템에 크게 뒤처질 겁니다.
  • @sneak — 진지하게 묻습니다. LLM을 쓸 만한 수준으로 실행하는 저가 칩은 무엇인가요? Mac Mini가 가장 저렴한 선택인가요? Mini-ITX 보드에 쓸 iGPU나 Raspberry Pi HAT처럼 붙일 전용 AI 칩이 있나요?

원문: Hacker News / 번역·요약: Trawling