Update model.py
Browse files
model.py
CHANGED
|
@@ -43,7 +43,10 @@ class MedicalMasterAI(nn.Module):
|
|
| 43 |
def __init__(self, vocab_size=115, n_layer=48, n_head=8, n_embd=768):
|
| 44 |
super().__init__()
|
| 45 |
self.token_embedding = nn.Embedding(vocab_size, n_embd)
|
| 46 |
-
|
|
|
|
|
|
|
|
|
|
| 47 |
self.blocks = nn.Sequential(*[Block(n_embd, n_head) for _ in range(n_layer)])
|
| 48 |
self.ln_f = nn.LayerNorm(n_embd)
|
| 49 |
self.lm_head = nn.Linear(n_embd, vocab_size)
|
|
@@ -52,4 +55,4 @@ class MedicalMasterAI(nn.Module):
|
|
| 52 |
b, t = idx.shape
|
| 53 |
x = self.token_embedding(idx) + self.position_embedding[:, :t, :]
|
| 54 |
x = self.blocks(x)
|
| 55 |
-
return self.lm_head(self.ln_f(x)
|
|
|
|
| 43 |
def __init__(self, vocab_size=115, n_layer=48, n_head=8, n_embd=768):
|
| 44 |
super().__init__()
|
| 45 |
self.token_embedding = nn.Embedding(vocab_size, n_embd)
|
| 46 |
+
|
| 47 |
+
# ⚠️ التعديل الجذري هنا: تم تغيير 1024 إلى 256 ليتطابق مع أوزانك المدربة ⚠️
|
| 48 |
+
self.position_embedding = nn.Parameter(torch.zeros(1, 256, n_embd))
|
| 49 |
+
|
| 50 |
self.blocks = nn.Sequential(*[Block(n_embd, n_head) for _ in range(n_layer)])
|
| 51 |
self.ln_f = nn.LayerNorm(n_embd)
|
| 52 |
self.lm_head = nn.Linear(n_embd, vocab_size)
|
|
|
|
| 55 |
b, t = idx.shape
|
| 56 |
x = self.token_embedding(idx) + self.position_embedding[:, :t, :]
|
| 57 |
x = self.blocks(x)
|
| 58 |
+
return self.lm_head(self.ln_f(x)
|