도구는 에이전트가 외부 시스템과 상호 작용할 수 있도록 하는 구성 요소입니다. 도구는 에이전트의 기능을 확장하여 사용자 요청 또는 자율 트리거에 대한 응답으로 다양한 작업을 수행할 수 있도록 합니다. 각 도구는 에이전트가 수행할 수 있는 특정 기능을 나타냅니다. 예를 들어 다음과 같은 작업을 수행하는 도구를 에이전트에 장착할 수 있습니다.
- Office 365 Outlook 커넥터를 사용하여 전자 메일 보내기
- 현재 기상 조건 및 예측 확인
- Dataverse에서 데이터 읽기 및 쓰기
- Teams에 메시지 읽기 및 게시
도구를 추가하기 위한 메커니즘
하나 이상의 도구를 추가하여 사용자 지정 에이전트의 기능을 확장할 수 있습니다. 에이전트는 생성 오케스트레이션 도구를 사용하여 사용자에게 자동으로 응답할 수 있습니다. 토픽 내에서 도구를 명시적으로 호출할 수도 있습니다.
생성 오케스트레이션(기본적으로 활성)을 사용하면 에이전트가 자동으로 가장 적합한 도구 또는 토픽을 선택하거나 지식을 검색하여 사용자에게 응답할 수 있습니다. 이 오케스트레이션 모드는 보다 역동적이고 지능적인 대화 환경을 만듭니다.
클래식 모드(생성 오케스트레이션이 꺼짐)에서 에이전트는 토픽만 사용하여 사용자에게 응답할 수 있습니다. 그러나 토픽 내에서 명시적으로 도구를 호출하도록 에이전트를 디자인할 수 있습니다.
에이전트에 도구를 추가하는 데 사용할 수 있는 몇 가지 메커니즘이 있습니다.
- 미리 빌드된 커넥터: Microsoft 및 비 Microsoft 서비스에서 인기 있는 수천 개의 API에 대한 미리 설정된 연결 중에서 선택합니다.
- 사용자 지정 커넥터: Power Platform Connectors를 사용하여 사용자 지정 도구 옵션을 사용하도록 사용자 지정 서비스 또는 시스템에 대한 연결을 정의합니다.
- 에이전트 흐름: 수행할 하나 이상의 작업을 포함하여 에이전트 흐름을 정의합니다.
- 프롬프트: 제공한 지식을 참조할 수 있는 단일 턴 모델 기반 프롬프트입니다.
- REST API 연결: REST API에 대한 연결을 정의하고 도구로 추가할 하나 이상의 API 엔드포인트 및 메서드를 선택합니다.
- MCP(모델 컨텍스트 프로토콜) 도구: MCP 서버에 연결하여 도구에 액세스합니다.
- 컴퓨터 사용(미리 보기) 에이전트: 에이전트가 웹 사이트 및 데스크톱 앱용 그래픽 사용자 인터페이스가 있는 모든 시스템과 상호 작용하고, 단추를 선택하고, 메뉴를 선택하고, 화면의 필드에 텍스트를 입력할 수 있습니다.
이 문서의 도구와 설명서의 이 섹션에 대해 이야기할 때 이 그룹의 메커니즘 중 하나를 의미합니다. 이러한 도구 유형은 에이전트에 추가하고 비슷한 방식으로 구성할 수 있습니다.
에이전트에 도구와 유사한 동작을 추가하는 데 사용할 수 있는 두 가지 다른 메커니즘이 있습니다.
- 기술: 관련 도구 집합에 대한 컨테이너입니다.
- 클라이언트 도구: 클라이언트가 작업을 수행하고 응답을 반환하도록 이벤트 활동을 클라이언트에 보냅니다.
기술 및 클라이언트 도구에 대한 자세한 내용은 관련 콘텐츠 섹션의 링크를 참조하세요.
에이전트 수준에서 새 도구 만들기 및 추가
Copilot Studio 내에서 직접 새 도구를 만들면 개발 프로세스가 간소화되고 에이전트와의 적절한 통합이 보장됩니다. 에이전트에 추가된 도구는 에이전트의 대화 전체에서 자동 오케스트레이션에 사용할 수 있습니다.
왼쪽 탐색 창에서 에이전트를 선택하고 목록에서 해당 에이전트를 선택하여 에이전트를 엽니다.
에이전트의 도구 페이지로 이동합니다.
도구 추가를 선택합니다.
도구 추가 창에서 새 도구를 선택합니다.
표시되는 목록에서 추가할 도구 유형을 선택합니다.
- 프롬프트: AI 기반 텍스트 생성 및 분석 도구 만들기
- 에이전트 흐름: 조건부 논리를 사용하여 다단계 프로세스 빌드
- 컴퓨터 사용: 레거시 시스템에 GUI 자동화 사용
- 사용자 지정 커넥터: 전용 API 및 서비스에 연결
- REST API: 웹 서비스와 직접 통합
선택한 도구 유형과 관련된 구성 단계를 수행합니다. 예를 들어 프롬프트를 선택하는 경우 다음 단계를 수행해야 합니다.
- 프롬프트 템플릿 및 지침 정의
- 입력 매개 변수 지정
- 참조 자료 원본 구성
- 응답 형식 및 제약 조건 설정
미리 보기 패널을 사용하여 도구 구성을 테스트하여 예상대로 작동하는지 확인합니다.
저장을 선택하여 새 도구를 만듭니다.
에이전트에 추가를 선택하여 에이전트에 도구를 추가합니다. 에이전트의 도구 페이지에서 새 도구를 볼 수 있습니다.
도구 구성 보기 및 변경
언제든지 도구의 구성을 보고 편집할 수 있습니다. 에이전트의 도구 페이지로 이동하여 도구 목록에서 도구를 선택합니다.
도구의 구성을 보여 주는 도구 세부 정보 페이지가 열립니다. 세부 정보는 다음 세 섹션에 표시됩니다.
- 세부 정보
- 입력
- 완료(MCP 커넥터용 도구)
세부 정보
세부 정보 섹션에서 도구에 대한 기본 세부 정보를 구성할 수 있습니다.
여기에서 다음 항목을 확인하고 업데이트할 수 있습니다.
이름: 도구의 이름입니다. 이 이름은 에이전트의 도구 목록에 표시됩니다. 도구의 함수를 명확하게 나타내는 이름을 선택합니다.
설명: 도구에 대한 설명입니다. 생성 오케스트레이션은 이 설명을 사용하여 에이전트가 도구를 사용해야 하는 시기를 결정합니다. 도구가 수행하는 기능과 사용해야 하는 시기를 포함하여 명확하고 구체적인 설명을 작성합니다.
추가 세부 정보:
- 에이전트가 도구를 사용할 시기를 동적으로 결정할 수 있도록 허용합니다. 이 옵션을 선택하면 에이전트는 생성 오케스트레이션을 사용하여 도구를 사용할 시기를 결정할 수 있습니다. 이 옵션을 선택하지 않으면 에이전트는 토픽에서 명시적으로 호출될 때만 도구를 사용합니다. (생성 오케스트레이션을 사용하도록 설정하면 기본적으로 이 옵션이 선택됩니다.)
- 실행하기 전에 최종 사용자에게 질문: 최종 사용자 채팅 환경에서 도구를 실행하기 전에 에이전트에 확인을 요청합니다. 이 옵션은 기본적으로 아니요 로 설정됩니다.
- 인증: 도구에 사용자 또는 제조업체의 자격 증명을 사용할지 여부를 선택합니다. 기본적으로 사용자 인증이 적용됩니다.
- 설명: 필요에 따라 도구를 실행할 때 사용자에게 표시되는 도구에 대한 설명을 추가할 수 있습니다. 이 설명을 통해 사용자는 인증하라는 메시지가 무엇인지 알 수 있습니다.
입력
여기에서 도구에 대한 입력을 보고 구성할 수 있습니다. 입력은 도구에 필요한 입력을 채우기 위해 사용자로부터 정보를 수집하는 데 사용됩니다. 정보는 각 입력에 대해 한 줄씩 테이블로 표시됩니다.
기본적으로 각 입력에 대한 채우기 사용 열 값은 AI로 동적으로 채우기로 설정됩니다. 에이전트는 사용 가능한 컨텍스트(예: 사용자의 메시지)에서 값을 추출하려고 합니다. 적절한 값이 없으면 사용자에게 값을 묻는 질문이 생성됩니다. 사용자 지정을 선택하여 입력 컬렉션 및 채우기에 대한 보다 세분화된 사용자 지정에 액세스합니다.
- 표시 이름 및 설명: 입력이 사용자에게 표시되는 방식입니다.
- 식별 대상: 사용자 응답이 해석되는 방식(예: 텍스트 문자열 또는 미리 정의된 엔터티에 매핑됨).
- 재시도 논리: 에이전트가 사용자 문의 엔터티를 식별하지 않는 경우 질문을 다시 요청할 수 있습니다.
- 입력 유효성 검사: 엔터티 형식에 대한 기본값을 초과하여 사용자 입력에 대한 추가 유효성 검사 동작을 구성합니다.
에이전트에서 추출하도록 하는 대신 명시적 값으로 입력을 재정의하도록 선택할 수도 있습니다. 재정의를 설정하려면 사용하여 채우기를 사용자 지정 값으로 설정하고 값을 입력하거나 변수를 선택하거나 Power FX 수식을 사용합니다. 입력이 재정의된 경우 에이전트는 사용자에게 값을 요청하지 않습니다.
완료
여기서는 도구 실행을 완료할 때 수행하려는 작업을 선택할 수 있습니다.
에이전트가 해당 쿼리 및 도구의 결과에 따라 사용자에 대한 컨텍스트 응답을 자동으로 생성하게 할 수 있습니다.
또는 도구가 반환할 형식을 지정한 특정 응답을 작성하도록 선택할 수 있습니다. 변수 선택기를 사용하여 도구에서 출력 변수에 대한 참조를 삽입할 수 있습니다. Power Fx 수식을 사용하여 응답 형식을 지정할 수도 있습니다.
실행 후 도구가 실행된 후 도구가 사용자에게 응답하는 방법에 대한 몇 가지 다른 옵션 중 하나를 선택합니다.
- 응답하지 않음(기본값): 에이전트는 도구 출력을 응답에 통합합니다.
- 생성 AI를 사용하여 응답 작성: AI가 도구 출력을 사용하여 컨텍스트 응답을 만들 수 있도록 허용
- 특정 응답 보내기: 변수 삽입을 사용하여 템플릿 응답 작성
- 적응형 카드 보내기: 단추 및 작업을 사용하여 풍부한 대화형 응답 만들기
에이전트 및 기타 도구에서 사용할 수 있도록 출력 변수를 구성할 수도 있습니다.
도구 선택 및 입력 컬렉션
Copilot Studio에서 도구를 정의할 때 해당 용도를 설명하는 정보도 제공합니다. 이 정보를 통해 에이전트는 도구를 사용하는 시기를 식별하고 생성 AI를 사용하여 질문을 생성할 수 있습니다. 이러한 질문은 도구를 수행하는 데 필요한 입력을 채우기 위해 정보를 수집하는 데 사용됩니다. 따라서 흐름의 입력과 같이 필요한 모든 입력을 수집하기 위해 질문 노드를 수동으로 작성할 필요가 없습니다. 입력 수집은 런타임에 처리됩니다.
에이전트는 여러 가지 요소를 사용하여 도구 선택을 결정합니다.
- 도구의 이름 및 설명
- 현재 대화 컨텍스트
- 메시지에서 파생된 사용자 의도
- 사용 가능한 입력 및 출력
- 대화의 이전 도구 사용
기본적으로 생성 모드를 사용하는 경우 도구는 에이전트가 사용자의 쿼리에 대한 컨텍스트 응답을 생성할 수 있도록 해당 정보를 에이전트에 다시 반환합니다. 또는 메시지를 생성하거나 명시적 메시지를 작성하여 항상 즉시 응답하도록 도구에 지시할 수 있습니다.
팁
도구에서 생성된 질문을 사용하는 경우 일부 대화가 AI에 의해 생성되었음을 사용자에게 알릴 수 있습니다.
예를 들어 대화 시작 시스템 항목에 추가 메시지를 추가합니다. 이 토픽은 새 대화가 시작될 때 사용자에게 표시되는 메시지를 결정합니다.
토픽 내에서 기존 도구 호출
토픽 내에서 도구를 명시적으로 호출할 수 있습니다. 사용 사례에 따라 더 많은 노드를 사용하는 더 넓은 토픽의 일부로 도구를 사용할 수 있습니다. 또는 날씨 예제와 마찬가지로 토픽에 노드를 추가하는 것이 필요할 수 있습니다.
토픽 내에서 도구를 호출하려면 다음을 수행합니다.
Copilot Studio에서 편집하려는 에이전트의 토픽 페이지로 이동합니다.
새 토픽을 만들고 이름을 날씨 확인으로 지정합니다.
다음 트리거 문구를 추가합니다.
- 비가 올까요
- 오늘의 예보
- 날씨 확인
- 날씨 어때
노드 추가(+)를 선택한 다음, 도구 추가를 선택합니다. 사용 가능한 도구에서 도구를 선택합니다. 다양한 유형의 도구를 보여 주는 세 개의 탭이 있습니다.
- 기본 도구
- 커넥터
- 도구
이제 작업 노드가 토픽에 추가됩니다.
저장을 선택합니다.
도구(MCP 커넥터만 해당)
도구에서 MCP 커넥터에 사용할 수 있는 도구의 이름과 설명을 볼 수 있습니다. 도구는 각 도구에 대해 한 줄씩 표에 표시됩니다. 각 도구에 대해 다음을 확인할 수 있습니다.
- 도구 이름 및 버전
- 입력 및 출력 매개 변수
- 예상 실행 시간
- 사용 현황 통계
도구에 대한 인증 고려 사항
일부 도구는 동적 프롬프트 또는 Dataverse API를 호출하는 다른 도구와 같이 인증이 올바르게 작동해야 합니다. 적절한 인증 구성은 원활한 사용자 환경을 유지하면서 보안을 보장합니다.
도구는 항상 사용자 컨텍스트에서 에이전트의 런타임에서 실행되며 인증을 사용하도록 설정하지 않으면 실행할 수 없습니다. 두 가지 유형의 인증 방법이 지원됩니다.
- 사용자 인증: 에이전트는 사용자의 자격 증명을 사용하여 서비스를 인증합니다. 이 방법을 사용하면 사용자가 볼 수 있는 권한이 있는 데이터에만 액세스할 수 있습니다.
- 부조종사 작성자 인증: 에이전트는 해당 작성자의 자격 증명을 사용하여 서비스를 인증합니다. 공유 리소스 또는 사용자가 개별 액세스 권한이 필요하지 않은 경우 이 인증 모드를 사용합니다.
도구 테스트
생성 오케스트레이션을 사용하면 오케스트레이터가 사용자 쿼리와 관련이 있다고 판단되면 도구를 선택합니다.
또는 토픽 내에서 기존 도구를 호출할 수 있습니다.