Mac에서 여러 로컬 AI 모델을 동시에 메모리에 유지하는 방법 (재로드 대기 없이)
요약
Off Grid AI Desktop의 'Keep loaded' 기능을 사용하면 Mac에서 여러 로컬 AI 모델을 동시에 메모리에 유지할 수 있습니다. 이 기능은 모델 전환 시 언로드 및 재로딩 대기 시간을 제거하여 사용자 경험을 개선합니다. 해당 기능은 Apple silicon 기반 Mac 환경에 최적화되어 있으며, GPU 메모리 예산을 관리하며 작동합니다.
핵심 포인트
- Off Grid AI Desktop의 'Keep loaded' 기능을 통해 모델 동시 유지 가능
- 모델 전환 시 언로드/재로딩 대기 시간 없이 즉시 사용 가능
- Apple silicon Mac (M1 이상) 환경에 최적화되어 작동함
- GPU 메모리 바를 통해 로드할 모델 세트의 용량 확인 필요
에디터에서 빠른 완성을 위해 작은 모델을 사용하고, 채팅을 위해 더 큰 모델을 사용하는 경우, 도구가 다른 모델을 요청할 때마다 Mac이 하나를 언로드(unload)하고 다음 것을 로드하면서 기다려야 합니다. Off Grid AI Desktop은 여러 채팅 모델을 동시에 Mac 메모리에 유지할 수 있습니다. 이 중 하나의 이름을 가진 요청은 이미 로드되어 있는 해당 모델로 바로 전달되며, 아무것도 교체되지 않습니다. 저장하기 전에 메모리 바를 통해 설정된 모델 세트가 적합한지 확인할 수 있습니다.
필요한 것들
- Apple silicon이 탑재된 Mac (M1 이상). Mac 다운로드는 Apple silicon 전용으로 빌드되었습니다.
- Off Grid AI Desktop 0.0.55 이상 버전. Keep loaded 기능은 현재 안정화된 버전인 0.0.55에 포함되어 있습니다. Mac용 Off Grid AI Desktop 다운로드.
- 앱의 Models 화면에서 다운로드한 두 개 이상의 채팅 모델. 텍스트 모델과 비전 모델 모두 계산됩니다.
- 선택하는 세트를 위한 충분한 통합 메모리(unified memory). 앱이 수학을 처리해 주며, 규칙은 아래와 같습니다.
- 계정이나 결제 필요 없음. Keep loaded는 무료 앱에 포함된 게이트웨이의 일부입니다.
Mac에 얼마나 많은 모델이 들어갈까
Apple silicon에서는 GPU와 CPU가 하나의 메모리 풀을 공유합니다. macOS는 GPU가 이 중 약 4분의 3를 사용하도록 허용하므로, 앱은 Mac 메모리의 75%를 기준으로 계획합니다. 여기서 안전 마진으로 1 GB를 제외하고, 앱 자체의 채팅 모델이 이미 차지하고 있는 용량을 제외합니다.
이를 통해 채팅 모델을 위한 예산은 대략 다음과 같습니다:
| Mac 메모리 | 유지 가능한 모델용 예산 |
|---|---|
| 16 GB | 약 11 GB |
| ... | |
| 각 유지되는 모델은 모델 파일, 비전 파일(있는 경우), 컨텍스트 캐시, 그리고 작은 작업 버퍼가 필요합니다. 모든 유지되는 모델은 16,384-토큰의 컨텍스트를 사용합니다. 만약 세트가 전체 정밀도(full precision)로 캐시에 맞지 않으면, 플래너는 q8_0으로 시도하고, 그다음 q4_0을 사용하며, 맞는 첫 번째 것을 사용합니다. 이 모든 것은 수동으로 설정할 필요가 없습니다. |
1단계: Keep loaded 열기
- Open Off Grid AI Desktop을 열고 사이드바에서 Gateway를 클릭합니다.
- Clients 아래, API keys 위에 있는 Keep loaded 섹션으로 스크롤합니다.
- 다운로드한 모든 채팅 모델 목록과 각 항목 옆의 체크박스를 볼 수 있습니다. 만약 목록이 없다면 "keep it loaded 할 채팅 모델을 다운로드하세요."라는 문구가 표시됩니다. 이 목록에는 사용자가 추가한 원격 서버에 존재하는 모델은 포함되지 않으며, 오직 이 Mac에 있는 모델만 표시됩니다.
2단계: 사용할 모델 선택 및 메모리 바 확인
- 함께 로드할 모델을 체크합니다. 예를 들어, 에디터용 4B 모델과 채팅용 9B 모델을 선택할 수 있습니다.
- 체크를 할 때마다 각 모델이 차지하는 메모리 용량(GB)이 이름 옆에 표시됩니다.
- 목록 아래에는 GPU 바가 전체 사용량을 예산과 비교하여 보여줍니다 (예:
18.4 / 23.0 GB). 설정된 모델이 너무 크면 빨간색으로 변합니다. Mac의 경우 이 바가 중요합니다. 또한 RAM 바도 나타나는데, Apple silicon에서는 모델들이 이미 공유 메모리에 위치하기 때문에 거의 0에 가깝게 유지됩니다. - 바 옆에는 해당 세트가 사용하는 CPU 스레드 개수가 표시됩니다. 각 모델은 코어의 균등한 부분을 사용하며, 최대 8개씩 할당되므로 여러 모델이 CPU를 두고 충돌하지 않습니다.
만약 설정된 모델이 너무 크면 빨간색 줄에 "These models do not fit in memory together. Remove one or pick smaller ones."라는 메시지가 표시됩니다. 하나를 체크 해제하거나 큰 모델을 작은 모델로 교체하면 바가 즉시 업데이트됩니다.
3단계: Keep loaded로 저장하기
- Keep loaded를 클릭합니다. 이 버튼은 체크박스를 변경한 후에만 나타나며, 설정된 세트가 메모리에 맞지 않으면 비활성화 상태로 유지됩니다.
- 앱이 해당 세트를 위한 llama.cpp 모델 라우터를 시작하고 각 모델을 로드합니다. 각 모델에는 loading 배지가 표시되다가 loaded로 바뀝니다. 하나라도 로드되지 않으면, 그 배지는 failed로 표시되고 목록 아래 빨간색 줄에 이유가 표시됩니다.
- 끝입니다. 세트가 저장되었습니다. 다음에 앱을 시작하면 동일한 모델들이 자동으로 다시 로드됩니다.
모델의 로드를 유지하는 것을 중지하려면 해당 항목의 체크를 해제하고 Keep loaded를 다시 클릭합니다. 모든 항목을 체크 해제하고 저장하여 메모리를 완전히 비울 수 있습니다.
4단계: 이름으로 로드된 모델 호출하기
게이트웨이는 http://127.0.0.1:7878/v1에서 OpenAI API를 사용합니다. 로드된(kept) 모델에 접근하려면 해당 모델의 ID를 model 필드에 넣어야 합니다.
- 모델 목록에서 ID 가져오기:
curl http://127.0.0.1:7878/v1/models
- 각 로드된 모델은 이 목록에 있으며, 실행되는 창(window) 크기인 "context_length": 16384를 가집니다.
- 해당 ID를 모든 OpenAI 호환 클라이언트에서 사용합니다:
from openai import OpenAI
client = OpenAI(base_url="http://127.0.0.1:7878/v1", api_key="YOUR_API_KEY")
...
만약 API 키 필요를 API 키 아래에서 활성화했다면, 모든 게이트웨이 요청과 마찬가지로 키를 전송해야 합니다. local을 지정하거나 모델을 아예 지정하지 않은 요청은 이전처럼 앱 자체의 채팅 모델로 실행됩니다. 로드하지 않은 다운로드된 모델을 지정하는 요청도 이전과 동일하게 작동합니다.
GET /v1/gateway/status는 kept_models 아래에 로드된 세트를 나열하며, 스크립트가 무엇이 로드되었는지 확인해야 할 때 유용합니다.
llama.cpp 업데이트 시
Off Grid AI Desktop은 앱 릴리스 없이 엔진을 업데이트합니다. 더 새로운 llama.cpp가 도착하면, 로드된 모델들이 답변 도중에 재시작되지 않습니다. 대신 "로드된 모델에 대한 엔진 업데이트 준비 완료"라는 카드가 나타나며 모델 재시작 버튼이 있습니다. 답장을 기다리고 있지 않을 때 이 버튼을 클릭하세요.
라우터가 스스로 중지되면, 앱은 최대 3번까지 5초 간격으로 재시작합니다. 그 후에는 설정(set)을 변경할 때까지 다운된 상태를 유지하며 목록 아래에 이유를 표시합니다.
이것이 하지 않는 것
- 하나의 모델을 더 빠르게 만들지는 않습니다. Mac에서 유지되는 모든 모델은 동일한 GPU와 메모리 대역폭을 공유하므로, 두 개의 모델이 동시에 응답할 경우 각각 단독으로 작동할 때보다 느리게 실행됩니다.
- 각각 유지된 모델은 한 번에 하나의 요청만 처리합니다. 같은 모델에 대한 두 번째 요청은 첫 번째 요청을 기다립니다. 하지만 서로 다른 유지된 모델들은 병렬로 응답합니다.
- 컨텍스트 창(context window) 크기를 늘리지는 않습니다. 채팅 설정에서 더 많은 토큰을 사용하더라도, 유지되는 모델들은 16,384 토큰으로 작동합니다.
- 메모리를 초과하여 할당하지 못하게 합니다. 설정된 세트가 Mac 메모리의 75%에 맞지 않으면 앱은 이를 시작하지 않습니다. 강제로 실행할 수 있는 옵션은 없습니다.
- 게이트웨이를 통해 들어오는 요청을 처리합니다. 앱 내부의 채팅 창은 자체 채팅 모델을 계속 사용합니다.
FAQ
Mac에서 두 개의 LLM(대규모 언어 모델)을 동시에 실행할 수 있나요?
예. Gateway > Keep loaded 항목을 모두 체크하고 Keep loaded를 클릭하십시오. GPU 표시줄이 예산 범위 내에 있는 한, 두 모델 모두 메모리에 유지되며 이름으로 요청에 응답합니다.
Mac에서 몇 개의 로컬 모델을 유지할 수 있나요?
모델의 크기와 사용 가능한 메모리에 따라 다릅니다. 이 앱은 통합 메모리(unified memory)의 약 75%를 기준으로 계획하며, 여기서 1GB와 이미 로드된 채팅 모델만큼을 제외합니다. 따라서 32GB Mac의 경우 유지되는 모델에 사용할 수 있는 메모리는 약 23GB입니다. 메모리 표시줄이 저장하기 전에 알려줍니다.
이것은 Ollama가 모델을 메모리에 유지하는 것과 같은 건가요?
효과는 같습니다. 모델들이 상주(resident) 상태를 유지하므로 로드 대기 시간이 없습니다. Off Grid AI Desktop 역시 무언가를 로드하기 전에 Mac용 세트 크기를 조정하며, 맞지 않는 세트는 시작하지 않습니다.
모델을 유지하는 것이 Mac 속도를 늦추나요?
그들이 차지하는 메모리는 다른 앱에서 사용할 수 없는 메모리입니다. 설정된 세트가 예산에 근접할 경우, 비디오 편집기와 같은 무거운 앱은 공간이 부족해집니다. 모델 체크를 해제하고 저장하여 메모리를 반환하십시오.
Keep loaded 기능은 무료인가요?
예. 게이트웨이와 Keep loaded는 계정 없이 Mac용 무료 Off Grid AI Desktop 앱의 일부입니다.
관련 항목
• Off Grid AI 데스크톱 다운로드
• 2026년 Mac에서 팀 전체를 위한 로컬 AI 서버 실행 방법 (Ollama 대안, 클라우드 없음)
• 2026년 Mac에서 여러 로컬 AI 모델을 나란히 비교하는 방법 (질문 하나로 최대 6개 모델까지)
• 2026년 Mac에서 LLM을 로컬로 실행하는 방법 (완전 오프라인, 구독 필요 없음)
AI 자동 생성 콘텐츠
본 콘텐츠는 Dev.to AI tag의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기