GitHub - sansan0/TrendRadar: โญAI-driven public opinion & trend monitor with multi-platform aggregation, RSS, and smart alerts.๐ŸŽฏ ๅ‘Šๅˆซไฟกๆฏ่ฟ‡่ฝฝ๏ผŒไฝ ็š„ AI ่ˆ†ๆƒ…็›‘ๆŽงๅŠฉๆ‰‹ไธŽ็ƒญ็‚น็ญ›้€‰ๅทฅๅ…ท๏ผ่šๅˆๅคšๅนณๅฐ็ƒญ็‚น +  RSS ่ฎข้˜…๏ผŒๆ”ฏๆŒๅ…ณ้”ฎ่ฏ็ฒพๅ‡†็ญ›้€‰ใ€‚AI ็ฟป่ฏ‘ +  AI ๅˆ†ๆž็ฎ€ๆŠฅ็›ดๆŽจๆ‰‹ๆœบ๏ผŒไนŸๆ”ฏๆŒๆŽฅๅ…ฅ MCP ๆžถๆž„๏ผŒ่ต‹่ƒฝ AI ่‡ช็„ถ่ฏญ่จ€ๅฏน่ฏๅˆ†ๆžใ€ๆƒ…ๆ„ŸๆดžๅฏŸไธŽ่ถ‹ๅŠฟ้ข„ๆต‹็ญ‰ใ€‚ๆ”ฏๆŒ Docker ๏ผŒๆ•ฐๆฎๆœฌๅœฐ/ไบ‘็ซฏ่‡ชๆŒใ€‚้›†ๆˆๅพฎไฟก/้ฃžไนฆ/้’‰้’‰/Telegram/้‚ฎไปถ/ntfy/bark/slack ็ญ‰ๆธ ้“ๆ™บ่ƒฝๆŽจ้€ใ€‚
Service

GitHub - sansan0/TrendRadar: โญAI-driven public opinion & trend monitor with multi-platform aggregation, RSS, and smart alerts.๐ŸŽฏ ๅ‘Šๅˆซไฟกๆฏ่ฟ‡่ฝฝ๏ผŒไฝ ็š„ AI ่ˆ†ๆƒ…็›‘ๆŽงๅŠฉๆ‰‹ไธŽ็ƒญ็‚น็ญ›้€‰ๅทฅๅ…ท๏ผ่šๅˆๅคšๅนณๅฐ็ƒญ็‚น + RSS ่ฎข้˜…๏ผŒๆ”ฏๆŒๅ…ณ้”ฎ่ฏ็ฒพๅ‡†็ญ›้€‰ใ€‚AI ็ฟป่ฏ‘ + AI ๅˆ†ๆž็ฎ€ๆŠฅ็›ดๆŽจๆ‰‹ๆœบ๏ผŒไนŸๆ”ฏๆŒๆŽฅๅ…ฅ MCP ๆžถๆž„๏ผŒ่ต‹่ƒฝ AI ่‡ช็„ถ่ฏญ่จ€ๅฏน่ฏๅˆ†ๆžใ€ๆƒ…ๆ„ŸๆดžๅฏŸไธŽ่ถ‹ๅŠฟ้ข„ๆต‹็ญ‰ใ€‚ๆ”ฏๆŒ Docker ๏ผŒๆ•ฐๆฎๆœฌๅœฐ/ไบ‘็ซฏ่‡ชๆŒใ€‚้›†ๆˆๅพฎไฟก/้ฃžไนฆ/้’‰้’‰/Telegram/้‚ฎไปถ/ntfy/bark/slack ็ญ‰ๆธ ้“ๆ™บ่ƒฝๆŽจ้€ใ€‚

sansan0
2026.01.24
ยทGitHubยทby web-ghost
#AI#Trend Monitoring#Public Opinion#RSS#Alerts

