๐Ÿš€ AutoReadme: AI๋กœ ๊ฐœ๋ฐœ์ž ๋ฌธ์„œ ํ˜์‹ 

๋ฐœํ–‰: (2026๋…„ 1์›” 5์ผ ์˜ค์ „ 08:05 GMT+9)
17 min read
์›๋ฌธ: Dev.to

Source: Dev.to

์œ„์— ์ œ๊ณต๋œ Source ๋ผ์ธ ์™ธ์— ๋ฒˆ์—ญํ•  ํ…์ŠคํŠธ๊ฐ€ ํฌํ•จ๋˜์–ด ์žˆ์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๋ฒˆ์—ญ์„ ์›ํ•˜๋Š” ๋ณธ๋ฌธ์„ ์ œ๊ณตํ•ด ์ฃผ์‹œ๋ฉด ํ•œ๊ตญ์–ด๋กœ ๋ฒˆ์—ญํ•ด ๋“œ๋ฆฌ๊ฒ ์Šต๋‹ˆ๋‹ค.

๋‚ด๊ฐ€ ๋งŒ๋“  ๊ฒƒ

AutoReadme๋Š” AI ๊ธฐ๋ฐ˜ ๋ฌธ์„œ ์ƒ์„ฑ๊ธฐ๋กœ, ๋ณต์žกํ•œ ํ”„๋กœ์ ํŠธ ํด๋”๋ฅผ 30์ดˆ ์ด๋‚ด์— ์ „๋ฌธ์ ์ธโ€ฏREADME ํŒŒ์ผ๋กœ ๋ณ€ํ™˜ํ•ฉ๋‹ˆ๋‹ค. Google์˜ Gemini AI API๋ฅผ ์‚ฌ์šฉํ•ด ์ „์ฒด ์ฝ”๋“œ๋ฒ ์ด์Šค๋ฅผ ๋ถ„์„ํ•˜๊ณ , ์–ธ์–ด์™€ ํ”„๋ ˆ์ž„์›Œํฌ๋ฅผ ๊ฐ์ง€ํ•˜๋ฉฐ, ๋‹ค์–‘ํ•œ ํ…œํ”Œ๋ฆฟ ์˜ต์…˜์œผ๋กœ ํฌ๊ด„์ ์ธ ๋ฌธ์„œ๋ฅผ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค.

ํ•ด๊ฒฐํ•˜๋Š” ๋ฌธ์ œ

๋ชจ๋“  ๊ฐœ๋ฐœ์ž๋Š” ๋ฌด์–ธ๊ฐ€๋ฅผ ๋งŒ๋“  ํ›„ ๋นˆ README๋ฅผ ๋ฐ”๋ผ๋ณด๋Š” ๊ณ ํ†ต์„ ์ž˜ ์•Œ๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ๋ฌธ์„œ ์ž‘์„ฑ์—๋Š” ์‹œ๊ฐ„์ด ๋งŽ์ด ๊ฑธ๋ฆฌ๊ณ , ํ˜•ํŽธ์—†๋Š” ๋ฌธ์„œ๋Š” ํ›Œ๋ฅญํ•œ ํ”„๋กœ์ ํŠธ๋ฅผ ๋ง์นฉ๋‹ˆ๋‹ค.

  • **68โ€ฏ%**์˜ ์˜คํ”ˆ์†Œ์Šค ํ”„๋กœ์ ํŠธ๊ฐ€ ๋ถ€์ ์ ˆํ•œ ๋ฌธ์„œ ๋•Œ๋ฌธ์— ๊ณ ํ†ต๋ฐ›๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.
  • ๊ฐœ๋ฐœ์ž๋“ค์€ ์ฝ”๋”ฉ ๋Œ€์‹  ๋ฌธ์„œ ์ž‘์—…์— **23โ€ฏ%**์˜ ์‹œ๊ฐ„์„ ์†Œ๋น„ํ•ฉ๋‹ˆ๋‹ค.

์ฐจ๋ณ„์ 

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

ํ™•์ธํ•ด ๋ณด์„ธ์š”:

๋‚ด ํ”ผ์น˜ ๋น„๋””์˜ค

ํ”ผ์น˜ ๋น„๋””์˜ค๋ฅผ ์‹œ์ฒญํ•˜์„ธ์š”: ๐Ÿ‘‰๐Ÿ‘‡

๋ฐ๋ชจ ๋น„๋””์˜ค โ€“ AutoReadme

๐ŸŽฏ ์ง์ ‘ ๋งˆ๋ฒ•์„ ์ฒดํ—˜ํ•˜์„ธ์š”

  • ๐Ÿš€ ํ”„๋กœ์ ํŠธ: AutoReadme
  • ๐Ÿ“‚ ์†Œ์Šค ์ฝ”๋“œ: ๊ตฌํ˜„์„ ์‚ดํŽด๋ณด๊ณ  30์ดˆ ๋งˆ๋ฒ•์ด ์–ด๋–ป๊ฒŒ ๋‚ด๋ถ€์—์„œ ๊ตฌ์ถ•๋˜๋Š”์ง€ ํ™•์ธํ•˜์„ธ์š”.

์ฝ”๋“œ๋ฅผ ์ฆ‰์‹œ ์ „๋ฌธ ๋ฌธ์„œ๋กœ ๋ณ€ํ™˜ํ•ฉ๋‹ˆ๋‹ค.

๊ฐœ์š”

