일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
Tags
- golang
- method
- 업스테이지패스트캠퍼스
- golang slice
- receiver method
- array
- 패스트캠퍼스
- golang interface
- keyword
- receiver
- 메서드
- UpstageAILab
- 스코프
- Pointer
- 국비지원
- package
- 함수
- 변수
- scope
- 패스트캠퍼스업스테이지부트캠프
- 상수
- golang slice remove
- Interface
- slice
- 패스트캠퍼스업스테이지에이아이랩
- 패스트캠퍼스AI부트캠프
- 타입
- golang pointer
- struct
- golang array
Archives
- Today
- Total
느리지만 꾸준히, 코딩
LangChain 기반 부트캠프 RAG봇 프로젝트 수행 후기 본문
본 포스팅은 부트캠프 과정에서 수행한 LangChain 기반의 문서 검색 및 Q&A 자동화 시스템(RAG, Retrieval-Augmented Generation) 구축 프로젝트에 대한 기록입니다.
프로젝트 배경 및 목적
부트캠프 과정에서 제공되는 다양한 정보가 여러 채널에 분산되어 있어 사용자들이 필요한 정보를 신속하게 얻기 어려운 문제가 있었습니다. 복잡한 행정 절차와 교육 정보를 사용자가 쉽게 이해할 수 있도록 지원하기 위해, 사용자 질문에 즉각적이고 정확한 답변을 제공할 수 있는 RAG 기반의 챗봇을 구현하게 되었습니다.
- 프로젝트 기간: 2025.04.02 ~ 2025.04.08
비즈니스 문제 정의 및 KPI
- 문제 상황: 정보가 여러 곳에 흩어져 있어 검색의 불편함이 발생
- 목표: 내부 문서 정보를 빠르고 정확하게 전달하는 챗봇 개발
- KPI 설정: 사용자 질문에 대한 응답 정확도와 활용성
주요 작업 내용
1. 데이터 수집 및 전처리
- 학원 내부의 다양한 자료(시간표, 강의 리스트, 법령, Notion 페이지 등)를 Selenium을 활용한 웹 크롤링을 통해 수집하였습니다.
- 문서의 일관된 형식을 위해 팀원별로 DocsLoader를 도메인 특화 방식으로 개발하고, Parsing 및 Chunking 처리를 진행했습니다.
2. 임베딩 및 벡터화
- 도메인별 특성에 따라 최적화된 Embedding 전략을 수립하여 일관된 임베딩 로직을 적용했습니다.
- 향후 확장성을 고려하여 Vector Store 구조를 설계하고, Embedding Vector를 저장하여 LLM의 Context로 활용할 수 있도록 하였습니다.
3. Router 설계 및 구현
- 사용자의 질문을 분석하여 강의, 문서, 일정 등 적절한 도메인으로 자동 분류할 수 있도록 Routing 로직을 구축했습니다.
- "내일 시간표 어떻게 되나요?"와 같은 질문에서 발생할 수 있는 날짜 정보 이슈를 해결하기 위해 조회 대상 날짜를 명확히 하는 추가 프롬프팅을 도입했습니다.
- Hallucination 현상을 방지하기 위해 반드시 컨텍스트에 현재 시간을 포함시키는 로직을 구현하였습니다.
4. 사용자 인터페이스
- Streamlit을 사용하여 사용자가 쉽고 편리하게 질문을 입력하고 답변을 받을 수 있도록 사용자 친화적인 인터페이스를 구축했습니다.
한계점 및 개선 방안
- 멀티턴 대화 흐름 구현이 충분하지 않았으며, LangChain의 체이닝 기능 활용이 미흡했습니다.
- 테스트 및 평가가 다소 부족하여 응답 품질 개선의 여지가 있었습니다.
- 향후 데이터의 질적, 양적 확장이 반드시 필요하며, 특히 정확한 데이터 확보의 중요성을 깨닫게 되었습니다.
결론 및 향후 계획
본 프로젝트를 통해 LangChain과 RAG 기술의 가능성을 체감하였으며, 사용자 중심의 정보 제공 시스템 구축에 대한 경험을 쌓을 수 있었습니다. 앞으로의 프로젝트에서는 더욱 정교한 멀티턴 대화 기능과 체계적인 평가 프로세스를 도입하여 사용자 경험을 지속적으로 개선해 나갈 예정입니다.
'프로그래밍 > AI' 카테고리의 다른 글
과학 지식 질의 IR 경진대회 (0) | 2025.04.25 |
---|---|
업스테이지 NLP 경진대회 (0) | 2025.03.26 |
업스테이지 CV 경진대회 정리 (0) | 2025.03.02 |
tensor: dim 이해하기 (0) | 2025.02.11 |
역전파 (0) | 2025.02.10 |