# [[S-component (State Store)|S-component (State Store)]] ## ๐Ÿ“Œ Brief Summary S-component(State Store)๋Š” ์—์ด์ „ํŠธ ํ•˜๋„ค์Šค์˜ '๊ธฐ์–ต'์„ ๋‹ด๋‹นํ•˜๋Š” ๋ฌผ๋ฆฌ์ /๋…ผ๋ฆฌ์  ์ €์žฅ์†Œ ๊ณ„์ธต์ด๋‹ค. ์—์ด์ „ํŠธ์˜ ํ˜„์žฌ ์ž‘์—… ์ƒํƒœ, ๊ณผ๊ฑฐ ๋Œ€ํ™” ์ด๋ ฅ, ์ถ”์ถœ๋œ ์ง€์‹, ๊ทธ๋ฆฌ๊ณ  ์˜๊ตฌ์ ์œผ๋กœ ๋ณด์กดํ•ด์•ผ ํ•  ์‚ฌ์šฉ์ž ์„ ํ˜ธ๋„๋ฅผ ์ €์žฅํ•˜๊ณ  ๊ด€๋ฆฌํ•œ๋‹ค. ๋‹จ์ˆœํ•œ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ ๋„˜์–ด, ์—์ด์ „ํŠธ๊ฐ€ ์‹œ๊ฐ„์ด ์ง€๋‚จ์— ๋”ฐ๋ผ ํ•™์Šตํ•˜๊ณ  ์ง„ํ™”ํ•  ์ˆ˜ ์žˆ๋Š” ํ† ๋Œ€๋ฅผ ์ œ๊ณตํ•œ๋‹ค. ## ๐Ÿ“– Core Content * **๋‹ค์ธต ์ €์žฅ ๊ตฌ์กฐ**: * **๋‹จ๊ธฐ ์ƒํƒœ (Short-term)**: ํ˜„์žฌ ์„ธ์…˜์˜ ํœ˜๋ฐœ์„ฑ ๋ฐ์ดํ„ฐ ๋ฐ ์ฆ‰๊ฐ์ ์ธ ์ž‘์—… ๋งฅ๋ฝ ๋ณด์กด. * **์˜๊ตฌ ์ƒํƒœ (Long-term)**: ์„ธ์…˜์„ ๋„˜์–ด ์ง€์†๋˜๋Š” ์‚ฌ์šฉ์ž ํ”„๋กœํ•„, ํ”„๋กœ์ ํŠธ ๊ทœ์น™, ์ž๊ฐ€ ํ•™์Šต๋œ ์ง€์‹ ์ €์žฅ. * **์ฒดํฌํฌ์ธํŠธ (Checkpoints)**: ์ž‘์—… ์ค‘ ํŠน์ • ์‹œ์ ์˜ ์ „์ฒด ์ƒํƒœ๋ฅผ ์Šค๋ƒ…์ƒท์œผ๋กœ ์ €์žฅํ•˜์—ฌ ์‹คํŒจ ์‹œ ๋ณต๊ตฌ ๊ฐ€๋Šฅํ•˜๊ฒŒ ํ•จ. * **์ง€์‹ ์ธ๋ฑ์‹ฑ (RAG Integration)**: ๋Œ€๊ทœ๋ชจ ํ…์ŠคํŠธ๋‚˜ ๋ฐ์ดํ„ฐ๋ฅผ ๋ฒกํ„ฐ ์ž„๋ฒ ๋”ฉํ•˜์—ฌ ์—์ด์ „ํŠธ๊ฐ€ ํ•„์š”ํ•  ๋•Œ ์˜๋ฏธ ๊ธฐ๋ฐ˜ ๊ฒ€์ƒ‰(Semantic Search)์„ ํ†ตํ•ด ์ •๋ณด๋ฅผ ๋ถˆ๋Ÿฌ์˜ฌ ์ˆ˜ ์žˆ๋„๋ก ์ง€์›ํ•œ๋‹ค. * **๋ฐ์ดํ„ฐ ์ง๋ ฌํ™” ๋ฐ ๋™๊ธฐํ™”**: ๋ฉ”๋ชจ๋ฆฌ ๋‚ด์˜ ๋ณต์žกํ•œ ์—์ด์ „ํŠธ ์ƒํƒœ ๊ฐ์ฒด๋ฅผ ์˜๊ตฌ ์ €์žฅ์†Œ(JSON, SQL, Vector DB ๋“ฑ)์— ํšจ์œจ์ ์œผ๋กœ ์ €์žฅํ•˜๊ณ , ์—ฌ๋Ÿฌ ์žฅ์น˜๋‚˜ ์„ธ์…˜ ๊ฐ„์— ๋™๊ธฐํ™”ํ•œ๋‹ค. * **๋ฉ”๋ชจ๋ฆฌ ๊ฑฐ๋ฒ„๋„Œ์Šค**: ์ •๋ณด์˜ ์œ ํšจ ๊ธฐ๊ฐ„(TTL)์„ ์„ค์ •ํ•˜์—ฌ ์˜ค๋ž˜๋œ ์ •๋ณด๋ฅผ ์ž๋™์œผ๋กœ ์‚ญ์ œํ•˜๊ฑฐ๋‚˜, ์ค‘์š”๋„๊ฐ€ ๋‚ฎ์€ ๋ฐ์ดํ„ฐ๋ฅผ ์š”์•ฝํ•˜์—ฌ ์ €์žฅ ๊ณต๊ฐ„์„ ์ตœ์ ํ™”(Compaction)ํ•œ๋‹ค. * **๋ณด์•ˆ ๋ฐ ์•”ํ˜ธํ™”**: ์ €์žฅ๋œ ๋ฉ”๋ชจ๋ฆฌ์— ํฌํ•จ๋œ ๋ฏผ๊ฐํ•œ ์‚ฌ์šฉ์ž ๋ฐ์ดํ„ฐ๋‚˜ ์‹œ์Šคํ…œ ๋น„๋ฐ€๋ฒˆํ˜ธ ๋“ฑ์„ ์•”ํ˜ธํ™”ํ•˜์—ฌ ์™ธ๋ถ€ ์œ ์ถœ์„ ๋ฐฉ์ง€ํ•œ๋‹ค. ## โš–๏ธ Trade-offs & Caveats * **๊ฒ€์ƒ‰ ์ •ํ™•๋„ vs ์†๋„**: ์ €์žฅ๋œ ๋ฐ์ดํ„ฐ๊ฐ€ ๋ฐฉ๋Œ€ํ•ด์งˆ์ˆ˜๋ก ๊ด€๋ จ ์ •๋ณด๋ฅผ ์ฐพ๋Š” ๋ฐ ๋” ๋งŽ์€ ์‹œ๊ฐ„๊ณผ ์ปดํ“จํŒ… ์ž์›์ด ์†Œ๋ชจ๋œ๋‹ค. * **๋ฐ์ดํ„ฐ ์˜ค์—ผ (Memory Poisoning)**: ์ž˜๋ชป๋œ ์ •๋ณด๊ฐ€ S-component์— ๊ธฐ๋ก๋˜๋ฉด ์ดํ›„ ์—์ด์ „ํŠธ์˜ ๋ชจ๋“  ํŒ๋‹จ์— ์•…์˜ํ–ฅ์„ ๋ฏธ์น˜๋Š” '์˜๊ตฌ์  ์ง€๋Šฅ ์ €ํ•˜'๊ฐ€ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ๋‹ค. * **๊ฐœ์ธ์ •๋ณด ๋ณดํ˜ธ**: ์—์ด์ „ํŠธ๊ฐ€ ์‚ฌ์šฉ์ž์˜ ๋ชจ๋“  ํ–‰๋™์„ ๊ธฐ์–ตํ•˜๊ฒŒ ๋  ๋•Œ ๋ฐœ์ƒํ•˜๋Š” ํ”„๋ผ์ด๋ฒ„์‹œ ์นจํ•ด ๋ฆฌ์Šคํฌ๋ฅผ ๊ด€๋ฆฌํ•ด์•ผ ํ•œ๋‹ค. ## ๐Ÿ”— Knowledge Connections ### Related Concepts * [[Agent Memory System|Agent Memory System]] * ์—ฐ๊ฒฐ ์ด์œ : S-component๊ฐ€ ์‹ค์งˆ์ ์œผ๋กœ ๊ตฌํ˜„ํ•˜๋Š” ๋…ผ๋ฆฌ์  ์‹œ์Šคํ…œ์ด๋‹ค. * [[Inference-Coupled Persistence|Inference-Coupled Persistence]] * ์—ฐ๊ฒฐ ์ด์œ : ์ถ”๋ก ์„ ํ†ตํ•ด S-component์— ์ง€์‹์„ ๊ณต๊ธ‰ํ•˜๋Š” ๊ธฐ์ˆ ์  ๋ฐฉ๋ฒ•์ด๋‹ค. * [[C-component (Context Manager)|C-component (Context Manager)]] * ์—ฐ๊ฒฐ ์ด์œ : S-component์—์„œ ์ €์žฅ๋œ ์ •๋ณด๋ฅผ ๊บผ๋‚ด์–ด ์‹ค์ œ ๋ชจ๋ธ ์ž…๋ ฅ์œผ๋กœ ๋ณ€ํ™˜ํ•˜๋Š” ํŒŒํŠธ๋„ˆ์ด๋‹ค. ### Deeper Research Questions * ์—์ด์ „ํŠธ๊ฐ€ '์žŠ์–ด์•ผ ํ•  ์ •๋ณด'๋ฅผ ์Šค์Šค๋กœ ํŒ๋‹จํ•˜์—ฌ ํ๊ธฐํ•˜๋Š” '๋Šฅ๋™์  ๋ง๊ฐ ์•Œ๊ณ ๋ฆฌ์ฆ˜'์€ ์–ด๋–ป๊ฒŒ ์„ค๊ณ„ํ•ด์•ผ ํ•˜๋Š”๊ฐ€? * ์ˆ˜๋ฐฑ๋งŒ ๊ฐœ์˜ ์—ํ”ผ์†Œ๋“œ ๊ธฐ์–ต ์ค‘ ํ˜„์žฌ ์ž‘์—…์˜ '์ธ๊ณผ ๊ด€๊ณ„'๋ฅผ ๊ฐ€์žฅ ์ž˜ ์„ค๋ช…ํ•˜๋Š” ๊ณผ๊ฑฐ ์‚ฌ๋ก€๋ฅผ ์ˆœ์œ„ํ™”(Ranking)ํ•˜๋Š” ์ตœ์ ์˜ ๋ชจ๋ธ์€ ๋ฌด์—‡์ธ๊ฐ€? * ๋ถ„์‚ฐ ํ™˜๊ฒฝ์—์„œ ์—ฌ๋Ÿฌ ์—์ด์ „ํŠธ ํ•˜๋„ค์Šค๊ฐ€ ํ•˜๋‚˜์˜ ๊ฑฐ๋Œ€ํ•œ S-component๋ฅผ ๊ณต์œ ํ•  ๋•Œ ๋ฐœ์ƒํ•˜๋Š” ์“ฐ๊ธฐ ์ถฉ๋Œ๊ณผ ๋ฐ์ดํ„ฐ ์ผ๊ด€์„ฑ ๋ฌธ์ œ๋ฅผ ์–ด๋–ป๊ฒŒ ํ•ด๊ฒฐํ•˜๋Š”๊ฐ€? ### Practical Application Contexts * **Implementation:** SQLite๋‚˜ PostgreSQL(pgvector)์„ ์‚ฌ์šฉํ•˜์—ฌ ๋กœ์ปฌ ๋ฐ ์„œ๋ฒ„ ์‚ฌ์ด๋“œ ์ƒํƒœ ์ €์žฅ์†Œ๋ฅผ ๊ตฌ์ถ•ํ•˜๊ณ , ์—์ด์ „ํŠธ์˜ `MemoryState` ํด๋ž˜์Šค์™€ ์—ฐ๋™ํ•œ๋‹ค. * **System Design:** ๋ฉ€ํ‹ฐ ํ…Œ๋„ŒํŠธ(Multi-tenant) ์—์ด์ „ํŠธ ์„œ๋น„์Šค ๊ตฌ์ถ• ์‹œ, ์‚ฌ์šฉ์ž๋ณ„๋กœ S-component๋ฅผ ๋ฌผ๋ฆฌ์ ์œผ๋กœ ๋ถ„๋ฆฌํ•˜์—ฌ ๋ฐ์ดํ„ฐ ์œ ์ถœ ๋ฆฌ์Šคํฌ๋ฅผ ์›์ฒœ ์ฐจ๋‹จํ•œ๋‹ค. --- *Last updated: 2026-05-01*