File size: 2,375 Bytes
a334812
 
 
64a5201
a334812
64a5201
a334812
 
 
 
 
 
 
 
3221dbb
a334812
 
 
 
 
 
 
629af13
a334812
970d3bb
a334812
 
 
 
84ff7f1
 
 
a9069b3
a334812
 
95590bf
 
a334812
 
 
 
 
 
74e721c
a334812
031192b
84ff7f1
 
 
a334812
8dc740e
a334812
 
 
84ff7f1
a334812
 
 
 
e8482ee
a334812
95590bf
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
59
60
61
62
63
import torch
import gradio as gr
from transformers import GPT2LMHeadModel, GPT2Tokenizer
#from googletrans import Translator

#translator = Translator()
tokenizer = GPT2Tokenizer.from_pretrained("sberbank-ai/mGPT-armenian")
model = GPT2LMHeadModel.from_pretrained("sberbank-ai/mGPT-armenian")
#model.cuda()
#model.eval()

description = "Multilingual generation with mGPT"
title = "Generate your own example"

examples = [["""Երեւանից ծրագրավորողները ներկայացրել են նոր գործարք: Այն կոչվում է"""]]#, "Նորություններ. Բրազիլացի գիտնականները հայտնաբերել են Ուութլանդի արեւմուտքում ապրող գաճաճ միաեղջյուրների հազվագյուտ տեսակին:"

article = (
    "<p style='text-align: center'>"
    "<a href='https://github.com/ai-forever/mgpt'>GitHub</a>  "
    "</p>"
)

device = "cuda:0" if torch.cuda.is_available() else "cpu"
fp16 = device != 'cpu'
model.to(device).eval()

def transl(text, src='en', dest='hy' ):
    return translator.translate(text, src=src, dest=dest).text
    
def generate(prompt: str):
            #print(prompt)
            #print(length, type(length))
            #length = int(length)
            input_ids = tokenizer.encode(prompt, return_tensors="pt").to(device)
            out = model.generate(input_ids, 
                    min_length=200, 
                    max_length=700, 
                    top_p=0.95, 
                    top_k=0,
                    temperature=0.9,
                    no_repeat_ngram_size=5
            )
            generated_text = list(map(tokenizer.decode, out))[0]
            return generated_text #+ '\n\n'+transl(generated_text, src='hy', dest='en')
            


#contexto = gr.inputs.Textbox(lines=10, placeholder="Write your text here")
#length = gr.inputs.Slider(200, 1000)

interface = gr.Interface.load("huggingface/sberbank-ai/mGPT-armenian",
            description=description,
            examples=examples, 
            fn=generate,
            inputs="text",#[contexto,length],#
            outputs='text',
            thumbnail = 'https://habrastorage.org/r/w1560/getpro/habr/upload_files/26a/fa1/3e1/26afa13e1d1a56f54c7b0356761af7b8.png',
            theme = "peach",
            article = article
) 

interface.launch(enable_queue=True)