File size: 1,824 Bytes
db5ce52
1e3d921
 
 
213b8b2
db5ce52
 
 
1e3d921
db5ce52
1e3d921
db5ce52
1e3d921
db5ce52
1e3d921
db5ce52
17465f4
 
db5ce52
f44b467
 
db5ce52
1e3d921
 
 
 
db5ce52
1e3d921
 
db5ce52
1e3d921
 
db5ce52
1e3d921
 
 
db5ce52
1e3d921
db5ce52
1e3d921
 
 
db5ce52
1e3d921
db5ce52
1e3d921
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
---
language: fa
license: mit
pipeline_tag: text2text-generation

---


# PersianTextFormalizer

This model is fine-tuned to generate formal text from informal text based on the input provided. It has been fine-tuned on [Mohavere Dataset] (Takalli vahideh, Kalantari, Fateme, Shamsfard, Mehrnoush, Developing an Informal-Formal Persian Corpus, 2022.) using the pretrained model [persian-t5-formality-transfer](https://huggingface.co/erfan226/persian-t5-formality-transfer).

## Usage

```python

from transformers import (T5ForConditionalGeneration, AutoTokenizer, pipeline)
import torch

model = T5ForConditionalGeneration.from_pretrained('PardisSzah/PersianTextFormalizer')
tokenizer = AutoTokenizer.from_pretrained('PardisSzah/PersianTextFormalizer')

pipe = pipeline(task='text2text-generation', model=model, tokenizer=tokenizer)
def test_model(text):
  device = torch.device('cuda' if torch.cuda.is_available() else 'cpu')  
  model.to(device) 

  inputs = tokenizer.encode("informal: " + text, return_tensors='pt', max_length=128, truncation=True, padding='max_length')
  inputs = inputs.to(device) 

  outputs = model.generate(inputs, max_length=128, num_beams=4)
  print("Output:", tokenizer.decode(outputs[0], skip_special_tokens=True))  

text = "به یکی از دوستام میگم که چرا اینکار رو میکنی چرا به فکرت نباید برسه "
print("Original:", text)
test_model(text)

# output:  به یکی از دوستانم می گویم که چرا اینکار را می کنی چرا به فکرت نباید برسد

text = "اسم من پردیسه و خوشحالم که از این مدل خوشتون اومده "
print("Original:", text)
test_model(text)

# output:  اسم من پردیس است و خوشحالم که از این مدل خوشتان آمده است

```