
oMLX 0.7.0rc1, 메뉴 막대 서버의 모델·캐시는 어디서 볼까
로컬 LLM 서버를 켰는데 터미널 창은 늘어나고, 정작 어떤 모델이 잡혔는지는 감으로 확인하게 되는 순간이 있습니다. oMLX 0.7.0rc1은 메뉴 막대에서 서버 상태를 관리하고, GET /v1/models로 모델 목록을 확인하는 흐름을 제공합니다. 처음 데모에서는 서버 시작·모델 목록·같은 접두사 재질문만 차례로 확인하면 됩니다.
책상 위 Mac이 작은 카페 주방이라면, 메뉴 막대는 불을 켜고 끄는 스위치이고 API는 주문표를 확인하는 창구에 가깝습니다. 0.7.0rc1의 부분 블록 캐시는 이미 읽은 대화가 블록 경계에서 조금 남았어도 다음 요청에 재사용하려는 개선입니다.
30초 요약
- Apple Silicon과 macOS 15 이상 환경에서 oMLX 앱 또는 Homebrew 흐름을 고릅니다.
- 메뉴 막대에서 서버를 시작한 뒤 기본 API
http://localhost:8000/v1를 확인합니다.GET /v1/models는 모델 폴더가 서버에 발견됐는지 확인하는 가장 작은 점검입니다.- 부분 블록 캐시는 같은 대화의 다음 턴에서 남은 프롬프트 재처리를 줄이는 기능이며, 내 Mac의 속도 보장은 아닙니다.
oMLX 0.7.0rc1은 무엇을 바꾸나
oMLX는 Apple Silicon에서 동작하는 로컬 LLM 추론 서버입니다. 공식 저장소는 네이티브 Swift/SwiftUI 메뉴 막대 앱으로 서버 시작·중지·모니터링을 지원한다고 설명합니다.
서버를 터미널에 묶어 두지 않고 관리 화면과 API 확인을 나눌 수 있다는 점이 이 데모의 출발점입니다. 앱은 메뉴 막대에서 상태를 보고, 클라이언트 연결은 OpenAI 호환 API로 확인합니다.
0.7.0rc1은 GitHub 기준 2026년 9월 25일 KST에 게시됐습니다. 이름에 rc가 있는 릴리스 후보이므로, 매일 쓰는 개발 환경에 넣기 전에는 작은 모델과 짧은 요청으로 먼저 확인하는 편이 안전합니다.
메뉴 막대에서 서버를 띄우기 전, 모델 폴더부터 정한다
공식 README의 소스 설치 요구 조건은 macOS 15 이상, Python 3.11~3.13, Apple Silicon입니다. 앱 설치는 릴리스의 해당 macOS용 DMG를 Applications로 옮기는 흐름이며, Homebrew를 쓰면 아래처럼 설치할 수 있습니다.
brew tap jundot/omlx https://github.com/jundot/omlx
brew install jundot/omlx/omlx
omlx start
앱 또는 Homebrew 서비스에서 omlx start를 쓰면 관리형 백그라운드 서버를 시작합니다. 반대로 작업 폴더를 직접 지정해 터미널에서 잠깐 살펴볼 때는 다음 형태가 문서에 제시돼 있습니다.
omlx serve --model-dir ~/models
모델 파일을 내려받기 전에 서버부터 켜는 것보다, 모델 디렉터리 위치를 먼저 고정하는 편이 확인이 쉽습니다. oMLX는 해당 디렉터리의 하위 폴더에서 LLM, 비전 언어 모델(VLM), 임베딩 모델, 리랭커를 자동으로 찾습니다.

