[Auto Sync] Update base_grammar_backend.py, xgrammar_backen... (20250930) (#11115)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com> Co-authored-by: Sehoon Kim <sehoon@x.ai>
This commit is contained in:
@@ -35,6 +35,7 @@ class GrammarStats:
|
|||||||
is_cache_hit: bool = False
|
is_cache_hit: bool = False
|
||||||
is_grammar_aborted: bool = False
|
is_grammar_aborted: bool = False
|
||||||
tree_traversal_time: List[float] = field(default_factory=list)
|
tree_traversal_time: List[float] = field(default_factory=list)
|
||||||
|
dispatch_type: Optional[str] = None
|
||||||
|
|
||||||
|
|
||||||
class BaseGrammarObject:
|
class BaseGrammarObject:
|
||||||
|
|||||||
@@ -217,7 +217,7 @@ class XGrammarGrammarBackend(BaseGrammarBackend):
|
|||||||
except (RuntimeError, json.decoder.JSONDecodeError) as e:
|
except (RuntimeError, json.decoder.JSONDecodeError) as e:
|
||||||
logging.error(f"Hit invalid json_schema: {key_string=}, {e=}")
|
logging.error(f"Hit invalid json_schema: {key_string=}, {e=}")
|
||||||
return INVALID_GRAMMAR_OBJ
|
return INVALID_GRAMMAR_OBJ
|
||||||
return self._from_context(ctx, key_string, GrammarStats())
|
return self._from_context(ctx, key_string, GrammarStats(dispatch_type="json"))
|
||||||
|
|
||||||
def dispatch_ebnf(self, key_string: str) -> Optional[XGrammarGrammar]:
|
def dispatch_ebnf(self, key_string: str) -> Optional[XGrammarGrammar]:
|
||||||
try:
|
try:
|
||||||
@@ -225,7 +225,7 @@ class XGrammarGrammarBackend(BaseGrammarBackend):
|
|||||||
except RuntimeError as e:
|
except RuntimeError as e:
|
||||||
logging.error(f"Hit invalid ebnf: {key_string=}, {e=}")
|
logging.error(f"Hit invalid ebnf: {key_string=}, {e=}")
|
||||||
return INVALID_GRAMMAR_OBJ
|
return INVALID_GRAMMAR_OBJ
|
||||||
return self._from_context(ctx, key_string, GrammarStats())
|
return self._from_context(ctx, key_string, GrammarStats(dispatch_type="ebnf"))
|
||||||
|
|
||||||
def dispatch_regex(self, key_string: str) -> Optional[XGrammarGrammar]:
|
def dispatch_regex(self, key_string: str) -> Optional[XGrammarGrammar]:
|
||||||
try:
|
try:
|
||||||
@@ -233,7 +233,7 @@ class XGrammarGrammarBackend(BaseGrammarBackend):
|
|||||||
except RuntimeError as e:
|
except RuntimeError as e:
|
||||||
logging.error(f"Hit invalid regex: {key_string=}, {e=}")
|
logging.error(f"Hit invalid regex: {key_string=}, {e=}")
|
||||||
return INVALID_GRAMMAR_OBJ
|
return INVALID_GRAMMAR_OBJ
|
||||||
return self._from_context(ctx, key_string, GrammarStats())
|
return self._from_context(ctx, key_string, GrammarStats(dispatch_type="regex"))
|
||||||
|
|
||||||
def dispatch_structural_tag(self, key_string: str) -> Optional[XGrammarGrammar]:
|
def dispatch_structural_tag(self, key_string: str) -> Optional[XGrammarGrammar]:
|
||||||
try:
|
try:
|
||||||
@@ -252,7 +252,9 @@ class XGrammarGrammarBackend(BaseGrammarBackend):
|
|||||||
except (RuntimeError, json.decoder.JSONDecodeError) as e:
|
except (RuntimeError, json.decoder.JSONDecodeError) as e:
|
||||||
logging.error(f"Hit invalid structural_tag: {key_string=}, {e=}")
|
logging.error(f"Hit invalid structural_tag: {key_string=}, {e=}")
|
||||||
return INVALID_GRAMMAR_OBJ
|
return INVALID_GRAMMAR_OBJ
|
||||||
return self._from_context(ctx, key_string, GrammarStats())
|
return self._from_context(
|
||||||
|
ctx, key_string, GrammarStats(dispatch_type="structural_tag")
|
||||||
|
)
|
||||||
|
|
||||||
def reset(self):
|
def reset(self):
|
||||||
self.grammar_compiler.clear_cache()
|
self.grammar_compiler.clear_cache()
|
||||||
|
|||||||
Reference in New Issue
Block a user