InfoGrab Docs

AI 도구 호출을 위한 Human-in-the-loop

요약

AI Agent가 특정 도구를 실행하기 전에 사람의 승인을 요구할 수 있습니다. 이 기능을 통해 AI 워크플로 내에서 도구 사용에 대한 선택적 감독이 가능하며, 메시지 전송, 레코드 수정, 데이터 삭제 등 위험도가 높은 도구에 추가 검토를 적용하기 쉬워집니다.

AI Agent가 특정 도구를 실행하기 전에 사람의 승인을 요구할 수 있습니다. 도구에 사람의 검토가 필요한 경우 워크플로가 일시 중지되고 담당자가 다음 중 하나의 작업을 수행할 때까지 대기합니다.

  • 승인: AI가 지정한 입력값으로 도구가 실행됩니다.
  • 거부: 작업이 취소되어 실행되지 않습니다.

이 기능을 통해 AI 워크플로 내에서 도구 사용에 대한 선택적 감독이 가능하며, 메시지 전송, 레코드 수정, 데이터 삭제 등 위험도가 높은 도구에 추가 검토를 적용하기 쉬워집니다.

사람 검토가 필요한 경우#

Human-in-the-loop(HITL) 검토는 다음과 같은 상황에서 유용합니다.

  • 도구가 되돌릴 수 없는 작업을 수행하는 경우: 데이터 삭제, 외부 통신 전송, 구매 진행 등.
  • 규정 준수 요건이 있는 경우: 규제 업종에서는 특정 자동화 작업에 사람의 승인이 필요할 수 있습니다.
  • 고가치 의사결정이 포함된 경우: 비즈니스에 중요한 영향을 미치는 작업은 사람의 감독이 도움이 됩니다.
  • AI 워크플로에 대한 신뢰를 구축하는 경우: 처음에는 사람 검토를 활성화한 후, 신뢰가 쌓이면 감독을 줄여 나갑니다.

HITL은 AI Agent 노드에 연결된 모든 도구 또는 선택한 개별 도구에만 적용할 수 있어, 일반적인 출력 게이팅보다 더 세밀한 제어가 가능합니다.

작동 방식#

  1. AI Agent가 사람 검토가 활성화된 도구를 사용해야 한다고 판단합니다.
  2. 워크플로가 일시 중지되고 설정된 채널(Slack, Telegram, n8n Chat 인터페이스 등)을 통해 승인 요청을 전송합니다.
  3. 사람 검토자는 AI가 사용하려는 도구와 파라미터를 확인하는 요청을 받습니다.
  4. 검토자가 요청을 승인하거나 거부합니다.
  5. 승인된 경우 AI가 지정한 입력값으로 도구가 실행됩니다. 거부된 경우 작업이 취소되고 AI에게 거부 사실이 전달됩니다.
다른 승인 채널

검토 단계는 주요 상호작용과 다른 채널을 통해 진행될 수 있습니다. 예를 들어 사용자는 n8n Chat 인터페이스를 통해 AI 에이전트와 상호작용하고, 승인 요청은 Slack의 특정 담당자에게 전달하도록 구성할 수 있습니다.

도구에 대한 사람 검토 설정하기#

1단계: 도구 패널 열기#

워크플로에서 AI Agent 노드의 Tools 커넥터를 클릭하여 도구 패널을 엽니다.

2단계: 사람 검토 단계 추가하기#

  1. 도구 패널에서 Human review 섹션을 찾습니다.
  2. 사용 가능한 옵션 중 원하는 승인 채널을 선택합니다.
  3. 적절한 자격 증명과 설정으로 승인 채널을 구성합니다.

3단계: 도구를 검토 단계에 연결하기#

  1. 승인이 필요한 도구를 사람 검토 단계의 도구 커넥터에 추가합니다.
  2. 각 도구를 일반적인 방법으로 구성합니다.

사용 가능한 승인 채널#

다음 서비스 중 하나를 사람 검토 채널로 사용할 수 있습니다.

채널 설명
Chat n8n 내장 채팅 인터페이스
Slack Slack 채널 또는 DM으로 승인 요청 전송
Discord Discord 채널로 승인 요청 전송
Telegram Telegram을 통해 승인 요청 전송
Microsoft Teams Teams 채널 또는 채팅으로 승인 요청 전송
Gmail 이메일로 승인 요청 전송
WhatsApp Business Cloud WhatsApp을 통해 승인 요청 전송
Google Chat Google Chat으로 승인 요청 전송
Microsoft Outlook Outlook 이메일로 승인 요청 전송

