AI 모델을 만들어 놓고 “어디에 올려야 하지?” 고민한 적 있다면, Hugging Face Spaces가 답이 될 수 있다. 계정 하나로 무료 서버를 받고, 몇 개 파일만 올리면 인터넷 어디서든 접근 가능한 데모 앱이 완성된다. 유료 결제 없이도 충분히 쓸 수 있는 무료 티어가 있고, 필요할 때만 GPU(그래픽 처리 장치, AI 연산을 빠르게 처리하는 하드웨어)를 빌리는 방식이라 작은 프로젝트에 딱 맞다.
이 글은 2026년 6월 기준 Hugging Face 공식 문서를 바탕으로 작성했다.
Hugging Face Spaces란
Hugging Face(허깅 페이스)는 AI 모델, 데이터셋, 코드를 무료로 공유하는 플랫폼이다. GitHub이 코드 저장소라면, Hugging Face는 AI 특화 저장소라고 보면 된다. 그 안의 ‘Spaces’는 AI 모델을 직접 실행해볼 수 있는 앱 호스팅 공간이다.
Spaces에서는 Gradio(그라디오)나 Docker 기반으로 앱을 올릴 수 있다. Gradio는 파이썬(Python) 몇 줄만으로 입력창, 출력창, 버튼이 있는 웹 UI를 만들어 주는 라이브러리(코드 도구 모음)다. 별도 웹 개발 지식 없이도 AI 모델에 UI를 붙일 수 있어서 연구자와 개발자 모두 즐겨 쓴다. Streamlit SDK는 2026년 현재 공식적으로 deprecated(지원 중단) 상태라 Docker 방식으로 전환해야 한다.
Spaces의 핵심 장점은 무료 서버다. 기본 CPU 환경은 돈이 들지 않고, 데모용으로는 충분한 성능이다. 무거운 모델이 필요할 때는 ZeroGPU라는 공유 GPU 풀을 이용하거나, 시간당 과금으로 전용 GPU를 붙일 수 있다.
무료 vs 유료 하드웨어 티어 비교
Spaces에서 쓸 수 있는 하드웨어는 크게 세 종류로 나뉜다. CPU Basic은 완전 무료, ZeroGPU는 할당량 범위 안에서 무료, 전용 GPU는 시간당 과금이다.
CPU Basic은 텍스트 처리, 간단한 분류 모델, 소형 API 데모에 충분하다. 이미지 생성이나 LLM(대형 언어 모델) 추론처럼 연산이 무거운 작업은 ZeroGPU나 전용 GPU가 필요하다. ZeroGPU는 요청이 들어올 때만 GPU를 잠깐 할당받는 구조라 유휴 시간에는 비용이 없다. 다만 무료 계정은 하루 3.5분밖에 못 쓰므로, 자주 쓰는 데모라면 PRO 플랜(월 $9) 또는 전용 GPU 검토가 필요하다.
Gradio 앱 파일 구조와 배포 절차
Spaces에 Gradio 앱을 올리려면 최소 두 개 파일이 필요하다. app.py(앱 실행 코드)와 requirements.txt(필요한 파이썬 패키지 목록)다. README.md는 Space 설정 정보를 담는 파일로, Hugging Face가 자동으로 생성해 준다.
아래는 가장 단순한 Gradio 앱 예시다. app.py에 이 코드만 넣어도 Space가 실행된다.
import gradio as gr
def greet(name):
return f"안녕하세요, {name}님!"
demo = gr.Interface(
fn=greet,
inputs=gr.Textbox(label="이름"),
outputs=gr.Textbox(label="인사"),
)
demo.launch()
requirements.txt에는 gradio 한 줄만 적으면 된다. 모델을 쓸 때는 transformers, torch 등을 함께 추가한다.
알아두면 좋은 제한 사항과 주의점
무료 Space는 일정 시간 사용이 없으면 자동으로 잠자기(sleep) 상태로 들어간다. 이 상태에서 처음 요청이 오면 앱이 다시 깨어나는 데 수십 초가 걸릴 수 있다. 항상 깨어 있는 상태를 유지하려면 유료 하드웨어로 전환해야 한다.
영구 저장소(Persistent Storage)는 기본 포함이 아니다. 앱이 재시작되면 임시 파일은 사라지므로, 업로드된 파일이나 모델 캐시를 유지하고 싶으면 Storage를 추가로 붙여야 한다. 용량에 따라 월 $5~$100 정도다.
공개 Space는 누구나 코드를 볼 수 있다. API 키나 비밀번호가 코드에 직접 들어가면 안 된다. Spaces의 “Secrets” 기능을 이용하면 환경 변수(프로그램이 실행 중에 읽어오는 설정값)로 안전하게 주입할 수 있다.
무거운 모델 파일(PyTorch 가중치 등)은 Git LFS(대용량 파일 저장 시스템)를 이용하거나, 실행 시 Hugging Face Hub에서 직접 내려받도록 코드를 짜는 것이 낫다. 파일 자체를 저장소에 올리면 빌드가 느려진다.
자주 묻는 질문 FAQ
Q1) 무료 계정으로 만든 Space는 언제 꺼지나요?
일정 시간 동안 방문자가 없으면 자동으로 sleep 상태가 된다. 정확한 유휴 시간 기준은 Hugging Face가 내부적으로 관리하며 공개하지 않지만, 수 분~수십 분 무요청 시 수면에 들어가는 것으로 알려져 있다. 항상 켜두려면 유료 하드웨어 또는 PRO 플랜에서 제공하는 “always-on” 옵션을 써야 한다.
Q2) Gradio 말고 다른 프레임워크도 쓸 수 있나요?
Docker SDK를 선택하면 거의 모든 웹 프레임워크(FastAPI, Flask, Next.js 등)를 올릴 수 있다. Streamlit도 Docker 방식으로는 가능하다. 단, Docker 방식은 Dockerfile 작성이 필요해서 입문자에게는 Gradio SDK가 훨씬 쉽다.
Q3) ZeroGPU는 무료인데 왜 PRO 플랜이 필요한가요?
ZeroGPU는 동적으로 GPU를 잠깐 빌려주는 방식이라 무료 계정도 하루 3.5분까지 쓸 수 있다. 그런데 AI 이미지 생성이나 LLM 추론 한 번에 몇 초~수십 초가 걸리다 보니 하루 3.5분은 금방 소진된다. PRO 플랜(월 $9)이면 하루 25분으로 늘어나고, 추가 과금($1/10분)으로 더 연장할 수도 있다. 개인 데모 수준이면 무료로도 충분하고, 많은 사람이 쓰는 공개 데모라면 PRO가 현실적이다.