Stripe는 어떻게 1주일 만에 Deep Agents 기반 Kai를 만들었나

TMT

https://www.langchain.com/blog/how-stripe-built-their-knowledge-ai-platform-on-deep-agents

Stripe는 수백만 개 기업이 사용하는 글로벌 결제·금융 인프라 플랫폼입니다. 대규모로 제품을 끊임없이 출시하고 개선하는 조직을 뒷받침하기 위해, Stripe는 전사 직원의 생산성을 높여 주는 AI 도구를 구축해 왔습니다. Stripe의 AI 플랫폼 팀은 회사의 모든 AI 애플리케이션을 떠받치는 스택을 책임집니다. 이들의 가장 눈에 띄는 제품이 Stripe Knowledge AI Platform, 일명 Kai입니다. LangChain/LangGraph 스택과 Deep Agents 에이전트 하네스(agent harness) 위에 구축한 전사 생산성 에이전트입니다.

사내 에이전트 하네스 구축

에이전트형 AI 도입이 빨라지면서 Stripe 곳곳의 엔지니어링 팀들이 기존 Ruby·Java 스택 위에 오케스트레이션 계층을 만들기 시작했습니다. 이런 시스템을 Stripe 내부 인프라와 연동하는 일은 비교적 수월했지만, 신뢰할 수 있는 프로덕션 품질의 에이전트 하네스를 만드는 일은 또 다른 난제였습니다.

효과적인 에이전트 시스템에는 연결성 이상이 필요합니다. 뛰어난 성능, 탄탄한 평가 체계, 복잡한 작업을 일관되게 처리하는 능력도 갖춰야 합니다. 초기 구현이 단순한 사용 사례에서는 잘 동작하더라도, 대규모에서 믿을 만한 결과를 내려면 추가 투자가 필요하다는 사실을 많은 팀이 깨달았습니다.

2024년 말 Claude Code가 출시되자 갑자기 Stripe의 모든 직원이 에이전트를 만들고 싶어 했습니다. 하지만 엔지니어가 아닌 직원에게는 터미널, 데이터 접근, 보안 요소가 큰 진입 장벽이었습니다. Agent Foundation 팀의 엔지니어링 매니저 Sharadh Krishnamurthy와 스태프 소프트웨어 엔지니어 Anupam Upadhyay는 발상을 뒤집었습니다. 비기술 직원을 개발자 도구 쪽으로 떠미는 대신, 그들이 있는 자리에 맞춘 전용 도구를 만들어 주면 어떨까? 다시 말해 "모든 직원에게 항상 켜져 있는 프로덕션급 어시스턴트가 있다면 어떨까?" 그 답이 Stripe Knowledge AI Platform이 되었습니다.

모든 Stripe 직원을 위한, 맥락을 아는 AI 동료

Stripe Knowledge AI Platform은 전 직원이 사용할 수 있습니다. 데이터 종합, 브레인스토밍, 문서 초안 작성, 트렌드 분석, 부서 간 협업처럼 대부분의 Stripe 직원이 실제로 하는 일에 맞춰 설계했고, Stripe 내부 데이터 웨어하우스와 Slack, Google 제품군에 연결되는 단일 세션 기반 인터페이스에서 이 모든 일이 이뤄집니다.

사용자가 세션을 시작해 채팅으로 대화하면, Kai는 대화 옆에 함께 남는 산출물, 즉 보고서, 대시보드, 문서를 만들어 냅니다. 채팅이 이어질수록 산출물도 함께 발전합니다. 엔지니어가 아닌 사람을 위한 코딩 에이전트처럼 동작하는 셈입니다.

범용 AI 어시스턴트와 달리 Kai에는 도구와 스킬을 통해 Stripe의 맥락이 미리 담겨 있습니다. Stripe가 어떻게 돌아가는지 알고, 회사 내부 시스템과 데이터 소스, 조직의 관행을 이해합니다. 사용자는 작업할 때마다 자기 직무나 회사가 어떤 곳인지 Kai에게 설명할 필요가 없습니다. 그리고 회사 각 분야의 전문가들이 스킬 라이브러리를 통해 도메인 지식을 보태는데, 100개가 넘는 팀에서 1,000개 이상의 스킬이 모였습니다.

Deep Agents가 에이전트 기반을 맡아 준 덕분에, 팀은 도메인 특화 워크플로에 집중할 수 있었다

