01 AI&LLM 개념
01 AI&LLM 개념
1. Note
- 기본적인 LLM과 AI개념
- 전체적인 맥락과 흐름을 파악할것!
- 과거의 AI가 특정한 목적과 학습을 중심으로 이루어져서, 범용적으로 들어가지 못했음.
- 지금은 범용이되면서 잘 활용함, 다시 돌아가지 않도록 주의!
- 토큰과 비용을 최소한으로 사용가능한 방법을 고민할 것!
2. AI 개념 & 과거의 AI 형태
1. 인공지능 (Artificial Intelligence, AI)
- 개념
- 인간의 지적 능력을 컴퓨터 소프트웨어로 구현한 포괄적인 개념
- 과거에는 사람이 모든 규칙을 일일이 입력하는 방식(Rule-based)이었으나,
- 현재는 스스로 학습하는 방식으로 진화함.
- 핵심 목표: 추론(Reasoning), 학습(Learning), 계획(Planning), 소통(Communication).
- 주요 활용 분야:
- 자연어 처리 (NLP): 기계 번역(파파고, 구글 번역), 챗봇, 감성 분석.
- 컴퓨터 비전: 자율주행차의 장애물 인식, 얼굴 인식 잠금 해제, 의료 영상 판독.
- 음성 인식 및 합성: STT(Speech-to-Text)를 통한 자막 생성, TTS(Text-to-Speech)를 통한 AI 목소리 구현.
2. 머신러닝 (Machine Learning, ML)
- 개념
- 데이터를 이용하여 컴퓨터를 ‘훈련’시키는 방법론
- 사람이 직접 알고리즘을 짜는 대신, 컴퓨터가 방대한 데이터 속에서 통계적 패턴을 찾아내도록 함.
- 학습 방식의 분류:
- 지도 학습 (Supervised Learning): 정답(Label)이 있는 데이터를 학습 (예: 스팸 메일 분류).
- 비지도 학습 (Unsupervised Learning): 정답 없이 데이터의 유사성으로 그룹화 (예: 고객 군집 분석).
- 강화 학습 (Reinforcement Learning): 보상과 처벌을 통해 최적의 행동을 학습 (예: 알파고).
3. 딥러닝 (Deep Learning, DL)
- 개념
- 인간의 뇌 구조인 생물학적 뉴런에서 영감을 얻은 인공 신경망(Artificial Neural Networks)을 활용한 머신러닝의 한 종류
- 특징
- 심층 신경망: 데이터가 여러 ‘은닉층(Hidden Layers)’을 통과하며 복잡한 특징을 스스로 추출
- 비정형 데이터에 강함: 텍스트, 이미지, 영상처럼 복잡하고 정해진 규격이 없는 데이터를 처리하는 데 압도적인 성능을 보임
- LLM의 기반: 우리가 흔히 쓰는 ChatGPT와 같은 거대언어모델(LLM) 역시 이 딥러닝 기술을 기반으로 탄생
4. 흐름
- 여기 단계까지는 범용적이지않고 데이터를 모으기가 어려움.
- 특정한 목적과 수단으로만 사용되었고, 그래서 일반적으로 사용하기 어려웠음
- 그래서 있어도 쉽게 접근하거나 데이터를 입히는데 오래걸리는 상황이 왔음.
- 그러다가 추후에 LLM 등장이후 범용적인 AI를 활용할 수 있게됨.
3. LLM
1. LLM
- LLM은 딥러닝의 한 분야인 트랜스포머(Transformer) 아키텍처를 기반
- 대규모 텍스트 데이터를 학습해 인간의 언어를 이해하고 생성하는 인공지능 모델
- 수십억 개 이상의 파라미터를 통해 문맥을 기반으로 다음 단어를 확률적으로 예측
- 이를 통해 번역, 요약, 질의응답, 코드 생성 등 다양한 작업을 하나의 모델로 수행할 수 있음
2. LLM의 ‘거대함’ 특징
- 거대한 데이터 (Large Data) / 얼마나 많이 알고 있느냐
- 인터넷 문서, 서적, 코드 등 페타바이트(PB) 단위의 방대한 텍스트를 학습
- 언어 패턴, 문체, 맥락 학습
- 코드/자연어 모두 대응 가능
- 거대한 매개변수 (Large Parameters) / 얼마나 복잡하게 생각할 수 있느냐
- 모델의 ‘지능’을 결정하는 파라미터가 수천억 개에 달함.
- 문맥 이해 능력 증가
- 미묘한 차이 구분 가능
- 긴 문장/복잡한 관계 처리 가능
- 범용성 (General Purpose) / 두 개의 “결과”
- 하나의 모델로 번역, 요약, 코딩, 창의적 글쓰기 등 수많은 작업을 동시에 수행할 수 있음
- 번역, 요약, 코드 생성, 질문 응답, 글쓰기 등 다양한 곳에서 활용이 가능해짐
3. LLM 학습 3단계
- 사전 학습 (Pre-training)
- 대규모 텍스트 데이터를 기반으로 언어의 구조, 문맥, 일반적인 상식을 학습하는 단계
- 쉽게 말해, 다양한 글을 읽으며 “말하는 법” 자체를 익히는 과정
- 미세 조정 (Fine-tuning)
- 사전 학습된 모델을 특정 목적이나 도메인(의료, 법률, 고객 상담 등)에 맞게 추가로 학습시키는 단계
- 이를 통해 보다 정확하고 전문적인 응답이 가능함
- 프롬프트 설계 (Prompt Design)
- 별도의 추가 학습 없이, 입력 문장(프롬프트)을 어떻게 구성하느냐에 따라 원하는 결과를 유도하는 방법
- 모델의 성능을 효과적으로 끌어내는 실질적인 활용 단계라고 볼 수 있음
4. 주요 AI 특징 (2026.03.23 기준 => 계속 바뀜)
| 모델명 | 개발사 | 주요 특징 및 강점 |
|---|---|---|
| GPT-4 / 4o | OpenAI | 현존하는 가장 강력한 범용성 논리적 추론과 창의적 작업에 탁월 텍스트/이미지/음성을 동시에 처리하는 옴니(Omni) 기능을 지원 |
| Claude (클로드) | Anthropic | 안전성과 가독성 인간의 가치관에 부합하는 답변(Constitutional AI)을 생성 자연스럽고 정중한 말투가 특징 |
| Gemini (제미나이) | 멀티모달 & 구글 생태계 텍스트뿐만 아니라 이미지, 영상 등을 깊게 이해 구글 문서, 이메일 등과 강력하게 연동 | |
| Llama (라마) | Meta | 오픈소스의 리더 누구나 내려받아 수정하고 사용할 수 있음 기업들이 자체적인 보안 AI를 구축할 때 가장 많이 활용 |
4. LLM 작동원리
1. 질의문 입력
- 사용자가 “Spring Boot란 무엇인가?”와 같은 자연어 문장을 입력
- LLM은 이 문장을 곧바로 이해하는 것이 아니라, 처리 가능한 데이터 형태로 쪼개기 시작
2. 토큰화 (Tokenization)
- 문장을 모델이 처리할 수 있는 작은 단위(토큰)로 쪼개는 과정
["Spring", "Boot", "란", "무엇", "인가", "?"]
- 나누는 이유
- 새로운 단어 대응 가능 :모르는 단어도 쪼개서 이해 가능
- 데이터 효율성 : 단어 전체를 다 외우는 것보다 효율적
- 언어 공통 처리 : 영어, 한국어, 코드까지 하나로 처리 가능
- 체크해야하는 이유
- 토큰은 AI의 과금 단위이자 메모리 단위
- AI 모델의 비용은 토큰 수로 결정
- GPT-4o 입력 $2.5/1M tokens, 출력 $10/1M tokens
3. 임베딩 (Embedding)
- 토큰(단어 등)을 모델이 이해할 수 있는 숫자 벡터로 바꾸는 과정
- 의미를 숫자 공간에 표현하는 것
- 비슷한 의미일수록 벡터값도 비슷
4. 트랜스포머(Transformer) 처리 / “지식의 저장소 및 정제”
- 임베딩된 단어들 사이의 관계를 계산해서 문맥을 이해하는 과정
- 트랜스포머의 핵심 단계 2가지
- 셀프 어텐션 (Self-Attention)
- 단어들끼리 서로를 비교하면서 중요한 관계를 찾는 단계
- 각 단어가 다른 단어들을 얼마나 참고할지 계산
- LLM이 인간의 질문 의도와 문맥을 이해하는 가장 중요한 핵심 기술
- 피드 포워드 (Feed Forward)
- 셀프 어텐션 결과를 더 정교하게 가공하는 단계
- 각 토큰(단어)의 위치에서 독립적으로 적용되는 비선형 신경망
- 각 단어 벡터를 개별적으로 변환
- 중요한 특징은 강화
- 불필요한 정보는 약화
- 셀프 어텐션 (Self-Attention)
5. 다음 토큰 예측
- 다음에 올 가장 확률 높은 토큰을 하나씩 찾아내는 과정을 가짐
- 예측 하는 이유
- 창의성과 유연성
- 매 순간 확률 기반으로 다음 토큰을 선택
- 같은 질문에도 결과가 조금씩 달라짐
- 딱 정해진 답이 아니라 자연스러운 문장 생성
- 맥락 유지 (Context 유지)
- 이전에 생성한 내용을 계속 입력으로 다시 사용
- 문장이 길어질수록 계속 누적됨
- 앞뒤 문맥, 논리, 문장 흐름 유지 가능
- 지식의 인출 (패턴 기반 재구성)
- 가장 확률 높은 조합을 선택
- 지식을 “꺼내는” 느낌이지만 실제로는 지식을 저장한 게 아니라, 패턴을 조합해서 재구성
- 창의성과 유연성
6. 토큰 선택 및 반복 (예시)
- 반복작업하면서 문장을 완성함
- 예시
| 단계 | 입력(Input / Context) | 모델 내부 처리 (어텐션+FFN) | 예측 결과 (Output) |
|---|---|---|---|
| 1회차 | “Spring Boot는” | 문맥 파악 후 확률 계산 | “Java” |
| 2회차 | “Spring Boot는 Java” | 전체 문맥 다시 읽기 | “기반의” |
| 3회차 | “Spring Boot는 Java 기반의” | 전체 문맥 다시 읽기 | “프레임워크” |
| 종료 | … “프레임워크입니다.” | 문장이 끝났음을 의미하는 <EOS> 토큰 예측 | (멈춤) |
7. 최종 응답 생성
- 생성된 토큰 뭉치를 다시 인간이 읽을 수 있는 텍스트로 변환하여 화면에 출력
5. 비용과 토큰
1. 비용과의 관계 (직설적 영향)
- 토큰 수 = 돈: 문장을 잘게 쪼개서 토큰 수가 많아질수록 비용은 선형적으로 증가함.
- 언어별 차이: 영어는 단어 단위로 깔끔하게 잘리는 편이지만, 한글은 형태소 분석 특성상 같은 의미라도 영어보다 1.5배~2배 더 많은 토큰을 소모하는 경우가 많음
2. 성능과의 관계 (효율적 영향)
- 문맥 유지 능력
- 모델이 한 번에 기억할 수 있는 ‘용량(Context Window)’은 토큰 개수로 정해져 있음.
- 토큰화를 너무 낭비하게 하면, 모델이 대화의 앞부분을 금방 잊어버리게 되어 성능이 떨어짐
- 학습 효율
- 토큰이 너무 잘게 쪼개지면(글자 단위 등), AI가 단어 사이의 관계를 파악하는 데 더 많은 연산이 필요해져 답변 속도가 느려짐
3. 토큰을 줄이는 포인트
- 불필요한 서술어 및 공백 제거
- Bad: “안녕하세요, 제가 지금 스프링 부트를 공부하고 있는데, 스프링 부트가 정확히 무엇인지 아주 자세하고 친절하게 설명해 주실 수 있을까요?” (약 40~50토큰)
- Good: “Spring Boot 정의 및 특징 요약해줘.” (약 10~15토큰)
- 영어 혼용 및 전문 용어 사용
- 한글 조사(
~은/는/이/가)나 서술어는 토큰을 많이 잡아먹음. - 전문 용어는 영어로 쓰는 것이 토큰 효율이 좋음
- 예시: “자바 기반의 웹 프레임워크” 보다는 “Java Web Framework” 영어가 토큰을 덜 사용함
- 한글 조사(
- 출력 형식 지정 (Output Formatting)
- AI가 구구절절 서론을 쓰지 않게 제약 조건을 걸기
- 예시) “답변은 불필요한 인사말 없이 불렛 포인트로만 작성해줘.”
- 예시) “핵심 내용만 3문장 이내로 요약해줘.”
- 시스템 프롬프트 활용
- 반복되는 지시사항은 대화마다 넣지 말고, ‘시스템 역할(System Role)’에 한 번만 정의하여 대화 도중 발생하는 중복 토큰을 방지
This post is licensed under CC BY 4.0 by the author.