-
[LLM] 프롬프트 엔지니어링 - 2공부/A.I 2024. 10. 21. 15:49
논문 요약
https://www.ki-it.com/_common/do.php?a=full&b=22&bidx=3507&aidx=38944
책의 내용에 대한 질의응답을 가능하게 하기 위해 랭체인에서 제공하는 Q&A 시스템을 수정하여 사용
언어 모델과 여러 가지 기능의 외부 도구를 사슬처럼 엮어 결합
퓨샷 프롬프팅의 구성
1. 작업 설명
2. 예시
3. 프롬프트
3.2 질의 응답 시스템
Document spliitting 단계
- 주어진 문서나 텍스트를 여러 섹션 또는 청크 단위로 분할
- 분할된 청크는 300개 단위의 오버랩을 통해 각 청크들 사이의 연결고리를 유지
Word embedding 단계
청크로 분할된 문서를 벡터 형태로 변환
Similarity evaluation 단계
사용자 질문과 책 내용 문장간 유사도를 평가(코사인 유사도 사용)
Scope filtering 단계
유사도 평가를 바탕으로 관련 내용을 필터링, 특정 범위나 주제에 관련된 정보만을 선택적으로 추출
3.3 프롬프트를 활용한 문제 생성
OpenAI의 함수 호출 기능: GPT에게 함수를 미리 알려주고 필요한 상황에서 GPT가 호출하는 방식
OpenAI API 사용 시, functions라는 이름으로 사용 가능한 기능들의 목록을 제공하면, 출력에서 원하는 데이터 형식을 활용할 수 있음
functions의 정의 방법
함수의 이름(Name)
설명(Description), 사람이 이해할 수 있는 문장으로 작성
파라미터(Parameter), 필수 파라미터를 required에 명시
properties와 required는 JSON으로 작성
문제의 형식(OX, 4지 선다, 단답형)에 따라 다른 파라미터를 사용하고, 단답형의 경우는 3개를 사용
단답형 문제는 책의 내용 중 문단의 핵심 단어를 하나만 추출하여 그 단어를 문제의 정답으로 설정
-> 단 하나의 정답을 생성
단답형 문제에 대해 프롬프트의 출력, 예시
Short answer / One-shot learning, demanding key word generation / Question, answer, commentary
- Question: In the history of art in the 15th century, what developed Italian art into art that was distinct from other European regions? - Answer: Architecture - Commentary: The area that best illustrates the difference between Northern Europe and Italy is architecture - 질문: 15세기 미술사에서 이탈리아 미술이 다른 유럽 지역과 구별되는 미술로 발전한 것은 무엇인가? - 답 : 건축 - 해설 : 북유럽과 이탈리아의 차이를 가장 잘 보여주는 분야는 건축이다.
단답형 문제에 대한 유사도 기반 정답 확인
정답으로 제출한 단어와 정답의 유사도를 측정하여 유사도가 높은 경우 정답으로 처리
파라미터 설정
max_tokens는 300
temperature는 0.5로 제한
'공부 > A.I' 카테고리의 다른 글
[LLM] 프롬프트 엔지니어링 (1) 2024.10.20 [OpenCV] Frame latency 문제 (0) 2024.08.17 [YOLOv8] Hyperparameter Tuning (0) 2024.07.27 [YOLOv8] 라벨링부터 모델 테스트까지 (0) 2024.07.27 [Jetson Orin Nano] Csicam과 YOLOv8을 위한 기본 세팅 (2) 2024.07.27