IPRisGuard DevTools

감시 엔진 디버그 — WatchEngine 직접 호출. KIPRIS 실제 API 사용.

감시 디버그 화면
고객의 등록 상표(감시 대상)와 매일 새로 출원공고되는 상표를 비교하여 혼동 위험을 탐지하는 감시 파이프라인의 전체 흐름을 스텝별로 확인합니다.
  1. 감시 상표 등록 — 테스트할 감시 대상 상표를 미리 등록합니다.
  2. 일별 스캔 — 날짜 + 감시 상표를 선택하면 W1(수집) → W2(필터 퍼널) → W3(유사도) → W4(부스트)를 실행합니다.
  3. 단건 상세 — 특정 (감시상표 × 출원상표) 쌍의 세부 분석을 확인합니다.
  4. 모델 개별 — 6요소 분석에 사용되는 개별 모델을 따로 테스트합니다.
모든 API 호출은 실제 WatchEngine실제 KIPRIS API를 사용합니다.
일별 스캔
감시 상표
단건 상세
모델 개별

SCAN 일별 스캔 실행

일별 스캔 — 전체 파이프라인 실행
날짜를 선택하면 해당 날짜에 출원공고된 모든 상표를 KIPRIS에서 수집하고, 선택한 감시 상표와 비교합니다.
각 스텝을 거치며 리스트가 줄어드는 퍼널(funnel) 형태로 결과를 표시합니다.
각 스텝 상세 설명 보기
W1 — KIPRIS 일별 출원공고 수집
KIPRIS getAdvancedSearch API로 해당 날짜에 출원공고된 상표를 전수 수집합니다. 평균 200~400건, 최대 5,000건까지 페이징 처리합니다. 공고 상태(publication=true)만 필터링하여 감시 대상이 되는 건만 가져옵니다.

W2 — 4단계 사전 필터 (Prefilter)
수집된 수백 건을 모두 AI로 분석하면 비용이 크므로, 명백히 비유사한 상표를 빠르게 제외합니다.
- Stage 1 NICE: 지정상품 분류(류)가 겹치지 않으면 제외. 예: 의류(25류)와 소프트웨어(9류). 저명상표는 이 단계를 건너뜁니다(상표법 §34 제1항 제9호/제11호).
- Stage 2 Trigram: 상표명을 3글자 단위로 잘라 겹치는 비율(Jaccard)이 0.15 미만이면 제외.
- Stage 3 초성: 한글 초성(ㄱ,ㄴ,ㄷ...)만 뽑아 편집거리 기반 유사도가 0.30 미만이면 제외.
- Stage 4 비엔나: 도형 상표의 대분류(2자리) 코드가 겹치지 않으면 제외. 한쪽에 비엔나 코드가 없으면 통과(보수적).

W3 — 6요소 유사도 분석 (compute_pair_similarity)
prefilter를 통과한 건에 대해 KIPRIS 서지상세 API로 유사군코드/상품/이미지를 보강한 후, 6가지 요소를 분석합니다.
- 칭호(phonetic): 한글 자모 가중 편집거리 + 초성 비교. 영문은 Metaphone + Jaro-Winkler.
- 외관-텍스트(visual_text): Levenshtein(0.4) + Jaro-Winkler(0.3) + Bigram Jaccard(0.3).
- 외관-이미지(visual_image): DINOv3 ViT-B/16 Siamese 모델. CLS 토큰(30%) + Patch MaxSim(70%).
- 관념-텍스트(conceptual_text): KoSimCSE-roberta 임베딩 코사인 유사도.
- 관념-이미지(conceptual_image): SigLIP 2 크로스모달 임베딩. 텍스트↔이미지 간 의미 비교.
- 상품(goods): KIPO 유사군코드 교집합(1.0/0.5) + TF-IDF 텍스트 보강.
6요소를 상표 유형(문자/도형/결합)별 가중치로 합산. 대법원 90후588 보정: 단일 요소 >=0.85이고 상품 >=0.50이면 종합 점수 상향.

W4 — 감시 전용 부스트
감시에는 선행조사의 TM-4(LLM 법적 판단)가 없으므로, 극고유사 상표를 놓치지 않기 위한 안전장치입니다. 6요소 중 어느 하나가 0.90 이상이고 상품 유사도가 0.50 이상이면, 종합 점수를 0.95(CRITICAL)까지 끌어올립니다.

위험 등급: CRITICAL(>=0.92) / HIGH(>=0.82) / MEDIUM(>=0.70) / LOW(>=0.55) / NONE(<0.55)

