모델을 로컬에서 실행한다는 것은 다운로드를 뜻하고, 그 다운로드는 남습니다. 로컬 추론을 쉽게 만들어 주는 모든 도구는 모델을 하나 더 써 보는 것도 쉽게 만들지만, 지난 한 달의 시도가 합쳐서 얼마가 되었는지는 어느 도구도 알려 주지 않습니다. 저희가 스캔하는 Mac에서 AI 모델 항목은 Ollama로 오후 한나절을 보낸 사람이라면 누구에게나 가장 큰 단일 항목이고, 도구 어디에도 합계가 표시되지 않기 때문에 사람들이 가장 놀라는 항목이기도 합니다.

이 글은 각 도구가 파일을 어디에 두는지, 얼마나 큰지, 테스트가 왜 파일을 불리는지, 그리고 되돌릴 수 없는 것을 잃지 않으면서 삭제할 수 있는 것은 무엇인지 다룹니다.

모델의 크기

크기는 매개변수 수와 양자화에 따라 정해집니다. 이 도구들이 다운로드하는 형식에 대한 대략적인 기준은 다음과 같습니다.

모델 크기 4비트 (Ollama, MLX, 대부분의 GGUF) 8비트 16비트 (Hugging Face에 게시된 safetensors 원본)
1에서 3B 1에서 2 GB 2에서 3.5 GB 2.5에서 7 GB
7에서 9B 4에서 5.5 GB 8에서 9.5 GB 14에서 18 GB
12에서 14B 7에서 9 GB 13에서 15 GB 25에서 30 GB
27에서 35B 16에서 20 GB 32에서 36 GB 55에서 70 GB
70B 38에서 43 GB 70에서 75 GB 130에서 145 GB

크기는 2026년 9월 기준으로 가중치만 반올림한 값입니다. Hugging Face에서 받은 양자화되지 않은 모델은 16비트 열에 해당하며, 그래서 양자화되지 않은 8B 모델 하나가 4비트 모델 세 개보다 더 많은 공간을 차지합니다.

함께 따라오는 다른 파일도 있습니다. Whisper large는 약 3 GB이고, Stable Diffusion과 Flux 같은 이미지 모델은 체크포인트당 4에서 25 GB이며, 임베딩 모델은 각 0.3에서 2 GB이고, 비전 언어 모델은 1에서 2 GB짜리 두 번째 인코더를 함께 담고 있습니다.

각 도구가 파일을 두는 위치

Ollama는 모든 것을 ~/.ollama/models 아래에 둡니다. 가중치는 내용 기반 주소를 가진 blob이고, 태그마다 매니페스트가 이를 가리키므로 같은 파일을 쓰는 두 태그는 파일을 공유합니다. 같은 모델의 두 양자화 버전은 공유하지 않습니다. ollama list는 각 모델의 크기를 보여 주고 ollama rm은 하나를 제거하지만, 폴더 전체의 용량을 보여 주는 명령은 없습니다.

LM Studio는 다운로드한 GGUF와 MLX 파일을 ~/.lmstudio/models 아래에 (이전 버전은 ~/.cache/lm-studio/models를 사용했습니다) 게시자와 모델별로 정리해 둡니다. 각 다운로드는 완전한 파일입니다. 한 모델의 Q4, Q5, Q8 빌드를 써 보면 전체 복사본 세 개가 됩니다.

Hugging Face는 사람들을 놀라게 하는 쪽입니다. transformers, diffusers, sentence-transformers, huggingface_hub 라이브러리는 모두 ~/.cache/huggingface/hub에 다운로드하며, 저장소마다 폴더 하나, 리비전마다 스냅샷 하나를 둡니다. 모델을 받고, 작성자가 수정을 푸시한 뒤 다시 받으면 스냅샷이 두 개가 됩니다. 스크립트에서 모델을 한 번 불러오면 영구히 남습니다. huggingface-cli scan-cache는 전체를 크기와 함께 출력하고, huggingface-cli delete-cache는 리비전 제거 과정을 안내합니다. 데이터셋은 ~/.cache/huggingface/datasets에 저장되며 모델보다 클 수 있습니다.

MLX는 Apple silicon에서 mlx-community 모델에 같은 Hugging Face hub 캐시를 사용합니다. mlx_lm.convert로 모델을 직접 변환했다면 출력물은 지정한 위치, 보통 프로젝트 폴더에 놓이고, 원본 16비트 가중치는 여전히 hub 캐시에 있습니다. 변환 한 번은 모델 전체 크기만큼을 다시 차지합니다.