AutoReadme๋Š” Google์˜ Gemini AI๋ฅผ ํ™œ์šฉํ•˜์—ฌ ํ”„๋กœ์ ํŠธ์— ๋Œ€ํ•œ ํฌ๊ด„์ ์ด๊ณ  ํ”„๋กœ๋•์…˜ ์ˆ˜์ค€์˜ README ํŒŒ์ผ์„ ์ž๋™์œผ๋กœ ์ƒ์„ฑํ•˜๋Š” ์ตœ์ฒจ๋‹จ ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ž…๋‹ˆ๋‹ค. ํ”„๋กœ์ ํŠธ ํด๋”๋ฅผ ๋กœ์ปฌ์— ์—…๋กœ๋“œํ•˜๊ธฐ๋งŒ ํ•˜๋ฉด AI๊ฐ€ ์ฝ”๋“œ ๊ตฌ์กฐ, ์˜์กด์„ฑ ๋ฐ ์•„ํ‚คํ…์ฒ˜๋ฅผ ๋ถ„์„ํ•˜์—ฌ ๋ช‡ ์ดˆ ๋งŒ์— ๊น”๋”ํ•œ ๋ฌธ์„œ๋ฅผ ๋งŒ๋“ค์–ด ์ค๋‹ˆ๋‹ค.

โœจ ์ฃผ์š” ๊ธฐ๋Šฅ

  • ๐Ÿค– AIโ€‘๊ตฌ๋™ ๋ถ„์„ โ€“ Google Gemini AI๋ฅผ ์‚ฌ์šฉํ•ด ์ง€๋Šฅ์ ์ธ ์ฝ”๋“œ ์ดํ•ด๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.
  • ๐Ÿ“ ํด๋” ์—…๋กœ๋“œ โ€“ ์ „์ฒด ํ”„๋กœ์ ํŠธ ํด๋”๋ฅผ ๋“œ๋ž˜๊ทธ ์•ค ๋“œ๋กญํ•˜์—ฌ ์™„์ „ํ•œ ๋ถ„์„์„ ์ˆ˜ํ–‰ํ•ฉ๋‹ˆ๋‹ค.
  • ๐Ÿ” ์Šค๋งˆํŠธ ๊ฐ์ง€ โ€“ ์–ธ์–ด, ํ”„๋ ˆ์ž„์›Œํฌ ๋ฐ ์˜์กด์„ฑ์„ ์ž๋™์œผ๋กœ ์‹๋ณ„ํ•ฉ๋‹ˆ๋‹ค.
  • ๐ŸŽจ ๋‹ค์ค‘ ํ…œํ”Œ๋ฆฟ โ€“ ๋ชฉ์ ์— ๋งž๋Š” ํ…œํ”Œ๋ฆฟ ์ œ๊ณต (SaaS, ์˜คํ”ˆ์†Œ์Šค, ํ•™์ˆ  ๋“ฑ).
  • โšก ์ฆ‰์‹œ ์ƒ์„ฑ โ€“ 30โ€ฏ์ดˆ ์ด๋‚ด์— ์ „๋ฌธ README๋ฅผ ๋งŒ๋“ค์–ด ์ค๋‹ˆ๋‹ค.
  • ๐Ÿ“‹ ์›ํด๋ฆญ ๋ณต์‚ฌ โ€“ ์ƒ์„ฑ๋œ ๋‚ด์šฉ์„ ๋ฐ”๋กœ ํด๋ฆฝ๋ณด๋“œ์— ๋ณต์‚ฌํ•ฉ๋‹ˆ๋‹ค.
  • ๐Ÿ’พ ๋‹ค์šด๋กœ๋“œ ๊ฐ€๋Šฅ โ€“ ๋งˆํฌ๋‹ค์šด ํŒŒ์ผ๋กœ ๋‚ด๋ณด๋‚ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ๐Ÿ”’ ํ”„๋ผ์ด๋ฒ„์‹œ ์šฐ์„  โ€“ ๋ชจ๋“  ์ฒ˜๋ฆฌ๋Š” ํด๋ผ์ด์–ธํŠธ ์ธก์—์„œ ์ด๋ฃจ์–ด์ง‘๋‹ˆ๋‹ค.

๐Ÿš€ ๋ผ์ด๋ธŒ ๋ฐ๋ชจ

AutoReadme๋ฅผ ์‹ค์ œ๋กœ ์ฒดํ—˜ํ•ด ๋ณด์„ธ์š”: AutoReadme Live Demo

๐Ÿ› ๏ธ Tech Stack

(์„ธ๋ถ€ ์‚ฌํ•ญ์€ ๊ฐ„๋žตํžˆ ์ƒ๋žต โ€“ ์ „์ฒด ๋ชฉ๋ก์€ ์ €์žฅ์†Œ๋ฅผ ํ™•์ธํ•˜์„ธ์š”.)

๐ŸŽฅ Interactive Walkthrough

  1. Drop โ†’ ํ”„๋กœ์ ํŠธ ํด๋”๋ฅผ ์—…๋กœ๋“œํ•˜์„ธ์š” (React, Python, ๋งŒ๋“  ๊ฒƒ์ด ๋ฌด์—‡์ด๋“ ).
  2. Watch โ†’ AI๊ฐ€ ์ฝ”๋“œ ๊ตฌ์กฐ์™€ ์˜์กด์„ฑ์„ ๋ถ„์„ํ•ฉ๋‹ˆ๋‹ค.
  3. Copy โ†’ GitHub, ํฌํŠธํด๋ฆฌ์˜ค, ํ˜น์€ ํ”„๋กœ๋•์…˜์— ๋ฐ”๋กœ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ์ „๋ฌธ README๊ฐ€ ์ค€๋น„๋ฉ๋‹ˆ๋‹ค.

๋งˆ์ฐฐ ์—†์ด, ์ตœ๋Œ€์˜ ํšจ๊ณผ๋ฅผ. ๋‹ค์Œ ํ›Œ๋ฅญํ•œ ํ”„๋กœ์ ํŠธ๋Š” ๊ทธ ๋›ฐ์–ด๋‚จ์— ๊ฑธ๋งž์€ ๋ฌธ์„œ๊ฐ€ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.