LOOKUP 사업자번호/법인번호 → 특허고객번호 조회

사업자등록번호 또는 법인번호로 특허고객번호 조회
KIPRIS CorpBsApplicantService API로 사업자등록번호 또는 법인번호에 매핑된 특허고객번호를 조회합니다.
조회된 특허고객번호로 아래 상표 검색을 진행하면 해당 법인의 상표를 정확하게 찾을 수 있습니다.

SEARCH 출원인/대리인 상표 검색 (KIPRIS)

출원인명/대리인명/특허고객번호로 상표 검색
KIPRIS에서 특정 출원인 또는 대리인이 관련된 상표를 검색합니다. 검색 결과에서 선택하여 감시 상표로 일괄 등록할 수 있습니다.
검색 방법 안내
출원인 검색 — 회사명/개인명 또는 특허고객번호로 검색합니다. 예: "삼성전자", "119980018012".
대리인 검색 — 대리인(특허법인/변리사)명 또는 대리인번호로 검색합니다.
사업자번호/법인번호 — 위 LOOKUP 카드에서 먼저 특허고객번호를 조회한 후, 그 번호로 검색하세요.
상태 필터 — "등록만"은 현재 유효한 등록 상표만, "출원+등록+공고"는 진행 중인 건도 포함합니다.

TARGET 수동 등록

LIST 등록된 감시 상표

SCREEN 단건 상세 분석 — WatchEngine.screen()

단건 상세 — 특정 (감시상표 x 출원상표) 쌍 분석
감시 대상 상표와 신규 출원 상표 1쌍의 전체 분석 결과를 확인합니다.
출원번호를 입력하면 KIPRIS에서 서지사항(유사군코드, 상품, 이미지)을 자동으로 가져옵니다.
WatchEngine.screen() 내부 처리 흐름
1. Prefilter (W2) — NICE 교집합 + Trigram + 초성 + 비엔나 4단계 필터. 통과하지 못하면 composite_score=0.0 즉시 반환.
2. Biblio 보강 — 출원번호로 KIPRIS get_bibliography_detail() 호출. 유사군코드(similarity_codes), 지정상품(goods_list), 이미지 URL을 가져옴.
3. 이미지 로드 — 감시 대상: 업로드 이미지 또는 image_bytes. 후보: KIPRIS biblio의 이미지 URL 다운로드.
4. Mark Type 감지 — 텍스트+이미지=combined, 이미지만=figure, 텍스트만=word. 유형에 따라 6요소 가중치가 달라짐.
5. 6요소 유사도 (W3) — compute_pair_similarity()로 칭호/외관/관념/상품 6요소 분석. 동적 가중치 합산 + 90후588 보정.
6. 감시 부스트 (W4) — 단일 요소 >=0.90 AND 상품 >=0.50이면 composite를 0.95까지 끌어올림.
Prefilter
유사도
부스트

W2 Prefilter — 스테이지별 상세

Prefilter 로직 상세
역할: 불필요한 ML 추론을 방지하기 위해 명백히 비유사한 쌍을 빠르게 제거합니다. 약 95% 이상을 이 단계에서 제외합니다.
Stage 1 (NICE): target.nice_classes와 pub.nice_classes의 교집합 확인. 저명상표(is_famous=True)이면 이 단계를 건너뜁니다 (§34 제1항 제9/11호: 비유사 상품에도 적용).
Stage 2 (Trigram): 양쪽 텍스트를 3글자 단위(짧으면 2글자)로 잘라 Jaccard 유사도 계산. 임계값: 0.15.
Stage 3 (초성): 한글 초성만 추출(삼성→ㅅㅅ)하여 레벤슈타인 편집거리 기반 유사도 계산. 임계값: 0.30.
Stage 4 (비엔나): 도형 상표의 대분류(2자리) 코드가 겹치는지 확인. 한쪽에 코드가 없으면 자동 통과(보수적).
결과: prefilter_detail()은 각 stage의 passed/score/threshold를 반환하여 어디서 탈락했는지 확인 가능.

W3 compute_pair_similarity() — 전체 파라미터

