관련 콘텐츠 : 챗봇 데이터 관리: 데이터 설계를 통한 관리 시스템 구축
챗봇 설계에 앞서 실무자들은 사용자가 입력할 만한 질문을 먼저 모으곤 합니다. 다양한 표현에 대한 인텐트가 세분화되어야 정확도가 높아질 것이라 생각하기 때문입니다. 하지만, 실제 운영에서는 기대와는 다른 상황이 펼쳐질 수 있습니다. 비슷한 학습문장이 여러 인텐트에 흩어지면서 모델이 어느 쪽으로 분류해야 할지 헷갈릴 수 있고 실무자도 새 질문이 들어올 때마다 기존 인텐트에 넣을지, 새 인텐트를 만들지 다시 판단해야 하기 때문입니다. 따라서, 인텐트 설계의 시작은, 다양한 표현의 질문을 모으는 것이 아니라 사용자의 표현을 어떤 답변과 업무 처리 경로로 보낼 것인지를 정하는 것입니다.
질문보다 답변이 인텐트를 결합니다
인텐트 설계는 보통 고객사가 원하는 답변과 학습문장을 함께 정리하는 데서 시작합니다. 하나의 후보 인텐트마다 제공할 답변을 정의하고, 사용자가 입력할 법한 학습문장을 수집합니다. 하지만 학습문장만 보고 인텐트를 나누기 시작하면 구조가 쉽게 흔들립니다. 예를 들어 교육 안내 챗봇에 아래와 같은 질문이 들어왔다고 가정해 보겠습니다.
모두 교육에 관한 질문이지만 처리해야 하는 업무는 다릅니다. 앞의 두 질문은 교육 목록 안내로 처리할 수 있지만, 교육 신청은 신청 절차를 안내해야 하고, 필수 교육 확인은 사용자의 직무나 역할에 따라 답변이 달라질 수 있습니다. 이처럼 질문만 보면 모두 교육 문의처럼 보이지만, 실제로는 서로 다른 답변과 처리 경로가 필요합니다. 중요한 것은 질문보다 답변과 처리 경로를 먼저 보는 것입니다.
같은 답변으로 처리할 수 있는가
같은 업무 흐름으로 연결되는가
답변을 달라지게 만드는 조건이 있는가
학습문장은 사용자의 표현 범위를 보여주고, 답변은 인텐트가 책임져야 하는 업무 범위를 보여줍니다. 좋은 인텐트 설계는 질문을 많이 모으는 것이 아니라, 같은 답변과 처리 경로를 어디까지 하나의 인텐트가 책임질 것인지 결정하는 것에서 시작됩니다.
합칠지 나눌지는 답변 기준으로 판단합니다
인텐트를 합칠지 나눌지 판단할 때는 질문의 표현보다 응답 패턴과 처리 경로를 먼저 확인해야 합니다. 여기서 응답 패턴은 어떤 정보를 확인하고, 어떤 내용을 안내하며, 이후 어떤 단계로 연결되는지를 의미합니다. 예를 들어 아래 이미지의 첫 번째와 두 번째 질문은 표현은 다르지만 모두 현재 개설된 교육을 안내한다는 같은 응답 패턴을 가집니다.
두 질문 모두 현재 제공 가능한 교육 목록을 안내하고 사용자가 필요한 교육을 선택하도록 연결한다면, 하나의 인텐트로 관리하는 편이 효율적입니다. 반대로 세 번째 질문은 사용자의 직무나 역할을 확인한 뒤 필수 교육 여부를 판단해야 하고, 네 번째 질문은 신청 절차와 경로를 안내해야 합니다. 질문의 주제는 같아 보여도 확인해야 할 정보와 처리 방식이 다르기 때문에 별도의 인텐트나 조건값 분기를 검토해야 합니다.
실무에서는 질문이 얼마나 비슷한지보다 응답 패턴과 후속 처리 경로가 얼마나 같은지를 먼저 판단합니다. 같은 정보를 확인하고 비슷한 내용을 안내하며 이후 처리 방식도 같다면 병합을 검토할 수 있습니다. 반대로 확인해야 할 정보나 답변 구성, 후속 처리 경로가 달라진다면 인텐트를 분리하는 편이 적절합니다.
같은 대상을 여러 방식으로 표현하는 경우에는 별도 인텐트를 만들기보다 엔터티로 관리하는 편이 효율적입니다. 예를 들어 관리자 대상 교육, 관리자 교육, 관리자 과정, 책임자 과정이 모두 같은 대상을 의미한다면 관리자 대상 교육을 대표값으로 정하고, 나머지 표현은 동의어로 관리하면 됩니다.
정리하면 표현 차이는 엔터티로 관리하고, 답변 차이는 인텐트 분리나 조건값 분기로 해결합니다. 이 기준이 있어야 인텐트는 불필요하게 늘어나지 않고, 필요한 답변만 정확하게 분기할 수 있습니다.
새로운 질문은 기존 구조에서 먼저 해결합니다
사용자의 목적은 같지만 일부 조건에 따라 답변이 달라지는 경우가 있습니다. 이런 상황까지 모두 별도 인텐트로 만들면 구조가 복잡해집니다.
예를 들어 교육 안내 챗봇에서 기본 인텐트는 교육 안내로 두고, 교육유형 같은 조건값에 따라 답변을 분기할 수 있습니다. 사용자가 교육명을 말하지 않았다면 선택지를 안내하고, 특정 교육을 언급했다면 해당 교육에 맞는 답변으로 연결하는 방식입니다. 실무에서는 아래 기준으로 판단합니다.
운영 로그도 같은 기준으로 분석합니다. 반복적으로 등장하는 질문이 있다고 해서 바로 신규 인텐트를 만드는 것이 아니라, 기존 구조로 처리하지 못한 이유부터 확인해야 합니다.
학습문장이 부족한가
엔터티의 동의어가 누락되었는가
조건값 분기가 필요한가
답변 정책이나 안내 문구가 변경되었는가
기존 구조로 처리하기 어려운 새로운 업무인가
앞의 문제라면 학습문장이나 엔터티, 조건값을 보완하면 됩니다. 반대로 기존 구조로 해결하기 어렵고 새로운 업무가 반복적으로 발생한다면 그때 신규 인텐트를 검토합니다. 결국 신규 인텐트는 가장 먼저 만드는 것이 아니라, 기존 구조로 해결할 수 있는 방법을 모두 검토한 뒤 선택하는 마지막 수단이어야 합니다.
📄
마무리하며
챗봇 인텐트 설계의 핵심은 질문을 많이 모으는 것이 아니라 운영 가능한 구조를 만드는 것입니다. 처음 설계한 인텐트가 명확해야 새로운 질문이 들어와도 같은 기준으로 일관되게 판단할 수 있습니다. TEXTNET은 인텐트를 설계할 때 다음과 같은 기준을 적용합니다.
질문보다 답변과 업무 처리 경로를 먼저 확인합니다.
응답 패턴 및 처리 경로를 기준으로 인텐트 병합 여부를 판단합니다.
표현 차이는 엔터티, 같은 목적 안에서 답변만 달라지는 경우는 조건값으로 관리합니다.
운영 로그에서는 신규 인텐트를 만들기보다 기존 인텐트 확장, 엔터티 보강, 조건값 추가로 해결할 수 있는지 먼저 검토합니다.
이러한 기준이 있으면 새로운 질문이 들어와도 인텐트를 무분별하게 늘리지 않고, 기존 구조 안에서 일관되게 관리할 수 있습니다.
챗봇 운영에서 중요한 것은 새로운 질문이 들어오는 것이 아닙니다. 그 질문을 어떤 기준으로 처리할 것인지 결정할 수 있는 구조를 갖추는 것입니다. 답변과 처리 경로를 중심으로 인텐트를 설계하면 구축 이후에도 기존 인텐트를 확장할지, 조건값을 추가할지, 새로운 인텐트가 필요한지를 같은 기준으로 판단할 수 있습니다. 결국 이러한 구조가 장기적인 운영 품질과 유지보수 효율을 결정합니다.
TEXTNET은 기업의 업무 문서, FAQ, 상담 로그를 기반으로 인텐트 구조와 답변 경로를 함께 설계합니다. 구축 단계뿐 아니라 운영 단계까지 고려한 챗봇을 설계하고 싶다면 아래 서비스를 확인해 보세요.