""" Inference script for bitskip-v3-earlyexit """ import torch from transformers import AutoTokenizer, AutoModelForCausalLM def main(): # Load from HuggingFace Hub or local path model_path = "." # Current directory or specify repo_id print("Loading model...") model = AutoModelForCausalLM.from_pretrained(model_path, trust_remote_code=True) tokenizer = AutoTokenizer.from_pretrained(model_path) model.eval() print("Model loaded!") # Example generation prompt = "Once upon a time" inputs = tokenizer(prompt, return_tensors="pt") print(f"\nPrompt: {prompt}\n") # Full model print("Generating with all layers...") outputs = model.generate(**inputs, max_length=100, pad_token_id=tokenizer.eos_token_id) print(tokenizer.decode(outputs[0], skip_special_tokens=True)) # Early exit at layer 12 print("\nGenerating with early exit at layer 12...") model.set_exit_layer(12) outputs = model.generate(**inputs, max_length=100, pad_token_id=tokenizer.eos_token_id) print(tokenizer.decode(outputs[0], skip_special_tokens=True)) if __name__ == "__main__": main()