Repolode
mlc-ai

mlc-ai/xgrammar

Biblioteca rápida e flexível para geração estruturada com LLMs, que restringe as saídas do modelo a JSON, regex ou gramáticas livres de contexto personalizadas.

Estrelas
1,967
Forks
241
Issues abertas
130
Último commit
há 3 dias

O que é?

XGrammar é uma biblioteca open source para geração estruturada com modelos de linguagem grandes. Ela usa decodificação restrita para que a saída gerada siga uma estrutura especificada, como JSON, uma expressão regular ou uma gramática livre de contexto genérica. Isso resolve o problema comum de as saídas de LLMs não serem analisáveis ou não corresponderem ao esquema esperado.

O projeto busca manter baixo o overhead da decodificação restrita e relata overhead praticamente zero para geração de JSON. Ele foi projetado para ser portátil em Linux, macOS e Windows, além de funcionar em CPU, GPUs NVIDIA e AMD, Apple Silicon e TPUs. Há bindings para Python, C++, JavaScript e Swift.

XGrammar foi criado para ser integrado a mecanismos de inferência. Ele já está integrado a projetos como vLLM, SGLang, TensorRT-LLM e MLC-LLM, e pode ser instalado com pip.

Recursos principais

  • 01Restringe as saídas a JSON, regex ou gramáticas livres de contexto personalizadas.
  • 02Busca oferecer overhead praticamente zero para geração de JSON.
  • 03Funciona em Linux, macOS e Windows, em CPU, NVIDIA, AMD, Apple Silicon e TPU.
  • 04Oferece APIs para Python, C++, JavaScript e Swift.
  • 05Pode ser instalado com pip e inclui uma opção extra de Metal para Apple Silicon.

Casos de uso

  • Forçar um mecanismo de serving de LLM a retornar JSON válido para processamento posterior.
  • Restringir a saída do modelo a uma regex ou gramática para chamadas de ferramentas ou argumentos de funções.
  • Adicionar suporte a saídas estruturadas a uma stack personalizada de inferência de LLMs.

Início rápido

  1. 1

    Instalar o XGrammar pelo PyPI

    pip install xgrammar
  2. 2

    Instalar com suporte a Metal para Apple Silicon (opcional)

    pip install "xgrammar[metal]"
  3. 3

    Importar o XGrammar no seu código Python

    import xgrammar as xgr

Antes de usar

  • A maioria dos detalhes de uso do README está em documentação externa, não no próprio README.

Tópicos

Perguntas frequentes

O que é xgrammar?
Biblioteca rápida e flexível para geração estruturada com LLMs, que restringe as saídas do modelo a JSON, regex ou gramáticas livres de contexto personalizadas. XGrammar é uma biblioteca open source para geração estruturada com modelos de linguagem grandes. Ela usa decodificação restrita para que a saída gerada siga uma estrutura especificada, como JSON, uma expressão regular ou uma gramática livre de contexto genérica. Isso resolve o problema comum de as saídas de LLMs não serem analisáveis ou não corresponderem ao esquema esperado.
xgrammar é gratuito? Qual é a licença?
xgrammar é open source sob a licença Apache-2.0. Confira os termos da licença antes de usá-lo em produtos comerciais.
xgrammar ainda é mantido?
Manutenção ativa. O último commit de xgrammar foi em 18 de out. de 2026.
Para que posso usar xgrammar?
Forçar um mecanismo de serving de LLM a retornar JSON válido para processamento posterior. Restringir a saída do modelo a uma regex ou gramática para chamadas de ferramentas ou argumentos de funções. Adicionar suporte a saídas estruturadas a uma stack personalizada de inferência de LLMs.
Como instalar xgrammar?
Instalar o XGrammar pelo PyPI: pip install xgrammar Instalar com suporte a Metal para Apple Silicon (opcional): pip install "xgrammar[metal]" Importar o XGrammar no seu código Python: import xgrammar as xgr
Onde consigo xgrammar?
O código-fonte e as instruções de instalação estão no GitHub: https://github.com/mlc-ai/xgrammar

Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.

Projetos relacionados