๐Ÿ“žTTS๊ฐ€ ์ „ํ™”๋ฒˆํ˜ธยท๊ธˆ์•ก์„ ์–ด์ƒ‰ํ•˜๊ฒŒ ์ฝ๋Š”๋‹ค๋ฉด – autotag ์ ์šฉ ๊ฐ€์ด๋“œ(API ์—ฐ๋™)

 

Typecast  |  ์ด๋ฒˆ ์•„ํ‹ฐํด, ์ž์—ฐ์Šค๋Ÿฌ์šด'ํ˜œ์ง„' ๋ชฉ์†Œ๋ฆฌ๋กœ ์ฝ์–ด๋“œ๋ ค์š”

ย 

AI ์Œ์„ฑ์„ ์„œ๋น„์Šค์— ๋ถ™์—ฌ๋ณด๋ฉดย ํ…์ŠคํŠธ ๋Œ€๋ถ€๋ถ„์€ ์ž์—ฐ์Šค๋Ÿฝ๊ฒŒ ์ฝํž™๋‹ˆ๋‹ค. ๋ฌธ์ œ๋Š” ์ˆซ์ž์™€ ๊ธฐํ˜ธ๋ฅผ ์ฝ์–ด์•ผํ•  ๋•Œ์ž…๋‹ˆ๋‹ค. “50,000์›”์ด “์˜ค๋งŒ์˜์›”์œผ๋กœ, “010-1234-5678″์ด ์ž๋ฆฌ ๊ตฌ๋ถ„ ์—†์ด ํ˜๋Ÿฌ๋‚˜์˜ค๋Š” ์ˆœ๊ฐ„ ์•ˆ๋‚ด๊ฐ€ ์–ด์ƒ‰ํ•ด์ง€์ฃ .

๋” ์ข‹์€ ๋ชฉ์†Œ๋ฆฌ, ๋” ์ข‹์€ ์Œ์งˆ์˜ TTS๋ฅผ ๋„์ž…ํ•ด๋„ ํ•ด๊ฒฐ๋˜์ง€ ์•Š์•„์š”. ๋ชฉ์†Œ๋ฆฌ๊ฐ€ ์•„๋‹ˆ๋ผ ์ˆซ์ž๋ฅผ ‘์ฝ๋Š” ๋ฐฉ์‹’์˜ ๋ฌธ์ œ๋ผ์„œ, TTS์— ๋„ฃ๊ธฐ ์ „์— ํ…์ŠคํŠธ๋ฅผ ํ•œ ๋ฒˆ ์ •๋ฆฌํ•ด ์ฃผ๋Š” ๊ณผ์ •(์ „์ฒ˜๋ฆฌ)์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.

์ด ์ •๋ฆฌ๋ฅผ ๋Œ€์‹ ํ•ด ์ฃผ๋Š” ๋„๊ตฌ๊ฐ€ ํƒ€์ž…์บ์ŠคํŠธ์˜ ์˜คํ”ˆ์†Œ์Šค SDK autotag์ž…๋‹ˆ๋‹ค. ์„ค์น˜๋งŒ ํ•œ ๋ฒˆ ํ•ด ๋‘๋ฉด, ์ „ํ™”๋ฒˆํ˜ธยท๊ธˆ์•กยท๋‚ ์งœ๊ฐ€ ์‚ฌ๋žŒ์ด ์ฝ๋Š” ๋ฐฉ์‹์œผ๋กœ ์ž๋™ ์ •๋ฆฌ๋˜์–ด ์ž์—ฐ์Šค๋Ÿฌ์šด ์Œ์„ฑ์ด ์ƒ์„ฑ๋ฉ๋‹ˆ๋‹ค.

์˜ค๋Š˜์€ TTS API๋ฅผ ํ•œ์ธต ๋” ์ž์—ฐ์Šค๋Ÿฝ๊ฒŒ ์‚ฌ์šฉํ•˜๋„๋ก ๋งŒ๋“œ๋Š” autotag ์„ค์น˜๋ถ€ํ„ฐ ํƒ€์ž…์บ์ŠคํŠธ API ์—ฐ๊ฒฐ๊นŒ์ง€ ์„ธ ๋‹จ๊ณ„๋กœ ์•ˆ๋‚ดํ•ด๋“œ๋ ค์š”.

