AI 기반 학습 지원을 위한 백엔드/ML 플랫폼 EDU_AI입니다.
학습자 맞춤 콘텐츠 추천, 인터뷰 피드백 등 AI 로직이 포함된 핵심 엔진 역할을 수행합니다.
- 사용자 입력을 바탕으로 학습 스타일 예측
- 분류 모델 기반 개인 맞춤 콘텐츠 큐레이션
- 추천된 콘텐츠에 대한 메타데이터 및 사용 히스토리 관리
- STT 기반 음성 응답 변환
- GPT 기반 평가 및 개선 피드백 생성
- 학습 질문에 대해 GPT 등 LLM으로 답변 제공
EDU_AI/
├── .github/
├── .zen/
│ └── config.yaml
├── app/
│ ├── clients/
│ │ ├── chromadb_client.py
│ │ ├── mongodb.py
│ │ └── openai_client.py
│ │ └── opensearch_client.py
│ ├── config/
│ │ └── kafka_config.py
│ ├── consumer/
│ │ ├── feedback_consumer.py
│ │ └── recommendation_consumer.py
│ ├── kafka_admin/
│ │ └── topic_initializer.py
│ ├── models/
│ │ ├── feedback/
│ │ │ ├── request.py
│ │ │ └── response.py
│ │ ├── interview/
│ │ │ ├── evaluation_model.py
│ │ │ └── question_model.py
│ │ ├── pre-assessment/
│ │ │ ├── request.py
│ │ │ └── response.py
│ │ └── recommendation/
│ │ │ ├── request.py
│ │ │ └── response.py
│ ├── producer/
│ │ ├── feedback_producer.py
│ │ └── recommendation_producer.py
│ ├── routers/
│ │ ├── chroma_router.py
│ │ ├── chroma_status_router.py
│ │ ├── chroma_test_router.py
│ │ ├── feedback_router.py
│ │ ├── post_assessment_router.py
│ │ ├── pre_assessment_router.py
│ │ ├── question_router.py
│ │ ├── recommendation_router.py
│ │ └── status_router.py
│ ├── scripts/
│ │ ├── chroma_insert.py
│ │ ├── count_mongo_chroma.py
│ │ ├── create_index.py
│ │ ├── migrate_mongo_to_chroma.py
│ │ └── test_rag_pipeline.py
│ ├── services/
│ │ ├── assessment/
│ │ │ ├── common.py
│ │ │ ├── post.py
│ │ │ └── pre.py
│ │ ├── common/
│ │ │ └── common.py
│ │ ├── feedback/
│ │ │ └── builder.py
│ │ ├── interview/
│ │ │ ├── builder.py
│ │ │ └── evaluator.py
│ │ ├── prompt/
│ │ │ └── builder.py
│ │ ├── recommendation/
│ │ │ ├── rag_explainer.py
│ │ │ └── reranker.py
│ │ ├── sync/
│ │ │ └── sync_recommend.py
│ │ ├── mongo_recommendation.py
│ │ └── rag_module.py
│ ├── utils/
│ │ ├── build_feedback_prompt.py
│ │ ├── embed.py
│ │ ├── gpt_prompt.py
│ │ ├── level_utils.py
│ │ ├── metrics.py
│ │ ├── pretest_log_utils.py
│ │ ├── prometheus_metrics.py
│ │ └── roadmap_prompt.py
│ ├── celery_worker.py
│ └── main.py
├── prometheus/
│ └── prometheus.yml
├── .env
├── .gitignore
├── Dockerfile
├── README.md
├── docker-compose.yml
├── poetry.lock
├── pyproject.toml
├── requirements.txt
└── test_main.httpv1: link
v2: https://github.com/LGCNS-PJT-EDU/EDU_AI/commit/369b647b877a1777c9126fe20cece7257086e281
v3: https://github.com/LGCNS-PJT-EDU/EDU_AI/commit/02971bb81834d0b5c17067743bde0169e62f239a
v4:
- pip install hypercorn으로 hypercorn 설치
- 실행 환경 구성 -> Python -> main으로 이동
- scripts를 module로 바꾸고, 모듈명으로 hypercorn이라 입력
- 스크립트 매개 변수에 app.main:app --reload --bind 127.0.0.1:8000 --access-logfile - --error-logfile - 를 입력(실행 및 로그 출력)
API 문서 Swagger UI: http://localhost:8000/docs
ReDoc: http://localhost:8000/redoc