본문 바로가기

dev course - DE/특강

[특강] ChatGPT

LLM과 GPT

1. LLM과 GPT 소개

  • 문장의 일부를 보고 비어있는 단어를 확률적으로 맞추는 모델
  • ‘17년 구글의 transformer를 시작으로 급발전

2. Language Model 훈련

  • 웹상에서 존재하는 문서들이 모델의 훈련 데이터가 됨
  • 예를 들어 위키피디아, 깃헙의 코드, …
  • Unsupervised Learning(정답이 없음)

3. Language Model : Word to Vector

  • 컴퓨터는 단어를 단어로 인식하지 못하고, 결국 숫자로 변환해야 인식 가능(one-hot encoding)
  • 이를 다시 N차원 공간의 벡터로 변환
  • 이를 워드 임베딩이라고 함
  • 임베딩 : 굉장히 차원 수가 큰 데이터를 훨씬 더 작은 차원의 데이터로 표현한 것 (예시) 3만개의 벡터로 이뤄진 문자를 3백개의 벡터로 줄여버린다던가… (장점) 데이터의 크기를 줄이고 단어간의 유사도 측정 가능

4. Language Model : 모델 사용 (추론/예측)

  • LLM(Large Language Model) 서빙에 들어가는 비용은 굉장히 크며, 이가 LLM의 큰 문제임
  • Carbon footprint 이슈
  • LLM에 최적화된 하드웨어를 개발하기 위해 노력 → 엔비디아
  • 다시 반도체가 중요해지고 있음

5. GPT(Generative Pre-trained Transformer)

  • OpenAI에서 만든 LLM
  • Word Completion, Code Completion
  • 참고로 네이버의 LLM은 Word completion만 지원

6. GPT 3 vs. GPT 4

  • GPT 3 : Context window 2,048개. 12,288개의 워드벡터 사용
  • GPT 4 : Context window 8,192개. 32,768개의 워드벡터 사용. Multi-modal(이미지 인식)
  • 경량 모델들도 나오기 시작. 메타의 llama, 스탠포드의 Alpaca(llama 파인튜닝 버전), 데이터브릭스 Dolly

7. GPT API(유료)

  • Word completion
  • Code completion
  • Fine-tuning

8. LLM의 문제

  • 훈련 비용, 서빙 비용
  • 데이터 주권 문제(훈련에 사용된 데이터는 누구의 것?)
  • 일자리 등 사회 안정성에 문제를 일으킴
  • GDPR : 개인의 정보를 보호

 

 

ChatGPT의 탄생과 소개

GPT를 가져다가 튜닝해 대화할 수 있게 만든 것

 

1. 용도

  • 질문에 대한 답변
  • 정보 추출
  • 번역
  • 대화 생성
  • 글쓰기 지원
  • 코드 생성 및 리뷰

2. chatGPT의 영향

  • instructGPT
  • AutoGPT

 

 

ChatGPT 4.0 소개

 

1. 3.5와 비교하면?

  • Code interpreter 추가
  • csv 파일 하나 업데이트하면, 알아서 어느 정도는 분석해줌
  • 머신러닝 모델도 만들어줌
  • 프롬프트로 이미지도 만들고, 이미지를 분석해줌
  • ChatGPT 플러그인 기능 추가(여행, … 등)

2. GPTs

  • 에이전트 기능 구현(커스텀 챗봇)
  • 특정 목적에 맞는 ChatGPT의 맞춤형 버전
  • 방대한 지식 위에 나만 가지고 있는 지식을 얹어 커스텀 챗봇을 만듬
  • 고객에게 자동으로 응답하는 챗봇을 그냥 만들면 너무 힘들지만, 이 위에 만들면 아주 쉬움
  • Code.org Lesson Planner(코딩 교육), Canva(디자인), Zapier …

 

 

나만의 LLM 만들기

1. 현실적인 방법 - 기존 LLM 파인튜닝하기, LLM 그대로 사용하되 RAG 사용

2. 파인튜닝(Fine-tuning)

  • 기존 모델은 그대로 두고 내가 가진 작지만 품질이 좋은 문서들로 훈련을 해줌

3. RAG(Retrieval Augmented Generation)

  • LLM을 그대로 사용하되 회사의 고객이 한 질문을 회사의 검색 엔진을 통해 찾아서 전해주는 형태

4. RAG 구조

  • (인덱싱 단계) Doc → Chunk → Vector DB
  • (검색 단계) Vector DB → Chunk → LLM

5. 내 GPT builder를 만들기

 

 

ChatGPT 활용하기

1. 모든 일/업무에 사용해보기

  • 질문 잘하기
  • 단발성이 아닌, 연속된 이야기를 통해 발전해 나가는 것
  • 굉장히 똘똘한 친구가 있다고 생각. 가끔 거짓말 하는…

2. 질문

  • 삼성전자 휴대폰 판매량을 알려줘(X)
  • 삼성전자 2018년 분기별 휴대폰 판매량을 알려줘(O)

 

 

결국 ChatGPT는 거대한 정보 중에서 내 입맛에 맞는 혹은 필요한 정보들을 1차적으로 추려서 제시해준다. 요즘 같은 거대한 정보 세상에 참… 필요한 친구구나!