ํ•ต์‹ฌ ํฌ์ธํŠธ

  • 1TrendRadar๋Š” ๋‹ค์–‘ํ•œ ํ”Œ๋žซํผ์˜ ๋‰ด์Šค ๋ฐ RSS ํ”ผ๋“œ๋ฅผ AI๋กœ ํ†ตํ•ฉ ๋ถ„์„ํ•˜์—ฌ ๊ฐœ์ธํ™”๋œ ํŠธ๋ Œ๋“œ ๋ชจ๋‹ˆํ„ฐ๋ง ๋ฐ ์•Œ๋ฆผ์„ ์ œ๊ณตํ•˜๋Š” ์˜คํ”ˆ์†Œ์Šค ์†”๋ฃจ์…˜์ž…๋‹ˆ๋‹ค.
  • 2์ด ์‹œ์Šคํ…œ์€ ํ‚ค์›Œ๋“œ ๊ธฐ๋ฐ˜์˜ ์ •๊ตํ•œ ์ฝ˜ํ…์ธ  ํ•„ํ„ฐ๋ง, AI ๋ฒˆ์—ญ ๋ฐ ์‹ฌ์ธต ๋ถ„์„ ๋ฆฌํฌํŠธ ์ƒ์„ฑ, ๊ทธ๋ฆฌ๊ณ  ์—ฌ๋Ÿฌ ๋ฉ”์‹œ์ง• ์ฑ„๋„๋กœ์˜ ์Šค๋งˆํŠธ ํ‘ธ์‹œ ์•Œ๋ฆผ ๊ธฐ๋Šฅ์„ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค.
  • 3Docker, GitHub Actions ๋“ฑ ๋‹ค์–‘ํ•œ ํ™˜๊ฒฝ์— ์†์‰ฝ๊ฒŒ ๋ฐฐํฌ ๊ฐ€๋Šฅํ•˜๋ฉฐ, ์ •๋ณด ๊ณผ๋ถ€ํ•˜๋ฅผ ์ค„์ด๊ณ  ๊ด€์‹ฌ ๋ถ„์•ผ์˜ ํ•ต์‹ฌ ์ •๋ณด๋ฅผ ํšจ์œจ์ ์œผ๋กœ ํŒŒ์•…ํ•˜๋Š” ๋ฐ ๊ธฐ์—ฌํ•ฉ๋‹ˆ๋‹ค.

TrendRadar๋Š” AI ๊ธฐ๋ฐ˜์˜ ๊ณต๊ฐœ ์—ฌ๋ก  ๋ฐ ํŠธ๋ Œ๋“œ ๋ชจ๋‹ˆํ„ฐ๋ง ์‹œ์Šคํ…œ์œผ๋กœ, ๋‹ค์–‘ํ•œ ํ”Œ๋žซํผ์˜ ์ •๋ณด๋ฅผ ์ง‘๊ณ„ํ•˜๊ณ , RSS ๊ตฌ๋…์„ ์ง€์›ํ•˜๋ฉฐ, ์Šค๋งˆํŠธ ์•Œ๋ฆผ ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•˜์—ฌ ์ •๋ณด ๊ณผ๋ถ€ํ•˜๋ฅผ ํ•ด์†Œํ•˜๋Š” ๊ฒƒ์„ ๋ชฉํ‘œ๋กœ ํ•ฉ๋‹ˆ๋‹ค. ์ด ํ”„๋กœ์ ํŠธ๋Š” ์‚ฌ์šฉ์ž ์ •์˜ ๊ฐ€๋Šฅํ•œ ํ‚ค์›Œ๋“œ ๊ธฐ๋ฐ˜ ํ•„ํ„ฐ๋ง, AI ๋ฒˆ์—ญ, AI ๋ถ„์„ ์š”์•ฝ ๋“ฑ ๊ณ ๊ธ‰ ๊ธฐ๋Šฅ์„ ํ†ตํ•ด ๋‰ด์Šค ๋ชจ๋‹ˆํ„ฐ๋ง์„ ์ž๋™ํ™”ํ•ฉ๋‹ˆ๋‹ค. Docker ๋ฐฐํฌ๋ฅผ ์ง€์›ํ•˜๋ฉฐ, ๋ฐ์ดํ„ฐ๋Š” ๋กœ์ปฌ ๋˜๋Š” ํด๋ผ์šฐ๋“œ์— ์ €์žฅํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. WeChat, Feishu, DingTalk, Telegram, Email, ntfy, Bark, Slack ๋“ฑ ๋‹ค์–‘ํ•œ ์•Œ๋ฆผ ์ฑ„๋„์„ ํ†ตํ•ฉํ•˜์—ฌ ์‹ค์‹œ๊ฐ„ ํ‘ธ์‹œ ์•Œ๋ฆผ์„ ๋ณด๋ƒ…๋‹ˆ๋‹ค.

