File size: 3,195 Bytes
70f9c3d |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 |
{
"cells": [
{
"cell_type": "code",
"execution_count": 1,
"id": "953dfc98",
"metadata": {},
"outputs": [],
"source": [
"from awq import AutoAWQForCausalLM\n",
"from transformers import AutoTokenizer, AutoProcessor, TextStreamer\n",
"from PIL import Image\n",
"import requests\n",
"import torch"
]
},
{
"cell_type": "code",
"execution_count": 2,
"id": "c667ce7b",
"metadata": {},
"outputs": [],
"source": [
"quant_path = './llava-v1.6-34b-awq'"
]
},
{
"cell_type": "code",
"execution_count": 3,
"id": "6adbf36e",
"metadata": {},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"Replacing layers...: 100%|ββββββββββ| 60/60 [00:06<00:00, 9.86it/s]\n",
"Fusing layers...: 100%|ββββββββββ| 60/60 [00:00<00:00, 166.86it/s]\n"
]
}
],
"source": [
"model = AutoAWQForCausalLM.from_quantized(quant_path, safetensors=True, device_map=\"auto\")\n",
"processor = AutoProcessor.from_pretrained(quant_path)"
]
},
{
"cell_type": "code",
"execution_count": 6,
"id": "d8ab8031",
"metadata": {},
"outputs": [],
"source": [
"url = \"https://github.com/haotian-liu/LLaVA/blob/1a91fc274d7c35a9b50b3cb29c4247ae5837ce39/images/llava_v1_5_radar.jpg?raw=true\"\n",
"image = Image.open(requests.get(url, stream=True).raw)\n",
"prompt = \"<|im_start|>system\\nAnswer the questions.<|im_end|><|im_start|>user\\n<image>\\nWhat is shown in this image?<|im_end|><|im_start|>assistant\\n\""
]
},
{
"cell_type": "code",
"execution_count": 7,
"id": "350d6426",
"metadata": {},
"outputs": [],
"source": [
"inputs = processor(prompt, image, return_tensors='pt').to(0, torch.float16)"
]
},
{
"cell_type": "code",
"execution_count": 8,
"id": "24c9ac90",
"metadata": {},
"outputs": [],
"source": [
"streamer = TextStreamer(processor)"
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "74e964aa",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"<|im_start|> system\n",
"Answer the questions.<|im_end|><|im_start|> user\n",
"<image> \n",
"What is shown in this image?<|im_end|><|im_start|> assistant\n",
"The image shows a radar chart with various data points. The chart is a polar plot with concentric "
]
}
],
"source": [
"generation_output = model.generate(**inputs,max_new_tokens=1024, streamer = streamer)"
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "4ae4ca43",
"metadata": {},
"outputs": [],
"source": []
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3 (ipykernel)",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.10.12"
}
},
"nbformat": 4,
"nbformat_minor": 5
}
|