AI 7

[AI] 대형 언어 모델 파인튜닝 기법 정리 (SFT, PEFT, RLHF, DPO, RL)

대형 언어 모델(LLM)을 활용한 파인튜닝은 이제 누구나 해볼 수 있을 만큼 쉬워졌지만, SFT, PEFT, RLHF, DPO, PPO, RL 등 용어가 너무 많고 헷갈리는 경우가 많습니다. 이번 글에서는 LLM 파인튜닝 전략을 개념 중심으로 정리해보고,언제 어떤 방법을 선택해야 하는지 흐름별로 알아보겠습니다.전체 개념 흐름 데이터 있음   |   |-- 자원이 부족하거나 빠르게 실험하고 싶다   |      -->  PEFT (LoRA, QLoRA)   |   |-- 자원이 충분하고 최대 성능이 목표다   |      -->  Full SFT   |   v 모델이 기본적인 응답을 하게 됨 (SFT 완료)   |   |-- 더 공손하고, 사람 같은 답변을 만들고 싶다   |      -->  RLHF (..

AI 2025.03.26

[AI] LoRA 기반 PEFT 파인튜닝과 용어정리

Llama 3.1 LoRA 기반 PEFT 적용 가이드 LoRA (Low-Rank Adaptation)는 LLM(대형 언어 모델)의 일부 파라미터만 미세 조정하여메모리와 계산량을 절약하는 파인튜닝 기법입니다.Llama 3.1 모델에 LoRA를 적용하여 PEFT(Parameter-Efficient Fine-Tuning)를 수행하는 방법을이론과 실전 코드 예제를 통해 단계별로 설명합니다1. PEFT(LoRA)란 무엇인가?(https://github.com/huggingface/peft)PEFT (Parameter-Efficient Fine-Tuning)기존 LLM을 풀 파인튜닝(Full Fine-Tuning)하지 않고, 적은 수의 파라미터만 학습하는 방법.대표적인 방식으로 LoRA, QLoRA, Adapter..

AI 2025.02.27

[AI] Huggingface모델 다운받아 Ollama에 올려서 RAG와 Memory사용하기

사용할 모델은 야놀자의 eeve 모델을 사용하여 진행함HuggingFace Hub 설치pip install huggingface-hub 모델 다운로드https://huggingface.co/heegyu/EEVE-Korean-Instruct-10.8B-v1.0-GGUF heegyu/EEVE-Korean-Instruct-10.8B-v1.0-GGUF · Hugging FaceUsage requirements # GPU model CMAKE_ARGS="-DLLAMA_CUBLAS=on" FORCE_CMAKE=1 pip install llama-cpp-python --force-reinstall --upgrade --no-cache-dir --verbose # CPU CMAKE_ARGS="-DLLAMA_CUBLAS..

AI 2024.06.27

[AI] Ollama 다운로드 및 모델 다운 방법

Ollama 는 로컬 환경(내 PC)에서 대규모 언어 모델인 LLM을 실행할 수 있도록 설계된 도구로 Mistral, Llama 3 등 다양한 오픈소스 LLM을 지원합니다. 또 한 Hugging face에서 다운 받은 GGUF 모델을 Ollama에 올려서 사용할 수 있습니다. Ollama 다운경로 https://ollama.com/download Download Ollama on macOSDownload Ollama on macOSollama.com 올라마 설치 후 확인 cmd에 ollama 입력ollama올라마에서 모델 명 복사현재 Ollama에 다운 받은 모든 모델 출력ollama list모델 다운 받기xxxx에 모델 명을 넣으면 된다.run - 모델 다운받고 실행pull - 모델만 다운로드ollam..

AI 2024.06.27

[AI] 임베딩(Embedding)

임베딩기법은 자연어 처리를 위한 기법중 하나로 머신러닝 알고리즘을 쓸 때 머신러닝 알고리즘은 어떤 문자형 데이터를 처리할 수 없기 때문에 인티저 인코딩이나 원핫 인코딩 같은 형태로 벡터 표현 형태로 그 텍스트 데이터를 변경을 수행해 주었어야만 했다. 하지만 주로 사용하는 원핫 인코딩을 사용할 경우 여러 가지 문제점들이 있게된다. 첫 번째로는 데이터 표현형태가 Sparse(희박하다)해진다는 문제점이 있다. 만약 10000개의 단어가 들어있을 때 1000개의 단어에 9999에는 0이들어있고 하나의데이터에 1이 들어있는 문제가있다. 이런 문제를 해결하기 위해 Sparse한 one-hot encoding의 데이터 표현을 Dense(빽빽한)한 표현 형태로 변환하는 기법이다. 이를 위해서 원본 데이터에 Dense한..

AI 2024.05.09

[AI] AI 용어정리

프롬프트 - 특정 작업을 수행하도록 생성형 AI에 요청하는 자연어 텍스트입니다.NLP -  자연어 처리(NLP)는 인간의 언어를 해석, 조작 및 이해하는 능력을 컴퓨터에 부여하는 기계 학습 기술입니다. RAG (Retrieval-Augmented Generation) - 랭체인을 이용하여 LLM을 학습시키는 방식으로 LLM의 재학습 없이 그냥 외부 텍스트를 프롬프트 단에 묶어줘서 결과를 도출하는 것 할루시네이션 - AI 모델이 정확하지 않거나 사실이 아닌 조작된 정보를 생성하는 것을 의미합니다. 임베딩(Embedding) - 복잡한 지식 영역을 이해하는 데 사용하는 실제 객체를 수치로 표현한 것입니다.vectorStores - 이미 임베딩된 결과값을 저장하는 용도one-hot Encoding - 표현하고..

AI 2024.05.08

[AI] 랭체인(LangChain) 개념 및 사용방법

랭체인(LangChain) 라이브러리는 자연어 처리(NLP)와 관련된 다양한 기능을 제공하는 파이썬 라이브러리입니다. 이 라이브러리의 주요 목적은 대화형 AI 시스템을 구축하고 연구하는 데 있어 유용한 도구를 제공하는 것입니다. 랭체인은 LLM모델을 직접적으로 만드는 것 이 아닌 이미 만들어져있는 LLM모델을 API등으로 연동하여 실제 어플리케이션으로 묶어주는 역활을 수행한다.랭체인 특징1. 챗봇 구축: LangChain은 챗봇과 대화형 AI 시스템을 구축하기 위한 도구를 제공합니다. 이를 통해 사용자는 자신만의 챗봇을 쉽게 만들 수 있습니다. 2. 다양한 자연어처리(NLP) 기능: 이 라이브러리는 텍스트 생성, 요약, 번역과 같은 다양한 자연어 처리 기능을 포함하고 있습니다. 3. 플러그 앤 플레이 아..

AI 2024.05.08