News Feed

“모든 걸 하려다가 아무것도 못한다” AI 에이전트 프로젝트의 함정

컨텐츠 정보

  • 조회 395

본문

이제 자율형 AI라는 열병에서 깨어날 때다. 지난 1년 동안 엔터프라이즈 소프트웨어 업계의 이야기는 하나의 매혹적인 약속, ‘에이전트’가 지배했다. 스스로 계획하고, 추론하며, 복잡한 워크플로우를 실행하는 디지털 직원을 배치하고, 사람은 그저 옆에서 지켜보기만 하면 된다는 식이었다. 아카마이의 개발자 관계 수석 디렉터 레나 홀은 AI 에이전트 열풍이 자기계발 요소처럼 소비되고 있음을 풍자하기도 했다.

하지만 실제로 엔터프라이즈 시장의 현실은 전혀 다르다.

드루 브루니그는 최근 과열된 분위기에 일침을 가하는 냉정한 분석을 발표했다. 브루니그는 ‘운영 환경에서의 에이전트 측정(Measuring Agents in Production)’ 연구를 포함한 여러 보고서의 데이터를 종합해 단순하지만 불편한 결론에 도달했다. 에이전트 중심의 미래를 가로막는 가장 큰 장애물은 ‘에이전트의 신뢰성 부족(agentic unreliability)’이라는 것이다.

다시 말해, 엔터프라이즈 에이전트 대부분이 실패하는 이유는 모델이 똑똑하지 않아서가 아니다. ‘지루할만큼’ 안정적이지 않아서다.

신뢰성 격차

브루니그 분석의 핵심은 운영 환경에 성공적으로 적용된 에이전트일수록 ‘단순하고 짧다’는 점이다. 이들은 열린 문제를 해결하기 위해 인터넷을 자율적으로 돌아다니지 않는다. 전체 에이전트의 68%는 10단계 미만의 작업을 수행한 뒤 제어권을 다시 인간에게 넘기거나 작업을 종료한다.

이는 필자가 그동안 ‘AI의 신뢰 세금(trust tax)’이라고 불러온 개념과 정확히 맞닿아 있다. 생성형 AI 도입을 서두르는 과정에서 우리는 한 가지를 잊었다. 지능은 점점 값싸지고 있지만, 신뢰는 여전히 비싸다는 점이다. 개발자라면 에이전트가 복잡한 코딩 문제를 80% 확률로 해결한다는 사실에 감탄할 수 있다. 하지만 CIO의 시선에서 보면, 이는 운영 환경에 환각, 데이터 유출, 보안 취약성이라는 20%의 위험을 새로 끌어들이는 시스템일 뿐이다.

그 20%의 간극이 바로 신뢰성 격차다. 브루니그의 지적처럼 합리적인 직원은 신뢰할 수 없는 도구를 채택하지 않는다. 그런 도구를 피해 다른 길을 찾는다.

말처럼 쉽지는 않다. 생성형 AI의 작동 방식을 고려하면, 우리는 확률적 모델 위에 결정론적 소프트웨어를 구축하려고 시도하기 때문이다. LLM은 아무리 인상적이라 해도 본질적으로 비결정적이다. 이런 모델을 자율 루프 형태로 연결하면 무작위성은 더욱 증폭된다. 정확도가 90%인 모델에 다섯 단계의 추론 체인을 수행하도록 하면, 전체 시스템의 정확도는 대략 59% 수준으로 떨어진다.

이것은 엔터프라이즈 애플리케이션이라기보다 동전 던지기에 가깝다. 그리고 그 동전 던지기는 실제 비용으로 이어질 수 있다. 코딩 보조 도구는 잘못된 함수를 ‘제안’하는 데 그치지만, 에이전트는 실제로 잘못된 행동을 ‘실행’하기 때문이다.

해법은 역설적이게도 야심을 낮추는 것이다.

야심을 낮출수록 성공 가능성은 높아진다

