schemas.py — Rollout 数据结构¶
文件概述¶
定义异步推理请求和多轮对话的数据结构(约 670 行)。
核心数据类¶
AsyncRolloutRequest¶
异步推理请求的封装:
@dataclass
class AsyncRolloutRequest:
request_id: str # 唯一请求 ID
prompt_ids: list[int] # prompt token IDs
sampling_params: dict # 采样参数
image_data: list = None # 图像数据(多模态)
video_data: list = None # 视频数据(多模态)
Message¶
多轮对话中的单条消息:
FinishReasonTypeEnum¶
生成结束原因枚举:
class FinishReasonTypeEnum(str, Enum):
COMPLETED = "completed" # 正常完成
LENGTH = "length" # 达到最大长度
ABORTED = "aborted" # 被中止
TOOL_CALLS = "tool_calls" # 工具调用
与其他模块的关系¶
- 被
rollout/replica.py中的RolloutReplica使用 - 被异步推理管理器使用来构造和跟踪请求
小结¶
定义了异步推理流程中的核心数据结构,支持多模态输入和多轮对话场景。