~/ / AI 기사 / VPS에서 로컬 LLM / VPS에서 직접 AI 돌리기: 메모리는 얼마나 잡아야 하고, 무엇을 공개하면 안 되는가
VPS에서 직접 AI 돌리기: 메모리는 얼마나 잡아야 하고, 무엇을 공개하면 안 되는가
빌린 VPS에서 언어 모델이나 AI 앱 빌더를 돌리는 것은 매력적입니다. 월 요금이 고정이고, 데이터도 직접 관리하는 서버에 남습니다. 하지만 어떤 플랜을 고르느냐에 따라 아예 돌아가지 않을 수도 있고, 기본 설치 상태 그대로 두면 서비스가 인터넷에서 접근 가능해질 수도 있습니다. 이 글은 메모리, CPU만으로 동작하는 경우, 네트워크 노출에 대해 Ollama와 Dify 공식 문서가 말하는 내용을 모아, 비용을 내기 전에 플랜을 고를 수 있도록 돕습니다.
게시: · 읽는 데 약 5분 · 2026-10-26에 공식 문서를 기준으로 확인했습니다. 버전과 기본값은 바뀔 수 있으니, 설치하기 전에 최신 문서에서 다시 확인하세요.
메모리에 들어가야 하는 것
모델의 다운로드 크기는 필요한 메모리의 최솟값일 뿐, 계획에 잡아야 할 양이 아닙니다. Ollama 라이브러리에는 태그별 다운로드 크기가 적혀 있습니다. 예를 들어 Llama 3.2는 1b 태그가 1.3 GB, 3b 태그가 2.0 GB이며, 둘 다 컨텍스트 윈도우는 128K입니다.
모델 위에 더해서, 메모리는 컨텍스트에 따라 늘어납니다. Ollama FAQ에 따르면 필요한 RAM은 OLLAMA_NUM_PARALLEL에 OLLAMA_CONTEXT_LENGTH를 곱한 값에 비례하며, 예시로 2K 컨텍스트에서 동시 요청 4개이면 8K 컨텍스트가 되어 추가 메모리가 필요하다고 설명합니다. 또한 FAQ는 키-값 캐시를 q8_0으로 양자화하면 f16의 약 절반, q4_0이면 약 4분의 1의 메모리를 쓴다고 밝힙니다.
| 모델 태그 | 다운로드 크기 | 컨텍스트 윈도우 |
|---|---|---|
| llama3.2:1b | 1.3 GB | 128K |
| llama3.2:3b | 2.0 GB | 128K |
- Ollama FAQ는 기본 컨텍스트 윈도우를 4096 토큰으로 제시하고, 컨텍스트 길이 문서는 기본값이 GPU의 VRAM에 따라 달라진다고 설명합니다(24 GiB 미만이면 4k). 실제로 설치한 환경이 쓰는 값을 확인하세요.
- 저희가 확인한 Ollama README에는 모델 크기별 필요 RAM이 적혀 있지 않습니다. 추측하지 말고 직접 측정하세요. 쓰려는 컨텍스트 길이로 모델을 불러오고, 프롬프트를 보낸 뒤, 서버의 메모리 사용량을 지켜보면 됩니다.
- 운영체제와 같은 서버에서 도는 다른 모든 서비스가 쓸 여유도 남겨 두세요.
다운로드 크기는 위 날짜에 Ollama 라이브러리 페이지에서 읽은 값입니다. 파일 크기이며, 실제로 측정한 메모리 사용량이 아닙니다.
GPU가 없다면: CPU만으로 돌린다는 것
대부분의 VPS 플랜에는 GPU가 없으므로 모델은 CPU와 시스템 메모리 위에서 동작합니다. Ollama FAQ가 이 경우를 설명합니다. 모델이 전부 시스템 메모리에 로드되면 ollama ps의 PROCESSOR 열에 100% CPU라고 표시되며, CPU 추론에서 OLLAMA_MAX_LOADED_MODELS의 기본값은 3입니다.
문서에는 CPU만으로 동작할 때의 속도 수치가 없으며, 저희도 측정하지 않았습니다. 작업을 해낼 수 있는 가장 작은 모델부터 시작하고, 더 긴 계약을 맺기 전에 며칠간 시험해 보세요.
VPS에서 Dify 돌리기
Dify는 Docker Compose로 직접 호스팅할 수 있습니다. 문서에는 최소 시스템 요구 사항이 나와 있는데, 이것은 권장 사양이 아니라 최소 사양입니다.
- CPU: 2코어 이상
- RAM: 4 GiB 이상
- Linux: Docker 19.03 이상, Docker Compose 2.24.0 이상
| 단계 | 할 일 |
|---|---|
| 1 | Dify 저장소를 클론하고 dify/docker 디렉터리로 이동합니다 |
| 2 | .env.example을 .env로 복사합니다 |
| 3 | openssl rand -base64 32로 토큰을 만들어 .env의 DIFY_AGENT_LOCAL_SANDBOX_AUTH_TOKEN에 설정합니다 |
| 4 | docker compose up -d를 실행합니다 |
| 5 | docker compose ps를 확인합니다. 컨테이너가 Up 또는 healthy로 표시되어야 합니다 |
| 6 | 서버의 /install을 열어 관리자 계정을 만들고 로그인합니다 |
저희가 확인한 Dify 페이지에는 Ollama나 로컬 모델에 대한 언급이 없습니다. 한 서버에서 Dify와 로컬 모델을 함께 돌린다면 둘의 메모리를 모두 계획에 넣으세요(두 문서를 읽고 내린 저희의 해석이며, 어느 쪽 문서에도 나오는 수치가 아닙니다).
인터넷에 공개하면 안 되는 것
Ollama FAQ에 따르면 Ollama는 기본적으로 127.0.0.1의 11434번 포트에 바인드되며, 바인드 주소는 OLLAMA_HOST 환경 변수로 바꿉니다. 저희가 확인한 FAQ 페이지에는 Ollama 서버의 인증에 대한 설명이 없습니다. 아래는 문서의 내용이 아니라 저희의 권장 사항입니다.
- Ollama는 기본 주소 그대로 두세요. 다른 머신에서 접근해야 한다면 바인드 주소를 바꾸지 말고 SSH 터널을 통해 접근하세요.
- 네트워크 주소에 바인드했다면, 방화벽에서 이 포트를 사용하는 주소로만 제한하고 모두에게 열어 두지 마세요.
- Dify는 서버 주소로 제공되며, 관리자 계정은 /install에서 만듭니다. 컨테이너가 시작된 직후에 바로 만들고, 주소를 공유하기 전에 HTTPS와 방화벽 규칙을 앞단에 두세요.
- 모델 제공업체의 API 키는 .env 파일이나 시크릿 저장소에 보관하고, 커밋하는 파일에는 넣지 마세요.
직접 호스팅할까, API를 쓸까?
VPS는 쓰든 안 쓰든 매달 같은 요금이 들지만, API는 주고받는 토큰만큼 과금됩니다. 사용량이 적다면 서버를 계속 켜 두는 것보다 API가 더 쌀 수 있습니다. 사용량이 많고 작은 모델로 충분하다면 서버가 유리할 수 있습니다. 직접 사용량을 넣어서 비교해 보세요.
직접 해 보기: LLM API Cost Calculator
추정 비용
가격과 토큰 수를 입력하면 비용이 표시됩니다.
공식 가격 페이지
입력한 숫자를 곱할 뿐입니다. 벤더의 가격, 할인, 캐싱, 배치 요금, 구간별 요금, 세금은 알지 못합니다.
프롬프트의 입력 토큰 수를 알아보려면 Token Counter를 사용하세요.
출처
다음에 읽기
- 내 코드에서 로컬 모델 호출하기: Ollama의 구조화된 출력과 OpenAI 호환 APIJSON Schema로 로컬 모델의 출력을 제한하고 OpenAI 방식 클라이언트에서 Ollama를 호출하기: 공식 문서의 내용과 지원되지 않는 항목.
- 로컬 모델은 무엇을 할 수 있을까? Ollama의 tools, thinking, vision, embedding과 VPS에서 돌릴 수 있는 범위tools, thinking, vision, embedding: Ollama 라이브러리의 라벨이 뜻하는 것, 해당 라벨을 가진 모델, 다운로드 크기.
- VPS에 Ollama를 설치하고 계속 실행하기: 설치, systemd 서비스, 설정, 업데이트Linux VPS에 Ollama를 설치하고 계속 실행하기: 설치 명령, systemd 서비스, 환경 변수, 모델 저장 위치, 업데이트를 공식 문서 기준으로 정리했습니다.
- VPS에서 로컬 LLM을 돌리려면 메모리가 얼마나 필요할까? 모델 파일과 KV 캐시모델 파일과 KV 캐시: VPS에서 로컬 LLM에 필요한 메모리에 대해 Ollama 라이브러리, Ollama FAQ, 공식 모델 설정이 말하는 내용.