talk / backend /sql /033_tts_engine_kind_dual.sql
user
Deploy StyleVoiceChat backend
aa9892b
Raw History Blame Contribute Delete
1.47 kB
-- TTS ์ธ์Šคํ„ด์Šค engine_kind ์— 'dual' ์ถ”๊ฐ€ (2026-05-20, Dual-engine ํ†ตํ•ฉ image ํŠธ๋ž™).
-- 1 docker = Qwen3 fork ร—2 + CosyVoice 3.0 ร—1 ํ†ตํ•ฉ ์ธ์Šคํ„ด์Šค (์ €ํŠธ๋ž˜ํ”ฝ ํ•˜๋“œ์›จ์–ด ์ ˆ์•ฝ).
--
-- 'dual' ์€ ๋ผ์šฐํŒ… engine ์ด ์•„๋‹ˆ๋ผ instance kind โ€” ๊ฐ ์›Œ์ปค๋Š” ์ž๊ธฐ /health ๋กœ qwen3/
-- cosyvoice35 ๋ฅผ ๋ณด๊ณ ํ•˜๊ณ  dispatcher ๊ฐ€ per-worker ๋ผ์šฐํŒ… (mixed ์ž๋™). instance ์˜
-- 'dual' ๊ฐ’์€ image ์„ ํƒ / disk / inet / proc_count / cap ์—๋งŒ ์‚ฌ์šฉ (scale_service.py).
--
-- ํšŒ๊ท€ 0 ๊ฐ€๋“œ:
-- - 030/032 ์˜ ๊ธฐ์กด 'qwen3'/'cosyvoice35' ์ธ์Šคํ„ด์Šค ์˜ํ–ฅ 0 (constraint ํ™•์žฅ๋งŒ)
-- - user_voice_prompts (sql 031) ์˜ engine_kind CHECK ๋Š” ๋ณ€๊ฒฝ X โ€” prompt ๋Š”
-- ์›Œ์ปค ๋ณด๊ณ  engine ('qwen3'/'cosyvoice35') ๋‹จ์œ„๋กœ ์ €์žฅ, 'dual' ๋กœ ์ €์žฅ ์•ˆ ๋จ
--
-- ์ดํ–‰ ๋‹จ๊ณ„:
-- 1) ์ด SQL ์ ์šฉ (constraint ๊ฐฑ์‹ )
-- 2) backend ๋ฐฐํฌ (ENGINE_KIND_DUAL ์ฒ˜๋ฆฌ)
-- 3) PoC ๊ฒŒ์ดํŠธ 3๊ฐœ ํ†ต๊ณผ ํ›„ voicetalk-tts-dual:latest ๋นŒ๋“œ (build-tts-dual-image.yml)
-- 4) frontend ๋ฐฐํฌ (admin engine dropdown "Dual")
-- 5) admin "TTS ์„œ๋ฒ„ ์ถ”๊ฐ€" โ†’ Dual ์„ ํƒ spawn
--
-- ์ฐธ์กฐ: doc/runbook/tts_engine_multi.md "Dual-engine ํ†ตํ•ฉ image" ์„น์…˜
ALTER TABLE public.tts_scale_instances
DROP CONSTRAINT IF EXISTS tts_scale_instances_engine_kind_check;
ALTER TABLE public.tts_scale_instances
ADD CONSTRAINT tts_scale_instances_engine_kind_check
CHECK (engine_kind IN ('qwen3', 'cosyvoice35', 'dual'));