ํ”ผ๋“œ๋กœ ๋Œ์•„๊ฐ€๊ธฐ
๐Ÿ—๏ธ Building High-Quality AI Agents ๐Ÿค– โ€” A Comprehensive, Actionable Field Guide ๐Ÿ“˜
Dev.toDev.to
AI/ML

Harness Engineering ์ค‘์‹ฌ์˜ ๊ณ ์‹ ๋ขฐ์„ฑ AI Agent ์„ค๊ณ„ ํ”„๋ ˆ์ž„์›Œํฌ

๐Ÿ—๏ธ Building High-Quality AI Agents ๐Ÿค– โ€” A Comprehensive, Actionable Field Guide ๐Ÿ“˜

Truong Phung2026๋…„ 4์›” 30์ผ61๋ถ„advanced

Context

๋Œ€๋ถ€๋ถ„์˜ AI Agent ์„ฑ๋Šฅ ์ €ํ•˜๋ฅผ ๋ชจ๋ธ ์„ฑ๋Šฅ ๋ถ€์กฑ์ด ์•„๋‹Œ Harness(์‹œ์Šคํ…œ ํ”„๋กฌํ”„ํŠธ, ๋„๊ตฌ, ์ƒŒ๋“œ๋ฐ•์Šค ๋“ฑ)์˜ ๊ตฌ์„ฑ ๋ฌธ์ œ๋กœ ์ •์˜. ๋ชจ๋ธ์€ ๊ณ ์ •๋œ ํ•จ์ˆ˜๋กœ ์ทจ๊ธ‰ํ•˜๋ฉฐ ์ด๋ฅผ ๋‘˜๋Ÿฌ์‹ผ ์˜ค์ผ€์ŠคํŠธ๋ ˆ์ด์…˜ ๊ณ„์ธต์˜ ์ •๋ฐ€ํ•œ ์„ค๊ณ„๊ฐ€ ์ „์ฒด ํ’ˆ์งˆ์˜ 80%๋ฅผ ๊ฒฐ์ •ํ•˜๋Š” ๊ตฌ์กฐ์  ํ•œ๊ณ„๋ฅผ ๋ถ„์„.

Technical Solution

  • Async Generator ๊ธฐ๋ฐ˜์˜ Loop ์„ค๊ณ„๋ฅผ ํ†ตํ•ด Backpressure ์ฒ˜๋ฆฌ์™€ ์ทจ์†Œ ๊ฐ€๋Šฅ์„ฑ ๋ฐ Typed Terminal State๋ฅผ ๊ตฌํ˜„ํ•œ ์ƒํƒœ ๋จธ์‹  ๊ตฌ์กฐ ์ฑ„ํƒ
  • Model๊ณผ Harness๋ฅผ ๋ถ„๋ฆฌํ•˜๊ณ  ConversationState๋งŒ์„ ์œ ์ผํ•œ ๊ฐ€๋ณ€ ์ƒํƒœ๋กœ ์œ ์ง€ํ•˜๋Š” Append-only Event Log ๊ธฐ๋ฐ˜์˜ Stateless ์•„ํ‚คํ…์ฒ˜ ์„ค๊ณ„
  • Prompt Cache ํžˆํŠธ์œจ ์ตœ์ ํ™”๋ฅผ ์œ„ํ•ด ์•„ํ‚คํ…์ฒ˜ ์ˆ˜์ค€์—์„œ 4๋‹จ๊ณ„ Context Compression ํŒŒ์ดํ”„๋ผ์ธ์„ ๊ตฌ์ถ•ํ•˜์—ฌ ํ† ํฐ ๋น„์šฉ ์ ˆ๊ฐ ๋ฐ ์†๋„ ํ–ฅ์ƒ
  • Vector DB ๋Œ€์‹  File-based Memory์™€ LLM Recall Side-query ๋ฐฉ์‹์„ ๋„์ž…ํ•˜์—ฌ ๋ฉ”๋ชจ๋ฆฌ ๋กœ๋”ฉ์˜ ํˆฌ๋ช…์„ฑ๊ณผ ์ œ์–ด๊ถŒ ํ™•๋ณด
  • ๋„๊ตฌ๋ณ„ ๊ถŒํ•œ ๋ถ€์—ฌ๊ฐ€ ์•„๋‹Œ Invocation ๋‹จ์œ„์˜ Safety ๊ฒ€์ฆ ์ฒด๊ณ„๋ฅผ ๊ตฌ์ถ•ํ•˜์—ฌ ์‹คํ–‰ ์‹œ์ ์˜ ๋™์  ๋ณด์•ˆ ๋ฆฌ์Šคํฌ ์ œ๊ฑฐ
  • SDK์™€ Application์˜ ์—„๊ฒฉํ•œ ๋ถ„๋ฆฌ๋ฅผ ํ†ตํ•ด Local/Docker Workspace๋ฅผ ์ž์œ ๋กญ๊ฒŒ ๊ต์ฒด ๊ฐ€๋Šฅํ•œ 2๊ณ„์ธต Composability ๊ตฌ์กฐ ๊ตฌํ˜„

- Agent Loop๋ฅผ Async Generator๋กœ ๊ตฌํ˜„ํ•˜์—ฌ ์ œ์–ด ํ๋ฆ„์„ ๋‹จ์ผํ™”ํ–ˆ๋Š”๊ฐ€ - ๋ชจ๋“  Tool์ด Schema์™€ ๊ถŒํ•œ์„ ํฌํ•จํ•˜์—ฌ Self-describing ๊ตฌ์กฐ๋ฅผ ๊ฐ–์ถ”์—ˆ๋Š”๊ฐ€ - ์ƒํƒœ ๋ณ€๊ฒฝ ์‹œ ๊ฐ์ฒด ๋ณ€์ด(Mutation)๊ฐ€ ์•„๋‹Œ Event Append ๋ฐฉ์‹์„ ์‚ฌ์šฉํ•˜๋Š”๊ฐ€ - Prompt Cache ํšจ์œจ์„ ๋†’์ด๊ธฐ ์œ„ํ•œ ์ปจํ…์ŠคํŠธ ์••์ถ• ์ „๋žต์ด ์„ค๊ณ„์— ๋ฐ˜์˜๋˜์—ˆ๋Š”๊ฐ€ - Tenant_id๋ฅผ ํ†ตํ•œ Multi-tenancy ๊ตฌ์กฐ๊ฐ€ ๋ฐ์ดํ„ฐ ๊ณ„์ธต๋ถ€ํ„ฐ ์ ์šฉ๋˜์—ˆ๋Š”๊ฐ€

์›๋ฌธ ์ฝ๊ธฐ