1. QKV란?
Transformer의 핵심은 Self-Attention인데, 이때 입력 토큰(단어 벡터)을 세 가지로 변환합니다:
Query(Q) : "내가 어떤 정보를 찾고 싶은가?"를 표현
Key(K) : "내가 어떤 정보를 가지고 있는가?"를 표현
Value(V) : "실제로 전달할 정보"
즉,
Query–Key의 내적(dot product) → "이 토큰이 다른 토큰과 얼마나 관련 있는지" 계산
그 결과(Attention score)를 Value에 가중합 → 새로운 토큰 표현 생성
---
2. 용도
(1) 문맥 이해
각 단어가 문장 안에서 어떤 단어와 관련이 깊은지 파악
예: “그는 사과를 먹었다” → “그”와 “먹었다”가 강하게 연결
(2) 정보 검색 (LLM에서 Query 역할)
LLM 내부에서는 **Query 토큰(Q)**이 다른 모든 Key(K)와 매칭되며, 필요한 정보(Value)를 뽑아옴
즉, 사용자가 질문을 던지면 → 모델 내부적으로 Query가 생성 → 관련 Key·Value에서 답을 조립
(3) 외부 지식 검색(RAG 같은 구조)
외부 벡터 DB에 문서들을 Key/Value 형태로 저장
사용자의 질문은 Query로 변환 → 벡터 유사도 검색으로 관련 문서(Key와 매칭) 찾음 → 답변 생성에 활용
---
3. 비유로 이해하기
Query = 질문(“누가 관련 있어?”)
Key = 이름표(“나는 이런 특징이 있어!”)
Value = 실제 내용(“내가 줄 수 있는 정보는 이것이야”)
LLM은 매 토큰마다 이런 QKV를 만들어서, 문장 속 맥락을 계산하는 거예요.
---
📌 요약
Key는 LLM Attention에서 토큰의 **특징(정체성)**을 나타내는 벡터.
Query와 매칭해 “관련성 점수”를 만들고, 그걸 기반으로 Value 정보를 가져옴.
용도: 문맥 이해, 정보 검색, RAG 같은 외부 지식 검색까지 확장 가능.
---
'⑤ IT Start > AI' 카테고리의 다른 글
파인튜닝(Fine-tuning) (0) | 2025.08.20 |
---|---|
ALI, LLM, RAG 용어 (0) | 2025.08.20 |
Security Considerations in AI-Robotics (0) | 2025.06.26 |
AI 관련 책 - 서준석 저서 (1) | 2025.02.13 |
GenAI 사이트 (0) | 2025.01.15 |