λ²μ(2026-09-08): μΊμ€ν λ μ¬μ©μ κ°μΈ μ±λ μ λ΄μ΄λ€ β μ νλΈ γμ½ν½γ(@kokpick_kr) + μ½ν½ μΈμ€ν. μ νν λ°κ΅΄ β μΌμΈ μ μ β μΏ ν‘ ννΈλμ€ μ νκΉμ§κ° μΊμ€ν μ μΌμ΄λ€. ν½λ΄Β·μλλλλ‘μ κΈ μ μ μ μΊμ€ν μ μΌμ΄ μλλ€ β μ λꡬ λ§ν¬ν (Markto)κ° μ λ΄νλ€. μΊμ€ν κ° ν½λ΄ μͺ½μ κ³μ μ 곡νλ κ²μ μ νν κΈκ° μμ²μ(
data/topic_requests.json) νλλΏμ΄λ©°, νλ¦μ μΊμ€ν β ν½ν β λ§ν¬ν ν λ°©ν₯μ΄λ€.
μ€ν¬λ¦½ν ν¨λ°λ¦¬μ λ°°ν¬(Fanout) λΌμΈ. ν½λ΄(pickdam.com) κΈμ λ§€μΌ μΌμΈ /λ¦΄μ€ μμ(mp4)μΌλ‘ μμ μλ λ³νν΄ ν λ κ·Έλ¨μΌλ‘ 보λΈλ€ β ν°μμ 1λΆ λ΄ μ νλΈ μΌμΈ Β·μΈμ€ν λ¦΄μ€ μ λ‘λ.
[μ£Ό 1ν] trend_scan.py λ€λ₯Έ μΌμΈ /λ¦΄μ€ λΆμ(μ νλΈ μΈκΈ° μμ μ€μΈ‘) β data/trends.json
"μ§κΈ λ¨Ήνλ ν
Β·νμΒ·μμ¬"λ₯Ό λ§€μ£Ό μλ κ°±μ
[λ§€μΌ] make_short.py ν½λ΄ μ΅μ κΈ β νΈλ λ λ°μ λλ³Έ(LLM)
β μ¬ μΉ΄λ(μΊλ¦ν°/μ€μ¬ μ€νμΌ) β λ¬΄λ£ TTS λ΄λ μ΄μ
β ffmpeg 1080Γ1920 ν©μ± β ν
λ κ·Έλ¨ μ μ‘
| μ΄λ¦ | κ° | λΉκ³ |
|---|---|---|
| LLM_API_KEY | Gemini ν€ | Scripto/Pictoμ λμΌ |
| TELEGRAM_TOKEN / TELEGRAM_CHAT_ID | λ΄ ν ν°/μ± | λμΌ |
| YT_API_KEY | YouTube Data API v3 ν€ | μ ν β μμΌλ©΄ νΈλ λκ° βμ€μΈ‘β κΈ°λ° |
casto.jsonstyle: character(μ΄λͺ¨μ§ μΊλ¦ν° μΉ΄λ) / card(ν
μ€νΈλ§) / realistic(μ€μ¬, v1)video.voice: edge-tts νκ΅μ΄ 보μ΄μ€trends.queries: νΈλ λ μ€μΊ κ²μμ΄(λμΉ νμ₯ μ μμ )