์Šคํ† ๋ฆฌ

๋ชจ๋“  ๊ฐœ๋ฐœ์ž๋Š” ๊ทธ ๊ณ ํ†ต์„ ์•Œ๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค: ๋ฉ‹์ง„ ๋ฌด์–ธ๊ฐ€๋ฅผ ๋งŒ๋“ค์—ˆ์ง€๋งŒ README๊ฐ€ ์—†๊ฑฐ๋‚˜ ๊ธ‰ํ•˜๊ฒŒ ๋งŒ๋“  ๋ถ€๊ฐ€์ ์ธ ๊ฒƒ์ด์ฃ . ๋ฌธ์„œ๊ฐ€ ์ฝ”๋“œ ํ’ˆ์งˆ์— ๋ชป ๋ฏธ์ณ์„œ ์ˆ˜๋งŽ์€ ๋›ฐ์–ด๋‚œ ํ”„๋กœ์ ํŠธ๊ฐ€ ๊ฐ„๊ณผ๋˜๋Š” ๋ชจ์Šต์„ ๋ณด์•„์™”์Šต๋‹ˆ๋‹ค.

AutoReadme๋Š” ์ด ์ขŒ์ ˆ๊ฐ์—์„œ ํƒ„์ƒํ–ˆ์Šต๋‹ˆ๋‹ค. ํ•ด์ปคํ†ค ์ œ์ถœ๋ฌผ๊ณผ ์‚ฌ์ด๋“œ ํ”„๋กœ์ ํŠธ๋ฅผ ์œ„ํ•ด READMEs๋ฅผ ๋งŒ๋“œ๋Š” ๋ฐ ๋ช‡ ์‹œ๊ฐ„์„ ํˆฌ์žํ•œ ๋’ค, AI๊ฐ€ ์ด ๋ณดํŽธ์ ์ธ ๊ฐœ๋ฐœ์ž ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ์Œ์„ ๊นจ๋‹ฌ์•˜์Šต๋‹ˆ๋‹ค. ๋ชฉํ‘œ๋Š” ๊ฐ„๋‹จํ–ˆ์Šต๋‹ˆ๋‹ค: 30โ€ฏseconds ๋งŒ์— ์ฝ”๋“œ์—์„œ ์ „๋ฌธ์ ์ธ ๋ฌธ์„œ๋กœ.

AutoReadme๋ฅผ ํŠน๋ณ„ํ•˜๊ฒŒ ๋งŒ๋“œ๋Š” ๊ฒƒ์€ privacyโ€‘first approachโ€”๋ชจ๋“  ์ฒ˜๋ฆฌ๊ฐ€ ํด๋ผ์ด์–ธํŠธ ์ธก์—์„œ ์ด๋ฃจ์–ด์ง€๋ฏ€๋กœ ์ฝ”๋“œ๊ฐ€ ๋ธŒ๋ผ์šฐ์ €๋ฅผ ๋– ๋‚˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๋‹จ์ˆœํ•œ AI ๋„๊ตฌ๊ฐ€ ์•„๋‹ˆ๋ผ, ์ปจํ…์ŠคํŠธ๋ฅผ ์ดํ•ดํ•˜๊ณ , ์˜์กด์„ฑ์„ ๊ฐ์ง€ํ•˜๋ฉฐ, ์‚ฌ์šฉ์ž๊ฐ€ ํ”„๋กœ์ ํŠธ๋ฅผ ์ดํ•ดํ•˜๊ณ  ๊ธฐ์—ฌํ•  ์ˆ˜ ์žˆ๋„๋ก ์‹ค์ œ๋กœ ๋„์›€์ด ๋˜๋Š” ๋ฌธ์„œ๋ฅผ ์ƒ์„ฑํ•˜๋Š” ๊ฐœ๋ฐœ์ž ์ƒ์‚ฐ์„ฑ ๋ฐฐ๊ฐ€ ๋„๊ตฌ์ž…๋‹ˆ๋‹ค.

Technical Highlights

1๏ธโƒฃ AIโ€‘Powered Code Intelligence

  • Google Gemini API Integration: ํ”„๋กœ์ ํŠธ ์ปจํ…์ŠคํŠธ๋ฅผ ์ดํ•ดํ•˜๋Š” ์˜๋ฏธ ๊ธฐ๋ฐ˜ ์ฝ”๋“œ ๋ถ„์„, ๋‹จ์ˆœ ๊ตฌ๋ฌธ ๋ถ„์„์ด ์•„๋‹˜.
  • Multiโ€‘Language Detection: 10โ€ฏ๊ฐœ ์ด์ƒ์˜ ์–ธ์–ด ์ง€์› (JS, Python, Java, C++, Go, Rust, PHP, Ruby ๋“ฑ).
  • Framework Recognition: React, Express, Django, Flask, FastAPI, Next.js, Vue.js, Angular ๋“ฑ์„ ์ž๋™์œผ๋กœ ๊ฐ์ง€.
  • Dependency Analysis: package.json, requirements.txt ๋ฐ ๊ธฐํƒ€ ๋งค๋‹ˆํŽ˜์ŠคํŠธ๋ฅผ ํŒŒ์‹ฑํ•˜์—ฌ ํ”„๋กœ์ ํŠธ๋ฅผ ํฌ๊ด„์ ์œผ๋กœ ์ดํ•ด.

