Spaces:
Build error
Build error
| import streamlit as st | |
| import torch | |
| from transformers import BioGptTokenizer, BioGptForCausalLM, set_seed | |
| # Load model and tokenizer | |
| def load_model(): | |
| tokenizer = BioGptTokenizer.from_pretrained("microsoft/biogpt") | |
| model = BioGptForCausalLM.from_pretrained("microsoft/biogpt") | |
| return model, tokenizer | |
| # Initialize model and tokenizer | |
| model, tokenizer = load_model() | |
| # Streamlit Interface | |
| st.title("BioGPT Text Generator") | |
| st.markdown("Generate text completions using **BioGPT**. Enter an incomplete sentence below and let BioGPT complete it!") | |
| # User Input | |
| sentence = st.text_area("Enter an incomplete sentence:", | |
| placeholder="Chest pain can be caused by various factors, including heart-related conditions, but it is important to also consider other causes such as" | |
| ) | |
| if st.button("Generate Text"): | |
| if not sentence.strip(): | |
| st.error("Please enter a valid sentence to generate text.") | |
| else: | |
| with st.spinner("Generating text..."): | |
| # Tokenize input | |
| inputs = tokenizer(sentence, return_tensors="pt") | |
| # Set random seed for reproducibility | |
| set_seed(42) | |
| # Generate text | |
| with torch.no_grad(): | |
| beam_output = model.generate( | |
| **inputs, | |
| max_length=1024, | |
| do_sample=True, | |
| top_p=0.9, | |
| top_k=50 | |
| ) | |
| # Decode and display the result | |
| generated_text = tokenizer.decode(beam_output[0], skip_special_tokens=True) | |
| st.subheader("Generated Text:") | |
| st.write(generated_text) | |