도구 — 토픽과 변수
| 시간 | 소요 | 수강생 역할 |
|---|---|---|
| 13:10 | 45분 | 🟢 직접 실습 |
목차
- 이 모듈에서 배우는 것
- Topic = 대본
- 변수 = 포스트잇
- 실습 ①: 메아리(Echo) Topic 만들기
- 실습 ②: Contact Topic 만들기
- 실습 ③: STRICT RULES 추가
- Topic 선택 우선순위
- 테스트
- 핵심 정리
- FAQ
- 참조 자료

이 모듈에서 배우는 것
- Topic = 대본 비유 이해
- 변수 = 포스트잇 비유 이해
- 메아리(Echo) Topic으로 토픽의 동작 원리 체험 — “아, 토픽의 설명으로 채택되어 동작하는 구나”
- Contact Topic으로 사용자 인터랙션이 있는 토픽 만들기
- 지침에 STRICT RULES 추가하여 Topic 호출 조건 설정
Topic = 대본
Topic은 특정 상황에서 에이전트가 어떻게 행동할지 정해놓은 대본입니다.
생성형 오케스트레이터가 사용자의 질문을 보고, 상황에 맞는 대본을 자동으로 선택해서 실행합니다.
변수 = 포스트잇
변수는 대화 중 필요한 정보를 메모해 두는 포스트잇입니다.
나중에 다른 Topic이나 Flow에서 꺼내 씁니다.
사용자: "경비처리 담당자 알려줘"
↓
오케스트레이터: Contact Topic 호출 판단
↓
Topic: "담당자 찾기 대본 실행"
↓
📝 포스트잇: Global.Contact_result = [담당자: 홍길동 / 연락처: 010-1234]
↓
오케스트레이터: 지침에 따라 Global.Contact_result를 활용하여 답변 생성
↓
사용자: "아까 찾은 담당자한테 문의 넣어줘"
↓
Flow: 포스트잇의 정보를 사용해서 실행
Topic은 정보를 수집하고, 오케스트레이터가 답변합니다. 이렇게 하면 답변의 내용과 스타일을 오케스트레이션 모델에게 맡길 수 있고, 복합적인 질문에도 유연하게 대응하는 AI 챗봇다운 대화가 가능해집니다.
글로벌 변수 vs 일반 변수
| 구분 | 유지 범위 | 비유 |
|---|---|---|
| 글로벌 변수 | 모든 대본에서 공유 | 가슴에 붙인 포스트잇 |
| 일반 변수 | 해당 대본 안에서만 | 대본 속 포스트잇 |
오늘은 글로벌 변수만 사용합니다. 더 편하고, 이후 모듈에서 Flow 연결에 필요합니다.
실습 ①: 메아리(Echo) Topic 만들기
토픽이 어떻게 동작하는지 이해하기 위해, 아주 간단한 메아리(Echo) Topic을 만들어봅니다.
사용자가 특정 유형의 질문을 하면 이 토픽이 자동으로 채택되어 실행되는 것을 직접 확인합니다.
이 실습의 핵심은 “아, 토픽의 설명(Description)에 맞는 질문이 들어오면 자동으로 이 토픽이 선택되어 동작하는구나”를 체험하는 것입니다.
📌 이 실습은 별도 페이지에서 진행합니다.
실습 ①: 메아리(Echo) Topic 만들기를 완료하고 돌아오세요.
실습 ②: Contact Topic 만들기
메아리 Topic으로 동작 원리를 이해했으니, 이제 실무에 가까운 Contact Topic을 만듭니다.
간단한 메시지와 사용자 질문 인터랙션을 담은 토픽입니다.
📌 이 실습은 별도 페이지에서 진행합니다.
실습 ②: Contact Topic 만들기를 완료하고 돌아오세요.
실습 ③: STRICT RULES 추가
📌 이 실습은 별도 페이지에서 진행합니다.
실습 ③: STRICT RULES 추가를 완료하고 돌아오세요.
Topic 선택 우선순위
질문이 겹쳐 보일 때는 더 구체적인 의도를 우선합니다.
| 질문 유형 | 우선 Topic | 이유 |
|---|---|---|
| “담당자 알려줘”처럼 연락처 조회 | Contact Topic | 담당자 정보 반환이 목적 |
| “안녕하세요”처럼 인사나 간단한 대화 | Echo Topic | 메아리 응답 확인 |
| 둘 다 섞여 애매한 질문 | 오케스트레이터가 판단 | 적절한 Topic 자동 선택 |
M13에서 에이전트 흐름(HR_Request)이 추가되면, “문의 넣어줘”처럼 실제 행동을 요청하는 문장은 STRICT RULES에 의해 흐름이 우선 호출되도록 확장합니다.
테스트
3가지 질문으로 Topic이 올바르게 동작하는지 확인하세요:
| # | 질문 | 기대 동작 |
|---|---|---|
| 1 | Echo Topic의 설명에 해당하는 질문 | Echo Topic 호출 → 메아리 응답 확인 |
| 2 | “경비처리 담당자 알려줘” | Contact Topic 호출 → 담당자 정보 인터랙션 |
| 3 | “아까 찾은 담당자한테 문의하고 싶어” | 포스트잇(글로벌 변수) 활용 확인 |
핵심 정리
- Topic = 대본 — 상황별 에이전트 행동 시나리오
- 변수 = 포스트잇 — 대화 중 정보 메모, 나중에 활용
- STRICT RULES — Topic이 언제 호출되는지 명확하게 지정
- Topic은 정보를 수집하고, 말하는 것은 오케스트레이터 — 답변의 스타일과 형식을 AI에게 맡김
복붙이지만 중요한 건 “포스트잇에 뭔가를 메모하고 있구나”를 느끼는 것입니다.
FAQ
| 질문 | 답변 |
|---|---|
| Topic을 몇 개까지 만들 수 있나요? | 제한은 많지 않지만, 역할이 명확한 Topic 위주로 만드세요. |
| Topic과 지침이 충돌하면? | STRICT RULES가 우선합니다. 여러 Topic 후보가 동시에 맞으면 더 구체적인 요청을 우선하고, 애매하면 재질문하세요. |
| 변수 이름은 아무거나 해도 되나요? | 네. 단, Global. 접두사가 있으면 글로벌 변수입니다. |
| 메시지 노드로 직접 보내면 안 되나요? | 가능은 하지만, 그러면 답변 형식이 Topic에 고정됩니다. 글로벌 변수에 저장하고 오케스트레이터에게 맡기면 복합 질문에도 유연하게 대응할 수 있습니다. |
참조 자료
| 자료 | 링크 |
|---|---|
| Topics 개요 | learn.microsoft.com |
| 변수 사용 가이드 | learn.microsoft.com |
| 글로벌 변수 | learn.microsoft.com |
다음 모듈: M11. 게시와 공유