rag 8

[LLM] RAG의 확장: 구조화된 데이터(Tabular Data)와 에이전트(Agents)

1. 구조화된 데이터(Tabular Data) 기반 RAG일반적인 RAG 시스템은 비정형 데이터(텍스트, 이미지)를 활용하지만, 많은 비즈니스 애플리케이션은 정형 데이터(테이블, 데이터베이스)를 필요로 한다!문제점:일반적인 RAG 시스템은 주로 문서, 이미지 등의 비정형 데이터를 검색하지만 이커머스, 금융, 헬스케어 등의 분야에서는 구조화된 데이터(테이블, SQL 데이터베이스)가 핵심 정보원해결책: RAG + SQL 기반 검색(Text-to-SQL)자연어 질문을 SQL 쿼리로 변환하여 데이터베이스에서 정량적 정보를 검색검색된 데이터를 바탕으로 AI가 답변을 생성2. 예제: 이커머스 데이터베이스에서 판매량 검색데이터 예시 (Table 6-3: Kitty Vogue의 판매 데이터)이커머스 웹사이트 Kitty..

[LLM] RAG의 확장: 문서 기반 검색을 넘어 멀티모달 RAG로

1. RAG 시스템의 컨텍스트 확장 (Contextual Augmentation in RAG)컨텍스트 보강(Context Augmentation)이란?"검색된 문서의 청크에 짧은 컨텍스트를 추가하여 검색 정확도를 향상시키는 기법"문제점:검색된 문서의 일부 청크(Chunk)만 보면 문맥을 이해하기 어려울 수 있음AI 모델이 올바른 정보를 제공하려면, 검색된 청크가 전체 문서에서 어떤 역할을 하는지 알 필요가 있음해결 방법:각 청크에 짧은 문맥(Context)을 추가하여 검색 엔진이 더 정확한 결과를 반환할 수 있도록 함Anthropic의 접근 방식각 청크 앞에 해당 청크의 의미를 설명하는 컨텍스트 요약을 추가이 보강된 청크를 검색 시스템이 인덱싱결과:검색된 문서가 더 유의미한 결과를 제공AI가 문맥을 더 ..

[LLM] 검색 최적화를 위한 쿼리 리라이팅(Query Rewriting)과 맥락 검색(Contextual Retrieval)

1. 쿼리 리라이팅(Query Rewriting): 더 정확한 검색을 위한 검색어 변환"사용자의 검색어를 보다 명확하고 효과적인 형태로 변환하여 검색 정확도를 높이는 기법"이유: 검색어 모호하면 검색 품질이 떨어진다!사용자가 입력한 검색어가 불완전하거나 애매한 경우, 검색 시스템이 정확한 결과를 제공하기 어려움검색어를 적절하게 변환하면 검색 품질이 크게 향상됨예제: 모호한 검색어 해결하기사용자가 입력한 검색어:"John Doe가 우리 가게에서 마지막으로 물건을 산 게 언제야?"AI 응답:"John이 2030년 1월 3일에 모자를 샀어요."추가 질문:"그럼 Emily Doe는?"문제점:"그럼 Emily Doe는?"이라는 질문만으로는 AI가 사용자의 의도를 정확히 이해하기 어려움AI가 의미를 추론하려고 하면..

카테고리 없음 2025.03.05

[LLM] 검색 최적화(Retrieval Optimization): 검색 성능을 향상시키는 전략

1. 검색 최적화 개요검색 시스템의 성능을 높이기 위해 적용할 수 있는 다양한 최적화 전략이 있습니다.이 블로그에서는 다음 네 가지 핵심 전략을 다룹니다.검색 최적화 전략 4가지1. 청킹 전략(Chunking Strategy) → 문서를 적절한 크기로 분할하여 검색 성능을 최적화2. 재정렬(Reranking) → 검색된 문서의 순위를 다시 조정하여 더 정확한 검색 결과 제공3. 쿼리 리라이팅(Query Rewriting) → 검색어를 보다 효과적으로 변환하여 검색 품질 향상4. 맥락 검색(Contextual Retrieval) → 검색 시스템이 더 풍부한 문맥을 반영하도록 개선2. 청킹 전략(Chunking Strategy)청킹(Chunking)이란?긴 문서를 작은 단위(청크, chunk)로 나누어 저장..

