Skip to content

Commit 8b30acd

Browse files
authored
fix module attribute set, reset, set (#1403)
1 parent 02efb31 commit 8b30acd

File tree

2 files changed

+7
-0
lines changed

2 files changed

+7
-0
lines changed

python/mlx/nn/layers/base.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -112,6 +112,7 @@ def __setattr__(self, key: str, val: Any):
112112
self[key] = val
113113
else:
114114
super(Module, self).__setattr__(key, val)
115+
self.pop(key, None)
115116

116117
def load_weights(
117118
self,

python/tests/test_nn.py

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -67,6 +67,12 @@ def initialize(self):
6767
model = Model()
6868
self.assertTrue(mx.array_equal(model.val, mx.array(1.0)))
6969

70+
model.val = None
71+
self.assertEqual(model.val, None)
72+
73+
model.val = mx.array([3])
74+
self.assertEqual(model.val.item(), 3)
75+
7076
def test_model_with_dict(self):
7177
class DictModule(nn.Module):
7278
def __init__(self):

0 commit comments

Comments
 (0)