Python License Tech

RAG & IRQA 과학 챗봇 템플릿

생성형 AI의 답변과 DB 내 유사 질문(Reference)을
동시에 제공하는 교육용 챗봇 오픈소스입니다.

AI 답변 생성 (Generative)

Google Gemini 또는 Ollama 모델을 활용하여 사용자의 질문 맥락을 파악하고 답변을 생성합니다.

유사 질문 검색 (Retrieval)

벡터 데이터베이스(FAISS)에서 사용자의 질문과 가장 유사한 기존 데이터를 찾아 원본 그대로 보여줍니다. 사용자는 이를 통해 정보를 교차 확인할 수 있습니다.

주요 특징

데이터 교차 제공

AI가 생성한 설명과 함께, 데이터베이스에 저장된 실제 Q&A 자료를 참고용으로 제시합니다.

모델 선택 지원

환경에 따라 클라우드 기반(Gemini) API와 로컬 설치형(Ollama) 모델 중 선택하여 구동할 수 있습니다.

이미지 파일과 PDF 파일 지원

학생이 이미지 파일이나 PDF 파일을 입력하면 자동으로 벡터 인덱싱을 수행하여 검색 DB를 구축하고 RAG가 적용되어 일회성으로 답변합니다.

설치 및 설정 (Quick Start)

1. 소스코드 실행
git clone https://github.com/kungmo/science_qna_rag_irqa_chatbot.git cd science_qna_rag_irqa_chatbot pip install -r requirements.txt chainlit run chainlit_memory.py -w
2. 환경 변수 설정 (.env)
GOOGLE_API_KEY=여기에_Gemini_API_키_입력 DB_HOST=127.0.0.1 DB_USER=여기에_사용자이름_입력 DB_PASSWORD=여기에_비밀번호_입력 DB_NAME=여기에_DB_이름_입력