[Frontend] Represent tokens with identifiable strings (#6626)

This commit is contained in:
Evan Z. Liu
2024-07-24 18:51:00 -07:00
committed by GitHub
parent 740374d456
commit 5689e256ba
7 changed files with 138 additions and 19 deletions

View File

@@ -68,6 +68,7 @@ class OpenAIServing:
lora_modules: Optional[List[LoRAModulePath]],
prompt_adapters: Optional[List[PromptAdapterPath]],
request_logger: Optional[RequestLogger],
return_tokens_as_token_ids: bool = False,
):
super().__init__()
@@ -102,6 +103,7 @@ class OpenAIServing:
prompt_adapter_num_virtual_tokens=num_virtual_tokens))
self.request_logger = request_logger
self.return_tokens_as_token_ids = return_tokens_as_token_ids
async def show_available_models(self) -> ModelList:
"""Show available models. Right now we only have one model."""
@@ -384,11 +386,13 @@ class OpenAIServing:
)
@staticmethod
def _get_decoded_token(
logprob: Logprob,
token_id: int,
tokenizer: AnyTokenizer,
) -> str:
def _get_decoded_token(logprob: Logprob,
token_id: int,
tokenizer: AnyTokenizer,
return_as_token_id: bool = False) -> str:
if return_as_token_id:
return f"token_id:{token_id}"
if logprob.decoded_token is not None:
return logprob.decoded_token
return tokenizer.decode(token_id)