브루니그는 앞으로 나아갈 길로 “에이전트의 자율성을 의도적으로 제한해야 한다”라고 주장했다. 정확한 지적이다. 다시 말해, 모든 것을 해내는 이른바 ‘갓 티어(God-tier)’ 에이전트를 만들려는 시도를 멈추고, 하나의 일을 완벽하게 수행하는 인턴급(intern-tier) 에이전트를 만들어야 한다는 뜻이다.

이는 필자가 그동안 반복해서 강조한 ‘황금 경로(golden path)’ 개념으로 다시 이어진다.

플랫폼 엔지니어링팀은 “안 된다”라는 말만 하는, 넘을 수 없는 장벽이 되어서는 안 된다. 그 역할은 법무팀에 맡기고(농담이다), 플랫폼팀은 올바른 방식으로 소프트웨어를 만드는 일이 곧 가장 쉬운 선택이 되도록 포장된 길, 즉 황금 경로를 만들어야 한다. 에이전트의 경우 이는 설계 단계에서부터 영향 범위(blast radius)를 통제하는, 표준화되고 거버넌스가 적용프레임워크를 구축하는 것을 의미한다. 에이전트를 위한 황금 경로는 다음과 같은 형태가 될 수 있다.

  • 범위의 명확한 제한 : 에이전트에 ‘IT 지원 관리’처럼 포괄적인 역할이 아니라, ‘비밀번호 재설정’이나 ‘JIRA 티켓 요약’처럼 정확히 하나의 기능만 수행하도록 권한을 부여한다.
  • 기본값은 읽기 전용 : 에이전트는 질문에 답하기 위해 데이터를 읽을 수는 있지만, 데이터베이스에 쓰기 작업을 하거나 외부 API를 호출하려면 반드시 명시적인 인간의 승인 절차를 거쳐야 한다. 이는 AI 에이전트를 안전하게 구축하는 데 핵심적인 요소다.
  • 구조화된 출력 : 감각이나 분위기에 의존하는 방식을 버리고 스키마를 강제해야 한다. 에이전트는 단순히 대화를 나누는 것이 아니라, 코드로 검증 가능한 구조화된 JSON 형태의 결과를 반환해야 하며, 그 이후에야 어떤 행동이 트리거돼야 한다.

이 모든 접근은 타당하지만, 아직 더 필요한 논점이 있다. 바로 에이전트의 메모리를 다루는 방식에 대한 문제다.

메모리는 데이터베이스의 문제

브루니그는 에이전트의 신뢰성을 크게 떨어뜨리는 요인으로 컨텍스트 오염(context poisoning)을 지목했다. 에이전트가 자신의 과거 이력이나 무관한 데이터 때문에 혼란에 빠지는 현상을 말한다. 우리는 컨텍스트 창을 마법처럼 무한한 메모장으로 취급하지만, 실제로는 그렇지 않다. 그보다는 에이전트의 현재 상태를 담는 하나의 데이터베이스에 가깝다. 이 데이터베이스를 구조화되지 않은 로그, 환각으로 생성된 이전 대화, 접근 권한이 없는 데이터와 같은 ‘쓰레기’로 채우면, 결과 역시 쓰레기가 될 수밖에 없다.

신뢰할 수 있는 에이전트를 만들고 싶다면, 트랜잭션 로그를 다루는 것과 동일한 수준의 엄격함을 에이전트의 메모리에도 적용해야 한다.

  • 정제(Sanitization) : 모든 사용자 상호작용을 무작정 이력에 추가해서는 안 된다. 반드시 정제 과정이 필요하다.
  • 접근 제어(Access control) : 에이전트의 메모리 역시 애플리케이션 데이터베이스와 동일한 행 단위 보안(Row-Level Security, RLS) 정책을 따라야 한다. 사용자가 접근 권한이 없는 PDF를 에이전트가 우연히 읽었다는 이유만으로 4분기 재무 전망과 같은 정보를 ‘알게’ 되어서는 안 된다.
  • 일시적 상태(Ephemeral state) : 에이전트가 모든 것을 영원히 기억하도록 두지 말아야 한다. 컨텍스트가 길어질수록 환각이 발생할 수 있는 표면적은 커진다. 주기적으로 상태를 초기화해야 한다.