๐Ÿ” Privacyโ€‘First Architecture

  • Clientโ€‘Side File Processing: webkitRelativePath API ์‚ฌ์šฉโ€”์ฝ”๋“œ๊ฐ€ ๋ธŒ๋ผ์šฐ์ €๋ฅผ ๋– ๋‚˜์ง€ ์•Š์Œ.
  • Selective API Calls: ์ฒ˜๋ฆฌ๋œ ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ๋งŒ Gemini์— ์ „์†ก๋˜๊ณ , ์›์‹œ ์†Œ์Šค ์ฝ”๋“œ๋Š” ์ ˆ๋Œ€ ์ „์†ก๋˜์ง€ ์•Š์Œ.
  • No Server Storage: ๋ฐ์ดํ„ฐ๊ฐ€ ์„œ๋ฒ„์— ์ €์žฅ๋˜์ง€ ์•Š์œผ๋ฉฐ, ์™„์ „ํ•œ ํ”„๋ผ์ด๋ฒ„์‹œ ๋ณดํ˜ธ ์ œ๊ณต.

โšก Performance Engineering

  • Vanilla JS: ์ดˆ๊ธฐ ๋กœ๋“œ 100โ€ฏms ๋ฏธ๋งŒ, ํ”„๋ ˆ์ž„์›Œํฌ ๋ถ€ํ•˜ ์—†์Œ.
  • Intelligent Chunking: ๋ฉ”๋ชจ๋ฆฌ ๋ฌธ์ œ ์—†์ด 100โ€ฏMBโ€ฏ์ด์ƒ์˜ ์—”ํ„ฐํ”„๋ผ์ด์ฆˆ ๊ทœ๋ชจ ํ”„๋กœ์ ํŠธ ์ฒ˜๋ฆฌ.
  • Async Processing: ์ง„ํ–‰ ํ‘œ์‹œ๊ธฐ๊ฐ€ ์žˆ๋Š” ๋น„๋™๊ธฐ ํŒŒ์ผ ๋ถ„์„, UI ์ฐจ๋‹จ ์—†์Œ.
  • Template Optimization: ์ฆ‰์‹œ ์ƒ์„ฑ ๊ฐ€๋Šฅํ•œ ์‚ฌ์ „ ์ปดํŒŒ์ผ๋œ ํ…œํ”Œ๋ฆฟ ์‚ฌ์šฉ.

๐Ÿš€ Productionโ€‘Ready Features

  • Drag & Drop Interface: ํด๋” ์—…๋กœ๋“œ ์‹œ ์‹ค์‹œ๊ฐ„ ๊ฒ€์ฆ ๋ฐ ํ”ผ๋“œ๋ฐฑ ์ œ๊ณต.
  • Live Preview: ๊ตฌ๋ฌธ ๊ฐ•์กฐ๊ฐ€ ์ ์šฉ๋œ ๋งˆํฌ๋‹ค์šด์„ ์ฆ‰์‹œ ๋ Œ๋”๋ง.
  • Export Options: ์˜ฌ๋ฐ”๋ฅธ ํฌ๋งท์œผ๋กœ ํ•œ ๋ฒˆ์˜ ํด๋ฆญ์œผ๋กœ ๋ณต์‚ฌ/๋‹ค์šด๋กœ๋“œ.
  • Error Recovery: ๋ฐ”์ด๋„ˆ๋ฆฌ ํŒŒ์ผ, ๊ถŒํ•œ ๋ฌธ์ œ, API ์ œํ•œ ๋“ฑ ์ƒํ™ฉ์„ ์šฐ์•„ํ•˜๊ฒŒ ์ฒ˜๋ฆฌ.

Source: โ€ฆ

Mux ์‚ฌ์šฉ (์ถ”๊ฐ€ ์ƒ๊ธˆ ์นดํ…Œ๊ณ ๋ฆฌ โ€“ ์ฐธ๊ฐ€์ž ์ „์šฉ)

AutoReadme์˜ ์ œํ’ˆ ํ”ผ์น˜๋Š” Mux์˜ ์™„์ „ํ•œ ๋น„๋””์˜ค ์ธํ”„๋ผ ์Šคํƒ์„ ํ™œ์šฉํ•˜์—ฌ ๋‹จ์ˆœํ•œ ๋ฐ๋ชจ๋ฅผ ์ง€๋Šฅํ˜• AIโ€‘๊ฐ•ํ™” ์‡ผ์ผ€์ด์Šค๋กœ ์ „ํ™˜ํ•ฉ๋‹ˆ๋‹ค. ์ด๋Š” ์ž๋™ํ™”๋œ ์ฝ˜ํ…์ธ  ์ƒ์„ฑ์ด๋ผ๋Š” ํ”„๋กœ์ ํŠธ์˜ ํ•ต์‹ฌ ์ฒ ํ•™์„ ๋ฐ˜์˜ํ•ฉ๋‹ˆ๋‹ค.

์ „๋žต์  ๊ตฌํ˜„ ์ ‘๊ทผ ๋ฐฉ์‹

๊ธฐ๋ณธ์ ์ธ ๋น„๋””์˜ค ํ˜ธ์ŠคํŒ…์„ ๋„˜์–ด, ์ €๋Š” ๋น„๋””์˜ค ์ฝ˜ํ…์ธ  ์ž์ฒด๋ฅผ ํ†ตํ•ด AutoReadme์˜ AIโ€‘์šฐ์„  ๋ฐฉ๋ฒ•๋ก ์„ ๋ณด์—ฌ์ฃผ๋Š” ํฌ๊ด„์ ์ธ Mux ํ†ตํ•ฉ์„ ์„ค๊ณ„ํ–ˆ์Šต๋‹ˆ๋‹ค. ์ด ๊ตฌํ˜„์€ ๋น„๋””์˜ค ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ ์ƒ์„ฑ๋ถ€ํ„ฐ ์ง€๋Šฅํ˜• ์ฝ˜ํ…์ธ  ์„ธ๋ถ„ํ™”์— ์ด๋ฅด๊ธฐ๊นŒ์ง€ ์ „ํ†ต์ ์œผ๋กœ ์ˆ˜๋™์œผ๋กœ ์ˆ˜ํ–‰๋˜๋˜ ํ”„๋กœ์„ธ์Šค๋ฅผ AI๊ฐ€ ์ž๋™ํ™”ํ•  ์ˆ˜ ์žˆ์Œ์„ ์‹œ์—ฐํ•ฉ๋‹ˆ๋‹ค.

