File size: 3,974 Bytes
ae9ec05
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
# 🚀 허깅페이스 Spaces 배포 가이드

## 📋 배포 준비사항

### 1. 필수 파일 확인
- `app.py` (메인 애플리케이션)
- `stt_processor.py` (STT 처리 모듈)
- `requirements.txt` (의존성)
- `README.md` (허깅페이스용 설명)

### 2. Google AI API 키 준비
1. [Google AI Studio](https://aistudio.google.com/app/apikey) 접속
2. Google 계정으로 로그인
3. "Create API Key" 클릭
4. 생성된 API 키 복사 (나중에 Hugging Face에서 사용)

## 🔧 허깅페이스 Spaces 배포 단계

### 1단계: Hugging Face 계정 생성
1. [Hugging Face](https://huggingface.co/) 접속
2. 계정 생성 또는 로그인

### 2단계: 새 Space 생성
1. 프로필 페이지에서 "Spaces" 탭 클릭
2. "Create new Space" 버튼 클릭
3. 설정:
   - **Space name**: `stt-speaker-separation` (또는 원하는 이름)
   - **License**: MIT
   - **SDK**: Gradio
   - **Hardware**: CPU basic (무료)
   - **Visibility**: Public

### 3단계: 코드 업로드
다음 방법 중 하나 선택:

#### 방법 A: 웹 인터페이스 사용
1. Space 페이지에서 "Files" 탭 클릭
2. "Upload files" 클릭
3. 다음 파일들을 업로드:
   - `app.py`
   - `stt_processor.py`
   - `requirements.txt`
   - `README.md`

#### 방법 B: Git 사용
```bash
# Space 복제
git clone https://huggingface.co/spaces/YOUR_USERNAME/YOUR_SPACE_NAME
cd YOUR_SPACE_NAME

# 파일 복사
copy app.py .
copy stt_processor.py .
copy requirements.txt .
copy README.md .

# 커밋 및 푸시
git add .
git commit -m "Initial upload of STT speaker separation app"
git push
```

### 4단계: 환경 변수 설정
1. Space 페이지에서 "Settings" 탭 클릭
2. "Repository secrets" 섹션 찾기
3. "New secret" 클릭
4. 다음 입력:
   - **Name**: `GOOGLE_API_KEY`
   - **Value**: 앞서 복사한 Google AI API 키
5. "Add secret" 클릭

### 5단계: 앱 빌드 및 실행 확인
1. Space가 자동으로 빌드 시작됨
2. 빌드 로그에서 오류 확인
3. 빌드 완료 후 앱 인터페이스 확인

## 🔍 빌드 로그 확인 포인트

### 정상 빌드 시 나타나는 로그:
```
Installing dependencies from requirements.txt...
✓ torch
✓ torchaudio
✓ openai-whisper
✓ google-generativeai
✓ gradio
✓ spaces
```

### 주의해야 할 오류:
- **ModuleNotFoundError**: requirements.txt 확인
- **API Key Error**: 환경 변수 설정 확인
- **CUDA/GPU 오류**: CPU 빌드 환경이므로 정상

## 📊 성능 최적화

### CPU 환경 최적화:
1. Whisper 모델을 "base"로 유지 (더 작은 모델 사용)
2. 배치 처리 대신 단일 파일 처리 사용
3. 메모리 사용량 모니터링

### 사용자 경험 개선:
1. 파일 크기 제한 안내
2. 처리 시간 예상 안내
3. 에러 메시지 명확화

## 🌐 배포 후 공유

### Space URL:
`https://huggingface.co/spaces/YOUR_USERNAME/YOUR_SPACE_NAME`

### 임베드 코드:
```html
<iframe
    src="https://your-username-your-space-name.hf.space"
    frameborder="0"
    width="850"
    height="450"
></iframe>
```

## 🛠 문제 해결

### 자주 발생하는 문제:

#### 1. API 키 인식 불가
- Settings → Repository secrets에서 `GOOGLE_API_KEY` 확인
- 키에 특수문자나 공백이 없는지 확인

#### 2. 모델 로딩 시간 초과
- Whisper 모델 크기 조정 (`base``tiny`)
- 타임아웃 설정 증가

#### 3. 메모리 부족
- 동시 처리 요청 수 제한
- 파일 크기 제한 설정

#### 4. 빌드 실패
- requirements.txt의 패키지 버전 호환성 확인
- Python 버전 호환성 확인

## 📞 지원

- [Hugging Face 포럼](https://discuss.huggingface.co/)
- [Gradio 문서](https://gradio.app/docs/)
- [OpenAI Whisper GitHub](https://github.com/openai/whisper)

## 🎉 배포 완료!

배포가 성공적으로 완료되면:
1. 공개 URL을 통해 누구나 접근 가능
2. 자동으로 SSL 인증서 적용
3. CDN을 통한 전세계 접근 가능
4. 사용량 통계 확인 가능