hgzero/design/backend/logical/realtime-meeting-transcript-flow.mmd
hiondal bb921e10eb 작업 파일 정리 및 실시간 회의록 플로우 추가
- 가파팀 프로토타입 파일 삭제
- 가파팀 유저스토리 삭제
- 실시간 회의록 작성 플로우 설계서 추가 (Mermaid, Markdown)
- 백업 및 데이터 디렉토리 추가
- AI 데이터 샘플 생성 도구 추가

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-22 14:16:10 +09:00

104 lines
3.8 KiB
Plaintext

sequenceDiagram
participant User as 참석자
participant WebApp as 웹 애플리케이션
participant STT as STT Service
participant Azure as Azure Speech
participant MQ as RabbitMQ
participant AI as AI Service<br/>(RAG 통합)
participant Meeting as Meeting Service
participant Collab as Collaboration Service
participant Others as 다른 참석자들
%% ========================================
%% Phase 1: 실시간 음성 변환
%% ========================================
Note over User,Azure: Phase 1: 실시간 음성 → 텍스트 변환
User->>WebApp: 발언 (음성)
WebApp->>STT: 음성 데이터 스트리밍
activate STT
STT->>Azure: 음성-텍스트 변환 요청
Azure-->>STT: 변환된 텍스트<br/>(화자, 타임스탬프)
STT->>STT: 텍스트 세그먼트 저장<br/>(STT DB)
deactivate STT
%% 5초마다 이벤트 발행
STT->>MQ: TranscriptReady 이벤트<br/>(5초 간격 배치)
%% ========================================
%% Phase 2: AI 처리 (병렬)
%% ========================================
Note over MQ,AI: Phase 2: AI 분석 (병렬 처리)
MQ->>AI: TranscriptReady 구독
activate AI
par 회의록 내용 정리
AI->>AI: 1. 발언 내용 분석<br/>(LLM)
AI->>AI: 2. 주제별 분류
AI->>AI: 3. 핵심 내용 요약
AI->>AI: 4. 구조화된 회의록 생성
and 전문용어 추출
AI->>AI: 5. 전문용어 자동 감지<br/>(NLP)
AI->>AI: 6. 벡터 임베딩 생성
AI->>AI: 7. 맥락 기반 설명 생성<br/>(LLM)
and 관련 자료 검색
AI->>AI: 8. 유사도 기반 문서 검색<br/>(관련도 70%+)
AI->>AI: 9. 관련 회의록 검색<br/>(최대 5개)
AI->>AI: 10. 참고 자료 링크 생성
end
deactivate AI
%% ========================================
%% Phase 3: 데이터 저장
%% ========================================
Note over AI,Meeting: Phase 3: 데이터 저장
AI->>AI: AI 처리 결과 저장<br/>(AI DB)
AI->>MQ: TranscriptSummaryCreated<br/>이벤트 발행
MQ->>Meeting: TranscriptSummaryCreated<br/>구독
activate Meeting
Meeting->>Meeting: 회의록 데이터 저장<br/>(Meeting DB):
Note right of Meeting: - 정리된 회의록<br/>- 전문용어 목록<br/>- 관련 자료 링크<br/>- 타임스탬프
deactivate Meeting
%% ========================================
%% Phase 4: 실시간 동기화 (결과 표시)
%% ========================================
Note over Meeting,Others: Phase 4: 처리 결과 실시간 동기화
Meeting->>Collab: 회의록 업데이트 요청<br/>(REST API)
activate Collab
Collab->>WebApp: 통합 결과 Push<br/>(WebSocket):
Note right of Collab: - 정리된 회의록<br/>- 전문용어 + 설명<br/>- 관련 자료 링크
Collab->>Others: 통합 결과 Push<br/>(WebSocket)
deactivate Collab
%% ========================================
%% Phase 5: 화면 표시
%% ========================================
Note over WebApp,Others: Phase 5: 통합 화면 표시
activate WebApp
WebApp->>WebApp: UI 업데이트:
Note right of WebApp: 1. 정리된 회의록<br/>2. 전문용어 하이라이트<br/>3. 용어 설명 팝업<br/>4. 관련 자료 사이드바
WebApp->>User: 통합 화면 표시
deactivate WebApp
activate Others
Others->>Others: 동일한 UI 업데이트
Others->>Others: 통합 화면 표시
deactivate Others
%% ========================================
%% 성능 요약
%% ========================================
Note over User,Others: 전체 프로세스 성능 목표<br/>- 음성 → 텍스트: < 2초<br/>- AI 처리: < 10초<br/>- 저장 및 동기화: < 2초