1. LLM 모델 기반 서비스 실전 가이드
ChatGPT Prompt Learning Research LAB Leader TAE YOUNG LEE
A.I. Educating Service
2. “Share Value, Grow together”
우리는 지속적으로 성장하고 싶은 열정이 있어요 변화를 두려워하지 않고,
자신의 역량을 계속 발전시키며 성장해요 새로운 업무를 두려워하기보다
적극적으로 수용하여 자신감 있게 추진해요
ChatGPT Prompt Learning Research LAB Leader TAE YOUNG LEE
3. Index
01
서비스 포인트 탐색
ChatGPT 기술을 통한 서비스 범위 확인
02
사용성 강화를 위한 연구
Prompt Engineering (Input)
03
공모전 참여
정말 사용자가 원하는 것은 무엇일까?
04
LLM EcoSystem
학습의 깊이를 더하자!
실전 구성형 아키텍처 검토
Azure Open AI Landing Zone
05
활용 방안에 대한 연구
LLM 모델의 평가 방법 (Output)
제대로 활용되기 위해 고려해야 할
사항
ChatGPT Prompt Learning Research LAB Leader TAE YOUNG LEE
4. 모두의연구소 PPT 표지 제목을 입력해주세요.
01
ChatGPT 기술을 통한 서비스 범위 확인
서비스 포인트 탐색
ChatGPT Prompt Learning Research LAB Leader TAE YOUNG LEE
9. 용어 정의
ChatGPT Prompt Learning Research LAB Leader TAE YOUNG LEE
Retrieval Search
적합 정보를 찾아가는 체계적 조사 과정 상의 행위를 강조 적합 정보를 찾아내는 결과 행위를 강조
그래서 LLMs에서는 과정 중심의 프로세스가 필요함
10. 서비스 Process 확인
ChatGPT Prompt Learning Research LAB Leader TAE YOUNG LEE
톱밥꽃게가 뭐야
Online Features
Vector Search
대형 언어 모델
Feature Store을 통해 실시간 조회
‘톱밥꽃게'와 관련된 문서를 Knowledge
base를 통해 검색
웹 상의 문서
문서들이 분류가 잘 되어 있어야 함
Feature Store의 관리가 중요함
11. 도메인별 서비스 적용 시
ChatGPT Prompt Learning Research LAB Leader TAE YOUNG LEE
최근 구매이력을 취소해줘
Online Features
Vector Search
대형 언어 모델
최근 구매 항목을
feature 테이블을 통해 실시간
조회
‘취소'와 관련된 문서를 Knowledge
base를 통해 검색
문서
최근이란 언제일까?
무슨 구매 이력일까?
12. 입력을 쉽게 해줘
원하는 것을 알려줘
입력값 처리에 대한 관점
ChatGPT Prompt Learning Research LAB Leader TAE YOUNG LEE
Input 입력을 하게 된 상황
Context Awareness
(상황 인지)
사용자 관점
원하는 것
탐색의 과정
기술자 관점
Context Window Size
Prmopt Engineering
Quadratic Complexity
Chunk Stategy
Retrieval-Augmented Generation
Knowledge Based
ReLank Layer
Knowledge Cutoff
Hallucination
Lack of User Customization
LangChain CoT GoT ToT
관리자 관점
13. 사용자 관점에서 중요한 서비스 요소는?
서비스 포인트 탐색
ChatGPT Prompt Learning Research LAB Leader TAE YOUNG LEE
Input
Output
LLM
Context Window Size
Quadratic Complexity
Lang Chain
Chunk Strategy
Retrieval-Augmented Generation
Knowledge Based
ReLank Layer
Re2G (Retrieve, Rerank, Generate)
Sparse Retrieval와 Dense Retrieval을 함께 사용한 Retrieve-and-Generate 모델
Graph DB
Vector DB
GoT ToT
CoT
14. ChatGPT Prompt Learning Research LAB Leader TAE YOUNG LEE
LLM 계보도
LLM Family Chart
출처 : https://github.com/michaelthwan/llm_family_chart
15. ChatGPT Prompt Learning Research LAB Leader TAE YOUNG LEE
검색과의 연계는 필수적
ChatGPT의 한계
❏ Extensible retrieval system for live-updating answers
모델의 Hallucination이라고 부릅니다. 한국어로 번역하면 “착각", “환영”, “환청”, 즉 세상에 존재하지 않는 것을
보거나 듣는다는 뜻인데, ChatGPT는 눈이나 귀는 없고 입만 있는 셈이니, ChatGPT의 결과물을 읽는 우리
인간들의 관점에서 착각을 뜻하는 용어
❏ Lack interpretability
❏ 편향성 문제 (toxic or biased)
❏ 사고 능력
❏ 정보의 신뢰도
한계를 극복하기 위해서는 Retrieval-Augmented Gerneration(RAG)
Knowledge DB와 Context Window Size에 대한 연구 필요
16. 검색 또는 추천 시스템과의 유사성을 알아보자!
RLHF와 LoRA는 결국 Ranking Model의 변형이다.
ChatGPT Prompt Learning Research LAB Leader TAE YOUNG LEE
세부 아키텍처 구성
ChatGPT 파헤치기
Query
Indexer
Data
수집기 LLM
RLHF
(LoRA)
Prompt
Ranking
Model
출처 : https://blog.bytebytego.com/p/ep-44-how-does-chatgpt-work
17. ChatGPT Prompt Learning Research LAB Leader TAE YOUNG LEE
세부 아키텍처 구성
추천 시스템과의 유사성
Generate Data Layer: 분산처리 기술 플랫폼 위에서 ETL 및 Streaming
작업을 처리하는 레이어로, Hadoop 및 ElasticSearch 등이 주로
사용되며, Airflow와 Spark를 결합하여 DAGs 기반 개발과 분산처리를
효율적으로 수행하는 레이어
Generate Candidate Layer: 추천 시스템에서 Recall 알고리즘을
사용하여 다양한 아이템을 후보로 추려내는 레이어로, Popular, CF,
Graph, Association Rule, Similarity, Session-based 알고리즘 등을
활용하여 다양성을 고려하여 후보 아이템을 생성
User Intention Predict Layer: 유저의 최신 관심사에 기반하여 추천을
수행하는 레이어로, RNN(GRU, LSTM), Bert, Transformer 등을
사용하여 순서가 있는 데이터를 기반으로 다음 동작을 예측합니다.
Re-rank 레이어가 없을 경우 최종 prediction 레이어 역할
Re-Rank Layer: 후보 아이템 중에서 최종 랭킹을 결정하는
레이어로, 샘플링 전략과 도메인 및 context 피처 엔지니어링을
통해 랭킹을 조정하며, pointwise, pairwise, listwise 등의 평가
방법을 활용하여 랭킹을 최적화
18. ChatGPT Prompt Learning Research LAB Leader TAE YOUNG LEE
Context Window Size
Input Size
마이크로소프트(MS)가 롱넷(LongNet) 트랜스포머 모델을
도입하여 10억 토큰의 컨텍스트를 0.5초에 처리하고
기하급수적인 비용 증가를 선형으로 개선함. 토큰 수가
증가하면 비용이 증가하며, 롱넷을 통해 저렴한 비용으로
해리포터 1000권을 0.5초에 처리할 수 있게 되었다. 큰
컨텍스트 창은 LLM 성능 향상과 학습 기능 강화에
기여하며, 컨텍스트 내 학습이 더 나은 답변을 가능하게
함.
출처 : https://www.aitimes.com/news/articleView.html?idxno=152588
19. Knowledge Base
Fine-tuning 방식 / RAG 방식 구축 개념도
Xx기업의 6월 매출은?
Xx기업의 6월 매출은
20억원 입니다.
임베딩 벡터
Xx기업
Xx기업
6월 매출은
20억원
지식소스(FAQ, PDF, DOC)
KNOWLEDGE
Base구축
Vector Based
Knowledge bade
임베딩 모델
임베딩 모델
프롬프트 + 쿼리
최종 응답 결과
관련인텍스
검색
(FAISS등)
개선된
컨텍스트
(프롬프트 + 쿼리)
+
개선된 컨텍스트
문장생성 기존
LLM모델(chat GPT, Bard 등)
출력문장 생성
1 2 3
4
5
6
7
1
2
Xx기업의 6월 매출은?
+
6월 매출은 20억원
Graph Based
Knowledge bade
지식베이스를 구축하고 이를 기반으로 프롬프트 엔지니어링/Fine-tuning/rag 방식을 적용 시 LLM모델의 요약/정제 기능 등
장점을 이용하면서 Domain 지식을 효과적으로 검색/질의응답에 활용할 수 있음
ChatGPT Prompt Learning Research LAB Leader TAE YOUNG LEE
20. 모두의연구소 PPT 표지 제목을 입력해주세요.
02
Prompt Engineering (Input)
사용성 강화를 위한 연구
ChatGPT Prompt Learning Research LAB Leader TAE YOUNG LEE
21. ChatGPT Prompt Learning Research LAB Leader TAE YOUNG LEE
출현 배경
InstructGPT
출처 : https://velog.io/@mmodestaa/InstructGPT-ChatGPT
Zero Shot Prompt
One Shot Prompt
Few Shot Prompt
Chain of Thought Prompt
22. ChatGPT Prompt Learning Research LAB Leader TAE YOUNG LEE
Instruction Tuning
Instruction Tuning
출처 : Wei, Jason, et al. "Finetuned language models are zero-shot learners." arXiv preprint arXiv:2109.01652 (2021)
● Instruction을 통해 설명된 데이터 세트 모음에서 언어 모델을 미세
조정
● Unseen task에서 Zero Shot 성능 개선
● Instruction Tuning는 Instruction으로 표현된 mixture data로 사전
학습된 언어 모델을 튜닝하며, 추론 시에는 unseen 작업 유형을
평가
● 3가지 unseen 작업 유형에 대해, zero-shot, few-shot GPT-3과
비교하여 zero-shot FLAN(Finetuned LAnguage Net)의 성능을 평가
● 작은 LLM에서도 좋은 성능
LMs
Task B, C, D의
instructions/templates로
LM학습
Task A에 대해 추론
23. ChatGPT Prompt Learning Research LAB Leader TAE YOUNG LEE
사용성 강화 측면
Prompt Engineering
출처 : https://cobusgreyling.medium.com/eight-prompt-engineering-implementations-updated-90c82d071350
24. ChatGPT Prompt Learning Research LAB Leader TAE YOUNG LEE
Elements of a Prompt
Instruction
모델 수행 방법에 대한 task 설명 또는 지침
Context
모델 성능을 조정하기 위한 추가 또는 외부 정보
Input Data
모델이 출력을 제공해야 하는 입력/질문
Output Indicator
모델에 출력을 제공하는 데 필요한 지표 형식
Prompt의 구성 요소
출처 : https://www.promptingguide.ai/kr/introduction/elements
25. ChatGPT Prompt Learning Research LAB Leader TAE YOUNG LEE
Prompt Engineering 정의
Prompt Engineering
GPT 프롬프트 엔지니어링은 GPT 모델을 활용하여 주어진 프롬프트에 대한
자동완성을 수행하는 기술로, 다양한 자연어 생성 작업을 자동화합니다. 이 기술은
OpenAI의 GPT-3 모델을 이용하여 다양한 분야에서 활용 가능하며, 이메일 작성부터
문서 요약까지 다양한 자연어 처리 작업을 자동화하여 생산성을 향상시킵니다. 또한,
생성된 결과물은 자연스럽고 유용하여 다양한 자연어 처리 작업에 활용됩니다.
출처 : https://skyjwoo.tistory.com/entry/ChatGPT-프롬프트-엔지니어링이란
26. ChatGPT Prompt Learning Research LAB Leader TAE YOUNG LEE
PE 단점과 보완책
Prompt Engineering 단점과 보완책
1. GPT 모델의 생성 결과는 학습 데이터의 질과 양에 크게 의존하며, 학습 데이터에 없는 문장에
대한 정확한 생성이 어려움. 따라서 고품질 대규모 데이터셋 구축과 전처리 기술 발전이 필요
2. GPT 모델은 편향성을 학습하고 이를 결과물에 반영할 수 있으며, 특정 편견을 갖는 결과물이
생성될 수 있음. 따라서 학습 데이터의 다양성 고려와 결과물 검수를 통해 편향성을 줄여야 함.
3. GPT 프롬프트 엔지니어링은 모델이 문맥을 이해하지 못할 때 일관성 없는 결과물을 생성할 수
있으며, 모델의 문맥 이해 능력 향상을 위한 구조 개선 및 pre-training 방법론 연구가 필요하다.
GPT 모델은 크기와 연산량이 크기 때문에 학습과 사용에 많은 컴퓨팅 자원과 시간이 필요하며,
모델의 효율성을 개선하기 위해 경량화 기술 등을 연구해야 한다.
출처 : https://skyjwoo.tistory.com/entry/ChatGPT-프롬프트-엔지니어링이란
27. ChatGPT Prompt Learning Research LAB Leader TAE YOUNG LEE
PE 명령문 형식
Prompt Engineering의 명령문 형식
Generate [숫자] [텍스트] - "Generate 5 I love to" : "I love to dance.", "I love to cook.", "I love to travel." 등 5개의 문장을 생성합니다.
Complete [텍스트] - "Complete I enjoy listening to" : "I enjoy listening to music.", "I enjoy listening to podcasts.", "I enjoy listening to audiobooks." 등과 같이
텍스트를 자동완성
Answer [질문] - "Answer What is the capital of Japan?" : "The capital of Japan is Tokyo."와 같은 답변을 생성합니다.
Translate [텍스트] to [언어] - "Translate Good morning to Spanish" : "Buenos dias"와 같이 입력한 텍스트를 지정한 언어로 번역합니다.
Explain [개념] - "Explain What is artificial intelligence?" : 입력한 개념을 자세히 설명하는 문장을 생성합니다.
Paraphrase [텍스트] - "Paraphrase This book is very interesting." : "This book is quite fascinating."와 같이 입력한 텍스트를 다른 표현으로 변형합니다.
Summarize [텍스트] - "Summarize the article about climate change" : 입력한 텍스트에 대한 간략한 요약문을 생성합니다.
Compare [개념1] and [개념2] - "Compare democracy and dictatorship" : 두 개념에 대한 비교 문장을 생성합니다.
Convert [숫자1] [단위1] to [단위2] - "Convert 100 kilometers to miles" : 입력한 단위를 다른 단위로 변환하는 문장을 생성합니다.
Predict [데이터] - "Predict the stock price of Apple for the next month" : 입력한 데이터를 분석하여 예측 결과를 생성합니다.
출처 : https://skyjwoo.tistory.com/entry/ChatGPT-프롬프트-엔지니어링이란
28. ChatGPT Prompt Learning Research LAB Leader TAE YOUNG LEE
Service Architecture
ChatGPT Service Architecture
기존 질의에 대한 최상의 응답 제공
(API 호출 비용 절감)
Prompt Engineering
Pre-Process AI
chunk strategy
Feature Engineering
Feature Store
ChatGPT
General AI
DownStream Task
Domain Adaptation
Specific AI
Business RDB
Cache DB
Evaluation
Hallucination 제거
Validation
Cache DB
사용자
질의 응답 셋 검색
비즈니스 도메인에 적합한 응답 제공
Input Traffic Control
29. 모두의연구소 PPT 표지 제목을 입력해주세요.
03
참여를 통해 바로본 관점
공모전 참여
ChatGPT Prompt Learning Research LAB Leader TAE YOUNG LEE
30. ChatGPT Prompt Learning Research LAB Leader TAE YOUNG LEE
공모전 참여
실제 도메인에서 적용을 위해선 많은 것들에 대한 고려 필요
● 사용성 UI와 사용자 컨텐츠 확장에 집중하여 사용자 편의성을 개선하거나 LangChain에서
Masked Language Model [ ] 구성을 사용하면 응답 속도가 저하될 수 있음.
● OpenAI API의 과금 체계에 따른 GPT-3, GPT-3.5, GPT-4 모델의 차이로 인해 답변 품질을
제어하는 것이 어려우며, 이를 위해서는 LLM의 Back-end Architecture를 고려해야 함.
● AWS의 bedrock 서비스를 활용한 Foundation Model 사용 방법도 고려해야 함.
● 사용자 경험을 개선하기 위해 기술적인 측면보다는 UI 및 컨텐츠 확장에 초점을 맞춰야 함.
● 내부적으로 LLM 모델을 활용하기 위해서는 전체적인 백엔드 아키텍처를 고려해야 함.
31. ChatGPT Prompt Learning Research LAB Leader TAE YOUNG LEE
적절한 목적별 전략 필요
프롬프트 엔지니어링 검색증강생성(RAG) 파인튜닝(Fine-tuning) 사전훈련/재훈련
목적
LLM의 유용한 응답을
생성하기 위한 지침/질문/맥락
생성
환각없는 정확한 응답 생성
응답 품질 및 도메인 관련 결과
개선
모델 공급
(public/proprietary)
훈련기간 N/A N/A 몇분 ~ 몇 시간
모델 및 인프라에 따라
며칠에서 몇 달까지
소요
훈련비용 없음 없음 중간 높음
커스터마이징
프롬프트 커스터마이징(One
shot, Few shot)
기업 내부 데이터를 이용하여
프롬프트 “맥락"을 위한
지식유 구축 및 검색
모델 일부
특정 작업 튜닝(instruction tuning)
도메인별 훈련 데이터 추가
(Domain Adaptation)
모델 전체
신경망 아키텍쳐 및
크기
어휘 크기 및 컨텍스트
길이
요구되는 ML 전문성 낮음 낮음-중간 중간 높음
상황별 적절한 Generative AI 활용
자체 LLM 모델을 구축하는데는 많은 자원이 소요되는 바, 자체 지식베이스(Knowledge base)를 구축하고
이를 기반으로 프롬프트 엔지니어링/검색증강생성(RAG)/파인튜닝을 통하여 Domain 지식을 활용할 수 있는
비즈니스 전략의 추진이 필요.
32. ChatGPT Prompt Learning Research LAB Leader TAE YOUNG LEE
LLM의 재학습
LLM의 고도화
출처 : https://4n3mone.tistory.com/7
PEFT (Parameter-Efficient Fine Tuning)
PEFT는 사전학습된 LLM의 대부분의 파라미터를 프리징하고 일부의 파라미터만을
파인튜닝함으로써 저장공간과 계산능력을 대폭 줄였습니다. 파인튜닝할때 발생하는 문제점중
하나인 catastrophic forgetting또한 극복했습니다. PEFT는 또한 *적은 데이터 체제
(low-data-regime)에서 파인튜닝할때나 도메인 밖의 데이터(out-of-domain scenario)를
일반화할때 더욱 좋은 성능을 보여주었습니다. (예를 들면 이미지 분류, stable diffusion의
dreambooth)
1. LoRA: LORA: LOW-RANK ADAPTATION OF LARGE LANGUAGE MODELS
2. Prefix Tuning: P-Tuning v2: Prompt Tuning Can Be Comparable to Fine-tuning Universally Across Scales and Tasks
3. Prompt Tuning: The Power of Scale for Parameter-Efficient Prompt Tuning
4. P-Tuning: GPT Understands, Too
PEFT 방법론
33. ChatGPT Prompt Learning Research LAB Leader TAE YOUNG LEE
Adapters
PEFT Techniques
출처 : https://magazine.sebastianraschka.com/p/understanding-parameter-efficient
어댑터 튜닝 : 트랜스포머 레이어 사이에 병목 레이어(=어댑터)를 추가하고 훈련함
34. ChatGPT Prompt Learning Research LAB Leader TAE YOUNG LEE
LoRA
PEFT Techniques
출처 : https://sebastianraschka.com/blog/2023/llm-finetuning-lora.html
● 기존 모델 가중치는 고정시키고 추가로 더해주는 정도를 학습함
● 가중치 전체 대신 표현의 일부만 학습 (저차원 행렬)
● 범용성 높아 아미지 도메인에도 적용 가능
35. ChatGPT Prompt Learning Research LAB Leader TAE YOUNG LEE
QLoRA
PEFT Techniques
출처 : https://huggingface.co/blog/hf-bitsandbytes-integration
● LoRA 가중치에 4비트 양자화 (경량화) 적용
● 가중치를 4비트 NormalFloat 자료형으로 저장하되 모델 학습에서 필요한 경우 bfloat16으로 복원시켜서 사용
● 16비트 전체 파인튜닝과 성능 거의 동일하되, 필요한 GPU 메모리 크기 현저히 감소
36. ChatGPT Prompt Learning Research LAB Leader TAE YOUNG LEE
Types of PEFT Techniques and Their Performance
PEFT Techniques
출처 : https://magazine.sebastianraschka.com/p/finetuning-large-language-models
37. 모두의연구소 PPT 표지 제목을 입력해주세요.
04
LLM 기반 생태계에 대한 전반적인 내역에 대한 확인 필요
LLM EcoSystem
ChatGPT Prompt Learning Research LAB Leader TAE YOUNG LEE
38. ChatGPT Prompt Learning Research LAB Leader TAE YOUNG LEE
LLM 적용 Architecture
실제 도메인에서 적용을 위해선 많은 것들에 대한 고려 필요
1. 텍스트 데이터를 청크로 분할하여 각 청크를
맥락 조각으로 나타냄.
2. 임베딩 모델을 사용하여 각 청크를 벡터
임베딩으로 변환함.
3. 모든 벡터 임베딩을 데이터베이스에 저장하고,
관련 정보와 함께 보관.
4. 질문을 임베딩하고, 벡터 데이터베이스에서
가장 유사한 벡터를 검색해 맥락 벡터를
가져옴.
5. 검색된 맥락을 활용하여 LLM 모델에 질문을
전달하고 답변 생성 시 해당 맥락만 활용.
출처 : https://www.linkedin.com/in/aurimas-griciunas/
39. ChatGPT Prompt Learning Research LAB Leader TAE YOUNG LEE
Retrieval (검색)
Retrieval Augmented Generation(RAG) 기반 Architecture
출처 : https://wandb.ai/ayush-thakur/llama-index-report/reports/Building-Advanced-Query-Engine-and-Evaluation-with-LlamaIndex-and-W-B--Vmlldzo0OTIzMjMy
수시로 업데이트 되는 문서에서 정확한 정보를 찾기 위해서는 ‘Retrieval (검색)’ 기반의 생성이 필수
40. ChatGPT Prompt Learning Research LAB Leader TAE YOUNG LEE
LLM App Stack
출처 : https://a16z.com/2023/06/20/emerging-architectures-for-llm-applications/
41. ChatGPT Prompt Learning Research LAB Leader TAE YOUNG LEE
LLM EcoSystem
RAG
(Retrieval Augmented Generation)
Redis
GPTCache
LLM Response Caching
Weight & Bias
MLflow
PromptLayer
LLM 출력 모니터링, 추적, 평가
Helicone
Guradrails
출력의 유해성 검증
Rebuff
프롬프트 주입 공격 방어
Embedding Model Vector Database
Databricks
Apache
Airflow
LangChain
LlamaIndex
ETL
Document Loader
ANN
(Approximate Nearest Neighbor)
PQ
(Product Quantization)
LSH
(Locality Sensitive Hashing)
HNSW
(Hierarchical Navigable Small World)
빠른 검색을 위해 벡터를 인덱싱 하는 방법
벡터를 빠르게 찾는 방법
질의에 대한 임베딩 처리 검색 요청 검색 결과 프롬프트 엔지니어링
오케스트레이션 프레임워크 (Langchain, LlamaIndex(GPT Index))
Causal AI
Vespa
Pinecone Weaviate
Qdrant
LLM
참고문헌 : https://a16z.com/2023/06/20/emerging-architectures-for-llm-applications/
42. ChatGPT Prompt Learning Research LAB Leader TAE YOUNG LEE
Azure Open AI LandingZone
출처 : https://techcommunity.microsoft.com/t5/azure-architecture-blog/azure-openai-landing-zone-reference-architecture/ba-p/3882102
43. ChatGPT Prompt Learning Research LAB Leader TAE YOUNG LEE
Azure Open AI LandingZone 구성에 대하여…
Azure 랜딩 존과 Azure OpenAI 서비스는 안전하고 확장 가능한 AI 애플리케이션을 만들기 위한
견고한 기반을 제공합니다. 이는 Azure의 강력한 네트워크 및 보안 기능을 활용하여 OpenAI 작업을
향상하고 보호합니다. Azure 랜딩 존과 OpenAI를 결합하여 AI 애플리케이션을 쉽게 구축, 배포 및
관리할 수 있는 도구 세트를 제공하며, 보안 및 규정 준수 요구 사항을 충족시키는 데 도움을
줍니다.
Azure Open AI LandingZone
출처 : https://techcommunity.microsoft.com/t5/azure-architecture-blog/azure-openai-landing-zone-reference-architecture/ba-p/3882102
44. 모두의연구소 PPT 표지 제목을 입력해주세요.
05
LLM 모델의 평가 방법 (Output)
활용 방안에 대한 연구
ChatGPT Prompt Learning Research LAB Leader TAE YOUNG LEE
45. ChatGPT Prompt Learning Research LAB Leader TAE YOUNG LEE
평가 및 성능향상에 대한 고찰
사용자 관점의 답변에 대한 평가 방법에 대한 정의 필요
비용 관점의 효율적인 고려에 대한 방안 정립 필요
Data 기반의 성능 향상
출처 : https://eugeneyan.com/writing/llm-patterns/?fbclid=IwAR1PuYXYnLw88oYWnQ-x1iuptWjQ7TNB0XSejusWk3-uhkHFmWW78AZH5UQ
46. ChatGPT Prompt Learning Research LAB Leader TAE YOUNG LEE
평가 및 성능향상에 대한 고찰
실용적인 패턴
성능 향상 대비 비용/위험 감소와 데이터 중심 대비 사용자 중심으로 이루어진 스펙트럼을 따라
이러한 패턴들은 조직되어 있습니다.
Evals: 성능 측정을 위해
RAG: 최근 외부 지식 추가를 위해
Fine-tuning: 특정 작업에서 더 나은 결과를 얻기 위해
Caching: 대기 시간과 비용을 줄이기 위해
Guardrails: 출력 품질을 보장하기 위해
Defensive UX: 오류를 예측하고 우아하게 처리하기 위해
사용자 피드백 수집: 데이터 물류체계(data flywheel) 구축을 위해"
출처 : https://eugeneyan.com/writing/llm-patterns/?fbclid=IwAR1PuYXYnLw88oYWnQ-x1iuptWjQ7TNB0XSejusWk3-uhkHFmWW78AZH5UQ
47. ChatGPT Prompt Learning Research LAB Leader TAE YOUNG LEE
Evaluation
성능 측정을 위해
평가는 모델 성능 측정에 중요하며, 벤치마크 데이터와 메트릭을 사용합니다.
이는 시스템 변경을 측정하고 모델 출력을 평가하는 핵심 요소로, 언급된 바에 따르면 진지한
개발과 빠르게 실험하는 차이를 만듭니다.
몇 가지 중요한 벤치마크는 MMLU, EleutherAI, HELM, AlpacaEval 등이 있으며 문맥-의존적과
문맥-독립적 메트릭으로 나뉩니다.
BLEU, ROUGE, BERTScore, MoverScore 등은 일반적으로 사용되는 BaseLine Metric입니다.
출처 : https://eugeneyan.com/writing/llm-patterns/?fbclid=IwAR1PuYXYnLw88oYWnQ-x1iuptWjQ7TNB0XSejusWk3-uhkHFmWW78AZH5UQ
48. ChatGPT Prompt Learning Research LAB Leader TAE YOUNG LEE
BLEU(Bilingual Evaluation Understudy)
는 정밀도 기반 메트릭으로, 생성된
출력에서 참조 문장에도 나타나는
n-gram의 개수를 세고 출력의 총 단어
수로 나누어 계산
ROUGE(Recall-Oriented Understudy for
Gisting Evaluation)는 BLEU와
대조적으로 회상 지향적인
메트릭입니다. 이는 참조와 출력
사이에서 일치하는 단어의 수를 세어
측정합니다. 주로 자동 요약 작업을
평가하는 데 사용
BERTScore는 임베딩 기반 메트릭으로,
생성된 출력의 각 토큰이나 n-gram을
참조 문장과 비교하기 위해 코사인
유사도를 사용
1 2 3
정밀도 기반 Metric 회상 지향적인 Metric 임베딩 기반 Metric
평가 방법에 대한 진화
BaseLine Metric의 세분화
49. ChatGPT Prompt Learning Research LAB Leader TAE YOUNG LEE
평가 기법에 대한 한계점
전통적인 벤치마크와 메트릭을 사용하는 데는 여러 가지 함정이 있습니다.
첫째, 이러한 메트릭과 인간 판단 사이에 약한 상관관계가 있습니다. BLEU, ROUGE 등은 유창성을 평가하는
데 인간 판단과 부정적인 상관관계를 보였습니다.
둘째, 이러한 메트릭은 종종 다양한 작업에 대한 적응성이 낮습니다. 한 작업에 제안된 메트릭을 다른
작업에 적용하는 것이 항상 현명하지는 않습니다.
셋째, 이러한 메트릭은 재현성이 낮습니다. 동일한 메트릭을 사용해도 서로 다른 연구에서 높은 분산이
보고되는데, 이는 인간 판단 수집이나 메트릭 매개변수 설정의 변화 때문일 수 있습니다.
이러한 이유로 최근에는 MMLU와 같은 최근 벤치마크를 사용하는 것 외에도, 강력한 LLM을 참조 없는
메트릭으로 사용하여 다른 LLM의 생성물을 평가하는 것이 떠오르는 추세입니다.
정밀하고 세밀한 성능 평가 방법의 필요
출처 : https://eugeneyan.com/writing/llm-patterns/?fbclid=IwAR1PuYXYnLw88oYWnQ-x1iuptWjQ7TNB0XSejusWk3-uhkHFmWW78AZH5UQ
50. ChatGPT Prompt Learning Research LAB Leader TAE YOUNG LEE
평가 기법에 대한 연구 방향
G-Eval
출처 : https://eugeneyan.com/writing/llm-patterns/?fbclid=IwAR1PuYXYnLw88oYWnQ-x1iuptWjQ7TNB0XSejusWk3-uhkHFmWW78AZH5UQ
51. FiD RETRO
RAG
RAG
레트리벌-보강 생성(RAG)은 기본 모델 외부에서
관련 데이터를 가져와 입력을 강화하여 더 풍부한
문맥을 제공하여 출력을 개선
FiD
Fusion-in-Decoder (FiD)는 오픈 도메인 Q&A에서 생성
모델과 함께 검색을 사용합니다. 검색에는 BM25(Lucene의
기본 매개변수를 사용한 것)와 DPR을 지원
RETRO
Retrieval-Enhanced Transformer (RETRO)는 비슷한
패턴을 채택하며, 얼어붙은 BERT 리트리버,
차별화된 인코더, 그리고 청크화된 교차 어텐션을
결합하여 출력을 생성합니다. 다른 점은 RETRO가
추론 중에만이 아니라 전체 사전 훈련 단계에서
리트리버를 사용한다는 것
ChatGPT Prompt Learning Research LAB Leader TAE YOUNG LEE
답변의 정교화를 위한 연구
한계를 뛰어 넘어
출처 : https://eugeneyan.com/writing/llm-patterns/?fbclid=IwAR1PuYXYnLw88oYWnQ-x1iuptWjQ7TNB0XSejusWk3-uhkHFmWW78AZH5UQ
52. ChatGPT Prompt Learning Research LAB Leader TAE YOUNG LEE
Base Model의 중요성
출처 : https://twitter.com/karpathy/status/1655994367033884672
53. ChatGPT Prompt Learning Research LAB Leader TAE YOUNG LEE
Re-Ranker 적용
출처 : https://paperswithcode.com/paper/simcse-simple-contrastive-learning-of
Re-Rank Layer
사실 Re-rank 레이어에서 가장 중요한 것은 알고리즘이나 모델의 성능보다는, 전략이다. 어떻게 샘플링할 것인지 (Up
sampling, Down sampling…)에 대한 전략을 수립해야 하며, 도메인과 context의 피처 엔지니어링을 어떤 전략으로
녹여낼 것인지가 최종적인 ranking order에 가장 큰 영향을 미친다. 일반적인 ranking predictor를 평가하기 위한 방법은
크게 pointwise, pairwise, listwise rank 3가지로 나뉜다. 이 역시 도메인과 서비스에 따라 사용하는 형태와 종류가 다르다
Re2G (Retrieve, Rerank, Generate)
Sparse Retrieval와 Dense Retrieval을 함께 사용한 Retrieve-and-Generate 모델
54. ChatGPT Prompt Learning Research LAB Leader TAE YOUNG LEE
RAG Evaluation
출처 : https://cobusgreyling.medium.com/rag-evaluation-9813a931b3d4
RAG의 기본 원칙은 외부 데이터 소스를 활용하여 LLM에 컨텍스트 참조를 제공하는 것입니다.
그러나 RAG 파이프라인의 성능을 어떻게 평가, 측정 및 정량화할 수 있습니까?
아래 이미지를 고려하면 생성 및 검색 품질을 별도로 측정하는 데이터 중심 접근 방식이 답인 것 같습니다.
Faithfulness와 Relevance가 Generation을 구성하고 Precision과 Recallance가 Retrieval의 경우에 적용한다.
55. ChatGPT Prompt Learning Research LAB Leader TAE YOUNG LEE
SimCSE & DPR
출처 : https://velog.io/@sangmandu/Dense-Passage-Retrieval
SimCSE: Simple Contrastive Learning of Sentence Embeddings ( https://arxiv.org/pdf/2104.08821v4.pdf )
이 논문은 SimCSE를 소개하며, 이는 문장 임베딩의 최첨단 기술을 발전시키는 대조 학습 프레임워크. 비지도 학습 방법으로, 입력
문장을 드롭아웃을 활용하여 자체 예측하는 방식을 사용하여 이전의 모델과 비교하여 우수한 성능을 보임. 또한, 자연어 추론
데이터셋에서 주석이 달린 쌍들을 활용하여 지도 학습 방식을 제안하며, 이로써 의미론적 텍스트 유사성 작업에서 BERT base와
비교하여 4.2% 및 2.2%의 성능 향상을 달성합니다. 이 프레임워크는 임베딩의 정규화와 양성 쌍의 정렬을 향상시키는데 기여
DPR(Dense Passage Retrieval) 의 구조는 질문 인코딩 결과와 문서 인코딩 결과의 내적 값이 클수록 유사도가 높다.
Recall
검색결과가 가져온 정답문서 A개의 문서들 중에서 얼마나
적합한 문서가 있는지 여부
MRR (Mean Reciprocal Rank)
질의 Q에 대해 가장 적절한 정답문서 A 역순위 평균
nDGG (Normalized Discounted Cumulative Gain)
질의 Q에 대해 가장 연관성이 높은 문서들 A의 점수 합
56. ChatGPT Prompt Learning Research LAB Leader TAE YOUNG LEE
LLMs + Android
출처 : https://autodroid-sys.github.io/
57. ChatGPT Prompt Learning Research LAB Leader TAE YOUNG LEE
Key Point
LLMs 서비스 출시 시, 주요 초점은 사용자에게 현실적인 영향을 미치는 것입니다.
이를 위해서는 Input 및 Output 범위를 명확히 정의하고 이 안에서 최상의 답변을 추출하기
위한 UI/UX 개선이 필요합니다.
Variation이 높을수록 비용이 증가하므로 사용자 가치에 초점을 두고 비즈니스를
추상화하고, 데이터 파이프라인 구성보다 서비스 관점에서의 가치를 먼저 고려하는 것이
효과적입니다.
이 원칙은 챗봇 서비스에도 적용됩니다.
Intent와 Entity 관계, 정제된 Intent의 다양성을 고려하여 서비스 범위를 확장하는 것이
중요합니다. 또한 채팅 UI를 개선하여 혼란을 줄이고, 정교한 질문 응답 셋을 조절하고
다양한 답변을 생성할 수 있는 제약 조건 최적화 기술을 적용하는 것이 필요합니다.
58. ChatGPT Prompt Learning Research LAB Leader TAE YOUNG LEE
Summary
사용자 중심의 DownStream Task 정립과 Scope 한정이 핵심.
다양한 LLM 모델 평가와 답변 품질 기반 LLM 모델 전환을 위해 OpenAI API를 활용한 BaseLine
필요.
MS Azure Open AI Landing Zone 설정 선행 필요, 자체 LLM 모델 확보를 위한 사용자 평가 Metric
정립과 데이터 프로세스 개선 고려.
오픈소스 LLM 모델 활용 시 Loosed Coupled한 Input/Output 중심 체계 설계가 중요하며, AWS,
Azure, Google Cloud의 Foundation Model 도입 및 사용성 강화 고려 필요.
Ranking Model 및 Re-Ranker Layer 고도화로 입력과 출력 품질 향상 필요.
59. 사전 질의 내역
Question
일반적으로 좋은 서비스를 향해 갈수록
프롬프트의 양이 거대해질 것 같은데
이 때문에 발생하게 될 토큰 제한,
속도 문제 등에 관해서는
어떻게 생각하시는지 해결 방법들에 관해서
공유해주실 수 있는 내용이 있으신지 궁금합니다.
Answer
사용자별 초기 진입 시 프롬프트 라이프 사이클
관리를 통해 서비스 차별화를 두고, 서비스 컨셉에
맞추어 관리할 부분과 아닌 부분의 명확한 정의를
통해 프롬프트의 품질을 개선해 나가야 합니다.
또한 프롬프트 엔지니어링 시에 Chunk Strategy를
고려한 설계를 준용하여 과금별 토큰 제한에
맞추어 질의를 변환할 수 있도록 하고, 이를
기반으로 응답 속도 개선에 대응해 나가야 합니다.
그리고 Prompt Engineering에 너무 의존적이어서는
안되고, LLMs 모델을 LoRA기반 방법론을 활용해
고도화해 나가고, LLMs Ecosystem을 고려하여
서비스 별 특장점을 살릴 수 있는 전반적인
아키텍처를 설계 후 고도화해 나가야 합니다.
60. 사전 질의 내역
Question
LLMs의 Hallucination을 줄이려면 어떤 방법이
있는 지 궁금합니다.
Answer
사람의 돈과 생명을 다루는 금융과 의료
도메인에서 LLMs를 활용하려면 관리적
포인트에서 Hallucination을 줄이는 부분이 가장
중요합니다.
이를 위해서는 기존 질의응답셋 고도화를 통해
답변에 대한 Quality Control이 가능할 수 있는
체계를 갖추고 관리 중심의 Evaluation 방법을
적용하여 환각현상을 없애야 합니다.
LLM Ecosystem상의 Guardrails를 활용하여 질의와
응답에 대한 Constraints Optimization할 수 있는
체계를 갖추어야 합니다.
답변 불가 영역에 대한 배타적 클래스 정의 및
Exclusive Control도 필요
https://towardsdatascience.com/safeguarding-llms-with-guardrails-4f5d9f57cff2