왜 LLM만으로는 에이전트가 될 수 없는가

발행: (2026년 2월 21일 오후 05:54 GMT+9)
8 분 소요
원문: Dev.to

Source: Dev.to

Introduction

대형 언어 모델은 강력하지만, 그것들을 스스로 “에이전트”라고 부르는 것은 범주 오류입니다. 이 혼동은 실제 프로젝트에서 지속적으로 나타나며, 특히 사람들은 하나의 프롬프트가 추론하고, 행동하고, 적응할 수 있는 시스템처럼 동작하기를 기대합니다. 데모 수준을 넘어 무언가를 구축해 본 적이 있다면 이미 이 벽에 부딪혔을 가능성이 높습니다.

Core Behavior of an LLM

LLM의 핵심 작업은 하나입니다:

토큰 시퀀스를 입력받아 다음 토큰을 예측한다.

그 외의 모든 것—추론, 계획, 설명—은 그 과정에서 나타나는 부수적인 행동입니다.

Important Constraints

  • 모델은 프롬프트 외에 메모리가 없습니다.
  • 결과에 대한 인식이 없습니다.
  • 관찰을 제공하지 않으면 세상을 관찰할 수 없습니다.
  • 명시적으로 행동을 연결하지 않으면 행동할 수 없습니다.
  • LLM은 무언가를 “결정”하는 것이 아니라, 요청받을 때 결정에 대한 텍스트를 생성합니다.

What People Expect vs. What Happens

사람들이 LLM을 에이전트로 대할 때 보통 기대하는 것은 다음과 같습니다:

  1. 다음에 무엇을 할지 결정한다
  2. 자신의 출력물을 검증한다
  3. 실수에서 회복한다
  4. 새로운 정보에 적응한다

하지만 이러한 일은 자동으로 일어나지 않습니다. LLM은 기꺼이 다음과 같은 것을 생성합니다:

  • 실행되지 않는 계획
  • 실패했는지 모르는 채로 만든 수정
  • 데이터가 부족함에도 자신감 있게 제시한 답변

왜냐하면 피드백 루프가 없기 때문입니다.

Agency Requirements

에이전시는 제어 흐름에서 나오며, 언어 생성만으로는 얻을 수 없습니다. 에이전트가 되려면 다음이 필요합니다:

  • 목표
  • 루프(반복)
  • 수행 가능한 행동
  • 진행 상황을 추적할 상태
  • 행동을 조정할 피드백

LLM은 기본적으로 이 중 어느 것도 제공하지 않습니다.

Planning Is Not Agency

모델에게 “단계별로 생각해 보라”는 프롬프트는 에이전시를 부여하지 않으며, 단지 텍스트로 추론을 시뮬레이션하도록 요청하는 것입니다. 출력이 생성되면 모델의 작업은 끝납니다.

계획과 에이전시를 동일시하는 흔한 함정:

  1. 모델에 “이 문제를 해결하는 계획을 세워라”고 묻는다.
  2. 모델은 깔끔한 다단계 계획을 만든다.

하지만 실제로는 아무 일도 일어나지 않습니다. 모델은:

  • 단계들을 실행하지 않는다
  • 단계가 성공했는지 확인하지 않는다
  • 결과에 따라 계획을 수정하지 않는다

실행과 관찰이 없으면 계획은 단지 텍스트일 뿐입니다.

Tool / Function Calling

툴 호출을 사용하더라도 LLM 자체가 에이전트가 되는 것은 아닙니다.

왜일까요? 모델은 다음을 하지 않기 때문입니다:

  • 언제 멈출지 결정한다
  • 제약을 강제한다
  • 툴 출력물을 검증한다
  • 지능적으로 재시도한다

이러한 행동은 모델 주변에 구현되어야 합니다.

Common Architectural Mistakes

가장 흔한 실수는 모델에게 다음을 관리하도록 기대하는 것입니다:

  • 상태
  • 오류
  • 재시도
  • 비용
  • 안전성

LLM은 상태 머신이 아닙니다. 시스템이 실패할 때 보통은 다음과 같은 이유 때문입니다:

  • 최대 단계 제한이 없고
  • 실패 모드가 정의되지 않았으며
  • “에이전트”가 진행 없이 계속 “생각”만 함
  • 누가 왜 그런 결정을 내렸는지 설명할 수 없음

이는 시스템 설계 문제이며, AI 문제는 아닙니다.

Embedding an LLM in a Loop

LLM은 다음과 같은 루프 안에 삽입될 때 비로소 에이전트의 일부가 됩니다:

  1. 관찰을 제공한다
  2. 결정을 받아들인다
  3. 행동을 실행한다
  4. 상태를 업데이트한다
  5. 언제 멈출지 결정한다

에이전트는 루프입니다. LLM은 현재 컨텍스트를 기반으로 텍스트를 생성하는 구성 요소일 뿐입니다.

Reframing the Question

다음과 같이 묻는 대신:

“모델이 이걸 할 수 있나요?”

다음과 같이 질문을 바꿔 보세요:

“나는 모델에게 어떤 결정을 영향을 미치도록 허용하고 있나요?”

이 재구성은 다음을 생각하게 합니다:

  • 경계
  • 권한
  • 실패 모드
  • 디버깅 가능성

그리고 시스템을 안정적으로 유지할 수 있게 합니다.

Conclusion

LLM은 강력한 추론 엔진이지만, 에이전시가 지능만으로 오는 것은 아닙니다. 구조, 피드백, 제한에서 비롯됩니다. 모델을 배우는 주체가 아니라 구성 요소로 다루세요. 그렇게 하면 에이전시 시스템이 마법처럼 느껴지는 대신, 구축 가능한 시스템으로 변합니다.

0 조회
Back to Blog

관련 글

더 보기 »

내 AI 에이전트 비용을 75% 절감한 방법

소개 대부분의 AI 에이전트는 매 세션마다 동일한 컨텍스트를 다시 로드함으로써 토큰을 소모합니다. 메모리 파일은 시작 시 유용하지만, 한 번 사용하면 부담이 됩니다.