Fixes for evaluation
This commit is contained in:
@@ -1,13 +1,13 @@
|
||||
import torch
|
||||
from Project_Model.Libs.Embedder import NanoSocratesEmbedder
|
||||
from Project_Model.Libs.Transformer import TrainingModel, NanoSocraDecoder, NanoSocratEncoder, DeToken, Encoder, Decoder
|
||||
from Project_Model.Libs.Transformer import TrainingModel,NanoSocratesCore, NanoSocraDecoder, NanoSocratEncoder, DeToken, Encoder, Decoder
|
||||
from .ModelType import ModelType
|
||||
|
||||
|
||||
|
||||
def decompose_nano_socrates(
|
||||
model: TrainingModel, vocabulary_size: int, embedding_size: int
|
||||
) -> tuple[TrainingModel, NanoSocratEncoder, NanoSocraDecoder]:
|
||||
model: TrainingModel | NanoSocratesCore , vocabulary_size: int, embedding_size: int
|
||||
) -> tuple[TrainingModel | NanoSocratesCore, NanoSocratEncoder, NanoSocraDecoder]:
|
||||
|
||||
encoder_pieces, decoder_pieces = model.take_pieces()
|
||||
encoder_embedder, encoder, encoder_detokener = encoder_pieces
|
||||
@@ -19,6 +19,26 @@ def decompose_nano_socrates(
|
||||
NanoSocraDecoder(decoder_embedder, decoder, decoder_detokener),
|
||||
)
|
||||
|
||||
def train2inference(
|
||||
train_model: TrainingModel,
|
||||
inference_model: NanoSocratesCore
|
||||
) -> NanoSocratesCore:
|
||||
|
||||
encoder_pieces, decoder_pieces = train_model.take_pieces()
|
||||
enc_emb, encoder, enc_det = encoder_pieces
|
||||
dec_emb, decoder, dec_det = decoder_pieces
|
||||
inference_model.load_pieces(
|
||||
enc_emb,
|
||||
dec_emb,
|
||||
encoder,
|
||||
decoder,
|
||||
enc_det,
|
||||
dec_det
|
||||
)
|
||||
|
||||
return inference_model
|
||||
|
||||
|
||||
|
||||
def create_standalone_model(
|
||||
model_type: ModelType,
|
||||
|
||||
Reference in New Issue
Block a user