File size: 2,256 Bytes
a334812
 
 
 
 
 
 
 
 
 
 
 
 
 
8dc740e
a334812
 
 
 
 
 
 
 
 
 
 
 
 
031192b
a334812
 
031192b
 
a334812
 
 
 
 
 
74e721c
a334812
74e721c
031192b
74e721c
a334812
8dc740e
a334812
 
 
031192b
a334812
 
 
 
 
 
 
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
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" if torch.cuda.is_available() else "cpu"
fp16 = device != 'cpu'

def transl(text, src='en', dest='hy' ):
    return translator.translate(text, src=src, dest=dest).text
    
def generate(prompt: str, length=500):
            input_ids = tokenizer.encode(prompt, return_tensors="pt").to(device)
            out = model.generate(input_ids, 
                    min_length=length, 
                    max_length=length, 
                    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')
            
length = gr.inputs.Slider(200, 1000)

contexto = gr.inputs.Textbox(lines=10, placeholder="Write your text here")

interface = gr.Interface.load("huggingface/sberbank-ai/mGPT-armenian",
            description=description,
            examples=examples, 
            fn=generate,
            inputs=[contexto,length],#"text",
            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)