Views
No views yet
1# Load model and translate
2from src.models.transformer import Transformer
3from src.inference.translator import Translator
4from src.data.vocabulary import Vocabulary
5import torch
6
7# Load vocabularies
8src_vocab = Vocabulary.load('src_vocab.json')
9tgt_vocab = Vocabulary.load('tgt_vocab.json')
10
11# Load model
12model = Transformer(
13 src_vocab_size=len(src_vocab),
14 tgt_vocab_size=len(tgt_vocab),
15 d_model=512,
16 n_heads=8,
17 n_encoder_layers=6,
18 n_decoder_layers=6,
19 d_ff=2048,
20 dropout=0.1,
21 max_seq_length=512,
22 pad_idx=0
23)
24
25checkpoint = torch.load('best_model.pt')
26model.load_state_dict(checkpoint['model_state_dict'])
27
28# Create translator
29translator = Translator(
30 model=model,
31 src_vocab=src_vocab,
32 tgt_vocab=tgt_vocab,
33 device='cuda',
34 decoding_method='beam',
35 beam_size=5
36)
37
38# Translate
39vietnamese_text = "Xin chào, bạn khỏe không?"
40translation = translator.translate(vietnamese_text)
41print(translation)1@misc{nlp-transformer-mt,
2 author = {MothMalone},
3 title = {Transformer Machine Translation Vi-En},
4 year = {2025},
5 publisher = {HuggingFace},
6 howpublished = {\url{https://huggingface.co/MothMalone}}
7}