6요소 유사도 분석 로직 상세
역할: 상표법 제34조 제1항 제7호 기준으로 두 상표의 유사 여부를 6가지 요소로 정량 분석합니다. 선행조사(TM-3)와 감시(W3)가 동일 함수를 공유합니다.
칭호(phonetic): 한글 — 음운규칙 적용 후 자모 시퀀스 분해, 가중 편집거리(같은 조음점: 비용 0.3). 영문 — Metaphone + Jaro-Winkler.
외관-텍스트(visual_text): Levenshtein(0.4) + Jaro-Winkler(0.3) + Bigram Jaccard(0.3). 소문자+공백 제거 후 계산.
외관-이미지(visual_image): DINOv3 ViT-B/16 Siamese fine-tuned. ACLF loss로 학습. CLS 토큰(30%) + 196-Patch MaxSim(70%). 양쪽 이미지 필요.
관념-텍스트(conceptual_text): BM-K/KoSimCSE-roberta-multitask (STS 85.77) 임베딩 코사인 유사도. emb_sim>=0.50이면 LLM 보조(선택적).
관념-이미지(conceptual_image): google/siglip2-base-patch16-384 크로스모달. 이미지→텍스트, 텍스트→이미지, 이미지→이미지 3가지 시나리오 평균.
상품(goods): 유사군코드 완전 교집합(1.0), 상위 5자리 교집합(0.5), 미교차(0.0). 부분 교차 시 TF-IDF char n-gram 텍스트 보강.
가중치: word(칭호 30%, 외관텍스트 20%, 상품 20%), figure(외관이미지 45%, 관념이미지 25%, 상품 20%), combined(고르게 10~20%).
90후588 보정: 5개 하위요소 중 하나 >=0.85이고 상품 >=0.50이면 combined = max(combined, 해당요소 * 0.9).

W4 부스트 시뮬레이션

부스트 로직 상세
역할: 감시에는 선행조사의 TM-4(LLM IRAC 법적 판단 + 법적 게이트 4종)가 없으므로, 극고유사 상표를 놓치지 않기 위한 안전장치입니다.
3단계 점수 변화:
1. 가중 합산: 6요소 x mark_type별 가중치 = raw_combined
2. 90후588 보정: 5개 하위요소 중 하나 >=0.85이고 상품 >=0.50이면 combined = max(combined, 해당요소 x 0.9)
3. 감시 부스트: 5개 하위요소 중 하나 >=0.90이고 상품 >=0.50이면 composite = max(composite, 0.95)
법적 근거: TM-4 Gate 4 (ensemble.py) — element>=0.90 AND goods>=0.30이면 reg_prob<=0.15(등록 불가). 감시에서는 composite>=0.95로 CRITICAL 강제.
개별 모델 테스트
6요소 유사도 분석에 사용하는 개별 분석기를 하나씩 실행합니다.
각 모델 설명
칭호 (Rule) — 규칙 기반. 한글: 음운규칙 적용 + 자모 분해 + 가중 편집거리(조음점 비용 0.3) + 초성 비교. 영문: Metaphone + Jaro-Winkler. 혼합: 로마자 변환 후 비교.
외관텍스트 (Rule) — 규칙 기반. Levenshtein 40% + Jaro-Winkler 30% + Bigram Jaccard 30%. 소문자+공백 제거 후 계산.
외관이미지 (DINOv3) — facebook/dinov3-vitb16 + Siamese ACLF head(768D→128D). CLS 토큰(글로벌 30%) + 196-Patch MaxSim(로컬 70%). L2 거리 → 유사도 변환.
관념텍스트 (KoSimCSE) — BM-K/KoSimCSE-roberta-multitask(STS 85.77). 임베딩 코사인 유사도. "한빛"과 "광명"처럼 다른 글자지만 같은 의미를 포착.
관념이미지 (SigLIP 2) — google/siglip2-base-patch16-384(768D). 텍스트↔이미지 크로스모달. "사자 이미지가 호랑이 텍스트와 관념적으로 비슷한가"를 판단.
상품 (Rule) — KIPO 유사군코드 완전교집합(1.0) / 상위 5자리 교집합(0.5) / 미교차(0.0). 부분 교차 시 TF-IDF char n-gram(2-4자리) 텍스트 보강.
칭호
외관텍스트
외관이미지
관념텍스트
관념이미지
상품

칭호 발음 유사도

외관텍스트 글자 모양 유사도

외관이미지 DINOv3 이미지 유사도

두 도형/로고 이미지의 시각적 유사도를 DINOv3 Siamese 모델로 측정합니다.

관념텍스트 KoSimCSE 의미 유사도

관념이미지 SigLIP 2 크로스모달 유사도

텍스트와 이미지 간의 관념적 유사도를 SigLIP 2로 측정합니다.

상품 유사군코드 + 텍스트 유사도