Views
No views yet
generate() function. Let's look at an example.1import torch
2import transformers
3from transformers import AutoTokenizer, AutoModelForCausalLM
4tokenizer = AutoTokenizer.from_pretrained(model_path)
5model = AutoModelForCausalLM.from_pretrained(
6 model_path,
7 torch_dtype=torch.bfloat16,
8 device_map="auto",
9)
10messages = [
11 {"role": "system",
12 "content": "تو یک کارشناس ProcessMaker 4 و PHP هستی و باید فقط یک اسکریپت PHP استاندارد تولید کنی."},
13 {"role": "user", "content": "یک اسکریپت PHP ساده برای جمع دو عدد در ProcessMaker 4 بنویس."},
14]
15input_ids = tokenizer.apply_chat_template(
16 messages,
17 add_generation_prompt=True,
18 return_tensors="pt"
19).to(model.device)
20terminators = [
21 tokenizer.eos_token_id,
22 tokenizer.convert_tokens_to_ids("<|eot_id|>")
23]
24outputs = model.generate(
25 input_ids,
26 max_new_tokens=256,
27 eos_token_id=terminators,
28 do_sample=True,
29 temperature=0.6,
30 top_p=0.9,
31)
32response = outputs[0][input_ids.shape[-1]:]
33print(tokenizer.decode(response, skip_special_tokens=True))