M2-4. 트리거·시스템 토픽 — 토픽은 언제 시작되는가
한 줄 요약 — 생성형 오케스트레이션의 기본 트리거는 The agent chooses(설명 기반), 클래식은 User says a phrase(구문 매칭)입니다. 시스템 토픽은 시작·폴백·종료 등 필수 동작을 담당합니다.
1. 기본 트리거 — 오케스트레이션별
| 오케스트레이션 | 기본 트리거 | 활성화 조건 |
|---|---|---|
| 생성형 | The agent chooses | 토픽 이름·설명이 사용자 메시지와 맞다고 에이전트가 판단 |
| 클래식 | User says a phrase | 트리거 구문 1개 이상이 메시지와 근접 매칭 |
클래식 매칭은 정확 일치가 아니어도 동작합니다 — “check store hours” 구문은 “see store opening hours”에도 트리거됩니다 (자연어 이해).
2. 트리거 종류 11가지
| 트리거 | 언제 실행되나 |
|---|---|
| The agent chooses | 이름·설명을 보고 에이전트가 판단 (생성형 기본) |
| User says a phrase | 트리거 구문 매칭 (클래식 기본) |
| A message is received | 사용자 메시지가 들어올 때마다 |
| A custom client event occurs | 호스트 앱이 커스텀 이벤트를 보낼 때 |
| An activity occurs | 특정 활동(activity) 수신 시 |
| The conversation changes | 대화 참여자·상태가 바뀔 때 (대화 시작 포함) |
| It’s invoked | 다른 토픽·도구가 호출할 때 |
| It’s redirected to | 다른 토픽이 리디렉션할 때 |
| The user is inactive for a while | 지정 시간 동안 응답이 없을 때 |
| A plan completes | 생성형 오케스트레이션이 계획 실행을 마쳤을 때 (생성형 전용) |
| An AI-generated response is about to be sent | 생성형 응답 발송 직전 가로채기 (생성형 전용) — Response.FormattedText로 문구를 다듬고 ContinueResponse로 발송 여부 결정 |
- 트리거 종류는 토픽 뷰의 트리거 태그로 확인할 수 있습니다
- 트리거에는 조건(Condition) 과 우선순위(Priority) 를 지정할 수 있어, 같은 상황에서 여러 토픽이 경합할 때 순서를 통제할 수 있습니다
이벤트 트리거 전제조건 — 이벤트 기반 트리거는 생성형 오케스트레이션이 켜진 에이전트에서만 사용할 수 있고, 실행 시 메이커의 자격 증명만 사용합니다. 또한 solution-aware cloud flow sharing이 활성화되어 있어야 하며, 페이로드 호출 건당 과금됩니다.
화면 구성 예시 — 실제 화면·명칭은 버전에 따라 다를 수 있습니다
3. 트리거 구문 설계 모범 사례
- 토픽당 5~10개 — AI 훈련에 필요한 최소량
- 짧은 구문·키워드 위주 — 긴 문장 지양
- 사용자가 실제로 쓸 표현으로 — 분석(M3-4)에서 실제 발화를 발굴해 보강
- 토픽 간 구문이 겹치지 않게 — 겹치면 잘못된 토픽이 뜨거나 선택지가 표시됨
- 파일 업로드로 일괄 추가(Append)·교체(Replace), 다운로드로 백업 가능
4. 시스템 토픽
새 에이전트에는 필수 동작을 담당하는 시스템 토픽이 미리 들어 있습니다:
| 시스템 토픽 | 역할 |
|---|---|
| Conversation Start | 대화 시작 인사 |
| Conversational boosting | 지식 소스 기반 생성형 답변을 담당 — 생성형 답변 노드를 이미 포함 |
| End of Conversation | 대화 종료·만족도 확인 |
| Escalate | 사람(상담원) 연결 요청 |
| Fallback | 토픽 매칭에 실패했을 때 |
| Multiple Topics Matched | 여러 토픽이 동시에 매칭됐을 때 선택지 제시 |
| On Error | 실행 중 오류 발생 시 |
| Reset Conversation | 대화 초기화 |
| Sign in | 사용자 인증(로그인) 흐름 |
규칙:
- 시스템 토픽은 만들 수 없고 삭제할 수 없지만, 끄거나 수정할 수 있습니다
- 일부 시스템 토픽의 트리거 구문은 커스터마이즈 가능
- 에이전트 빌드에 익숙해지기 전에는 수정하지 않는 것을 권장
5. 폴백 설계 패턴
사용자 메시지
→ 토픽 매칭 실패
→ Conversational boosting 토픽 — 지식 소스로 생성형 답변 시도
→ 그래도 실패 → Fallback 시스템 토픽
→ 재질문 → 반복 실패 시 Escalate (사람 연결)
자주 하는 오해 — “폴백 토픽에 생성형 답변 노드를 직접 넣어야 한다”는 설명은 현행 제품과 맞지 않습니다. 에이전트를 만들면 Conversational boosting 토픽이 자동으로 생성되고 그 안에 생성형 답변 노드가 이미 들어 있으며, 에이전트 수준 지식 소스가 모두 그 노드에 연결됩니다. Fallback은 토픽 매칭과 생성형 답변이 모두 실패한 다음 단계이므로, 여기에는 재질문·에스컬레이션 안내를 두는 것이 맞습니다.
실습 체크리스트
- 토픽 하나의 트리거를 Properties에서 열어 구문 확인·보강
- Conversation Start 시스템 토픽의 인사말을 우리 팀 문구로 수정
- Fallback 동작 확인 — 일부러 엉뚱한 질문 입력
핵심 정리
- 기본 트리거 — 생성형은 설명 기반, 클래식은 구문 매칭. 트리거는 총 11종이며 A plan completes·An AI-generated response is about to be sent는 생성형 전용입니다
- 트리거 구문은 5~10개 짧은 구문 + 실제 발화 기반 보강. 트리거에 조건·우선순위도 지정 가능
- 시스템 토픽은 9개 — 생성형 답변은 Conversational boosting이, 토픽 매칭 실패는 Fallback이 담당
- 시스템 토픽은 끄기·수정만 가능 — 익숙해진 뒤 폴백부터 다듬으세요
M2 빌드로 · 다음: M2-5. 엔터티·변수·조건
출처: Set topic triggers (MS Learn) · About triggers (MS Learn) · Use system topics (MS Learn) · Design effective trigger phrases (MS Learn)