"""Generate a short TinyStories-style continuation from the local HF checkpoint.""" from pathlib import Path import torch from transformers import AutoModelForCausalLM, AutoTokenizer def main() -> None: model_dir = Path(__file__).resolve().parent / "hf" device = torch.device("cuda" if torch.cuda.is_available() else "cpu") tokenizer = AutoTokenizer.from_pretrained(model_dir) model = AutoModelForCausalLM.from_pretrained(model_dir, dtype=torch.float32).to(device) model.eval() prompt = "Once upon" input_ids = torch.tensor( [[tokenizer.bos_token_id] + tokenizer.encode(prompt, add_special_tokens=False)], dtype=torch.long, device=device, ) torch.manual_seed(1234) with torch.no_grad(): output = model.generate( input_ids=input_ids, max_new_tokens=100, do_sample=True, temperature=0.8, top_p=0.95, top_k=40, repetition_penalty=1.1, pad_token_id=tokenizer.pad_token_id, eos_token_id=tokenizer.eos_token_id, ) print(tokenizer.decode(output[0].tolist(), skip_special_tokens=True)) if __name__ == "__main__": main()