Developer's Development

3.3.9 [LLM] 기초 및 응용 본문

LLM

3.3.9 [LLM] 기초 및 응용

mylee 2025. 9. 1. 20:04
LLM의 이해

 

LLM(Large Language Model)은 대규모 데이터를 기반으로 학습된 초거대 언어 모델로, 자연어 생성, 번역, 요약 등 다양한 언어 관련 작업을 수행할 수 있는 딥러닝 모델이다.

 

  • LLM의 등장 (GPT-3)

👉🏻 발전 과정

기존 RNN → LSTM  → Transformer 구조로 발전

Transformer 기반의 언어 모델들이 등장하며 LLM 시대 개막

 

👉🏻 GPT-3란

OpenAI에서 개발한 초거대 언어 모델

1750억 개의 파라미터를 사용해 강력한 언어 생성 능력을 갖춤

 

👉🏻 등장 배경

컴퓨팅 자원의 발전과 대규모 데이터 활용 기술의 발전으로 가능해짐

기존 모델보다 훨씬 큰 파라미터를 통해 복잡한 문맥 이해

 

👉🏻 특징

광범위한 자연어 처리 작업 가능: 텍스트 생성, 번역, 코딩 등

사전 학습(Pre-training) 후 추가 학습 없이도 다양한 작업 수행

 

👉🏻 이전 모델과의 비교

GPT-2(15억 개 파라미터) 대비 비약적인 성능 향상

BERT, T5 등의 모델과 차별화된 자기회귀(Auto-regressive) 방식 채택

 

  • Pre-training 단계 (사전훈련)

대규모 데이터셋에서 언어의 구조와 의미를 학습하고, 주로 다음 단어를 예측하는 방식으로 학습한다.

 

👉🏻 사전 학습 방식

- 자기회귀(Auto-regressive) 모델(GPT 계열): 한 방향(왼쪽 → 오른쪽)으로 학습하며, 다음 단어 예측

- 마스크드 언어 모델(Masked Language Model, BERT 계열): 문장 내 일부 단어를 마스킹하여 예측하도록 학습

 

❓Fine-tuning과 차이점

- Pre-training은 일반적인 언어 이해 학습

- Fine-tuning은 특정 작업에 맞게 추가 학습

[Fine-tuning의 발전]

- Instruction-tuning: 명령어 기반으로 모델을 미세 조정

- RLHF(Reinforcement Learning from Human Feedback): 인간 피드백을 활용한 강화 학습으로 성능 향상

 

  • 인컨텍스트러닝 (In-context Learning) 

모델이 별도의 추가 학습 없이 입력 맥락(Context)만으로 문제를 해결하는 기법이다.

ex)

- 간단한 단어 패턴 학습: 입력 프롬프트(예제)를 제공하면, 모델이 이를 기반으로 규칙을 찾아 적절한 답변을 생성

- 번역 모델: 프롬프트만 제공하고, 별도의 예제 없이 모델이 문제를 해결

- 이메일 분류: 몇 개의 예제를 제공하면, 모델이 해당 패턴을 인식하여 예측 가능

- 코드 자동 생성: 한 개의 예제만 보고, 비슷한 코드를 생성

- LLM을 이용한 질의응답: 질문과 답변 예제를 제공하여, 모델이 맥락을 이해한 뒤 새로운 질문에 답변

 

  • LLM의 종류
모델명 특징 학습 방식 주요 용도
GPT
(Generative Pre-trained Transformer)
자기회귀 방식
(Autoregressive)으로 다음 단어를 예측하여 생성
단방향 (왼쪽 → 오른쪽) 학습 텍스트 생성, 문서 작성, 코딩 보조
BERT
(Bidirectical Encoder
Representations from
Transformers)
양방향 학습을 통해 문맥 이해를 강화 양방향 학습 (좌우 문맥을 모두 활용) 문장 이해, 질의응답(QA), 감성분석
TS
(Text-to-Text Transfer
Transformer)
모든 자연어 처리를 텍스트 입력-출력 문제로 변환하는 범용 모델 Seq2Seq (인코더-디코더 구조) 번역, 요약, 문서 생성. 문법 교정
ChatGPT GPT 기반으로 대화형 작업에 최적화된 모델 자기회귀 학습 + 
Reinforcement Learning from 
Human Feedback(RLHF)
챗봇, 고객 지원, 대화형 AI
Claude Anthropic에서 개발한 AI 모델로, 안전성과 윤리적 고려를 강화 자기회귀 학습 + RLHF 대화형 AI, 문서 작성, 코딩 보조
Gemini
(구 Bard)
Google DeepMind에서 개발한 멀티모달 모델로, 이미지, 음성 등도 처리 가능 Transformer 기반, 멀티모달 학습 대화형 AI, 검색, 멀티모달 생성
LLaMA
(Large Language Model
Meta AI)
Meta에서 개발한 경량화된 LLM, 연구 및 오픈소스 AI 용도로 사용 자기회귀 학습 연구용 LLM, 로컬 AI 모델 실행

 

  • LLM의 활용 사례

