본 포스팅은 패스트캠퍼스 환급 챌린지 참여를 위해 작성하였습니다.
Ch1. 프롬프트
02. yaml 파일로부터 프롬프트 템플릿 로드(load_prompt)
yaml 파일
: 사람이 읽기 쉽고, 데이터 구조를 표현하기에 간결해서 복잡한 파이프라인 설정을 관리하는 데 이상적.
→ LangChain과 같은 프레임워크를 사용할 때, RAG의 파이프라인(데이터 흐름)을 yaml로 정의하여 각 단계가 어떻게 연결되는지 명확히 알 수 있음.
> yaml 파일 예시
_type: "prompt"
template: "{fruit}의 색깔이 뭐야?"
input_variables: ["fruit"]
- 변수 부분은 동일하게 중괄호로 묶어줌.
- type 부분에는 반드시 프롬프트가 들어가야 함
> 복잡한 형태의 yaml 파일 예시
_type: "prompt"
template: | #파이프(|)를 넣어줌으로써 다음 줄에도 쓸 수 있음
{country}의 수도에 대해서 알려주세요. #두 칸 들여써서 프롬프트 작성
수도의 특징을 다음의 양식에 맞게 정리해 주세요.
300자 내외로 작성해 주세요.
한글로 작성해 주세요.
----
[양식]
1. 면적
2. 인구
3. 역사적 장소
4. 특산품
#Answer:
input_variables: ["country"]
cf) 주석처리 단축키
mac OS : command + /
Window OS : Ctrl + /
03. ChatPromptTemplate
ChatPromptTemplate
: 대화 목록을 프롬프트로 주입하고자 할 때 활용. (채팅 형식의 챗봇을 사용할 때 활용하면 더 좋은 답변을 얻을 수 있음)
→ 메시지는 튜플(tuple) 형식으로 구성하며, (role, message)로 구성하여 리스트로 생성할 수 있음
> role (다음 셋 중에 하나 이상 넣어줘야 함)
- "system" : 시스템 설정 메시지. → 주로 *전역설정과 관련된 프롬프트 :: 적용되는 범위 : 대화 전체
- "human" : 사용자 입력 메시지
- "ai" : AI의 답변 메시지
*전역설정 : AI의 role(역할) 또는 페르소나 지정
예시)
- 재무 컨설턴트의 경우
→ 당신은 재무 컨설턴트입니다. 앞으로 재무 컨설턴트처럼 답변해 주세요. ← AI에게 임무를 쥐어줌
ChatPromptTemplate이 PromptTemplate과 다른 점
- PromptTemplate은 하나의 질문 안에 변수들이 위치해 있고, 이를 채워서 물어보고 답변을 받음
- ChatPromptTemplate은 대화형 형식의 템플릿을 만들어놓고, role 이 존재. 질문할 때 변수를 채워주면 template의 변수 부분이 완성되면서 전체 메시지가 LLM으로 들어가서 LLM이 마지막 질문에 대한 답변을 해줌
오늘 수업은 챗봇을 만들 때 기초가 되는 내용이었네요. 제가 희망하는 회사에 한 발짝 다가간 느낌이랄까요? 그래서 더 재미있게, 이해하면서 들으려 노력했어요. 영어 문법 정리하듯 코드도 따로 정리를 좀 해둬야겠어요. 내용이 더 복잡하고 어려워질 텐데... 정리해놓지 않은 상황은 생각만 해도 아찔하네요.




커리어 성장을 위한 최고의 실무교육 아카데미 | 패스트캠퍼스
성인 교육 서비스 기업, 패스트캠퍼스는 개인과 조직의 실질적인 '업(業)'의 성장을 돕고자 모든 종류의 교육 콘텐츠 서비스를 제공하는 대한민국 No. 1 교육 서비스 회사입니다.
fastcampus.co.kr
'RAG' 카테고리의 다른 글
| 패스트캠퍼스 환급챌린지 12일차 : 테디노트의 RAG 비법노트 강의 후기 (0) | 2025.11.23 |
|---|---|
| 패스트캠퍼스 환급챌린지 11일차 : 테디노트의 RAG 비법노트 강의 후기 (0) | 2025.11.22 |
| 패스트캠퍼스 환급챌린지 9일차 : 테디노트의 RAG 비법노트 강의 후기 (0) | 2025.11.20 |
| 패스트캠퍼스 환급챌린지 8일차 : 테디노트의 RAG 비법노트 강의 후기 (0) | 2025.11.19 |
| 패스트캠퍼스 환급챌린지 7일차 : 테디노트의 RAG 비법노트 강의 후기 (0) | 2025.11.18 |