본문 바로가기
TIL _Today I Learned/2024.11

[DAY 84] 중간 프로젝트_ LLM

by gamdong2 2024. 11. 18.
[천재교육] 프로젝트 기반 빅데이터 서비스 개발자 양성 과정 9기
학습일 : 2024.11.18

📕 학습 목록

  • LLM
  • RAG
  • AI Agent

 

📗 기억할 내용

1. LLM

1) 정의

  • LLM(Large Language Model)은 대규모 언어 모델을 의미하며, 자연어 처리(NLP)를 위한 AI 모델임
  • 방대한 양의 텍스트 데이터를 학습하여 인간처럼 텍스트를 생성하고 이해할 수 있도록 설계된 모델

 

2) 주요 특징

① 대규모 데이터 학습

  • 인터넷, 책, 논문 등 방대한 양의 텍스트 데이터를 기반으로 학습
  • 다양한 언어, 주제, 맥락을 이해하고 처리할 수 있음

② 딥러닝 기반 구조

  • 주로 Transformer 구조를 기반으로 설계됨
  • Transformer는 자연어 이해생성에서 뛰어난 성능을 보임

 ③ 문맥과 맥락 이해

  • 단순히 단어를 나열하는 것이 아니라, 문맥을 이해하고 자연스러운 문장을 생성
  • 질문에 적합한 답을 제공하거나, 복잡한 텍스트를 요약 가능

④ 범용성

  • 특정 도메인에 국한되지 않고, 법률, 의료, 교육 등 다양한 분야에 활용 가능
  • 추가 학습(파인튜닝)을 통해 특정 작업(예: 요약, 번역)에 최적화 가능

 

3) LLM의 주요 역할

 

  • 텍스트 생성: 소설, 기사, 이메일, 코드 등을 자동 생성
  • 질의응답: 질문에 대한 답변 생성
  • 문서 요약: 대량의 텍스트를 간결하게 요약
  • 번역: 다국어 간의 텍스트 번역
  • 감정 분석: 텍스트에서 감정을 분석(긍정, 부정 등)
  • 추천 시스템: 사용자 선호를 바탕으로 콘텐츠 추천

 

4) 대표적인 LLM

 

  • GPT (Generative Pre-trained Transformer):
    • OpenAI에서 개발한 모델
    • ChatGPT, GPT-4 등이 포함됨
  • BERT (Bidirectional Encoder Representations from Transformers):
    • Google에서 개발
    • 텍스트 이해 작업에 강점
  • PaLM (Pathways Language Model):
    • Google의 최신 LLM
  • LLaMA (Large Language Model Meta AI):
    • Meta에서 개발한 언어 모델
  • Claude:
    • Anthropic에서 개발된 LLM

 

 

 

5) LLM의 작동 원리

 

  • 프리트레이닝(Pre-training)
    • 대량의 데이터를 기반으로 언어 패턴과 구조를 학습
    • 예: "고양이는 ___"에서 빈칸에 "귀엽다"와 같은 단어를 예측
  • 파인튜닝(Fine-tuning):
    • 특정 도메인(의료, 법률 등)이나 작업(번역, 요약)을 위해 추가 학습
  • 입력-출력 처리
    • 입력: 사용자가 텍스트를 입력
    • 출력: 입력의 맥락을 이해하고 적합한 답변이나 결과를 생성

 

 

6) LLM의 한계

 

  • 사실성 부족: 학습 데이터가 오래되거나 잘못된 정보일 경우, 부정확한 답변을 생성
  • 큰 자원 요구: 훈련과 추론에 고사양의 GPU 및 대량의 메모리 필요
  • 윤리적 문제: 부적절한 콘텐츠 생성이나 편향성

 

7) LLM의 활용 분야

 

  • 교육: 학생의 질문에 답변하거나 학습 자료 생성
  • 비즈니스: 고객 서비스 챗봇, 이메일 자동화
  • 의료: 의학 논문 요약, 환자 질의 응답
  • 법률: 판례 검색 및 요약
  • 콘텐츠 제작: 기사 작성, 소셜 미디어 콘텐츠 생성

 

 

 

2. RAG