ํ™œ์šฉ๋œ ๊ณ ๊ธ‰ Mux ๊ธฐ๋Šฅ

  • AIโ€‘๊ตฌ๋™ ์ฝ˜ํ…์ธ  ์ธํ…”๋ฆฌ์ „์Šค
    • ์‹œ๋งจํ‹ฑ ๋ถ„์„: Google Gemini์™€ ํ†ตํ•ฉ๋œ Mux AI๊ฐ€ ์ž๋™์œผ๋กœ ์ „๋ฌธ์ ์ธ ๋น„๋””์˜ค ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ๋ฅผ ์ƒ์„ฑํ•˜๊ณ , โ€œ์›Œํฌํ”Œ๋กœ์šฐ ์ตœ์ ํ™”โ€, โ€œAPI ๋ฌธ์„œํ™”โ€์™€ ๊ฐ™์€ ํ•ต์‹ฌ ๊ธฐ์ˆ  ๊ฐœ๋…์„ ์ถ”์ถœํ•ฉ๋‹ˆ๋‹ค.
    • ์ง€๋Šฅํ˜• ์ฑ•ํ„ฐ๋ง: AI๊ฐ€ 58์ดˆ ๋ฐ๋ชจ๋ฅผ ๋…ผ๋ฆฌ์ ์ธ ์ฑ•ํ„ฐ(์†Œ๊ฐœ, ๋ฐ๋ชจ, ๊ธฐ์ˆ  ์‹ฌ์ธต ํƒ๊ตฌ, ๊ฒฐ๋ก )๋กœ ์ž๋™ ๋ถ„ํ• ํ•˜์—ฌ ์‹œ์ฒญ์ž๊ฐ€ ๊ด€์‹ฌ ์žˆ๋Š” ์„น์…˜์œผ๋กœ ๋ฐ”๋กœ ์ด๋™ํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•ฉ๋‹ˆ๋‹ค.

(Mux ์‚ฌ์šฉ์— ๋Œ€ํ•œ ์ž์„ธํ•œ ๋‚ด์šฉ์€ ์ €์žฅ์†Œ ๋ฌธ์„œ์—์„œ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.)

Introduction

AutoReadmeโ€ฏร—โ€ฏMux Demo โ€“ AutoReadme์˜ AI ๊ธฐ๋ฐ˜ ๋ฌธ์„œํ™” ํ”Œ๋žซํผ์„ Mux์˜ AI ๊ฐ•ํ™” ๋น„๋””์˜ค ์ธํ”„๋ผ์™€ ๊ฒฐํ•ฉํ•œ, ํ”„๋กœ๋•์…˜ ๊ธ‰ ๋น„๋””์˜ค ์‡ผ์ผ€์ด์Šค์ž…๋‹ˆ๋‹ค.

  • Goal: ๋น„๋””์˜ค ์ƒ์„ฑ ์ „ ๊ณผ์ •์„ ์ž๋™ํ™”ํ•ฉ๋‹ˆ๋‹คโ€”์ˆ˜์ง‘๋ถ€ํ„ฐ ์ง€๋Šฅํ˜• ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ ์ƒ์„ฑ๊นŒ์ง€โ€”์ด๋ฉด์„œ๋„ ๊ฒฝํ—˜์„ ์ ‘๊ทผํ•˜๊ธฐ ์‰ฝ๊ณ  ๊ฐœ๋ฐœ์ž ์นœํ™”์ ์œผ๋กœ ์œ ์ง€ํ•ฉ๋‹ˆ๋‹ค.
  • Audience: AIโ€‘์šฐ์„  ํˆด๋ง์„ ์‹ค์ œ๋กœ ๋ณด๊ณ  ์‹ถ๊ณ , Mux์˜ API์™€ AI ์›Œํฌํ”Œ๋กœ๋ฅผ ์ž์ฒด ํ”„๋กœ์ ํŠธ์— ํ†ตํ•ฉํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์ดํ•ดํ•˜๊ณ ์ž ํ•˜๋Š” ๊ฐœ๋ฐœ์ž๋“ค.

๊ธฐ๋Šฅ

1. ์ž๋™ ์ „์‚ฌ

  • Mux์˜ ASR ์—”์ง„์„ ์‚ฌ์šฉํ•˜์—ฌ ์ ‘๊ทผ์„ฑ ์ค€์ˆ˜ ์˜์–ด ์บก์…˜์„ ์ƒ์„ฑํ–ˆ์Šต๋‹ˆ๋‹ค.

2. ์ฝ˜ํ…์ธ  ์š”์•ฝ

  • AutoReadme์˜ ๊ธฐ์ˆ ์  ์—ญ๋Ÿ‰๊ณผ ๊ฐœ๋ฐœ์ž์— ๋Œ€ํ•œ ์˜ํ–ฅ์„ ๊ฐ•์กฐํ•˜๋Š” ๊ฐ„๊ฒฐํ•˜๊ณ  ์„ค๋“๋ ฅ ์žˆ๋Š” ์„ค๋ช…์„ ์ œ์ž‘ํ–ˆ์Šต๋‹ˆ๋‹ค.

3. ํ”„๋กœ๋•์…˜ ์ˆ˜์ค€ ๋ฏธ๋””์–ด ์ฒ˜๋ฆฌ

