talk / backend /sql /029_tts_instance_gpu_kind.sql
user
Deploy StyleVoiceChat backend
aa9892b
Raw History Blame Contribute Delete
1.66 kB
-- TTS μΈμŠ€ν„΄μŠ€ GPU μ’…λ₯˜ ꡬ뢄 (2026-05-16).
-- admin "TTS μ„œλ²„ μΆ”κ°€" μ—μ„œ RTX 3090 / A100 40GB 선택 κ°€λŠ₯ν•˜κ²Œ 함.
-- νšŒκ·€ 0 κ°€λ“œ: κΈ°μ‘΄ row λŠ” gpu_kind='rtx_3090' μžλ™ λ§€ν•‘, 같은 GHCR image 곡유.
--
-- 이행 단계 (μ‹€ν–‰ μˆœμ„œ):
-- 1) 이 SQL 적용 (ALTER TABLE + system_settings INSERT)
-- 2) backend 배포 (gpu_kind 인자 처리)
-- 3) frontend 배포 (admin UI λ“œλ‘­λ‹€μš΄)
--
-- μ°Έμ‘°: doc/runbook/tts_a100_migration.md Phase 1 사전 단계
ALTER TABLE public.tts_scale_instances
ADD COLUMN IF NOT EXISTS gpu_kind TEXT NOT NULL DEFAULT 'rtx_3090';
-- κΈ°μ‘΄ row μ•ˆμ „ λ§€ν•‘ (DEFAULT κ°€ μƒˆ row μ—λ§Œ μ μš©λ˜λ―€λ‘œ λͺ…μ‹œμ  UPDATE).
UPDATE public.tts_scale_instances
SET gpu_kind = 'rtx_3090'
WHERE gpu_kind IS NULL OR gpu_kind = '';
-- ν–₯ν›„ ν™•μž₯ λŒ€λΉ„ CHECK constraint β€” μƒˆ GPU μΆ”κ°€ μ‹œ 이 μ œμ•½μ„ κ°±μ‹ .
ALTER TABLE public.tts_scale_instances
DROP CONSTRAINT IF EXISTS tts_scale_instances_gpu_kind_check;
ALTER TABLE public.tts_scale_instances
ADD CONSTRAINT tts_scale_instances_gpu_kind_check
CHECK (gpu_kind IN ('rtx_3090', 'a100_40gb'));
-- GPU 별 Vast offer 가격 λ²”μœ„ (search_offers μ‹œ dph ν•„ν„°).
-- κΈ°μ‘΄ tts_scale_dph_min / tts_scale_dph_max λŠ” deprecated β€” rtx_3090 용으둜 맀핑됨
-- (scale_service.py κ°€ ν˜Έν™˜μ„± μœ„ν•΄ fallback 으둜 읽음).
INSERT INTO public.system_settings(key, value) VALUES
('tts_scale_dph_min_rtx_3090', '0.05'::jsonb),
('tts_scale_dph_max_rtx_3090', '0.15'::jsonb),
('tts_scale_dph_min_a100_40gb', '0.50'::jsonb),
('tts_scale_dph_max_a100_40gb', '1.20'::jsonb)
ON CONFLICT (key) DO NOTHING;