vllm_omni.worker_v2.omni_ar_model_runner ¶
OmniARModelRunner — autoregressive stage runner on MR V2.
Extends OmniGPUModelRunner with:
OmniOutputpost-processing insample_tokens- Per-request
pooler_outputconstruction (hidden + multimodal slices) - Async D2H copy via
OmniAsyncOutputfor non-blocking output transfer - Cross-stage KV extraction before state cleanup
OmniARModelRunner ¶
Bases: OmniGPUModelRunner
AR stage runner. Produces per-request hidden states + multimodal outputs.
execute_model ¶
execute_model(
scheduler_output: SchedulerOutput,
intermediate_tensors: Any | None = None,
dummy_run: bool = False,
skip_attn_for_dummy_run: bool = False,
is_profile: bool = False,
context_len: int = 0,
valid_dummy_state_slots: bool = False,
) -> Any
sample_tokens ¶
sample_tokens(
grammar_output: GrammarOutput | None,
) -> (
OmniAsyncOutput
| OmniModelRunnerOutput
| ModelRunnerOutput
| None
)
OmniAsyncOutput ¶
Bases: AsyncModelRunnerOutput
Async D2H copy for Omni AR model outputs.
Mirrors upstream AsyncOutput but additionally handles pooler_output (hidden states + multimodal outputs) via non-blocking copies on the copy stream.
copy_event instance-attribute ¶
num_sampled_tokens_np instance-attribute ¶
num_sampled_tokens_np = _async_copy_to_np(
num_sampled_tokens,
copy_stream=copy_stream,
pin_memory=pin_memory,
)
prompt_logprobs_dict instance-attribute ¶
prompt_logprobs_dict = {
k: v.to_cpu_nonblocking()
if v is not None
else None
for k, v in self.model_runner_output.prompt_logprobs_dict.items()
}
sampled_token_ids_np instance-attribute ¶
sampled_token_ids_np = _async_copy_to_np(
sampler_output.sampled_token_ids,
copy_stream=copy_stream,
pin_memory=pin_memory,
)