Kai의 토대는 LangChain의 오픈소스 에이전트 하네스인 Deep Agents입니다. Deep Agents는 도구 호출 루프, 미들웨어 조합, 스트리밍, 상태 관리를 하나로 엮어 주는 기반을 제공합니다. 밑바닥부터 직접 만들어 안정화하려면 몇 달은 걸렸을 것들입니다.

Stripe의 계층형 아키텍처는 다음과 같이 구성됩니다.

  1. 기반이 되는 Deep Agents: 요청 관리, 에이전트 실행, 미들웨어 조합 등 LLM 상호작용의 기본 요소를 모두 처리하는 토대 계층입니다.
  2. Deep Agents 위에 구축한 Stripe 전용 하네스: Kai를 Stripe의 보안 체계, 인프라, 내부 서비스와 통합해 회사에 맞게 방향이 정해진 환경을 만드는 중간 계층입니다.
  3. 구성 계층: 하네스 위에서 각 팀은 밑단 하네스를 건드리지 않고도 자기만의 커스텀 Kai 에이전트, 즉 스킬 구성과 동작 방식, 페르소나가 서로 다른 특화 에이전트 인스턴스를 구성할 수 있습니다.
  4. Kai UI: 대부분의 Stripe 직원이 접하는 제품 경험으로, 아래 세 계층 전체와 이어집니다.

"Deep Agents 계층이 'Stripe스럽지 않은' 문제를 전부 해결해 주니, 우리는 'Stripe다운' 에이전트 문제를 푸는 데 집중할 수 있습니다." Sharadh의 설명입니다. "미들웨어를 기성품처럼 가져다 쓸 수 있어요. 조합 가능한 스킬 패턴이나 복합 백엔드처럼, 알맞은 구조를 제공하면서도 충분한 유연성을 남겨 둡니다."

Kai를 프로덕션급으로 만든 요소

Anupam은 Kai의 첫 버전을 일주일 만에 만들었습니다. 그 속도를 가능하게 한 Deep Agents 미들웨어는 다음과 같습니다.

  1. 파일시스템 미들웨어: Kai는 로컬 프로세스가 아니라 클라우드에서 돌아가는 프로덕션 서비스입니다. Stripe는 S3를 저장소로 쓰는 가상 파일시스템을 만들어, 에이전트가 턴을 넘나들며 파일을 읽고 쓰고 컨텍스트로 참조할 수 있게 했습니다. 파일시스템이 LLM 컨텍스트에 잘 맞는 이유는, 컨텍스트를 모델이 들여다보고 갱신하고 시간을 두고 정리할 수 있는 대상으로 바꿔 주기 때문입니다. Stripe는 샌드박스의 모든 execute 호출을 "sync in / sync out" 패턴으로 감쌉니다. 실행 전에는 관련 파일을 전부 샌드박스 안에 실제 파일로 준비해 두고, 실행 후에는 새로 생기거나 수정된 파일을 다시 가상 파일시스템으로 동기화합니다. 그 결과 에이전트도, 에이전트를 움직이는 LLM도 세션이 이어지는 내내 일관되고 지속적인 파일 환경을 경험합니다.
  2. 샌드박스 미들웨어: Kai는 두 부류의 작업, 즉 분석(Python을 작성·실행해 데이터를 조회하고 차트를 만드는 일)과 임의 파일 형식 처리(PDF, 프레젠테이션, 구조화 문서)를 샌드박스 환경에서 실행합니다. 샌드박스는 에이전트 자체의 실행 환경이 아니라 하나의 도구로서 에이전트에게 노출됩니다. 에이전트는 샌드박스 밖에서 실행되며 필요할 때 샌드박스를 호출하므로, 실행 경계가 깔끔하게 유지되고 LLM이 생성한 코드에서 비롯되는 일련의 보안 문제를 예방할 수 있습니다.
  3. 요약 미들웨어: 길게 이어지는 멀티턴 세션에서는 쌓인 컨텍스트 때문에 성능이 떨어지거나 모델 한도에 부딪히기 마련인데, 이를 관리하는 데 필수입니다. Kai는 특히 멀티턴 장기 세션에 강합니다. 비용과 균형을 맞추면서 가용 LLM 컨텍스트를 최대한 활용하기 위해, Kai는 요약 임계값, 요약용 모델과 출력 크기 등 deepagents 라이브러리가 제공하는 다양한 조정 옵션을 활용합니다. 대부분의 사용자가 Kai 세션을 띄엄띄엄 사용하기 때문에, 큰 컨텍스트에서 캐시 미스를 피하는 것이 비용 관리에 도움이 됩니다.