사람 검토 도구에서 표현식 사용하기#

$tool 변수#

사람 검토 단계를 구성할 때 $tool 변수를 사용하여 AI가 수행하려는 작업에 대한 컨텍스트를 검토자에게 제공하는 메시지를 구성할 수 있습니다. 이 변수에는 두 가지 속성이 있습니다.

속성 설명
$tool.name AI Agent가 호출하려는 도구의 이름. n8n 캔버스에 표시되는 노드 이름입니다.
$tool.parameters AI Agent가 도구 호출에 사용하려는 파라미터. $fromAI() 표현식으로 구성된 도구 입력 스키마의 모든 필드가 포함됩니다.

메시지 구성 예시:

The AI wants to use {{ $tool.name }} with the following parameters:
{{ JSON.stringify($tool.parameters, null, 2) }}

이를 통해 검토자는 승인 또는 거부 전에 AI가 시도하는 작업을 정확히 파악할 수 있습니다.

사람 검토 도구에서 $fromAI() 사용하기#

$fromAI() 함수는 사람 검토 단계에 연결된 도구에서도 작동합니다. 즉, AI가 도구 파라미터를 동적으로 지정할 수 있으며, AI가 결정한 해당 값이 사람 검토자에게 표시되어 승인을 받게 됩니다.

시스템 프롬프트 모범 사례#

AI Agent가 거부된 도구 호출 시도를 올바르게 해석하고 처리하려면 시스템 프롬프트에 사람 검토 설정에 대한 정보를 포함해야 합니다.

시스템 프롬프트 구성 필요

시스템 프롬프트에 도구 설정 및 사람 검토 단계를 반드시 포함하세요. 이를 통해 AI가 어떤 도구에 승인이 필요한지 이해하고 도구 호출이 거부되었을 때 올바르게 응답할 수 있습니다.

다음 내용을 포함하는 것이 좋습니다.

  • 사람의 승인이 필요한 도구
  • 승인이 거부되었을 때 발생하는 일
  • 거부에 대한 AI의 응답 방식 (예: 사용자에게 알림, 대안 제안, 또는 명확화 요청)

체이닝 및 서브에이전트#

다른 AI Agent의 도구로 AI Agent를 사용하는 경우, 서브에이전트의 사람 검토 단계도 올바르게 작동합니다.

관련 리소스#

AI 도구 호출을 위한 Human-in-the-loop

원문 보기
요약

AI Agent가 특정 도구를 실행하기 전에 사람의 승인을 요구할 수 있습니다. 이 기능을 통해 AI 워크플로 내에서 도구 사용에 대한 선택적 감독이 가능하며, 메시지 전송, 레코드 수정, 데이터 삭제 등 위험도가 높은 도구에 추가 검토를 적용하기 쉬워집니다.

AI Agent가 특정 도구를 실행하기 전에 사람의 승인을 요구할 수 있습니다. 도구에 사람의 검토가 필요한 경우 워크플로가 일시 중지되고 담당자가 다음 중 하나의 작업을 수행할 때까지 대기합니다.

  • 승인: AI가 지정한 입력값으로 도구가 실행됩니다.
  • 거부: 작업이 취소되어 실행되지 않습니다.

이 기능을 통해 AI 워크플로 내에서 도구 사용에 대한 선택적 감독이 가능하며, 메시지 전송, 레코드 수정, 데이터 삭제 등 위험도가 높은 도구에 추가 검토를 적용하기 쉬워집니다.

사람 검토가 필요한 경우#

Human-in-the-loop(HITL) 검토는 다음과 같은 상황에서 유용합니다.

  • 도구가 되돌릴 수 없는 작업을 수행하는 경우: 데이터 삭제, 외부 통신 전송, 구매 진행 등.
  • 규정 준수 요건이 있는 경우: 규제 업종에서는 특정 자동화 작업에 사람의 승인이 필요할 수 있습니다.
  • 고가치 의사결정이 포함된 경우: 비즈니스에 중요한 영향을 미치는 작업은 사람의 감독이 도움이 됩니다.
  • AI 워크플로에 대한 신뢰를 구축하는 경우: 처음에는 사람 검토를 활성화한 후, 신뢰가 쌓이면 감독을 줄여 나갑니다.

HITL은 AI Agent 노드에 연결된 모든 도구 또는 선택한 개별 도구에만 적용할 수 있어, 일반적인 출력 게이팅보다 더 세밀한 제어가 가능합니다.