๊ธฐ๋Šฅ์„ค๋ช…
Direct Upload API์›ํ™œํ•œ ํ†ตํ•ฉ์„ ์œ„ํ•œ CORS ์„ค์ •์ด ์ ์šฉ๋œ ๋ณด์•ˆ ํ† ํฐ ๊ธฐ๋ฐ˜ ํŒŒ์ผ ์—…๋กœ๋“œ API.
Adaptive StreamingMux๋ฅผ ํ†ตํ•œ ๋‹ค์ค‘ ํ•ด์ƒ๋„ ์ „์†ก์œผ๋กœ ๋‹ค์–‘ํ•œ ๋””๋ฐ”์ด์Šค์™€ ๋„คํŠธ์›Œํฌ ํ™˜๊ฒฝ์—์„œ ์ตœ์ ์˜ ์„ฑ๋Šฅ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.
Dynamic Media Generation์ตœ์  ์‹œ์ (44โ€ฏ์ดˆ)์—์„œ ๋งž์ถค ์ธ๋„ค์ผ์„ ์ƒ์„ฑํ•˜๊ณ , ์†Œ์…œ ๊ณต์œ ๋ฅผ ์œ„ํ•œ 10์ดˆ ๊ธธ์ด์˜ ์• ๋‹ˆ๋ฉ”์ด์…˜ GIF ๋ฏธ๋ฆฌ๋ณด๊ธฐ๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.
Timeline Navigation๋น„๋””์˜ค ์Šคํฌ๋Ÿฌ๋น™ ์‹œ ์‚ฌ์šฉ์ž ๊ฒฝํ—˜์„ ํ–ฅ์ƒ์‹œํ‚ค๋Š” ํ˜ธ๋ฒ„ ๋ฏธ๋ฆฌ๋ณด๊ธฐ๋ฅผ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค.

4. AI ์›Œํฌํ”Œ๋กœ์šฐ ํ†ตํ•ฉ

# Streamlined upload with AI features enabled
curl -X POST https://api.mux.com/video/v1/uploads \
  -d '{
        "cors_origin": "*",
        "new_asset_settings": {
          "playback_policy": ["public"],
          "generated_subtitles": [{ "language_code": "en" }]
        }
      }'
// AI workflow integration
import { getSummaryAndTags, generateChapters } from "@mux/ai/workflows";

const metadata = await getSummaryAndTags(assetId, {
  provider: "google",
  tone: "professional"
});

๋ถ„์„

๊ธฐ์ˆ  ๊ตฌํ˜„ ์—ฌ์ •

  • Intuitive APIs: ํฌ๊ด„์ ์ธ ์˜ค๋ฅ˜ ์ฒ˜๋ฆฌ์™€ ์ƒํƒœ ์ถ”์ ์ด ํฌํ•จ๋œ ๊น”๋”ํ•œ REST ์—”๋“œํฌ์ธํŠธ.
  • SDK Integration: ๊ณ ๊ธ‰ ๊ธฐ๋Šฅ์„ ์œ„ํ•œ @mux/ai ํŒจํ‚ค์ง€๋ฅผ ํ™œ์šฉํ•œ ์›ํ™œํ•œ Node.js ์›Œํฌํ”Œ๋กœ์šฐ.
  • Realโ€‘time Processing: ์—…๋กœ๋“œ, ํŠธ๋žœ์Šค์ฝ”๋”ฉ, AI ๋ถ„์„ ๋‹จ๊ณ„ ๋™์•ˆ ์‹ค์‹œ๊ฐ„ ์ƒํƒœ ์—…๋ฐ์ดํŠธ.
  • Flexible Configuration: ์žฌ์ƒ ์ •์ฑ…, ์ž๋ง‰ ์ƒ์„ฑ, AI ์ œ๊ณต์ž ์„ ํƒ์— ๋Œ€ํ•œ ์„ธ๋ฐ€ํ•œ ์ œ์–ด.

Mux Integration์ด AutoReadme ๋ฏธ์…˜๊ณผ ์ผ์น˜ํ•˜๋Š” ์ด์œ 

  • ๋‘ ๋„๊ตฌ ๋ชจ๋‘ ์ˆ˜๋™ ๊ฐœ๋ฐœ์ž ์ž‘์—…์„ ์ž๋™ํ™”ํ•ฉ๋‹ˆ๋‹ค:
    • AutoReadme๋Š” ์ฝ”๋“œ๋ฅผ ๋ฌธ์„œํ™”ํ•ฉ๋‹ˆ๋‹ค.
    • Mux AI๋Š” ์›์‹œ ๋น„๋””์˜ค๋ฅผ ์ „๋ฌธ์ ์ด๊ณ  ์ ‘๊ทผ ๊ฐ€๋Šฅํ•œ ์ฝ˜ํ…์ธ ์™€ ์ง€๋Šฅํ˜• ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ๋กœ ๋ณ€ํ™˜ํ•ฉ๋‹ˆ๋‹ค.

๊ฒฐ๊ณผ: AutoReadme์˜ ๊ธฐ๋Šฅ์„ ๋ณด์—ฌ์ค„ ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ ๋™์ผํ•œ AI ๊ธฐ๋ฐ˜ ์ž๋™ํ™” ์›์น™์„ ์ž์ฒด ์ œ์ž‘ ๋ฐ ์ „๋‹ฌ ํŒŒ์ดํ”„๋ผ์ธ์— ๊ตฌํ˜„ํ•œ ์‹œ์—ฐ ๋น„๋””์˜ค.

