|
import torch |
|
from transformers import AutoModelForCausalLM, AutoTokenizer |
|
from transformers import TextStreamer |
|
|
|
|
|
model_path = "/home/vscode/streamlit_space-1/trained/checkpoint-1000" |
|
model = AutoModelForCausalLM.from_pretrained(model_path) |
|
tokenizer = AutoTokenizer.from_pretrained(model_path) |
|
|
|
|
|
tokenizer.pad_token = tokenizer.eos_token |
|
|
|
|
|
streamer = TextStreamer(tokenizer) |
|
|
|
|
|
device = torch.device("cuda" if torch.cuda.is_available() else "cpu") |
|
model.to(device) |
|
|
|
|
|
|
|
def generate_text(prompt, max_length=2500): |
|
|
|
inputs = tokenizer(prompt, return_tensors="pt", padding=True, truncation=True).to( |
|
device |
|
) |
|
|
|
with torch.no_grad(): |
|
outputs = model.generate( |
|
inputs["input_ids"], |
|
attention_mask=inputs["attention_mask"], |
|
max_length=max_length, |
|
num_return_sequences=1, |
|
no_repeat_ngram_size=2, |
|
pad_token_id=tokenizer.eos_token_id, |
|
streamer=streamer, |
|
) |
|
|
|
|
|
generated_text = tokenizer.decode(outputs[0], skip_special_tokens=True) |
|
return generated_text |
|
|
|
|
|
|
|
if __name__ == "__main__": |
|
|
|
prompt = ( |
|
"As a language model, your task is to generate a Python script that retrieves the current date and time. " |
|
"Please provide a clear and concise script that accomplishes this task." |
|
) |
|
|
|
result = generate_text(prompt) |
|
print("Generated Python Script:") |
|
print(result) |
|
|