Views
No views yet
1input : tám giờ chín phút ngày mười tám tháng năm năm hai nghìn không trăm hai mươi hai
2output : 8h9 18/5/2022
3
4input : mã số quy đê tê tê đê hai tám chéo hai không không ba
5output : mã số qdttd28/2003
6
7input : thể tích tám mét khối trọng lượng năm mươi ki lô gam
8output : thể tích 8 m3 trọng lượng 50 kg
9
10input : ngày hai tám tháng tư cô vít bùng phát ở sờ cốt lờn chiếm tám mươi phần trăm là biến chủng đen ta và bê ta
11ex_vocab : ['scotland', 'covid', 'delta', 'beta']
12output : 28/4 covid bùng phát ở scotland chiếm 80 % là biến chủng delta và beta
131import torch
2import model_handling
3from data_handling import DataCollatorForNormSeq2Seq
4from model_handling import EncoderDecoderSpokenNorm
5import os
6os.environ["CUDA_VISIBLE_DEVICES"] = ""1tokenizer = model_handling.init_tokenizer()
2model = EncoderDecoderSpokenNorm.from_pretrained('nguyenvulebinh/spoken-norm', cache_dir=model_handling.cache_dir)
3data_collator = DataCollatorForNormSeq2Seq(tokenizer)1bias_list = ['scotland', 'covid', 'delta', 'beta']
2input_str = 'ngày hai tám tháng tư cô vít bùng phát ở sờ cốt lờn chiếm tám mươi phần trăm là biến chủng đen ta và bê ta'1inputs = tokenizer([input_str])
2input_ids = inputs['input_ids']
3attention_mask = inputs['attention_mask']
4if len(bias_list) > 0:
5 bias = data_collator.encode_list_string(bias_list)
6 bias_input_ids = bias['input_ids']
7 bias_attention_mask = bias['attention_mask']
8else:
9 bias_input_ids = None
10 bias_attention_mask = None
11
12inputs = {
13 "input_ids": torch.tensor(input_ids),
14 "attention_mask": torch.tensor(attention_mask),
15 "bias_input_ids": bias_input_ids,
16 "bias_attention_mask": bias_attention_mask,
17}1outputs = model.generate(**inputs, output_attentions=True, num_beams=1, num_return_sequences=1)
2
3for output in outputs.cpu().detach().numpy().tolist():
4 # print('\n', tokenizer.decode(output, skip_special_tokens=True).split(), '\n')
5 print(tokenizer.sp_model.DecodePieces(tokenizer.decode(output, skip_special_tokens=True).split()))28/4 covid bùng phát ở scotland chiếm 80 % là biến chủng delta và beta1outputs = model.generate(**{
2 "input_ids": torch.tensor(input_ids),
3 "attention_mask": torch.tensor(attention_mask),
4 "bias_input_ids": None,
5 "bias_attention_mask": None,
6}, output_attentions=True, num_beams=1, num_return_sequences=1)
7
8for output in outputs.cpu().detach().numpy().tolist():
9 # print('\n', tokenizer.decode(output, skip_special_tokens=True).split(), '\n')
10 print(tokenizer.sp_model.DecodePieces(tokenizer.decode(output, skip_special_tokens=True).split()))28/4 cô vít bùng phát ở sờ cốt lờn chiếm 80 % là biến chủng đen ta và bê ta