์ด ๊ฐ€์ด๋“œ, ์ด๋Ÿฐ ๋ถ„๋“ค์—๊ฒŒ ์ถ”์ฒœํ•ฉ๋‹ˆ๋‹ค

โœ… TTS ์—ฐ๋™์€ ๋๋ƒˆ๋Š”๋ฐ ์ˆซ์žยท๊ธฐํ˜ธ ๋ฐœ์Œ๋งŒ ์–ด์ƒ‰ํ•ด ์†๋ณด๊ณ  ์‹ถ์€ ๊ฐœ๋ฐœ์ž

โœ… ์ฝœ์„ผํ„ฐยท์•Œ๋ฆผ๋ด‡์ฒ˜๋Ÿผ ๊ณ ๊ฐ๋ช…ยท๊ธˆ์•กยท๋ฒˆํ˜ธ๋ฅผ ์Œ์„ฑ์œผ๋กœ ์•ˆ๋‚ดํ•˜๋Š” ์„œ๋น„์Šค ๋นŒ๋”

โœ… ์ฝ”๋“œ ๋ช‡ ์ค„๋กœ ๋ฐ”๋กœ ์ ์šฉ ๊ฐ€๋Šฅํ•œ ํ•ด๊ฒฐ์ฑ…์„ ์ฐพ๋Š” ๋ถ„

ํƒ€์ž…์บ์ŠคํŠธ API ๋ฌด๋ฃŒ๋กœ ์‹œ์ž‘ํ•˜๊ธฐ โ†’


AI ๋ชฉ์†Œ๋ฆฌ๋Š” ์™œ ์ˆซ์ž๋ฅผ ์–ด์ƒ‰ํ•˜๊ฒŒ ์ฝ์„๊นŒ์š”?

TTS๋Š” ์ž…๋ ฅ๋œ ๊ธ€์ž๋ฅผ ๊ทธ๋Œ€๋กœ ์†Œ๋ฆฌ๋กœ ์˜ฎ๊น๋‹ˆ๋‹ค. ๊ทธ๋ž˜์„œ “50000์›”์ด๋ผ๋Š” ๋ฌธ์ž์—ด์€ “์˜ค๋งŒ์˜์›”์ฒ˜๋Ÿผ ๊ธ€์ž ๋‹จ์œ„๋กœ ์ฝํžˆ์ฃ . ์‚ฌ๋žŒ์ด๋ผ๋ฉด “์˜ค๋งŒ ์›”์œผ๋กœ ๋Š์–ด ์ฝ์„ ํ…์ŠคํŠธ์ธ๋ฐ๋„์š”.

ํŠนํžˆ ํ•œ๊ตญ์–ด๋Š” ๊ฐ™์€ ์ˆซ์ž๋„ ๋งฅ๋ฝ๋งˆ๋‹ค ๋‹ค๋ฅด๊ฒŒ ์ฝํž™๋‹ˆ๋‹ค. ์ „ํ™”๋ฒˆํ˜ธ “010”์€ “๊ณต ์ผ ๊ณต”, ๊ธˆ์•ก์€ “์˜ค๋งŒ ์›”, “3์‹œ 30๋ถ„”์€ “์„ธ ์‹œ ์‚ผ์‹ญ ๋ถ„”์ฒ˜๋Ÿผ ๊ณ ์œ ์–ด์™€ ํ•œ์ž์–ด๊ฐ€ ์„ž์ž…๋‹ˆ๋‹ค. ๊ฒŒ๋‹ค๊ฐ€ ์„œ๋น„์Šค์˜ ์ˆซ์ž๋Š” DB์—์„œ ๋งค๋ฒˆ ๋‹ค๋ฅธ ๊ฐ’์ด ๋“ค์–ด์˜ค๊ธฐ ๋•Œ๋ฌธ์— ์‚ฌ๋žŒ์ด ์ผ์ผ์ด ๊ณ ์น  ์ˆ˜ ์—†์ฃ . ๊ทœ์น™ ๊ธฐ๋ฐ˜์œผ๋กœ ์ž๋™ ์ •๋ฆฌํ•˜๋Š” ์ „์ฒ˜๋ฆฌ ๋‹จ๊ณ„๊ฐ€ ํ•„์š”ํ•œ ์ด์œ ์ž…๋‹ˆ๋‹ค.

