같아 보이는 이유
ChatGPT에 질문을 던지는 것도, Claude를 시켜서 코드를 짜는 것도, 표면적으로는 AI와 대화하는 것처럼 보인다. 인터페이스가 비슷하고, 텍스트를 입력하면 텍스트가 돌아온다. 그래서 "챗봇이나 에이전트나 그게 그거 아닌가?"라는 질문이 자주 나온다.
실제로는 다르다. 같은 언어 모델을 쓰더라도, 챗봇과 에이전트는 할 수 있는 일의 범위와 작동 방식이 구조적으로 다르다.
챗봇은 대화 도구다
챗봇의 작동 방식은 단순하다. 사용자가 질문하면 모델이 답한다. 답변은 텍스트로 나오고, 대화는 거기서 끝난다. 다음 질문이 오면 이전 대화 맥락을 이어서 또 답한다.
이 구조에서 모델이 할 수 있는 것은 정보 제공, 글쓰기, 요약, 번역처럼 "텍스트 안에서 완결되는 작업"이다. 모델이 외부 시스템에 직접 접근하거나, 파일을 조작하거나, 외부 API를 호출하지는 않는다. 사람이 챗봇의 답변을 받아서 직접 행동으로 옮긴다.
챗봇은 훌륭한 도구다. 다만 행동하지 않는다. 답하고 멈춘다.
에이전트는 행동하는 시스템이다
에이전트는 여기서 한 단계 더 나아간다. 텍스트를 생성하는 것에 그치지 않고, 도구를 사용해서 실제 행동을 취한다.
에이전트에게 허용되는 도구는 설계에 따라 다르다. 파일을 읽고 쓰는 것, 웹 검색, API 호출, 데이터베이스 조회, 메일 발송, 코드 실행 등이 도구가 된다. 에이전트는 목표를 받으면 어떤 도구를 어떤 순서로 쓸지 스스로 판단하고, 실행하고, 결과를 보고, 다음 행동을 결정한다.
예를 들어 "이번 주 미팅 내용을 정리해서 팀에 메일로 보내줘"라는 요청을 받으면, 에이전트는 미팅 기록을 조회하고, 내용을 정리하고, 메일 초안을 작성하고, 발송 승인을 요청하거나 직접 발송한다. 사람이 각 단계를 중계하지 않는다.
실제 차이를 보여주는 시나리오
같은 목표를 챗봇과 에이전트에 각각 주었을 때 어떻게 달라지는지 비교하면 차이가 명확하다.
시나리오: "오늘 일정 확인하고 준비가 필요한 게 있으면 알려줘"
챗봇에게 이 질문을 하면: 외부 캘린더와 연동되어 있지 않은 기본 상태에서는 일정에 접근할 방법이 없다. 사람이 일정을 직접 붙여넣어야 답변이 가능해진다. 별도 연동을 설정하면 접근이 가능하지만, 그 연동 자체가 이미 에이전트적 구성이다.
에이전트에게 이 요청을 하면: 캘린더 API를 호출해서 오늘 일정을 가져오고, 각 미팅의 자료를 확인하고, 준비가 필요한 항목을 정리해서 알린다. 사람이 아무것도 붙여넣지 않아도 된다.
사람이 중계자 역할을 하느냐 하지 않느냐가 핵심 차이다. 챗봇은 정보를 가공하고, 에이전트는 정보를 가져와서 가공하고 행동까지 한다.
어떤 걸 선택해야 하나
두 가지는 대체 관계가 아니다. 목적에 따라 선택한다.
챗봇이 적합한 경우: 정보를 얻거나, 글을 쓰거나, 아이디어를 탐색하거나, 즉각적인 답변이 필요한 상황. 도구 연결 없이 텍스트 안에서 완결되는 작업이라면 챗봇으로 충분하다.
에이전트가 적합한 경우: 여러 단계를 거쳐야 하는 작업, 외부 시스템과 연동이 필요한 작업, 정해진 흐름을 반복적으로 실행해야 하는 작업.
처음 AI 도구를 도입할 때는 챗봇부터 시작하는 쪽이 낫다. 어떤 일을 AI에게 맡길 수 있는지 파악한 다음, 반복적으로 하게 되는 작업 중 외부 연동이 필요한 것을 에이전트로 구성한다. 챗봇으로 먼저 시도해보고 "이걸 매번 내가 중계하는 게 비효율적이다" 싶은 지점이 에이전트를 도입할 타이밍이다.