๐Ÿ“บ ์˜์ƒ ์š”์•ฝ ์•„์นด์ด๋ธŒ
โ† ๋ชฉ๋ก

Teaching Coding Agents to do Spreadsheets - Nuno Campos, Witan Labs

AI Engineer ยท 2026-07-08 18:03 ยท 19:09

ํ•œ ์ค„ ํ•ต์‹ฌ

์ฝ”๋”ฉ ์—์ด์ „ํŠธ๋ฅผ ์Šคํ”„๋ ˆ๋“œ์‹œํŠธ ์ž‘์—…์— ๊ฐ•ํ•˜๊ฒŒ ๋งŒ๋“ค๋ ค๋ฉด ๋„๊ตฌ๋ฅผ ๋Š˜๋ฆฌ๋Š” ๊ฒƒ๋ณด๋‹ค REPL, ๊ณ ์ถฉ์‹ค๋„ ๊ฒ€์ฆ ๋ฃจํ”„, ๋„๋ฉ”์ธ ์ง€์‹, ํ‰๊ฐ€ ์ฒด๊ณ„๋ฅผ ํ•จ๊ป˜ ์„ค๊ณ„ํ•ด์•ผ ํ•˜๋ฉฐ, ์ด ์กฐํ•ฉ์œผ๋กœ ์ •ํ™•๋„๋ฅผ 50%์—์„œ 92%๊นŒ์ง€ ๋Œ์–ด์˜ฌ๋ฆด ์ˆ˜ ์žˆ๋‹ค.

์‹œ๊ฐ„๋ณ„ ์š”์•ฝ

  1. 0:15
    ์Šคํ”„๋ ˆ๋“œ์‹œํŠธ๋Š” ์‚ฌ๋žŒ์—๊ฒŒ๋Š” ์‹œ๊ฐ์ ์œผ๋กœ ์ง๊ด€์ ์ด์ง€๋งŒ ๋ชจ๋ธ์—๊ฒŒ๋Š” ๊ตฌ์กฐ, ์ˆ˜์‹, ์ž…๋ ฅ๊ฐ’์˜ ์˜๋ฏธ๋ฅผ ๋ชจ๋‘ ์ถ”๋ก ํ•ด์•ผ ํ•˜๋Š” ์–ด๋ ค์šด ๊ณผ์ œ๋‹ค. ์žฌ๋ฌด ๋ถ„์„ ๋ฒค์น˜๋งˆํฌ ์ •ํ™•๋„๋ฅผ 50%์—์„œ 92%๊นŒ์ง€ ์˜ฌ๋ฆฐ ๊ณผ์ •์€ ๋ฌด์—‡์ด ํšจ๊ณผ์ ์ด์—ˆ๊ณ  ๋ฌด์—‡์ด ์‹คํŒจ์˜€๋Š”์ง€์— ๋Œ€ํ•œ ์‹คํ—˜์˜ ๊ธฐ๋ก์ด๋‹ค.
  2. 2:02
    ์ดˆ๊ธฐ์—๋Š” ๊ณ„ํšยท์‹คํ–‰ยท๊ฒ€์ฆ์„ ๋ถ„๋ฆฌํ•œ 3๊ฐœ ์—์ด์ „ํŠธ ๊ตฌ์กฐ์™€ SQL, XML ๋“ฑ ๋‹ค์–‘ํ•œ ํ‘œํ˜„ ๋ฐฉ์‹์„ ์‹œ๋„ํ–ˆ์ง€๋งŒ, ๋Œ€๋ถ€๋ถ„์€ ๋‹จ๋… ํ•ด๋ฒ•์œผ๋กœ๋Š” ์‹คํŒจํ–ˆ๋‹ค. ๋‹ค๋งŒ CSVยทTSV ๋ทฐ์™€ HTML ๋ Œ๋”๋ง์€ ๋ถ€๋ถ„ ๋„๊ตฌ๋กœ๋Š” ์œ ์šฉํ–ˆ๊ณ , ๊ฒฐ๊ตญ ์Šคํ”„๋ ˆ๋“œ์‹œํŠธ๋ฅผ ์ด๋ฏธ์ง€์ฒ˜๋Ÿผ ๋ณด๊ฒŒ ํ•˜๋Š” ๋ Œ๋”๋ง ์—”์ง„๊นŒ์ง€ ์—ฐ๊ฒฐ๋˜์—ˆ๋‹ค.
  3. 4:01
    ๊ฐ€์žฅ ํฐ ์ „ํ™˜์ ์€ 15๊ฐœ์˜ ๋ถ„์‚ฐ ๋„๊ตฌ๋ฅผ ํ•˜๋‚˜์˜ Node.js REPL๋กœ ํ•ฉ์นœ ๊ฒƒ์ด๋‹ค. JavaScript๋ฅผ ์Šคํฌ๋ฆฝํŒ… ์–ธ์–ด๋กœ ์“ฐ๊ณ  ์‹ค์ œ ์Šคํ”„๋ ˆ๋“œ์‹œํŠธ ์ฒ˜๋ฆฌ๋Š” C#์œผ๋กœ ๋‘๋Š” ๊ตฌ์กฐ ๋•๋ถ„์—, ์—์ด์ „ํŠธ๋Š” ํ•œ ๋ฒˆ์— ์—ฌ๋Ÿฌ ์ž‘์—…์„ ๋ฌถ์–ด ์‹คํ–‰ํ•˜๊ณ  ์ƒํƒœ๋ฅผ ์ด์–ด๋ฐ›์œผ๋ฉฐ ๋” ์งง๊ณ  ์œ ์—ฐํ•˜๊ฒŒ ์ถ”๋ก ํ•  ์ˆ˜ ์žˆ๊ฒŒ ๋˜์—ˆ๋‹ค.
  4. 9:01
    ์ •ํ™•๋„ ํ–ฅ์ƒ์€ ๋‹จ์ผ ๊ธฐ๋ฒ•์ด ์•„๋‹ˆ๋ผ REPL, ๊ฒ€์ƒ‰ ๋ณด๊ฐ•, ์ˆ˜์‹ ์ถ”์ , ์‹œ์Šคํ…œ ํ”„๋กฌํ”„ํŠธ ๊ฐœ์„ , ๋ฒ„๊ทธ ์ˆ˜์ • ๊ฐ™์€ ๋ˆ„์  ๊ฐœ์„ ์˜ ๊ฒฐ๊ณผ์˜€๋‹ค. ํŠนํžˆ formula engine๊ณผ render engine์œผ๋กœ ๊ฒ€์ฆ ๋ฃจํ”„๋ฅผ ๋‹ซ์•„์•ผ ์—์ด์ „ํŠธ๊ฐ€ ๊ฒฐ๊ณผ๋ฅผ ํ™•์ธํ•˜๊ณ  ์Šค์Šค๋กœ ์ˆ˜์ •ํ•  ์ˆ˜ ์žˆ์—ˆ๊ณ , 5๋ถ„ ์ œํ•œ ์‹œ๊ฐ„ ์•ˆ์— ๋๋‚ด์ง€ ๋ชปํ•˜๋˜ ์ž‘์—…๋“ค๋„ ๋Œ€๋ถ€๋ถ„ ์‚ฌ๋ผ์กŒ๋‹ค.
  5. 13:01
    ํ‰๊ฐ€๋Š” LLM as judge๋งŒ์œผ๋กœ๋Š” ๋ถˆ์•ˆ์ •ํ•˜๋ฏ€๋กœ, ๊ฐ€๋Šฅํ•œ ๊ณณ์—์„œ๋Š” ๊ณจ๋“  ์Šคํ”„๋ ˆ๋“œ์‹œํŠธ์™€ ๊ฒฐ์ •์  ๋น„๊ต๋กœ ๋ฐ”๊พธ๋Š” ๊ฒƒ์ด ํ•ต์‹ฌ์ด๋‹ค. ๋˜ํ•œ ์—์ด์ „ํŠธ ์‹คํŒจ์ฒ˜๋Ÿผ ๋ณด์ด๋Š” ๋ฌธ์ œ์˜ ์ƒ๋‹น์ˆ˜๋Š” ๋„๊ตฌ ๋ฒ„๊ทธ, ์ž˜๋ชป๋œ ์˜ˆ์‹œ, ์ถ”์  ํ”Œ๋Ÿฌ๊ทธ ๋ฌธ์ œ์ด๋ฏ€๋กœ traces๋ฅผ ๋๊นŒ์ง€ ํ™•์ธํ•ด์•ผ ํ•œ๋‹ค.

