트랜스포머 이후 AI 언어 처리 이해: 6가지 실습으로 배우는 AI의 작동 원리
트랜스포머 이후 AI 언어 처리 이해: 6가지 실습으로 배우는 AI의 작동 원리
📌 강의 개요
- 제목: 듣고나면 GPT, 제미나이 이해 수준이 달라지는 강의
- 강사: 양실장의 바이브코딩대학
- 날짜: 2026년 5월 22일
- 조회수: 17,675회
- URL: https://youtu.be/Z_zR-WanGuQ?si=Fd3TCay4WgTnoNMK
##
1. 토크나이징과 언어 처리
graph LR
A[원본 텍스트] --> B[토크나이저]
B --> C[토큰 시퀀스]
C --> D[임베딩 변환]
D --> E[Attention 처리]
- 토큰화 현상:
- “안녕하세요” → 8개 토큰으로 분할
- 영어 “How are you?” → 6개 토큰
- 한국어는 영어보다 2~3배 많은 토큰 필요
- 컨텍스트 윈도우 효율성 저하
- 토큰화 특성:
- 단어 단위가 아닌 의미 단위로 분할
- 모델의 처리 방식 결정에 직접적 영향
- 비용 및 처리 용량에 직접적 영향
2. 임베딩과 의미 표현
# 임베딩 유사도 측정 예시
def calculate_similarity(word1, word2):
embedding1 = model.encode(word1)
embedding2 = model.encode(word2)
return cosine_similarity(embedding1, embedding2)
# 결과 예시
print(calculate_similarity("사과", "배")) # 0.34
print(calculate_similarity("사과", "자동차")) # 0.26
print(calculate_similarity("왕", "여왕")) # 0.60
- 임베딩 특징:
- 단어의 의미적 위치 숫자화
- 의미적으로 가까운 단어는 벡터 공간에서 가깝게 표현
- 모델 버전에 따라 임베딩 결과 차이 발생
- 문맥에 따라 동일한 단어의 임베딩 결과 다름
3. Attention 메커니즘
graph TD
A[Query] --> B[Attention 계산]
C[Key] --> B
D[Value] --> B
B --> E[최종 출력]
- Attention 역할:
- 문장 내 단어 간 관계 분석
- Q(Query), K(Key), V(Value) 3가지 역할 계산
- 각 단어의 중요도 가중치 적용
- 12개의 트랜스포머 블록과 12개 헤드로 구성된 복잡한 구조
4. 생성 전략과 출력 제어
# 생성 전략 비교
def generate_text(prompt, temperature=0.7, top_p=0.9):
response = model.generate(
prompt,
temperature=temperature,
top_p=top_p,
max_tokens=12
)
return response
# 결과 비교
print(generate_text("오늘 점심으로", temperature=0.1)) # 결정적 출력
print(generate_text("오늘 점심으로", temperature=1.8)) # 창의적 출력
- 생성 전략:
- Temperature: 출력 다양성 조절 (0.1~1.8)
- Top-P: 확률 분포 기반 후보 필터링
- 생성 전략은 출력 결과의 다양성과 일관성 결정
5. 모델 한계와 실제 적용
# 할루시네이션 예시
response = model.generate(
"2019년 대한민국 인공지능 학회지에 개제된 한국어 감성 분석을 위한 계층적 문맥 임베딩 모델 논문의 주요 내용과 저자를 요약해 주세요",
temperature=1.2
)
print(response)
# 출력: "해당 논문은 한국어 감성 분석 분야에서..."
# 지식 단절 예시
response = model.generate("오늘 날짜와 현재 달러 환율을 알려 주세요")
print(response)
# 출력: "제 지식은 2023년 10월 3일까지입니다..."
- 모델 한계:
- 할루시네이션: 존재하지 않는 정보 생성
- 지식 단절: 모델 학습 이후 정보 접근 불가
- 컨텍스트 윈도우 제약: 처리 가능한 토큰 수 제한
6. API 기반 대화 시스템
# API 호출 예시
import requests
API_URL = "https://api.example.com/v1/chat"
headers = {"Authorization": "Bearer YOUR_API_KEY"}
def chat_with_model(messages):
response = requests.post(
API_URL,
headers=headers,
json={"messages": messages}
)
return response.json()
# 시스템 프롬프트 예시
messages = [
{"role": "system", "content": "당신은 친절한 과학 선생님입니다."},
{"role": "user", "content": "블랙홀이 무엇인가요?"},
{"role": "assistant", "content": "블랙홀은 중력이 매우 강해..."},
{"role": "user", "content": "실제 예시를 들어 주세요"}
]
response = chat_with_model(messages)
print(response)
- API 시스템 특징:
- 시스템/사용자/어시스턴트 역할 구분
- 대화 히스토리 누적 관리
- 컨텍스트 윈도우 관리 중요성 강조
🎯 결론
이 강의는 트랜스포머 이후 AI 언어 처리 메커니즘을 6가지 실습을 통해 체계적으로 설명합니다. 토크나이징부터 API 시스템까지의 전체 과정을 시각적으로 이해하는 데 도움이 됩니다. 특히 모델의 한계와 실제 적용 시 고려해야 할 사항을 명확히 설명하여 실무 적용에 필요한 핵심 개념을 습득할 수 있습니다.
📚 참고 자료
- 바이브코딩대학 웹사이트: https://bit.ly/4sh1g2d
- 다음 강의: RAG·Tool Use·Agent