한양대학교 박서연 교수님 - github.io
(한양대학교 박서연 교수님의 딥러닝 수업을 청강 하면서 정리한 내용을 바탕으로 교수님의 허락을 받고 작성하였습니다.)
Retrieval Augmented Generation (RAG)

- Retrieval Augmented Generation(RAG) : 검색을 증강해서 대답하는 것
- 추가적인 데이터에 대한 fine-tuning없이 LLM이 외부 지식(Website, PDF, 외부 문서 등)을 검색 시스템이 관련 있는 문서/링크만 골라서 리스트업함 → 이후 관련 정보를 모아서 요약·재구성해서 답변 생성

RAG using LangChain


DataLoader
TextSplitters
Store

- 직접 LLM을 구성할때는 Chat History를 Maintaining해야한다 → GPT는 기본적으로 되지만, 직접 만들경우 memory를 기억하는 부분을 넣어줘야함
Retriever

- query와 문서를 vector로 embedding해서, dot product / cosine similarity 같은 방법으로 가장 유사한 문서들을 찾아오는 검색 모듈
- RAG에서 외부 knowledge(Website, PDF 등)를 LLM에게 가져다주는 역할을 담당함
Contrastive Learning

- 아이디어 : 기준이 되는 샘플을 anchor라고 두고, anchor와 비슷한 샘플(positive), 다른 샘플(negative)을 구성한다.
- 학습 목표 : embedding / feature space에서 anchor–positive 쌍은 가깝게 위치하도록 만들고 anchor–negative 쌍은 멀어지도록 만드는 loss를 최소화한다.
- 직관 : “비슷한 것끼리는 모으고(끌어당기고), 다른 것끼리는 떼어놓는(밀어내는) 방식으로 representation을 학습하는 방법”이 바로 contrastive learning
General Usage of LLMs (Reference)