업계가 변경되고 나서 LLM or sLLM에 대해서 공부를 더 하게 된다.
내가 있는 곳은 현재 RAG를 통한 콘텐츠의 생산성의 정확도를 높이기 위한 전략을 취한다.
물론 환각 최소화 방안이기도 하다.
아래의 내용은 2개의 논문을 바탕으로 나름대로 내용을 각색해봤다.
GRAG: Graph Retrieval-Augmented Generation
Retrieval-Augmented Generation for Knowledge-Intensive NLP Tasks
※ 이 글에서 Basic RAG는 작성자가 임의로 작성한 글임을 알린다.
이번 2025 코엑스 Generative LLM/sLLM에서도 모두가 RAG를 언급한다.
한국에서는 아쉽게도 하나의 창만 있다.
나는 개발자는 아니다. 그냥 Dream or Viewer or Exploer라고 할 수 있다.
RAG에 간단히 설명하면
사용자가 질문을 넣으면 그 질문에 보강 데이터를 내 PC 또는 DB, 문서를 찾아낸다.
그리고 그것을 Prompt 에 추가하여 질문에 내용을 더 강화시켜 LLM에게 문의를 하는 것이다.
그렇다면 Graph Rag와 Basic RAG의 차이는 무엇일까?
Basic RAG는
1. 쿼리 문서 간의 벡터 유사도 계산
2. 독립적인 텍스트 청크(약 100 단어정도) 검색
3. TOP-k 방식으로 가장 관련성 노ㅠ응 청크들 선별
4. 이 정보를 LLM에 콘텍스트로 제공
Graph RAG는
1. 쿼리와 관련된 중요 노드들(activated nodes) 식별
2. 해당 노들간의 관계(edge) 고려
3. 중요 노드를 중심으로 하는 k-hop ego grah(subgrap) 추출
4. 의미적 관련성과 구조적 연결성 모두 고려
5. soft pruning 적용하여 관련성 낮은 node/edge 영향 최소화
6. 이 정보를 LLM에 콘텍스트로 제공
상세 차이 이야기
Basic RAG의 개별적 단위
청크(Chunk): 대부분의 RAG 시스템에서는 긴 문서를 수백 단어 정도의 더 작은 청크로 나누어 저장.
이러한 청크가 가장 일반적인 "개별적 단위"라 칭함
- 문서 조각: 원본 문서에서 의미적으로 독립된 부분(예: 단락, 섹션, 페이지)
- 완전한 문서: 짧은 문서의 경우 전체 문서가 하나의 단위
- 데이터베이스 레코드: 구조화된 데이터의 경우 데이터베이스의 행이나 레코드가 단위
Retrieval-Augmented Generation for Knowledge-Intensive NLP Tasks 내용중
1. 검색은 "Maximum Inner Product Search(MIPS)"를 통해 수행
2. 쿼리 벡터 q(x)와 문서 벡터 d(z) 간의 내적값(cosine 유사도)을 기준으로 문서를 검색
3. 각 문서는 다른 문서와의 관계성 없이 독립적으로 순위 적용
반면, Graph RAG는?
분할 정복(Divide-and-Conquer) 전략 활용
1. 분할(Divide) 단계
최적의 서브그래프를 직접 찾는 대신, 중요 노드들을 중심으로 한 에고 그래프들을 찾는 문제로 재구성
2. 정복(Conquer) 단계
각 중요 노드를 독립적으로 평가하여 그 노드의 K-hop 에고 그래프의 가치를 계산
3. 결합(Combine) 단계
- 검색된 각 에고 그래프들을 병합
- 소프트 프루닝(soft pruning) 메커니즘을 적용하여 관련성이 낮은 노드와 엣지의 영향 최소화
서브그래프
선택된 노드들(Nodes): 문서나 정보 조각을 나타내는 점들
해당 노드 간의 연결(Edges): 노드 간의 관계를 나타내는 연결선
그 구조 내의 위상 정보(Topology): 노드들이 어떻게 서로 연결되어 있는지에 대한 정보
결론
결국, 여기서의 큰 차이는 더 의미있는 정보(관계성)를 LLM/sLLM에 제공하자 이다.
이제 자신에게 맞는 정보를 출력하게 만드는 게 더 의미있어지고 있다.
여기서부터는 숫자(기술) 싸움이다.
'AI' 카테고리의 다른 글
[ AI/antropic-1 ] LLM은 다중 추론을 진짜 할까?(feat. Claude 3.5 Haiku) (1) | 2025.06.02 |
---|---|
[ AI/MCP ] web 방식 figma로 MCP 시도해 보기 (2) | 2025.05.25 |
[ LLMs ] 나는 누구인가? 곧 자기에 장점이 나다.(feat. Grok, Chat GPT, Claude, Perplexity, Gemini) (1) | 2025.04.06 |
[ AI/애착 ] 우리는 AI와 친구가 될 수 있을까? (Feat.Open AI) (0) | 2025.03.23 |
[ AI/LLM ]Post-training에 대해서 (4) | 2025.03.20 |