util.py 629 Bytes
Newer Older
1
2
3
4
5
6
7
8
9
10
from typing import List

from vllm.sequence import SamplerOutput


def create_output_by_sequence_group(sampler_outputs: List[SamplerOutput],
                                    num_seq_groups: int):
    """Helper method which transforms a 2d list organized by
    [step][sequence group] into [sequence group][step].
    """
11
12
13
    output_by_sequence_group: List[List[SamplerOutput]] = [
        [] for _ in range(num_seq_groups)
    ]
14
15
16
17
18
    for step in sampler_outputs:
        for i, sequence_group_output in enumerate(step):
            output_by_sequence_group[i].append(sequence_group_output)

    return output_by_sequence_group