Claude 직접 호스팅이 불가능한 이유와 대안 정리
Claude는 모델 가중치가 공개되지 않아 직접 호스팅이 불가능합니다. 본 글에서는 로컬에서 실행 가능한 오픈 소스 모델, API 비용 관리를 위한 게이트웨이 구축 방법, 그리고 VPS 환경에서 Claude Code를 상시 구동하는 실무적인 대안을 상세히 안내합니다.
Claude를 직접 호스팅할 수 있습니까? 불가능한 이유
Claude는 직접 호스팅할 수 없습니다. Anthropic은 모델 가중치를 공개하지 않으므로, 다운로드할 파일도, 실행할 컨테이너도 없으며, 사용자의 하드웨어에서 직접 서비스를 운영할 수 있는 라이선스도 존재하지 않습니다. 모든 Claude 요청은 Anthropic의 API나 Amazon Bedrock, Google Vertex AI, Microsoft Foundry와 같은 호스팅 파트너를 통해 처리됩니다. 이를 개인 소유의 장비에서 실행하는 것은 설정의 문제가 아닙니다. 해당 아티팩트는 Anthropic 외부에는 존재하지 않습니다.
이것이 짧은 답변입니다. 더 긴 답변을 드리자면, 이 질문을 하는 대부분의 사람은 사실 모델 가중치 자체를 원하는 것이 아닙니다. 이들은 직접 제어하는 서버에서 다음 세 가지 중 하나를 구현하고자 합니다. 로컬에서 실행되는 성능 좋은 모델, API 키를 관리하고 비용을 제한하는 게이트웨이, 또는 노트북이 아닌 서버에서 상주하는 코딩 에이전트가 그것입니다. 이 가이드에서는 명령어와 함께 이 세 가지를 모두 다룹니다.
"셀프 호스팅 Claude"가 의미하는 것
"self hosted Claude"에 대한 검색 트래픽은 몇 가지 서로 다른 요구 사항으로 나뉘며, 각 요구 사항에 따라 필요한 답변도 달라집니다.
일부 사용자는 개인정보 보호를 원합니다. 프롬프트가 네트워크 외부로 나가는 것을 원치 않는 경우입니다. Claude에 대한 모든 요청은 정의상 Anthropic으로 향하는 요청이므로, 이 문제는 로컬 오픈 웨이트 모델을 통해서만 해결할 수 있습니다.
일부 사용자는 비용 관리를 원합니다. 에이전트가 통제 불능 상태가 되어 크레딧을 모두 소진할까 봐 걱정하는 경우입니다. 이 경우 게이트웨이를 사용하면 Claude의 모델 품질을 유지하면서 비용을 제어할 수 있습니다.
일부 사용자는 노트북으로부터의 독립을 원합니다. 노트북 덮개를 닫아도 계속 작동하는 에이전트를 원하는 경우입니다. VPS를 사용하면 이 문제를 해결할 수 있으며, Claude Code도 VPS에서 원활하게 실행됩니다.
일부 사용자는 "self hosted OpenRouter"라는 표현을 찾습니다. 이 역시 게이트웨이의 일종이며, 일반적으로 LiteLLM을 사용하는 것이 해결책입니다.
본인이 어떤 경우에 해당하는지 파악하십시오. 각 상황에 따라 구축해야 할 올바른 구성이 다르기 때문입니다.
Ollama로 오픈 모델 직접 호스팅하기
프롬프트가 서버 외부로 유출되지 않아야 한다면 오픈 웨이트 모델을 직접 실행하십시오. 현재 임대 서버에서 실제로 사용할 만한 모델 제품군은 Llama, Qwen, Mistral, Gemma, DeepSeek입니다. 이들 모두 가중치를 공개하고 있어 다운로드하여 실행할 수 있습니다.
Ollama는 가장 빠르게 시작할 수 있는 방법입니다. 설치 스크립트는 한 줄로 구성되며, Ubuntu에서 systemd 서비스를 자동으로 설정합니다.
curl -fsSL https://ollama.com/install.sh | sh
systemctl status ollamasystemctl status ollama 명령을 실행하면 active (running)가 출력되어야 합니다. 그 후 모델을 내려받아 대화를 시작하십시오.
ollama pull qwen3:8b
ollama run qwen3:8b "Summarise what a reverse proxy does in two sentences."첫 번째 pull 명령은 수 기가바이트를 다운로드하므로, 모델이 응답하려면 먼저 RAM이나 GPU 메모리에 모델이 올라가야 합니다. 양자화된 모델의 대략적인 기준은 다음과 같습니다. 80억(8B) 파라미터 모델은 약 6 GB의 여유 공간이 필요하고, 140억(14B) 파라미터 모델은 약 10 GB가 필요하며, 700억(70B) 파라미터 모델은 일반적인 VPS 플랜이 제공하는 것보다 더 많은 메모리를 요구합니다. 서버의 메모리가 부족하면 커널에 의해 프로세스가 강제 종료되며 Error: llama runner process has terminated 오류가 발생하고, dmesg 로그에 메모리 부족(out of memory) 관련 메시지가 기록됩니다. 모델 탓을 하기 전에 free -h을 먼저 확인하십시오. 동일한 메모리 예산은 모델이 긴 프롬프트를 얼마나 읽을 수 있는지도 결정합니다. Ollama는 기본적으로 적당한 크기를 넘어서는 입력을 자동으로 잘라내기 때문에, 긴 문서가 절반만 요약되어 돌아온다면 num_ctx를 높이고 KV 캐시 크기를 조정하는 것을 가장 먼저 확인해야 합니다.
Ollama는 127.0.0.1:11434 포트에서 HTTP API를 제공하며, 이를 통해 단순한 채팅 도구를 넘어 다른 소프트웨어와 연동할 수 있습니다.
curl http://127.0.0.1:11434/api/generate -d '{"model":"qwen3:8b","prompt":"ping","stream":false}'사용하지 않다가 첫 요청을 보낼 때 30초가 걸리고 다음 요청부터 즉시 응답한다면, 이는 고장이 아닙니다. Ollama는 5분 동안 유휴 상태가 지속되면 모델을 메모리에서 해제하기 때문이며, keep_alive를 설정하여 모델을 상주시키면 이러한 재로드 지연을 없앨 수 있습니다.
해당 포트는 반드시 localhost에 바인딩된 상태로 두십시오. 공인 IP에 Ollama 포트를 개방하면 누구나 당신의 GPU를 무료로 사용할 수 있게 됩니다. systemd 유닛 설정, GPU 감지, 리버스 프록시 구성 등을 포함한 전체 구축 과정은 VPS에서 Ollama 실행하기 가이드에서 다룹니다. 한 번에 여러 사용자를 서비스해야 한다면, Ollama의 단일 스트림 설계가 하드웨어 성능보다 먼저 병목 현상을 일으키므로 Ollama와 vLLM 비교를 먼저 읽어보시기 바랍니다.
성능 격차를 인정하십시오. 중급 VPS에서 구동하는 우수한 오픈 모델은 요약, 분류, 초안 작성, 단순 추출 작업에는 충분히 유용합니다. 하지만 복잡한 다단계 추론, 대규모 코드베이스 분석, 에이전트 도구 활용 등에서는 최상위 호스팅 모델의 성능에 미치지 못하며, 프롬프트 튜닝만으로는 이 격차를 좁힐 수 없습니다. 로컬 모델은 잘하는 작업에 활용하고, 난도가 높은 작업은 호스팅 모델을 유료로 사용하는 것이 합리적입니다.
LiteLLM으로 직접 게이트웨이 운영하기
이것이 바로 사람들이 찾는 "자체 호스팅형 OpenRouter"입니다. 게이트웨이는 애플리케이션과 모든 모델 제공자 사이에 위치합니다. 애플리케이션은 서버를 가리키는 하나의 키만 보유하며, 실제 제공자의 키는 해당 서버에만 저장됩니다. 키별 지출 한도를 설정하고, 애플리케이션마다 다른 모델로 라우팅하며, 모든 요청을 한곳에서 기록할 수 있습니다.
LiteLLM은 OpenAI 호환 API를 지원하며 Anthropic, Ollama 및 대부분의 다른 제공자로 프록시를 연결하여 동일한 엔드포인트에서 처리할 수 있기 때문에 널리 사용됩니다. 설정 파일을 사용하여 Docker에서 실행하십시오.
model_list:
- model_name: claude
litellm_params:
model: anthropic/claude-sonnet-5
api_key: os.environ/ANTHROPIC_API_KEY
- model_name: local
litellm_params:
model: ollama/qwen3:8b
api_base: http://127.0.0.1:11434위 내용을 litellm_config.yaml로 저장하고 프록시를 시작하십시오. 프록시는 4000번 포트에서 대기합니다.
docker run -v $(pwd)/litellm_config.yaml:/app/config.yaml \
-e ANTHROPIC_API_KEY=$ANTHROPIC_API_KEY \
-e LITELLM_MASTER_KEY=sk-1234 \
-p 4000:4000 docker.litellm.ai/berriai/litellm:latest \
--config /app/config.yamlLITELLM_MASTER_KEY은 관리자 자격 증명이므로 root 비밀번호처럼 취급해야 하며, 예시 값을 그대로 배포하지 마십시오. 호스팅된 API를 호출하는 것과 동일한 방식으로 프록시를 호출하십시오.
curl http://localhost:4000/v1/chat/completions \
-H 'Authorization: Bearer sk-1234' \
-H 'Content-Type: application/json' \
-d '{"model": "claude","messages": [{"role": "user","content": "Say hello in five words."}]}'정상적인 응답은 choices 배열을 포함한 일반적인 JSON 형식입니다. 401이 반환된다면 Authorization 헤더가 마스터 키와 일치하지 않는 것입니다. 모델 이름을 명시한 400이 반환된다면 요청에 사용된 model이 설정 파일의 어떤 model_name와도 일치하지 않는 것입니다.
Anthropic을 직접 호출하지 않고 이 방식을 구축하는 이유는 지출 한도 설정 때문입니다. 애플리케이션마다 별도의 가상 키를 발급하고 각각 예산을 할당하십시오.
curl 'http://0.0.0.0:4000/key/generate' \
--header 'Authorization: Bearer sk-1234' \
--header 'Content-Type: application/json' \
--data-raw '{"models": ["claude"], "max_budget": 100}'해당 키는 100달러까지만 지출할 수 있으며 특정 모델 하나에만 접근할 수 있습니다. 새벽 3시에 에이전트가 오작동하더라도 피해 범위는 전체 계정이 아닌 해당 키 하나로 제한됩니다. 이러한 패턴과 그에 따른 모니터링 방법은 VPS에서 에이전트 비용 제어하기에서 다룹니다. 토큰당 비용을 지불할지 여부를 고민 중이라면 API와 구독 비용 비교를 통해 계산해 보십시오.
게이트웨이가 수행하지 않는 기능을 유의하십시오. 이 방식은 Claude를 로컬에서 실행하게 해주지 않으며, Anthropic으로부터 프롬프트를 숨겨주지도 않습니다. 요청은 여전히 서버를 떠나 제공자로 전달됩니다. 이 방식을 통해 얻는 이점은 키, 지출, 라우팅 및 로그에 대한 제어권입니다.
자신의 VPS에서 Claude Code 실행하기
세 번째 소원은 가장 쉽게 들어줄 수 있습니다. Claude Code는 클라이언트 프로그램입니다. Node.js를 설치할 수 있는 곳이라면 어디서든 실행되며, HTTPS를 통해 API와 통신합니다. 소유한 서버에 설치하면 노트북을 종료한 뒤에도 에이전트가 계속 작업을 수행하며, 에이전트의 영향 범위를 메인 컴퓨터가 아닌 언제든 재구축 가능한 격리된 환경으로 제한할 수 있습니다.
npm install -g @anthropic-ai/claude-code
claude --versionSSH 연결이 끊겨도 긴 작업이 중단되지 않도록 tmux 내부에서 실행하십시오. 세션 관리를 포함한 해당 설정 방법은 tmux를 사용하여 VPS에서 Claude Code 실행하기에서 다룹니다. 에이전트에게 별도의 권한이 없는 사용자 계정을 할당하고, 중요한 데이터에 대한 쓰기 권한을 부여하기 전에 서버에서 Claude Code를 실행하기 위한 안전 수칙을 반드시 읽어보십시오.
이는 모델 자체가 아닌 에이전트를 자체 호스팅하는 것입니다. 사람들이 흔히 혼동하는 부분이므로 명확히 이해할 필요가 있습니다. 사용자는 프로세스, 파일 시스템, 네트워크 송신, 로그를 직접 제어합니다. 추론(inference)은 여전히 Anthropic이 담당합니다.
각 옵션의 실제 비용
가격은 변동되므로 이를 확정 견적이 아닌 대략적인 지표로 보아야 합니다. 2026년 7월 기준으로 Claude Sonnet 5는 입력 토큰 100만 개당 $3, 출력 토큰 100만 개당 $15이며, Claude Opus 5는 각각 $5와 $25입니다. 로컬 모델은 토큰당 비용이 발생하지 않는 대신, 사용 여부와 관계없이 서버 운영에 따른 월간 비용이 발생합니다.
손익분기점은 생각보다 낮습니다. 유용한 오픈 모델을 구동할 만큼 메모리가 충분한 VPS는 매달 실제 비용이 발생하며, 대부분의 시간 동안 유휴 상태로 머뭅니다. 사용량이 불규칙한 경우 호스팅된 API가 일반적으로 더 저렴합니다. 반면 사용량이 일정하거나 데이터를 네트워크 외부로 반출할 수 없는 환경이라면 로컬 모델이 두 가지 측면 모두에서 유리합니다.
대부분의 팀이 선택하는 현실적인 절충안은 혼합 방식입니다. 대량의 단순 작업은 로컬에서 오픈 모델로 처리하고, 난도가 높은 요청은 호스팅된 최상위 모델로 전달합니다. 두 모델 앞에 게이트웨이를 배치하면 애플리케이션은 어떤 모델이 처리하는지 알 필요가 없으며, 애플리케이션 코드를 수정하지 않고도 모델 간의 경계를 조정할 수 있습니다. 이러한 아키텍처가 "자체 호스팅 Claude"의 실용적인 구현 형태이며, 문자 그대로의 의미와 달리 실제로 존재 가능한 방식입니다. 에이전트 스택 전체를 직접 운영하고 싶다면 자체 호스팅 AI 에이전트 모음에서 이용 가능한 도구들을 확인할 수 있습니다.
FAQ
Claude 모델 가중치를 다운로드하여 로컬에서 실행할 수 있습니까?
아니요. Anthropic은 Claude 모델의 가중치를 공개한 적이 없으며, 자체 호스팅을 허용하는 라이선스도 존재하지 않습니다. 온라인에서 다운로드 가능한 "Claude 모델"로 광고되는 모든 것은 오해의 소지가 있는 이름을 가진 다른 모델이거나 API를 호출하는 래퍼(wrapper)입니다. API 키가 필요하다면 로컬 모델이 아닙니다.
Claude와 가장 유사한 오픈 모델은 무엇입니까?
정확히 일치하는 모델은 없으며, 선두 모델은 몇 달마다 바뀝니다. 테스트해 볼 만한 오픈 가중치 모델군으로는 Llama, Qwen, Mistral, Gemma, DeepSeek가 있습니다. 요약, 분류, 간단한 코드 수정 작업에서는 80억에서 140억 파라미터 규모의 우수한 오픈 모델도 충분히 유용합니다. 긴 다단계 추론이나 에이전트 기반의 도구 사용 측면에서는 호스팅되는 최첨단 모델과의 격차가 여전히 큽니다. 리더보드를 맹신하기보다 직접 프롬프트를 입력하여 테스트하십시오.
LiteLLM은 자체 호스팅하는 OpenRouter입니까?
라우팅 및 키 관리 측면에서는 기능적으로 그렇습니다. LiteLLM은 사용자의 서버에서 실행되며, OpenAI와 호환되는 단일 엔드포인트를 제공하고 Anthropic, Ollama 및 기타 대부분의 제공업체로 요청을 프록시합니다. 키별 지출 한도 설정, 모델 라우팅, 로그를 한곳에서 확인할 수 있는 기능을 제공합니다. 다만 로컬 추론 기능은 제공하지 않으므로, Claude로 보내는 요청은 여전히 Anthropic으로 전송됩니다.
Claude Code를 자체 서버에서 실행하면 코드가 비공개로 유지됩니까?
아니요. Claude Code는 프로세스가 어디에서 실행되든 상관없이 읽어 들인 파일 내용을 Anthropic API로 전송합니다. VPS를 사용하면 에이전트를 격리할 수는 있지만 콘텐츠의 프라이버시가 보장되지는 않습니다. 전용 권한이 없는 사용자를 할당하고, 자격 증명이나 관련 없는 저장소에는 접근하지 못하게 하며, 에이전트가 읽을 수 있는 모든 데이터는 서버 외부로 유출될 수 있는 콘텐츠로 간주하십시오.