에이전트 개발 수명 주기
지난 수십 년간 세계 경제가 디지털화되면서 소프트웨어가 세상을 지배하게 되었습니다. 세상이 소프트웨어를 기반으로 돌아가게 되면서 엔지니어들은 소프트웨어의 견고성을 높이기 위한 공통 방법론인 소프트웨어 개발 수명 주기(SDLC)를 발전시켜 왔습니다. 표준 SDLC에는 우리가 사용하는 소프트웨어의 신뢰성, 기능성, 신뢰도를 보장하기 위해 공동으로 축적한 검증된 모범 사례가 담겨 있습니다.
AI 에이전트는 우리가 소프트웨어에 기대해 온 모든 통념을 깨뜨렸고, 그 과정에서 기존의 소프트웨어 개발 수명 주기까지 무너뜨렸습니다.
전통적인 소프트웨어는 규칙 기반의 결정론적 프로그래밍 언어로 작성되므로, 동일한 입력은 항상 동일한 출력을 안정적으로 생성합니다. 반면 에이전트에는 흔히 영어로 작성된 대규모 언어 모델(LLM) 프롬프트가 포함되며, 목표 기반의 비결정론적 특성 때문에 입력이 조금만 달라져도 결과가 크게 달라집니다.
기존 소프트웨어는 양식, 입력란, 터치스크린, 키보드를 통해 구조화된 방식으로 사용자 입력을 받습니다. 에이전트는 일반적으로 텍스트와 음성 등 자연어로 소통하므로, 개발자가 고려해야 할 상호작용의 경우의 수가 사실상 무한합니다.
지난 수십 년간 무어의 법칙 덕분에 기존 소프트웨어는 매우 빠르고 저렴해졌습니다. Amazon Web Services에서는 전 세계 사용자에게 밀리초 이내에 제공되는 웹사이트 페이지 조회 1,000만 회 이상을 무료로 처리할 수 있습니다. 반면 에이전트는 모델 추론 비용으로 인해 기존 소프트웨어보다 훨씬 느리고 비용도 몇 자리수 이상 높은 LLM에 의존합니다. 1,000만 건의 페이지 조회마다 GPT-4를 호출한다면 OpenAI 청구액은 수십만 달러를 훌쩍 넘을 수 있으며, 각 페이지를 렌더링하는 데도 몇 초씩 걸릴 것입니다.
기존 소프트웨어 공급업체가 업그레이드를 출시하면, 별다른 수정 없이도 기존 소프트웨어가 계속 정상적으로 작동할 것이라고 기대할 수 있습니다. 반면 AI 에이전트를 구축하는 데 사용한 LLM 중 하나에 업그레이드가 제공되면 상황은 예측할 수 없습니다. 한 모델용으로 설계된 프롬프트는 더 강력한 모델에서 같은 결과를 내는 경우가 드물며, 자체 독점 데이터로 모델을 미세 조정했다면 학습 및 평가 과정을 처음부터 다시 시작해야 합니다.
우리는 의존성과 업그레이드 절차가 잘 정립된 규칙 기반의 결정론적이고 빠르며 저렴하지만 경직된 소프트웨어의 세계에서, 업그레이드 변경 관리 절차가 전혀 없는 목표 기반의 비결정론적이고 느리며 비싸지만 유연한 소프트웨어의 세계로 넘어왔습니다. 도대체 어떻게 해야 AI 에이전트를 신뢰할 수 있게 만들 수 있을까요? 또 OpenAI, Microsoft, Google 같은 파운데이션 모델 제공업체의 수십억 달러 투자 혜택을 누릴 수 있도록 에이전트를 미래에도 경쟁력 있게 만들려면 어떻게 해야 할까요?
새로운 유형의 소프트웨어에는 새로운 개발 방식이 필요합니다. Sierra는 Sonos, WeightWatchers, SiriusXM 같은 소비자 브랜드를 위해 산업 현장 수준의 AI 에이전트를 구축해 왔으며, 매달 수백만 명의 소비자에게 서비스를 제공하고 있습니다. Agent OS를 통해 Sierra 에이전트가 신뢰할 수 있고, 테스트 가능하며, 탁월한 역량을 갖출 수 있도록 하는 고유한 에이전트 개발 수명 주기를 구축했습니다.
이 글에는 그 과정에서 얻은 교훈을 담았습니다. Sierra 플랫폼에서든 다른 곳에서든 각자의 회사에서 AI 에이전트를 구축하는 엔지니어를 비롯한 기술 독자를 위해 작성했습니다. 이 교훈들이 저희에게 그랬듯 여러분에게도 유용하길 바랍니다.
개발: 선언적 목표와 가드레일
컴퓨터는 전통적으로 소프트웨어 개발자가 정의한 규칙을 빠르고 안정적으로 실행해 자동화를 가능하게 했습니다. 대규모 언어 모델의 추론 능력 덕분에 소프트웨어는 개발자가 미리 정의하지 않은 창의적인 방식으로 문제를 해결할 수 있습니다.
이러한 추론 기능을 활용하기 위해 개발자는 맞춤형 모델을 학습시키거나, 오픈 소스 모델을 미세 조정하거나, 널리 사용되는 파운데이션 모델 중 하나에 프롬프트 엔지니어링을 적용할 수 있습니다. 잘 설계된 프롬프트와 특화 모델을 결합하면 정교한 추론이 가능합니다. 지난 분기 매출이 급증한 원인은 무엇일까요? 제공되는 세 가지 제품 중 사용자 요구를 가장 잘 충족하는 제품은 무엇일까요?
많은 LLM 기반 애플리케이션의 문제는 결과가 비결정적이라는 점입니다. 90%의 경우에는 마법처럼 작동하지만, 10%의 경우에는 환각을 일으켜 엉뚱하게 작동하며 항공 요금을 지어내거나 심지어 판례를 지어내기도 합니다.
에이전트의 강력한 기능과 유연성은 누리면서 (때로는 치명적인) 단점은 어떻게 피할 수 있을까요? 저희의 해결책은 Sierra Agent SDK입니다.
Sierra Agent SDK를 사용하면 개발자는 선언형 프로그래밍 언어와 조합 가능한 스킬을 활용해 절차적 지식, 즉 작업 수행 방식을 표현하는 강력하고 유연한 에이전트를 구축할 수 있습니다.
이 선언적 모델을 통해 개발자는 에이전트가 달성해야 할 목표(예: 고객의 주문 반품 지원)뿐 아니라 에이전트가 넘을 수 없는 결정론적 가드레일(예: 주문은 구매 후 30일 이내에만 반품 가능)도 정의할 수 있습니다. Sierra 기반 에이전트는 창의적이지만, 주문 처리나 요금제 업그레이드처럼 중요한 순간에는 결정론적 안전장치가 비즈니스 로직이 엄격하게 일관되게 적용되도록 보장합니다.
Sierra Agent SDK를 사용하면 개발자는 기반 LLM과 독립적으로 에이전트가 보이기를 원하는 동작을 선언할 수 있습니다. 이를 통해 Sierra 고객은 프롬프트 엔지니어링으로 구축된 에이전트의 이해하기 어렵고 지나치게 복잡한 워크플로를 피하면서, 유지 관리와 조합이 모두 가능한 매우 복잡한 에이전트를 구축할 수 있습니다. 또한 GPT-4o와 같은 새 모델이 출시되면 코드 변경 없이도 에이전트가 이러한 업그레이드의 이점을 누릴 수 있습니다.
릴리스: 변경 불가능한 에이전트 스냅샷
현대 소프트웨어 팀은 인프라를 코드로 정의하고 소프트웨어 및 하드웨어 프로비저닝을 소스 제어에 저장함으로써 서버, 데이터베이스, 비즈니스 로직에 이르는 전체 애플리케이션을 하나의 단위로 정의합니다. 이러한 접근 방식은 현대 소프트웨어 팀이 수요에 맞춰 용량을 쉽게 확장할 수 있게 하며, 무엇보다도 문제가 발생했을 때 소프트웨어 시스템을 롤백할 수 있게 하는 핵심 메커니즘 중 하나입니다.
AI 에이전트의 동작은 기존 소스 코드 외에도 파운데이션 모델 버전, 검색 증강 생성을 구현하기 위한 지식 베이스, 프롬프트 등 새로운 여러 유형의 종속성에 의해 정의됩니다.
Sierra의 Agent OS를 사용하면 개발자는 이러한 모든 종속성을 포함한 에이전트 릴리스를 원자적으로 패키징할 수 있습니다. 코드형 인프라로 구축된 소프트웨어와 마찬가지로, 각 에이전트 릴리스는 기본 소스 코드와 프롬프트뿐 아니라 모델 버전 종속성과 에이전트가 활용할 수 있는 모든 지식의 변경 불가능한 스냅샷까지 포함합니다.
불변 에이전트 릴리스를 통해 Sierra 고객은 필요에 따라 에이전트 동작을 즉시 되돌릴 수 있습니다. 또한 에이전트 릴리스는 여러 릴리스를 A/B 테스트하여 새로운 에이전트 동작을 비즈니스 목표에 비추어 측정하는 등 강력한 새로운 실험 방식도 지원합니다.
품질 보증: 지속적이고 체계적인 사람의 피드백
실시간 대화형 AI 에이전트는 매주 수천 건에서 수백만 건의 대화를 처리할 수 있습니다. 이러한 에이전트를 지속적으로 개선하려면 성능을 꾸준히 평가하고, 그 피드백을 에이전트의 행동에 직접 반영해야 합니다.
대화 평가가 기술적인 작업인 경우는 드뭅니다. AI 에이전트가 올바르게 행동했는지 판단하려면 고객 경험 관리자나 영업 관리자처럼 비즈니스 운영 원칙을 잘 아는 해당 분야 전문가가 필요합니다.
지속적인 품질 보증을 위해 Sierra 플랫폼에는 기술 담당자와 비기술 담당자 모두 사용할 수 있는 정교한 대화 감사 플랫폼인 Experience Manager가 포함되어 있습니다. 고객 경험 팀은 Experience Manager를 사용해 매일 대화 샘플을 공식적으로 평가하고 피드백을 주석으로 남깁니다. AI 에이전트가 올바른 결정을 내렸나요? AI 에이전트가 적절한 언어와 어조를 사용했나요? 에이전트에게 질문에 답하는 데 필요한 지식이 부족했나요? 결정이 잘못되었다면 에이전트는 어떻게 했어야 했나요?
이러한 주석이 달린 대화는 에이전트 개선의 기반이 됩니다. 에이전트는 Agent SDK로 구축되므로 모든 에이전트 결정의 추론 과정을 추적할 수 있으며, 플랫폼은 에이전트가 오작동한 원인을 정확히 파악할 수 있습니다. 모든 이슈에는 대화가 주석으로 기록되므로 개발자는 이슈를 발생시킨 대화를 빠르고 쉽게 시뮬레이션할 수 있고, 다양한 개발자 도구를 통해 에이전트 개선 사항을 신속하게 배포할 수 있습니다.
더 중요한 점은, 이렇게 주석이 달린 대화가 에이전트의 회귀 테스트 기반이 되어 AI 에이전트가 같은 실수를 반복하지 않도록 한다는 것입니다.
테스트: 대화 회귀 테스트
통합 테스트는 복잡한 소프트웨어 시스템에서 악명 높을 정도로 어려운 과제이지만, 기반 언어 모델의 비결정적 특성 때문에 대화형 AI에서는 더욱 어렵습니다. 한 문제를 해결하기 위해 모델이나 프롬프트를 조금만 수정해도 기존 해결책이 쉽게 깨질 수 있어, 프롬프트 엔지니어링의 두더지 잡기 게임이 반복되고 고객의 불만도 커지게 됩니다.
Agent OS는 대화 시뮬레이션을 통해 에이전트 테스트를 기본 지원합니다.
Experience Manager에서 주석이 추가된 모든 대화는 대화 테스트가 될 수 있습니다. 대화 테스트는 모의 API를 대상으로 시뮬레이션하여 문제를 안정적으로 재현하는 대화의 스냅샷입니다. 고객 경험 팀이 수천 건의 대화에 주석을 추가하면 개발자는 개발 중과 에이전트 출시 전 병렬로 실행할 수 있는 수천 개의 대화 테스트를 활용할 수 있어 에이전트 품질이 선순환합니다.
이 테스트를 통해 에이전트를 개발하는 개발자는 테스트 주도 개발을 적용할 수 있으며, 전체 테스트 모음은 에이전트 릴리스를 검증하는 강력한 회귀 테스트 모음이 됩니다.
Sierra는 기반 Agent OS 플랫폼을 업그레이드할 때 품질을 평가하기 위한 내부 평가뿐 아니라, 플랫폼 업그레이드로 인해 고객 에이전트의 기능이 저하되지 않도록 운영 중인 모든 고객을 대상으로 회귀 테스트 모음도 실행합니다.
에이전트 개발의 미래
AI 에이전트 개발이 아직 아주 초기 단계처럼 느껴진다면, 실제로 그렇기 때문입니다. 우리는 미지의 영역을 개척하고 있습니다. 정교한 LLM 기반 에이전트는 불과 1년여 전만 해도 존재하지 않았고, 이를 개발하고 테스트할 방법과 도구 역시 없었습니다. 마치 1996년처럼 인터넷은 존재하고 사람들이 웹사이트와 초기 웹 애플리케이션을 만들고 있지만 LAMP 스택은 없는 상황과 비슷합니다. Sierra에서는 고객을 위한 산업용 수준의 에이전트를 구축할 뿐만 아니라, 더 신뢰할 수 있고 확장 가능하며 유지 관리가 쉬운 에이전트를 만들기 위한 새로운 도구와 프로세스도 개발하고 있습니다.
Sierra를 활용해 귀사를 위한 에이전트를 구축하는 데 관심이 있으시면, 함께해 주세요.