๐Ÿ”Š ๊ฐ™์€ ์ „ํ™”๋ฒˆํ˜ธ, autotag ์ ์šฉ ์ „๊ณผ ํ›„๋ฅผ ๋“ค์–ด๋ณด์„ธ์š”

“๊ณ ๊ฐ๋‹˜ ๋ฒˆํ˜ธ 010-1234-5678๋กœ ์•ˆ๋‚ด๋“œ๋ ธ์Šต๋‹ˆ๋‹ค.”

์ ์šฉ ์ „ํ•˜์ดํ”ˆ(-)์€ ๋งˆ์ด๋„ˆ์Šค๋กœ, ์ˆซ์ž๋Š” ์ž๋ฆฌ ๊ตฌ๋ถ„ ์—†์ด ์–ด์ƒ‰ํ•˜๊ฒŒ ์ฝํž™๋‹ˆ๋‹ค

์ ์šฉ ํ›„ํ•œ ์ž๋ฆฌ์”ฉ ๋˜๋ฐ•๋˜๋ฐ•, ์‚ฌ๋žŒ์ด ๋ฒˆํ˜ธ๋ฅผ ๋ถˆ๋Ÿฌ ์ฃผ๋“ฏ ์ฝํž™๋‹ˆ๋‹ค

์–ด๋•Œ์š”, ์ƒ๊ฐ๋ณด๋‹ค ์ฐจ์ด๊ฐ€ ํฌ์ฃ ? ์ด์ œ ๋ฐฉ๊ธˆ ๋“ค์€ ์ฐจ์ด๋ฅผ ์ง์ ‘ ๋งŒ๋“ค์–ด ๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค. autotag ์„ค์น˜๋ถ€ํ„ฐ ํƒ€์ž…์บ์ŠคํŠธ API ์—ฐ๊ฒฐ๊นŒ์ง€, ์„ธ ๋‹จ๊ณ„๋ฉด ์ถฉ๋ถ„ํ•ฉ๋‹ˆ๋‹ค.


STEP 1. autotag ์„ค์น˜ํ•˜๊ธฐ

autotag๋Š” MIT ๋ผ์ด์„ ์Šค ์˜คํ”ˆ์†Œ์Šค์ž…๋‹ˆ๋‹ค. ๋”ฐ๋กœ ๋นŒ๋“œํ•  ํ•„์š” ์—†์ด JavaScript๋Š” npm, Python์€ pip๋กœ ๋ฐ”๋กœ ์„ค์น˜ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํ•œ๊ตญ์–ด์™€ ์˜์–ด๋ฅผ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค.

# JavaScript / TypeScript (Node.js 18 ์ด์ƒ)
pnpm add @neosapience/typecast-autotag
# ๋˜๋Š”: npm install @neosapience/typecast-autotag

# Python (3.8 ์ด์ƒ)
pip install typecast-autotag

์„ค์น˜ ํ›„ ํ•จ์ˆ˜๋ฅผ ๊ฐ€์ ธ์˜ต๋‹ˆ๋‹ค.

import { autoTag, manualTag, autoTagWithManual } from '@neosapience/typecast-autotag';

STEP 2. autotag ์ ์šฉํ•˜๊ธฐ

autotag๋กœ ํ…์ŠคํŠธ๋ฅผ ์ •๋ฆฌํ•˜๋Š” ๋ฐฉ์‹์€ ๋‘ ๊ฐ€์ง€์ž…๋‹ˆ๋‹ค. ํ˜•์‹์ด ๋ถ„๋ช…ํ•œ ๊ฐ’์€ ์ž๋™(autoTag)์œผ๋กœ ์ฒ˜๋ฆฌํ•˜๊ณ , ์ฝ๋Š” ๋ฐฉ์‹์ด ๊ฐˆ๋ฆฌ๋Š” ๊ฐ’๋งŒ ์ง์ ‘(manualTag) ์ง€์ •ํ•  ์ˆ˜ ์žˆ์–ด์š”.