1) 정의

  • RAG(Retrieval-Augmented Generation) 는 언어 모델(LLM)과 정보 검색(Retrieval) 기술을 결합하여 보다 정확하고 신뢰할 수 있는 텍스트를 생성하는 방법론
  • RAG는 대규모 언어 모델의 한계를 보완하고, 최신 정보나 대규모 외부 데이터에 기반한 응답을 제공하기 위해 고안됨

 

2) 작동 방식

① 사용자의 입력(질문)

  • 사용자가 질문을 입력하면, 모델은 이를 기반으로 외부 데이터베이스에서 필요한 정보를 검색

② 정보 검색 단계 (Retrieval)

  • 검색 엔진이나 데이터베이스에서 질문과 관련된 문서를 가져옴
  • ex: 내부 문서, 논문, 웹 검색 등

 ③ 생성 단계 (Generation)

  • 검색된 정보를 언어 모델(LLM)이 활용하여 최종적인 응답을 생성
  • LLM은 검색된 정보를 참조하여 질문에 정확하고 문맥적으로 적합한 답변을 제공

 

3) RAG의 구성 요소

  • 정보 검색 시스템
    • RAG의 첫 번째 단계로, 사용자의 입력과 관련된 문서를 가져옴
    • ex: Elasticsearch, BM25, Dense Retrieval(BERT 기반 검색)
  • 언어 모델 (LLM)
    • 검색된 문서를 기반으로 텍스트를 생성하는 역할
    • GPT-3, GPT-4, T5, BERT 등의 모델이 사용됨
  • 통합 메커니즘
    • 검색된 정보를 언어 모델에 입력하여 답변 생성
    • LLM은 검색된 데이터의 문맥을 분석하여 답변을 생성하거나 데이터를 보강

 

4) RAG의 장점

  • 최신 정보 활용
    • LLM은 학습된 데이터에 기반하지만, RAG는 외부 검색을 통해 최신 정보 반영 가능
  • 신뢰성 향상
    • 언어 모델만 사용할 경우 발생할 수 있는 "할루시네이션(사실과 다른 응답 생성)" 문제를 줄임
    • 검색된 데이터를 바탕으로 응답을 생성하기 때문에 신뢰성이 높아짐
  • 대규모 데이터 처리
    • 검색 시스템을 통해 모델이 직접 학습하지 않은 대규모 데이터와 연계
  • 도메인 특화
    • 특정 분야(의료, 법률 등)의 데이터를 검색하고 활용함으로써 전문적인 답변 생성

 

5) RAG의 한계

  • 검색 품질 의존
    • 검색 시스템이 관련 없는 데이터를 반환할 경우, 최종 응답 품질이 낮아질 수 있음
  • 실시간성
    • 검색 과정이 추가되므로 일반적인 언어 모델보다 응답 시간이 더 길 수 있음
  • 정확도 문제
    • 검색된 데이터가 부정확하거나 편향된 경우, 최종 응답도 부정확할 가능성이 있음

 

6) RAG의 주요 활용 사례

  • 고객 서비스
    • 회사의 내부 FAQ, 문서 데이터를 기반으로 고객 질문에 실시간으로 답변
    • ex: Zendesk와 GPT 통합
  • 법률 및 의료
    • 판례나 의학 논문 데이터베이스를 검색하여 사용자가 이해할 수 있는 답변 생성
    • ex: Casetext(법률) 및 IBM Watson Health(의료)
  • 교육
    • 대규모 데이터베이스를 검색하여 학생 질문에 맞춤형 답변 제공
    • ex: AI 기반 학습 도우미
  • 기업 검색 엔진
    • 회사 내부 문서와 데이터를 활용하여 직원의 질문에 정확한 답변 제공
    • ex: 기업 내 지식 관리 시스템(KMS)과 RAG 통합
  • 연구 및 논문 작성:
    • 최신 연구 데이터나 논문을 검색하여 작성을 보조

 

7) RAG와 전통적인 LLM의 차이점

 

3. AI Agent

1) 정의

  • AI Agent는 특정 작업이나 문제를 해결하기 위해 설계된 지능형 시스템
  • 주어진 목표를 달성하기 위해 환경과 상호작용하며 의사결정을 내리고 행동
  • 즉, AI가 목표 지향적으로 행동하는 "디지털 에이전트"

 

