ESP32-S3 7대로 1.58-bit(BitNet) 언어 모델 돌리기
ESP32S3 cluster running 1.58-bit (BitNet) Language model
TL;DR Highlight
ESP32-S3 7대를 SPI로 이어 0.4B BitNet LLM을 추론시켰다
Who Should Read
LLM을 마이크로컨트롤러·엣지 기기에 올릴 수 있는지 궁금한 임베디드/백엔드 개발자
Core Mechanics
- ESP32-S3 7대에 모델을 나눠 올렸다
- 1대는 마스터, 나머지 6대는 연산 노드다.
- 저장소 설명은 0.4B, README 본문은 0.5B 모델로 표기돼 있다.
- 마스터는 입출력, 노드는 트랜스포머 층 담당
- 마스터가 토크나이저(BPE)와 토큰 임베딩, 마지막 RMSNorm, LM Head, 그리디 샘플링을 맡는다.
- 노드 1~6이 각각 4개 트랜스포머 블록(Layer 0~23)의 어텐션과 MLP를 돌린다.
- 노드끼리 SPI 데이지체인으로 연결
- 마스터에서 노드 1~6을 거쳐 다시 마스터로 hidden state(FP32)가 돌아오는 파이프라인 구조다.
- 노드의 KV 캐시는 PSRAM에 둔다.
- 1.58-bit 3진 양자화(가중치를 -1/0/+1로 표현)를 썼다
- 어텐션 Q/K/V/O와 MLP Gate/Up/Down 투영이 1.58-bit다.
- 곱셈-누산은 어셈블리로 최적화했고 룩업 테이블도 쓴다.
- 모델을 ESP32에 맞게 줄였다
- 어휘를 32K 토큰으로 잘라냈다.
- 임베딩은 INT4로 약 14MB를 플래시에 두고 LM Head와 공유한다.
Community Reactions
- 작은 모델이라 장난감에 가깝다는 의견
- 압축 정도 때문에 사실상 말 만드는 소음기 수준이라 아쉽지만 매력은 있다는 반응이다.
- 용도가 궁금하다는 질문들
- 기본 워드프로세서 문법 검사나 텍스트 게임 월드 생성에 쓸 수 있을지 묻는 댓글이 있었다.
- 이 정도 클러스터의 능력은 잘 모르겠다는 전제였다.
- 비슷한 프로젝트를 진행 중이라는 경험
- 양자화를 덜 해서 150M 파라미터짜리로 비슷한 걸 만들고 있다는 댓글이 있었다.
- 저가 칩 대안을 묻는 질문
- LLM을 돌릴 수 있는 가장 싼 칩이 Mac Mini인지, mini-ITX iGPU나 Pi HAT형 AI 칩이 있는지 묻는 댓글이 있었다.
How to Apply
- 저장소를 받아 workflow.md부터 읽기
- 오늘 git clone으로 받아 workflow.md의 배선·플래싱·모델 준비 순서를 확인하라.
- 보드 7대가 필요한지, 하드웨어 준비 비용이 얼마인지 먼저 가늠하라.
- python_tools로 양자화 파이프라인만 따라가 보기
- crop_token.py, crop_model_weight.py, qat_158.py, bit4_embedding.py 순서로 어떤 단계를 거치는지 읽어라.
- 우리 모델에 어휘 축소와 INT4 임베딩을 적용할 여지가 있는지 체크하라.
- 레이어 분할 파이프라인을 엣지 설계 참고로 쓰기
- 메모리가 작은 기기 여러 대로 모델을 분산하려면 레이어를 균등하게 나눠 순서대로 hidden state를 넘기는 구조를 설계안에 넣어라.
Try It
# Claude/ChatGPT에 붙여넣기 (논문 방법의 간이 버전: 엣지 LLM 분할 설계 점검)
나는 아래 구조를 참고해 소형 LLM을 여러 마이크로컨트롤러에 분산하려 한다.
- 마스터 1대: 토크나이저, 토큰 임베딩(INT4), 최종 RMSNorm, LM Head, 그리디 샘플링
- 노드 6대: 각각 트랜스포머 블록 4개(총 24층), 1.58-bit 가중치, KV 캐시는 외부 RAM
- 연결: SPI 데이지체인, 층 사이에 FP32 hidden state 전달
내 환경: {{보드/칩 종류와 대수}}, 모델: {{모델명과 파라미터 수}}
위 구조를 내 환경에 맞게 바꾸려면 층을 어떻게 나눠야 하는지, 메모리·통신에서 병목이 될 지점이 어디인지 체크리스트로 정리해줘.
이어서 해 볼 것: 토큰 1개를 만들 때 hidden state가 오가는 데이터 크기를 계산해 달라고 요청해 보라.Terminology
관련 논문
Mercury 3: 규모를 키운 diffusion LLM, 초당 1,000토큰 이상
Diffusion LLM을 40배 키웠더니 속도 4~8배, 품질은 속도 특화 모델 수준
Timestral: Mistral의 시계열 파운데이션 모델
209M 파라미터 시계열 모델이 3대 벤치마크 1위, CPU에서도 돌아간다
DeepSeek V4.1 Flash 1017 (Max) 성능·속도·가격 분석
DeepSeek V4.1 Flash 1017 Max는 지능 지수 45에 211 tok/s, 입력 $0.30
LLM 프록시를 직접 안 돌리면 무슨 일이 벌어지는지 어떻게 아나
자체 LLM 프록시를 세웠더니 키·모델·캐시 미스를 직접 볼 수 있다
DeepSeek V4.1 Flash 1017: 싼 가격에 1M 컨텍스트를 주는 에이전트용 모델
DeepSeek V4.1 Flash 1017은 입력 $0.05/M, 1M 컨텍스트의 에이전트용 모델
DeepSeek-V4.1-Flash-1017 공개: 더 짧게 생각하고 더 빠르게 일하는 에이전트용 모델
DeepSeek V4.1 Flash 마이너 업데이트로 코딩·에이전트 벤치 점수↑, 실행 시간·출력 길이↓
Llmspeed: 로컬 LLM 속도를 하드웨어 구매 전에 체감해 보는 시뮬레이터
GPU·모델을 고르면 로컬 LLM 속도를 미리 체감하게 해 주는 시뮬레이터