브루니그는 이 같은 접근을 ‘메모리 엔지니어링(memory engineering)’이라는 새로운 분야로 설명한다. 오라클의 리치먼드 알레이크 역시 이를 프롬프트 엔지니어링이나 컨텍스트 엔지니어링을 잇는 다음 단계로 규정한다. 단순히 컨텍스트 윈도우에 토큰을 더 많이 넣는다고 프롬프트가 개선되지는 않는다. 대신, 원시 데이터를 의도적으로 변환해 구조화되고 지속 가능한 메모리로 만드는 ‘데이터-투-메모리 파이프라인’을 설계해야 한다. 여기에는 단기 기억, 장기 기억, 공유 메모리 등이 포함된다.

로봇식 군더더기 텍스트에 대한 반발

마지막으로 사용자에 대해 짚고 넘어갈 필요가 있다. 브루니그가 내부 에이전트 파일럿이 실패한 이유로 꼽은 요인 중 하나는, 직원이 에이전트를 쓰고 싶어 하지 않는다는 단순한 사실도 있었다. 그 배경에는 필자가 ‘로봇식 군더더기 텍스트(robot drivel)에 대한 반발’이라고 부르는 현상이 크게 작용한다. 인간의 워크플로우를 완전 자율 에이전트로 대체하려 할수록 결과물은 장황하고, 책임을 회피하는 듯한 표현이 많으며, 영혼 없는 텍스트로 귀결되기 쉽다. 수신자 입장에서는 그것이 사람이 쓴 글이 아니라 AI가 쓴 글이라는 사실을 어렵지 않게 알아차릴 수 있다. 직접 쓸 가치도 없다고 판단한 글이라면, 상대방이 굳이 읽어야 할 이유가 있을까?

이 때문에 휴먼 인 더 루프는 단순한 안전장치가 아니라 품질을 위한 장치이기도 하다. 동시에 신뢰를 쌓아가는 출발점이 된다. 처음에는 제안 모드에서 시작하고, 신뢰성이 측정된 영역에서만 부분 자동화로 넘어가는 방식이다. 실제로 브루니그가 인용한 여러 보고서에서 가장 성공적인 에이전트로 꼽힌 사례는 인간의 업무를 대체하기보다는 보완하는 방식으로 설계된 경우였다. 마이크로소프트의 표현을 빌리자면 성공적인 에이전트는 ‘코파일럿(부조종사)’처럼 작동한다. 이메일 초안을 작성하고, SQL 쿼리를 만들고, 보고서를 요약한 뒤 멈춰서 이렇게 묻는다. “이대로도 괜찮습니까?”

성공하는 에이전트의 신뢰성이 높은 이유는 인간이 최종 필터 역할을 하기 때문이다. 신뢰의 세금이 낮은 이유 역시, 최종적인 책임이 여전히 인간에게 남아 있기 때문이다.

지루한 혁명

우리는 AI에 대한 마법적 사고의 단계를 지나, AI 산업화의 단계로 접어들고 있다. 인공일반지능(AGI)이나 초지능을 둘러싼 논의는 흥미롭지만, 엔터프라이즈 개발자에게는 오히려 주의를 흐트러뜨리는 요소에 가깝다. 이제 AI의 핵심은 추론, 즉 모델을 통제되는 특정한 데이터에 적용하는 과정에 있다.

브루니그의 분석이 보여주듯, 엔터프라이즈 환경에서 살아남는 에이전트는 모든 것을 해내겠다고 약속하는 존재가 아니다. 소수의 작업을 신뢰할 수 있고 안전하며, 지루할 정도로 안정적으로 수행하는 에이전트다. 요컨대 해법은 GPT-6 같은 차세대 모델을 만병통치약처럼 기다리는 것이 아니다. 필요한 것은 영향 범위를 제한하고, 상태를 관리하며, 현실을 측정하고, 작은 워크플로우 하나하나를 통해 신뢰를 쌓아가는 ‘지루한 엔지니어링’이다.

엔터프라이즈 세계에서는 언제나 ‘지루한 것’만이 확장된다.
dl-itworldkorea@foundryco.com

관련자료

댓글 0
등록된 댓글이 없습니다.
Member Rank