mlxcel이란?
mlxcel은 요청 경로에 Python 인터프리터 없이 AI 모델을 로컬에서 실행하기 위한, 명령줄 도구와 서버를 겸하는 네이티브 추론 런타임입니다. GitHub README에서는 "Apple Silicon 및 NVIDIA CUDA 시스템을 위한 고성능 LLM, VLM, 임베딩, 리랭킹, 오디오 추론"을 제공하며 "네이티브 MLX C++ 바인딩"을 통해 실행된다고 설명합니다.
- 제품 유형: Rust 네이티브 CLI(
mlxcel)와 서버(mlxcel-server)로, Homebrew를 통해 컴파일된 바이너리로 배포되거나 소스에서 빌드됨 — Python 패키지도 그래픽 데스크톱 앱도 아님 - 개발사: Lablup Inc., 오픈소스 AI 인프라 및 MLOps 플랫폼 Backend.AI로도 알려진 기업
- 저장소: github.com/lablup/mlxcel, 원본 프로젝트 — 다른 GitHub 사용자명 아래에 동일한 이름의 포크가 여러 개 존재하며, 모두 이 저장소를 상위 프로젝트로 기재
- 라이선스: Apache 2.0, 저장소의 LICENSE 파일로 확인됨
- 연계 제품: Backend.AI Go. mlxcel 자체 README에서는
mlxcel-server위에서 구동할 수 있는 로컬 채팅 및 모델 관리용 선택적 그래픽 보조 인터페이스로 설명됨
프로젝트 연혁
mlxcel의 README는 CHANGELOG를 통해 버전 이력을 기록하며, 현재 main 브랜치를 v0.7.0에 미공개 작업이 더해진 것으로 설명합니다. 프로젝트는 자체 changelog와 README에 따르면 일련의 태그 지정 릴리스를 거치며 플랫폼 대상과 서빙 기능을 추가해 왔습니다.
- 1초기 릴리스(v0.0.28까지) — Apple Silicon 우선 추론
Why it matters: 프로젝트 README는 mlxcel 0.0.28에서 수행된 이전 벤치마크 캠페인(README 본문에는 2026년 5월로 기재됨)을 언급하며, 초기 배포 버전부터 이미 텍스트 디코드 및 프리필 벤치마킹이 작동했음을 시사합니다. - 2v0.6.0 — 정확성 정책을 갖춘 추측 디코딩
Why it matters: README에 따르면 이 릴리스는 출력의 정확성과 무관하게 항상 가장 빠른 커널을 사용하는 대신, 더 빠른 추측 디코딩 경로를 활성화하기 전에 그리디(greedy) 정확성을 확인하는 정책을 도입했습니다. - 3v0.7.0 — 현재 릴리스 기준선
Why it matters: README는 이 버전을 이 리뷰 작성 시점 기준 최신 태그 릴리스로 설명하며, DeepSeek-V4 아키텍처 지원, 확장된 llama-server 라우트 호환성, 그리고 여러 모델 계열에서 반정밀도 성능을 개선한 dtype 수정을 포함합니다. - 4미공개
main— 실험적 AMD ROCm 지원
Why it matters: 이 리뷰 작성 시점 기준, `--features rocm`을 통한 AMD GPU 지원은 `main` 브랜치에 존재하지만, README의 "Current main highlights" 섹션에 따르면 아직 태그 릴리스에는 포함되지 않았습니다.
mlxcel로 할 수 있는 것
mlxcel의 기능 세트는 광범위한 모델 유형을 네이티브로 실행하는 것과 프로덕션 지향적인 서빙 제어에 중점을 둡니다. 다음은 프로젝트 자체 README에 따른 각 기능의 실제 내용입니다.
- 직접 체크포인트 로딩 — Hugging Face(
mlx-community조직 포함)에서 MLX SafeTensors 체크포인트를 직접 로드하며, 많은 표준 SafeTensors 임베딩 체크포인트도 변환 단계 없이 로드 가능 - 멀티 포맷 API 호환성 — OpenAI(Chat Completions, Completions, Responses, Embeddings, Reranking, Audio), Anthropic Messages, Vertex AI 호환 라우트에 더해, 특정 업스트림 릴리스에 고정된 문서화된 네이티브
llama-server호환 라우트/플래그 인터페이스 제공 - 광범위한 아키텍처 지원 — 밀집 트랜스포머, 희소 Mixture-of-Experts 모델, 하이브리드 상태 공간 모델, 비전-언어/OCR 모델, 임베딩, 리랭커, 음성 인식, 음성 합성을 지원하며
mlxcel arch명령으로 조회 가능 - 멀티 모델 라우팅 — 라우터 모드가 모델 저장소나 디렉터리에서 체크포인트를 탐지하고, 필요 시 로드하며, 최소 최근 사용(LRU) 방식으로 상주 세트를 제한
- 라이브 LoRA 어댑터 — README에 따르면 여러 LoRA 어댑터를 병합하지 않은 상태로 유지하여 요청별로 전환하거나, 디코드 오버헤드 없이 병합할 수 있음
- 추측 디코딩 — 여러 모델 계열(Gemma, Qwen, GLM-4.7-Flash MTP 경로 포함)에 대해 측정되고 정확성이 검증된 추측 디코딩을
/v1/internal/mtp-policy엔드포인트를 통해 제공 - 운영 제어 — API 키 및 CORS/TLS 구성, 유휴 모델 슬립/웨이크, GBNF 문법, 확장된 샘플링 제어, 프롬프트/캐시 관찰 기능
- 재현 가능한 모델 수정 —
--surgery플래그를 통한 YAML 정의 로드 시점 가중치 편집(scale,add,prune,replace,interpolate)으로, 가중치를 수동으로 편집하지 않고도 재현 가능한 체크포인트 수정 가능
사용 예시: mlxcel을 사용하는 세 가지 방법
다음은 위에서 설명한 mlxcel의 문서화된 기능을 바탕으로 한 구체적인 워크플로로, 프로젝트 자체 README의 명령을 사용합니다.
터미널에서 모델과 대화형으로 채팅하기
mlxcel run Qwen3.5-0.8B-4bit을 실행하면 처음 사용 시 모델을 다운로드하고 터미널에서 직접 대화형 채팅 REPL을 시작합니다 — README에 문서화된 빠른 시작에 따라 서버 프로세스나 별도 클라이언트가 필요하지 않습니다.
OpenAI 호환 서버를 시작하고 curl로 호출하기
mlxcel-server -m Qwen3.5-0.8B-4bit --port 8080을 실행해 서버를 시작한 다음, `curl http://localhost:8080/v1/chat/completions -H 'Content-Type: application/json' -d '{"model":"Qwen3.5-0.8B-4bit","messages":[{"role":"user","content":"Hello"}]}'`로 요청을 보냅니다 — OpenAI 자체 API에 사용되는 것과 동일한 요청 형식입니다.
다운로드 전에 모델이 하드웨어에 맞는지 확인하기
mlxcel inspect -m Qwen3.5-0.8B-4bit --max-tokens 32768을 실행하면 모델 가중치, KV 캐시, 활성화 메모리를 포함하는 읽기 전용 메모리 추정치를 얻을 수 있으며, --json을 추가하면 스크립트가 다운로드 시작 전에 사용 가능한 메모리와 비교할 수 있는 기계 판독 가능한 추정치를 얻을 수 있습니다.
mlxcel 설치
mlxcel은 macOS와 Linux에서 Homebrew를 통해 무료로 설치할 수 있으며, 소스 코드는 GitHub에 공개되어 소스 빌드가 가능합니다. 개발자를 위한 CLI 및 서버 도구이므로 그래픽 설치 프로그램은 없습니다.
소스 | 링크 |
|---|---|
| GitHub 저장소(소스 코드, Apache 2.0) | github.com/lablup/mlxcel |
| Homebrew 설치 | brew tap lablup/tap && brew install mlxcel |
| 소스 빌드(Apple Silicon) | cargo build --release --features metal,accelerate |
| 소스 빌드(NVIDIA CUDA) | cargo build --release --features cuda |
| 문서 | docs/installation.md |
Homebrew formula는 최신 태그 릴리스를 설치합니다. 프로젝트 README에 따르면 최신 미공개 기능(실험적 AMD ROCm 지원 등)과 CUDA 또는 ROCm 대상에는 소스 빌드가 필요합니다. Apple Silicon 소스 빌드에는 Rust, Xcode Command Line Tools, CMake, Metal 툴체인 구성 요소가 필요합니다.
mlxcel 요금제: mlxcel은 정말 무료인가?
네 — mlxcel에는 유료 요금제가 없습니다. 계정, 라이선스 키, 사용량 상한 없이 무료로 Apache 2.0 라이선스 오픈소스 프로젝트로 배포됩니다. GitHub 저장소에는 요금 페이지가 없습니다.
- mlxcel 자체를 설치하거나 실행하는 데 비용이 들지 않음 — Homebrew formula와 소스 빌드 모두 무료
- Apache 2.0 라이선스는 라이선스의 표준 조건(저작권 표시 및 라이선스 고지 유지)을 따르는 한 상업적 사용, 수정, 재배포를 허용
- 실질적인 유일한 비용은 실행에 필요한 하드웨어(Apple Silicon Mac 또는 CUDA 지원 GPU)와 별도로 다운로드하는 모델용 디스크 공간
- mlxcel을 개발한 Lablup은 Backend.AI를 상용 AI 인프라 제품으로도 판매하지만, 이 리뷰에서는 mlxcel의 기능이 Backend.AI 구매에 제한되어 있다는 증거를 발견하지 못했습니다 — 선택적 연계 앱 Backend.AI Go는 mlxcel의 README에서 필수가 아닌 별도의 선택적 GUI로 설명됩니다
mlxcel vs. llama.cpp
mlxcel과 llama.cpp는 둘 다 네이티브(비Python) 추론 런타임이지만, 언어, 주요 플랫폼 초점, 체크포인트 포맷에서 차이가 있습니다. llama.cpp는 가장 넓은 범위의 하드웨어와 양자화된 GGUF 포맷 모델을 지원하는 C/C++ 프로젝트이며, mlxcel은 MLX SafeTensors 체크포인트에 초점을 맞춘 Rust 프로젝트로, Apple Silicon을 주요 대상으로 하고 더 쉬운 교체를 위해 문서화된 llama-server 라우트 호환성을 제공합니다.
언어
- mlxcel:
- Rust
- llama.cpp:
- C/C++
주요 체크포인트 포맷
- mlxcel:
- MLX SafeTensors
- llama.cpp:
- GGUF
주요 플랫폼
- mlxcel:
- Apple Silicon(Metal), CUDA는 보조
- llama.cpp:
- 가장 넓은 하드웨어 지원: CPU, CUDA, Metal, Vulkan 등
유지 관리
- mlxcel:
- Lablup(Backend.AI 기업)
- llama.cpp:
- 커뮤니티가 유지 관리, 원래 Georgi Gerganov가 개발
API 호환성
- mlxcel:
- OpenAI, Anthropic, Vertex 및 llama-server 호환 라우트
- llama.cpp:
- 자체
llama-server가 mlxcel이 호환성을 목표로 하는 레퍼런스 구현
이는 각 프로젝트 자체 문서를 기반으로 한 사실 기반 기능 비교이며, PromptQuorum이 두 도구 중 어느 쪽에 대해서도 실시한 벤치마크가 아닙니다. mlxcel은 자체 문서화된 b10621 호환성 매니페스트에 따라 llama.cpp의 llama-server 라우트 인터페이스와의 호환성을 명시적으로 목표로 하며, 무관한 대안으로 스스로를 포지셔닝하지 않습니다.
mlxcel은 누구에게 적합한가?
mlxcel은 서빙 경로에 Python 의존성 없이 네이티브하고 프로덕션 지향적인 추론 런타임을 원하는 개발자에게 적합합니다.
다음과 같은 경우 mlxcel을 사용하십시오
- 배포 경로에 프로비저닝할 Python 인터프리터나 환경이 없는 네이티브(Rust) 추론 런타임을 원하는 경우
- Apple Silicon Mac이나 NVIDIA CUDA가 장착된 Linux 머신을 보유하고 있으며, LLM, 비전-언어 모델, 임베딩, 리랭킹, 오디오를 하나의 런타임으로 다루고 싶은 경우
- 이미
llama-serverAPI를 대상으로 도구를 운영 중이며, 호환성을 추측하는 대신 문서화되고 버전이 고정된 호환 인터페이스를 원하는 경우 - 서빙 배포를 위해 자동 로딩/축출 기능이 있는 멀티 모델 라우팅이나 라이브 LoRA 어댑터 전환이 필요한 경우
- 단독 유지 관리자가 아닌, 기존 상용 인프라 제품을 보유한 기업(Lablup)이 지원하는 도구를 원하는 경우
다음과 같은 경우 다른 옵션을 찾아보십시오
- 오늘 당장 프로덕션 환경에서 AMD ROCm 지원이 필요한 경우 — 명시적으로 실험적이며 소스 빌드로만 제공된다고 표시되어 있음
- 가능한 가장 넓은 하드웨어 호환성(구형 CPU, CUDA/Metal이 아닌 GPU)을 원하는 경우 — llama.cpp가 더 넓은 하드웨어 매트릭스를 지원
- 직접 구성하는 CLI와 서버보다 그래픽 데스크톱 채팅 앱을 선호하는 경우 — 대신 Jan이나 GPT4All을 참고하십시오
- 컴파일된 Rust 바이너리 대신 스크립팅과 파인튜닝을 위한 Python 네이티브 라이브러리를 원하는 경우 — mlx-lm이 이 경우에 더 적합합니다
mlxcel 평가 시 흔한 오해
mlxcel에 대한 혼란은 대부분 플랫폼 지원이나 체크포인트 포맷이 문서화된 것보다 더 넓다고 가정하는 데서 비롯됩니다.
오해 1: AMD ROCm 지원이 프로덕션 준비가 되었다고 가정
README는 ROCm 지원을 명시적으로 실험적이며 소스 빌드로만 제공된다고 표시하고 있으며, 일부 병합 커널은 더 느린 실행 경로로 대체되고, 알려진 미해결 문제가 설치 가이드에 문서화되어 있습니다.
오해 2: 이 저장소를 동일한 이름의 다른 "mlxcel" 포크와 혼동
다른 GitHub 사용자명 아래에 동일한 이름의 포크가 여러 개 존재합니다. 이 리뷰는 원본 프로젝트인 github.com/lablup/mlxcel을 구체적으로 다루며, 다른 사본들이 이를 상위 프로젝트로 기재하고 있다는 사실로 확인됩니다.
오해 3: GGUF 체크포인트 지원을 기대
mlxcel은 llama.cpp와 많은 Ollama 방식 도구가 사용하는 GGUF 포맷이 아니라 MLX SafeTensors 체크포인트를 로드합니다. 모델이 로드될 것이라고 가정하기 전에 모델이 MLX 포맷(대개 Hugging Face의 mlx-community 조직 아래)으로 게시되어 있는지 확인하십시오.
오해 4: mlxcel 자체가 발표한 성능 비교를 독립적으로 검증된 것으로 취급
mlxcel README에 있는 mlx-lm 및 mlx-vlm과의 성능 수치는 프로젝트 자체가 특정 하드웨어와 특정 모델 구성으로 측정한 것입니다. 발표된 수치를 특정 모델에 대한 보장으로 취급하기 전에 자신의 하드웨어와 체크포인트로 비교를 다시 실행하십시오.
경쟁 제품 및 대안
mlxcel은 vllm-mlx, oMLX, Rapid-MLX와 동일한 Apple Silicon 및 네이티브 런타임 추론 서버 영역에 속합니다 — 이들은 OpenAI 호환 또는 유사한 API 인터페이스로 로컬 모델을 실행하는 독립적인 프로젝트로, 주로 언어(Rust 대 Python), 플랫폼 범위, 기능 중점에서 차이가 있습니다.
도구 | 주요 특징 | 링크 |
|---|---|---|
| vllm-mlx | Apple Silicon용 vLLM 방식 연속 배칭, Python 기반 | vllm-mlx Review |
| oMLX | SSD 기반 프롬프트 캐싱을 갖춘 Apple Silicon 추론 서버 | oMLX Review |
| Rapid-MLX | 서빙 속도에 초점을 맞춘 네이티브 MLX 추론 서버 | Rapid-MLX Review |
| LoRAX | 하나의 GPU에서 하나의 기본 모델로 수천 개의 LoRA 어댑터를 서빙 | LoRAX Review |
이 목록은 Apple Silicon 및 네이티브 런타임 추론 엔진 분야에서 흔히 비교되는 도구들을 반영한 것이며, PromptQuorum의 독립적인 순위가 아닙니다 — 선택하기 전에 각 도구의 현재 기능 세트를 확인하십시오.
자주 묻는 질문
mlxcel이란 무엇입니까?
mlxcel(github.com/lablup/mlxcel)은 LLM, 비전-언어 모델, 임베딩, 리랭커, 오디오를 위한 무료 오픈소스(Apache 2.0) Rust 네이티브 추론 CLI 및 서버로, Lablup이 개발했습니다.
mlxcel은 누가 만듭니까?
AI 인프라 및 MLOps 플랫폼 Backend.AI로도 알려진 Lablup Inc.입니다.
mlxcel은 무료입니까?
네. Homebrew 또는 소스 빌드를 통해 무료로 설치할 수 있으며, Apache 2.0 라이선스이고 유료 요금제, 계정, 사용량 상한이 없습니다.
mlxcel은 어떻게 설치합니까?
macOS나 Linux에서 brew tap lablup/tap && brew install mlxcel을 실행하거나, 프로젝트 README에 따라 적절한 기능 플래그(metal, cuda, 또는 실험적인 rocm)를 사용해 Cargo로 소스에서 빌드합니다.
mlxcel은 어떤 하드웨어를 지원합니까?
Apple Silicon(Metal)이 주요 대상입니다. Linux의 NVIDIA CUDA는 지원되는 보조 대상입니다. Linux의 AMD ROCm은 실험적이며 소스 빌드로만 제공됩니다. 순수 CPU 전용 Linux 빌드는 작동하지만 검증된 릴리스 대상은 아닙니다.
mlxcel에 Python이 필요합니까?
아니요. mlxcel은 Rust로 작성되었으며 네이티브 MLX C++ 바인딩을 통해 MLX 체크포인트를 실행하고, 요청 경로에 Python 인터프리터가 없습니다.
mlxcel은 어떤 체크포인트 포맷을 사용합니까?
Hugging Face의 mlx-community 조직 아래 게시된 것을 포함한 MLX SafeTensors 체크포인트이며, llama.cpp가 사용하는 GGUF 포맷이 아닙니다.
mlxcel은 llama.cpp의 API와 호환됩니까?
네, 부분적으로 그리고 의도적으로 설계되었습니다. mlxcel은 자체 OpenAI, Anthropic, Vertex 호환 엔드포인트와 함께 고정되고 버전이 지정된 llama-server 라우트 및 플래그 호환성 매니페스트를 문서화하고 있습니다.
mlxcel은 오디오 및 비전 모델을 지원합니까?
네. 텍스트 생성, 임베딩, 리랭킹과 더불어 비전-언어 입력, 음성-텍스트 전사, (Kokoro 계열 모델을 통한) 텍스트-음성 합성을 처리합니다.
PromptQuorum은 mlxcel의 벤치마크 주장을 독립적으로 검증했습니까?
아니요. 이 리뷰는 PromptQuorum의 실제 벤치마킹이 아니라 mlxcel 자체의 GitHub 저장소와 README를 기반으로 합니다. 프로젝트 README의 성능 비교는 자체 측정된 것입니다.