Replicated

Hugging face 본문

학부/딥러닝

Hugging face

라구넹 2025. 12. 7. 23:42

Hugging face

기계학습 모델을 구축, 배포 및 교육하기 위한 도구와 리소스를 개발하는 프랑스계 미국 회사이자 오픈 소스 커뮤니티

트랜스포머나 데이터셋 같은 AI 프레임워크를 제공하는 세계 최대의 인공지능 플랫폼 중 하나

다양한 오픈소스 LLM 모델들과 라이브러리를 제공

 

모델명

meta-llama/Llama-3.1-8B-Instruct

meta-llama : 모델 개발업체 / 개발자

Llama-3.1-8B-Instruct : 모델명(checkpoint)

3.1 : 버전

8B : 매개변수의 수

Instruct

- 있는 것 : 사용자 명령에 반응하는 특화된 훈련을 통해 명령에 더 정확하게 답하거나 특정 작업을 수행하는데 최적화

- 없는 것 : 일반적인 언어 패턴을 학습하여 모든 종류의 텍스트 생성에 적합한 범용 모델

 

* 일반 노트북이나 데탑은 4B 이하 모델이 현실적

 

Instruction Tuning

- 모델이 사용자 지시나 명령에 더 잘 반응하도록 훈련하는 과정

- 모델이 명령어와 그에 따른 응답 쌍으로 이루어진 데이터셋을 학습

 

Context In LLM

- 모델이 답변을 생성할 때 고려하는 정보

구성요소

- 인풋 텍스트(프롬프트)

- 대화 기록

- 유저 프로필

- 학습된 데이터

- 외부 데이터(RAG)

 

Context(window) Length

- 모델이 텍스트를 생성하거나 이해할 때 받을 수 있는 입력 정보의 양

- 입력 토큰의 수로 측정

- 이 값이 클 수록 유리하나 계산이 지수적으로 증가 

 

LLM 모델의 저장 방식

Safetensor

- 딥러닝 모델의 가중치를 저장하기 위해 설계된 새로운 바이너리 파일 포맷

- 높은 보안성, 빠른 로딩 속도, 메모리 효율성, 프레임워크 독립성 제공

- 구성 요소: JSON 헤더, 바이너리 데이터 블록

 

GGUF (GPT-Generated Unified Format)

- llama.cpp 프로젝트에서 개발된 포맷

- llm을 효율적으로 저장하고 CPU 및 GPU에서 실행할 수 있도록 최적화

- safetensors와 마찬가지로 pickle 기반의 보안 취약점을 해결하고 모델 로딩 속도 및 효율성을 개선하는데 중점

- Ollama의 모델들은 이 포맷

 

ONNX (Open Neural Network)

- Meta, Microsoft 주도 개발

- 딥러닝 모델을 표현하기 위한 개방향 표준 포맷

- 다양한 딥러닝 프레임워크에서 학습된 모델을 ONNX 형식으로 변환하여 다른 프레임워크나 런타임에서 추론할 수 있도록 함

- 프레임워크 독립적이며 추론 성능 최적화에 유리

 


제공 라이브러리

Transformer

- 허깅페이스 라이브러리 중 가장 핵심적 모듈

- 트랜스포머 기반의 다양한 모델을 파이토치, 텐서플로우로 각각 구현해놓은 모듈이며 각 모델에 맞는 tokenizer도 구현

- 사전 학습된 최첨단 모델들을 쉽게 다운로드하고 훈련시킬 수 있는 API와 도구 제공

- Pipeline을 통한 고수준 추상화 제공

 

지원 작업

- NLP : 텍스트 분류, 텍스트 생성, 개체명 인식, 질의응답, 빈칸 채우기, 요약, 번역

- CV : 이미지 분류, 이미지 분할, 객체 탐지

- 오디오 : 오디오 분류, 자동 음성 인식

- 멀티모달 : 시각 질의응답, 문서 질의응답, 이미지 캡션 달기

 

Tokenizer

- 텍스트 데이터를 컴퓨터가 처리할 수 있도록 토큰화 작업을 지원

- 토큰화 뿐만 아니라 텍스트 정규화, 불용어 제거, 패딩 등 다양한 전처리 수행

- 토큰화 후 숫자 인코딩 수헹

 

datasets

- 자연어처리, 컴퓨터 비전, 오디오 처리 등 다양한 머신러닝 작업에 사용되는 수많은 데이터셋을 쉽게 다룰 수 있도록 도와주는 라이브러리

 

diffuser

- 딥러닝 기반의 생성형 AI 모델, 특히 텍스트-이미지 생성과 관련된 작업을 지원

 

accelerate

- 딥러닝 모델의 분산 학습과 하드웨어 가속화를 지원

- 대규모 모델을 효과적으로 학습하기 위해서는 여러 GPU를 사용한 병렬처리가 필수적인데 매우 복잡한 과정이 필요

- 이러한 작업을 추상화를 통해 간단한 API로 제공

 


 

Pipeline

- transformers 라이브러리의 가장 기본 객체

- 모델 사용을 위한 인터페이스 제공

- 전처리 + 후처리 과정을 모델과 연결하여 쉽게 NLP 모델을 사용할 수 있게 함

- Transformer를 사용하는 가장 간단한 수단

 

Pipeline으로 가능한 작업

- sentiment-analysis : 감정 분석

- question-answering : 질의 응답

- text-generation : 텍스트 생성

- translation : 번역

- summarzation : 요약

 

- image-classification : 이미지 분류

- object-detection : 객체 탐지

- image-to-text : 이미지에 캡션 달기

 

- feature-extraction : 특징 추출

- fill-mask : 마스크 채우기

- ner : 개체명 인식

- zero-shot-classification : 제로샷 분류

 

* Type of ansert

- 추출적(Extractive) 질의 응답 : 주어진 문맥에서 답변을 추출

- 생성적(Abstractive) 질의 응답 : 문맥에서 질문에 올바르게 답하는 답변을 생성

 

'학부 > 딥러닝' 카테고리의 다른 글

AI Agent, Context Engineering  (0) 2025.12.08
LangChain, LangGraph  (0) 2025.12.08
자연어 처리 : Seq2Seq, Attention, Transformer  (0) 2025.12.07
자연어 처리 : RNN, LSTM  (0) 2025.12.07
자연어 처리 : Word representation  (0) 2025.12.07