์‹ค๋ฌด ์ธ์‚ฌ์ดํŠธ

  • ๋„๊ตฌ๋ฅผ ์„ธ๋ถ„ํ™”ํ•ด ๋Š˜๋ฆฌ๊ธฐ๋ณด๋‹ค ์—์ด์ „ํŠธ๊ฐ€ ํ•œ ๋ฒˆ์— ์—ฌ๋Ÿฌ ํ–‰๋™์„ ๋ฌถ์–ด ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ๋Š” REPLํ˜• ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ๋จผ์ € ์„ค๊ณ„ํ•˜๋Š” ๊ฒƒ์ด ์„ฑ๋Šฅ๊ณผ ์•ˆ์ •์„ฑ์— ์œ ๋ฆฌํ•˜๋‹ค.
  • ์Šคํ”„๋ ˆ๋“œ์‹œํŠธ์ฒ˜๋Ÿผ ๊ฒฐ๊ณผ ๊ฒ€์ฆ์ด ์ค‘์š”ํ•œ ์—…๋ฌด๋Š” ๋ Œ๋”๋งยท๊ณ„์‚ฐ ์—”์ง„์„ ๋ถ™์—ฌ ํ”ผ๋“œ๋ฐฑ ๋ฃจํ”„๋ฅผ ๋งŒ๋“œ๋Š” ์ˆœ๊ฐ„๋ถ€ํ„ฐ ์—์ด์ „ํŠธ ํ’ˆ์งˆ์ด ๊ธ‰๊ฒฉํžˆ ์ข‹์•„์ง„๋‹ค.
  • ๋ฒค์น˜๋งˆํฌ๊ฐ€ ์ข‹์•„์ ธ๋„ ์›์ธ์ด ๋ชจ๋ธ์ธ์ง€ ๋„๊ตฌ์ธ์ง€ ๊ตฌ๋ถ„๋˜์ง€ ์•Š์œผ๋ฉด ๊ฐœ์„ ์ด ๋ฉˆ์ถ”๋ฏ€๋กœ, ๊ฒฐ์ •์  ํ‰๊ฐ€์™€ traces ์ ๊ฒ€์„ ์ž๋™ํ™”ํ•˜๋Š” ๊ฒƒ์ด ํ•„์ˆ˜๋‹ค.