Views
No views yet
1import torch
2from PIL import Image
3from transformers import AutoModelForCausalLM, AutoTokenizer
4import requests
5
6MODEL_PATH = "OPEA/glm-4v-9b-int4-sym-inc"
7DEVICE = 'cuda'
8
9tokenizer = AutoTokenizer.from_pretrained(
10 "THUDM/glm-4v-9b",
11 trust_remote_code=True
12)
13model = AutoModelForCausalLM.from_pretrained(
14 MODEL_PATH,
15 torch_dtype="auto",
16 trust_remote_code=True,
17 device_map=DEVICE,
18 ##revision="dbb7900" ##AutoGPTQ format
19).to(DEVICE).eval()
20
21content = '描述这张图片'
22image_url = "https://huggingface.co/datasets/huggingface/documentation-images/resolve/0052a70beed5bf71b92610a43a52df6d286cd5f3/diffusers/rabbit.jpg"
23
24# Preparation for inference
25image = Image.open(requests.get(image_url, stream=True).raw).convert('RGB')
26inputs = tokenizer.apply_chat_template([{"role": "user", "image": image, "content": content}],
27 add_generation_prompt=True, tokenize=True, return_tensors="pt",
28 return_dict=True) # chat mode
29
30inputs = inputs.to(device)
31gen_kwargs = {"max_length": 2500, "do_sample": False, "top_k": 1}
32with torch.no_grad():
33 outputs = model.generate(**inputs, **gen_kwargs)
34 outputs = outputs[:, inputs['input_ids'].shape[1]:]
35 print(tokenizer.decode(outputs[0]))
36
37##INT4:
38## 这是一张动画电影《彼得兔》的剧照。图片中,主角彼得兔穿着一件蓝色的外套、棕色的马甲和淡黄色的裤子,站在一条通往乡村小屋的小路上。他背后是一座石头房子,周围是绿色的草地和五颜六色的
39## 花朵。远处可以看到连绵起伏的山脉。
40
41##BF16:
42## 这是一张描绘了动画角色彼得兔站在乡村小路上的图片。他穿着一件蓝色的外套、棕色的背心和卡其色的裤子,看起来非常正式。他的背后是一条蜿蜒的小路,两旁是五颜六色的花朵和绿色的草地。在小
43## 路的尽头是一座古老的石屋,周围环境宁静而美丽。
44
45image_url = "http://images.cocodataset.org/train2017/000000411975.jpg"
46content = "图片中的棒球场上有多少人?"
47##INT4:
48## 图片中有四个人,其中两个人拿着棒球棍,一个人站着,一个人蹲着。
49
50##BF16:
51## 图片中有四个人,其中两个是弯腰捡东西的孩子,一个可能是老师或者家长,还有一个是拍摄者。
52
53image_url = "https://intelcorp.scene7.com/is/image/intelcorp/processor-overview-framed-badge:1920-1080?wid=480&hei=270"
54content = "这张图片代表哪家公司?"
55##INT4:
56## 这张图片代表英特尔公司,Intel Inside是英特尔公司为其处理器产品所采用的营销品牌,自1991年推出以来,这个标志已经成为高性能计算的代名词,并且出现在了众多搭载英特尔处理器的电脑上。
57
58##BF16:
59## 这张图片代表英特尔公司,Intel Inside是英特尔公司为其处理器产品所采用的营销计划。自1991年推出以来,这个计划已经成为了个人电脑性能的代名词,意味着搭载Intel Inside处理器的电脑能够提
60## 供更好的性能和可靠性。英特尔公司是全球领先的半导体芯片制造商之一,总部位于美国加利福尼亚州圣克拉拉。1pip install auto-round
2auto-round-mllm \
3--model THUDM/glm-4v-9b \
4--device 0 \
5--group_size 128 \
6--bits 4 \
7--iters 1000 \
8--nsample 512 \
9--seqlen 2048 \
10--format 'auto_gptq,auto_round' \
11--output_dir "./tmp_autoround"