모델이 보이는지 확인하는 가장 작은 요청
기본 설정에서 OpenAI 호환 API의 기준 주소는 http://localhost:8000/v1입니다. 서버를 켠 뒤에는 먼저 모델 목록만 조회해 보세요.
대화 요청보다 앞서 이 응답이 돌아오는지 보면, 서버·포트·모델 발견을 한 번에 좁힐 수 있습니다.
curl http://localhost:8000/v1/models
문서 기반의 응답 형태는 아래처럼 data 배열 안에 모델 ID가 들어오는 방식입니다. 실제 이름과 개수는 모델 디렉터리에 둔 파일 및 설정에 따라 달라집니다.
{
"object": "list",
"data": [
{ "id": "내-모델-디렉터리명", "object": "model" }
]
}
빈 배열이나 연결 오류가 나오면 모델 다운로드보다 먼저 모델 디렉터리와 서버 로그를 확인하는 편이 빠릅니다. Homebrew 서비스 로그와 ~/.omlx/logs/server.log 위치는 공식 README에 안내돼 있습니다.
부분 블록 캐시, ‘대화 전체를 다시 읽지 않게’ 하는 마지막 조각
KV 캐시(Key-Value cache)는 모델이 이미 처리한 토큰의 중간 상태를 보관하는 방식입니다. oMLX는 자주 쓰는 블록을 RAM의 hot tier에 두고, 공간이 차면 SSD의 cold tier로 내보내는 계층형 구조를 설명합니다.
문제는 대화 끝이 캐시 블록을 꽉 채우지 못할 때입니다. 기존에는 그 남은 조각 때문에 다음 턴에서 적지 않은 프롬프트를 다시 처리할 수 있었고, 0.7.0rc1은 이 마지막 부분 블록도 재사용하도록 개선했습니다.
부분 블록 캐시는 ‘캐시가 있다’는 표시보다, 같은 접두사를 가진 다음 요청의 재처리량을 줄이는지로 보는 기능입니다. 그래서 하루 데모에서는 전혀 다른 질문 두 개보다, 긴 공통 지시문 뒤에 마지막 질문만 바꾼 두 요청을 나란히 보내 보는 편이 의미가 있습니다.
공식 릴리스는 Qwen3.6-35B-A3B, 13.4K 토큰 컨텍스트 테스트에서 다음 턴 prefill이 1,174토큰에서 37토큰으로, 첫 토큰까지 시간이 0.83초에서 0.42초로 줄었다고 제시합니다. 이는 릴리스의 특정 장비·모델·테스트 조건 수치이므로, 내 Mac의 벤치마크 결과처럼 받아들이면 안 됩니다.

