Question Classifier 노드 — 질문을 분류해 경로 라우팅

Question Classifier 노드 — 질문을 분류해 경로 라우팅

Question Classifier 노드는 사용자 입력을 지능적으로 분류해 대화를 서로 다른 워크플로 경로로 보냅니다. 복잡한 조건 로직을 만드는 대신, 클래스를 정의하고 LLM이 의미 이해(semantic understanding)에 기반해 어느 것이 가장 잘 맞는지 판단하도록 맡기는 방식이에요.

출처: 공식문서 — Question Classifier Node

설정

입력과 모델 설정

Input Variable — 무엇을 분류할지 선택합니다. 보통 sys.query로 사용자 질문을 쓰지만, 이전 워크플로 노드의 어떤 텍스트 변수든 쓸 수 있어요.

Model Selection — 분류를 위한 LLM을 고릅니다. 단순한 클래스에는 빠른 모델이 잘 동작하고, 미묘한 차이를 구분해야 한다면 더 강력한 모델이 낫습니다.

클래스 정의

각 클래스는 서로 독립적인 두 개의 텍스트로 구성됩니다.

  • 클래스 설명(에디터 본문)은 분기를 고를 때 LLM이 읽는 내용입니다. 그 클래스에 무엇이 속하는지 정확하고 구별되는 설명을 작성하세요. 클래스가 겹칠 때 "~와 관련된 모든 것"이나 "~는 제외" 같은 경계 표현이 도움이 됩니다. 다운스트림에서 class_name으로 노출돼요.

  • 클래스 제목(에디터 위의 작은 제목)은 캔버스에 표시되는 라벨입니다. 기본 CLASS N 제목을 더블클릭해 이름을 바꿀 수 있습니다. 다운스트림에서 class_label로 노출됩니다.

제목과 설명은 독립적으로 편집되므로, 캔버스에는 짧고 훑기 쉬운 라벨을 두고 LLM에는 더 길고 구체적인 설명을 줄 수 있어요.

각 클래스는 잠재적 출력 경로가 되어, 전용 지식 베이스, 응답 템플릿, 처리 워크플로 같은 다른 다운스트림 노드에 연결할 수 있습니다.

분류 예시

고객 서비스 시나리오에서 Question Classifier가 어떻게 동작하는지 살펴봅니다.

정의된 클래스

  • After-sales service — 보증 클레임, 반품, 수리, 구매 후 지원
  • Product usage — 설정 안내, 문제 해결, 기능 설명
  • Other questions — 특정 클래스로 커버되지 않는 일반 문의

분류 결과

  • "How to set up contacts on iPhone 14?" → Product usage
  • "What is the warranty period for my purchase?" → After-sales service
  • "What's the weather like today?" → Other questions

각 분류 결과는 서로 다른 지식 베이스와 응답 전략으로 라우팅되어, 사용자가 관련성 높고 전문화된 도움을 받도록 보장합니다.

고급 설정

지시와 가이드라인

Instructions 필드에 상세한 분류 지침을 추가해 엣지 케이스, 모호한 시나리오, 특정 비즈니스 규칙을 처리할 수 있습니다. 이는 LLM이 클래스 간 미묘한 차이를 이해하게 도와줘요.

더 알아보기