[PDF 기반 퀴즈 생성기] 구성하기

2025. 5. 2. 17:34·ML_DL/MUJAKJUNG (무작정 시리즈)
728x90
반응형

한문장 정리

학습하며 정리한 글의 내용을 파일로 업로드하고, 해당 내용을 기반의 퀴즈를 풀어 복습한다.

 


기획 의도

  • 학습에 복습은 필수적이며, 문제 풀이를 통해 학습의 정도를 파악할 수 있다.
  • RAG 기반의 퀴즈 생성을 통해, 내가 정리한 내용을 바탕으로 복습을 진행할 수 있도록 한다.

구현해야할 기능

Streamlit 화면

  • PDF 파일 업로드
  • LLM 기반 퀴즈 생성 및 정답 제출, 정답 확인

RAG

  • PDF 텍스트 임베딩
  • 유사도 기반 검색 (PDF 내용 가운데에 주제와 관련있는 내용)

Streamlit 구현

sidebar

  • 내용 안내 : API키 입력을 통해 퀴즈를 생성할 수 있고, 임베딩과 퀴즈 생성 비용이 발생한다
  • 파일 업로더 : 파일이 없는 경우 ⇒ 파일 업로드 경고
  • API 키 입력창 : API가 올바르지 않은 경우 ⇒ Invalid Key 경고
  • 주제 입력창 : 주제가 입력되지 않은 경우 ⇒ 주제 없음 경고
  • 퀴즈 생성 버튼
  • 초기화 버튼 : 퀴즈, 주제 초기화

 main

  • 퀴즈 화면 : 문제, 보기가 나타나고, radio 버튼으로 보기 중 하나를 선택할 수 있다.
  • 정답 제출 버튼 : 정답 확인 및 해설 제공 화면 / 문제 제출이 완료되면, 정답 여부와 해설이 제공된다.

RAG

  • 임베딩 모델 API (feat. openai) : OpenAI API KEY 준비
  • 유사도 검색 (feat. faiss, sklearn) : 업로드한 PDF파일에서, 주제에 맞는 내용을 가져와 퀴즈 생성에 활용한다.
  • 퀴즈 생성 프롬프트 생성 : prompt에 참고 문서 부분을 포함하고, 주제와 유사한 내용을 가져와 넣는다.
저작자표시 (새창열림)

'ML_DL > MUJAKJUNG (무작정 시리즈)' 카테고리의 다른 글

텍스트 분할 (Text Spliter)  (0) 2025.05.08
[PDF 기반 퀴즈 생성기] 구현하기 (feat. Streamlit, RAG)  (0) 2025.05.07
[LangChain] 모델 파라미터 설정  (0) 2025.04.09
[LangChain] 챗봇 구성하기  (0) 2025.04.03
[LangChain] 시작하기  (0) 2025.03.19
'ML_DL/MUJAKJUNG (무작정 시리즈)' 카테고리의 다른 글
  • 텍스트 분할 (Text Spliter)
  • [PDF 기반 퀴즈 생성기] 구현하기 (feat. Streamlit, RAG)
  • [LangChain] 모델 파라미터 설정
  • [LangChain] 챗봇 구성하기
swwho
swwho
일상을 데이터화하다
  • swwho
    하루한장
    swwho
  • 전체
    오늘
    어제
    • 분류 전체보기 (188)
      • ML_DL (39)
        • MUJAKJUNG (무작정 시리즈) (18)
        • 딥러닝 공부하기 (21)
      • 데이터사이언스 (1)
        • EDA (1)
        • 데이터과학을 위한 통계 (0)
      • 데이터엔지니어링 (2)
      • 논문리뷰 (2)
        • Computer Vision (2)
      • Python 활용하기 (12)
      • 코딩테스트 (127)
        • Python (109)
        • MySQL (14)
      • Git (3)
      • MySQL 활용하기 (0)
      • 일상 이야기 (1)
  • 블로그 메뉴

    • 홈
    • 태그
  • 최근 글

  • 250x250
  • hELLO· Designed By정상우.v4.10.3
swwho
[PDF 기반 퀴즈 생성기] 구성하기
상단으로

티스토리툴바