test: build unscheduled request outputs in scheduler checks

This commit is contained in:
morluto 2026-10-20 18:27:40 +08:00
parent cc2e925c27
commit 3e6753afeb

View File

@ -111,3 +111,36 @@ def metadata_pool() -> "SequenceMetadataPool":
from deepinfer._C.engine import SequenceMetadataPool
return SequenceMetadataPool()
@pytest.fixture
def unscheduled_outputs() -> Callable:
import torch
from deepinfer._C.engine import RequestOutput, RequestOutputPool, build_request_outputs
def build(outputs: object) -> list[object]:
pool = RequestOutputPool()
pointers = build_request_outputs(
outputs,
64,
torch.empty(0, dtype=torch.int32),
torch.empty(0, dtype=torch.float32),
top_logprobs_=None,
top_token_ids_=None,
sum_smaller_probs_=None,
accepted_token_ids_=None,
accepted_token_logprobs_=None,
accepted_top_logprobs_=None,
accepted_top_token_ids_=None,
accepted_sum_smaller_probs_=None,
accepted_token_last_logprobs_=None,
pushed_tokens_before_finish=np.empty(0, dtype=np.int32),
prompt_logprobs=None,
request_output_pool=pool,
)
result = [RequestOutput.clone(int(pointer)) for pointer in pointers]
pool.release(pointers)
return result
return build