Add cache metrics (#119)

This commit is contained in:
Cody Yu
2024-01-30 22:13:14 -08:00
committed by GitHub
parent 74b3bfaaf8
commit 71b54eea7d
5 changed files with 87 additions and 27 deletions

View File

@@ -1,21 +1,14 @@
from sglang.srt.constrained.base_cache import BaseCache
from sglang.srt.constrained.fsm import RegexFSM
from sglang.srt.constrained.tokenizer import TransformerTokenizer
_enable_memory_cache = True
class FSMCache:
def __init__(self, tokenizer_path, tokenizer_args_dict):
self.cache = {}
class FSMCache(BaseCache):
def __init__(self, tokenizer_path, tokenizer_args_dict, enable=True):
super().__init__(enable=enable)
self.outlines_tokenizer = TransformerTokenizer(
tokenizer_path, **tokenizer_args_dict
)
def init_fsm(self, regex):
if _enable_memory_cache:
if regex not in self.cache:
fsm = RegexFSM(regex, self.outlines_tokenizer)
self.cache[regex] = fsm
return self.cache[regex]
def init_value(self, regex):
return RegexFSM(regex, self.outlines_tokenizer)