์ธก์ • ๊ฐ€๋Šฅํ•œ ์˜ํ–ฅ

  • 100โ€ฏ% ์ž๋™ ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ ์ƒ์„ฑ (์ œ๋ชฉ, ์„ค๋ช…, ํƒœ๊ทธ, ์ฑ•ํ„ฐ).
  • ์ „๋ฌธ์ ์ธ ํ”„๋ ˆ์  ํ…Œ์ด์…˜์„ ์œ„ํ•œ ์ˆ˜๋™ ๋น„๋””์˜ค ํŽธ์ง‘ ์ „๋ฌด.
  • ์ž๋™ ์ƒ์„ฑ๋œ ์บก์…˜์„ ํ†ตํ•œ ์ ‘๊ทผ์„ฑ ์ค€์ˆ˜.
  • ์ง€๋Šฅํ˜• ๋ฏธ๋ฆฌ๋ณด๊ธฐ ์ƒ์„ฑ ๋ฐ ํƒ€์ž„๋ผ์ธ ํƒ์ƒ‰์„ ํ†ตํ•œ ์ฐธ์—ฌ๋„ ํ–ฅ์ƒ.

์„ฑ๊ณผ: AI๊ฐ€ AI๋ฅผ ์ž๋™ํ™”

  • AutoReadme (AI โ†’ ๋ฌธ์„œ) + Mux AI (AI โ†’ ๋น„๋””์˜ค) = ๋ณตํ•ฉ ์ž๋™ํ™”.
  • ๋‘ ๋„๊ตฌ ๋ชจ๋‘ ์‹œ๊ฐ„์ด ๋งŽ์ด ์†Œ์š”๋˜๋Š” ์ˆ˜๋™ ๋‹จ๊ณ„๋ฅผ ์ œ๊ฑฐํ•˜๊ณ , ๋ช‡ ์ดˆ ๋งŒ์— ์ œ์ž‘ ์ค€๋น„๊ฐ€ ๋œ ๊ฒฐ๊ณผ๋ฌผ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

์™„๋ฒฝํ•œ ์‹œ๋„ˆ์ง€

AutoReadmeMux AI
์ฝ”๋“œ๋ฅผ ๋ถ„์„ โ†’ ๋ฌธ์„œ๋ฅผ ์ƒ์„ฑ๋น„๋””์˜ค๋ฅผ ๋ถ„์„ โ†’ ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ๋ฅผ ์ƒ์„ฑ
์ˆ˜๋™ ๋ฌธ์„œ ์ž‘์—…์„ ์ œ๊ฑฐ์ˆ˜๋™ ๋น„๋””์˜ค ํŽธ์ง‘ ์ž‘์—…์„ ์ œ๊ฑฐ
๊ฐœ๋ฐœ์ž์šฉ ๋ฌธ์„œ๋ฅผ ์ œ๊ณต๊ฐœ๋ฐœ์ž์šฉ ๋น„๋””์˜ค ์ž์‚ฐ์„ ์ œ๊ณต

์ด๊ฒƒ์ด ๋ณด์—ฌ์ฃผ๋Š” ๋ฐ”

  • ๊ฐœ๋ฐœ์ž ์˜ํ–ฅ: ๋„๊ตฌ๋“ค์ด ์„œ๋กœ ์ง€๋Šฅ์ ์œผ๋กœ ํ–ฅ์ƒ๋˜๋Š” AIโ€‘์šฐ์„  ๊ฐœ๋ฐœ ์ƒํƒœ๊ณ„์— ๋Œ€ํ•œ ๊ฐœ๋… ์ฆ๋ช…์œผ๋กœ, ๊ฐ ๋„๊ตฌ๊ฐ€ ์ œ๊ณตํ•˜๋Š” ๊ฐ€์น˜๊ฐ€ ํ•ฉ์‚ฐ๋œ ๊ฒƒ๋ณด๋‹ค ๋” ํฐ ๊ฐ€์น˜๋ฅผ ์ฐฝ์ถœํ•ฉ๋‹ˆ๋‹ค.
  • ์ƒˆ๋กœ์šด ํŒจ๋Ÿฌ๋‹ค์ž„: AI ๋„๊ตฌ๊ฐ€ ๋‹ค๋ฅธ AI ๋„๊ตฌ๋ฅผ ํ™œ์šฉํ•ด AI ๋„๊ตฌ ์ž์ฒด๋ฅผ ์‹œ์—ฐํ•  ๋•Œ, ์šฐ๋ฆฌ๋Š” ๊ฐœ๋ฐœ์ž ์ƒ์‚ฐ์„ฑ์˜ ์ƒˆ๋กœ์šด ์ˆ˜์ค€์— ๋„๋‹ฌํ•ฉ๋‹ˆ๋‹ค.

๊ฒฐ๋ก 

๊ฐœ๋ฐœ์ž๋“ค์ด ํ˜์‹ ์„ ์„ ๋ณด์ด๊ณ  ์˜๋ฏธ ์žˆ๋Š” ๋„๊ตฌ๋ฅผ ๋งŒ๋“œ๋Š” ์—ด์ •์„ ๊ณต์œ ํ•˜๋Š” ๋™๋ฃŒ๋“ค๊ณผ ์—ฐ๊ฒฐ๋  ์ˆ˜ ์žˆ๋Š” ํ”Œ๋žซํผ์„ ์ œ๊ณตํ•ด ์ฃผ์‹  DEV Community (@thepracticaldev)์—๊ฒŒ ๊ฐ์‚ฌ๋“œ๋ฆฝ๋‹ˆ๋‹ค.

