Determine block dtype in a unified manner (#325)
* Extract backend_dtype, remove duplicate DTYPE_MAP * Use bfloat16 as the default dtype, resolve dtype in load_pretrained_blockpull/329/head
parent
3e7ae5116d
commit
c839173e57
@ -0,0 +1,17 @@
|
||||
import pytest
|
||||
import torch
|
||||
|
||||
from petals.bloom.from_pretrained import load_pretrained_block
|
||||
from petals.client import DistributedBloomConfig
|
||||
from petals.server.block_utils import resolve_block_dtype
|
||||
from test_utils import MODEL_NAME
|
||||
|
||||
|
||||
@pytest.mark.forked
|
||||
@pytest.mark.parametrize("torch_dtype", [torch.float32, torch.float16, "auto"])
|
||||
def test_backend_dtype(torch_dtype):
|
||||
config = DistributedBloomConfig.from_pretrained(MODEL_NAME)
|
||||
block = load_pretrained_block(MODEL_NAME, 0, config, torch_dtype=torch_dtype)
|
||||
backend_dtype = resolve_block_dtype(config, torch_dtype)
|
||||
other_backend_dtype = next(block.parameters()).dtype if torch_dtype == "auto" else torch_dtype
|
||||
assert backend_dtype == other_backend_dtype
|
Loading…
Reference in New Issue