DeepSeek-V4-Flash-Vision-NVFP4 / tests /test_moonvit_model.py
webbrain-one's picture
Fix SGLang multimodal lifecycle and document B200 startup
5a88272 verified
Raw
History Blame Contribute Delete
1.32 kB
import ast
import unittest
from pathlib import Path
ROOT = Path(__file__).resolve().parents[1]
class MoonViTModelSourceTests(unittest.TestCase):
def test_image_features_are_packed_for_sglang_embedding_cache(self):
path = (
ROOT
/ "sglang_ext"
/ "deepseek_vision_sglang"
/ "models"
/ "deepseek_v4_moonvit.py"
)
module = ast.parse(path.read_text(encoding="utf-8"))
model = next(
node
for node in module.body
if isinstance(node, ast.ClassDef) and node.name == "DeepseekV4ForCausalLM"
)
method = next(
node
for node in model.body
if isinstance(node, ast.FunctionDef) and node.name == "get_image_feature"
)
returned = next(node for node in method.body if isinstance(node, ast.Return))
self.assertEqual(ast.unparse(returned.value.func), "torch.cat")
self.assertEqual(
ast.unparse(returned.value.args[0]),
"mm_projection_auto(self.mm_projector, image_features)",
)
self.assertEqual(
[(keyword.arg, ast.literal_eval(keyword.value)) for keyword in returned.value.keywords],
[("dim", 0)],
)
if __name__ == "__main__":
unittest.main()