핵심 요점
- 무료, 오픈소스, Apache-2.0 라이선스, 저작권은 저장소 자체의 LICENSE 파일에 따라 Exo Technologies Ltd에 있음 — 2026년 9월 12일 확인
- 자동 기기 검색 — exo 자체 README에 따르면 같은 네트워크에서 exo를 실행하는 기기들은 수동 설정 없이 서로를 찾음
- 토폴로지 인식 오토 패러렐 모드: exo는 각 기기의 리소스와 네트워크 링크의 지연 시간/대역폭에 대한 실시간 뷰를 기반으로 모델을 기기 간에 분할함
- 샤딩 위에 텐서 병렬화 적용 — exo 자체 README에 따르면 기기 2대에서 최대 1.8배, 4대에서 3.2배 가속
- Thunderbolt 5를 통한 RDMA 지원(macOS 26.2+) — exo는 이를 자체 문서에서 기기 간 지연 시간을 99% 줄인다고 설명
- 추론 백엔드로 Apple의 배열 연산 프레임워크인 MLX를 사용하고, 기기 간 통신에는 MLX distributed를 사용
- OpenAI Chat Completions, OpenAI Responses, Claude Messages, Ollama API와 호환되어 기존 클라이언트가 거의 변경 없이 exo 클러스터를 가리킬 수 있음
- GitHub API로 2026년 9월 12일 확인한 GitHub 스타 47,375개, 포크 3,508개
- macOS(Apple Silicon)가 주요하고 테스트된 플랫폼이며, Linux는 현재 CPU로만 실행됨(GPU 지원은 exo 자체 PLATFORMS.md에서 "개발 중"으로 표기됨). Windows는 현재 지원되지 않음
📍 한 문장으로
exo는 여러 대의 Apple Silicon Mac — 그리고 CPU 전용으로 지원되는 Linux 머신 — 을 자동 기기 검색과 토폴로지 인식 모델 샤딩을 이용해 하나의 분산 추론 클러스터로 묶어, 단일 기기로는 실행할 수 없는 모델을 실행할 수 있게 해주는 무료 오픈소스(Apache-2.0) 프레임워크다.
💬 쉽게 말하면
거대한 모델을 로드할 만큼 충분한 메모리를 갖춘 매우 비싼 머신을 한 대 구입하거나 클라우드 GPU 시간을 임대하는 대신, exo는 이미 보유한 여러 대의 Mac(또는 Linux 머신)을 네트워크로 연결해 하나의 더 큰 컴퓨터처럼 동작하게 하고, 모델의 레이어를 모든 기기에 자동으로 분할한다.
📌참고: 이 리뷰는 로컬 LLM 소프트웨어 디렉터리에 있는 exo 항목의 보완 자료입니다 — exo가 수십 개의 다른 로컬 AI 도구와 비교해 어떤지 한눈에 확인하려면 해당 페이지를 참고하세요.
exo란 무엇인가?
exo는 이미 보유한 여러 기기를 하나의 AI 추론 클러스터로 연결하는 프레임워크로, 단일 기기의 메모리로는 감당할 수 없는 모델도 그룹 전체에 분할함으로써 실행할 수 있게 한다. exo labs가 관리하며, 저장소 자체의 설명은 단순히 "Run frontier AI locally."(최첨단 AI를 로컬에서 실행하라)이다.
- 핵심 기능: 자동 기기 검색과 토폴로지 인식 모델 샤딩 — 여러 기기를 동일한 클러스터에 지정하면 exo가 모델을 어떻게 분할할지 알아냄
- 추론 백엔드: Apple의 오픈소스 배열 연산 프레임워크인 MLX. 모델 실행과 기기 간 MLX distributed 통신 계층 모두에 사용됨
- 배포 모델: 소스에서 빌드(macOS 또는 Linux), Nix 패키지 매니저를 통해, 또는 — macOS에서만 — Homebrew나 다운로드 가능한
.dmg로 설치하는 백그라운드 앱으로 - 개발사: GitHub의 exo-explore / exo labs. 저장소의 LICENSE 파일은 저작권자로 Exo Technologies Ltd를 명시함
- 정식 저장소: github.com/exo-explore/exo. GitHub 자체 저장소 메타데이터에 따르면 2024년 6월에 생성되었으며, 이 리뷰 작성 시점 기준 가장 최근 푸시는 2026년 8월 25일
exo 설치: 설정 옵션
exo 자체 README에는 exo를 실행하는 세 가지 방법이 문서화되어 있다: macOS나 Linux에서 소스로부터 빌드하는 방법, Nix 패키지 매니저를 통해 실행하는 방법, 그리고 — macOS에서만 — 미리 빌드된 백그라운드 앱을 설치하는 방법이다. pip install exo 패키지는 존재하지 않으며, 소스 설치는 Python 의존성 관리를 위해 uv를 사용한다.
- exo 자체 README에 따르면 이 과정으로 exo 대시보드와 OpenAI 호환 API가
http://localhost:52415에서 시작됨 - Linux에서는 동일한 명령이
uv sync --extra mlx-cpu(해당하는 경우--extra mlx-cuda13/--extra mlx-cuda12)를 사용한다. exo 자체 README에 따르면 Linux에서 exo는 현재 CPU로만 실행되며 GPU 지원은 "개발 중" - Nix가 이미 설치되어 있으면
nix run .#exo로 macOS에서의 수동 의존성 설정 대부분을 건너뛸 수 있음 - macOS에서는 macOS Tahoe 26.2 이상이 필요한 미리 빌드된 백그라운드 앱도 제공된다 — exo 자체 문서에 따르면
brew install --cask exo로 설치하거나 EXO-latest.dmg를 직접 다운로드하면 됨 - README에 따르면 소스 설치에는 두 가지 설정 플래그가 존재한다:
--no-worker(로컬 추론 없이 코디네이터 전용 노드로 실행 — 네트워크 연결은 좋지만 GPU/메모리가 제한적인 머신에 유용함)와--legacy-daemon(구형 init 시스템을 위해 백그라운드 데몬으로 실행)
소스에서 빌드(macOS)
exo 자체 전제 조건 목록에 따르면 Xcode(Metal 툴체인 제공), Homebrew, uv, Node.js, 그리고 nightly Rust 툴체인이 필요하다. 터미널에서 다음을 실행한다:
git clone https://github.com/exo-explore/exo
cd exo/dashboard && npm install && npm run build && cd ..
uv sync --extra mlx
uv run exoexo 클러스터링의 실제 작동 방식
exo 자체 README는 여러 개의 독립된 기기가 어떤 레이어가 어디서 실행될지 수동으로 결정하지 않고도 하나의 추론 클러스터처럼 동작하게 만드는 네 가지 메커니즘을 문서화하고 있다.
- RDMA에 대한 exo 자체의 주의 사항: 클러스터의 모든 기기는 Thunderbolt 5 인증 케이블로 다른 모든 기기와 직접 연결되어야 하며, 모든 기기는 베타 빌드 번호를 포함해 정확히 동일한 macOS 버전을 실행해야 함
--no-worker플래그를 사용하면 기기가 로컬에서 추론을 실행하지 않고 코디네이터로만 클러스터에 참여할 수 있음 — 네트워크 연결은 강하지만 연산 능력이 약한 머신에 유용EXO_OFFLINE환경 변수는 인터넷 연결 없이, 이미 로컬에 캐시된 모델만 사용해 클러스터를 실행함
자동 기기 검색
같은 네트워크에서 exo를 실행하는 기기들은 피어투피어 검색 계층을 사용해 수동 설정 없이 서로를 찾는다 — exo 자체 설정 문서는 이것이 libp2p 기반이라고 언급하며, 같은 네트워크에서 여러 클러스터를 격리하기 위한 EXO_LIBP2P_NAMESPACE 환경 변수로 노출된다.
토폴로지 인식 오토 패러렐 모드
exo 자체 README에 따르면 exo는 클러스터 토폴로지에 대한 실시간 뷰 — 각 기기의 가용 메모리와 기기 간 네트워크 링크의 지연 시간 및 대역폭 — 를 구축하고, 이 뷰를 이용해 모델을 기기 간에 어떻게 분할할지 결정한다.
텐서 병렬화
모델의 레이어를 기기 간에 분할하는 것 외에도, exo는 그 분할 내에서 텐서 병렬화를 적용한다. exo 자체 README는 이 기술을 사용하지 않는 단순한 레이어 분할과 비교해 기기 2대에서 최대 1.8배, 4대에서 3.2배의 가속을 이 기법의 공로로 돌린다.
Thunderbolt 5를 통한 RDMA
macOS 26.2 이상을 실행하는 Thunderbolt 5 탑재 Mac(Mac Mini M4 Pro, Mac Studio/MacBook Pro M4 Max, Mac Studio M3 Ultra)에서 exo는 Thunderbolt를 통한 원격 직접 메모리 액세스(RDMA)를 지원하며, exo 자체 문서는 이를 기기 간 지연 시간을 99% 줄이는 것으로 설명한다. 이를 활성화하려면 macOS 복구 모드로 진입해 복구 터미널에서 rdma_ctl enable을 실행해야 하며, 이는 exo 자체 설정 단계에 따른 것이다.
지원 모델 및 플랫폼
exo는 MLX 추론 백엔드를 통해 Hugging Face Hub에서 모델을 로드하며, exo 자체 README는 GGUF 형식 모델 지원을 문서화하지 않는다 — 이는 GGUF를 우선시하는 Ollama나 LM Studio 같은 llama.cpp 기반 도구와의 차이점이다.
모델 로딩
exo 자체 README는 Hugging Face Hub에서 직접 커스텀 모델을 로드하는 방법과, Linux에서는 ~/.local/share/exo/custom_model_cards/(macOS는 대응 경로)에 저장된 커스텀 로컬 모델 카드에 대한 지원을 문서화하고 있다. exo 자체 설정 문서는 EXO_ENABLE_IMAGE_MODELS를 이미지 모델 지원을 활성화하는 플래그로 명시하며, 기본값은 비활성화다.
macOS 플랫폼 등급
exo 자체 PLATFORMS.md는 Apple Silicon Mac을 "Tier 1" 지원(테스트 및 유지보수됨)으로 분류하며, Mac Studio M3 Ultra, Mac Mini M4 Pro, MacBook Pro M5/M4 Max를 구체적으로 테스트된 하드웨어로 명시한다. 이후 Apple은 Mac mini(M6/M5 Pro)와 Mac Studio(M5 Max/M5 Ultra)를 출시했다. 최신 테스트된 하드웨어 목록은 exo의 PLATFORMS.md를 직접 확인하라.
Linux 지원
exo 자체 README와 PLATFORMS.md는 Linux가 현재 CPU로만 실행된다는 점을 명확히 밝히고 있다. GPU 지원(CUDA와 Vulkan 모두 계획됨으로 표기되어 있으나 아직 제공되지 않음)은 "개발 중"으로 설명되며, 이 리뷰 작성 시점 기준 Linux CUDA 및 CPU 지원은 모두 exo 자체 로드맵의 "계획됨 — Tier 1" 섹션에 나열되어 있다.
Windows 지원
exo 자체 PLATFORMS.md는 Windows CUDA와 Windows CPU 지원을 단기 Linux 로드맵 항목과 분리되고 그 이후에 위치한 "Longer term!" 제목 아래에만 나열하고 있다 — Windows는 현재 지원되지 않는다.
성능: 벤치마크가 보여주는 것
exo 자체 README는 모든 구성에 대해 자체 수치를 공개하는 대신 제3자 벤치마크로 연결한다. PromptQuorum은 이 테스트들을 독립적으로 재실행하지 않았으며, 여기서는 PromptQuorum 자체 측정치가 아니라 exo 자체가 인용한 출처로서 이를 전달한다.
- exo의 README는 512GB M3 Ultra Mac Studio 4대가 DeepSeek-V3.1(8비트)과 Kimi-K2-Thinking(4비트)을 동시에 실행하는 대시보드 스크린샷을 보여주며, 이는 exo가 가능하게 하는 메모리 풀링의 예시로 제시됨
- Jeff Geerling의 블로그에서 인용된 벤치마크는 텐서 병렬 RDMA를 사용해 M3 Ultra Mac Studio 4대에서 Qwen3-235B(8비트)를 실행한 결과를 다룸
- 동일한 인용 출처는 같은 4기기 클러스터 구성에서 DeepSeek-V3.1 671B(8비트)와 Kimi K2 Thinking(네이티브 4비트)도 다룸
- exo 자체 README는 위의 제3자 대형 모델 벤치마크와는 별도로, 텐서 병렬화만으로 인한 일반적인 가속 배수가 최대 1.8배(기기 2대)와 3.2배(기기 4대)라고 밝힘
사용 예시
다음은 위에서 설명한 exo의 문서화된 기능을 바탕으로 한 워크플로우이며, 가상의 사용 사례가 아니다.
단일 Mac으로는 실행할 수 없는 모델 실행하기
같은 네트워크의 두 대 이상의 Apple Silicon Mac에 exo를 설치하고, 각각에서 uv run exo(또는 macOS 앱)를 실행한 뒤, 전체 가중치가 단일 기기의 통합 메모리를 초과하는 모델을 로드한다 — exo의 자동 검색과 토폴로지 인식 샤딩이 수동 레이어 할당 없이 클러스터 전체에 분할한다.
기존 OpenAI 호환 도구를 로컬 클러스터로 향하게 하기
exo가 http://localhost:52415(또는 클러스터 기기의 주소)에서 OpenAI Chat Completions 호환 API를 제공하므로, OpenAI API, Ollama API, 또는 Anthropic의 Claude Messages API용으로 구축된 기존 클라이언트를 재작성 없이 기본 URL만 변경해 exo 클러스터로 리디렉션할 수 있다.
캐시된 모델로 오프라인 개발하기
exo를 시작하기 전에 EXO_OFFLINE=true를 설정하면 이미 다운로드되어 로컬에 캐시된 모델만으로 완전히 작동한다. 이는 개발 중 Hugging Face에 대한 네트워크 접근에 의존하지 않고 클러스터 구성을 테스트하는 데 유용하다.
exo는 누구에게 적합한가?
exo가 적합한지 여부는 이미 보유한 하드웨어와 그것이 macOS 기반인지에 크게 좌우된다 — exo의 클러스터링은 먼저 Apple Silicon을 중심으로 구축되고 테스트되었다.
다음의 경우 exo를 사용하라
- 매우 큰 메모리를 갖춘 머신을 구매하거나 클라우드 GPU 시간을 임대하는 대신, 단일 Mac의 통합 메모리로는 담을 수 없는 모델을 실행하고 싶은, 두 대 이상의 Apple Silicon Mac을 보유한 경우
- 어떤 모델 레이어가 어느 기기에서 실행되는지 수동으로 결정하는 대신 자동 기기 검색과 토폴로지 인식 샤딩을 원하는 경우
- Thunderbolt 5를 지원하는 macOS 26.2 이상의 Mac을 보유하고 있으며, exo가 현재 문서화한 가장 지연 시간이 낮은 클러스터링 옵션(RDMA)을 사용하고 싶은 경우
- 벤더 종속이 없는 관대한 오픈소스 라이선스(Apache-2.0)를 원하는 경우
uv로 소스에서 빌드하는 것이 익숙하거나, 터미널 없이 백그라운드 서비스를 원한다면 미리 빌드된 macOS 앱을 선호하는 경우
다음의 경우 기다리거나 다른 대안을 찾아보라
- 클러스터 하드웨어가 Linux 전용이고 GPU 가속이 필요한 경우 — exo 자체 PLATFORMS.md는 여전히 Linux GPU 지원을 개발 중이라고 표기하고 있으며, 현재 제공되는 것은 CPU 지원뿐임
- Windows를 사용하는 경우 — exo 자체 로드맵은 Windows 지원을 "장기" 항목으로만 나열하며, 현재는 이용할 수 없음
- GGUF 형식 모델 지원이 필요한 경우 — exo가 문서화한 모델 로딩 경로는 MLX/Hugging Face Hub이며 GGUF가 아니다. 대신 llama.cpp나 GPUStack을 참고하라
- 기기가 하나뿐이고 클러스터링이 전혀 필요 없는 경우 — Ollama나 LM Studio 같은 단일 머신용 도구가 더 간단하게 맞음
- 확립된 엔터프라이즈 지원 조직이 필요한 경우 — exo는 소규모 팀(exo labs)이 개발하므로, 지원은 공식 SLA가 아니라 GitHub 이슈와 커뮤니티 채널을 통해 이루어짐
exo와 다른 분산 추론 도구 비교
exo는 단일 머신에서 모델을 서비스하는 대신 여러 머신에 모델을 분할하는 다른 프로젝트들과 함께 분산/클러스터 로컬 추론 영역에 속한다. 다음은 비교 내용이다 — 전체 카탈로그는 로컬 LLM 소프트웨어 디렉터리를 참고하라.
- GPUStack — Linux, Windows, macOS 전반에서 GPU를 모으고 Ollama, vLLM, llama.cpp를 백엔드로 모델을 서비스할 수 있는 오픈소스 GPU 클러스터 매니저(Apache-2.0)다. exo의 MLX 전용, Apple Silicon 우선 설계에 비해 더 광범위하고 백엔드에 구애받지 않는 클러스터 매니저다. GPUStack은 PromptQuorum의 로컬 LLM 소프트웨어 디렉터리에 자체 항목이 있다.
- llama.cpp의 RPC 백엔드 — llama.cpp는 분산 추론을 위해 원격 호스트로 연산을 오프로드하는 실험적인
ggml-rpc-server를 제공한다. 이 프로젝트의 유지보수자들 스스로 이를 "취약하고 안전하지 않은"(fragile and insecure) "개념 증명"(proof-of-concept)이라고 표현하며 공개 네트워크에 절대 노출하지 말라고 경고한다. 이는 exo가 문서화한 클러스터링과는 성숙도와 보안 측면에서 상당히 다른 위치에 있다. - Petals — BigScience 워크숍의 연구 프로젝트로, 자신이 소유한 기기로 구성된 프라이빗 클러스터가 아니라 자원봉사자가 운영하는 공개 소비자용 GPU 무리에서 "BitTorrent 방식"으로 대형 모델을 실행한다. exo의 LAN 기반 클러스터링과는 다른 신뢰 모델로, 자신의 로컬 네트워크가 아니라 낯선 사람의 하드웨어에 걸친 협업 추론을 지향한다.
exo 평가 시 흔한 오해
exo에 대한 혼란은 대부분 이를 단일 기기 채팅 앱처럼 취급하거나, Linux/Windows가 macOS와 동일한 기능 세트를 갖출 것으로 기대하는 데서 비롯된다.
오해 1: GGUF 모델 지원을 기대함
exo 자체 README에 따르면 exo는 Hugging Face Hub에서 MLX를 통해 모델을 로드하며, GGUF 가져오기는 문서화되어 있지 않다. 이미 GGUF 파일 라이브러리를 보유한 사람은 대신 llama.cpp, Ollama, GPUStack과 같은 GGUF 우선 도구를 고려해야 한다.
오해 2: Linux가 macOS와 동일한 GPU 가속을 얻을 것이라고 가정함
exo 자체 PLATFORMS.md는 Linux가 현재 CPU로만 실행되며, GPU(CUDA/Vulkan) 지원은 계획되었으나 아직 제공되지 않았다고 명확히 밝히고 있다. GPU 가속 추론을 위해 여러 Linux GPU 머신을 클러스터로 묶는 것은 아직 exo의 Linux 경로가 문서화한 내용이 아니다.
오해 3: 어떤 네트워크 연결에서도 거의 선형적인 가속을 기대함
exo가 문서화한 가속 수치(기기 2대에서 최대 1.8배, 4대에서 3.2배)와 인용된 제3자 RDMA 벤치마크는 모두 Thunderbolt급 링크를 전제로 하며, 여러 경우 RDMA가 명시적으로 활성화된 상태다. 일반 Wi-Fi나 기가비트 이더넷으로 연결된 클러스터가 반드시 동일한 수치를 달성하지는 않는다 — exo 자체 문서는 해당 구성에 대한 수치를 공개하지 않는다.
오해 4: exo를 단일 기기 데스크톱 앱으로 취급함
exo는 클러스터에 참여하는 각 기기에 설치하고 실행하는 클러스터링 프레임워크이지, 원클릭 채팅 애플리케이션이 아니다 — 다만 미리 빌드된 macOS 백그라운드 앱은 소스에서 빌드하는 것에 비해 단일 Mac에서의 진입 장벽을 상당히 낮춘다.
자주 묻는 질문
exo란 무엇인가요?
exo(exolabs.net, 소스 코드는 github.com/exo-explore/exo)는 Apache-2.0 라이선스의 오픈소스 프레임워크로, 주로 Apple Silicon Mac과 같은 여러 기기를 하나의 분산 AI 추론 클러스터로 연결해, 단일 기기로는 실행할 수 없는 모델도 그룹 전체에 분할해 실행할 수 있게 해준다.
exo는 무료인가요?
네. exo는 Apache-2.0 라이선스 하에 오픈소스이며, 저장소 자체의 LICENSE 파일을 통해 확인되었다 — 표준 Apache-2.0 조건 이외의 별도 유료 등급이나 사용 제한은 없다.
exo는 어떤 라이선스를 사용하나요? 변경된 적이 있나요?
exo는 Apache License 2.0으로 라이선스되어 있으며, 저작권은 Exo Technologies Ltd에 있다. 이는 저장소의 현재 LICENSE 파일에 따른 것으로, 2026년 9월 12일에 직접 확인했다. PromptQuorum은 현재 저장소에서 표준 Apache-2.0 텍스트를 넘어서는 추가 사용 제한을 발견하지 못했다.
exo의 클러스터링은 실제로 어떻게 작동하나요?
exo 자체 README에 따르면, exo를 실행하는 기기들은 같은 네트워크에서 자동으로 서로를 검색하고, exo는 각 기기의 메모리와 기기 간 네트워크 링크에 대한 실시간 뷰를 구축한 뒤 이에 따라 모델의 레이어를 클러스터 전체에 분할하며, 추가 가속을 위해 텐서 병렬화를 더한다. 지원되는 macOS 하드웨어에서는 기기 간 지연 시간을 줄이기 위해 Thunderbolt 5를 통한 RDMA도 추가로 사용할 수 있다.
exo는 어떤 모델 형식을 지원하나요?
exo 자체 README는 MLX 추론 백엔드를 통해 Hugging Face Hub에서 모델을 로드하는 것을 문서화하고 있다. GGUF 형식 모델 지원은 문서화되어 있지 않으며, 이는 llama.cpp나 Ollama 같은 GGUF 우선 도구와의 차이점이다.
exo는 Windows에서 실행되나요?
현재는 아니다. exo 자체 PLATFORMS.md는 Windows CUDA와 Windows CPU 지원을 단기 계획과는 별도로 "Longer term" 로드맵 제목 아래에만 나열하고 있다.
exo는 Linux에서 실행되나요?
네, 다만 현재는 CPU로만 실행된다. exo 자체 README와 PLATFORMS.md는 이 리뷰 작성 시점 기준 Linux용 GPU 지원(CUDA 및 Vulkan)이 개발 중이며 아직 제공되지 않았다고 명확히 밝히고 있다.
exo는 어떻게 설치하나요?
git clone https://github.com/exo-explore/exo로 소스에서 빌드하고, 대시보드를 빌드한 뒤, uv sync --extra mlx(macOS) 또는 uv sync --extra mlx-cpu(Linux)를 실행하고, 이어서 uv run exo를 실행한다. macOS에서는 대신 brew install --cask exo로 미리 빌드된 백그라운드 앱을 설치하거나 EXO-latest.dmg를 다운로드할 수도 있다 — macOS Tahoe 26.2 이상이 필요하다.
exo의 GitHub 스타는 몇 개인가요?
exo는 GitHub API로 2026년 9월 12일 확인한 기준 GitHub 스타 47,375개, 포크 3,508개를 보유하고 있었다. 스타 수는 계속 변하므로 현재 수치는 실시간 저장소에서 확인하라.
exo는 누가 개발하나요?
exo는 GitHub의 exo-explore / exo labs가 개발한다. 저장소의 LICENSE 파일은 저작권자로 Exo Technologies Ltd를 명시한다. GitHub 자체 메타데이터에 따르면 저장소는 2024년 6월에 생성되었다.