๋ฐฉ๋ฒ• 1์ž๋™์œผ๋กœ ๊ฐ„ํŽธํ•œ autoTag

autoTag('์ด ๊ธˆ์•ก์€ 50000์›์ž…๋‹ˆ๋‹ค.', { language: 'ko' });
// โ†’ '์ด ๊ธˆ์•ก์€ ์˜ค๋งŒ ์› ์ž…๋‹ˆ๋‹ค.'

autoTag('์ „ํ™”๋ฒˆํ˜ธ๋Š” 010-1234-5678์ž…๋‹ˆ๋‹ค.', { language: 'ko' });
// โ†’ '์ „ํ™”๋ฒˆํ˜ธ๋Š” ๊ณต . ์ผ . ๊ณต . ์ผ . ์ด . ์‚ผ . ์‚ฌ . ์˜ค . ์œก . ์น  . ํŒ” ์ž…๋‹ˆ๋‹ค.'

ํƒ€์ž…์บ์ŠคํŠธ autotag๊ฐ€ ์ž๋™ ๊ฐ์ง€ํ•˜๋Š” ํŒจํ„ด์€ ์ „ํ™”๋ฒˆํ˜ธยท๋‚ ์งœยท์‹œ๊ฐ„ยท๊ธˆ์•กยท๋น„์œจยท์˜จ๋„ยท์šฉ๋Ÿ‰ ๋“ฑ 20์—ฌ ๊ฐ€์ง€์ž…๋‹ˆ๋‹ค. ๋Œ€๋ถ€๋ถ„์˜ ๋™์  ํ…์ŠคํŠธ๋Š” ์ด ๋ฐฉ์‹๋งŒ์œผ๋กœ ์ •๋ฆฌ๋ฉ๋‹ˆ๋‹ค.

๋ฐฉ๋ฒ• 2์ˆ˜๋™์œผ๋กœ ์„ธ๋ฐ€ํ•˜๊ฒŒ manualTag

์„œ๋น„์Šค์— ๋”ฐ๋ผ ํ˜•ํƒœ๋งŒ์œผ๋กœ๋Š” ์ฝ๋Š” ๋ฐฉ์‹์ด ๋‹ฌ๋ผ์ง€๋Š” ๊ฐ’๋„ ์žˆ์Šต๋‹ˆ๋‹ค. “1234”๋Š” “์ฒœ์ด๋ฐฑ์‚ผ์‹ญ์‚ฌ”๋กœ ์ฝ์„ ์ˆ˜๋„, ์ฃผ๋ฌธ๋ฒˆํ˜ธ์ฒ˜๋Ÿผ “์ผ ์ด ์‚ผ ์‚ฌ”๋กœ ์ฝ์„ ์ˆ˜๋„ ์žˆ์ฃ . ์‚ฌ๋žŒ ์ด๋ฆ„๋„ ํ•œ ๋‹จ์–ด๋กœ ์ฝ์„์ง€ ๊ธ€์ž๋งˆ๋‹ค ๋˜๋ฐ•๋˜๋ฐ• ์ฝ์„์ง€๋Š” ์˜๋„์— ๋‹ฌ๋ ค ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋ ‡๊ฒŒ ์ฝ๋Š” ๋ฐฉ์‹์ด ๊ฐˆ๋ฆฌ๋Š” ๊ฐ’์€ manualTag๋กœ ์ง์ ‘ ์ง€์ •ํ•  ์ˆ˜ ์žˆ์–ด์š”.

manualTag('์ฃผ๋ฌธ๋ฒˆํ˜ธ digits(1234) ํ™•์ธ ๋ถ€ํƒ๋“œ๋ฆฝ๋‹ˆ๋‹ค.', { language: 'ko' });
// โ†’ '์ฃผ๋ฌธ๋ฒˆํ˜ธ ์ผ . ์ด . ์‚ผ . ์‚ฌ ํ™•์ธ ๋ถ€ํƒ๋“œ๋ฆฝ๋‹ˆ๋‹ค.'

