콘텐츠로 이동

도메인별 구축 워크플로우

도메인별 사용자 사전 구축 워크플로우 (법률·의료·금융)

법률·의료·금융처럼 전문 용어가 많은 도메인에서는 사용자 사전을 즉흥적으로 채우기보다, 수집 → 분류 → 등록 → 검증의 정해진 워크플로우를 따르는 것이 사전 품질과 유지보수에 훨씬 유리합니다.

이 문서는 도메인 용어 사전을 체계적으로 구축하는 4단계 워크플로우와, 법률·의료·금융 각 도메인의 실제 용어 예시를 제시합니다.

전체 워크플로우

graph LR
  A[1. 수집] --> B[2. 분류];
  B --> C[3. 등록];
  C --> D[4. 검증];
  D -- 미등록단어 발견 --> A;

도메인 사전은 한 번 만들고 끝이 아니라, 검증에서 새로 발견한 미등록단어를 다시 수집으로 돌려 반복적으로 다듬는 사이클입니다.

1단계 — 수집

도메인 문서에서 자주 쓰이지만 일반 사전에 없는 용어를 모읍니다.

  • 사내 문서·계약서·진료기록·약관 등 실제 말뭉치에서 용어를 추출합니다.
  • 형태소 분석을 돌려 out_of_vocabOUT_OF_VOCAB인 미등록단어를 후보로 모으면 효율적입니다. (자세한 방법은 OOV 줄이기 문서를 참고하세요.)
  • 용어 옆에 "이 단어를 어떻게 인식하길 원하는가"를 메모해 두면 다음 분류 단계가 쉬워집니다.

2단계 — 분류

모은 용어를 5종 사전 중 어디에 넣을지 분류합니다. 이 분류가 사전 품질의 핵심입니다.

도메인 고유명사(NP) 복합명사(CP) 복합명사 분리(CP^) 동사/형용사(VV/VA)
법률 민식이법, 김영란법 압수수색, 약식기소 손해^배상, 위헌^심판 기소하다(VV)
의료 타이레놀, 렘데시비르 조영제, 심전도검사 유전자^검사, 재활^치료 투약하다(VV)
금융 토스뱅크, 코스피200 여신심사, 방카슈랑스 신용^평가, 자산^운용 대출하다(VV)

분류 기준 빠르게 잡기

  • 세상에 하나뿐인 이름(법령·상품·기관) → 고유명사(NP)
  • 굳어진 한 덩어리 전문어 → 복합명사(CP)
  • 검색·색인 위해 나눠야 하는 합성어 → 복합명사 분리(CP^)
  • "~하다"로 활용하는 전문 동사·형용사 → 동사/형용사(VV/VA)

3단계 — 등록

분류한 용어를 도메인 이름으로 묶어 한 번에 등록합니다. 영역이 다르면 도메인을 나누세요.

from bareunpy import Tagger

my_tagger = Tagger('YOUR-API-KEY', 'localhost', port=5656)

# 법률 도메인 사전 구축
law = my_tagger.custom_dict("legal")
law.copy_np_set({'민식이법', '김영란법'})
law.copy_cp_set({'압수수색', '약식기소'})
law.copy_cp_caret_set({'손해^배상', '위헌^심판'})
law.copy_vv_set({'기소하다', '항소하다'})

# 등록 전 충돌 검사 후 반영
if not law.check_conflict():
    law.update()

도메인은 영역 단위로 쪼개세요

금융사라면 "수신/여신", "신용카드", "투자"처럼 성격이 다른 업무를 각각 도메인으로 두는 것이 좋습니다. 분석할 때 custom_dict_names로 필요한 도메인만 골라 쓰면 됩니다.

4단계 — 검증

등록한 사전이 의도대로 동작하는지 실제 문장으로 확인합니다.

  • 도메인 대표 문장을 분석해, 등록 용어가 IN_CUSTOM_DICT로 올바른 품사로 나오는지 확인합니다.
  • custom_dict_name이 의도한 도메인인지 점검합니다.
  • 여전히 OUT_OF_VOCAB인 단어가 보이면 1단계 수집으로 돌려 다음 사이클에 반영합니다.

워크플로우의 가치

수집·분류·등록·검증을 한 사이클로 돌리면, 도메인 전문가가 아니어도 일관된 품질의 사전을 유지할 수 있습니다. 특히 분류 기준을 팀이 공유하면 협업 시 사전이 흐트러지지 않습니다.

자주 묻는 질문

Q. 도메인은 몇 개까지 만들 수 있나요?

바른은 한 서버에서 사용자 사전(도메인)을 제한 없이 정의할 수 있습니다. 업무 성격이 다르면 도메인을 나누고, 분석할 때 custom_dict_names로 필요한 도메인을 조합해 쓰면 됩니다.

Q. 전문 용어를 무조건 복합명사로 넣으면 안 되나요?

품사 의도에 따라 결과가 달라집니다. 법령 이름은 고유명사, 활용하는 동사는 동사 사전에 넣어야 정확히 인식됩니다. 분류 단계를 건너뛰면 검증에서 어긋난 결과를 보게 됩니다.

Q. 사전을 갱신하면 서비스가 멈추나요?

아닙니다. 바른은 사전 파일 변경을 실시간 감지해 무중단으로 반영합니다. 운영 중에도 안전하게 도메인 사전을 갱신할 수 있습니다.

도움이 되었나요?