File size: 2,776 Bytes
0fd7b28
e85570c
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
dc3475e
 
0fd7b28
dc3475e
2f1925b
5a8655c
 
42a4fb9
 
 
2f1925b
8ed4b31
 
dc3475e
8ed4b31
30016b4
63e1766
 
5a8655c
0fd7b28
e85570c
f128f38
63e1766
e85570c
 
 
5a8655c
 
a3ae48f
 
e85570c
a3ae48f
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
import gradio as gr 
from transformers import AutoTokenizer, TFGPT2LMHeadModel

review_model = TFGPT2LMHeadModel.from_pretrained("kmkarakaya/turkishReviews-ds")
review_tokenizer = AutoTokenizer.from_pretrained("kmkarakaya/turkishReviews-ds")

def generate_review(prompt):
  input_ids = review_tokenizer.encode(prompt, return_tensors='tf')
  context_length = 40
  output = review_model.generate(
      input_ids, 
      do_sample=True,
      max_length=context_length, 
      top_k=10,
      no_repeat_ngram_size=2, 
      early_stopping=True
  )
  return(review_tokenizer.decode(output[0], skip_special_tokens=True))
  
  

title="Turkish Review Generator: A GPT2 based Text Generator Trained with a Custom Dataset"
description= """Generate a review in Turkish by providing a prompt. 
Generation takes 15-20 seconds on average.
You can share your experience by Flagging.
Enjoy!

NOTE: Examples some time can generate ERROR. Thus you may want to enter your prompt manually. :)"""
article = """<p style='text-align: center'>On YouTube:</p>
            <p style='text-align: center'><a href='https://youtube.com/playlist?list=PLQflnv_s49v9d9w-L0S8XUXXdNks7vPBL' target='_blank'>How to Train a Hugging Face Causal Language Model from Scratch with a Custom Dataset and a Custom Tokenizer?</a></p> 
            <p style='text-align: center'><a href='https://youtube.com/playlist?list=PLQflnv_s49v8aajw6m9MRNbAAbL63flKD' target='_blank'>Hugging Face kütüphanesini kullanarak bir GPT2 Transformer Dil Modelini Kendi Veri Setimizle nasıl eğitip kullanabiliriz? (in Turkish)</a></p>
            <p style='text-align: center'>On Medium:</p>
            <p style='text-align: center'><a href='https://medium.com/deep-learning-with-keras/how-to-train-a-hugging-face-causal-language-model-from-scratch-8d08d038168f' target='_blank'>How to Train a Hugging Face Causal Language Model from Scratch with a Custom Dataset and a Custom Tokenizer?</a></p>"""                    
examples=["Bir hafta önce aldığım cep telefonu",
          "Tatil için rezervasyon yaptırdım",
          "Geçen ay sipariş verdiğim",
          "Spor salonuna abone oldum"] 

demo = gr.Interface(fn=generate_review, 
                    inputs= gr.Textbox(lines=5, placeholder="enter or select a prompt below..."),
                    outputs= gr.Textbox(lines=5, placeholder="genereated review will be here..."),
                    examples=examples,
                    title=title,
                    description= description,
                    article = article,
                    allow_flagging="manual",
                    flagging_options=["reasonable", "non-sense", "moderate"]
                    #flagging_dir='./flags'
                    )
demo.launch('share=True', 'enable_queue=True')