manualTag('์•ˆ๋…•ํ•˜์„ธ์š”, name(๊น€์ฒ ์ˆ˜)๋‹˜.', { language: 'ko' });
// โ†’ '์•ˆ๋…•ํ•˜์„ธ์š”, ๊น€ . ์ฒ  . ์ˆ˜๋‹˜.'

์ˆ˜๋™ ํƒœ๊ทธ(manualTag)๋Š” ์„ธ ๊ฐ€์ง€๋ฅผ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค.

ํƒœ๊ทธ ์ฒ˜๋ฆฌ ๋ฐฉ์‹ ์“ฐ๋Š” ๊ณณ
name() ์ด๋ฆ„์„ ๊ธ€์ž๋ณ„๋กœ ๋˜๋ฐ•๋˜๋ฐ• ๊ณ ๊ฐ๋ช… ์•ˆ๋‚ด
digits() ์ˆซ์ž๋ฅผ ์ž๋ฆฌ๋ณ„๋กœ ์ฃผ๋ฌธยท์นด๋“œยท๊ณ„์ขŒ๋ฒˆํ˜ธ
address() ํ•œ๊ตญ์–ด ์ฃผ์†Œ ์ฝ๊ธฐ ๋ฐฐ์†กยท๋ฐฉ๋ฌธ ์•ˆ๋‚ด

STEP 3. ํƒ€์ž…์บ์ŠคํŠธ API์— ์—ฐ๊ฒฐํ•˜๊ธฐ

๋งˆ์ง€๋ง‰์€ ์—ฐ๊ฒฐ์ž…๋‹ˆ๋‹ค. autotag๋กœ ์ •๋ฆฌํ•œ ํ…์ŠคํŠธ๋ฅผ ๊ธฐ์กด TTS ํ˜ธ์ถœ์— ๊ทธ๋Œ€๋กœ ๋„˜๊ธฐ๊ธฐ๋งŒ ํ•˜๋ฉด ์Œ์„ฑ์ด ๋‚˜์˜ต๋‹ˆ๋‹ค. ๊ธฐ์กด ์ฝ”๋“œ๋Š” ์†๋Œˆ ํ•„์š” ์—†์ด, ์•ž์— autotag ํ•œ ์ค„๋งŒ ์ถ”๊ฐ€ํ•˜๋ฉด ๋์ด์—์š”.

import { autoTagWithManual } from '@neosapience/typecast-autotag';
import { TypecastClient } from '@neosapience/typecast-js';

const client = new TypecastClient({ apiKey: 'YOUR_API_KEY' });

// 1) TTS์— ๋„ฃ๊ธฐ ์ „, ํ…์ŠคํŠธ ์ •๋ฆฌ (์ˆ˜๋™ โ†’ ์ž๋™ ์ˆœ์„œ๋กœ ์ฒ˜๋ฆฌ)
const rawText = 'name(๊น€์ฒ ์ˆ˜)๋‹˜, ์ฃผ๋ฌธ๋ฒˆํ˜ธ digits(1234) ์ƒํ’ˆ์ด 50000์›์— ๊ฒฐ์ œ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.';
const processedText = autoTagWithManual(rawText, { language: 'ko' });

// 2) ์ •๋ฆฌ๋œ ํ…์ŠคํŠธ๋กœ ์Œ์„ฑ ํ•ฉ์„ฑ
const audio = await client.textToSpeech({
  text: processedText,
  model: 'ssfm-v30',
  voice_id: 'tc_xxxxxxxx'
});

์ž๋™/์ˆ˜๋™ ํƒœ๊ทธ๋ฅผ ํ•œ ๋ฒˆ์— ์ ์šฉํ•˜๊ณ  ์‹ถ์œผ๋ฉด autoTagWithManual ํ•œ ์ค„๋กœ ์ฒ˜๋ฆฌํ•ด ๋ณด์„ธ์š”. ์ด์ œ ‘๊ณ ๊ฐ๋ช…’์€ ๋˜๋ฐ•๋˜๋ฐ•, ‘์ฃผ๋ฌธ๋ฒˆํ˜ธ’๋Š” ์ž๋ฆฌ๋ณ„๋กœ, ‘๊ธˆ์•ก’์€ “์˜ค๋งŒ ์›”์œผ๋กœ ์ •๋ฆฌ๋œ ์Œ์„ฑ์ด ์ƒ์„ฑ๋  ๊ฑฐ์˜ˆ์š”.