하루 데모는 이 순서면 충분합니다
- 메뉴 막대 앱 또는
omlx start로 서버를 시작합니다. curl http://localhost:8000/v1/models로 모델 ID가 보이는지 확인합니다.- 같은 긴 지시문을 앞에 두고 마지막 질문만 바꾼 요청을 두 번 보냅니다.
- 관리 화면의 상태·사용량 또는 로그를 보되, 릴리스 수치와 내 환경 수치를 섞지 않습니다.
이 순서가 좋은 이유는 단순합니다. 모델 발견이 안 된 상태에서는 캐시를 논해도 원인을 좁힐 수 없기 때문입니다. 서버가 정상이고 모델 목록이 보일 때만 캐시 관찰도 의미를 갖습니다.
누구에게 맞고, 어디서 멈춰야 하나
Apple Silicon Mac에서 OpenAI 호환 로컬 엔드포인트를 개발 도구에 연결하려는 사람, 여러 모델을 관리하면서 메뉴 막대에서 상태를 보고 싶은 사람에게 맞습니다. 모델별 별칭, 수동 load/unload, TTL 같은 운영 기능도 공식 README에서 안내합니다.
반면 Intel Mac이거나 macOS 요구 조건을 만족하지 않는 환경에는 이 경로가 맞지 않습니다. 또 0.0.0.0 같은 비루프백 주소로 열 계획이라면, oMLX는 main API key 없이 시작하지 않도록 설명합니다.
외부에 열기 전에는 ‘서버가 켜졌는가’보다 API 키와 노출 범위를 먼저 결정해야 합니다. 키 없는 추론도 명시적인 opt-in 옵션이므로, 편의 때문에 기본값처럼 다루지 않는 편이 좋습니다.
바이브코딩으로 다음 실험을 넓힌다면
코드를 길게 쓰기보다, 먼저 에이전트에게 관찰 조건을 고정해 달라고 요청하는 편이 낫습니다. 아래는 실행 결과를 보장하지 않는 확장 프롬프트 예시입니다.
Apple Silicon Mac의 oMLX 로컬 서버에서
1) /v1/models 응답을 저장하고,
2) 같은 system prompt + 서로 다른 마지막 user 질문 두 개를 순서대로 보내며,
3) 응답 시간·서버 로그의 캐시 관련 항목을 CSV로 남기는
Python 스크립트를 만들어줘.
API 키는 환경 변수에서 읽고, localhost 외 주소에는 연결하지 않게 해줘.
이렇게 하면 ‘빠르다’는 인상 대신 모델 ID, 요청 순서, 관찰 지점을 남길 수 있습니다. 제품화한다면 모델 다운로드·디스크 여유·API 키·포트 상태를 한 화면에서 확인하는 소형 개발 도구가 다음 후보가 될 수 있지만, 실제 운영용으로는 권한 분리와 오류 복구를 추가 검증해야 합니다.
작업 환경을 함께 정리한다면
외장 SSD는 모델 디렉터리나 SSD 캐시를 내부 저장공간과 분리하려는 경우에만 직접적인 선택지입니다. 실제 카드의 모델명·가격·호환 조건은 카드에서 다시 확인하세요.

Thunderbolt/USB-C 도크는 외장 SSD와 유선 네트워크를 한 작업대에서 함께 연결해야 할 때만 의미가 있습니다. 포트 구성과 Mac의 연결 규격은 카드 조건을 확인한 뒤 고르세요.

이 포스팅은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다.
출처
핵심 정리: 다섯 가지 질문과 답
Q. oMLX 서버는 어디서 시작하나요?
앱 메뉴 막대 또는 관리형 설치의 omlx start에서 시작할 수 있습니다.
Q. 서버가 모델을 찾았는지는 어떻게 보나요?
기본 API 주소 기준 GET /v1/models 응답에 모델 ID가 들어오는지 확인합니다.
Q. 부분 블록 캐시는 무엇이 달라졌나요?
완전한 캐시 블록만이 아니라 대화 끝의 부분 블록도 다음 요청에 재사용하도록 개선한 기능입니다.
Q. 릴리스의 속도 수치를 내 Mac에도 적용해도 되나요?
아닙니다. 특정 모델·컨텍스트·테스트 환경의 릴리스 수치로만 봐야 합니다.
Q. 네트워크에 공개해도 되나요?
비루프백 주소에는 main API key가 필요하며, 공개 범위와 인증을 먼저 검토해야 합니다.
글을 읽어 주셔서 감사합니다.
이 글이 도움이 되었고 새로운 정보를 계속 받아보고 싶으시다면 구독해 주세요.
'AI > 오픈 소스 소개' 카테고리의 다른 글
| Spec Kitty 3.2.7, 요구사항을 작업 묶음과 검토 상태로 남기는 로컬 데모 (0) | 2026.10.05 |
|---|---|
| Token Monitor 사용법, Codex·Claude Code 한도와 Hermes 사용량을 한 화면에 놓는 법 (0) | 2026.09.29 |
| Kiro Crew 0.7.1, 재시작 뒤에도 이어지는 작업은 어디까지일까 (0) | 2026.09.27 |
| ConnectOnion 함수 도구 연결, 에이전트가 무엇을 했는지 기록까지 남기는 법 (0) | 2026.09.26 |
| Orca Git worktree 데모, 에이전트 답이 섞일 때 비교부터 분리하는 법 (0) | 2026.09.25 |
댓글