|
|
|
|
|
|
|
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() |