Copycats commited on
Commit
09c2212
โ€ข
1 Parent(s): 1491fa3

Update README.md

Browse files
Files changed (1) hide show
  1. README.md +3 -11
README.md CHANGED
@@ -48,32 +48,24 @@ def predict_answer(qa_text_pair):
48
  return_offsets_mapping=True
49
  )
50
  encodings = {key: torch.tensor([val]).to(device) for key, val in encodings.items()}
 
51
  # Predict
52
  with torch.no_grad():
53
  pred = model(encodings['input_ids'], encodings['attention_mask'])
54
  start_logits, end_logits = pred.start_logits, pred.end_logits
55
  token_start_index, token_end_index = start_logits.argmax(dim=-1), end_logits.argmax(dim=-1)
56
  pred_ids = encodings['input_ids'][0][token_start_index: token_end_index + 1]
 
57
  # Answer start/end offset of context.
58
  answer_start_offset = int(encodings['offset_mapping'][0][token_start_index][0][0])
59
  answer_end_offset = int(encodings['offset_mapping'][0][token_end_index][0][1])
60
  answer_offset = (answer_start_offset, answer_end_offset)
 
61
  # Decoding
62
  answer_text = tokenizer.decode(pred_ids) # text
63
  del encodings
64
  return {'answer_text':answer_text, 'answer_offset':answer_offset}
65
 
66
-
67
- # Load fine-tuned MRC model
68
- MODEL_PATH = "bespin-global/klue-bert-base-aihub-mrc"
69
- tokenizer = AutoTokenizer.from_pretrained(MODEL_PATH)
70
- model = AutoModelForQuestionAnswering.from_pretrained(MODEL_PATH)
71
-
72
- # gpu or cpu
73
- device = torch.device('cuda') if torch.cuda.is_available() else torch.device('cpu')
74
- model.to(device)
75
- model.eval()
76
-
77
  context = '''์• ํ”Œ M1(์˜์–ด: Apple M1)์€ ์• ํ”Œ์ด ์ž์‚ฌ์˜ ๋งคํ‚จํ† ์‹œ ์ปดํ“จํ„ฐ์šฉ์œผ๋กœ ์„ค๊ณ„ํ•œ ์ตœ์ดˆ์˜ ARM ๊ธฐ๋ฐ˜ SoC์ด๋‹ค.
78
  4์„ธ๋Œ€ ๋งฅ๋ถ ์—์–ด, 5์„ธ๋Œ€ ๋งฅ ๋ฏธ๋‹ˆ, 13์ธ์น˜ 5์„ธ๋Œ€ ๋งฅ๋ถ ํ”„๋กœ, 5์„ธ๋Œ€ ์•„์ดํŒจ๋“œ ํ”„๋กœ์— ์„ ๋ณด์˜€๋‹ค. 5๋‚˜๋…ธ๋ฏธํ„ฐ ๊ณต์ •์„ ์‚ฌ์šฉํ•˜์—ฌ ์ œ์กฐ๋œ ์ตœ์ดˆ์˜ ๊ฐœ์ธ์šฉ ์ปดํ“จํ„ฐ ์นฉ์ด๋‹ค.
79
  ์• ํ”Œ์€ ์ €์ „๋ ฅ ์‹ค๋ฆฌ์ฝ˜์˜, ์„ธ๊ณ„์—์„œ ๊ฐ€์žฅ ๋น ๋ฅธ ARM ๊ธฐ๋ฐ˜์˜ ์ค‘์•™ ์ฒ˜๋ฆฌ ์žฅ์น˜(CPU) ์ฝ”์–ด, ๊ทธ๋ฆฌ๊ณ  ์„ธ๊ณ„ ์ตœ๊ณ ์˜ CPU ์„ฑ๋Šฅ ๋Œ€ ์™€ํŠธ๋ฅผ ๊ฐ–์ถ”๊ณ  ์žˆ๋‹ค๊ณ  ์ฃผ์žฅํ•˜๊ณ  ์žˆ๋‹ค.'''
48
  return_offsets_mapping=True
49
  )
50
  encodings = {key: torch.tensor([val]).to(device) for key, val in encodings.items()}
51
+
52
  # Predict
53
  with torch.no_grad():
54
  pred = model(encodings['input_ids'], encodings['attention_mask'])
55
  start_logits, end_logits = pred.start_logits, pred.end_logits
56
  token_start_index, token_end_index = start_logits.argmax(dim=-1), end_logits.argmax(dim=-1)
57
  pred_ids = encodings['input_ids'][0][token_start_index: token_end_index + 1]
58
+
59
  # Answer start/end offset of context.
60
  answer_start_offset = int(encodings['offset_mapping'][0][token_start_index][0][0])
61
  answer_end_offset = int(encodings['offset_mapping'][0][token_end_index][0][1])
62
  answer_offset = (answer_start_offset, answer_end_offset)
63
+
64
  # Decoding
65
  answer_text = tokenizer.decode(pred_ids) # text
66
  del encodings
67
  return {'answer_text':answer_text, 'answer_offset':answer_offset}
68
 
 
 
 
 
 
 
 
 
 
 
 
69
  context = '''์• ํ”Œ M1(์˜์–ด: Apple M1)์€ ์• ํ”Œ์ด ์ž์‚ฌ์˜ ๋งคํ‚จํ† ์‹œ ์ปดํ“จํ„ฐ์šฉ์œผ๋กœ ์„ค๊ณ„ํ•œ ์ตœ์ดˆ์˜ ARM ๊ธฐ๋ฐ˜ SoC์ด๋‹ค.
70
  4์„ธ๋Œ€ ๋งฅ๋ถ ์—์–ด, 5์„ธ๋Œ€ ๋งฅ ๋ฏธ๋‹ˆ, 13์ธ์น˜ 5์„ธ๋Œ€ ๋งฅ๋ถ ํ”„๋กœ, 5์„ธ๋Œ€ ์•„์ดํŒจ๋“œ ํ”„๋กœ์— ์„ ๋ณด์˜€๋‹ค. 5๋‚˜๋…ธ๋ฏธํ„ฐ ๊ณต์ •์„ ์‚ฌ์šฉํ•˜์—ฌ ์ œ์กฐ๋œ ์ตœ์ดˆ์˜ ๊ฐœ์ธ์šฉ ์ปดํ“จํ„ฐ ์นฉ์ด๋‹ค.
71
  ์• ํ”Œ์€ ์ €์ „๋ ฅ ์‹ค๋ฆฌ์ฝ˜์˜, ์„ธ๊ณ„์—์„œ ๊ฐ€์žฅ ๋น ๋ฅธ ARM ๊ธฐ๋ฐ˜์˜ ์ค‘์•™ ์ฒ˜๋ฆฌ ์žฅ์น˜(CPU) ์ฝ”์–ด, ๊ทธ๋ฆฌ๊ณ  ์„ธ๊ณ„ ์ตœ๊ณ ์˜ CPU ์„ฑ๋Šฅ ๋Œ€ ์™€ํŠธ๋ฅผ ๊ฐ–์ถ”๊ณ  ์žˆ๋‹ค๊ณ  ์ฃผ์žฅํ•˜๊ณ  ์žˆ๋‹ค.'''