1. 텍스트 생성: 소설, 기사 작성

2. 코딩 보조: 코드 자동 완성

3. 고객 응대: 챗봇 시스템

4. 교육 보조: 문제 풀이 및 설명 제공

5. 과학 논문 요약: 복잡한 연구 논문의 핵심 요약

6. 법률 문서 분석: 계약서, 법률 문서 해석 지원

7. 의료 상담 보조: AI 기반 의료 지식 제공

 

  • LLM의 한계 및 윤리적 문제

👉🏻 할루시네이션

환각(Hallucination)이란 모델이 사실이 아닌 정보를 생성하는 것으로, 학습 데이터의 불완전성, 과도한 일반화로 인해 발생한다.

- 보완 방법

: 지식 그래프 활용: 외부 데이터와 연결

: Fact-checking: 출력 결과 검증

 

👉🏻 다른 한계점

1. 편향(Bias): 학습 데이터에 존재하는 편향이 반영될 가능성

2. 프라이버시 문제: 사용자 입력 데이터의 유출 가능성

3. 계산 비용(비효율성): 모델 크기와 컴퓨팅 자원의 부담 증가

 

  • 최신 LLM 동향

👉🏻 OpenAI - ChatGPT 5

코딩과 에이전트 기반(agentic) 작업에 최적화

코딩에서 특히 뛰어난 성능을 보임

개발자 협업에 이상적인 모델

에이전트형 작업수행 능력도 크게 향상됨

gpt-oss-120b, gpt-oss-20b 등 open-weight 모델 공개

 

👉🏻 Anthropic - Claude 4 

도구 사용을 통한 확장된 사고 (웹 검색 등)

복잡한 장기 작업 수행 능력이 뛰어남

 

👉🏻 Meta - LLaMA 4

다양한 파라미터 크기를 제공하는 오픈소스 모델

Mixture-of-Experts(MoE) 아키텍처 채택으로 파라미터는 17B 수준으로 유지하면서 대규모 모델 구현 가능

멀티모달 설계

맥락 길이 확장

 

👉🏻 Google - Gemini 2.5

텍스트, 이미지, 오디오, 비디오 통합 입력

1M 토큰 컨텍스트 지원

복잡한 추론과 실시간 멀티모달 처리 강점

'Deep Think' 모드는 다단계 사고 및 강화된 복잡 추론에 특화함

 

👉🏻 DeepSeek - DeepSeek R1

고급 추론 기능을 통해 복잡한 문제를 보다 효과적으로 해결하여 심층적인 분석 기술이 필요한 애플리케이션에 적합

685B를 갖춘 인상적인 아키텍처를 자랑하는 open-weight 모델

 

👉🏻 xAI - Grok 4

Elon Musk의 AI 회사 xAI에서 개발중인 모델

256K 토큰 컨텍스트 및 멀티모달 지원

 

 

LLM의 사용

 

  • 프롬프트 (Prompt)

모델에게 작업을 요청하는 입력 텍스트이다.

 

👉🏻 프롬프트 설계의 중요성: 명확하고 구체적인 지침이 정확한 결과로 이어진다.

 

👉🏻 프롬프트 설계 기법

1. 역할 부여(Role Prompting): 모델이 특정 역할을 수행하도록 지시

2. 단계적 추론(Chain-of-Thought, CoT): 모델이 논리적 사고를 하도록 유도

3. 명확한 제약 조건 부여: 모델의 응답을 특정 형식이나 길이로 제한

4. 예제 기반 학습(Few-shot Prompting): 모델이 제공된 예시를 바탕으로 패턴을 학습

* [참고] Zero-shot & One-shot & Few-shot
1. Zero-shot: 예시없이 작업을 수행하는 것
  - 장점: 빠르고 간단함
  - 단점: 정밀도가 낮을 수 있음
2. One-shot: 하나의 예시 제공 후 작업을 수행하는 것
  - 장점: 예제 기반으로 성능 향상
  - 단점: 한 개의 예제로는 부족할 수도 있음
