# AI Video Brief — 온라인 영상 음성다운로드·AI요약 서비스 신규 구축 **소요 시간**: 35분 **Context 사용량**: input 500k / output 20k tokens (추정값) ## 요청 내용 유튜브 등 온라인 영상 URL을 입력하면 ① 음성(mp3) 다운로드 ② 내용 AI 요약을 해주는 서비스 구축. ## 사용자 결정 사항 - 위치: 별도 새 프로젝트 `/home/hanmac/projects/gitea/b23042/ai_video_brief` - 텍스트 확보: **자막 우선, 없으면 Whisper 음성인식 대체** - 요약 AI: **로컬 무료 모델 (Ollama)** — 유료 API 대신 - 형태: 웹 화면 ## 구축 내용 ### 스택 - Python 3.10 venv (`/usr/bin/python3.10` — anaconda 3.8은 구버전이라 회피) - FastAPI + uvicorn (포트 **55100**, GhiVideo 55000과 충돌 없음) - yt-dlp 2026.7.4 (다운로드·자막), faster-whisper 1.2.1 (small/CPU/int8) - Ollama v0.31.1 + **exaone3.5:7.8b** (LG 한국어 특화 모델, 4.8GB) ### 파이프라인 1. `download`: yt-dlp → bestaudio → ffmpeg mp3 변환 → 다운로드 링크 2. `summarize`: 자막(수동→자동, ko→en) 탐색 → 없으면 mp3 다운로드 후 Whisper 받아쓰기 → 6,000자 초과 시 부분요약→최종요약(map-reduce) → EXAONE 한국어 요약 3. 작업은 백그라운드 스레드 + 웹에서 1.5초 폴링으로 진행률 표시 ### 특이사항 (다음 에이전트 참고) - **sudo 사용 불가** (비밀번호 필요) → python3.10-venv apt 설치 실패 → `pip install --user virtualenv`로 우회 - Ollama 최신 릴리스는 `.tgz`가 아닌 **`.tar.zst`** 형식 → anaconda의 zstd로 해제, `~/ollama/bin/ollama`에 수동 설치 (systemd 서비스 없음, run.sh가 자동 기동) - GPU 없음 → Whisper·Ollama 모두 CPU 동작 (RAM 31GB로 충분) ## 테스트 결과 - ✅ mp3 다운로드: 19초 영상 → 0.4MB mp3 정상 생성 - ✅ Whisper 받아쓰기: 19초 영상 정확히 전사 - ✅ 요약 전 과정: 자막 발견 → EXAONE 한국어 요약 생성 (약 10초 소요) - ✅ 웹 화면 http://localhost:55100 정상 서빙 ## 실행 방법 ```bash cd /home/hanmac/projects/gitea/b23042/ai_video_brief && ./run.sh # 브라우저: http://localhost:55100 ```