File size: 1,108 Bytes
942dd79
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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
import streamlit as st
from transformers import AutoModel, AutoTokenizer, trainer_utils

# Load the model and tokenizer outside the text generation function
device = "cpu"
model = AutoModel.from_pretrained("Tanrei/GPTSAN-japanese").to(device)
tokenizer = AutoTokenizer.from_pretrained("Tanrei/GPTSAN-japanese")

# Function to generate text
def generate_text(input_text, max_tokens=50):
    x_token = tokenizer(input_text, return_tensors="pt")
    trainer_utils.set_seed(30)
    input_ids = x_token.input_ids.to(device)
    gen_token = model.generate(input_ids, max_new_tokens=max_tokens)
    return tokenizer.decode(gen_token[0])

# Streamlit app
def main():
    st.title("Japanese Text Generator")
    
    # Input text
    input_text = st.text_area("Enter the starting text:", "織田信長は、")
    
    # Max tokens
    max_tokens = st.slider("Max Tokens", 1, 100, 50)
    
    # Generate button
    if st.button("Generate Text"):
        generated_text = generate_text(input_text, max_tokens)
        st.text("Generated Text:")
        st.write(generated_text)

if __name__ == "__main__":
    main()