도구로서의 에이전트

기존 에이전트를 도구로 사용할 수 있습니다. 이를 통해 활성 에이전트는 다른 에이전트에게 대화를 넘기지 않고도 다른 에이전트의 기능을 재사용할 수 있습니다. agent-as-a-tool는 활성 에이전트에 의해 동기식 또는 비동기식으로 호출될 수 있습니다.

여러 LLM 및 도구 호출로 인해 에이전트-도구에 상당한 지연 시간이 발생하는 경우 비동기 동작을 사용하세요. 활성 에이전트는 에이전트-도구를 호출할 수 있으며, 백그라운드에서 작업을 실행합니다. 활성 에이전트는 에이전트가 도구로 응답을 처리하는 동안 최종 사용자와 대화를 계속할 수 있습니다. 작업이 완료되면 에이전트가 도구로 완료하고 활성 에이전트가 사용자에게 결과를 요약할 수 있습니다.

다른 상담사에게 대화를 핸드오프하지 않고 기존 상담사 동작을 재사용하려면 동기 동작을 사용하세요.

구성

에이전트 빌더의 오른쪽에서 일반 도구 만들기 버튼을 사용하거나 특정 에이전트의 제목 표시줄에서 에이전트를 도구로 만들기 컨텍스트 메뉴를 사용하여 에이전트를 도구로 구성할 수 있습니다.

이 도구에는 다음 구성 항목이 필요합니다.

  • 상담사: 이 도구의 타겟 상담사입니다.
  • 이름: 도구 이름입니다.
  • 설명: 선택사항인 도구 설명입니다.
  • 고급 > 비동기: 사용 설정된 경우 (기본값) 도구가 백그라운드에서 실행되는 동안 활성 상담사가 세션을 계속합니다.

에이전트 애플리케이션이 오디오 모델을 사용하는 경우 도구로 사용되는 에이전트의 텍스트 모델을 지정하는 것이 좋습니다.

  • 활성 에이전트가 더 작고 빠른 모델을 사용하는 동안 더 크고 느린 모델을 사용할 수 있으므로 더 복잡한 워크플로가 가능합니다.
  • 오디오 에이전트 애플리케이션에서는 에이전트가 도구로 사용되는 경우를 제외하고 에이전트의 모델을 재정의할 수 없습니다.

안내

비동기 도구 호출에 대한 안내를 작성할 때는 다음 사항을 고려하세요.

  • 비동기 도구는 작업을 시작할 때 즉시 '대기 중' 응답을 보낼 수 있습니다. 활성 에이전트가 요청 사항에서 이 응답을 처리하도록 하는 것이 좋습니다.
  • 상담사에게 답변을 준비 중이라고 사용자에게 알리도록 안내하는 것이 좋습니다.
  • 대기하는 동안 동일한 도구를 호출하지 않도록 에이전트에게 안내합니다.
  • 상담사-도구는 사용자에게 추가 정보를 요청할 수 있습니다.

샘플 요청 사항:

* You MUST acknowledge the user's request with a short, conversational
  word or phrase (e.g., 'Okay', 'Got it', 'One second') prior to
  calling asynchronous tools.
* For tools that execute asynchronously, ignore 'pending' results
  and continue conversing with the user while waiting for the complete result.
* NEVER notify the user that a function result is 'pending'.
* Do NOT call the same tool again while waiting for a complete result
  from a previous call of that same tool.
* If {@TOOL: your_agent_tool} has follow up questions for the user,
  be sure to relay the answers back to the tool.

제한사항

다음과 같은 제한사항이 적용됩니다.

  • 에이전트는 여러 에이전트-도구를 병렬로 호출할 수 있지만 동일한 도구를 병렬로 호출할 수는 없습니다.
  • 도구를 도구의 루트 에이전트에 할당할 수 없습니다.