hgzero/design/backend/sequence/outer/08-맥락기반용어설명제공.puml
djeon e1d411e989 외부 시퀀스 설계 가이드 및 설계서 추가
- 외부 시퀀스 설계 가이드 다운로드 (claude/sequence-outer-design.md)
- 외부 시퀀스 설계 디렉토리 생성 (design/backend/sequence/)

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-22 13:23:50 +09:00

79 lines
2.3 KiB
Plaintext

@startuml
!theme mono
title 맥락 기반 용어 설명 제공 Flow
actor "User" as user
participant "Web App" as web
participant "API Gateway" as gateway
participant "RAG Service" as rag
participant "Vector DB" as vectordb
participant "PostgreSQL" as db
== 실시간 용어 감지 ==
user -> web: 회의록 내용 조회 중
web -> gateway: GET /api/meetings/transcripts/{id}
gateway -> rag: 회의록 내용 전달\n(기술 용어 감지 요청)
rag -> rag: NLP 기반 기술 용어 추출\n(confidence > 70%)
note right of rag
- 도메인 용어 사전 매칭
- 컨텍스트 분석
- 신뢰도 점수 계산
end note
rag --> gateway: 감지된 용어 목록\n{terms: [{word, position, confidence}]}
gateway --> web: 회의록 + 하이라이트 용어
web --> user: 회의록 표시\n(기술 용어 하이라이트)
== 용어 설명 요청 ==
user -> web: 하이라이트 용어 호버
web -> gateway: GET /api/rag/terms/explain\n?term={용어}&context={문장}&meeting_id={id}
gateway -> rag: 맥락 기반 용어 설명 요청
== Vector 유사도 검색 ==
rag -> vectordb: Vector 검색\n(term embedding, similarity search)
note right of vectordb
- 과거 회의록 임베딩 검색
- 관련 문서 임베딩 검색
- 유사도 임계값: 0.7
end note
vectordb --> rag: 유사 문서 조각 목록\n(최대 10개, similarity > 70%)
rag -> db: 관련 컨텍스트 메타데이터 조회\n(project_id, issue_id, meeting_ids)
db --> rag: 프로젝트, 이슈, 회의 정보
== 설명 생성 ==
rag -> rag: LLM 기반 설명 생성
note right of rag
생성 내용:
1. 간단한 정의
2. 현재 회의에서의 맥락적 의미
3. 관련 프로젝트/이슈
4. 과거 회의 참조 (최대 3개)
end note
rag -> db: 과거 회의 제목 및 날짜 조회\n(meeting_ids, LIMIT 3)
db --> rag: 회의 메타데이터
rag --> gateway: 용어 설명 응답\n{definition, context_meaning,\nrelated_projects, past_meetings}
gateway --> web: 200 OK\n{explanation: {...}}
web --> user: 툴팁/사이드 패널에 설명 표시
note left of user
표시 내용:
- 📖 정의: "..."
- 💬 맥락: "이 회의에서는..."
- 🔗 관련: 프로젝트 A, 이슈 #123
- 📅 과거 회의:
• 2025-08-15 기획 회의
• 2025-07-20 기술 검토
• 2025-06-10 아키텍처 논의
end note
@enduml