← 프로젝트 목록
에듀핏 · AI 학습 취약영역 분석
2인 팀 · 요구사항 분석·설계 · 취약영역 시각화 · 학습 시간표 담당
관리형 스터디카페·학원용 학습관리 SaaS '러너스하이'에 붙이는 AI 기능입니다. 모의고사 성적표 사진 한 장으로 성적을 등록하고, 취약 단원·유형을 분석해 학습 시간표까지 이어 줍니다.
Vue 3NestJSPostgreSQLTypeORMOpenAI GPT APILangGraph
4개핵심 기능 (인식·분석·시간표·챗봇)
3단계성적표 → 취약영역 → 시간표
0건문제·해설 원문 저장
5과목과목별 풀이 분기
프로젝트 목적
모의고사를 본 뒤 학생은 성적표 정리, 오답 풀이 찾기, 약점 파악, 계획 재조정을 직접 해야 합니다. 분석하느라 정작 공부할 시간이 줄어드는 문제를 AI로 대신하는 것이 목표였습니다. 학생 개인이 유료 AI를 구독하기는 부담스러워, 학원이 도입해 학생에게 제공하는 B2B 기능으로 기획했습니다.
| 기간 | 2026.03 — 2026.08 |
|---|---|
| 인원 | 2명 (신영섭 · 윤정민) |
| 협력 | 교육 B2B SaaS 기업 비틀웍스 |
담당 역할
- 학생·학원 양쪽의 불편을 모아 요구사항·기능 목록·화면 흐름으로 정리
- 오답과 문항 태그를 연결하는 취약영역 분석 구조와 데이터 설계
- 과목별 약점과 성적 변화 시각화
- 취약도 가중치로 학습 시간을 배분하는 시간표 생성 워크플로
시스템 구조
이렇게 설계한 이유평가원·교육청 모의고사는 문제와 해설 원문을 서비스에 저장할 수 없습니다. 그래서 원문 대신 공개 해설의 출제 의도에서 단원·개념·유형 태그만 뽑아 자체 DB로 만들고, 학생의 오답 문항을 이 태그와 연결해 취약영역을 계산했습니다. AI 호출은 성적표 인식, 풀이, 시간표처럼 판단이 필요한 단계에만 쓰고, 분석 자체는 DB 조회로 처리합니다.
주요 구현
1. 성적표 인식→2. 학생 확인·수정→3. 취약영역 분석→4. 시간표 생성
- 성적표 사진을 멀티모달 LLM으로 읽어 과목별 점수·백분위·등급·틀린 문항을 추출하고, 학생이 확인·수정한 뒤 성적 이력으로 저장합니다.
- 틀린 문항을 단원·개념·유형 태그와 매칭해 반복해서 틀리는 단원과 유형을 뽑고, 과목별 약점과 성적 변화를 그래프로 보여 줍니다.
- 등급 격차가 클수록 시간 비중을 늘리는 가중치로 과목별 학습 시간을 배분하고, 학생이 수락하거나 다시 설정할 수 있게 했습니다.
- 문제풀이 챗봇은 LangGraph로 이미지 검증 → 과목 분류 → 캐시 확인 → 과목별 풀이 생성 → 풀이 검증 순서를 고정했습니다. 문제 이미지는 처리 직후 서버에서 삭제합니다.
해결 과제
1. 문제 원문을 쓸 수 없는 취약영역 분석
- 과제
- 약점을 분석하려면 틀린 문제가 어떤 단원·유형인지 알아야 하는데, 평가원·교육청 문제와 해설 원문은 저작권 때문에 저장할 수 없었습니다.
- 접근
- EBSi 공개 해설의 출제 의도에서 단원·개념·유형만 태그로 추출해 저장했습니다. 태그는 사실 정보라 원문 없이도 오답과 연결할 수 있습니다. 예: 2025년 6월 평가원 수학 21번 → 미적분 › 정적분의 활용 · 넓이 계산형.
원문을 저장하지 않고 단원·유형 수준의 취약영역 분석 구현
2. 쓰는 사람과 사는 사람이 다른 서비스
- 과제
- 서비스를 쓰는 사람은 학생이지만 도입을 결정하는 쪽은 학원입니다. 학생 기능만 만들면 학원이 도입할 이유가 약했습니다.
- 접근
- 학생에게는 분석 시간을 줄이는 기능을, 코치(학원 선생님)에게는 학생별 취약영역을 한눈에 보는 분석을 주도록 요구사항을 나눴습니다. 기존 러너스하이의 Plan · Do · Reflect 흐름에 맞춰, 분석 결과가 학습 계획(Plan)으로 바로 이어지게 설계했습니다.
성적표 인식 · 취약영역 시각화 · 시간표 생성 · 문제풀이 챗봇 4개 기능을 프로토타입으로 구현·시연
3. 같은 문항을 여러 학생이 묻는 챗봇
- 과제
- 같은 모의고사를 본 학생들은 같은 문항을 반복해서 묻기 때문에, 매번 풀이를 새로 만들면 AI 호출 비용이 계속 늘어납니다.
- 접근
- 워크플로에 캐시 확인 단계를 두어, 이미 만든 풀이가 있으면 저장된 풀이로 답하고 없을 때만 과목별 풀이를 생성한 뒤 검증하게 했습니다.
같은 문항 질문은 AI 풀이 생성 없이 저장된 풀이로 응답
남은 한계
- 평가원·교육청 문항은 태그 수준까지만 분석합니다. 학원이 직접 출제한 모의고사는 원문·해설을 RAG로 인덱싱해 문제 단위 분석으로 넓힐 계획입니다.
- 시각화 화면을 열 때마다 DB를 다시 조회해, 분석 결과 캐싱이 필요합니다.
- 분석 시간 단축 효과는 실제 학원 사용자로 측정하지 못했습니다.