Views
No views yet

[!WARNING] While the base versions of our LLäMmlein are quite good, our chat versions are research demonstrations and are not ready to be used in settings where close instruction following is necessary. Please check the paper for more details.
1import torch
2from peft import PeftConfig, PeftModel
3from transformers import AutoModelForCausalLM, AutoTokenizer
4
5torch.manual_seed(42)
6
7# script config
8base_model_name = "LSX-UniWue/LLaMmlein_1B_prerelease"
9chat_adapter_name = "LSX-UniWue/LLaMmlein_1B_chat_selected"
10device = "cuda" # or mps
11
12# chat history
13messages = [
14 {
15 "role": "user",
16 "content": """Na wie geht's?""",
17 },
18]
19
20# load model
21config = PeftConfig.from_pretrained(chat_adapter_name)
22base_model = model = AutoModelForCausalLM.from_pretrained(
23 base_model_name,
24 torch_dtype=torch.bfloat16,
25 device_map=device,
26)
27base_model.resize_token_embeddings(32064)
28model = PeftModel.from_pretrained(base_model, chat_adapter_name)
29tokenizer = AutoTokenizer.from_pretrained(chat_adapter_name)
30
31# encode message in "ChatML" format
32chat = tokenizer.apply_chat_template(
33 messages,
34 return_tensors="pt",
35 add_generation_prompt=True,
36).to(device)
37
38# generate response
39print(
40 tokenizer.decode(
41 model.generate(
42 chat,
43 max_new_tokens=300,
44 pad_token_id=tokenizer.pad_token_id,
45 eos_token_id=tokenizer.eos_token_id,
46 )[0],
47 skip_special_tokens=False,
48 )
49)
50