|
|
| import pytest |
| import torch |
|
|
| from fla.models import HGRN2Config |
|
|
| from .test_modeling_base import run_test_generation, run_test_model_forward_backward |
|
|
|
|
| |
| |
| |
| @pytest.mark.parametrize( |
| ['L', 'B', 'T', 'H', 'D', 'use_l2warp', 'dtype'], |
| [ |
| pytest.param(*test, id="L{}-B{}-T{}-H{}-D{}-use_l2warp{}-{}".format(*test)) |
| for test in [ |
| (4, 4, 1024, 4, 64, True, torch.bfloat16), |
| (4, 4, 1024, 4, 64, False, torch.bfloat16), |
| (4, 4, 1024, 4, 128, False, torch.bfloat16), |
| ] |
| ], |
| ) |
| def test_hgrn2_modeling( |
| L: int, |
| B: int, |
| T: int, |
| H: int, |
| D: int, |
| use_l2warp: bool, |
| dtype: torch.dtype, |
| ): |
| run_test_model_forward_backward(L, B, T, H, D, HGRN2Config, use_l2warp=use_l2warp, dtype=dtype) |
|
|
|
|
| |
| |
| |
| @pytest.mark.parametrize( |
| ['L', 'B', 'T', 'H', 'D', 'dtype'], |
| [ |
| pytest.param(*test, id="L{}-B{}-T{}-H{}-D{}-{}".format(*test)) |
| for test in [ |
| (2, 4, 2000, 8, 64, torch.float16), |
| ] |
| ], |
| ) |
| def test_generation( |
| L: int, |
| B: int, |
| T: int, |
| H: int, |
| D: int, |
| dtype: torch.dtype, |
| ): |
| run_test_generation(L, B, T, H, D, HGRN2Config, dtype) |
|
|