| # GLM-Edge-V-2B | |
| ## 使用 transformers 库进行推理 | |
| ### 安装 | |
| 请安装源代码的transformers库。 | |
| ```shell | |
| pip install git+https://github.com/huggingface/transformers.git | |
| ``` | |
| ### 推理 | |
| ```python | |
| import torch | |
| from PIL import Image | |
| from transformers import ( | |
| AutoTokenizer, | |
| AutoImageProcessor, | |
| AutoModelForCausalLM, | |
| ) | |
| url = "img.png" | |
| messages = [{"role": "user", "content": [{"type": "image"}, {"type": "text", "text": "describe this image"}]}] | |
| image = Image.open(url) | |
| model_dir = "THUDM/glm-edge-v-5b" | |
| processor = AutoImageProcessor.from_pretrained(model_dir, trust_remote_code=True) | |
| tokenizer = AutoTokenizer.from_pretrained(model_dir, trust_remote_code=True) | |
| model = AutoModelForCausalLM.from_pretrained( | |
| model_dir, | |
| torch_dtype=torch.bfloat16, | |
| device_map="auto", | |
| trust_remote_code=True, | |
| ) | |
| inputs = tokenizer.apply_chat_template( | |
| messages, add_generation_prompt=True, return_dict=True, tokenize=True, return_tensors="pt" | |
| ).to(next(model.parameters()).device) | |
| generate_kwargs = { | |
| **inputs, | |
| "pixel_values": torch.tensor(processor(image).pixel_values).to(next(model.parameters()).device), | |
| } | |
| output = model.generate(**generate_kwargs, max_new_tokens=100) | |
| print(tokenizer.decode(output[0][len(inputs["input_ids"][0]):], skip_special_tokens=True)) | |
| ``` | |
| ## 协议 | |
| 本模型的权重的使用则需要遵循 [LICENSE](LICENSE)。 |