Repolode
explosion

explosion/spacy-llm

NER, 텍스트 분류 등의 작업을 학습 데이터 없이 수행하도록 대규모 언어 모델을 구조화된 NLP 파이프라인에 연결하는 spaCy 확장 기능입니다.

스타
1,398
포크
112
열린 이슈
50
마지막 커밋
24일 전

어떤 프로젝트인가요?

spacy-llm은 Large Language Model을 spaCy에 통합해, 일반적인 spaCy 파이프라인에 LLM 기반 컴포넌트를 추가할 수 있게 합니다. 각 컴포넌트는 작업(프롬프트 템플릿과 모델의 자유 형식 응답을 구조화된 출력으로 변환하는 파서)과 모델 백엔드를 결합하며, 결과는 doc.ents나 doc.cats 같은 표준 spaCy 필드에 저장됩니다.

이 패키지에는 개체명 인식, 텍스트 분류, 표제어 추출, 관계 추출, 감성 분석, 스팬 분류, 요약, 개체 연결, 번역을 위한 기본 작업과 원시 프롬프트 옵션이 포함되어 있습니다. 백엔드로는 OpenAI, Cohere, Anthropic, Google PaLM, Azure AI와 Falcon, Dolly, Llama 2, Mistral, StableLM 같은 Hugging Face 호스팅 오픈소스 모델을 사용할 수 있습니다. 파이프라인은 spaCy의 config 시스템에서 정의하고 직렬화할 수 있으며, 사용자 정의 작업이나 모델은 spaCy의 registry를 통해 등록할 수 있습니다.

이 프로젝트는 빠른 프로토타이핑을 목표로 합니다. 프롬프트와 레이블이 지정된 데이터 없이 시작한 다음, 프로젝트가 발전함에 따라 LLM 컴포넌트와 지도 학습 spaCy 모델을 함께 사용하거나 서로 교체할 수 있습니다. 이 패키지는 실험 단계로 표시되어 있어 마이너 릴리스에서도 인터페이스가 변경될 수 있습니다.

핵심 기능

  • 01직렬화 가능한 llm 컴포넌트로, 프롬프트 기반 단계를 spaCy 파이프라인에 추가합니다.
  • 02spaCy의 registry를 통해 등록하는 사용자 정의 항목을 포함해 작업 및 모델 함수를 모듈식으로 구성할 수 있습니다.
  • 03OpenAI, Cohere, Anthropic, Google PaLM, Azure AI API를 지원합니다.
  • 04Llama 2, Mistral, Falcon 등 Hugging Face의 오픈소스 모델을 실행합니다.
  • 05NER, 텍스트 분류, 관계 추출, 요약 등 기본 작업을 제공합니다.
  • 06입력이 LLM의 컨텍스트 창을 초과할 때 map-reduce 방식으로 처리합니다.

활용 사례

  • 레이블이 지정된 학습 데이터를 수집하기 전에 NER 또는 텍스트 분류 단계를 프로토타이핑합니다.
  • LLM 기반 컴포넌트를 규칙 기반 또는 지도 학습 spaCy 컴포넌트와 하나의 파이프라인에서 결합합니다.
  • 호스팅된 LLM 또는 로컬 오픈소스 LLM을 사용해 비정형 텍스트에서 구조화된 필드를 추출합니다.

빠른 시작

  1. 1

    pip으로 패키지를 설치합니다

    python -m pip install spacy-llm
  2. 2

    OpenAI API 키를 만들고 환경 변수로 설정합니다

  3. 3

    Python에서 llm_textcat 팩토리로 텍스트 분류를 실행합니다

사용 전 알아둘 점

  • 아직 실험 단계이므로 마이너 버전 업데이트로 인터페이스가 변경되어 작동하지 않을 수 있습니다.
  • 대부분의 내장 모델은 OpenAI 같은 유료 제공업체의 API 키나 호스팅된 LLM이 필요합니다.

토픽

자주 묻는 질문

spacy-llm은(는) 무엇인가요?
NER, 텍스트 분류 등의 작업을 학습 데이터 없이 수행하도록 대규모 언어 모델을 구조화된 NLP 파이프라인에 연결하는 spaCy 확장 기능입니다. spacy-llm은 Large Language Model을 spaCy에 통합해, 일반적인 spaCy 파이프라인에 LLM 기반 컴포넌트를 추가할 수 있게 합니다. 각 컴포넌트는 작업(프롬프트 템플릿과 모델의 자유 형식 응답을 구조화된 출력으로 변환하는 파서)과 모델 백엔드를 결합하며, 결과는 doc.ents나 doc.cats 같은 표준 spaCy 필드에 저장됩니다.
spacy-llm은(는) 무료로 사용할 수 있나요? 라이선스는 무엇인가요?
spacy-llm은(는) MIT 라이선스의 오픈소스입니다. 상업용 제품에 사용하기 전에 라이선스 조건을 확인하세요.
spacy-llm은(는) 아직 유지보수되고 있나요?
활발히 유지보수 중. spacy-llm의 마지막 커밋은 2026년 9월 27일입니다.
spacy-llm은(는) 어디에 사용할 수 있나요?
레이블이 지정된 학습 데이터를 수집하기 전에 NER 또는 텍스트 분류 단계를 프로토타이핑합니다. LLM 기반 컴포넌트를 규칙 기반 또는 지도 학습 spaCy 컴포넌트와 하나의 파이프라인에서 결합합니다. 호스팅된 LLM 또는 로컬 오픈소스 LLM을 사용해 비정형 텍스트에서 구조화된 필드를 추출합니다.
spacy-llm는 어떻게 설치하나요?
pip으로 패키지를 설치합니다: python -m pip install spacy-llm OpenAI API 키를 만들고 환경 변수로 설정합니다 Python에서 llm_textcat 팩토리로 텍스트 분류를 실행합니다
spacy-llm은(는) 어디서 받을 수 있나요?
소스 코드와 설치 방법은 GitHub에 있습니다: https://github.com/explosion/spacy-llm

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

관련 프로젝트