LM Studio 오프라인 사용법: 인터넷 없이 채팅·문서 요약·로컬 API 쓰는 방법
LM Studio는 모델 파일과 실행에 필요한 런타임을 미리 받아 두면 인터넷 없이도 쓸 수 있다. 로컬 모델 채팅, 내 문서를 넣는 RAG, localhost에서 여는 API 서버가 모두 오프라인으로 동작한다. 반대로 모델 검색·새 모델 다운로드·런타임 다운로드·앱 업데이트는 인터넷이 필요하다. 따라서 비행기나 폐쇄망에 들어가기 전에 앱만 설치해 두는 것으로는 부족하다. 실제로 쓸 모델을 내려받고, 메모리에 로드해 답변까지 생성되는지 확인해야 한다.
오프라인에서 되는 것과 안 되는 것
LM Studio 공식 문서는 인터넷 연결이 없어도 다음 기능을 사용할 수 있다고 설명한다.
- 이미 다운로드한 LLM을 불러와 채팅하기
- PDF 같은 문서를 넣어 대화하거나 RAG로 내용 찾기
localhost또는 인터넷과 분리된 로컬 네트워크에서 추론 서버 실행하기
채팅에 입력한 내용과 LM Studio로 가져온 문서는 기기 안에서 처리된다고 공식 문서에 명시돼 있다. 다만 이 설명은 LM Studio의 로컬 기능을 기준으로 한다. 외부 MCP 서버나 별도 클라우드 API를 연결했다면 그 통신까지 자동으로 로컬이 되는 것은 아니다. 폐쇄망 반입 전에는 추가 연동을 빼고 LM Studio 단독으로 시험하는 편이 안전하다.
인터넷이 필요한 작업도 분명하다. Discover 탭의 검색은 Hugging Face 등에 요청을 보내므로 오프라인에서 작동하지 않는다. 새 모델과 LM Runtime 다운로드, 최신 카탈로그 정보 확인, 앱 업데이트도 연결이 필요하다. 이미 받은 모델이 있어도 그 형식을 실행할 런타임을 아직 받지 않았다면 현장에서 막힐 수 있다.
인터넷을 끊기 전에 준비하는 순서
1. 모델을 실제로 다운로드한다
LM Studio의 Discover 탭으로 이동해 모델을 찾고 원하는 파일을 내려받는다. 검색 결과에 Q3_K_S, Q4, Q8처럼 여러 양자화 파일이 보일 수 있다. 공식 다운로드 안내는 가능하면 4비트 이상을 선택하라고 권한다. 하지만 가장 큰 파일을 고르는 것이 정답은 아니다. 모델을 로드할 때 가중치와 실행에 필요한 데이터가 RAM 또는 VRAM을 사용하므로, 노트북 메모리에 맞는 파일을 선택해야 한다.
다운로드 버튼을 눌렀다는 사실보다 완료 여부가 중요하다. My Models에서 파일이 보이는지 확인하고, 외장 SSD에 저장했다면 오프라인 환경에서도 같은 경로와 드라이브 이름으로 연결되는지 확인한다. 앱에서 모델 디렉터리는 My Models에서 변경할 수 있다.
2. Chat 탭에서 모델을 한 번 로드한다
Chat 탭에서 모델 로더를 열고 방금 받은 모델을 선택한다. macOS는 Command + L, Windows와 Linux는 Ctrl + L로 로더를 빠르게 열 수 있다. 모델이 목록에 있다는 것과 실행된다는 것은 다르다. 로드는 모델 가중치 등을 컴퓨터 메모리에 올리는 과정이므로, 메모리가 부족하면 이 단계에서 실패하거나 시스템이 심하게 느려질 수 있다.
짧은 질문 하나를 보내 답변이 끝까지 생성되는지 확인한다. 문서 요약이 목적이라면 실제 사용할 형식과 비슷한 PDF나 텍스트 파일도 넣어 질문한다. 모델 채팅만 성공하고 문서 처리를 시험하지 않은 채 폐쇄망으로 들어가면, 필요한 작업 흐름이 준비됐는지 알 수 없다.
3. 네트워크를 끊고 같은 작업을 반복한다
Wi-Fi를 끄거나 테스트용 방화벽 환경에서 LM Studio를 완전히 종료한 뒤 다시 실행한다. 그 상태에서 다음을 차례로 확인한다.
- 받은 모델이 모델 로더에 나타나는가
- 모델이 오류 없이 메모리에 올라가는가
- 새 채팅에서 답변이 생성되는가
- 문서를 넣고 그 내용에 관한 질문에 답하는가
- 로컬 API를 쓸 예정이면 애플리케이션이
localhost로 연결되는가
앱을 켜 둔 상태에서 인터넷만 잠깐 끊는 시험보다 재시작까지 포함한 시험이 낫다. 이미 메모리에 올라간 모델이나 캐시 덕분에 준비 누락이 가려질 수 있기 때문이다.
오프라인 로컬 API 확인 방법
다른 프로그램에서 LM Studio 모델을 쓰려면 Developer 탭에서 Start server를 켠다. CLI를 쓴다면 다음 명령으로 서버를 시작할 수도 있다.
lms server start
공식 예시는 기본 포트를 1234로 가정한다. 먼저 서버가 공개하는 모델 식별자를 확인한다.
curl http://localhost:1234/v1/models
응답의 모델 id를 복사해 채팅 요청에 넣는다. 아래의 YOUR_MODEL_ID를 실제 값으로 바꿔야 한다.
curl http://localhost:1234/v1/chat/completions \
-H 'Content-Type: application/json' \
-d '{
"model": "YOUR_MODEL_ID",
"messages": [
{"role": "user", "content": "인터넷 없이 응답 중인지 한 문장으로 알려줘."}
],
"temperature": 0.2
}'
LM Studio는 /v1/models, /v1/responses, /v1/chat/completions, /v1/embeddings 등 OpenAI 호환 엔드포인트를 제공한다. 기존 OpenAI 클라이언트를 연결할 때는 모델명만 바꾸지 말고 base_url도 http://localhost:1234/v1로 지정해야 한다. api.openai.com이 코드에 남아 있으면 인터넷이 끊긴 순간 실패한다. 환경 변수, 설정 파일, 프록시 주소까지 검색해 클라우드 URL이 남아 있지 않은지 확인해야 한다.
인터넷이 없을 때 자주 막히는 지점
Discover 검색 결과가 비어 있다
정상적인 제한일 수 있다. 모델 검색은 네트워크 연결이 필요하다. 오프라인 현장에서 새 모델을 찾으려 하지 말고, 온라인 상태에서 파일을 받거나 미리 확보한 지원 모델을 사이드로드해야 한다.
모델 파일은 있는데 로드되지 않는다
다운로드가 완전히 끝났는지, 모델 디렉터리가 바뀌지 않았는지, 외장 드라이브가 연결됐는지부터 본다. 그다음 해당 형식을 실행할 LM Runtime을 온라인일 때 설치했는지 확인한다. 런타임 검색과 다운로드 역시 인터넷이 필요한 작업이다.
채팅은 되는데 내 프로그램만 실패한다
프로그램의 Base URL이 여전히 클라우드를 가리키는 경우가 많다. http://localhost:1234/v1로 바꾸고 /v1/models가 응답하는지 먼저 확인한다. 그 뒤 응답에 나온 정확한 모델 ID를 요청 본문에 사용한다.
오프라인인데 다른 PC에서도 접속된다
인터넷 연결이 없다는 것과 네트워크 연결이 없다는 것은 다르다. LM Studio 서버는 설정에 따라 로컬 네트워크에서도 제공할 수 있다. 한 컴퓨터 안에서만 써야 한다면 서버의 네트워크 공개 범위를 확인하고 localhost로만 시험한다.
폐쇄망 반입 전 최종 확인
오프라인 사용의 기준은 앱이 실행되는지가 아니라 필요한 작업 전체가 연결 없이 끝나는지다. 사용할 모델 파일, LM Runtime, 문서 샘플, 로컬 API 설정을 준비한 뒤 네트워크를 끊고 앱 재시작부터 최종 응답까지 반복한다. 특히 API 사용자는 GET /v1/models의 모델 ID와 base_url=http://localhost:1234/v1을 기록해 두면 현장에서 모델명과 주소를 추측할 필요가 없다.
참고한 공식 문서: