생성형 AI를 처음 도입하는 기업이 가장 먼저 부딪히는 벽은 "ChatGPT는 우리 회사 내부 문서를 모른다"는 사실이다. 거대 언어 모델(LLM)은 학습 시점까지의 공개 데이터로 훈련됐을 뿐, 어제 작성한 사내 위키나 비공개 계약서는 전혀 모른다. 그렇다면 두 가지 길이 있다. (1) 모델을 우리 데이터로 다시 학습(fine-tuning)시키거나, (2) 질문할 때마다 관련 문서를 찾아 모델에게 "이 문서를 참고해서 답하라"고 주는 것이다. 후자가 **RAG(Retrieval Augmented Generation)**이고, 거의 모든 사내 지식 챗봇의 표준 아키텍처다. SAP-C02 시험에서 생성형 AI는 "어느 길을 골라야 하나(RAG vs fine-tuning)", "벡터 DB를 무엇으로 할 것인가", "데이터 유출과 환각을 어떻게 막을 것인가"라는 아키텍처 의사결정으로 출제된다.
오늘은 Bedrock의 위치를 정리하고, RAG가 내부적으로 어떻게 동작하는지(임베딩·벡터 검색·청킹), 왜 fine-tuning보다 RAG가 대부분의 경우 정답인지를 수학적 직관까지 들어가 분해한다.
Bedrock 이전에 LLM을 쓰려면 거대한 모델 가중치(수십~수백 GB)를 GPU 인스턴스에 올려 직접 호스팅해야 했다. 모델 하나 띄우는 데 ml.p4d 같은 비싼 인스턴스가 필요하고, 이를 운영·확장하는 부담이 컸다