C.W.K.
Stream
Lesson 07 of 10 · published

Stateless 모델의 stateful tool

~16 min · conversation, tools, state

Level 0수련생
0 XP0/100 lessons0/14 achievements
0/120 XP to next level120 XP to go0% complete

모델은 state 없고; tool은 있어

모델은 message에서 message로의 함수. State — 현재 draft, partial form, in-progress order — 가 외부 살고, tool로 access. 이 split이 agent design의 point: stateless 모델, stateful environment.

Stateful-tool 패턴

  • Draftcreate_draft, update_draft, send_draft. 모델이 매 turn 전체 draft restate 없이 iterate.
  • Sessionstart_session, step_session, finish_session. session id가 handle.
  • Cart / form — entity가 자기 lifecycle, tool이 mutate, 모델이 id로 navigate.

왜 모든 거 context에 packing보다 나은가

  • 적은 context = 낮은 cost, 빠른 응답.
  • auditable한 state 변경 (tool call이 diff).
  • resumable — 대화 close하고 돌아와 draft pick up.
  • concurrent — 두 agent가 같은 state 다른 부분에 act.

Code

Stateful draft tool·python
@tool
def create_draft(subject: str) -> dict:
    return {"draft_id": db.drafts.create(subject)}

@tool
def update_draft(draft_id: str, body: str) -> dict:
    db.drafts.update(draft_id, body=body)
    return {"draft_id": draft_id, "status": "updated"}

@tool
def send_draft(draft_id: str) -> dict:
    return db.drafts.send(draft_id)

External links

Exercise

매 turn entity state re-inject하는 agent 골라. State를 stateful tool (create / update / get)로 옮겨. context size와 cost 변화 측정.

Progress

Progress is local-only — sign in to sync across devices.
이 페이지에서 버그를 발견하셨거나 피드백이 있으세요?문제 신고

댓글 0

🔔 답글 알림 (로그인 필요)
로그인댓글을 남기려면 로그인해 주세요.

아직 댓글이 없어요. 첫 댓글을 남겨보세요.