스킬: Kai가 수백 개의 내부 도구와 스킬 사이를 오가는 방법

Kai는 스킬을 이용해 수백 개의 내부 도구와 워크플로를 넘나들며 동작합니다. Deep Agents의 스킬은 에이전트가 실행할 수 있는 구조화된 모듈입니다. 각 스킬에는 특정 작업을 수행하는 방법, 어떤 도구를 불러올지, 해당 부류의 일에 어떻게 접근할지가 담겨 있습니다.

Stripe는 각 팀이 자기 스킬을 직접 소유하고 관리하는 연합형(federated) 방식을 따릅니다. 기본 Kai 에이전트에는 Stripe 전반을 안내하는 기초 스킬 세트가 기본 탑재되고, 사용자 프로필과 사용 중인 Kai 에이전트 구성에 따라 계층화된 스킬이 추가로 로드됩니다. 예를 들어 영업 운영 담당자와 재무 담당자는 서로 다른 스킬 세트를 받고, 사용자 수준 프로필 계층을 통해 개인이 직무 기본값 위에 스킬을 더 얹을 수도 있습니다.

내부 MCP 도구가 500개를 넘고 스킬 라이브러리도 계속 커지는 상황이라, Kai가 모든 것을 컨텍스트에 실을 수는 없습니다. Agent SkillsallowedTools 목록이 동적 도구 로딩을 이끄는데, 모든 도구를 미리 로드하는 대신 스킬 선택이 도구 컨텍스트의 관문 역할을 하는 2단계(two-pass) 시스템입니다. 이 선택은 이미 관련 컨텍스트를 갖고 있는 LLM에 맡깁니다. "LLM이 어떤 스킬을 로드할지 판단하는 데 공을 들이고 있으니, 관련 도구를 로드할 때도 바로 그 판단에 기대는 겁니다." Anupam의 설명입니다. 일부 기초 스킬은 고정(pinned)되어 있어, 모델이 무엇을 로드하거나 내리기로 하든 항상 유지됩니다. 이렇게 해서 Stripe 맥락과 정책 관련 동작이 언제나 일관되게 지켜집니다.

스킬 프런트매터를 1,024자로 제한하고 있는데도, 시스템 프롬프트와 합쳐 스킬이 150개를 넘어가면 프런티어 모델의 품질이 떨어지는 현상을 팀이 발견했습니다. 스킬 개수는 여전히 과제로 남아 있고, 팀은 더 나은 해법을 찾기 위해 계속 노력하고 있습니다.

엔지니어 1명, 1주일: Stripe의 Python 베팅이 곧바로 성과를 낸 과정

Stripe는 10년 넘게 Ruby와 Java를 중심으로 내부 도구, 보안 계층, 배포 지원 체계를 쌓아 왔습니다. Python 네이티브 스택을 도입한다는 것은 새 언어에 맞춰 Stripe 내부 서비스 골격을 다시 만든다는 뜻이었고, 이는 큰 투자였습니다.

Kai는 그 투자 가치를 실증으로 보여 줬습니다. 엔지니어 한 명이 단 일주일 만에 Kai를 만들었습니다. Deep Agents가 제공하는 기본 요소들 덕분에 어려운 에이전트 인프라 문제는 이미 풀려 있었기 때문입니다. 이 속도는 Python용 사내 지원 체계를 만드는 데 들인 시간이 곧바로 회수되었음을 증명했습니다. AI 플랫폼 총괄 Chrissie는 "Kai 덕분에 Deep Agents가 옳은 길이라는 사람들의 믿음이 완전히 굳어졌습니다" 라고 강조했습니다.

분기 도입 목표를 1주 만에 달성한 Kai

Kai는 오픈 프리뷰에 들어가자마자 일주일 만에 팀의 분기 도입 목표를 달성했고, 이후 약 4주 동안 사용자가 296명에서 5,000명 이상으로 16배 넘게 늘었습니다. Sharadh는 "그야말로 불이 붙었죠. 써 본 사람들에게 바로 와닿았던 겁니다" 라고 말했습니다.