ํ•ต์‹ฌ ๊ธฐ๋Šฅ ๋ฐ ๋ฐฉ๋ฒ•๋ก :

  1. ๋ฐ์ดํ„ฐ ์ˆ˜์ง‘ ๋ฐ ํ†ตํ•ฉ (Multi-platform Aggregation & RSS Feed Support):
    • newsnow ํ”„๋กœ์ ํŠธ์˜ API๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ Zhihu, Douyin, Bilibili Hot Search, Wallstreetcn, Baidu Hot Search, CaiLianShe Popular, The Paper, Phoenix New Media, JinRiTouTiao, Weibo ๋“ฑ 11๊ฐœ ์ฃผ์š” ํ”Œ๋žซํผ์˜ ์‹ค์‹œ๊ฐ„ ์ธ๊ธฐ ๊ฒ€์ƒ‰์–ด ๋ฐ ๋‰ด์Šค๋ฅผ ์ง‘๊ณ„ํ•ฉ๋‹ˆ๋‹ค.
    • v4.5.0๋ถ€ํ„ฐ๋Š” RSS/Atom ๊ตฌ๋…์„ ์ง€์›ํ•˜์—ฌ ์‚ฌ์šฉ์ž๊ฐ€ ์ง€์ •ํ•œ RSS ์†Œ์Šค์˜ ๋‚ด์šฉ์„ ํ‚ค์›Œ๋“œ๋ณ„๋กœ ๊ทธ๋ฃนํ™”ํ•˜์—ฌ ์ธ๊ธฐ ๊ฒ€์ƒ‰์–ด์™€ ๋™์ผํ•œ ํ˜•์‹์œผ๋กœ ํ†ตํ•ฉํ•ฉ๋‹ˆ๋‹ค. ์ด๋กœ์จ ์™ธ๋ถ€ ์ •๋ณด์›๊ณผ ํ”Œ๋žซํผ ์ธ๊ธฐ ๊ฒ€์ƒ‰์–ด๋ฅผ ํ•˜๋‚˜์˜ ๋ณด๊ณ ์„œ๋กœ ํ†ตํ•ฉํ•˜์—ฌ ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  1. ์ฝ˜ํ…์ธ  ํ•„ํ„ฐ๋ง ๋ฐ ๊ฐœ์ธํ™” (Precise Content Filtering):
    • config/frequency_words.txt ํŒŒ์ผ์„ ํ†ตํ•ด ์‚ฌ์šฉ์ž ์ •์˜ ํ‚ค์›Œ๋“œ(์˜ˆ: AI, BYD, ๊ต์œก ์ •์ฑ…)๋ฅผ ์„ค์ •ํ•˜์—ฌ ๊ด€์‹ฌ ์žˆ๋Š” ์ •๋ณด๋งŒ ํ•„ํ„ฐ๋งํ•ฉ๋‹ˆ๋‹ค.
    • ๊ธฐ๋ณธ ๋ฌธ๋ฒ•: ํ‚ค์›Œ๋“œ, + (ํ•„์ˆ˜ ํฌํ•จ), ! (์ œ์™ธ)๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋ณต์žกํ•œ ํ•„ํ„ฐ๋ง ๊ทœ์น™์„ ์ •์˜ํ•ฉ๋‹ˆ๋‹ค.
    • ์ •๊ทœ์‹ ๋ฌธ๋ฒ• (v4.7.0): /pattern/ ํ˜•์‹์„ ์‚ฌ์šฉํ•˜์—ฌ ์ •๊ทœ์‹ ๋งค์นญ์„ ์ง€์›ํ•˜๋ฉฐ, =>displayname=> display_name ๋ฌธ๋ฒ•์œผ๋กœ ๋ณต์žกํ•œ ์ •๊ทœ์‹์— ์•Œ๊ธฐ ์‰ฌ์šด ์ด๋ฆ„์„ ๋ถ€์—ฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
    • ์ „์—ญ ํ•„ํ„ฐ๋ง (v3.5.0): [GLOBAL_FILTER] ์˜์—ญ์„ ํ†ตํ•ด ๊ด‘๊ณ , ๋งˆ์ผ€ํŒ…, ์ €ํ’ˆ์งˆ ์ฝ˜ํ…์ธ  ๋“ฑ ์›์น˜ ์•Š๋Š” ๋‚ด์šฉ์„ ์ „์—ญ์ ์œผ๋กœ ํ•„ํ„ฐ๋งํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  1. ํ•ซ์ŠคํŒŸ ์•Œ๊ณ ๋ฆฌ์ฆ˜ ๋ฐ ํŠธ๋ Œ๋“œ ๋ถ„์„ (Hotspot Algorithm & Trend Analysis):
    • TrendRadar๋Š” ์ˆ˜์ง‘๋œ ๋ฐ์ดํ„ฐ๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ์‚ฌ์šฉ์ž ์ •์˜๋œ ๊ฐ€์ค‘์น˜(์„ธ ๊ฐ€์ง€ ๋น„์œจ ์กฐ์ ˆ ๊ฐ€๋Šฅ)๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋ชจ๋“  ํ”Œ๋žซํผ์˜ ์ธ๊ธฐ ๊ฒ€์ƒ‰์–ด๋ฅผ ์žฌ์ •๋ ฌํ•˜์—ฌ ๊ฐœ์ธํ™”๋œ ํ•ซ์ŠคํŒŸ ๋ชฉ๋ก์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. ์ด๋Š” ๋‹จ์ˆœํ•œ ํ”Œ๋žซํผ๋ณ„ ์ˆœ์œ„๊ฐ€ ์•„๋‹Œ ์‚ฌ์šฉ์ž ๊ด€์ ์—์„œ์˜ ์ค‘์š”๋„๋ฅผ ๋ฐ˜์˜ํ•ฉ๋‹ˆ๋‹ค.
    • ์‹ค์‹œ๊ฐ„ ํŠธ๋ Œ๋“œ ์ถ”์ : ๊ฐ ๋‰ด์Šค ํ•ญ๋ชฉ์˜ ์ฒซ ๋“ฑ์žฅ๋ถ€ํ„ฐ ๋งˆ์ง€๋ง‰ ๋“ฑ์žฅ๊นŒ์ง€์˜ ์‹œ๊ฐ„ ๋ฒ”์œ„, ์‹œ๊ฐ„๋Œ€๋ณ„ ์ˆœ์œ„ ๋ณ€ํ™”, ์ถœํ˜„ ๋นˆ๋„๋ฅผ ๊ธฐ๋กํ•ฉ๋‹ˆ๋‹ค.
    • ์‹ ๊ทœ ํ•ซ์ŠคํŒŸ ๊ฐ์ง€: ์ƒˆ๋กœ์šด ํŠธ๋ Œ๋“œ ์ฃผ์ œ๋ฅผ ์‹ค์‹œ๊ฐ„์œผ๋กœ ์‹๋ณ„ํ•˜๊ณ  ๐Ÿ†• ๋งˆํฌ๋กœ ํ‘œ์‹œํ•ฉ๋‹ˆ๋‹ค.
    • ์ง€์†์„ฑ ๋ถ„์„: ์ผํšŒ์„ฑ ํ•ซ์ŠคํŒŸ๊ณผ ์ง€์†์ ์œผ๋กœ ๋ฐœ์ „ํ•˜๋Š” ์‹ฌ์ธต ๋‰ด์Šค๋ฅผ ๊ตฌ๋ณ„ํ•ฉ๋‹ˆ๋‹ค.
    • ๊ต์ฐจ ํ”Œ๋žซํผ ๋น„๊ต: ๋™์ผํ•œ ๋‰ด์Šค๊ฐ€ ๋‹ค๋ฅธ ํ”Œ๋žซํผ์—์„œ ๋ณด์ด๋Š” ์ˆœ์œ„ ๋ณ€ํ™”๋ฅผ ํ†ตํ•ด ๋ฏธ๋””์–ด์˜ ๊ด€์‹ฌ๋„ ์ฐจ์ด๋ฅผ ํŒŒ์•…ํ•ฉ๋‹ˆ๋‹ค.
  1. ์Šค๋งˆํŠธ ํ‘ธ์‹œ ์ „๋žต (Smart Push Strategy):
    • ์„ธ ๊ฐ€์ง€ ํ‘ธ์‹œ ๋ชจ๋“œ:
      • daily (์ผ์ผ ์š”์•ฝ): ๋งค์ผ ์ง€์ •๋œ ์‹œ๊ฐ„์— ๋ชจ๋“  ๋งค์นญ๋œ ๋‰ด์Šค(์ด์ „ ํ‘ธ์‹œ๋œ ๋‚ด์šฉ ํฌํ•จ)๋ฅผ ์š”์•ฝํ•˜์—ฌ ํ‘ธ์‹œํ•ฉ๋‹ˆ๋‹ค.
      • current (ํ˜„์žฌ ๋ชฉ๋ก): ๋งค ์‹œ๊ฐ„ ํ˜„์žฌ์˜ ์ธ๊ธฐ ๊ฒ€์ƒ‰์–ด ๋ชฉ๋ก์„ ํ‘ธ์‹œํ•ฉ๋‹ˆ๋‹ค(์ง€์†์ ์œผ๋กœ ๋ชฉ๋ก์— ์žˆ๋Š” ํ•ญ๋ชฉ์€ ๋งค๋ฒˆ ๋‚˜ํƒ€๋‚ฉ๋‹ˆ๋‹ค).
      • incremental (์ฆ๋ถ„ ๋ชจ๋‹ˆํ„ฐ๋ง): ์ง€๋‚œ ์‹คํ–‰ ์ดํ›„ ์ƒˆ๋กœ ์ถ”๊ฐ€๋œ ๋‚ด์šฉ๋งŒ ํ‘ธ์‹œํ•˜์—ฌ ์ค‘๋ณต์„ ์ตœ์†Œํ™”ํ•ฉ๋‹ˆ๋‹ค.
    • ํ‘ธ์‹œ ์‹œ๊ฐ„ ์ฐฝ ์ œ์–ด (v2.1.0): ํŠน์ • ์‹œ๊ฐ„ ๋ฒ”์œ„(์˜ˆ: 09:00-18:00) ๋‚ด์—์„œ๋งŒ ํ‘ธ์‹œ๊ฐ€ ์ด๋ฃจ์–ด์ง€๋„๋ก ์„ค์ •ํ•˜์—ฌ ๋น„์—…๋ฌด ์‹œ๊ฐ„์˜ ์•Œ๋ฆผ์„ ๋ฐฉ์ง€ํ•ฉ๋‹ˆ๋‹ค.
    • ์ฝ˜ํ…์ธ  ์ˆœ์„œ ์„ค์ • (v3.5.0): 'ํ•ซ์ŠคํŒŸ ํ‚ค์›Œ๋“œ ํ†ต๊ณ„'์™€ '์‹ ๊ทœ ํ•ซ์ŠคํŒŸ ๋‰ด์Šค'์˜ ํ‘œ์‹œ ์ˆœ์„œ๋ฅผ ์„ค์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
    • ํ‘œ์‹œ ๋ชจ๋“œ ์ „ํ™˜ (v4.6.0): keyword(ํ‚ค์›Œ๋“œ๋ณ„ ๊ทธ๋ฃนํ™”)์™€ platform(ํ”Œ๋žซํผ๋ณ„ ๊ทธ๋ฃนํ™”) ๋‘ ๊ฐ€์ง€ ํ‘œ์‹œ ๋ชจ๋“œ๋ฅผ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค.
  1. AI ๋ถ„์„ ๊ธฐ๋Šฅ (v3.0.0, v5.0.0, v5.2.0, v5.3.0, v5.4.0):
    • MCP (Model Context Protocol) ๊ธฐ๋ฐ˜ AI ๋ถ„์„ ์„œ๋ฒ„: AI ๋Œ€ํ˜• ๋ชจ๋ธ(DeepSeek, OpenAI, Google Gemini, ๋ฐ OpenAI ํ˜ธํ™˜ API)์„ ํ™œ์šฉํ•˜์—ฌ ํ‘ธ์‹œ ์ฝ˜ํ…์ธ ๋ฅผ ์‹ฌ์ธต ๋ถ„์„ํ•ฉ๋‹ˆ๋‹ค.
    • LiteLLM ํ†ตํ•ฉ (v5.3.0): ๋‹ค์–‘ํ•œ AI ์ œ๊ณต์—…์ฒด๋ฅผ ๋‹จ์ผ ์ธํ„ฐํŽ˜์ด์Šค๋กœ ํ†ตํ•ฉํ•˜์—ฌ ๋ชจ๋ธ ๊ด€๋ฆฌ์™€ ์œ ์—ฐ์„ฑ์„ ๋†’์˜€์Šต๋‹ˆ๋‹ค. model: "provider/model_name" ํ˜•์‹์„ ์‚ฌ์šฉํ•˜๋ฉฐ, ์ž๋™ ์žฌ์‹œ๋„(num_retries) ๋ฐ ๋Œ€์ฒด ๋ชจ๋ธ(fallback_models) ๊ธฐ๋Šฅ์„ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค.
    • AI ๋ถ„์„ ๋ชจ๋“œ (v5.4.0): follow_report, daily, current, incremental ๋„ค ๊ฐ€์ง€ AI ๋ถ„์„ ๋ชจ๋“œ๋ฅผ ๋…๋ฆฝ์ ์œผ๋กœ ์ œ์–ดํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋˜ํ•œ, AI ๋ถ„์„ ์‹œ๊ฐ„ ์ฐฝ์„ ์ œ์–ดํ•˜๊ณ  ์ผ์ผ ๋นˆ๋„๋ฅผ ์ œํ•œํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
    • ๋ถ„์„ ๋Šฅ๋ ฅ:
      • ํ† ํ”ฝ ํŠธ๋ Œ๋“œ ๋ถ„์„: ํ•ซ์ŠคํŒŸ ์ถ”์ , ์ƒ๋ช… ์ฃผ๊ธฐ, ํญ๋ฐœ ๊ฐ์ง€, ํŠธ๋ Œ๋“œ ์˜ˆ์ธก.
      • ๋ฐ์ดํ„ฐ ํ†ต์ฐฐ: ํ”Œ๋žซํผ ๋น„๊ต, ํ™œ๋™ ํ†ต๊ณ„, ํ‚ค์›Œ๋“œ ๋™์‹œ ์ถœํ˜„.
      • ๊ฐ์„ฑ ๋ถ„์„: ์—ฌ๋ก ์˜ ๊ธ์ •์ /๋ถ€์ •์ , ๋…ผ์Ÿ ๋˜๋Š” ์šฐ๋ ค ๊ฐ์ •์„ ์ •๋ฐ€ํ•˜๊ฒŒ ํฌ์ฐฉํ•ฉ๋‹ˆ๋‹ค.
      • ์œ ์‚ฌ ๋‰ด์Šค ์ฐพ๊ธฐ, ์Šค๋งˆํŠธ ์š”์•ฝ ์ƒ์„ฑ, ๊ณผ๊ฑฐ ๊ด€๋ จ ๋‰ด์Šค ๊ฒ€์ƒ‰, ๋‹ค์ค‘ ๋ชจ๋“œ ๊ฒ€์ƒ‰.
    • ์‚ฌ์šฉ์ž ์ •์˜ ํ”„๋กฌํ”„ํŠธ: config/ai_analysis_prompt.txt ํŒŒ์ผ์„ ํ†ตํ•ด AI ๋ถ„์„์˜ ์—ญํ• ๊ณผ ์ถœ๋ ฅ ํ˜•์‹์„ ์‚ฌ์šฉ์ž ์ •์˜ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
    • AI ๋ฒˆ์—ญ ๊ธฐ๋Šฅ (v5.2.0): ํ‘ธ์‹œ ์ฝ˜ํ…์ธ ๋ฅผ ์›ํ•˜๋Š” ์–ธ์–ด(English, Korean, Japanese, French ๋“ฑ)๋กœ ๋ฒˆ์—ญํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ai_translation_prompt.txt๋ฅผ ํ†ตํ•ด ๋ฒˆ์—ญ ์Šคํƒ€์ผ์„ ์‚ฌ์šฉ์ž ์ •์˜ํ•ฉ๋‹ˆ๋‹ค. AI ๋ถ„์„ ๊ธฐ๋Šฅ๊ณผ ๋™์ผํ•œ ๋ชจ๋ธ ์„ค์ •์„ ๊ณต์œ ํ•ฉ๋‹ˆ๋‹ค.
  1. ์œ ์—ฐํ•œ ์ €์žฅ ์•„ํ‚คํ…์ฒ˜ (v4.0.0):
    • ๋‹ค์ค‘ ์Šคํ† ๋ฆฌ์ง€ ๋ฐฑ์—”๋“œ ์ง€์›:
      • ๋กœ์ปฌ SQLite ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค: Docker/๋กœ์ปฌ ํ™˜๊ฒฝ์˜ ๊ธฐ๋ณธ๊ฐ’์œผ๋กœ, ๋ฐ์ดํ„ฐ๊ฐ€ ๋กœ์ปฌ์— ์ €์žฅ๋ฉ๋‹ˆ๋‹ค.
      • ์›๊ฒฉ ํด๋ผ์šฐ๋“œ ์Šคํ† ๋ฆฌ์ง€ (S3 ํ˜ธํ™˜ ํ”„๋กœํ† ์ฝœ): GitHub Actions ํ™˜๊ฒฝ์˜ ๊ธฐ๋ณธ๊ฐ’์œผ๋กœ, Cloudflare R2์™€ ๊ฐ™์€ S3 ํ˜ธํ™˜ ์„œ๋น„์Šค๋ฅผ ํ†ตํ•ด ๋ฐ์ดํ„ฐ๋ฅผ ํด๋ผ์šฐ๋“œ์— ์ €์žฅํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
    • ์ž๋™ ๋ฐฑ์—”๋“œ ์„ ํƒ: ์‹คํ–‰ ํ™˜๊ฒฝ์— ๋”ฐ๋ผ ์ž๋™์œผ๋กœ ์ €์žฅ ๋ฐฉ์‹์„ ์ „ํ™˜ํ•ฉ๋‹ˆ๋‹ค.
    • ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๊ตฌ์กฐ๊ฐ€ ์ตœ์ ํ™”๋˜์–ด ๋ฐ์ดํ„ฐ ํšจ์œจ์„ฑ๊ณผ ์ฟผ๋ฆฌ ์„ฑ๋Šฅ์ด ํ–ฅ์ƒ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  1. ๋‹ค์ค‘ ์ฑ„๋„ ๋ฐ ๋‹ค์ค‘ ๊ณ„์ • ํ‘ธ์‹œ (Multi-channel & Multi-account Push):
    • WeChat, Feishu, DingTalk, Telegram, Email, ntfy, Bark, Slack ๋“ฑ ๋‹ค์–‘ํ•œ ๋ฉ”์‹œ์ง• ๋ฐ ์ด๋ฉ”์ผ ์ฑ„๋„์„ ํ†ตํ•ด ์•Œ๋ฆผ์„ ๋ณด๋‚ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
    • v3.5.0๋ถ€ํ„ฐ ๋ชจ๋“  ํ‘ธ์‹œ ์ฑ„๋„์ด ๋‹ค์ค‘ ๊ณ„์ • ๊ตฌ์„ฑ์„ ์ง€์›ํ•˜์—ฌ, ์„ธ๋ฏธ์ฝœ๋ก (;)์œผ๋กœ ์—ฌ๋Ÿฌ ๊ณ„์ •์„ ๊ตฌ๋ถ„ํ•˜์—ฌ ๋™์‹œ์— ์—ฌ๋Ÿฌ ๊ทธ๋ฃน์ด๋‚˜ ์žฅ์น˜๋กœ ํ‘ธ์‹œํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  1. ๋ฐฐํฌ ์˜ต์…˜:
    • GitHub Actions: ์„œ๋ฒ„ ์—†์ด GitHub์˜ ๋ฆฌ์†Œ์Šค๋ฅผ ํ™œ์šฉํ•˜์—ฌ ์ฃผ๊ธฐ์ ์œผ๋กœ ํฌ๋กค๋งํ•˜๊ณ  ์›๊ฒฉ ํด๋ผ์šฐ๋“œ ์Šคํ† ๋ฆฌ์ง€์— ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•ฉ๋‹ˆ๋‹ค.
    • Docker ๋ฐฐํฌ: ๋‹ค์ค‘ ์•„ํ‚คํ…์ฒ˜ ์ปจํ…Œ์ด๋„ˆํ™”๋œ ์‹คํ–‰์„ ์ง€์›ํ•˜๋ฉฐ, ๋ฐ์ดํ„ฐ๋Š” ๋กœ์ปฌ์— ์ €์žฅ๋ฉ๋‹ˆ๋‹ค. MCP ์„œ๋น„์Šค๋„ ๋ณ„๋„์˜ Docker ์ด๋ฏธ์ง€(wantcat/trendradar-mcp)๋กœ ์ œ๊ณต๋˜์–ด AI ๋ถ„์„ ๊ธฐ๋Šฅ์„ HTTP ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ํ†ตํ•ด ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.
    • ๋กœ์ปฌ ์‹คํ–‰: Windows/Mac/Linux ํ™˜๊ฒฝ์—์„œ ์ง์ ‘ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
    • ์›น ์„œ๋ฒ„ ์ง€์› (v3.5.0): ๋‚ด์žฅ๋œ ์›น ์„œ๋ฒ„๋ฅผ ํ†ตํ•ด ์ƒ์„ฑ๋œ HTML ๋ณด๊ณ ์„œ์— ๋ธŒ๋ผ์šฐ์ €๋กœ ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

TrendRadar๋Š” ๋‹จ์ˆœํ•œ ์ •๋ณด ์ง‘๊ณ„๋ฅผ ๋„˜์–ด์„  ๊ฐœ์ธํ™”๋œ ์ •๋ณด ์†Œ๋น„๋ฅผ ๊ฐ€๋Šฅํ•˜๊ฒŒ ํ•˜๋ฉฐ, AI๋ฅผ ํ™œ์šฉํ•œ ์‹ฌ์ธต ๋ถ„์„์„ ํ†ตํ•ด ์‚ฌ์šฉ์ž๊ฐ€ ์ค‘์š”ํ•œ ํŠธ๋ Œ๋“œ๋ฅผ ๋น ๋ฅด๊ณ  ํšจ๊ณผ์ ์œผ๋กœ ํŒŒ์•…ํ•  ์ˆ˜ ์žˆ๋„๋ก ๋•์Šต๋‹ˆ๋‹ค.