1. 전체 AI 시스템 플로우 (Logical Flow)
목적:
사용자 요청이 들어와서 전처리·RAG·영상·퀴즈·AIOps까지 어떻게 흐르는지, “한 줄짜리 관점”에서 보여주는 상위 플로우.
-
사용자 진입
-
프론트엔드 & API Gateway
- 사용자는 크게 두 가지를 한다.
- 콘텐츠 생산: 문서/URL 업로드, 영상/퀴즈 생성/검토
- 콘텐츠 소비: 챗봇 질의, 영상 시청, 퀴즈 응시
- 모든 요청은 API Gateway를 통해 각 백엔드 서비스(전처리, Chat, Video, Quiz, Admin 등)로 라우팅된다.
-
PII/의도/도메인 라우팅 (AI Core 입구)
- 문서/URL 업로드 시: 전처리(DIP)로 보내기 전에 PII 탐지/민감도 분석이 실행된다.
- 챗봇 질문 시: Intent/도메인 분류기로 “보안 질문 / 교육 질문 / 일반 질문 / 신고 관련 / 시스템 관련” 등을 구분하고, 적절한 라우트(Chat-RAG / FAQ / 신고 플로우 등)로 분기한다.
-
Document Intelligence Pipeline(DIP) – 공용 전처리
- 문서/URL이 DIP로 들어오면:
- 파일/HTML 파싱 및 필요한 경우 OCR 수행
- PII 탐지·마스킹 및 민감도(Sensitivity) 태깅
- DocType(4대교육, 직무, 사고리포트 등) 분류
- DocFormat(TEXT/SLIDE/HYBRID) 및 페이지별 SceneType(TEXT_SCENE/SLIDE_SCENE) 분류
- 교육용 블록(EduBlock: 조항/사례/주의/퀴즈후보) 및 씬(Scene) 구조화
- ACL 메타(부서·롤·가시범위)를 문서에 부여
- 전처리 결과는 RAG 인덱싱, 영상 생성, 퀴즈 생성, 챗봇 등 모든 AI 기능의 공통 입력이 된다.
-
RAG 인덱싱 & Vector DB
- DIP에서 나온 교육 블록/텍스트는 청킹·임베딩 되어 Vector DB에 저장된다.
- 모든 청크는
source_doc_id, source_version, ACL 메타를 포함하여 이후 권한 기반 검색이 가능하게 한다.
-
AI 기능 레이어 (Chat / Video / Quiz)
-
Chat Service
- 사용자 질의를 Intent/도메인 분류 후, RAG 검색 + 내부 LLM으로 답변을 생성한다.
- ACL 필터로 해당 사용자가 볼 수 있는 문서/청크만 검색한다.
-
Video Service
-
Quiz Service
- EduBlock 중 퀴즈 후보를 기반으로 내부 LLM이 문항·정답·해설을 생성하고, RAG로 정답 검증을 수행한다.
-
AI Gateway & 외부/내부 라우팅
-
TTS/영상 등 AI 호출 전에 AI Gateway가:
-
feature(예: VIDEO_TTS), DocType, Sensitivity, SourceDomain, PiiRisk 정보를 보고
외부 API 사용 가능 여부를 판단한다.
-
4대교육 + LOW 민감도 + 공공/화이트리스트 도메인 + PII LOW인 경우에만
일부 TTS/영상에 외부 API가 허용되며, 그 외는 모두 내부 LLM/TTS만 사용한다.
-
콘텐츠 소비/학습
- 직원은 챗봇으로 질문하거나, 교육 카탈로그에서 영상을 시청하고, 퀴즈를 풀어 교육을 이수한다.
- 영상/퀴즈는 항상 ACL 조건에 맞는 것만 노출되며, 이수 결과는 교육 이력/리포트에 반영된다.
-
관리·검토 플로우
- 교육담당자/관리자는 Admin Console에서:
- Review Queue(전처리 실패/분류 애매/정책 위반 의심 문서)를 검토하고 수동 조치
- 생성된 영상/퀴즈를 확인·수정·승인
- 정책/문서 버전 변경 시 재생성/재인덱싱 상태를 확인한다.
-
로그 & AIOps 피드백 루프
- 모든 AI 호출/교육 활동은 공통 로그 스키마로 저장된다.
- AIOps 대시보드에서:
- RAG 품질, 영상/퀴즈 효과, 외부 API 사용량, 오류율 등을 모니터링하고
- 전처리/모델/프롬프트/정책을 개선하는 피드백 루프를 수행한다.
2. 서비스 아키텍처 (운영 서비스/모듈 목록 + 역할)
목적:
실제로 배포·운영되는 서비스 단위(컨테이너/마이크로서비스)가 무엇이고, 각자의 책임이 어디까지인지 정의.
- Web Frontend
- 역할:
- 직원/교육담당자/관리자/신고관리자 UI 제공 (챗봇, 교육카탈로그, 영상 플레이어, 퀴즈, Review Queue, 통계 등).
- 모든 요청을 API Gateway로 전달.
- 형태: SPA(React/TypeScript 등) + 인증 토큰 연동.
- API Gateway
- 역할:
- 모든 HTTP 요청을 수신하고, 인증 토큰을 검증한 뒤 적절한 백엔드 서비스로 라우팅.
- REST 엔드포인트를 통합 제공 (예:
/chat, /documents, /video, /quiz, /admin 등).
- 기능: 요청 로깅, 레이트 리밋, 기본 에러 핸들링.
- Auth/ACL Service
- 역할:
- SSO/사내 계정 연동을 통해 로그인·인증 처리.
- 사용자 롤(직원, 제작자, 검토자, 관리자, 신고관리자) 및 부서 정보 관리.
- ACL 컨텍스트(부서, 롤, 가시범위)를 조회하는 API 제공.
- 챗봇/RAG/영상/퀴즈 조회 시 ACL 검증에 사용.