Views
No views yet

1from transformers import AutoModelForCausalLM
2import torch
3from peft import PeftModel
4from transformers import pipeline
5
6model = AutoModelForCausalLM.from_pretrained(
7 "meta-llama/Meta-Llama-3-8B",
8 device_map="auto",
9 torch_dtype=torch.float16
10)
11
12model.config.use_cache = False
13model = PeftModel.from_pretrained(
14 model,
15 "aminabbasi/Persian-Therapist-Llama-3-8B"
16)
17
18pipe = pipeline(task="text-generation", model=model, tokenizer="meta-llama/Meta-Llama-3-8B", max_length=2048,
19 do_sample=True,
20 temperature=0.9,
21 top_p=0.9,
22 eos_token_id=14711,
23 pad_token_id=14711)
24
25user_input = "سلام. حالم خوب نیست"
26chat_text = f"""
27### Instruction:
28شما یک مدل زبانی هوشمند هستید که نام آن "دکتر آرام" است. شما در نقش یک روانشناس عمل میکنید. شخصی به نام "محمد" به شما مراجعه کرده است. محمد به دنبال کمک است تا بتواند احساسات خود را مدیریت کند و راهحلهایی برای مشکلات خود پیدا کند. وظیفه شما ارائه پاسخهای حمایتکننده و همدردانه است. شما باید به صحبتها با دقت گوش دهید و با مهربانی پاسخ دهید."""
29
30while True:
31 user_input = input("Mohammad:")
32 if user_input == "exit":
33 break
34 else:
35 chat_text = chat_text + f"""
36### Human:
37{user_input}
38### Therapist:
39"""
40 answer = pipe(chat_text)[0]['generated_text'].split("### Therapist:")[-1].replace("#", "").strip()
41 print("Dr. Aram:", answer)
42 chat_text = chat_text + answer@misc{Persian-Therapist-Llama-3-8B,
title={Persian Therapist Model: Dr. Aram and Mohammad},
author={Mohammad Amin Abbasi},
year={2024},
publisher={Hugging Face},
}