-
Notifications
You must be signed in to change notification settings - Fork 0
Open
Description
Summary
현재 단일 ML 서버를 Feedback Server와 Analyze Server로 분리
Current State
- 단일 ML 서버가 두 가지 기능 수행:
- AI 텍스트 감지 (Analyze)
- 피드백 생성 (Feedback)
- 두 기능이 서로 다른 리소스 특성을 가짐
Proposed Architecture
┌─────────────────┐ ┌──────────────────┐
│ Analyze Server │ │ Feedback Server │
│ (AI Detection) │ │ (LLM Feedback) │
├─────────────────┤ ├──────────────────┤
│ - RoBERTa model │ │ - TinyLlama/etc │
│ - CPU intensive │ │ - Memory heavy │
│ - Fast response │ │ - Slower response│
└─────────────────┘ └──────────────────┘
Benefits
- 독립적 스케일링: 분석 요청 많으면 Analyze Server만 스케일 아웃
- 장애 격리: 한 서버 장애가 다른 서버에 영향 없음
- 리소스 최적화: 각 서버에 맞는 인스턴스 타입 선택 가능
- 배포 독립성: 모델 업데이트 시 해당 서버만 배포
- GPU 지원 용이: Analyze Server에만 GPU 인스턴스 적용 가능
Tasks
- Analyze Server 코드 분리
- Feedback Server 코드 분리
- 각 서버용 Dockerfile 생성
- ECR 리포지토리 추가 (analyze-server, feedback-server)
- ECS Task Definition 분리
- API Server에서 각 서버 호출 로직 수정
- Redis 메시지 큐 토픽 분리
- Terraform 업데이트
- CI/CD 파이프라인 업데이트
API Changes
# Before (single ML server)
POST /analyze → ML Server
# After (separate servers)
POST /detect → Analyze Server
POST /feedback → Feedback Server
Dependencies
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels