[Multimodal] Simplify MM input definitions (#33331)
Signed-off-by: DarkLight1337 <tlleungac@connect.ust.hk>
This commit is contained in:
@@ -104,14 +104,10 @@ class MyRequest(msgspec.Struct):
|
||||
|
||||
def test_multimodal_kwargs():
|
||||
e1 = MultiModalFieldElem(
|
||||
"audio",
|
||||
"a0",
|
||||
torch.zeros(1000, dtype=torch.bfloat16),
|
||||
MultiModalBatchedField(),
|
||||
)
|
||||
e2 = MultiModalFieldElem(
|
||||
"video",
|
||||
"v0",
|
||||
[torch.zeros(1000, dtype=torch.int8) for _ in range(4)],
|
||||
MultiModalFlatField(
|
||||
slices=[[slice(1, 2, 3), slice(4, 5, 6)], [slice(None, 2)]],
|
||||
@@ -119,21 +115,20 @@ def test_multimodal_kwargs():
|
||||
),
|
||||
)
|
||||
e3 = MultiModalFieldElem(
|
||||
"image",
|
||||
"i0",
|
||||
torch.zeros(1000, dtype=torch.int32),
|
||||
MultiModalSharedField(batch_size=4),
|
||||
)
|
||||
e4 = MultiModalFieldElem(
|
||||
"image",
|
||||
"i1",
|
||||
torch.zeros(1000, dtype=torch.int32),
|
||||
MultiModalFlatField(slices=[slice(1, 2, 3), slice(4, 5, 6)], dim=2),
|
||||
)
|
||||
audio = MultiModalKwargsItem.from_elems([e1])
|
||||
video = MultiModalKwargsItem.from_elems([e2])
|
||||
image = MultiModalKwargsItem.from_elems([e3, e4])
|
||||
mm = MultiModalKwargsItems.from_seq([audio, video, image])
|
||||
mm = MultiModalKwargsItems(
|
||||
{
|
||||
"audio": [MultiModalKwargsItem({"a0": e1})],
|
||||
"video": [MultiModalKwargsItem({"v0": e2})],
|
||||
"image": [MultiModalKwargsItem({"i0": e3, "i1": e4})],
|
||||
}
|
||||
)
|
||||
|
||||
# pack mm kwargs into a mock request so that it can be decoded properly
|
||||
req = MyRequest([mm])
|
||||
@@ -147,8 +142,8 @@ def test_multimodal_kwargs():
|
||||
|
||||
total_len = sum(memoryview(x).cast("B").nbytes for x in encoded)
|
||||
|
||||
# expected total encoding length, should be 14395, +-20 for minor changes
|
||||
assert 14375 <= total_len <= 14425
|
||||
# expected total encoding length, should be 14319, +-20 for minor changes
|
||||
assert 14300 <= total_len <= 14340
|
||||
decoded = decoder.decode(encoded).mm[0]
|
||||
assert isinstance(decoded, MultiModalKwargsItems)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user