TanTran123 commited on
Commit
1b801b9
·
verified ·
1 Parent(s): f7ebc88

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +25 -4
app.py CHANGED
@@ -1,3 +1,11 @@
 
 
 
 
 
 
 
 
1
  def generate_bio(prompt, max_length, temperature):
2
  prompt = prompt.strip()
3
  if not prompt:
@@ -8,22 +16,35 @@ def generate_bio(prompt, max_length, temperature):
8
  try:
9
  outputs = text_generator(
10
  full_prompt,
11
- max_length=min(max_length, 80), # Giới hạn cứng tránh vượt quá
12
  temperature=temperature,
13
  do_sample=True,
14
  top_k=50,
15
  top_p=0.95,
16
  num_return_sequences=1,
17
- eos_token_id=text_generator.tokenizer.eos_token_id # Dừng đúng chỗ
18
  )
19
- # Cắt kết quả đúng phần sinh ra
20
  result = outputs[0]["generated_text"].replace(full_prompt, "").strip()
21
- # Giới hạn độ dài đầu ra
22
  if len(result) > max_length:
23
  result = result[:max_length].rsplit('.', 1)[0] + '.'
24
  return result if result else "⚠️ Không tạo được bio phù hợp. Hãy thử lại với mô tả khác."
25
  except Exception as e:
26
  return f"🚫 Lỗi xảy ra khi sinh văn bản: {str(e)}"
27
 
 
 
 
28
 
 
 
 
 
 
 
 
 
 
 
29
 
 
 
 
1
+ import gradio as gr
2
+ from transformers import pipeline, set_seed
3
+
4
+ # Load model
5
+ text_generator = pipeline("text-generation", model="NlpHUST/gpt2-vietnamese", tokenizer="NlpHUST/gpt2-vietnamese")
6
+ set_seed(42)
7
+
8
+ # Hàm sinh bio
9
  def generate_bio(prompt, max_length, temperature):
10
  prompt = prompt.strip()
11
  if not prompt:
 
16
  try:
17
  outputs = text_generator(
18
  full_prompt,
19
+ max_length=min(max_length, 80),
20
  temperature=temperature,
21
  do_sample=True,
22
  top_k=50,
23
  top_p=0.95,
24
  num_return_sequences=1,
25
+ eos_token_id=text_generator.tokenizer.eos_token_id
26
  )
 
27
  result = outputs[0]["generated_text"].replace(full_prompt, "").strip()
 
28
  if len(result) > max_length:
29
  result = result[:max_length].rsplit('.', 1)[0] + '.'
30
  return result if result else "⚠️ Không tạo được bio phù hợp. Hãy thử lại với mô tả khác."
31
  except Exception as e:
32
  return f"🚫 Lỗi xảy ra khi sinh văn bản: {str(e)}"
33
 
34
+ # Tạo Gradio app
35
+ with gr.Blocks() as app:
36
+ gr.Markdown("✨ **AI Viết Bio Thương Hiệu Cá Nhân (Tiếng Việt)**")
37
 
38
+ with gr.Row():
39
+ with gr.Column():
40
+ input_text = gr.Textbox(label="🧠 Mô tả bản thân / điểm mạnh")
41
+ max_len = gr.Slider(20, 300, value=60, label="📏 Độ dài tối đa")
42
+ temp = gr.Slider(0.1, 1.0, value=0.8, label="🌡️ Mức sáng tạo (temperature)")
43
+ submit_btn = gr.Button("Submit")
44
+ with gr.Column():
45
+ output = gr.Textbox(label="✅ Đoạn bio gợi ý", lines=6)
46
+
47
+ submit_btn.click(fn=generate_bio, inputs=[input_text, max_len, temp], outputs=output)
48
 
49
+ # 🚀 Quan trọng: Lệnh launch app
50
+ app.launch()