사전 분류 - Entity Enricher 문서

사전 분류

사전 분류는 강화가 시작되기 전에 엔터티가 예상 스키마 유형과 일치하는지 확인합니다. 이 선택적 단계는 엔터티가 스키마와 일치하지 않을 때 환각과 토큰 낭비를 방지합니다.

보강 전에 분류하는 이유는?

LLM은 도움을 주려는 성향이 강합니다. 스키마에 따라 엔티티를 보강하도록 요청받으면, 엔티티가 스키마 유형과 전혀 일치하지 않더라도 구조화된 출력을 생성합니다. 이로 인해 그럴듯해 보이지만 완전히 틀린 환각 데이터가 생성됩니다.

환각 문제
분류 없음

스키마: “Planet” — 엔터티: “Titan”

LLM은 Titan을 행성으로 취급하여 데이터를 지어냅니다: 공전 주기, 대기 구성, 위성 수 — 모두 그럴듯해 보이지만 틀렸습니다. Titan은 실제로 토성의 위성입니다.

분류 사용

분류가 감지합니다: “불일치 — Titan은 행성이 아니라 위성입니다”

강화 모델은 이 컨텍스트를 받아 관련 없는 필드는 null로 설정하고, 실제로 엔터티에 해당하는 속성만 채웁니다.

작동 방식

분류는 보강 모델이 시작되기 전에 단일의 빠른 LLM 호출로 실행됩니다. 비용을 최소화하기 위해 저렴하고 빠른 모델(예: Claude Haiku 또는 GPT-4o Mini)을 사용합니다.

1
schema 유형과 entity 데이터를 전송합니다
분류 모델은 스키마 이름, 설명, 엔터티 데이터(비용 절감을 위해 3,000자로 잘림)를 받습니다.
2
구조화된 분류 받기
모델은 상태(match, mismatch, unknown 또는 ambiguous), 엔터티가 실제로 무엇인지에 대한 설명, 신뢰 수준, 추론을 포함한 구조화된 응답을 반환합니다.
3
보강에 컨텍스트 주입
분류 결과는 “Pre-flight Classification” 섹션으로 모든 강화 프롬프트 앞에 추가됩니다. 이를 통해 강화 모델은 엔터티 유형에 대한 중요한 컨텍스트를 얻습니다.

네 가지 classification 상태

일치

엔터티가 스키마 유형과 일치합니다. 높은 신뢰도로 강화가 진행됩니다.

프롬프트 효과
엔티티 유형을 확인하고 강화 모델에 추가 컨텍스트를 제공합니다.
예시
스키마 "Pharmaceutical Company", 엔터티 "Sanofi" — 제약 회사로 확인되었습니다.
불일치

엔터티가 스키마가 기대하는 것과 다른 유형입니다. 분류는 엔터티가 실제로 무엇인지 설명합니다.

프롬프트 효과
엔터티가 일치하지 않음을 강화 모델에 경고합니다. 관련 없는 필드에는 null을 사용하도록 지시합니다.
예시
스키마 "Planet", 엔터티 "Titan" — 행성이 아니라 토성의 위성으로 확인되었습니다.
알 수 없음

엔터티를 확실하게 식별할 수 없습니다. LLM에 분류할 충분한 정보가 없습니다.

프롬프트 효과
확실하지 않을 때 추측하지 않고 null을 사용하도록 enrichment model에 지시합니다.
예시
스키마 "Pharmaceutical Company", 엔터티 "XYZ Corp" — 엔터티 유형을 판단하기에 정보가 충분하지 않습니다.
모호함

유효한 해석이 여러 개 존재합니다. 분류가 대안을 나열합니다.

프롬프트 효과
가능한 해석을 나열하고 보강 모델에게 가장 가능성 높은 것을 선택하도록 요청합니다.
예시
스키마 "Company", 엔터티 "Mercury" — 행성일 수도, 원소일 수도, 또는 Mercury Insurance일 수도 있습니다.

키 속성

논블로킹

분류는 순전히 참고용입니다. 어떤 이유로든(모델 오류, 시간 초과, 속도 제한) 분류 호출이 실패하면, 보강은 분류 컨텍스트 없이 정상적으로 진행됩니다. 이를 통해 선택적인 분류 단계가 보강 완료를 방해하지 않도록 보장합니다.

비용 효율적

분류는 빠르고 저렴한 모델에서 실행되도록 설계되었습니다. 최소한의 페이로드(스키마 이름, 설명, 잘린 엔티티 데이터)를 전송하고 작은 구조화된 응답을 기대합니다. 일반적인 비용은 보강 자체의 일부에 불과하며, 정확도 향상을 위해 충분히 가치가 있습니다.

실시간 피드백

UI는 Server-Sent Events를 통해 분류 진행 상황을 실시간으로 표시합니다. 확인이 시작되면 classification_started 이벤트가 발생하고, 이어서 상태, 신뢰도, 엔터티 설명을 담은 classification_completed 이벤트가 발생합니다. 결과는 모델 결과 위에 배너로 표시됩니다.

취소 가능

분류 단계에서 강화를 취소하면 작업이 즉시 중지되며 강화 모델이 시작되지 않습니다. 불필요한 토큰이 소비되지 않습니다.

분류를 활성화하는 경우

추천
  • 좁은 엔터티 유형을 가진 스키마 (예: “Pharmaceutical Company”)
  • 혼합된 엔티티 유형이 포함될 수 있는 입력 데이터
  • 다양한 소스의 엔티티를 사용한 배치 보강
  • 고비용 강화 모델을 사용하며 낭비를 피하고 싶은 경우
불필요함
  • 모든 엔터티를 허용하는 범용 스키마 (예: “Organization”)
  • 엔티티 유형을 직접 제어하는 선별된 입력 데이터
  • 정확성보다 속도가 더 중요한 빠른 반복 작업
  • 명확한 엔터티 유형 정의가 없는 스키마

활성화 방법

스키마 편집기 또는 배치 강화 사이드바에서 "분류" 드롭다운을 찾으세요. 빠르고 저렴한 모델(Claude Haiku, GPT-4o Mini 또는 유사 모델)을 선택하세요. 각 엔터티에 대해 강화가 시작되기 전에 분류가 자동으로 실행됩니다.

REST API를 사용할 때는 강화 요청에 모델의 복합 키(예: anthropic::claude-haiku-4-5)와 함께 classification_model 필드를 포함하세요.