Views
No views yet
1from transformers import pipeline
2model_id = "tiny-random/qwen3-tp"
3pipe = pipeline(
4 "text-generation", model=model_id, device="cuda",
5 trust_remote_code=True, max_new_tokens=3,
6)
7print(pipe("Hello World!"))
8
9
10from transformers import AutoModelForCausalLM, AutoTokenizer
11tokenizer = AutoTokenizer.from_pretrained(model_id)
12model = AutoModelForCausalLM.from_pretrained(
13 model_id,
14 torch_dtype="auto",
15 device_map="auto"
16)
17prompt = "Give me a short introduction to large language model."
18messages = [
19 {"role": "user", "content": prompt}
20]
21text = tokenizer.apply_chat_template(
22 messages,
23 tokenize=False,
24 add_generation_prompt=True,
25 enable_thinking=True # Switches between thinking and non-thinking modes. Default is True.
26)
27print(text)
28model_inputs = tokenizer([text], return_tensors="pt").to(model.device)
29generated_ids = model.generate(
30 **model_inputs,
31 max_new_tokens=128
32)
33output_ids = generated_ids[0][len(model_inputs.input_ids[0]):].tolist()
34try:
35 # rindex finding 151668 (</think>)
36 index = len(output_ids) - output_ids[::-1].index(151668)
37except ValueError:
38 index = 0
39thinking_content = tokenizer.decode(output_ids[:index], skip_special_tokens=True).strip("\n")
40content = tokenizer.decode(output_ids[index:], skip_special_tokens=True).strip("\n")
41print("thinking content:", thinking_content)
42print("content:", content)1import torch
2
3from transformers import (
4 AutoConfig,
5 AutoModelForCausalLM,
6 AutoTokenizer,
7 GenerationConfig,
8 pipeline,
9 set_seed,
10)
11
12source_model_id = "Qwen/Qwen3-32B"
13save_folder = "/tmp/tiny-random/qwen3-tp"
14
15tokenizer = AutoTokenizer.from_pretrained(
16 source_model_id, trust_remote_code=True,
17)
18tokenizer.save_pretrained(save_folder)
19
20config = AutoConfig.from_pretrained(
21 source_model_id, trust_remote_code=True,
22)
23config._name_or_path = source_model_id
24config.hidden_size = 8
25config.intermediate_size = 32
26config.head_dim = 32
27config.num_key_value_heads = 4
28config.num_attention_heads = 8
29config.num_hidden_layers = 2
30config.max_window_layers = 1
31config.tie_word_embeddings = False
32config.layer_types = ['full_attention'] * 2
33model = AutoModelForCausalLM.from_config(
34 config,
35 torch_dtype=torch.bfloat16,
36 trust_remote_code=True,
37)
38model.generation_config = GenerationConfig.from_pretrained(
39 source_model_id, trust_remote_code=True,
40)
41set_seed(42)
42with torch.no_grad():
43 for name, p in sorted(model.named_parameters()):
44 torch.nn.init.normal_(p, 0, 0.1)
45 print(name, p.shape)
46model.save_pretrained(save_folder)