Repolode
spencermountain

spencermountain/compromise

품사를 태깅하고 텍스트 패턴을 찾으며, 동사 시제와 숫자 같은 텍스트 요소를 변환하는 JavaScript 자연어 처리 라이브러리입니다.

스타
12,165
포크
668
열린 이슈
93
마지막 커밋
16시간 전

어떤 프로젝트인가요?

compromise는 브라우저와 Node.js에서 실행되는 경량 JavaScript 자연어 처리 라이브러리입니다. 원문 텍스트를 명사, 동사, 숫자, 날짜, 사람, 장소 등을 찾고 읽어 내거나 다시 쓸 수 있는 구조화된 문서로 변환합니다.

문장의 일부를 선택하는 '#Adjective of times' 같은 간결한 패턴 매칭 구문과 동사를 과거형으로 바꾸거나, 명사를 복수형으로 만들고, 축약형을 풀거나, 숫자를 추가하는 등의 변환 기능을 제공합니다. 결과는 텍스트나 JSON으로 내보낼 수 있습니다. 핵심 빌드는 토크나이저와 태거로 구성되며, 토큰화만 필요한 경우를 위한 별도의 진입점도 제공됩니다. 선택형 플러그인으로 기능을 확장할 수 있으며, 예를 들어 compromise-speech는 음절 관련 기능을 제공합니다.

영어에 중점을 둔 프로젝트입니다. 형제 패키지에서는 프랑스어, 독일어, 이탈리아어, 스페인어를 지원합니다.

핵심 기능

  • 0183개 태그로 구성된 그래프를 이용한 품사 태깅
  • 02구문을 선택하는 간결한 매칭 구문을 활용한 패턴 매칭
  • 03동사 활용, 명사 복수형 변환 및 시제 변환
  • 04숫자, 화폐, 분수, 백분율 파싱 및 연산
  • 05축약형 확장 및 텍스트 정규화
  • 06플러그인 시스템과 경량 사용을 위한 토크나이저 전용 빌드

활용 사례

  • 기사나 채팅 텍스트에서 이름, 장소, 날짜 추출
  • 올바른 동사 형태를 사용해 영어 문장을 생성하거나 교정
  • 폼이나 검색에서 사용자 입력의 숫자와 통화 정보 파싱
  • 브라우저에서 직접 경량 텍스트 분석 실행

빠른 시작

  1. 1

    npm에서 라이브러리를 설치합니다

    npm install compromise
  2. 2

    라이브러리를 가져와 문장에 간단한 예제를 실행합니다

사용 전 알아둘 점

  • 이름만큼 똑똑하지는 않으며, 제한적인 규칙 기반 판단에 의존합니다.
  • 라이브러리 전체 크기는 minify 후 약 250kb로, 작은 번들에는 큽니다.
  • 다른 언어는 fr-compromise, de-compromise, it-compromise, es-compromise와 같은 별도 프로젝트로만 제공됩니다.

토픽

자주 묻는 질문

compromise은(는) 무엇인가요?
품사를 태깅하고 텍스트 패턴을 찾으며, 동사 시제와 숫자 같은 텍스트 요소를 변환하는 JavaScript 자연어 처리 라이브러리입니다. compromise는 브라우저와 Node.js에서 실행되는 경량 JavaScript 자연어 처리 라이브러리입니다. 원문 텍스트를 명사, 동사, 숫자, 날짜, 사람, 장소 등을 찾고 읽어 내거나 다시 쓸 수 있는 구조화된 문서로 변환합니다.
compromise은(는) 무료로 사용할 수 있나요? 라이선스는 무엇인가요?
compromise은(는) MIT 라이선스의 오픈소스입니다. 상업용 제품에 사용하기 전에 라이선스 조건을 확인하세요.
compromise은(는) 아직 유지보수되고 있나요?
활발히 유지보수 중. compromise의 마지막 커밋은 2026년 10월 19일입니다.
compromise은(는) 어디에 사용할 수 있나요?
기사나 채팅 텍스트에서 이름, 장소, 날짜 추출 올바른 동사 형태를 사용해 영어 문장을 생성하거나 교정 폼이나 검색에서 사용자 입력의 숫자와 통화 정보 파싱 브라우저에서 직접 경량 텍스트 분석 실행
compromise는 어떻게 설치하나요?
npm에서 라이브러리를 설치합니다: npm install compromise 라이브러리를 가져와 문장에 간단한 예제를 실행합니다
compromise은(는) 어디서 받을 수 있나요?
소스 코드와 설치 방법은 GitHub에 있습니다: https://github.com/spencermountain/compromise

요약은 프로젝트 README를 바탕으로 AI가 작성했습니다. GitHub 통계는 매일 갱신됩니다.

관련 프로젝트