Skip to content

techkwon/school-report-with-solar

Repository files navigation

AI 생기부 (AI 학생부 기록 생성기)

Solar Pro2 기반 학교생활기록부 자동 생성 도구

교육부 학교생활기록부 기재요령을 준수하는 AI 기반 학생부 기록 생성 프로그램입니다. 업스테이지 Solar LLM을 활용하여 한국어에 최적화된 생기부 문구를 생성합니다.


📋 목차

  1. 주요 기능
  2. 사용 방법
  3. 보안 등급 및 개인정보 보호
  4. 기술 스택
  5. 활동 영역별 안내

✨ 주요 기능

개별 모드 (Single Mode)

  • 학생 1명의 활동 정보를 입력하여 생기부 문구 생성
  • 3가지 버전(핵심 요약, 팩트 중심, 성장 관찰) 동시 생성
  • 활동별 맞춤 키워드 선택 기능

일괄 모드 (Multi Mode)

  • CSV 파일 업로드로 다수 학생 일괄 처리
  • 진행률 실시간 표시
  • 결과 CSV 다운로드

AI 생성 특징

  • 교육부 기재요령 100% 준수
  • 영어 → 한글 자동 변환
  • 특정 대학/기업명 자동 일반화
  • 주어 생략, 현재형 명사형 종결
  • 학교급별 글자 수 제한 자동 적용

📖 사용 방법

1. 학교급 선택

상단에서 초등학교 / 중학교 / 고등학교 중 선택합니다.

2. 활동 영역 선택

좌측 사이드바에서 활동 영역을 선택합니다:

  • 자율활동
  • 진로활동
  • 동아리활동
  • 과목별세특
  • 행동특성

3. 개별 모드 사용법

  1. 활동명 입력 (필수)

    • 예: "학급회의", "과학탐구반", "진로체험"
  2. 키워드 선택 (선택)

    • 활동 영역별로 적합한 키워드가 제공됩니다
    • 클릭하여 선택/해제
  3. 상세 내용 입력 (선택)

    • 학생의 구체적인 활동 내용 입력
    • 최대 1000자
  4. AI 생기부 생성하기 버튼 클릭

  5. 결과 확인 및 복사

    • Ver 1 (핵심 요약): 1~2문장 간결 요약
    • Ver 2 (팩트 중심): 3~4문장 객관적 서술
    • Ver 3 (성장 관찰): 상세 기록 (글자 수 제한 적용)

4. 일괄 모드 사용법

  1. 샘플 양식 다운로드

    • "샘플 양식" 버튼 클릭
  2. CSV 파일 준비

    학번,이름,활동명,활동내용
    10101,홍길동,리더십,학급 회의 중재
    10102,이순신,과학 탐구,실험 오차 분석
    
  3. 파일 업로드

    • 드래그 앤 드롭 또는 클릭하여 선택
  4. 학생 선택 및 생성

    • 체크박스로 생성할 학생 선택
    • "일괄 생성 시작" 버튼 클릭
  5. 결과 다운로드

    • 완료 후 다운로드 버튼 클릭

5. 프롬프트 튜닝

  • 좌측 하단 "프롬프트 설정" 클릭
  • 추가 지시사항 입력 (예: "문체를 부드럽게", "진로 연관성 강조")
  • 프리셋 태그 활용 가능

🔒 보안 등급 및 개인정보 보호

국내 기준 준수 사항

개인정보보호법 준수

항목 준수 상태 설명
개인정보 최소 수집 ✅ 준수 학번/이름은 로컬에만 저장
목적 외 이용 금지 ✅ 준수 생기부 생성 목적으로만 사용
안전성 확보 조치 ✅ 준수 HTTPS 암호화 통신
제3자 제공 금지 ✅ 준수 외부 서버 전송 없음

교육부 학생정보 보호 가이드라인 준수

항목 준수 상태 설명
학생 식별정보 보호 ✅ 준수 학번/이름 서버 미전송
데이터 암호화 ✅ 준수 API 통신 HTTPS
접근 통제 ✅ 준수 로컬 저장만
파기 조치 ✅ 준수 브라우저 종료 시 자동 삭제 옵션

해외 기준 준수 사항

FERPA (미국 교육기록 프라이버시법) 준수

항목 준수 상태 설명
학생 기록 보호 ✅ 준수 개인 식별 정보 서버 미전송
제3자 공개 금지 ✅ 준수 외부 공유 없음
접근 권한 통제 ✅ 준수 로컬 브라우저만 접근

GDPR (유럽 개인정보보호규정) 준수

