Skip to content

vllm.entrypoints.pooling.token_embed.protocol

Classes:

TokenEmbeddingRequest

Bases: PoolingBasicRequestMixin, CompletionRequestMixin, EmbedRequestMixin, FixedMaxLenTokenizeParamsMixin

Token embeddings with optional full-document late chunking.

Source code in vllm/entrypoints/pooling/token_embed/protocol.py
class TokenEmbeddingRequest(
    PoolingBasicRequestMixin,
    CompletionRequestMixin,
    EmbedRequestMixin,
    FixedMaxLenTokenizeParamsMixin,
):
    """Token embeddings with optional full-document late chunking."""

    late_chunking_params: LateChunkingConfig | None = None
    encoding_format: Literal["float"] = "float"
    dimensions: None = None

    @model_validator(mode="before")
    @classmethod
    def check_removed_parameters(cls, data):
        return reject_removed_pooling_parameters(data)

    def to_pooling_params(self):
        return PoolingParams(
            task="token_embed",
            use_activation=self.use_activation,
            late_chunking_params=(
                LateChunkingParams(chunk_size=self.late_chunking_params.chunk_size)
                if self.late_chunking_params is not None
                else None
            ),
        )

TokenEmbeddingResponse

Bases: OpenAIBaseModel

vLLM extension returning one matrix of token or chunk vectors per input.

Source code in vllm/entrypoints/pooling/token_embed/protocol.py
class TokenEmbeddingResponse(OpenAIBaseModel):
    """vLLM extension returning one matrix of token or chunk vectors per input."""

    id: str = Field(default_factory=lambda: f"embd-{random_uuid()}")
    object: str = "list"
    created: int = Field(default_factory=lambda: int(time.time()))
    model: str | None = None
    data: list[TokenEmbeddingResponseData]
    usage: UsageInfo