jerry3638 commited on
Commit
7471d52
·
1 Parent(s): b6c95e9

Create app.py

Browse files
Files changed (1) hide show
  1. app.py +43 -0
app.py ADDED
@@ -0,0 +1,43 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import streamlit as st
2
+ from transformers import pipeline, set_seed
3
+
4
+ # 设置全局随机种子,确保每次生成的结果相同
5
+ set_seed(42)
6
+
7
+ def app():
8
+ # 创建Streamlit应用程序
9
+ st.title("使用gpt2的文本生成")
10
+
11
+ options = ['中文','英文']
12
+ choice = st.radio('不同语言使用不同模型:', options)
13
+
14
+ input_text = st.text_input("请输入您要生成的文本", value="")
15
+ maxlen = st.text_input("请输入生成文本的最大长度,越长越慢,不要超过1000", value="30")
16
+ button_generate = st.button("生成")
17
+ output_text = st.empty()
18
+
19
+ def generate_text(input_text):
20
+ # 加载预训练模型
21
+ model="/Users/admin/mypy/hugging-models/gpt2"
22
+ if choice == '中文':
23
+ model = 'uer/gpt2-chinese-cluecorpussmall'
24
+ generator = pipeline("text-generation", model)
25
+
26
+ # 生成文本
27
+ output = generator(input_text, max_length=int(maxlen), num_return_sequences=1)
28
+
29
+ # 提取生成的文本
30
+ generated_text = output[0]["generated_text"].strip()
31
+
32
+ return generated_text
33
+
34
+ if button_generate:
35
+ # 生成文本
36
+ generated_text = generate_text(input_text)
37
+
38
+ # 显示生成的文本
39
+ output_text.success(generated_text)
40
+
41
+ if __name__ == "__main__":
42
+ # 运行应用程序
43
+ app()