항목 준수 상태 설명
데이터 최소화 ✅ 준수 필요 최소 정보만 처리
목적 제한 ✅ 준수 명확한 단일 목적
저장 제한 ✅ 준수 자동 삭제 옵션 제공
무결성 및 기밀성 ✅ 준수 암호화 통신

데이터 흐름 구조

┌─────────────────────────────────────────────────────────────────┐
│                        사용자 브라우저                            │
│  ┌─────────────────┐    ┌─────────────────┐                     │
│  │ 학번, 이름      │    │ 활동명, 내용    │                     │
│  │ (localStorage)  │    │ (API 전송)      │                     │
│  │ ❌ 서버 미전송   │    │ ✅ 암호화 전송   │                     │
│  └─────────────────┘    └────────┬────────┘                     │
└──────────────────────────────────┼──────────────────────────────┘
                                   │ HTTPS
                                   ▼
                    ┌──────────────────────────┐
                    │   Supabase Edge Function  │
                    │   (solar-api)             │
                    │   - 입력 전처리           │
                    │   - 특수문자/이모지 제거   │
                    └──────────┬───────────────┘
                               │ HTTPS
                               ▼
                    ┌──────────────────────────┐
                    │   Upstage Solar API      │
                    │   - 생기부 문구 생성      │
                    │   - 개인정보 미포함       │
                    └──────────────────────────┘

보안 기능

1. 서버 미전송 (학번/이름)

  • 학생 식별 정보(학번, 이름)는 브라우저 localStorage에만 저장
  • AI API로는 활동명, 활동 내용만 전송
  • 학생 개인정보가 외부 서버에 저장되지 않음

2. 로컬 저장소 암호화

  • 모든 데이터는 브라우저 localStorage에 저장
  • 브라우저 종료 시 자동 삭제 옵션 제공 (설정에서 활성화)

3. HTTPS 암호화 통신

  • 모든 API 통신은 HTTPS로 암호화
  • 중간자 공격(MITM) 방지

4. 입력 데이터 전처리

  • 이모지 및 특수문자 자동 제거
  • SQL Injection, XSS 공격 방지

5. 교외 정보 자동 필터링

  • 특정 대학명/기업명 자동 일반화
  • 부모/가정환경 정보 자동 제거

보안 설정 방법

  1. Secure 버튼 클릭 (우측 상단)
  2. 브라우저 종료 시 자동 삭제 옵션 활성화
  3. 일괄 모드에서 전체 삭제 버튼으로 즉시 데이터 삭제 가능

⚠️ 주의사항

  1. CSV 파일 관리

    • 다운로드한 CSV 파일에는 학생 개인정보가 포함됩니다
    • 안전한 장소에 보관하고 사용 후 삭제하세요
  2. 공용 PC 사용 시

    • "브라우저 종료 시 자동 삭제" 옵션을 반드시 활성화하세요
    • 사용 후 브라우저 데이터 삭제 권장
  3. 네트워크 환경

    • 공용 Wi-Fi 사용 시 주의
    • 가능하면 보안된 네트워크에서 사용

🛠 기술 스택

구분 기술
Frontend React 18, TypeScript, Vite
Styling Tailwind CSS, shadcn/ui
State Zustand (persist middleware)
Backend Supabase Edge Functions
AI Model Upstage Solar Pro2
배포 Lovable Cloud

📝 활동 영역별 안내

자율활동

  • 글자 수 제한: 500자
  • 키워드 예시: 자기주도성, 책임감, 협동심, 봉사정신, 소통능력
  • 활동 예시: 학급회의, 또래상담, 환경정화활동

진로활동

  • 글자 수 제한: 초등 500자 / 중·고등 700자
  • 키워드 예시: 진로탐색, 목표의식, 자기이해, 직업윤리, 계획성
  • 활동 예시: 진로체험, 직업탐색, 진로독서활동

동아리활동

  • 글자 수 제한: 500자
  • 키워드 예시: 협업능력, 창의성, 전문성, 열정, 리더십
  • 활동 예시: 코딩동아리, 과학탐구반, 영어회화반

과목별세특

  • 글자 수 제한: 700자
  • 키워드 예시: 학습태도, 탐구력, 논리적사고, 창의성, 발표력
  • 활동 예시: 수학 심화탐구, 과학 실험보고서, 국어 독서활동

행동특성

  • 글자 수 제한: 500자
  • 키워드 예시: 배려, 나눔, 정직, 성실, 존중, 공감능력
  • 활동 예시: 배려, 나눔, 리더십, 협동심

🔗 프로젝트 링크


📞 문의

프로그램 사용 중 문의사항이 있으시면 개발자에게 연락해 주세요.


© 2025 AI 생기부. Powered by Upstage Solar API.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages