본문 바로가기

인공지능/[인공지능] RAG 답변 생성 성능 향상과 고급 Prompting 기법5

5. RAG와 Tree of Thought (ToT) 기법 활용 실습 RAG와 Tree of Thought (ToT) 기법 활용 실습이 코드 셀에서는 RAG와 Tree of Thought (ToT) 기법 활용을 위한 LangChain 라이브러리의 주요 모듈들을 불러옵니다. 이후 코드에서 사용할 핵심 도구들을 임포트하며, 각 도구의 역할은 다음과 같습니다:ChatOpenAI – OpenAI의 대규모 언어 모델(LLM)을 사용해 챗봇 형태로 답변을 생성할 수 있게 해주는 LangChain 래퍼입니다. (예: GPT-4 모델을 챗 API로 호출)PromptTemplate – LLM에 전달할 프롬프트(질의 및 컨텍스트)를 쉽게 구성하기 위한 템플릿 클래스입니다. {} 플레이스홀더에 값을 채워 자동으로 프롬프트 문자열을 만들어 줍니다.RegexParser – LLM의 출력에서 정규.. 2025. 6. 8.
4. RAG 프롬프트 압축 실습 RAG 프롬프트 압축 실습High 단계에서 JSON 응답을 엄격히 제어하고 후처리하는 코드 포함.# 세 개의 긴 문서 정의doc1 = '''현대 교육 분야에서는 **인공지능(AI) 기반 플랫폼**이 빠르게 확산되고 있다. 초기에는 단순히 학습 진도 관리나 자동 채점에 머물렀으나, 최근에는 학습자 개인의 성향과 학습 패턴을 분석해 최적의 학습 경로를 제시하는 **맞춤형 학습 추천 시스템**으로 진화하고 있다. 예를 들어, 학습자의 풀이 시간을 실시간으로 모니터링해 난이도를 조절하고, 오답 유형을 분석해 유사 문제를 자동으로 출제해 주는 기능이 이미 상용화된 상태이다.또한, **자연어 처리(NLP)** 기술의 발달로 강의 콘텐츠를 자동으로 요약·생성하거나, 학습자의 질문에 실시간으로 답변하는 챗봇 튜터가 등.. 2025. 6. 8.
3. LangChain RAG Few-Shot 프롬프트 엔지니어링 실습 LangChain RAG Few-Shot 프롬프트 엔지니어링 실습LangChain 0.3 및 LCEL 스타일 체이닝 예제입니다. 각 섹션마다 예시 Q-A 페어를 포함하여 진정한 Few-Shot 프롬프트를 구현했습니다.첫 번째 코드 셀 설명: 이 코드 셀에서는 RAG(Retrieval-Augmented Generation)를 위한 준비 작업을 수행합니다.먼저 json 모듈과 LangChain 라이브러리의 여러 구성 요소들을 임포트합니다. 여기에는 프롬프트 템플릿을 구성하는 PromptTemplate, OpenAI 기반 모델을 활용하는 ChatOpenAI, 문서 데이터를 담는 Document, 그리고 출력에서 원하는 정보를 추출하는 RegexParser가 포함됩니다.다음으로, 이미 **리트리버(Retriev.. 2025. 6. 8.
2. Self-Consistency 프롬프트 엔지니어링 실습 Self-Consistency 프롬프트 엔지니어링 실습난이도별(Easy/Medium/Hard) Self-Consistency 프롬프트와 LCEL 체이닝을 익히는 실습입니다.이 노트북에서는 Self-Consistency 프롬프트 기법과 간단한 검색-증강 생성(Retrieval-Augmented Generation, RAG) 기법을 결합하여, 난이도가 다른 질의들(Easy/Medium/Hard)에 답하는 실습을 합니다. Self-Consistency 기법이란 한 질문에 대해 LLM이 여러 개의 답변을 생성하도록 한 다음, 그 중 가장 일관된 답을 최종적으로 선택하는 방법입니다. 이를 통해 답변의 신뢰성과 정확도를 높일 수 있습니다. 또한 RAG 기법으로서 미리 주어진 문서들에서 관련 정보를 검색하여 프롬프트.. 2025. 6. 8.
1. RAG CoT 프롬프트 엔지니어링 실습 RAG CoT 프롬프트 엔지니어링 실습소단계별(Easy/Medium/Hard) RAG 파이프라인에서 CoT 프롬프트와 LCEL 체이닝을 익히는 실습입니다.1. 공통 설정이 첫 번째 코드 셀은 실습 전체에 공통으로 필요한 환경 설정과 도구 준비를 합니다. 여기서는 대형 언어 모델(LLM)을 초기화하고, 질의에 관련된 문서를 찾아주는 retriever와 LLM의 출력을 처리할 **출력 파서(Output Parser)**를 정의합니다. 이 설정을 통해 이후 단계에서 모델이 외부 지식을 활용하고 단계별 답안을 생성할 수 있는 기반을 마련합니다.환경 변수 로드: load_dotenv() 함수를 사용하여 .env 파일에 저장된 설정값을 불러옵니다. 이를 통해 OpenAI API 키와 사용할 LLM 모델 이름 등을 .. 2025. 6. 8.