LLM (Large Language Model, 대규모 언어 모델)
정의
**LLM (Large Language Model)**은 수십억 개 이상의 파라미터를 가진 신경망 모델로, 거대한 텍스트 데이터로 학습하여 자연어를 이해하고 생성할 수 있는 AI 모델. 인간 언어의 맥락과 의도를 파악하여 질문에 답하고, 텍스트를 생성하고, 복잡한 작업을 수행할 수 있다.
핵심 특징
| 특징 | 설명 |
|---|---|
| 규모 | 수십억~수천억 파라미터 (GPT-3: 175B, Claude: 100B+) |
| 학습 데이터 | 인터넷 전체, 책, 논문 등 수조 개 토큰 |
| 능력 | 언어 이해, 생성, 번역, 요약, 질문 응답, 추론 |
| 특징 | Few-shot 학습, 맥락 보존, 창의성 |
작동 원리
1. 토큰화 (Tokenization)
입력 텍스트: "오늘은 날씨가 좋아요"
↓
토큰 분해: ["오늘", "은", "날씨", "가", "좋아요"]
↓
숫자 변환: [102, 45, 892, 23, 567]
↓
LLM 입력
2. 임베딩 (Embedding)
각 토큰을 벡터 공간에서 표현:
"오늘" → [0.2, -0.1, 0.8, ...]
"날씨" → [0.5, 0.3, -0.2, ...]
"좋아요" → [0.9, 0.2, 0.1, ...]
3. 트랜스포머 (Transformer)
Attention 메커니즘으로 단어 간 관계 파악:
"오늘은 날씨가 좋아요"
↓
"날씨"가 중요 단어임을 인식
"좋아요"가 "날씨"를 수식함을 이해
4. 출력 생성 (Output Generation)
다음 토큰 예측:
"오늘은 날씨가 좋아요 ___"
→ 확률 분포: "그래서"(30%), "날씨가"(20%), "목욕"(15%), ...
→ "그래서" 선택
→ 다음 토큰 반복
주요 LLM 모델
오픈 소스
- LLaMA (Meta): 7B, 13B, 70B 파라미터
- Mistral: 경량 고성능 모델
- Falcon: 180B 대규모 모델
상용 API
| 모델 | 개발사 | 특징 |
|---|---|---|
| GPT-4 | OpenAI | 최고 성능, 멀티모달 (이미지+텍스트) |
| GPT-3.5 | OpenAI | 비용 효율적, 빠른 응답 |
| Claude 3 | Anthropic | 안전성 강조, 긴 컨텍스트 |
| Gemini | 멀티모달, 실시간 업데이트 | |
| Llama 2 | Meta | 오픈소스, 미세조정 가능 |
LLM의 능력
✅ 언어 이해 (NLU)
입력: "Apple이 새로운 아이폰을 출시했습니다."
LLM 이해:
- Apple = 기업 (개별 사과 아님)
- 새로운 = 최근 발표
- 아이폰 = 스마트폰 제품
→ 핵심: 애플이 신제품 스마트폰을 발표함
✅ 텍스트 생성 (NLG)
프롬프트: "생산성 향상 팁 3가지를 제시해줘"
→ LLM이 창의적으로 답변 생성
→ 매번 다른 표현과 내용
✅ 번역 (Machine Translation)
입력: "Hello, how are you?" (영어)
출력: "안녕하세요, 어떻게 지내세요?" (한글)
✅ 요약 (Summarization)
긴 문서(100페이지) → LLM → 1페이지 요약
→ 핵심 내용 추출
✅ 질문 응답 (Question Answering)
질문: "Python에서 리스트를 어떻게 정렬할까?"
답변: "list.sort() 메소드를 사용하거나..."
✅ 추론 (Reasoning)
문제: "A=2, B=3, C=A+B. C의 값은?"
LLM이 단계별로 계산
→ 정답: 5
✅ 코드 생성 (Code Generation)
요청: "파이썬으로 팩토리얼 함수를 작성해줘"
출력:
def factorial(n):
if n <= 1:
return 1
return n * factorial(n-1)
LLM의 한계
❌ 할루시네이션 (Hallucination)
질문: "달에 사람이 몇 명 있을까?"
LLM: "현재 달에는 약 2,000명이 상주하고 있습니다." (거짓)
→ 그럴듯하지만 실제로는 0명
❌ 최신 정보 부족
학습 데이터: 2023년까지
질문: "2024년 최신 뉴스는?"
→ 모름. 학습 데이터에 없음
❌ 복잡한 계산
질문: "123456 × 789012 = ?"
LLM: "부정확한 답변" (높은 오류율)
→ 계산기: 97,408,139,072 (정확)
❌ 상식 부족
질문: "물이 가열되면 어떻게 되나?"
LLM: "정답" (확률적으로 맞음)
"물의 끓는점은 정확히 100℃인가?"
LLM: 헷갈림 (정확한 물리 상수 모름)
❌ 추론 깊이 제한
다단계 논리 추론:
"A는 B의 부모, B는 C의 부모, D는 A의 부모라면...?"
LLM: 단계가 너무 복잡하면 실수
LLM과 온톨로지의 결합
LLM의 약점 + 온톨로지의 강점
LLM의 문제점:
- 할루시네이션 (가짜 정보 생성)
- 구조화된 정보 부족
- 정확한 추론 어려움
온톨로지의 이점:
- 명확한 정보 구조
- 관계 정의
- 논리적 추론 규칙
결합 방식
1. 온톨로지로 기본 정보 정의
└─ Customer, Order, Product 클래스 정의
2. LLM이 자연어 입력 이해
└─ "고객이 구매한 가장 비싼 상품은?"
3. 온톨로지 기반 쿼리 생성
└─ MATCH (c:Customer)-[:purchased]->(p:Product)
RETURN p ORDER BY p.price DESC
4. LLM이 자연어로 답변
└─ "John Doe가 구매한 가장 비싼 상품은 Laptop입니다."
결과: 정확성 + 자연어 이해 + 구조화된 정보 모두 확보
Graph-RAG에서의 LLM 역할
사용자 질문
↓
LLM이 의도 파악 & 필요 정보 식별
↓
온톨로지 기반 그래프 검색
↓
관련 정보 수집 (정확한 사실)
↓
LLM이 수집된 정보로 답변 생성 (할루시네이션 최소화)
↓
신뢰할 수 있는 답변 제공
실무에서의 LLM 활용
그래프-RAG
- 온톨로지와 결합하여 정확한 검색 및 생성
에이전트 (Agents)
- LLM을 의사결정 엔진으로 활용
- 도구 호출 및 자동화
맞춤형 파인튜닝
- 도메인 특화 모델 구축
- 한국어, 업무용어 학습
관련 개념
- Generative-AI — 생성형 AI 전체 개념
- Embedding — 텍스트 벡터화
- RAG — LLM + 검색 통합
- Graph RAG — LLM + 그래프 데이터베이스
- Prompt-Engineering — LLM을 잘 사용하는 기법
- Few-shot-Learning — LLM의 학습 방식
- Semantic Layer — LLM과 온톨로지의 결합 지점
주요 논문:
- Attention Is All You Need (Transformer)
- Language Models are Unsupervised Multitask Learners (GPT-2)
- Language Models Few-Shot Learners (GPT-3)
관련 도구: OpenAI API, Hugging Face, Llama, Claude API