Google이 TypeScript 및 Go용 Genkit Agents API 프리뷰를 출시했습니다. 이번 업데이트에는 "detached turns"와 "human-in-the-loop" 가드레일이 추가되어, 프로덕션급 AI 에이전트를 더 쉽게 구축하고 제어할 수 있게 되었습니다.
새로운 API가 중요한 이유
개발자들은 AI 에이전트를 배포할 때 두 가지 문제로 오랫동안 고심해 왔습니다. 바로 전체 파이프라인을 중단시키는 장시간 실행 작업과, 안전하고 신뢰할 수 있는 동작을 보장하기 어렵다는 점입니다. "detached turns"를 사용하면 에이전트가 주변 워크플로우를 잠그지 않고도 긴 작업에 대해 계속 업무를 수행할 수 있으며, "human-in-the-loop" 옵션은 에이전트의 출력이 적용되기 전에 수동 검토를 강제합니다. 이 두 기능은 함께 작동하여 다운타임을 줄이고 비용이 많이 드는 실수를 방지합니다.
여기까지 오게 된 과정
올해 초, 오픈 소스 프레임워크와 클라우드 서비스들이 대화형 AI를 위한 플러그 앤 플레이(plug-and-play) 컴포넌트를 제공하기 시작했지만, 대부분의 경우 개발자가 직접 오케스트레이션 코드를 작성해야 했습니다. Google의 Genkit은 요청 처리, 상태 관리, 모델 선택과 같은 반복적인 코드(boilerplate)를 제거하는 상위 수준의 SDK를 통해 그 간극을 메웁니다.
각 기능의 실제 역할
- Detached turns: 에이전트가 외부 API에서 데이터를 가져오거나, 다단계 추론 체인을 실행하거나, 사용자 입력을 기다려야 할 때, 해당 작업을 백그라운드 프로세스로 넘깁니다. 메인 워크플로우는 플레이스홀더(placeholder)를 전달받아 다음 단계로 진행하므로, 후속 작업을 차단하는 전체 중단 현상을 방지할 수 있습니다.
- Human-in-the-loop: 에이전트의 결정(예: 대출 승인 또는 데이터베이스 업데이트)이 확정되기 전에 검토자를 위한 UI 프롬프트가 나타납니다. 검토자는 제안을 수락, 수정 또는 거부할 수 있으며, 이를 통해 조직은 자동화를 포기하지 않으면서도 안전망을 확보할 수 있습니다.
등장하고 있는 보완 도구들
Genkit과 더불어, 오픈 소스 커뮤니티에서는 AI 파이프라인에서 흔히 발생하는 문제인 비용과 디버깅 문제를 해결하는 유틸리티들을 출시하고 있습니다.
- ORA: 단일 바이너리로 패키징된 Go 기반의 작업 오케스트레이터입니다. 대규모 작업을 작은 하위 작업으로 분할하고, 각 작업을 처리할 수 있는 가장 저렴한 모델로 자동 라우팅하여 팀이 클라우드 비용을 효율적으로 관리할 수 있도록 돕습니다.
- Python AI error explainer: 스택 트레이스(stack traces)와 난해한 로그를 분석하여 쉬운 언어로 된 요약, 예상 원인 및 해결 단계를 반환하는 라이브러리입니다. 가공되지 않은 에러 데이터를 실행 가능한 통찰력으로 변환함으로써 개발자 피드백 루프를 가속화합니다.
누가 이득을 보고, 누가 우려하는가
향후 주목할 점
이번 프리뷰가 약속한 기능을 제대로 구현해낸다면, AI 에이전트는 실험적인 챗봇을 넘어, 리스크가 큰 상황에서 스스로 행동하고, 멈추고, 도움을 요청할 수 있는, 기업이 신뢰할 수 있는 안정적인 구성 요소로 진화할 수 있을 것입니다.
