AI VIDEO BRIEFING

AI 에이전트 휴먼 인 더 루프 구현법: 승인 단계 설계와 상태 저장·재개 실전 패턴 총정리

AI 에이전트가 송금처럼 위험한 작업을 실행하기 전에 사람의 승인을 받도록 만드는 두 가지 코드 방식과, 실제 서비스에 적용할 때 반드시 필요한 상태 저장·재개 구조를 은행 에이전트 예제와 함께 단계별로 정리했다.

AI 에이전트에 사람의 승인 절차를 넣는 법, 핵심은 '상태 저장'이다 영상 대표 이미지

핵심 메시지

  • 은행 에이전트처럼 잔액 조회는 자동으로 두되 송금 같은 위험한 작업만 사람의 승인을 받게 나누면, 완성도가 100%가 아니어도 서비스를 먼저 출시할 수 있다.
  • 승인이 필요한지 판단하는 규칙은 언어 모델의 재량에 맡기지 말고 코드 쪽에 못 박아 두는 편이 안전하다.
  • 실습용 코드에서 쓰는 '입력 대기'는 실제 서비스에서는 쓸 수 없다. 연결을 붙잡아 두는 대신 진행 상황을 저장하고 연결을 끊어야 한다.
  • 사용자가 곧바로 답하는 채팅형 서비스와, 사람이 기다리지 않는 백엔드 자동화는 승인 요청을 전달하는 방식이 서로 다르다.
  • 저장·재개 구조를 갖추면 사용자가 일주일 뒤에 승인 버튼을 눌러도 작업이 이어진다.

쉽게 이해하기

AI 에이전트를 실제 업무에 붙이면 곧바로 부딪히는 문제가 있다. 모델이 알아서 처리해도 괜찮은 작업과, 사람이 한 번 확인해야 하는 작업이 섞여 있다는 점이다. 영상은 잔액 조회와 입금은 자유롭게 실행하되 일정 금액 이상의 송금은 반드시 승인을 거치게 하는 가상의 은행 에이전트를 예로 들어 이 구조를 설명한다.

이런 승인 절차가 필요한 이유는 안전 때문만이 아니다. 발표자는 오히려 출시 속도를 이유로 든다. 전체 요청 가운데 절반은 모델이 완전 자동으로 처리하고 나머지 까다로운 절반만 사람이 확인하는 식으로 나누면, 모델이 모든 경우를 완벽하게 처리할 때까지 기다리지 않고도 서비스를 먼저 내보낼 수 있다는 것이다.

코드에서 흐름을 멈추는 방법으로는 두 가지가 제시된다. 하나는 모델이 먼저 '무엇을 할지'의 계획을 정해진 형식으로 내놓게 하고, 그 목록을 코드가 훑으며 승인이 필요한 항목을 걸러 내는 방식이다. 다른 하나는 모델이 도구를 직접 호출하게 두되, 호출이 감지되면 실행 전에 가로채는 방식이다. 어느 쪽이든 승인 기준 자체는 모델의 판단이 아니라 코드에 규칙으로 새겨 넣는 편이 안전하다고 강조한다.

문제는 그다음부터다. 발표자는 파이썬의 입력 대기 함수로 흐름을 멈추는 것은 시연에서만 통하는 방법이라고 못 박는다. 실제 서비스에는 사용자, 화면, API, 에이전트, 데이터베이스가 모두 얽혀 있어서 백엔드 한 곳만 멈춰 세워서는 사용자에게 아무것도 전달되지 않기 때문이다.

그래서 제시되는 것이 두 가지 운영 구조다. 채팅처럼 사용자가 화면 앞에 있는 경우에는 승인 요청을 화면으로 흘려보낸 뒤 연결을 닫고, 사용자가 버튼을 누르면 별도의 실행용 요청으로 다시 들어와 저장해 둔 상태를 불러와 이어서 처리한다. 반대로 사람이 기다리지 않는 백엔드 작업이라면 이메일이나 사내 메신저로 승인 요청을 보내고, 응답이 오면 같은 방식으로 재개한다.

주요 인사이트

  • 승인 여부를 모델이 스스로 판단하게 두면 규칙이 흔들린다. 금액 기준 같은 조건은 데이터 검증 단계에서 강제해 모델이 '승인 불필요'라고 잘못 답해도 코드가 뒤집도록 만드는 편이 견고하다.
  • 휴먼 인 더 루프의 진짜 어려움은 에이전트 안쪽이 아니라 화면·API·저장소를 잇는 전체 흐름에 있다. 백엔드 코드만 보면 쉬워 보이지만, 승인 요청을 사용자에게 전달하고 다시 받아오는 경로가 빠지면 동작하지 않는다.
  • 연결을 열어 둔 채 기다리면 안 되는 이유는 사용자 습관에 있다. 질문을 던져 놓고 자리를 비우거나 아예 돌아오지 않는 경우가 흔하기 때문에, 네트워크 문제 한 번으로 작업 맥락이 통째로 날아갈 수 있다.
  • 핵심 개념은 세 가지로 압축된다. 승인이 필요하면 실행 대신 상태를 저장할 것, 대화 기록과 대기 중인 작업까지 함께 보존할 것, 재개할 때는 메모리에 의존하지 말고 저장소에서 전부 다시 불러올 것.
  • 같은 승인 구조라도 실시간 대화형이냐 백그라운드 작업이냐에 따라 알림 수단이 달라질 뿐, 상태를 저장했다가 다시 불러오는 뼈대는 동일하다.

자주 묻는 질문

왜 파이썬의 입력 대기로 승인을 받으면 안 되나요?

그 방식은 백엔드 프로세스만 멈춰 세울 뿐 사용자에게 승인 요청을 전달하지 못합니다. 또 연결을 계속 붙잡고 있어야 하므로 지연이나 네트워크 오류가 생기면 진행 중이던 맥락이 모두 사라집니다. 영상에서는 시연용으로만 쓰고 실제 서비스에서는 상태를 저장하는 방식으로 바꾸라고 설명합니다.

승인 대기 중에 저장해야 하는 정보는 무엇인가요?

사용자가 무엇을 물었는지, 어떤 맥락과 지시문이 쓰였는지, 그리고 아직 실행되지 않은 작업과 그 작업에 넣을 값들입니다. 다시 실행할 때 모델에 전달해야 하는 것을 모두 저장해 두어야 승인 이후에 이어서 처리할 수 있습니다.

사람이 기다리지 않는 자동화 작업에도 적용할 수 있나요?

가능합니다. 화면으로 응답을 흘려보내는 대신 이메일이나 사내 메신저로 승인 요청을 보내는 알림 경로를 하나 두면 됩니다. 영상에서는 일정 금액을 넘는 청구서 처리 같은 경우 메신저 채널에 승인·거부 버튼을 띄우는 예를 들었습니다.

원문과 출처

이 글은 원본 영상의 자막을 바탕으로 한국어 독자를 위해 요약했습니다. 전체 맥락과 최신 정보는 원문에서 확인하세요.

YouTube 원본 영상 보기 ↗

관련 AI 소식