Views
No views yet
pip install -U transformers sentencepiecepipeline API1import torch
2from transformers import pipeline
3
4pipe = pipeline(
5 "text-generation",
6 model="silma-ai/SILMA-9B-Instruct-v1.0",
7 model_kwargs={"torch_dtype": torch.bfloat16},
8 device="cuda", # replace with "mps" to run on a Mac device
9)
10
11messages = [
12 {"role": "user", "content": "اكتب رسالة تعتذر فيها لمديري في العمل عن الحضور اليوم لأسباب مرضية."},
13]
14
15outputs = pipe(messages, max_new_tokens=256)
16assistant_response = outputs[0]["generated_text"][-1]["content"].strip()
17print(assistant_response)1السلام عليكم ورحمة الله وبركاته
2
3أودّ أن أعتذر عن عدم الحضور إلى العمل اليوم بسبب مرضي. أشعر بالسوء الشديد وأحتاج إلى الراحة. سأعود إلى العمل فور تعافيي.
4شكراً لتفهمكم.
5
6مع تحياتي،
7[اسمك]pip install accelerate1from transformers import AutoTokenizer, AutoModelForCausalLM
2import torch
3
4model_id = "silma-ai/SILMA-9B-Instruct-v1.0"
5tokenizer = AutoTokenizer.from_pretrained(model_id)
6model = AutoModelForCausalLM.from_pretrained(
7 model_id,
8 device_map="auto",
9 torch_dtype=torch.bfloat16,
10)
11
12messages = [
13 {"role": "system", "content": "أنت مساعد ذكي للإجابة عن أسئلة المستخدمين."},
14 {"role": "user", "content": "أيهما أبعد عن الأرض, الشمس أم القمر؟"},
15]
16
17input_ids = tokenizer.apply_chat_template(messages, return_tensors="pt", return_dict=True).to("cuda")
18
19outputs = model.generate(**input_ids, max_new_tokens=256)
20
21print(tokenizer.decode(outputs[0]))الشمسtokenizer.apply_chat_template as follows:1
2from transformers import AutoTokenizer, AutoModelForCausalLM
3import torch
4
5model_id = "silma-ai/SILMA-9B-Instruct-v1.0"
6tokenizer = AutoTokenizer.from_pretrained(model_id)
7model = AutoModelForCausalLM.from_pretrained(
8 model_id,
9 device_map="auto",
10 torch_dtype=torch.bfloat16,
11)
12
13messages = [
14 {"role": "system", "content": "أنت مساعد ذكي للإجابة عن أسئلة المستخدمين."},
15 {"role": "user", "content": "اكتب كود بايثون لتوليد متسلسلة أرقام زوجية."},
16]
17input_ids = tokenizer.apply_chat_template(messages, return_tensors="pt", return_dict=True).to("cuda")
18
19outputs = model.generate(**input_ids, max_new_tokens=256)
20print(tokenizer.decode(outputs[0]).split("<start_of_turn>model")[-1])1def generate_even_numbers(n):
2 """
3 This function generates a list of even numbers from 1 to n.
4 Args:
5 n: The upper limit of the range.
6
7 Returns:
8 A list of even numbers.
9 """
10 return [i for i in range(1, n + 1) if i % 2 == 0]
11
12# Example usage
13n = 10
14even_numbers = generate_even_numbers(n)
15print(f"The first {n} even numbers are: {even_numbers}")bitsandbytespip install bitsandbytes accelerate1# pip install bitsandbytes accelerate
2from transformers import AutoTokenizer, AutoModelForCausalLM, BitsAndBytesConfig
3
4model_id = "silma-ai/SILMA-9B-Instruct-v1.0"
5quantization_config = BitsAndBytesConfig(load_in_8bit=True)
6
7tokenizer = AutoTokenizer.from_pretrained(model_id)
8model = AutoModelForCausalLM.from_pretrained(
9 model_id,
10 quantization_config=quantization_config,
11)
12
13messages = [
14 {"role": "system", "content": "أنت مساعد ذكي للإجابة عن أسئلة المستخدمين."},
15 {"role": "user", "content": "اذكر خمس انواع فواكه بها نسب عالية من فيتامين ج."},
16]
17input_ids = tokenizer.apply_chat_template(messages, return_tensors="pt", return_dict=True).to("cuda")
18
19outputs = model.generate(**input_ids, max_new_tokens=256)
20print(tokenizer.decode(outputs[0]).split("<start_of_turn>model")[-1])الليمون، البرتقال، الموز، الكيوي، الفراولة1# pip install bitsandbytes accelerate
2from transformers import AutoTokenizer, AutoModelForCausalLM, BitsAndBytesConfig
3
4model_id = "silma-ai/SILMA-9B-Instruct-v1.0"
5quantization_config = BitsAndBytesConfig(load_in_4bit=True)
6
7tokenizer = AutoTokenizer.from_pretrained(model_id)
8model = AutoModelForCausalLM.from_pretrained(
9 model_id,
10 quantization_config=quantization_config,
11)
12
13messages = [
14 {"role": "system", "content": "أنت مساعد ذكي للإجابة عن أسئلة المستخدمين."},
15 {"role": "user", "content": "في أي عام توفى صلاح الدين الأيوبي؟"},
16]
17input_ids = tokenizer.apply_chat_template(messages, return_tensors="pt", return_dict=True).to("cuda")
18
19outputs = model.generate(**input_ids, max_new_tokens=256)
20print(tokenizer.decode(outputs[0]).split("<start_of_turn>model")[-1])11931import os
2os.environ["TOKENIZERS_PARALLELISM"] = "false"
3
4from transformers import AutoTokenizer, Gemma2ForCausalLM
5from transformers.cache_utils import HybridCache
6import torch
7
8torch.set_float32_matmul_precision("high")
9
10# load the model + tokenizer
11model_id = "silma-ai/SILMA-9B-Instruct-v1.0"
12tokenizer = AutoTokenizer.from_pretrained(model_id)
13model = Gemma2ForCausalLM.from_pretrained(model_id, torch_dtype=torch.bfloat16)
14model.to("cuda")
15
16# apply the torch compile transformation
17model.forward = torch.compile(model.forward, mode="reduce-overhead", fullgraph=True)
18
19# pre-process inputs
20
21messages = [
22 {"role": "system", "content": "أنت مساعد ذكي للإجابة عن أسئلة المستخدمين."},
23 {"role": "user", "content": "من الرئيس الذي تولى المنصب في أمريكا بعد دونالد ترامب؟"},
24]
25model_inputs = tokenizer.apply_chat_template(messages, return_tensors="pt", return_dict=True).to("cuda")
26
27input_text = "من الرئيس الذي تولى المنصب في أمريكا بعد دونالد ترامب؟"
28model_inputs = tokenizer(input_text, return_tensors="pt").to("cuda")
29prompt_length = model_inputs.input_ids.shape[1]
30
31# set-up k/v cache
32past_key_values = HybridCache(
33 config=model.config,
34 max_batch_size=1,
35 max_cache_len=model.config.max_position_embeddings,
36 device=model.device,
37 dtype=model.dtype
38)
39
40# enable passing kv cache to generate
41model._supports_cache_class = True
42model.generation_config.cache_implementation = None
43
44# two warm-up steps
45for idx in range(2):
46 outputs = model.generate(**model_inputs, past_key_values=past_key_values, do_sample=True, temperature=1.0, max_new_tokens=128)
47 past_key_values.reset()
48
49# fast run
50outputs = model.generate(**model_inputs, past_key_values=past_key_values, do_sample=True, temperature=1.0, max_new_tokens=128)
51print(tokenizer.decode(outputs[0], skip_special_tokens=True))جو بايدن1from transformers import AutoTokenizer, AutoModelForCausalLM
2import transformers
3import torch
4
5model_id = "silma-ai/SILMA-9B-Instruct-v1.0"
6dtype = torch.bfloat16
7
8tokenizer = AutoTokenizer.from_pretrained(model_id)
9model = AutoModelForCausalLM.from_pretrained(
10 model_id,
11 device_map="cuda",
12 torch_dtype=dtype,)
13
14chat = [
15 { "role": "user", "content": "ما اشهر اطارات العمل في البايثون لبناء نماذج الذكاء الاصطناعي؟" },
16]
17prompt = tokenizer.apply_chat_template(chat, tokenize=False, add_generation_prompt=True)<bos><start_of_turn>user
ما اشهر اطارات العمل في البايثون لبناء نماذج الذكاء الاصطناعي؟<end_of_turn>
<start_of_turn>model<start_of_turn> delimiter and then the role of the entity
(either user, for content supplied by the user, or model for LLM responses). Turns finish with
the <end_of_turn> token.1inputs = tokenizer.encode(prompt, add_special_tokens=False, return_tensors="pt")
2outputs = model.generate(input_ids=inputs.to(model.device), max_new_tokens=150)
3print(tokenizer.decode(outputs[0]))1@misc{silma-9b-2024,
2 author = {{silma-ai}},
3 title = {SILMA 9B Instruct v1.0},
4 year = {2024},
5 howpublished = {\url{https://huggingface.co/silma-ai/SILMA-9B-Instruct-v1.0}}
6}