Mux์—๊ฒŒ ๊ฐ์‚ฌ๋“œ๋ฆฝ๋‹ˆ๋‹ค. ํ˜ธ์ŠคํŒ…์„ ๋„˜์–ด์„œ๋Š” ๋น„๋””์˜ค ์ธํ”„๋ผ๋ฅผ ์ œ๊ณตํ•ด ์ฃผ์…จ๊ณ , AI ๊ธฐ๋Šฅ ๋•๋ถ„์— ๋‹จ์ˆœํ•œ ํ”ผ์น˜ ๋น„๋””์˜ค๊ฐ€ AutoReadme์˜ ์ž๋™ํ™” ์ฒ ํ•™์„ ์™„๋ฒฝํžˆ ๊ตฌํ˜„ํ•œ ์ง€๋Šฅํ˜• ์‡ผ์ผ€์ด์Šค๋กœ ๋ณ€ํ–ˆ์Šต๋‹ˆ๋‹ค.

๋ณด๋‹ค ๋„“์€ ๊ฐœ๋ฐœ์ž ์ปค๋ฎค๋‹ˆํ‹ฐ์—๊ฒŒ ๊ฐ์‚ฌ๋“œ๋ฆฝ๋‹ˆ๋‹ค. ๋ฌธ์„œ ์ž‘์—…์— ์ˆ˜๋งŽ์€ ์‹œ๊ฐ„์„ ํˆฌ์žํ•œ ์—ฌ๋Ÿฌ๋ถ„์˜ ๋…ธ๋ ฅ์€ AutoReadme์˜ ์˜๊ฐ์ด ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์ด ๋„๊ตฌ๊ฐ€ ์ƒ์„ฑํ•˜๋Š” ๋ชจ๋“  README๋Š” ์ ˆ์•ฝ๋œ ์‹œ๊ฐ„, ๋ฐœํœ˜๋œ ์ฐฝ์˜์„ฑ, ๊ทธ๋ฆฌ๊ณ  ๊ฐœ๋ฐœ์ž๋“ค์ด ๊ฐ€์žฅ ์ž˜ํ•˜๋Š” ์ผ, ์ฆ‰ ๋ฏธ๋ž˜๋ฅผ ๊ตฌ์ถ•ํ•˜๋Š” ๋ฐ ์ง‘์ค‘ํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•ด์ค๋‹ˆ๋‹ค.

๋ฌธ์„œ๋Š” ํ›Œ๋ฅญํ•œ ์ฝ”๋“œ๋ฅผ ๊ณต์œ ํ•˜๋Š” ๋ฐ ์žฅ์• ๋ฌผ์ด ๋˜์–ด์„œ๋Š” ์•ˆ ๋ฉ๋‹ˆ๋‹คโ€”์ฝ”๋“œ ์ž์ฒด๋งŒํผ ์ž๋™ํ™”๋˜๊ณ  ์ง€๋Šฅ์ ์ด์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

Back to Blog

๊ด€๋ จ ๊ธ€

๋” ๋ณด๊ธฐ ยป

Zapier vs. Custom Code: โ€˜Glueโ€™ ํˆด์„ ์–ธ์ œ ์‚ฌ์šฉํ•ด์•ผ ํ• ๊นŒ

์ €๋Š” ์ž๋™ํ™” ์—์ด์ „์‹œ๋ฅผ ์šด์˜ํ•ฉ๋‹ˆ๋‹ค. ์ œ ์—…๋ฌด์˜ ์ ˆ๋ฐ˜์€ ์–ฝํžŒ Zapier ํ˜ผ๋ž€์„ ์ œ๊ฑฐํ•˜๊ณ  ๊นจ๋—ํ•œ ์ฝ”๋“œ๋กœ ๊ต์ฒดํ•˜๋Š” ์ผ์ž…๋‹ˆ๋‹ค. ๋‚˜๋จธ์ง€ ์ ˆ๋ฐ˜์€? ์ฐฝ์—…์ž๋“ค์—๊ฒŒ โ€œ์•„๋‹ˆ์š”, ๋‹น์‹ ์€ โ€ฆโ€ ๋ผ๊ณ  ๋งํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

Mendex: ๋‚ด๊ฐ€ ๋งŒ๋“œ๋Š” ์ด์œ 

์†Œ๊ฐœ ์•ˆ๋…•ํ•˜์„ธ์š” ์—ฌ๋Ÿฌ๋ถ„. ์˜ค๋Š˜์€ ์ œ๊ฐ€ ๋ˆ„๊ตฌ์ธ์ง€, ๋ฌด์—‡์„ ๋งŒ๋“ค๊ณ  ์žˆ๋Š”์ง€, ๊ทธ๋ฆฌ๊ณ  ๊ทธ ์ด์œ ๋ฅผ ๊ณต์œ ํ•˜๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค. ์ดˆ๊ธฐ ๊ฒฝ๋ ฅ๊ณผ ๋ฒˆ์•„์›ƒ ์ €๋Š” ๊ฐœ๋ฐœ์ž๋กœ์„œ 17๋…„ ๋™์•ˆ ๊ฒฝ๋ ฅ์„ ์‹œ์ž‘ํ–ˆ์Šต๋‹ˆ๋‹ค.

์™œ Apache Ozone์ด ๋น… ๋ฐ์ดํ„ฐ์— ์„ ํ˜ธ๋˜๋Š” Object Store์ธ๊ฐ€

์ „ํ†ต์ ์ธ HDFS ์•„ํ‚คํ…์ฒ˜๊ฐ€ ์ˆ˜์‹ญ์–ต ๊ฐœ์˜ ์ž‘์€ ํŒŒ์ผ์„ ์ฒ˜๋ฆฌํ•  ๋•Œ ์ง๋ฉดํ•˜๋Š” ํ•œ๊ณ„์™€ ์˜จํ”„๋ ˆ๋ฏธ์Šค ํ™˜๊ฒฝ์—์„œ S3์™€ ๊ฐ™์€ ์œ ์—ฐ์„ฑ์„ ์ถ”๊ตฌํ•˜๋Š” ์š”๊ตฌ๊ฐ€ ๊ฒฐํ•ฉ๋œ ์ƒํ™ฉ.