그 외 전부. Python 환경은 venv마다 2에서 4 GB의 PyTorch를 끌어오고, ML 프로젝트가 몇 개 있는 Mac에는 그런 환경이 몇 개 있습니다. Docker의 model runner와 Ollama Docker 이미지는 Docker 디스크 이미지 안에 자체 복사본을 둡니다. Jupyter 체크포인트와 .ipynb_checkpoints 폴더는 노트북 복사본을 담고 있는데, 개별로는 작지만 수가 많습니다.

테스트가 용량을 불리는 이유

평가로 보내는 오후 한나절은 이런 모습입니다. Qwen 2.5 7B와 비교하려고 Ollama에서 Llama 3.1 8B를 받습니다, 9 GB. 하나가 느려서 LM Studio에서 Q8 빌드를 써 봅니다, 8 GB 추가. 논문에서 14B 추론 모델을 언급합니다, 9 GB. 문서를 임베딩하고 싶어서 스크립트가 임베딩 모델을 다운로드하고, 예제를 그대로 복사했기 때문에 함께 시연된 챗 모델의 16비트 버전도 받습니다, 15 GB. 이 Mac에서 더 빠를 것 같아 MLX를 써 보는데, 4비트 변환본이 원본 16비트 옆에 4.5 GB 더 생깁니다.

합치면 약 46 GB, 도구 다섯 개, 그리고 아직 쓰고 있는 모델 하나입니다. 이 과정에서 실수는 하나도 없었습니다. 평가는 원래 이렇게 진행됩니다. 빌드 캐시와 다른 점은 도구가 대신 정리해 주지 않는다는 것이고, 파일이 워낙 커서 몇 개만으로도 여유 있는 디스크와 꽉 찬 디스크의 차이가 된다는 것입니다.

저희가 스캔하는 환경에서 AI 중심 개발자의 Mac은 이 항목에 80 GB 이상을 갖고 있습니다. 로컬 모델을 가끔 쓰는 Python 및 ML 엔지니어도 40에서 50 GB를 갖고 있습니다. 환경별 전체 표를 참고하십시오.

삭제해도 안전한 것

전부 다운로드로 돌아오기 때문에 Cache Goblin은 모든 모델을 안전이 아니라 복원 가능으로 분류합니다. 목록을 보여 주고, 각 크기를 표시하고, 휴지통으로 옮기기 전에 확인을 요청합니다. 다운로드한 모델에는 사용자의 Mac에만 있는 고유한 것이 없습니다.

예외는 직접 만든 파일입니다. 직접 학습한 파인튜닝, LoRA 어댑터, 다시 알아내야 할 설정으로 변환한 모델, imatrix로 직접 양자화한 GGUF가 그렇습니다. 이것들은 다운로드 옆에 있고 겉보기에 같아 보이므로, Cache Goblin은 최근에 손댄 프로젝트 폴더 안의 가중치는 사용자의 것으로 간주하여 제거를 제안하지 않고 보여 주기만 합니다.

실용적인 순서는 다음과 같습니다.

  1. ollama list를 실행하고 한 번 써 본 모델을 제거합니다. 실제로 호출하는 모델은 남깁니다.
  2. huggingface-cli scan-cache를 실행하고 오래된 리비전과 다운로드한 기억이 없는 것을 삭제합니다. 보통 여기가 가장 큰 숫자입니다.
  3. LM Studio 모델 폴더에서 한 모델의 중복된 양자화 버전을 찾아 하나만 남깁니다.
  4. 4비트 MLX 변환본으로만 실행하는 모델의 16비트 원본이 hub 캐시에 있는지 확인합니다.
  5. 끝난 프로젝트의 Python 환경을 삭제합니다. PyTorch는 복사본마다 몇 기가바이트입니다.

아니면 스캔을 실행하십시오. Cache Goblin은 Ollama, LM Studio, Hugging Face, MLX 모델을 이름과 크기별로 한곳에 나열하고, 도구들이 보여 주지 않는 합계를 보여 주며, 복원 가능 버튼으로 선택한 것을 제거합니다.

Mac용 Cache Goblin 무료 다운로드로 오후 한나절의 테스트가 무엇을 남겼는지 확인해 보십시오.