Skip to main content
대화 노드는 대화 흐름에서 가장 일반적으로 사용되는 노드 타입입니다. 사용자와 대화하는 노드입니다. 이 노드 내에서 에이전트는 어떤 함수도 호출하거나 액션을 수행하지 않습니다. 에이전트는 하나의 노드 내에서 여러 턴의 대화를 진행할 수 있으므로, 에이전트가 말해야 하는 모든 문장에 대해 새로운 대화 노드를 생성할 필요는 없습니다. 로직이 분기되거나 지시사항이 너무 길어질 때 노드를 분리하는 것이 좋습니다.

프롬프트 타입

노드 내에서 에이전트가 따라야 할 지시사항을 작성하는 방법을 선택할 수 있습니다:

동적 프롬프트

에이전트가 동적으로 대화 내용을 생성할 수 있도록 프롬프트를 작성합니다.

고정 발화

에이전트가 먼저 말할 고정된 문장을 설정합니다. 이후 같은 노드에 머무를 경우, 설정된 고정 문장을 기반으로 내용을 동적으로 생성합니다.

반복 조건

반복 조건은 다음 노드로 이동하려면 반드시 충족해야 하는 조건입니다. 조건이 충족되지 않으면 에이전트가 이 노드에 머무르며 조건 달성을 유도합니다.

작성 방법

반복 조건은 자연어로 작성하며, 여러 조건이 있을 경우 조건별로 나열합니다. 하나의 조건만 충족되면 다음 노드로 이동하도록 OR 구조로 작성하는 것이 일반적입니다.
고객의 이름과 본인 확인 정보를 수집해야 하는 노드:
다음 조건 중에 하나가 만족 되어야 합니다.

- 조건 1) 고객이 성함과 휴대전화 뒤 네자리를 말함
- 조건 2) 고객이 주문을 하지 않았다고 함
고객 동의를 받되, 반복 거부 시 무한 루프를 방지하는 패턴:
다음 조건 중에 하나가 만족 되어야 합니다.

- 조건 1) 고객이 동의함
- 조건 2) 고객이 동의하지 않음 + 3회 이상 재확인을 함
동적 변수의 값과 고객 응답을 대조하는 패턴:
다음 조건 중에 하나가 만족 되어야 합니다.

- 조건 1) 고객이 답한 학습자 성별이 {{learner_gender}}과 일치함
- 조건 2) 불일치 + 4회 이상 재확인을 함
병원 예약처럼 여러 항목을 한꺼번에 수집해야 하는 경우:
환자가 이름, 예약 날짜와 시간을 명확하게 제시할 때까지 반복합니다.
거부/불일치 시 재확인 횟수 제한을 두면 고객이 반복 질문에 불쾌감을 느끼는 것을 방지할 수 있습니다.

노드별 지식 베이스

이 노드에 특정 지식 베이스를 연결할 수 있습니다. 연결된 지식 베이스는 이 노드에서 대화할 때만 참조되므로, 노드의 주제에 맞는 정보만 제공하여 응답 정확도를 높일 수 있습니다.
지식 베이스 생성 및 관리 방법은 지식 베이스 개요를 참조하세요.

노드 설정

글로벌 노드

이 노드를 글로벌 노드로 활성화할 수 있습니다. 글로벌 노드로 설정하면 어떤 노드에서든 이 노드로 전환할 수 있습니다. 자세한 내용은 글로벌 노드에서 확인하세요.

응답 건너뛰기

활성화하면 사용자 응답을 기다리지 않고 에이전트가 말을 마친 후 즉시 다음 노드로 이동합니다. 전환에 연결할 수 있는 에지가 하나만 생기며, 에이전트가 면책 조항과 같은 내용을 말하고 사용자의 응답 없이 다음 노드로 넘어가야 할 때 유용합니다.

끼어들기 허용

에이전트 발화 중 사용자가 끼어들 수 있는지를 설정합니다. 비활성화하면 에이전트가 발화를 완료할 때까지 사용자의 입력을 무시합니다.

노드별 LLM 오버라이드

이 노드에서 다른 LLM 모델을 사용할 수 있습니다. 글로벌 설정의 기본 모델 대신 이 노드에 특화된 모델을 지정하여, 특정 대화 시나리오에 더 적합한 모델을 선택할 수 있습니다.

전환 조건

다음과 같은 경우에 전환조건을 판단하여 전환여부를 결정합니다:
  • 사용자가 말을 마쳤을 때
  • ‘응답 건너뛰기’가 활성화되어 있고 에이전트가 말을 마쳤을 때

전환 조건 예시

실제 운영에서 자주 사용되는 전환 조건 패턴입니다. 전환 조건은 자연어로 작성하며, 각 조건이 명확하게 구분되도록 작성하는 것이 중요합니다.

통화 가능 여부 확인

아웃바운드 전화에서 고객의 통화 가능 여부를 먼저 확인하는 패턴입니다.
- 통화 가능: 고객이 '네', '괜찮아요', '가능해요' 등 통화 가능을 말한 경우.
- 통화 불가능: 고객이 '지금은 어려워요' 또는 '나중에 연락 주세요' 등 통화 불가를 명확히 말한 경우.
- 강한 거절 종료: 고객이 '관심 없어요' 또는 '전화하지 마세요' 등 통화를 확정 거절한 경우.
- 본인 아님: 고객이 '저 아니에요' 또는 '잘못 거셨습니다'처럼 본인 아님을 명확히 말한 경우.
통화 가능/불가 외에 강한 거절본인 아님을 별도 분기로 두면, 각 상황에 맞는 종료 멘트를 설정할 수 있습니다.

의사 결정 분기

고객의 의향이나 결정을 확인하는 패턴입니다.
- 참여 의향 있음: 고객이 참여하겠다고 말한 경우.
- 참여 의향 없음: 고객이 참여하지 않겠다고 명확히 말한 경우.
- 고민 중: 고객이 결정을 보류하거나 더 생각해보겠다고 말한 경우.

도움 요청 분기

고객이 도움을 원하는지에 따라 분기하는 패턴입니다.
- 유저가 도움을 요청한 경우
- 유저가 도움이 필요하지 않은 경우

본인 인증 (DTMF)

고객이 입력한 DTMF 번호로 본인 확인을 하는 패턴입니다.
- 고객이 입력한 DTMF 번호 6자리가 {{생년월일}}과 일치한다면
- 고객이 동의한다면

대화 노드, conversation node, 반복 조건, 프롬프트 타입, 고정 발화, 응답 건너뛰기, 끼어들기