autotag GitHub ๋ณด๊ธฐ โ†’ autotag ๋ฌธ์„œ ๋ณด๊ธฐ โ†’


autotag, ์–ด๋””์— ์ ์šฉํ•˜๋ฉด ํšจ๊ณผ๊ฐ€ ํด๊นŒ์š”?

autotag๋Š” ์ฃผ๋ฌธ๋ฒˆํ˜ธยท๊ณ ๊ฐ๋ช…ยท๊ธˆ์•ก์ฒ˜๋Ÿผ ๊ฐ’์ด ๋งค๋ฒˆ ๋ฐ”๋€Œ๋Š” ํ…์ŠคํŠธ๋ฅผ ์Œ์„ฑ์œผ๋กœ ์•ˆ๋‚ดํ•˜๋Š” ์„œ๋น„์Šค์—์„œ ํšจ๊ณผ๊ฐ€ ํฝ๋‹ˆ๋‹ค. ์‚ฌ๋žŒ์ด ๋ฏธ๋ฆฌ ์†๋ณผ ์ˆ˜ ์—†๋Š” ํ…์ŠคํŠธ์ผ์ˆ˜๋ก ์ž๋™ ์ •๋ฆฌ๊ฐ€ ๋น›์„ ๋ฐœํ•˜์ฃ .

๐Ÿ“ž AICCยท์ฝœ์„ผํ„ฐยท์•Œ๋ฆผ๋ด‡

๊ณ ๊ฐ๋ช…ยท์ฃผ๋ฌธ๋ฒˆํ˜ธยท๊ฒฐ์ œ ๊ธˆ์•ก์„ ์‹ค์‹œ๊ฐ„์œผ๋กœ ์ฝ์–ด ์ฃผ๋Š” ์•ˆ๋‚ด ์Œ์„ฑ. ์ •ํ™•ํ•œ ๋ฐœ์Œ์ด ๊ณง ์•ˆ๋‚ด์˜ ์‹ ๋ขฐ์ž…๋‹ˆ๋‹ค.

๐ŸŽฌ ์ฝ˜ํ…์ธ  ์ž๋™ํ™”

๋‰ด์Šคยท๋‚ ์”จยท๊ธˆ์œต์ฒ˜๋Ÿผ ์ˆซ์ž๊ฐ€ ๋งŽ์€ ์Šคํฌ๋ฆฝํŠธ๋ฅผ ํ›„์ฒ˜๋ฆฌ ์—†์ด ๋ฐ”๋กœ ์Œ์„ฑ ์ฝ˜ํ…์ธ ๋กœ ๋ณ€ํ™˜ํ•ฉ๋‹ˆ๋‹ค.

๋ฐ˜๋Œ€๋กœ ์ˆซ์žยท๊ธฐํ˜ธ๊ฐ€ ๊ฑฐ์˜ ์—†๋Š” ๋‚˜๋ ˆ์ด์…˜์ด๋‚˜ ์‚ฌ๋žŒ์ด ๋ฏธ๋ฆฌ ๋‹ค๋“ฌ์€ ๊ณ ์ • ์Šคํฌ๋ฆฝํŠธ๋ผ๋ฉด ์ „์ฒ˜๋ฆฌ ํšจ๊ณผ๋Š” ํฌ์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

์ˆซ์ž๊นŒ์ง€ ์‚ฌ๋žŒ์ฒ˜๋Ÿผ ์ฝ๋Š” AI์Œ์„ฑ,
์ง€๊ธˆ ์ ์šฉํ•ด ๋ณด์„ธ์š”

ํƒ€์ž…์บ์ŠคํŠธ์˜ TTS API์™€ autotag๋ฅผ ํ™œ์šฉํ•˜์—ฌ
์ž์—ฐ์Šค๋Ÿฌ์šด AI ์Œ์„ฑ๊ฒฝํ—˜์„ ์™„์„ฑํ•ด๋ณด์„ธ์š”.
AICCยท์ฝœ์„ผํ„ฐยท์ฝ˜ํ…์ธ  ์ž๋™ํ™”๊นŒ์ง€ ์Œ์„ฑ์ด ํ•„์š”ํ•œ ์–ด๋””๋“  ์ ์šฉ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค.

