실험적 모델: 32비트 RISC-V CPU를 11층 Transformer로 컴파일하여 Qwen3.5-4B 자체 레이어 앞에 배치하고, Qwen의 Gated DeltaNet 상태를 메모리로 사용하여 모델이 순전파 계산 중 C 및 MicroPython 프로그램을 실제로 실행하며, 큰 수의 곱셈과 나눗셈 같은 연산을 비트 단위로 정확하게 출력합니다.
스타 수 309 (+80 / 24시간)
이유
- CPU 레이어의 가중치는 학습된 것이 아니라 컴파일러가 직접 계산한 것입니다. Qwen은 일반적으로 calc 도구 호출을 작성하지만 외부 실행기는 없으며, 모델 내부의 계산 레이어가 호출을 읽고 CPU에서 연산을 완료한 후 모델이 결과를 비트 단위로 직접 작성합니다. 저자는 공식 riscv-tests를 통과했으며, 약 23만 개의 출력 위치를 재생했을 때 오차가 없고, 텍스트 동작의 원본 모델 대비 KL 발산이 6e-4라고 밝혔습니다.
- 저자가 제시한 비교(탐욕적 디코딩, 각 그룹당 40문제): 합성 정수 연산이 기본 모델의 75.0에서 97.5로 향상되었으며, DeepMind mul_big는 55.0에서 97.5로 향상되어 기본 모델이 호스트 Python 인터프리터를 호출한 결과와 동등한 수준입니다.
- 추가 실험 브랜치: 내적 연산 지시문이 추가된 NPU 버전은 모델 내에서 26만 매개변수의 stories260K 소형 모델을 실행할 수 있습니다. 파일 시스템 버전은 DeltaNet 상태에 최대 512개의 파일을 저장하며, 저자는 세션 간 회상 질문 정확도가 7.8에서 83.3로 향상되었다고 밝혔습니다. 초기 CHIP-8 버전도 여전히 다운로드 가능합니다.
사용법
- git clone 후 experimental/riscv로 이동하여 uv sync --extra hf를 실행하고, hf download divagr1925/Qwen3.5-4B-Qwenputer로 가중치를 다운로드한 후, uv run python -m chipformer.rv.chat qwenputer-rv --firmware tests/data/rv/calc-bridge.elf --ask "…" 명령어를 사용하여 질문합니다.
- 모델은 표준 Qwen3_5ForCausalLM으로 로드되며, 예제 코드는 CUDA에서 실행되고 bf16 저정밀도 축약을 비활성화하여 행렬 곱셈의 정확성을 보장합니다. 설계 및 모든 측정 결과는 experimental/riscv/docs/rv32.md에 있습니다.
리스크
- 저자는 모든 상황에서 유용하지는 않다고 밝혔습니다. GSM8K 같은 응용 문제는 동률이며, 긴 수식 체인에서는 기본 모델이 여전히 우세하고, 모델은 이미 제시된 결과를 토큰 예산이 소진될 때까지 반복적으로 검증합니다. CHIP-8 버전의 표는 개발 체크포인트에서 각 벤치마크의 최고 성적을 기록한 것입니다.
- 예제는 NVIDIA GPU에서 실행되며, 저자가 제시한 속도는 L4에서 초당 약 3,200개의 궤적 토큰이고, NPU 버전은 스토리 토큰 하나 생성에 약 41초가 소요됩니다. 코드는 MIT 라이선스이며, 가중치는 Qwen3.5-4B의 수정된 Apache-2.0 라이선스를 따릅니다. 저장소는 10월 19일에 생성되었습니다.