| |
|
|
|
|
| import transformers |
| import gradio as gr |
| import torch |
|
|
| from transformers import AutoTokenizer, AutoModelForSeq2SeqLM |
|
|
| tokenizer = AutoTokenizer.from_pretrained("humarin/chatgpt_paraphraser_on_T5_base") |
| model = AutoModelForSeq2SeqLM.from_pretrained("humarin/chatgpt_paraphraser_on_T5_base") |
|
|
| def paraphrase( |
| Content_to_Rephrase, |
| num_beams: 3, |
| num_return_sequences=3, |
| ): |
| input_ids = tokenizer( |
| f'paraphrase: {Content_to_Rephrase}', |
| return_tensors="pt", padding="longest", |
|
|
| ).input_ids |
| |
| outputs = model.generate(input_ids, num_beams=num_beams, num_return_sequences=num_return_sequences) |
|
|
| res = tokenizer.batch_decode(outputs, skip_special_tokens=True) |
| res1 = res [0] |
| res2 = res [1] |
| res3 = res [2] |
| |
| |
| return res1, res2, res3 |
|
|
| output1 = gr.Textbox(label="Rephrased: Option 1") |
| output2 = gr.Textbox(label="Rephrased: Option 2") |
| output3 = gr.Textbox(label="Rephrased: Option 3") |
|
|
| input = gr.Textbox(lines=10) |
|
|
| iface = gr.Interface(fn=paraphrase, |
| inputs=[input], |
| outputs=[output1, output2, output3], |
| title="Free AI Sentence Rephraser", |
| description="<ul><li>Paste text in the input box and press 'Submit'.</li><li>Max length: ~35 words (larger content is summarized)</li><li>The rephrased sentences *may not* be better than the original input.</li><li>Model 'humarin' pre-trained by ChatGPT. Temp = 0.7</li></ul>", |
| examples=[ |
| ["With the humble is wisdom."], |
| ["Hatred stirs up strife."], |
| ["The way of a fool is right in his own eyes."], |
| ["Righteousness leads to life."], |
| ], |
| cache_examples=True, |
| ) |
|
|
| iface.launch() |