신규 사용자의 대부분은 팀이 애초에 겨냥했던 직군이었습니다. 영업, 재무 분석가, 사업 운영 담당자처럼 "AI를 쓰라"는 말은 들었지만 실제 일하는 방식에 맞는 도구를 끝내 찾지 못했던 직원들입니다. "'이전 도구는 다가가기 어려웠어요. 설정을 잔뜩 만져야 했죠. 그래도 AI를 쓰라고 하니 정말 애써 봤어요'라고 말하는 사람이 많았습니다. 그러다 '이건 정말 좋네요. 그런 걸 하나도 안 해도 돼요'가 된 거죠." Sharadh의 설명입니다.

오늘날 Stripe 직원의 83%가 매주 Kai를 사용하며, 세션 수는 6만 건을 넘습니다. 도입률로 보면 마케팅(95%)이나 GTM 팀(87%) 같은 비즈니스 직군이 엔지니어링보다도 높습니다. 이들은 여러 내부 소스에서 데이터를 끌어와 종합하고 바로 쓸 수 있는 산출물을 만들어 주는 Kai가 딜 준비 방식을 완전히 바꿔 놓았다고 말합니다. 재무 팀 역시 데이터 분석과 대시보드 생성에 똑같이 유용하게 쓰고 있습니다.

초기 피드백 중 가장 생생한 반응들입니다.

  • "Kai는 영업 담당자에게 정말 믿기지 않는 도구입니다. 수만 시간이 절약될 거예요."
  • "제 Stripe 경력은 Kai 이전과 이후로 나뉩니다."

신입 직원들은 온보딩을 앞당기는 데 Kai를 쓰기 시작했습니다. 엔지니어링 팀은 비엔지니어를 위해 Kai를 만들었지만, 정작 자신들도 업무 부조종사로 쓰게 되었습니다. 자기 시스템에 관한 질문에 Kai로 답을 얻고, 자체 트레이스와 사용 데이터를 Kai로 분석해 스킬 공백을 찾아 커버리지를 넓히는 식입니다.

다음 단계: 제품-시장 적합성 이후

급속한 도입 이후, 팀은 이제 행복한 고민을 안고 있습니다. 고치고 만들어야 할 사용 사례가 천 개는 되기 때문입니다.

스킬 선택의 확장. Stripe는 이미 내부 MCP 도구 500개, 스킬 1,000개를 넘어섰습니다. 이 규모의 스킬 카탈로그에서는 어떤 LLM도 도움 없이 안정적인 선택을 해낼 수 없습니다. 팀은 지금 하이브리드 선택 시스템을 만들고 있습니다. 순수 LLM 선택은 현재 규모에서는 잘 동작하고 전체 컨텍스트가 주어지면 RAG보다 나은 결과를 내지만, 규모가 커지면 LLM이 최종 결정을 내리기 전에 RAG나 분류기 계층으로 후보를 미리 걸러내야 할 것입니다.

거버넌스와 가드레일. 수천 명의 직원으로 도입이 확산되면서, 팀은 Kai의 영향 범위가 기업 환경에 필요한 감독 체계를 앞지르지 않도록 보안·컴플라이언스 가드레일에 투자하고 있습니다.

행동 수준의 개인화. 팀마다 원하는 에이전트 동작이 다릅니다. 어떤 팀은 Kai가 행동하기 전에 항상 계획을 세우고 확인 질문을 하길 원하고, 어떤 팀은 빠른 브레인스토밍을 위해 신속하고 직접적인 답을 원합니다. "이 제품의 약속은 설정을 만질 필요가 없다는 것입니다." Sharadh가 거듭 강조한 말입니다. "그래서 이제는 이 모든 것을 사람 대신 알아서 파악해 주는 지능을 만드는 책임을 우리가 떠안았습니다." 팀은 사용자 맥락에 맞춰 동작을 자동으로 조정하는 ML 분류기와 AI 기반 메커니즘을 검토하고 있습니다.

세션 간 협업. 현재 모델은 단일 사용자 세션입니다. 로드맵은 공유 스킬, 공유 산출물, 그리고 궁극적으로는 여러 직원이 같은 AI 산출물을 함께 다듬어 가는 협업 세션까지 이어집니다.

Kai는 LangChain의 오픈소스 에이전트 하네스인 Deep Agents 위에 구축되었습니다. 프로덕션 에이전트를 만들고 있다면 Deep Agents 문서 부터 시작해 보는 것이 좋습니다.

Edit this page