3. Few-shot: 여러 예시를 제공하는 것
  - 장점: 예제가 많아질수록 정밀도 증가
  - 단점: 토큰 사용량 증가 → 비용 증가

 

5. 반응 개선(Iterative Refinement): 프롬프트를 여러 차례 수정하여 최적화

 

  • LLM 사용 사례

텍스트 생성, 번역, 질의응답, 코드 생성, 데이터 요약, 고객 서비스, 의료 분야, 법률 검토

 

  • LLM 체험

1. Playground 활용

OpenAI Playground 플랫폼을 통해 사용자가 프롬프트를 입력해 LLM의 기능을 체험할 수 있다.

https://platform.openai.com/

 

👉🏻 주요 기능

1) 모델 선택: text-davinci-003, gpt-3.5-turbo, gpt-4 등

2) 프롬프트 입력: 원하는 작업 요청 입력

3) 매개변수 조정

  - Temperature: 응답 창의성 조절 (낮을수록 일관된 응답, 높을수록 창의적 응답)

  - Max Tokens: 출력 길이 설정

  - Top-p, Frequency Penalty, Presence Penalty 등 추가 옵션

4) 결과 확인: 즉시 모델 응답 확인 가능

 

👉🏻 실습 예제

텍스트 생성, 번역, 질의응답, 코드 생성

 

2. API 방식 LLM 호출

프로그램에서 LLM을 활용하기 위해 HTTP 요청을 통해 모델과 상호작용하는 방법이다.

 

👉🏻 호출 흐름

1. API 키 발급: OpenAI 계정에서 API 키 생성

2. 프롬프트 작성: 모델에 요청할 작업 생성

3. 요청 매개변수 설정

  - model(사용할 모델), max_tokens(출력 길이 제한), temperature(응답 창의성 조절)

4. 응답 받기: 모델이 생성한 텍스트 활용

 

👉🏻 실제 응용 예제

- Flask/FastAPI로 간단한 LLM 기반 웹서비스 구축

- Stramlit을 활용하여 사용자 인터페이스 제공

- JSON 응답을 받아 데이터 분석 및 시각화

 

👉🏻 장점: 클라우드 기반 사용, 다양한 응용 가능

 

❗ 주의사항

API 키 보안 유지, 토큰 사용량에 따른 과금

- API 호출의 과금 방식

  - 사용된 토큰 수를 기준으로 과금하며, 입력 토큰(Input) + 출력 토큰(Output)의 합계로 계산

❓ 토큰
ex) "ChatGPT is amazing!" → 6개의 토큰
Input 토큰: 사용자 요청 텍스트
Output 토큰: 모델의 응답 텍스트

 

  - Input 토큰: 사용자가 입력한 텍스트

  - Output 토큰: 모델이 출력한 텍스트

  - 총 토큰 수 = Input + Output

 

- 모델별 토큰 가격 차이

gpt-4: 1K 토큰당 $0.03 (Input), $0.06 (Output)

gpt-3.5-turbo: 1K 토큰당 $0.0015 (Input), $0.002 (Output)

 

- 비용 절감 방법

짧고 효율적인 프롬프트 설계

필요 이상으로 긴 응답 방지 (Max Tokens 설정)

시스템 프롬프트 활용하여 일관된 응답 유지

 

 

LLM 주요 파라미터

 

  • Top P

확률적 필터링을 통해 모델의 출력 단어를 제한하는 파라미터이다.

- Top P는 출력 확률 분포의 상위 p%를 포함하도록 설정한다.

- p = 0.9라면, 출력 확률이 가장 높은 단어들의 합이 90% 이상인 단어만 고려된다.

- 작동 방식

  1. 모델은 다른 단어의 확률을 계산한다.

  2. 확률 합계가 p를 넘는 단어만 선택 가능하다.

    - p = 1.0: 모든 단어를 고려(완전 다양성)
    - p = 0.9: 상위 90% 확률의 단어만 사용(더 집중된 응답)
    - p = 0.5: 확률적으로 상위 50% 단어만 사용(더 보수적인 응답)

 

  • Maximum Tokens

생성되는 출력의 최대 길이를 설정한다.

- 입력과 출력의 토큰 합계는 모델의 토큰 제한(ex. 4096 토큰)을 넘을 수 없다.

  - 짧은 응답이 필요한 경우 작은 값을 설정한다.

  - 긴 텍스트 요약이나 생성에는 더 큰 값을 사용한다.

 

  • Temperature

출력의 창의성을 제어하는 파라미터이다.

- 값이 낮을수록 더 일관되고 결정적인 결과를 제공한다.

