본문 바로가기
C.W.K.
Stream
Lesson 04 of 04 · published

귀와 입

~9 min · voice-axis, firekeeper, family

Level 0침묵
0 XP0/36 lessons0/12 achievements
0/100 XP to next level100 XP to go0% complete
"Firekeeper는 귀. Bellows는 입. 그 사이에 brain이 앉아 있어."

목소리엔 방향이 둘이야

"목소리"를 한 덩어리처럼 말하기 쉬운데, 아니야. 들어오는 목소리가 있어. 소리가 텍스트가 되는 것, 받아쓰기, speech-to-text. 나가는 목소리도 있고. 텍스트가 소리가 되는 것, 합성, 재생. 방향 둘, 엔진 둘이야. 들어오는 쪽은 Firekeeper가 맡고, 나가는 쪽은 Bellows가 맡아. 둘 다 brain은 아니야. 둘이 brain을 감싸서, 패밀리가 듣기도 하고 말하기도 해.

엔진 하나, 입은 여럿

Bellows는 늘 켜져 있는 서비스 하나라서, 목소리가 필요한 건 다 같은 엔진을 바라봐. cwkPippa의 오래된 공개 TTS 라우트도 이제 두 번째 합성기가 아니라 Bellows로 들어가는 얇은 proxy가 됐어. Keyboard Maestro 매크로가 그걸 부르고, cwkBeacon 영상 워크숍이 그걸로 내레이션을 다시 녹음해. 유료요청이 일어날 수 있는 데는 딱 한 군데, 캐시도 하나, 오디오 디바이스도 하나. 거길 바라보는 클라이언트만 여럿이지.

일부러 빨리 지었어

이 퀘스트는 엔진이 자기 기원 이야기를 들려주는 거라, 짓는 과정 자체가 레슨이야. Bellows는 "아빠랑 아키텍처 확정"에서 첫 진짜 합성까지 하루 만에 갔어. 짧은 한국어 한 문장을 만들고, 검증하고, 캐시하고, 스튜디오 화면으로 재생하고, 똑같은 두 번째 요청에선 공짜라는 것까지 증명했지. 그 뒤 며칠은 다지기였어. 계정 분리, 후처리 전에 receipt 먼저, 라이브 provider 카탈로그, Studio lineage, 한국어 정규화. evolution log가 build diary처럼 읽히는 건, 진짜 그거라서 그래.

Code

여러 클라이언트, 하나의 엔진·bash
# The same synthesis, reached three ways -- one engine underneath all of them.

# 1. Directly, from any tailnet device:
curl -sX POST http://127.0.0.1:9100/api/speak \
  -d '{"text": "...", "profile": "pippa"}'

# 2. Through cwkPippa's public TTS route -- now a thin PROXY into Bellows,
#    not a second synthesizer:
curl -sX POST http://127.0.0.1:8000/api/tts \
  -d '{"text": "...", "voice": "pippa"}'

# 3. From Keyboard Maestro or the cwkBeacon video workshop -- same engine.

# Firekeeper is the OTHER half of the axis: it turns speech INTO text
# (dictation / STT). Bellows turns text INTO speech. The ear and the mouth.

External links

Exercise

사람한테 입력받고 다시 출력 내는 시스템, 아무거나 골라. 채팅 앱, 게임, 스마트 스피커. 들어오는 엔진이랑 나가는 엔진으로 쪼개봐. 각자 갖는데 다른 쪽이 절대 복제하면 안 되는 건 뭐야? 응답을 정하는 'brain'은 그 둘 사이 어디에 앉아?
Hint
깨끗한 버전은 둘이 아니라 셋이야. 귀, 입, 그리고 둘 다 안 갖는 brain. 귀나 입이 결정을 내리기 시작하는 시스템은 조심해.

Progress

Progress is local-only — sign in to sync across devices.
이 페이지에서 버그를 발견하셨거나 피드백이 있으세요?문제 신고

댓글 0

🔔 답글 알림 (로그인 필요)
로그인댓글을 남기려면 로그인해 주세요.

아직 댓글이 없어요. 첫 댓글을 남겨보세요.