차이는 행동이야
챗봇은 대답해. 에이전트는 상태를 바꿔. 그 상태는 파일일 수도 있고, 티켓일 수도 있고, DB row, 브라우저 화면, 큐에 들어간 작업, 혹은 여러 턴을 버티는 계획일 수도 있어. 모형은 여전히 토큰을 만들지만, 바깥 시스템이 그 토큰 중 일부를 실제 행동으로 바꾸는 거야.
그래서 에이전트는 어떤 모형을 쓰느냐로 정의되지 않아. Claude든 GPT든 Gemini든 로컬 모델이든 같은 agent loop 뒤에 앉힐 수 있어. 핵심은 구조야. 관찰하고, 다음 행동을 정하고, 도구로 실행하고, 결과를 다시 관찰하고, 멈출 조건이 나올 때까지 반복한다.
최소 계약
- 목표: 에이전트가 끝내야 하는 결과.
- 모형: 다음 행동을 고르는 추론 엔진.
- 도구: 바깥 세계를 건드릴 수 있는 함수나 hosted capability.
- 상태: 대화, scratchpad, memory, run metadata.
- 정책: 제한, 권한, 승인 규칙, 종료 조건.
이 중 하나라도 빠지면 그건 에이전트라기보다 멋진 프롬프트야. 요즘 뭐든 agent라고 부르는 마케팅이 문제지. 이름 믿지 말고 루프를 봐야 해.
Agency는 제한된 자율성
좋은 에이전트는 무한 자유가 아니라 경계 안의 자율성이야. 무엇을 볼 수 있는지, 어떤 도구를 부를 수 있는지, 얼마까지 쓸 수 있는지, 얼마나 오래 돌 수 있는지, 언제 사람에게 물어야 하는지를 우리가 정한다.
그 경계가 곧 제품이야. 메일을 실제로 보내는 위험한 에이전트와 초안만 작성하는 안전한 에이전트는 같은 모형과 프롬프트를 써도, send tool 주변의 권한층 하나로 완전히 다른 물건이 된다.