- 값이 높을수록 더 다양한 출력이 가능하다.

  - T = 0.2: 매우 일관된 결과

  - T = 0.8: 창의적이고 다양한 결과

 

 

LLM 적용

 

  • 문장 생성

주어진 프롬프트를 바탕으로 자연스러운 문장을 작성하는 기능

 

👉🏻 작동 원리: 프롬프트 입력 → 단어 예측  → 문장 생성

👉🏻 주요 파라미터

- temperature: 창의성 조정

- max_tokens: 출력 길이 제한

- top_p: 단어 선택 다양성 조정

👉🏻 활용 사례

창의적 콘텐츠 작성: 소설, 시, 광고 문구 등

교육 및 학습: 설명, 연습 문제 생성 등

 

  • 질의응답

사용자의 질문에 대해 LLM이 문맥에 맞는 답변을 생성하는 작업

 

👉🏻 작동 원리: 프롬프트 입력  → 문맥 분석 (질문 의도를 파악해 적절한 답변 생성)  → 결과 출력

👉🏻 주요 파라미터

- temperature: 응답의 창의성 조절

- max_tokens: 답변 길이 제한

- top_p: 출력 다양성 조정

👉🏻 활용 사례

교육 플랫폼(실시간 학습 지원)

고객 지원(제품 및 서비스 문의 응답)

정보 검색

문서 요약

 

  • 요약

LLM을 사용하여 긴 텍스트에서 핵심 정보를 추출하거나 재구성하는 작업

 

👉🏻 작동 원리

1. 입력 텍스트를 분석하여 주제와 구조 이해

2. 핵심 정보를 추출하거나 재구성

3. 간결한 요약 문장을 생성해 출력

 

👉🏻 주요 파라미터

- max_tokens: 요약 길이 제한
- temperature: 표현의 창의성 조절

- top_p: 다양한 단어 선택 가능성 제어

 

👉🏻 활용 사례

뉴스 및 문서 요약: 긴 기사나 보고서를 간략히 정리 (추상적 요약)

교육 자료 요약: 논문이나 연구의 핵심 내용 추출 (추출적 요약)

비즈니스: 회의 기록이나 보고서 요약

 

  • 번역

입력 텍스트를 하나의 언어에서 다른 언어로 변환하는 작업 (문맥의 의미를 이해해 자연스러운 번역 제공)

 

👉🏻 작동 원리

1. 프롬프트 입력: 번역 요청과 대상 언어 지정

2. 문맥 이해: 텍스트의 구조와 의미 분석

3. 번역 생성: 문법과 어휘를 반영해 번역 작성

4. 결과 출력: 번역된 문장 반환

 

👉🏻 주요 파라미터

- temperature: 번역의 창의성 조절

- max_tokens: 번역 길이 제한

- top_p: 단어 선택 다양성 조정

 

👉🏻 활용 사례

이메일, 문서 번역

학술 자료 번역

e-러닝 콘텐츠 번역

 

  • 채팅

사용자와 대화형으로 상호작용하며, 고객 지원, 교육, 엔터테인먼트 등 다양한 분야에서 활용

 

👉🏻 작동 원리

1. 프롬프트 작성: 사용자 입력 기반 대화 시작

2. 문맥 이해: 이전 메시지를 참고해 문맥 유지

3. 응답 생성: 적절한 정보와 어조로 응답 작성

4. 결과 출력: 생성된 응답 제공

 

👉🏻 주요 특징

- 문맥 유지: 대화 흐름 이해 및 연속적 응답

- 다양한 어조: 친근함, 유머 등 상황에 맞는 대화

- 다목적 활용: 정보 제공, 추천, 코딩 등 

 

👉🏻 활용 사례

고객 지원: 문제 해결, 제품 정보 제공

교육: 학습 질문 응답 및 설명

엔터테인먼트: 유머, 이야기 생성

 

  • 그 외 다양한 Use Case

1. 코드 생성: Python, JavaScript, SQL 등 코드 작성

2. 창작 활동: 소설, 시, 마케팅 문구 생성

3. 데이터 분석: 데이터 요약, 패턴 탐지

 

  • LLM의 한계 및 해결 방법

👉🏻 한계점

사실과 다른 정보를 생성할 가능성 (Hallucination)

편향된 응답 가능성 및 윤리적 문제

긴 컨텍스트 유지 어려움

 

👉🏻 해결 방법

system prompt 활용하여 방향 설정

모델 fine-tuning 적용

Human-in-the-loop 검증 시스템 도입