File size: 2,364 Bytes
4036dc9
 
0a5d1eb
 
3593d59
32af85e
3593d59
32af85e
 
1476869
c788953
1476869
4036dc9
1359c77
08e960c
6d31fe9
53f1db4
cb86670
 
0e7de09
 
cb86670
53f1db4
 
0e7de09
53f1db4
 
 
 
 
 
 
0e7de09
53f1db4
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2e12007
0e7de09
dcedf4d
53f1db4
dcedf4d
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
---
license: mit
language:
- bn
tags:
- Bangla-Key2Text
pipeline_tag: text2text-generation
datasets:
- tonmoytalukder/Bangla-Key2Text-2Million
widget:
- text: ঠিকমতো এই অভাবের তাই শিক্ষার্থীরা কারণে
- text: কেমন ডাটাসেট সময় ভাই বানাতে
---
This code imports the necessary libraries and loads <b>tonmoytalukder/Bangla-Key2Text</b> pre-trained model for sequence-to-sequence learning using the Hugging Face Transformers library. The model is designed to convert Bangla text from a key to a sentence.

<b>Using this model in transformers</b>
```python
!pip install sentencepiece
!pip install transformers
!pip install git+https://github.com/csebuetnlp/normalizer
!pip install torch

import torch
from transformers import AutoTokenizer, AutoModelForSeq2SeqLM
from normalizer import normalize

model_dir = 'tonmoytalukder/Bangla-Key2Text'
tokenizer = AutoTokenizer.from_pretrained(model_dir)
model = AutoModelForSeq2SeqLM.from_pretrained(model_dir)
device = torch.device("cuda" if torch.cuda.is_available() else "cpu")
model.to(device)

def predict(key): # Function to generate text from given keywords
    input_ids = tokenizer.encode(key, return_tensors='pt',add_special_tokens=True).to(device)

    with torch.no_grad():
      outputs = model.generate(
          input_ids=input_ids,
          max_length =512,
          num_beams =2,
          early_stopping =True,
          num_return_sequences = 1,
          top_k= 50,
          top_p= 0.95,
          repetition_penalty= 2.5,
          length_penalty= 1.0)

    preds = [tokenizer.decode(g,skip_special_tokens=True,clean_up_tokenization_spaces=True) for g in outputs]

    generated_text = preds[0]
    return generated_text


keywords = "কেমন ডাটাসেট সময় ভাই বানাতে" # Put as কেমন ডাটাসেট সময় ভাই বানাতে in the Hosted inference API. Don't put any punctuation mark.
predict(normalize(keywords)) # "ভাই, ডাটাসেট বানাতে কেমন সময় লাগে?"
```

The code defines a function called predict() that takes a string of keywords as input and returns a generated sentence based on those keywords. The function uses the pre-trained model to generate the sentence.