Repolode
mlc-ai

mlc-ai/xgrammar

LLM 출력을 JSON, 정규식 또는 사용자 지정 문맥 자유 문법으로 제한하는 빠르고 유연한 구조화 생성 라이브러리입니다.

스타
1,967
포크
241
열린 이슈
130
마지막 커밋
3일 전

어떤 프로젝트인가요?

XGrammar는 대규모 언어 모델을 위한 구조화 생성 오픈소스 라이브러리입니다. 제약 디코딩을 사용해 생성된 출력이 JSON, 정규식 또는 일반 문맥 자유 문법과 같은 지정된 구조를 따르도록 합니다. 이를 통해 LLM 출력이 파싱에 실패하거나 예상 스키마와 일치하지 않는 흔한 문제를 해결합니다.

이 프로젝트는 제약 디코딩의 오버헤드를 낮게 유지하는 데 중점을 두며, JSON 생성 시 오버헤드가 거의 없다고 보고합니다. Linux, macOS, Windows뿐 아니라 CPU, NVIDIA 및 AMD GPU, Apple Silicon, TPU에서도 사용할 수 있도록 설계되었습니다. Python, C++, JavaScript, Swift 바인딩을 제공합니다.

XGrammar는 추론 엔진에 임베드하는 용도로 만들어졌습니다. vLLM, SGLang, TensorRT-LLM, MLC-LLM 등의 프로젝트에 통합되어 있으며, pip으로 설치할 수 있습니다.

핵심 기능

  • 01출력을 JSON, 정규식 또는 사용자 지정 문맥 자유 문법으로 제한합니다.
  • 02JSON 생성 시 오버헤드를 거의 없애는 것을 목표로 합니다.
  • 03Linux, macOS, Windows에서 CPU, NVIDIA 및 AMD GPU, Apple Silicon, TPU를 지원합니다.
  • 04Python, C++, JavaScript, Swift API를 제공합니다.
  • 05pip으로 설치할 수 있으며, Apple Silicon용 Metal extra를 선택적으로 제공합니다.

활용 사례

  • LLM 서빙 엔진의 출력을 유효한 JSON으로 강제해 후속 파싱에 활용합니다.
  • 도구 호출이나 함수 인수에 맞게 모델 출력을 정규식 또는 문법으로 제한합니다.
  • 사용자 지정 LLM 추론 스택에 구조화된 출력 지원을 추가합니다.

빠른 시작

  1. 1

    PyPI에서 XGrammar 설치하기

    pip install xgrammar
  2. 2

    Apple Silicon용 Metal 지원을 활성화하여 설치하기(선택 사항)

    pip install "xgrammar[metal]"
  3. 3

    Python 코드에서 XGrammar 가져오기

    import xgrammar as xgr

사용 전 알아둘 점

  • README의 사용법에 관한 세부 정보 대부분은 README 자체가 아니라 외부 문서에 있습니다.

토픽

자주 묻는 질문

xgrammar은(는) 무엇인가요?
LLM 출력을 JSON, 정규식 또는 사용자 지정 문맥 자유 문법으로 제한하는 빠르고 유연한 구조화 생성 라이브러리입니다. XGrammar는 대규모 언어 모델을 위한 구조화 생성 오픈소스 라이브러리입니다. 제약 디코딩을 사용해 생성된 출력이 JSON, 정규식 또는 일반 문맥 자유 문법과 같은 지정된 구조를 따르도록 합니다. 이를 통해 LLM 출력이 파싱에 실패하거나 예상 스키마와 일치하지 않는 흔한 문제를 해결합니다.
xgrammar은(는) 무료로 사용할 수 있나요? 라이선스는 무엇인가요?
xgrammar은(는) Apache-2.0 라이선스의 오픈소스입니다. 상업용 제품에 사용하기 전에 라이선스 조건을 확인하세요.
xgrammar은(는) 아직 유지보수되고 있나요?
활발히 유지보수 중. xgrammar의 마지막 커밋은 2026년 10월 18일입니다.
xgrammar은(는) 어디에 사용할 수 있나요?
LLM 서빙 엔진의 출력을 유효한 JSON으로 강제해 후속 파싱에 활용합니다. 도구 호출이나 함수 인수에 맞게 모델 출력을 정규식 또는 문법으로 제한합니다. 사용자 지정 LLM 추론 스택에 구조화된 출력 지원을 추가합니다.
xgrammar는 어떻게 설치하나요?
PyPI에서 XGrammar 설치하기: pip install xgrammar Apple Silicon용 Metal 지원을 활성화하여 설치하기(선택 사항): pip install "xgrammar[metal]" Python 코드에서 XGrammar 가져오기: import xgrammar as xgr
xgrammar은(는) 어디서 받을 수 있나요?
소스 코드와 설치 방법은 GitHub에 있습니다: https://github.com/mlc-ai/xgrammar

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

관련 프로젝트