1. 개요
Hugging Face 는 자연어 처리(NLP)를 중심으로 시작하여 현재는 **멀티모달 AI(텍스트, 이미지, 음성, 비디오)**까지 지원하는 AI 모델 플랫폼 및 생태계이다.
개발자, 연구자, 기업이 모델을 공유·배포·실행·학습할 수 있도록 통합 환경을 제공한다.
2. 핵심 기능
2.1 모델 허브 (Model Hub)
- 수십만 개 이상의 사전학습 모델 제공
- 대표 모델:
- BERT
- GPT
- LLaMA
- Stable Diffusion
- 기능:
- 모델 다운로드
- 바로 API로 사용
- 모델 구조 및 성능 확인
2.2 Transformers 라이브러리
- Hugging Face의 핵심 라이브러리
- 주요 기능:
- 사전학습 모델 로드
- fine-tuning 지원
- inference 실행
지원 작업:
- 텍스트 분류
- 개체명 인식(NER)
- 질의응답(QA)
- 번역
- 요약
2.3 Datasets 라이브러리
- 대규모 데이터셋 관리 및 로딩
- 예:
- GLUE
- SQuAD
- 특징:
- streaming 지원
- 전처리 자동화
2.4 Spaces
- Gradio / Streamlit 기반
- 웹 UI로 모델 데모 제작 가능
- 모델을 서비스 형태로 공유
2.5 Inference API
- 서버 없이 API 호출로 모델 사용 가능
- REST 방식 지원
3. Hugging Face로 할 수 있는 것
3.1 모델 사용 (Inference)
- 사전학습 모델 바로 사용 가능
- 예:
- 감정 분석
- 요약
- 번역
3.2 모델 학습 (Fine-tuning)
- 기존 모델을 내 데이터로 재학습
- 의료, 법률 등 도메인 특화 가능
3.3 모델 배포
- Spaces 또는 API로 서비스화
3.4 멀티모달 처리
- 이미지 생성 (Stable Diffusion)
- 음성 인식 (Whisper 계열)
- 비디오 모델도 일부 지원
4. 사용 방법 (기본 흐름)
4.1 설치
pip install transformers datasets
4.2 모델 불러오기 (기본 예시)
from transformers import pipeline
classifier \= pipeline("sentiment-analysis")
result \= classifier("I love this model")
print(result)4.3 특정 모델 가져오기
from transformers import AutoTokenizer, AutoModelForSequenceClassification
model\_name \= "bert-base-uncased"
tokenizer \= AutoTokenizer.from\_pretrained(model\_name)
model \= AutoModelForSequenceClassification.from\_pretrained(model\_name)5. 모델 가져오는 방법 (핵심)
방법 1: pipeline 사용 (가장 간단)
pipeline("task")
예:
pipeline("ner")
pipeline("text-generation")
방법 2: 모델 이름 직접 지정
pipeline("text-generation", model="gpt2")
방법 3: 상세 제어 (Tokenizer + Model)
AutoTokenizer.from_pretrained("model_name")
AutoModel.from_pretrained("model_name")
→ 학습, 커스터마이징에 적합
방법 4: Hugging Face Hub에서 다운로드
- 웹에서 모델 선택
- model id 사용
예:
facebook/bart-large-cnn
6. API 방식 사용
from openai import OpenAI
client \= OpenAI(
base\_url\="[https://router.huggingface.co/v1](https://router.huggingface.co/v1)",
api\_key\="YOUR\_TOKEN"
)
response \= client.chat.completions.create(
model\="meta-llama/Llama-3",
messages\=\[{"role": "user", "content": "Hello"}\]
)7. 전체 구조 요약
Hugging Face는 다음 4가지 계층으로 이해 가능하다:
- Model Hub → 모델 저장소
- Libraries → Transformers, Datasets
- Inference → API / pipeline
- Deployment → Spaces
8. 장점
- 사전학습 모델 재사용 가능
- 개발 속도 매우 빠름
- 다양한 최신 모델 지원
- 커뮤니티 기반 생태계
9. 한계
- 대형 모델은 GPU 필요
- API 사용 시 비용 발생
- 모델 선택이 많아 최적 선택 어려움
10. 결론
Hugging Face는 단순한 라이브러리가 아니라
“AI 모델의 GitHub + 실행 플랫폼” 역할을 한다.
즉,
- 모델을 가져오고
- 데이터로 학습시키고
- 바로 서비스까지 연결하는
End-to-End AI 개발 환경이다.
11. Visual Studio Code에서 Hugging Face 사용 방법
1. 개요
Hugging Face는 다양한 자연어 처리 및 머신러닝 모델을 제공하는 플랫폼으로,
주로 다음 방식으로 활용된다.
- 사전학습 모델 다운로드
- 모델 추론(Inference)
- 파인튜닝(Fine-tuning)
Visual Studio Code(VSCode)는 개발 환경이며, Hugging Face는 Python 라이브러리를 통해 연동된다.
2. 사전 준비
2.1 필수 환경
다음 환경이 필요하다.
- Python (권장: 3.8 이상)
- VSCode 설치
- pip 패키지 관리자
2.2 Python 확장 설치
VSCode에서 다음 확장을 설치한다.
- Python Extension (Microsoft 제공)
3. 가상환경 생성 (권장)
프로젝트 별 의존성 관리를 위해 가상환경 사용을 권장한다.
python \-m venv venv가상환경 활성화:
- Windows
venv\\Scripts\\activate - Mac/Linux
source venv/bin/activate
4. Hugging Face 라이브러리 설치
가장 핵심 라이브러리는 transformers이다.
pip install transformers
pip install torch
추가로 다음도 많이 사용된다.
pip install datasets
pip install accelerate5. Hugging Face 모델 사용 방법
5.1 기본 사용 (Pipeline 방식)
가장 간단한 방법은 pipeline API이다.
from transformers import pipeline
classifier \= pipeline("sentiment-analysis")
result \= classifier("I love this model")
print(result)설명:
- 모델 자동 다운로드
- 별도 설정 없이 즉시 사용 가능
5.2 특정 모델 직접 사용
예: BERT 모델
from transformers import AutoTokenizer, AutoModelForSequenceClassification
tokenizer \= AutoTokenizer.from\_pretrained("bert-base-uncased")
model \= AutoModelForSequenceClassification.from\_pretrained("bert-base-uncased")5.3 텍스트 입력 처리
inputs \= tokenizer("Hello world", return\_tensors\="pt")
outputs \= model(\*\*inputs)6. Hugging Face 로그인 (선택)
모델 업로드 또는 private 모델 사용 시 필요하다.
6.1 CLI 설치
pip install huggingface\_hub6.2 로그인
huggingface-cli login
→ Hugging Face 웹사이트에서 발급받은 토큰 입력
7. VSCode에서 실행 방법
7.1 Python 파일 생성
예: main.py
7.2 실행
python main.py
또는 VSCode 내부 실행 버튼 사용
8. 자주 사용하는 모델 유형
Hugging Face에서는 다양한 작업을 수행할 수 있다.
- 감정 분석 (sentiment-analysis)
- 번역 (translation)
- 요약 (summarization)
- 질의응답 (question-answering)
- 텍스트 생성 (text-generation)
9. 실행 구조 이해
Hugging Face는 내부적으로 다음 과정을 수행한다.
- 모델 이름 입력
- Hugging Face 서버에서 다운로드
- 로컬 캐시에 저장
- 이후 재사용 (캐시 활용)
즉, 한 번 다운로드하면 이후에는 인터넷 없이도 실행 가능하다.
10. 자주 발생하는 오류
10.1 torch 미설치
ModuleNotFoundError: No module named 'torch'
→ 해결:
pip install torch10.2 모델 다운로드 실패
- 인터넷 연결 확인
- 방화벽/VPN 확인
10.3 GPU 미사용 문제
기본적으로 CPU 실행됨
GPU 사용 시:
pipeline("sentiment-analysis", device\=0)11. 정리
Visual Studio Code에서 Hugging Face를 사용하는 핵심 흐름은 다음과 같다.
- Python 환경 준비
- transformers 라이브러리 설치
- 모델 호출 (pipeline 또는 직접 로드)
- 코드 실행
Hugging Face는 별도의 복잡한 설정 없이도 사전학습 모델을 바로 사용할 수 있다는 점이 가장 큰 특징이다.
'AL,ML 학부연구생 > 공부 기록' 카테고리의 다른 글
| 인터넷 캐시(Cache)란 무엇인가 (0) | 2026.03.31 |
|---|---|
| Precision(정밀도), Recall(재현율), F1score, ROUGE-L, BELU, BERTscore, SEMscore 은 각각 무엇인가? (0) | 2026.03.30 |
| Llama, GPT, T5, BERT, RoBERTa, DeBERTa 는 각각 어떤 모델이고 어떤 작업에 특화되어 있나요? (0) | 2026.03.24 |
| AI나 인공지능을 '학습한다'라는 것은 어떤것을 의미할까? (0) | 2026.03.23 |
| LoRa (Low-Rank Adaptation)란 무엇인가? (0) | 2026.03.23 |