2) 주요 구성 요소

① Perception (지각)

  • 외부 환경을 감지하고 데이터를 수집
  • ex: 카메라, 센서, 사용자 입력 등을 통해 정보를 획득

② Reasoning (추론)

  • 입력 데이터를 분석하고 의사결정을 내림
  • ex: 머신러닝 알고리즘, 규칙 기반 시스템

 ③ Action (행동)

  • 의사결정 결과를 기반으로 환경에 영향을 미치는 행동을 수행
  • ex: 로봇의 움직임, 시스템 명령 실행

④ Learning (학습)

 

  • 경험으로부터 학습하고, 시간이 지남에 따라 성능을 개선
  • ex: 강화학습, 지도학습, 비지도학습

 

⑤ Memory (기억)

 

  • 과거 데이터를 저장하고 이를 기반으로 추후 의사결정을 지원
  • ex: 사용자의 이전 질문을 기억해 컨텍스트를 유지

 

 

3) AI Agent의 유형

 

  • Reactive Agent (반응형 에이전트)
    • 단순히 현재 상태를 기반으로 행동
    • 과거 데이터를 저장하거나 학습하지 않음
    • ex: 자동문 센서
  • Deliberative Agent (계획형 에이전트)
    • 환경 정보를 기반으로 복잡한 계획을 세우고 행동
    • ex: 자율주행 자동차
  • Learning Agent (학습형 에이전트)
    • 경험으로부터 학습하고, 성능을 점진적으로 개선
    • ex: AI 챗봇, 개인화된 추천 시스템
  • Multi-Agent System (다중 에이전트 시스템)
    • 여러 에이전트가 협력하거나 경쟁하여 문제를 해결
    • ex: 로봇 군집 시스템, 스마트홈 시스템

 

 

4) AI Agent의 주요 기능

 

  • 문제 해결
    • 특정 문제를 분석하고 최적의 해결책을 제안
    • ex: 물류 최적화, 경로 계획
  • 의사결정
    • 주어진 상황에서 가장 적합한 행동을 선택
    • ex: 금융 거래 시스템
  • 자동화
    • 사람이 수행해야 할 반복적인 작업을 자동화
    • ex: 이메일 필터링, 작업 스케줄링
  • 상호작용
    • 사용자 또는 다른 시스템과의 실시간 상호작용
    • ex: 고객 서비스 챗봇

 

 

5) AI Agent의 주요 활용 사례

  • 가상 비서 (Virtual Assistant)
    • ex: Siri, Google Assistant, Alexa
    • 자연어 처리(NLP)를 통해 사용자의 질문에 답변하고 작업을 실행
  • 자율주행 (Autonomous Driving)
    • AI 에이전트가 차량의 환경을 인식하고, 주행 결정을 내림
    • ex: Tesla의 자율주행 시스템
  • 게임 에이전트 (Game AI)
    • 플레이어와 상호작용하거나 독립적으로 게임을 수행
    • ex: AlphaGo, OpenAI의 Dota 2 에이전트
  • 로봇 공학 (Robotics)
    • 물리적 환경에서 작업을 수행하는 로봇 제어
    • ex: Boston Dynamics의 Spot 로봇
  • 고객 지원 (Customer Support)
    • AI 챗봇이 고객의 질문을 이해하고 답변 제공
    • ex: Zendesk AI, ChatGPT 기반 상담 시스템
  • 의료 (Healthcare)
    • 환자의 데이터를 분석하여 치료를 지원
    • ex: IBM Watson Health

 

6) AI Agent와 LLM, RAG의 관계

  • LLM (Large Language Model)
    • AI Agent가 언어를 기반으로 상호작용할 때, 언어 이해와 생성 능력을 제공
    • ex: 고객 질문에 대한 응답 생성
  • RAG (Retrieval-Augmented Generation)
    • AI Agent가 외부 데이터 검색을 통해 최신 정보를 활용하도록 지원
    • ex: 법률 문서 검색 후 요약 제공.

 

 

 

📙 내일 일정

  • 최종 프로젝트