[LLM] 임베딩 기반 검색과 벡터 데이터베이스(Vector Database)

1. 벡터 데이터베이스란?임베딩 기반 검색에서는 문서를 벡터(Vector)로 변환하여 저장하고 검색합니다.이때, 벡터를 저장하고 빠르게 검색할 수 있도록 벡터 데이터베이스(Vector Database)가 필요합니다.벡터 데이터베이스의 역할문서를 임베딩 벡터로 변환하여 저장쿼리를 임베딩한 후, 가장 유사한 벡터를 검색코사인 유사도(Cosine Similarity)나 유클리디언 거리(Euclidean Distance) 같은 거리 기반 측정 활용왜 벡터 데이터베이스가 필요한가?일반적인 관계형 데이터베이스(RDBMS)는 벡터 기반 검색을 지원하지 않음벡터 간 유사도를 빠르게 계산하려면 전용 데이터 구조 및 알고리즘이 필요기존의 키워드 검색 방식보다 의미적으로 유사한 정보를 찾는 데 최적화됨2. 벡터 검색(Vec..

[LLM] RAG 시스템의 아키텍처와 검색 알고리즘

1. RAG 아키텍처(RAG Architecture)RAG(Retrieval-Augmented Generation) 시스템은 크게 두 가지 주요 구성 요소로 이루어집니다.1. 리트리버(Retriever): 외부 데이터(문서, 테이블, 채팅 기록 등)에서 관련 정보를 검색2. 생성 모델(Generative Model): 검색된 정보를 바탕으로 응답을 생성사용자가 입력한 프롬프트(prompt)가 먼저 리트리버로 전달됨리트리버는 외부 데이터베이스에서 관련성이 높은 정보를 검색검색된 정보가 생성 모델로 전달되며, 이를 바탕으로 최종 응답이 생성이 구조는 기존의 AI 모델이 단순히 학습된 데이터만으로 답변을 생성하는 방식과는 다릅니다.기존 모델: 미리 학습된 지식을 바탕으로 답변RAG 모델: 실시간으로 관련 정보..

[LLM] RAG (Retrieval-Augmented Generation)와 컨텍스트 활용

1. RAG의 개념: 검색 후 생성 패턴RAG(Retrieval-Augmented Generation)는 "검색 후 생성(retrieve-then-generate)" 패턴을 기반으로 동작하는 AI 기술입니다. 이 개념은 2017년 "Reading Wikipedia to Answer Open-Domain Questions" 논문에서 처음 소개되었습니다. 기본적인 원리는 다음과 같습니다.1. 문서 검색(Document Retrieval): AI 모델이 질문(Query)과 관련된 문서를 검색하여 가장 관련성이 높은 데이터를 찾음2. 문서 읽기(Document Reading): 검색된 문서를 AI 모델이 읽고 분석하여 최적의 답변을 생성예제 "1933년 바르샤바 주민 중 몇 명이 폴란드어를 사용했는가?"➡ AI..

[LLM] RAG(Retrieval-Augmented Generation)와 에이전트의 활용 분야

1. 서론: AI 모델의 한계를 극복하는 방법현대의 AI 모델은 사용자의 명령을 따르는 데 뛰어난 능력을 가지고 있지만, 이 능력은 동시에 보안 공격에 취약하게 만들 수도 있습니다. 악의적인 사용자가 모델을 조작하여 원하지 않는 출력을 유도하는 사례가 발생할 수 있기 때문입니다. 이에 따라 보안이 중요한 환경에서는 AI의 도입이 쉽지 않으며, 철저한 보안 대책이 필요합니다.하지만 AI가 단순히 명령을 따르는 것만으로는 충분하지 않습니다. 특정 작업을 수행하려면, 명령뿐만 아니라 적절한 정보(컨텍스트)도 함께 제공되어야 합니다. 예를 들어, 사람이 정보를 모른 채로 질문에 답해야 할 경우, 틀린 답변을 할 가능성이 높습니다. 마찬가지로 AI 모델도 필요한 정보를 제공받지 못하면 환각(hallucinatio..