aidial_sdk/deployment/tokenize.py (22 lines of code) (raw):

from typing import List, Literal, Union from aidial_sdk.chat_completion.request import ChatCompletionRequest from aidial_sdk.deployment.from_request_mixin import FromRequestDeploymentMixin from aidial_sdk.pydantic_v1 import BaseModel class TokenizeInputRequest(BaseModel): type: Literal["request"] = "request" value: ChatCompletionRequest class TokenizeInputString(BaseModel): type: Literal["string"] = "string" value: str TokenizeInput = Union[TokenizeInputRequest, TokenizeInputString] class TokenizeRequest(FromRequestDeploymentMixin): inputs: List[TokenizeInput] class TokenizeSuccess(BaseModel): status: Literal["success"] = "success" token_count: int class TokenizeError(BaseModel): status: Literal["error"] = "error" error: str TokenizeOutput = Union[TokenizeSuccess, TokenizeError] class TokenizeResponse(BaseModel): outputs: List[TokenizeOutput]