File size: 1,083 Bytes
1cf6170
 
 
4bf4a35
2454010
3f4ce15
2454010
1cf6170
2454010
 
3f4ce15
2454010
 
 
 
 
4bf4a35
 
2454010
4bf4a35
2454010
4bf4a35
1cf6170
 
 
 
 
 
 
 
 
 
 
3f4ce15
2454010
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
import os
os.environ["TRANSFORMERS_CACHE"] = "/app/cache"

import gradio as gr
from transformers import GPT2Tokenizer, GPT2LMHeadModel

model_id = "NlpHUST/gpt2-vietnamese"

tokenizer = GPT2Tokenizer.from_pretrained(model_id)
model = GPT2LMHeadModel.from_pretrained(model_id)

def generate(prompt, max_length=100, temperature=0.8):
    input_ids = tokenizer.encode(prompt, return_tensors="pt")
    output = model.generate(
        input_ids,
        max_length=max_length,
        do_sample=True,
        temperature=temperature,
        top_p=0.95
    )
    return tokenizer.decode(output[0], skip_special_tokens=True)

demo = gr.Interface(
    fn=generate,
    inputs=[
        gr.Textbox(label="Nhập nội dung đầu vào"),
        gr.Slider(50, 200, value=100, step=10, label="Độ dài tối đa"),
        gr.Slider(0.1, 1.0, value=0.8, step=0.05, label="Temperature")
    ],
    outputs="text",
    title="Sinh văn bản tiếng Việt bằng GPT-2",
    description="Dùng mô hình GPT-2 Vietnamese từ NlpHUST để sinh văn bản tiếng Việt."
)

demo.launch()