API ๋ฌด๋ฃŒ๋กœ ์‹œ์ž‘ํ•˜๊ธฐ โ†’ ๊ธฐ์—… ๋„์ž… ๋ฌธ์˜ํ•˜๊ธฐ โ†’

FAQ. ์ž์ฃผ ๋ฌป๋Š” ์งˆ๋ฌธ

Q. autotag๋Š” ๋ฌด์—‡์ด๊ณ , ์–ธ์ œ ์“ฐ๋ฉด ์ข‹๋‚˜์š”? ๏ผ‹

autotag๋Š” ์ „ํ™”๋ฒˆํ˜ธยท๊ธˆ์•กยท๋‚ ์งœ์ฒ˜๋Ÿผ ํ˜•์‹์ด ์žˆ๋Š” ํ…์ŠคํŠธ๋ฅผ TTS์— ๋„ฃ๊ธฐ ์ „์— ์‚ฌ๋žŒ์ด ์ฝ๋Š” ๋ฐฉ์‹์œผ๋กœ ์ •๋ฆฌํ•ด ์ฃผ๋Š” ์˜คํ”ˆ์†Œ์Šค ์ „์ฒ˜๋ฆฌ SDK์ž…๋‹ˆ๋‹ค. ์ฃผ๋ฌธ๋ฒˆํ˜ธยท๊ณ ๊ฐ๋ช…ยท๊ธˆ์•ก์ฒ˜๋Ÿผ ๊ฐ’์ด ๋งค๋ฒˆ ๋ฐ”๋€Œ์–ด ์‚ฌ๋žŒ์ด ๋ฏธ๋ฆฌ ์†๋ณผ ์ˆ˜ ์—†๋Š” ํ…์ŠคํŠธ๋ฅผ ์Œ์„ฑ์œผ๋กœ ์•ˆ๋‚ดํ•˜๋Š” ์„œ๋น„์Šค(AICCยท์•Œ๋ฆผ๋ด‡ยท์ฝ˜ํ…์ธ  ์ž๋™ํ™”)์—์„œ ํŠนํžˆ ํšจ๊ณผ์ ์ž…๋‹ˆ๋‹ค.

Q. TTS๊ฐ€ ๊ธˆ์•ก์„ "์˜ค๋งŒ์˜์›"์ฒ˜๋Ÿผ ์ž˜๋ชป ์ฝ์Šต๋‹ˆ๋‹ค. ์–ด๋–ป๊ฒŒ ๊ณ ์น˜๋‚˜์š”? ๏ผ‹

์Œ์„ฑ ํ•ฉ์„ฑ ์ „์— autotag์˜ autoTag๋กœ ๋ณ€ํ™˜ํ•˜๋ฉด "50000์›"์ด "์˜ค๋งŒ ์›"์œผ๋กœ ์ •๋ฆฌ๋ฉ๋‹ˆ๋‹ค. ๊ทœ์น™์„ ์ง์ ‘ ์งค ํ•„์š” ์—†์ด ํŒจํ„ด์„ ์ž๋™ ๊ฐ์ง€ํ•ฉ๋‹ˆ๋‹ค.

Q. ๊ธฐ์กด TTS ์ฝ”๋“œ๋ฅผ ๋งŽ์ด ๊ณ ์ณ์•ผ ํ•˜๋‚˜์š”? ๏ผ‹

์•„๋‹ˆ์š”. ์Œ์„ฑ ํ•ฉ์„ฑ ํ˜ธ์ถœ ์•ž์— ํ…์ŠคํŠธ ๋ณ€ํ™˜ ํ•œ ์ค„(autoTagWithManual)๋งŒ ์ถ”๊ฐ€ํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค. ํ˜ธ์ถœ ์ฝ”๋“œ ์ž์ฒด๋Š” ๊ทธ๋Œ€๋กœ ๋‘ก๋‹ˆ๋‹ค.

