Instructions to use zai-org/GLM-OCR with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Transformers
How to use zai-org/GLM-OCR with Transformers:
# Use a pipeline as a high-level helper # Warning: Pipeline type "image-to-text" is no longer supported in transformers v5. # You must load the model directly (see below) or downgrade to v4.x with: # 'pip install "transformers<5.0.0' from transformers import pipeline pipe = pipeline("image-to-text", model="zai-org/GLM-OCR") messages = [ { "role": "user", "content": [ {"type": "image", "url": "https://huggingface.co/datasets/huggingface/documentation-images/resolve/main/p-blog/candy.JPG"}, {"type": "text", "text": "What animal is on the candy?"} ] }, ] pipe(text=messages)# Load model directly from transformers import AutoTokenizer, AutoModelForMultimodalLM tokenizer = AutoTokenizer.from_pretrained("zai-org/GLM-OCR") model = AutoModelForMultimodalLM.from_pretrained("zai-org/GLM-OCR", device_map="auto") messages = [ { "role": "user", "content": [ {"type": "image", "url": "https://huggingface.co/datasets/huggingface/documentation-images/resolve/main/p-blog/candy.JPG"}, {"type": "text", "text": "What animal is on the candy?"} ] }, ] inputs = tokenizer.apply_chat_template( messages, add_generation_prompt=True, tokenize=True, return_dict=True, return_tensors="pt", ).to(model.device) outputs = model.generate(**inputs, max_new_tokens=40) print(tokenizer.decode(outputs[0][inputs["input_ids"].shape[-1]:])) - Notebooks
- Google Colab
- Kaggle
- AMD Developer Cloud
| { | |
| "backend": "tokenizers", | |
| "clean_up_tokenization_spaces": false, | |
| "eos_token": "<|endoftext|>", | |
| "extra_special_tokens": [ | |
| "<|endoftext|>", | |
| "[MASK]", | |
| "[gMASK]", | |
| "[sMASK]", | |
| "<sop>", | |
| "<eop>", | |
| "<|system|>", | |
| "<|user|>", | |
| "<|assistant|>", | |
| "<|observation|>", | |
| "<|begin_of_image|>", | |
| "<|end_of_image|>", | |
| "<|begin_of_video|>", | |
| "<|end_of_video|>", | |
| "<|begin_of_audio|>", | |
| "<|end_of_audio|>", | |
| "<|begin_of_transcription|>", | |
| "<|end_of_transcription|>", | |
| "<|code_prefix|>", | |
| "<|code_middle|>", | |
| "<|code_suffix|>", | |
| "<think>", | |
| "</think>", | |
| "<tool_call>", | |
| "</tool_call>", | |
| "<tool_response>", | |
| "</tool_response>", | |
| "<arg_key>", | |
| "</arg_key>", | |
| "<arg_value>", | |
| "</arg_value>", | |
| "/nothink", | |
| "<|begin_of_box|>", | |
| "<|end_of_box|>", | |
| "<|image|>", | |
| "<|video|>" | |
| ], | |
| "is_local": true, | |
| "model_max_length": 655380, | |
| "pad_token": "<|endoftext|>", | |
| "padding_side": "left", | |
| "processor_class": "Glm46VProcessor", | |
| "tokenizer_class": "TokenizersBackend" | |
| } | |