작동 방식#

  1. AI Agent가 사람 검토가 활성화된 도구를 사용해야 한다고 판단합니다.
  2. 워크플로가 일시 중지되고 설정된 채널(Slack, Telegram, n8n Chat 인터페이스 등)을 통해 승인 요청을 전송합니다.
  3. 사람 검토자는 AI가 사용하려는 도구와 파라미터를 확인하는 요청을 받습니다.
  4. 검토자가 요청을 승인하거나 거부합니다.
  5. 승인된 경우 AI가 지정한 입력값으로 도구가 실행됩니다. 거부된 경우 작업이 취소되고 AI에게 거부 사실이 전달됩니다.
다른 승인 채널

검토 단계는 주요 상호작용과 다른 채널을 통해 진행될 수 있습니다. 예를 들어 사용자는 n8n Chat 인터페이스를 통해 AI 에이전트와 상호작용하고, 승인 요청은 Slack의 특정 담당자에게 전달하도록 구성할 수 있습니다.

도구에 대한 사람 검토 설정하기#

1단계: 도구 패널 열기#

워크플로에서 AI Agent 노드의 Tools 커넥터를 클릭하여 도구 패널을 엽니다.

2단계: 사람 검토 단계 추가하기#

  1. 도구 패널에서 Human review 섹션을 찾습니다.
  2. 사용 가능한 옵션 중 원하는 승인 채널을 선택합니다.
  3. 적절한 자격 증명과 설정으로 승인 채널을 구성합니다.

3단계: 도구를 검토 단계에 연결하기#

  1. 승인이 필요한 도구를 사람 검토 단계의 도구 커넥터에 추가합니다.
  2. 각 도구를 일반적인 방법으로 구성합니다.

사용 가능한 승인 채널#

다음 서비스 중 하나를 사람 검토 채널로 사용할 수 있습니다.

채널 설명
Chat n8n 내장 채팅 인터페이스
Slack Slack 채널 또는 DM으로 승인 요청 전송
Discord Discord 채널로 승인 요청 전송
Telegram Telegram을 통해 승인 요청 전송
Microsoft Teams Teams 채널 또는 채팅으로 승인 요청 전송
Gmail 이메일로 승인 요청 전송
WhatsApp Business Cloud WhatsApp을 통해 승인 요청 전송
Google Chat Google Chat으로 승인 요청 전송
Microsoft Outlook Outlook 이메일로 승인 요청 전송

사람 검토 도구에서 표현식 사용하기#

$tool 변수#

사람 검토 단계를 구성할 때 $tool 변수를 사용하여 AI가 수행하려는 작업에 대한 컨텍스트를 검토자에게 제공하는 메시지를 구성할 수 있습니다. 이 변수에는 두 가지 속성이 있습니다.

속성 설명
$tool.name AI Agent가 호출하려는 도구의 이름. n8n 캔버스에 표시되는 노드 이름입니다.
$tool.parameters AI Agent가 도구 호출에 사용하려는 파라미터. $fromAI() 표현식으로 구성된 도구 입력 스키마의 모든 필드가 포함됩니다.

메시지 구성 예시:

The AI wants to use {{ $tool.name }} with the following parameters:
{{ JSON.stringify($tool.parameters, null, 2) }}

이를 통해 검토자는 승인 또는 거부 전에 AI가 시도하는 작업을 정확히 파악할 수 있습니다.

사람 검토 도구에서 $fromAI() 사용하기#

$fromAI() 함수는 사람 검토 단계에 연결된 도구에서도 작동합니다. 즉, AI가 도구 파라미터를 동적으로 지정할 수 있으며, AI가 결정한 해당 값이 사람 검토자에게 표시되어 승인을 받게 됩니다.

시스템 프롬프트 모범 사례#

AI Agent가 거부된 도구 호출 시도를 올바르게 해석하고 처리하려면 시스템 프롬프트에 사람 검토 설정에 대한 정보를 포함해야 합니다.

시스템 프롬프트 구성 필요

시스템 프롬프트에 도구 설정 및 사람 검토 단계를 반드시 포함하세요. 이를 통해 AI가 어떤 도구에 승인이 필요한지 이해하고 도구 호출이 거부되었을 때 올바르게 응답할 수 있습니다.

다음 내용을 포함하는 것이 좋습니다.

  • 사람의 승인이 필요한 도구
  • 승인이 거부되었을 때 발생하는 일
  • 거부에 대한 AI의 응답 방식 (예: 사용자에게 알림, 대안 제안, 또는 명확화 요청)

체이닝 및 서브에이전트#

다른 AI Agent의 도구로 AI Agent를 사용하는 경우, 서브에이전트의 사람 검토 단계도 올바르게 작동합니다.

관련 리소스#