Q. TTS ๋ชจ๋ธ์ด ์ด๋ฏธ ์ˆซ์ž๋ฅผ ์ž˜ ์ฝ์œผ๋ฉด autotag๊ฐ€ ๊ตณ์ด ํ•„์š”ํ• ๊นŒ์š”? ๏ผ‹

๋‹จ์ˆœํ•œ ๊ธˆ์•กยท๋‚ ์งœ๋Š” ๋ชจ๋ธ์ด ์ž์—ฐ์Šค๋Ÿฝ๊ฒŒ ์ฝ๊ธฐ๋„ ํ•ฉ๋‹ˆ๋‹ค. ๋‹ค๋งŒ ์ „ํ™”๋ฒˆํ˜ธ ํ•˜์ดํ”ˆ์ด๋‚˜ ์ž๋ฆฌ๋ณ„๋กœ ๋˜๋ฐ•๋˜๋ฐ• ์ฝ์–ด์•ผ ํ•˜๋Š” ๋ฒˆํ˜ธ์ฒ˜๋Ÿผ ํ˜•์‹์ด ๋ชจํ˜ธํ•œ ๊ฐ’์—์„œ๋Š” ๊นจ์งˆ ์ˆ˜ ์žˆ์–ด, ๊ฐ’์ด ๋งค๋ฒˆ ๋ฐ”๋€Œ๋Š” ์„œ๋น„์Šค๋ผ๋ฉด autotag๋กœ ๋ฐœ์Œ์„ ์•ˆ์ •์ ์œผ๋กœ ๋ณด์žฅํ•˜๋Š” ํŽธ์ด ์•ˆ์ „ํ•ฉ๋‹ˆ๋‹ค.

Q. TTS๊ฐ€ ์ „ํ™”๋ฒˆํ˜ธ๋‚˜ ์ฃผ๋ฌธ๋ฒˆํ˜ธ๋ฅผ ํ•œ ์ž๋ฆฌ์”ฉ ์ฝ๊ฒŒ ํ•˜๋ ค๋ฉด ์–ด๋–ป๊ฒŒ ํ•ด์•ผ ํ•˜๋‚˜์š”? ๏ผ‹

์ „ํ™”๋ฒˆํ˜ธ๋Š” autoTag๊ฐ€ ์ž๋™์œผ๋กœ ์ž๋ฆฌ๋งˆ๋‹ค ๋Š์–ด ์ฝ์Šต๋‹ˆ๋‹ค. ์ฃผ๋ฌธ๋ฒˆํ˜ธ์ฒ˜๋Ÿผ ์ผ๋ฐ˜ ์ˆซ์ž์™€ ๊ตฌ๋ถ„์ด ํ•„์š”ํ•˜๋ฉด manualTag์˜ digits()๋กœ ๊ฐ์‹ธ๋ฉด ๋ฉ๋‹ˆ๋‹ค.

Q. TTS autotag๋Š” ์–ด๋–ค ์–ธ์–ดยทํ™˜๊ฒฝ์—์„œ ๋™์ž‘ํ•˜๋‚˜์š”? ๏ผ‹

ํ•œ๊ตญ์–ด์™€ ์˜์–ด๋ฅผ ์ง€์›ํ•˜๊ณ , JavaScriptยทPythonยทJavaยทC/C++์—์„œ ์“ธ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. MIT ๋ผ์ด์„ ์Šค ์˜คํ”ˆ์†Œ์Šค๋ผ ๊ธฐ์กด ์Šคํƒ์— ๊ทธ๋Œ€๋กœ ๋ถ™์ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.


 

์„ธ์ƒ์—์„œ ๊ฐ€์žฅ ์‰ฌ์šด ์ฝ˜ํ…์ธ  ์ œ์ž‘ ํˆด ํƒ€์ž…์บ์ŠคํŠธ

๊ฐ„๋‹จํ•˜๊ฒŒ ํ…์ŠคํŠธ๋งŒ ์ž…๋ ฅํ•˜๋ฉด ๋ˆ„๊ตฌ๋‚˜ ์‰ฝ๊ฒŒ AI ๋ณด์ด์Šค ์ƒ์„ฑ๊ณผ ์˜์ƒ ์ฝ˜ํ…์ธ  ์ œ์ž‘์ด ๊ฐ€๋Šฅํ•ด์š”!