File size: 2,574 Bytes
c31b7fb 139dc75 c31b7fb 139dc75 c31b7fb 139dc75 c31b7fb 139dc75 c31b7fb 139dc75 c31b7fb 139dc75 c31b7fb 139dc75 c31b7fb 139dc75 c31b7fb 139dc75 c31b7fb ae4f900 c31b7fb 8d3dced c31b7fb 8d3dced c31b7fb 8d3dced c31b7fb 8d3dced c31b7fb 8d3dced c31b7fb 8d3dced c31b7fb 8d3dced c31b7fb ae4f900 c31b7fb ae4f900 |
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 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 |
# pip install transformers 依赖在requirements.txt里文件安装
import streamlit as st
from transformers import pipeline, set_seed
# 设置全局随机种子,确保每次生成的结果相同
set_seed(42)
options = ['中文','英文']
choice = st.radio('不同语言使用不同模型:', options)
input_text = st.text_input("请输入您要生成的文本", value="")
maxlen = st.text_input("请输入生成文本的最大长度,越长越慢,不要超过1000", value="30")
button_generate = st.button("生成")
output_text = st.empty()
def generate_text(input_text):
# 加载预训练模型
if choice == '中文':
model = 'uer/gpt2-chinese-cluecorpussmall' # 纠正后的应该可以
#model = 'gpt2-chinese-cluecorpussmall' # 会自动下载
generator = pipeline("text-generation", model)
# 生成文本
output = generator(input_text, max_length=int(maxlen), num_return_sequences=1)
# 提取生成的文本
generated_text = output[0]["generated_text"].strip()
return generated_text
if button_generate:
# 生成文本
generated_text = generate_text(input_text)
# 显示生成的文本
output_text.success(generated_text)
# import streamlit as st
# from transformers import pipeline, set_seed
# # 设置全局随机种子,确保每次生成的结果相同
# set_seed(42)
# def app():
# # 创建Streamlit应用程序
# st.title("使用gpt2的文本生成")
# options = ['中文','英文']
# choice = st.radio('不同语言使用不同模型:', options)
# input_text = st.text_input("请输入您要生成的文本", value="")
# maxlen = st.text_input("请输入生成文本的最大长度,越长越慢,不要超过1000", value="30")
# button_generate = st.button("生成")
# output_text = st.empty()
# def generate_text(input_text):
# # 加载预训练模型
# model="gpt2"
# if choice == '中文':
# model = 'uer/gpt2-chinese-cluecorpussmall'
# generator = pipeline("text-generation", model)
# # 生成文本
# output = generator(input_text, max_length=int(maxlen), num_return_sequences=1)
# # 提取生成的文本
# generated_text = output[0]["generated_text"].strip()
# return generated_text
# if button_generate:
# # 生成文本
# generated_text = generate_text(input_text)
# # 显示生成的文本
# output_text.success(generated_text)
# if __name__ == "__main__":
# # 运行应用程序
# app()
|