Friends Don't Let Friends Use Ollama - llama.cpp 기반 대안 재검토
목차
개요
Zetaphor가 2026년 4월 15일 공개한 글 “Friends Don’t Let Friends Use Ollama”는 로컬 LLM 실행 도구로 대중화된 Ollama에 대해 강한 비판을 제기합니다. 핵심 주장은 “생태계에 필요한 것은 Ollama가 아니라 llama.cpp이며, Ollama는 오픈소스 기반을 가리고 벤더 락인과 클라우드 전환으로 이동하고 있다”는 것입니다. 이 글은 Hacker News 커뮤니티에서도 큰 토론을 일으켰으며 Ollama의 기술적·윤리적 문제를 구체적으로 제시합니다.
배경
Ollama는 로컬에서 오픈 웨이트 LLM을 쉽게 구동할 수 있게 해주는 래퍼로 시작해 단기간에 대중화되었습니다. 초창기에는 llama.cpp를 백엔드로 삼았고 설치·실행의 편의성으로 비전공자에게도 로컬 LLM을 보급하는 역할을 했습니다. 그러나 2025년 중반 자체 ggml 백엔드로 포크되면서 성능, 크레딧 표기, 클라우드 연결 이슈가 동시에 불거졌다는 것이 이번 글의 출발점입니다.
핵심 내용
글은 기술적 성능, 라이선스 준수, 사용자 오도, 아키텍처 설계, 보안과 클라우드 전환까지 다섯 갈래로 Ollama를 평가합니다. 각 갈래마다 구체적 커밋·이슈·CVE 번호를 근거로 제시하며 단순 불만이 아니라 검증 가능한 문제 제기를 지향합니다.
출처 및 크레딧 문제
Ollama의 README는 1년 이상 llama.cpp를 언급하지 않았고 MIT 라이선스가 요구하는 저작권 고지도 누락되었습니다. GitHub에서 라이선스 준수를 요청한 이슈는 “400일 넘게 메인테이너의 응답 없이” 방치되다 최소한의 언급만 추가된 채 종결되었다고 글은 지적합니다. 글쓴이는 이후 Ollama가 자체 백엔드로 포크하며 크레딧 범위를 줄이는 방향으로 움직였다고 봅니다.
성능 저하와 벤치마크
llama.cpp 대신 자체 ggml 기반 백엔드로 이동한 결과, 이미 llama.cpp가 수년 전에 고쳤던 버그들이 재도입되었다고 글은 주장합니다. 구조적 출력(structured output) 실패와 비전 모델 처리 오류가 대표 사례로 제시됐습니다. 벤치마크에서는 동일 하드웨어·동일 모델 기준 llama.cpp가 161 tokens/s, Ollama가 89 tokens/s로 약 1.8배의 차이가 보고됐습니다.
모델 명칭 오도와 구조적 문제
Ollama는 DeepSeek-R1-Distill 8B 변형을 “DeepSeek-R1”로 표기해 671B 원본을 실행한다고 오해하게 만들었고, 수정 요청 이슈는 “중복”으로 닫혔다고 합니다. Modelfile은 GGUF가 이미 해결한 문제를 재발명하는 구조로, 프롬프트 템플릿을 수동 번역해야 합니다. 레지스트리 병목으로 인해 양자화 포맷이 다섯 종으로 제한되고, 해시 기반 파일 저장 방식은 다른 도구로의 모델 이식을 막는 락인을 만듭니다.
또한 최근 버전은 독점 모델에 대한 프롬프트를 제3자 제공자로 라우팅하면서도 명확한 고지가 부족했다고 지적됩니다. CVE-2025-51471은 모델 풀링 중 토큰이 유출될 수 있던 취약점이며, 몇 달간 미반영 상태였다는 점이 보안 리스크로 언급됩니다.
추천 대안
| 도구 | 특징 |
|---|---|
| llama.cpp | 핵심 엔진, OpenAI 호환 API와 웹 UI 내장 |
| llamafile | 모델과 런타임을 하나의 실행 파일로 배포 |
| LM Studio | llama.cpp 백엔드 기반 GUI, 락인 없음 |
| Jan | 오픈소스 데스크톱 앱, 로컬 우선 설계 |
| Msty, koboldcpp, ramalama | 의존성 크레딧을 명시적으로 표기 |
의미와 시사점
Hacker News 댓글에서는 의견이 갈립니다. 한쪽에서는 “llama.cpp가 기술적으로 뛰어나지만 UX가 부족했고 Ollama가 대중화에 기여했다”는 공정론이 있습니다. 다른 한쪽에서는 “MIT 라이선스가 법적으로 자유를 준다고 해서 윤리적 책임이 면제되는 것은 아니다”라는 입장이 강조됩니다.
실사용자 경험담에서는 모델 경로 제어 불가, 해시 저장소로 인한 재다운로드 부담, 다른 도구와의 파일 공유 불가 등 일상적 불편이 공통적으로 언급됐습니다. 최신 버전에서 일부 개선이 있지만, 이미 누적된 락인 비용과 대체 도구의 성숙으로 이탈 장벽이 높다는 지적도 나옵니다.
이 글의 구조적 함의는 “오픈소스 래퍼 → VC 투자 → 클라우드 전환 → 모네타이제이션”이라는 패턴에 대한 경고입니다. 단순히 한 도구의 문제가 아니라 오픈소스 기반 인프라에서 되풀이되는 패턴으로 읽힙니다.
결론
글의 결론은 명료합니다. 생태계에 필요한 것은 Ollama라는 래퍼가 아니라 llama.cpp라는 엔진이며, GUI가 필요하다면 LM Studio, Jan, llamafile 등이 llama.cpp를 투명하게 활용할 수 있는 대안을 이미 제공합니다. 로컬 LLM 운용을 장기적으로 운영하려는 개발자라면, 모델 포맷의 이식성, 크레딧 표기, 클라우드 라우팅 고지 여부를 기준으로 도구를 재검토해 볼 시점입니다.