자재 분류 시스템 개선 및 통합 분류기 구현
- 통합 분류기 구현으로 키워드 우선순위 체계 적용 - HEX.PLUG → FITTING 분류 수정 (기존 VALVE 오분류 해결) - 플랜지/밸브가 볼트로 오분류되는 문제 해결 (A193, A194 재질 키워드 우선순위 적용) - 피팅 재질(A234, A403, A420) 기반 분류 추가 - 니플 길이 정보 보존 로직 개선 - 파이프 끝단 가공 정보를 구매 단계에서 제외 - PostgreSQL 사용으로 RULES.md 업데이트 - 상호 배타적 키워드 시스템 구현 (Level 1 키워드 우선)
This commit is contained in:
@@ -98,14 +98,19 @@ def classify_pipe(dat_file: str, description: str, main_nom: str,
|
||||
}
|
||||
|
||||
# 2. 파이프 키워드 확인
|
||||
pipe_keywords = ['PIPE', 'TUBE', '파이프', '배관']
|
||||
is_pipe = any(keyword in desc_upper for keyword in pipe_keywords)
|
||||
pipe_keywords = ['PIPE', 'TUBE', '파이프', '배관', 'SMLS', 'SEAMLESS']
|
||||
has_pipe_keyword = any(keyword in desc_upper for keyword in pipe_keywords)
|
||||
|
||||
if not is_pipe:
|
||||
# 파이프 재질 확인 (A106, A333, A312, A53)
|
||||
pipe_materials = ['A106', 'A333', 'A312', 'A53']
|
||||
has_pipe_material = any(material in desc_upper for material in pipe_materials)
|
||||
|
||||
# 파이프 키워드도 없고 파이프 재질도 없으면 UNKNOWN
|
||||
if not has_pipe_keyword and not has_pipe_material:
|
||||
return {
|
||||
"category": "UNKNOWN",
|
||||
"overall_confidence": 0.0,
|
||||
"reason": "파이프 키워드 없음"
|
||||
"reason": "파이프 키워드 및 재질 없음"
|
||||
}
|
||||
|
||||
# 3. 재질 분류 (공통 모듈 사용)
|
||||
|
||||
Reference in New Issue
Block a user