47 lines
1.4 KiB
Python
47 lines
1.4 KiB
Python
# SPDX-License-Identifier: Apache-2.0
|
|
# SPDX-FileCopyrightText: Copyright contributors to the vLLM project
|
|
|
|
|
|
from typing import Annotated
|
|
|
|
from pydantic import Field
|
|
|
|
from vllm.entrypoints.openai.engine.protocol import OpenAIBaseModel
|
|
from vllm.utils import random_uuid
|
|
|
|
|
|
class PoolingBasicRequestMixin(OpenAIBaseModel):
|
|
model: str | None = None
|
|
user: str | None = None
|
|
truncate_prompt_tokens: Annotated[int, Field(ge=-1)] | None = None
|
|
|
|
request_id: str = Field(
|
|
default_factory=random_uuid,
|
|
description=(
|
|
"The request_id related to this request. If the caller does "
|
|
"not set it, a random_uuid will be generated. This id is used "
|
|
"through out the inference process and return in response."
|
|
),
|
|
)
|
|
|
|
priority: int = Field(
|
|
default=0,
|
|
description=(
|
|
"The priority of the request (lower means earlier handling; "
|
|
"default: 0). Any priority other than 0 will raise an error "
|
|
"if the served model does not use priority scheduling."
|
|
),
|
|
)
|
|
|
|
|
|
class CompletionRequestMixin(OpenAIBaseModel):
|
|
input: list[int] | list[list[int]] | str | list[str]
|
|
|
|
add_special_tokens: bool = Field(
|
|
default=True,
|
|
description=(
|
|
"If true (the default), special tokens (e.g. BOS) will be added to "
|
|
"the prompt."
|
|
),
|
|
)
|