에이스
에이스
🏆 AI 챔피언
💰 재테크 찐친

기출문제 PDF로 문제를 자동 생성하는 학습 앱 만들기 with Google AI Studio

소개

기출문제를 풀면서 느낀 점은, 반복 학습이 중요하다는 것이었습니다. 그래서 매번 수동으로 문제를 뽑는 과정을 줄이고자, 기출문제 PDF를 넣으면 문제를 자동 생성해주는 학습 앱을 만들어보았습니다.

진행 방법

  • 사용 도구: Google AI Studio, Google Gemini, ChatGPT

  • 기본 흐름:

    1. 민트베어 AI 어시스턴트: 아이디어를 기반으로 기획서 자동 생성

    2. 기출문제 PDF 파일을 업로드, 문제로 변환하고 학습 결과를 제공

    3. 결과를 확인하고 수정 반복

  • 프롬프트 구성의 중요성:

    • 대화창을 통해 계속 수정 및 테스트 반복

    • 예시 프롬프트:

      Google AI Studio – Build 전용 PRD 입력 템플릿
      
      이 문서에 기재된 내용을 기반으로, Google AI Studio – Build는 실행 시점의 최신 기능·최신 모델·최신 API·최신 매뉴얼을 자동으로 확인하여 최적의 앱을 구성합니다.
      구체적인 UI/DB 구조/모델 설정은 자동으로 설계해주세요.
      
      ⸻
      
      [0] 기본 정보
      
      앱 이름: AI 스마트 기출문제 마스터 (AI Smart Exam Prep)
      앱의 주요 목적 (한 문장): 사용자가 PDF 형식의 기출문제를 업로드하면 AI가 이를 분석하여 대화형 문제은행 퀴즈로 변환하고 학습 결과를 제공하는 웹 애플리케이션입니다.
      
      ⸻
      
      [1] 앱의 주요 기능
      
      앱에서 제공하고 싶은 핵심 기능을 자유롭게 작성하세요.
      Build는 아래 내용을 참고하되, 최신 기능을 우선 적용하여 최적화된 구조로 자동 구성합니다.
      
      핵심 기능:
      1. **PDF 업로드 및 분석**: 사용자가 기출문제 PDF 파일을 드래그 앤 드롭으로 업로드하면, AI가 텍스트와 문제 구조를 추출합니다.
      2. **자동 문제 생성 (문제은행 모드)**: 추출된 데이터를 기반으로 객관식/주관식 문제를 자동으로 식별하여 인터랙티브한 퀴즈 형태로 변환합니다.
      3. **학습 및 채점 모드**: 사용자가 문제를 풀면 실시간으로 정답 여부를 확인하고 해설을 볼 수 있습니다.
      4. **오답 노트**: 틀린 문제만 모아서 다시 학습할 수 있는 기능을 제공합니다.
      5. **학습 이력 관리**: 사용자의 지난 학습 기록(점수, 날짜 등)을 브라우저에 저장하여 보여줍니다.
      
      ⸻
      
      [2] 사용자 흐름
      
      사용자가 앱을 어떻게 사용할지 대표적인 흐름을 간단히 적어주세요.
      상세 동작 방식과 화면 구성은 Build가 최신 매뉴얼 기준으로 자동 설계합니다.
      
      사용자 흐름:
      1. 메인 화면에 접속하여 'PDF 업로드' 영역에 기출문제 파일을 올립니다.
      2. AI 분석이 완료되면 '학습 시작하기' 버튼을 누릅니다.
      3. 화면에 표시된 문제를 하나씩 풀고 '정답 확인'을 누릅니다.
      4. 모든 문제를 푼 후, 최종 점수와 틀린 문제 리스트를 확인합니다.
      5. 나중에 다시 방문했을 때, '내 학습 기록' 탭에서 이전에 생성한 문제 세트를 다시 불러와 학습합니다.
      
      ⸻
      
      [3] 데이터 활용 여부
      
      필요 시 저장 또는 조회 기능이 포함되는지 작성하세요.
      구체 스키마·DB 구조는 작성하지 마세요.
      Build가 실행 시점의 최신 API와 권장 방식을 확인하여 자동 구성합니다.
      
      데이터 저장/조회 기능 필요 여부: 필요 (로컬 전용)
      데이터 관련 요구사항:
      - **외부 서버나 데이터베이스를 사용하지 않습니다.**
      - 모든 데이터(업로드된 문제 데이터, 사용자의 학습 진행 상황, 점수 기록)는 사용자의 브라우저 **로컬 스토리지(Local Storage)** 또는 IndexedDB에만 저장합니다.
      - 앱을 새로고침해도 로컬 저장소에서 데이터를 불러와 학습을 이어갈 수 있어야 합니다.
      
      ⸻
      
      [4] 화면 구성 의도 (선언적 표현)
      
      원하는 화면 유형을 간단히 적어주세요.
      UI/레이아웃/컴포넌트 배치는 Build가 최신 방식으로 구성합니다.
      
      원하는 화면 유형:
      1. **메인 대시보드**: 중앙에 큰 파일 업로드 영역이 있고, 하단에 '최근 학습한 문제지' 리스트가 카드 형태로 배치됨.
      2. **퀴즈 풀이 화면**: 문제는 카드 형태로 중앙에 집중 배치되며, 보기를 선택하고 정답을 확인하는 직관적인 UI. 상단에는 진행률 바(Progress Bar) 표시.
      3. **결과 리포트 화면**: 원형 차트로 점수를 시각화하고, 오답 리스트를 스크롤 가능한 목록으로 표시.
      
      ⸻
      
      [5] 기타 요구사항
      
      필요한 경우 추가 요구사항을 작성하세요.
      작성된 요구사항은 Build가 최신 기능과 매뉴얼을 기반으로 자동 최적화하여 구현합니다.
      
      기타 요구사항:
      - 학습에 집중할 수 있도록 불필요한 장식이 없는 깔끔하고 미니멀한 디자인을 선호합니다.
      - 폰트는 가독성이 좋은 세련된 한국어 폰트(예: Pretendard, Noto Sans KR 등)를 적용해주세요.
      - 모바일 환경에서도 문제를 풀기 편하도록 반응형으로 제작해주세요.
      
      ⸻
      
      [6] 보조 옵션
      
      Build가 앱을 구성할 때 참고할 수 있는 옵션입니다.
      작성하지 않으면 Build가 판단하여 자동 구성합니다.
      
      - 디자인 테마: 화이트 & 블루 톤의 신뢰감 있는 교육 앱 스타일.
      - PDF 파싱 시 문제와 해설이 분리되어 있다면, 해설은 '정답 확인' 클릭 시에만 보이도록 처리.
      
      ⸻
      
      [7] 확장 가능성
      
      향후 확장하고 싶은 아이디어가 있다면 적어주세요.
      Build는 “현재 작성된 PRD 범위에서 구현 가능한 수준”으로만 확장안을 반영하고,
      구체 구현은 최신 기능 기준으로 자동 설계합니다.
      
      확장 아이디어:
      - 로컬에 저장된 학습 결과를 JSON 파일로 내보내기/가져오기 기능.
      - 문제 풀이 시간을 측정하는 타이머 기능 추가.
      
      ⸻
      
      Build 적용 지침 (중요)
      
      아래 문장은 사용자가 수정하지 않고 그대로 Build에 들어가야 하는 고정 문장입니다:
      
      “위 PRD 내용은 실행 시점의 Google AI Studio – Build가 제공하는 최신 기능, 최신 모델, 최신 API, 최신 매뉴얼을 기준으로 해석하고 구현합니다.
      필요한 경우 Build는 최신 버전 권장 설정을 우선 적용하여 UI·기능·데이터 구조를 자동으로 최적 설계합니다.”
      
  • 에러 해결 팁:

    • 한 번에 안 되면, 오류 내용을 다시 대화창에 입력하면 의외로 쉽게 해결되는 경우가 많았어요.

    • 특히, 처음에는 정답을 넣었는데도 AI가 전부 틀렸다고 오류 처리해서 당황했는데, 반복하면서 점점 결과가 안정되었습니다 🛠️

      한국사이트 스크린샷
      한국사이트 스크린샷

결과와 배운 점

  • 수정하고 반복하는 게 핵심!

    • 한 번에 완벽한 결과를 기대하기보다, 여러 번 시도하고 고쳐가는 과정이 필요

도움 받은 글 (선택)


1

뉴스레터 무료 구독

👉 이 게시글도 읽어보세요