관리 메뉴

피터의 개발이야기

[AI] Attention 메커니즘 — LLM은 어떻게 ‘중요한 정보’를 골라내는가 본문

AI/AI이론 | 공부

[AI] Attention 메커니즘 — LLM은 어떻게 ‘중요한 정보’를 골라내는가

기록하는 백앤드개발자 2026. 2. 2. 23:45
반응형

 

 

[AI] LLM 학습 노트 공개 - Transformer부터 RAG까지, 그리고 운영 가능한 AI 시스템을 향해

 

ㅁ 들어가며

AI는 더 이상 “모델 호출”이 아니라
컨텍스트를 설계하고 운영하는 시스템이라는 생각이 들기 시작했다.

RAG를 구현하고, Retriever 품질을 튜닝하고, Embedding 모델을 비교하다 보면
어느 순간 다시 Transformer 구조로 돌아오게 된다.

그리고 그 중심에는 항상 Attention이 있다.

 

ㅁ 왜 Attention부터 다시 보게 되었나

처음에는 RAG 구현이 목적이었다.

하지만 파고들수록 느꼈다.

  • Retriever 품질은 Embedding과 Chunking에서 결정되고
  • RAG 성능은 VectorDB 튜닝과 Reranking에서 갈리며
  • 최종 응답 품질은 결국 Transformer 구조와 Prompt 설계로 돌아온다

각각이 따로 존재하는 게 아니라, 하나의 파이프라인이었다.

그래서 Attention은 단순 이론이 아니라,
LLM 시스템 전체를 이해하기 위한 기본 운영 지식이 된다.

 

ㅁ Attention의 본질

Attention은 문장 안의 모든 토큰이 서로를 점수화하면서
  “지금 무엇이 중요한가”를 계산하는 메커니즘이다.

각 토큰은 세 가지 벡터를 가진다.

  • Query(Q): 내가 지금 찾고 싶은 정보
  • Key(K): 나는 이런 정보를 갖고 있다
  • Value(V): 실제 전달할 내용

현재 토큰의 Query가 모든 Key와 비교되고,
   softmax로 가중치가 만들어진 뒤
   그 가중치로 Value를 합산해 새로운 표현이 생성된다.

 

직관적으로 보면 이렇다.

   각 단어가 문장 전체를 훑으면서
   “지금 나에게 의미 있는 단어들”만 골라서 다시 조합한다.

이 과정이 모든 토큰에서 동시에 일어난다.

 

ㅁ Self-Attention — 입력 자체가 검색 대상이 된다

Self-Attention에서는 Query, Key, Value가 모두 같은 입력 시퀀스에서 나온다.

즉, 문장 자체가 데이터베이스가 된다.

  이 구조는 RAG와 굉장히 닮아 있다.

  • Query → 사용자 질문
  • Key → 문서 인덱스
  • Value → 실제 문서 내용

차이가 있다면, Self-Attention은 이걸 모델 내부에서 실시간으로 수행한다는 점이다.

 

그래서 나는 이렇게 이해하고 있다.

Attention 구조는 RAG 파이프라인의 축소판이다.

 

ㅁ Multi-Head Attention — 여러 관점의 병렬 해석

Attention을 하나만 쓰지 않고 여러 개를 병렬로 돌리는 이유는 단순하다.

  하나의 관점으로는 언어를 충분히 설명할 수 없기 때문이다.

  각 Head는 서로 다른 의미 공간에서 입력을 바라본다.

  • 어떤 Head는 문법 관계
  • 어떤 Head는 의미적 연관성
  • 어떤 Head는 문장 흐름

결과적으로 Multi-Head는 일종의 feature ensemble처럼 동작한다.

Embedding을 여러 공간에서 동시에 뽑는 느낌에 가깝다.

 

ㅁ KV Cache와 O(n²) — 왜 컨텍스트가 비용이 되는가

Attention의 계산량은 토큰 수 n에 대해 O(n²)로 증가한다.

그래서 컨텍스트가 길어질수록:

  • latency가 늘고
  • 메모리 사용량이 급증한다

KV Cache는 이미 계산한 Key/Value를 저장해 재사용함으로써
디코딩 단계의 비용을 크게 줄이는 최적화 기법이다.

이걸 이해하면:

  • 왜 long-context 모델이 비싼지
  • 왜 p95 latency가 튀는지
  • 왜 프롬프트 길이 관리가 중요한지

가 자연스럽게 연결된다.

 

ㅁ RAG 시스템에서 Attention이 의미하는 것

운영 관점에서 보면 더 명확하다.

  • Chunk 품질은 Attention 입력 품질이다
  • Retriever 품질은 Query 품질이다
  • Prompt는 Decoder의 conditioning이다

즉,

   잘못 쪼갠 문서 → 쓰레기 컨텍스트
   부정확한 검색 → 흐릿한 Query
   과도한 Prompt → Attention 낭비

모두 같은 문제의 다른 표현이다.

 

ㅁ 마무리

Attention은 단순한 알고리즘이 아니다.

   정보 흐름을 설계하는 방식이다.

   그래서 LLM은 더 이상 “모델 호출”의 문제가 아니라
컨텍스트 생성 → 정제 → 전달 → 재활용까지 포함한
  하나의 운영 시스템이 된다.

내가 LLM을 다루면서 가장 크게 바뀐 관점은 이것이다.

AI는 모델이 아니라, 파이프라인이다.

그리고 그 파이프라인의 중심에 Attention이 있다.

반응형
Comments