로컬 언어 모델의 내부 구조를 눈으로 살피고, 일부를 편집하거나 줄인 새 파일을 만드는 도구 NeuronDump가 공개됐다. 개발자는 모델의 어느 부분을 바꾸면 출력이 달라지는지 원본과 나란히 시험하며, 용량을 줄일 후보를 찾을 수 있다.

1. 모델 구조 확인부터 새 파일 저장까지

개발자 aymen94가 10월 26일 소개한 NeuronDump 0.1.3은 명령줄 도구와 로컬 웹 화면을 하나의 실행 파일에 담았다. 로컬 모델 저장 형식인 GGUF를 직접 읽으며 화면 구성 요소도 내장해 오프라인으로 사용할 수 있다.

그래프는 모델을 층별 설계도처럼 펼쳐 보여 준다. 가중치를 담은 배열인 텐서와 양자화 형식, 수를 낮은 정밀도로 저장하는 방식, 어휘, 채팅 템플릿을 확인하고, 층을 열어 입력의 관계를 살피는 헤드와 계산 단위인 뉴런 묶음까지 내려가 볼 수 있다.

구조 분석과 파일 크기 산출은 모델을 실행하지 않고 파일을 읽어 처리한다. 소스나 패키지로 설치할 때 실행 추적 기능을 선택하면 모델을 CPU에서 돌려 편집 전후의 토큰과 확률을 비교할 수 있다.

간단한 사용 흐름은 다음과 같다. 아래 명령은 저장소 README의 예시다.

neurondump list                          # every local model
neurondump inspect llama3.2:1b           # what's inside a model
neurondump vocab llama3.2:1b --search hello
neurondump template llama3.2:1b          # the chat template as a tree
neurondump analyze llama3.2:1b --out plan.json
neurondump slim llama3.2:1b --plan plan.json --only vocab --out small.gguf
neurondump tokens llama3.2:1b "fn main() {" --chat     # tokens, template tokens, nearest tokens
neurondump web --open                    # the same, in your browser

2. 같은 구조에서도 예측이 달라지는 지점을 찾는다

저장소의 Qwen3 8B와 DeepSeek R1 0528 Qwen3 8B 비교에서는 텐서 399개의 이름·형태·유형이 같았지만 바이트 단위로 일치하는 텐서는 없었다. 저장소는 새 층을 추가한 것이 아니라 가중치 전체를 미세조정한 결과로 해석한다.

지구가 도는 별의 이름을 묻는 미완성 영어 문장을 넣자 두 모델 모두 29번 층에서 태양을 뜻하는 예측이 처음 나타났다. 층별 중간 상태를 다음 토큰 후보로 읽는 추적 결과이며, 아래 확률은 저장소에 기록된 값이다.

표: 같은 입력에서 층별로 나타난 예측 확률

조건: NeuronDump 0.1.3, candle, CPU, 두 모델 모두 Q4_K_M, 지구가 도는 별의 이름을 묻는 동일 입력 9토큰

같은 구조에서도 예측이 달라지는 지점을 찾는다
예측 지점과 대상Qwen3 8BDeepSeek R1 8B
30번 층의 중국어 태양 토큰0.910.94
마지막 층의 영어 정관사 토큰0.450.35

중간 층에서 답이 드러난 뒤 마지막에는 영어 정관사를 고른 흐름을 저장소는 사실을 찾는 단계와 표현을 고르는 단계로 해석한다. 개발자는 최종 출력만 보는 대신 어느 층에서 후보가 바뀌는지 살피고, 해당 부분의 편집 효과를 비교할 수 있다.

3. 용량 절감과 품질 변화를 함께 평가한다

저장소의 llama3.2:1b 시험 계획에서는 예제 코퍼스를 사용해 어휘를 570개로 줄인 결과 파일 크기가 1.23 GiB에서 987 MiB로 21.6% 감소했고, GGUF 검증에서 텐서 147개와 16개 층이 확인됐다. 어휘를 줄이면 출력에 쓸 수 있는 토큰 범위도 함께 좁아진다.

층 제거 효과는 정해진 평가 문장 모음인 코퍼스로 비교했다. 아래 perplexity는 그 문장들을 모델이 예측하기 어려워하는 정도로, 낮을수록 좋다.

표: 층 제거에 따른 perplexity

조건: candle, CPU, llama3.2:1b, 동일한 영어 평가 글 5개로 구성한 코퍼스

용량 절감과 품질 변화를 함께 평가한다
제거한 층원본제거 후
7번 층7.55410.915
15번 층7.55415.976
0번 층7.55423257.776

이 평가에서는 중간 층보다 첫 층이나 마지막 층을 없앴을 때 예측 품질이 더 크게 떨어졌다. 용량을 줄이는 이익과 맞바꾸는 것은 출력 품질과 탐색 시간이다. 시험 계획서에서 층을 하나씩 제외해 평가한 탐색은 5개 샘플의 96개 위치를 대상으로 모델 계산을 85회 수행해 CPU에서 약 4분 걸렸다.

편집은 원본을 건드리지 않고 메모리에서 비교한 뒤 새 파일로 저장하는 흐름이다. 개발자는 삭제할 후보를 고르고, 쓰려는 문장으로 품질을 평가한 다음 축소 파일을 만들 수 있다.

4. 실행 지원 범위에 맞춰 실험 대상을 고른다

실행 실험은 지원 목록에 있는 모델 계열의 CPU 처리에 한정되며, 전문가를 골라 계산하는 MoE나 서로 다른 층 방식을 섞은 하이브리드 모델의 실행과 헤드·뉴런·전문가를 파일에서 잘라 내는 축소는 지원하지 않는다.

저장소는 초기 버전으로 표시하며, 새 3차원 데이터 흐름 화면과 토큰·편집 화면은 문서상 아직 브라우저에서 실행 검증하지 않았다.

NeuronDump의 가치는 모델을 작게 만드는 기능만이 아니라, 무엇을 줄일지 구조와 출력 변화를 함께 보며 결정하게 하는 데 있다.