GLM-OCR¶
Class: GLMOCRBlockV1
Source: inference.core.workflows.core_steps.models.foundation.glm_ocr.v1.GLMOCRBlockV1
Recognize text in images using GLM-OCR, a vision language model by Zhipu AI specialized for optical character recognition.
GLM-OCR supports three built-in recognition modes:
- Text Recognition — General-purpose text recognition for serial numbers, labels, scene text, and documents.
- Formula Recognition — Recognizes mathematical formulas and equations.
- Table Recognition — Recognizes table structures and content.
You can also select Custom Prompt to provide your own prompt for specialized recognition tasks, or Structured Output to extract values from the image into a JSON document with a user-defined schema (pair with the JSON Parser block to materialize the keys as workflow outputs).
This block pairs well with detection models and DynamicCropBlock to isolate regions of interest before running OCR. For example, use an object detection model to find labels or text regions, crop them, then pass the crops to GLM-OCR.
Note: GLM-OCR requires a GPU for inference.
Type identifier¶
Use the following identifier in step "type" field: roboflow_core/glm_ocr@v1to add the block as
as step in your workflow.
Properties¶
| Name | Type | Description | Refs |
|---|---|---|---|
name |
str |
Enter a unique identifier for this step.. | ❌ |
task_type |
str |
Recognition task to perform. Determines the prompt sent to GLM-OCR. Accepts a selector (e.g. $inputs.task_type) so the mode can be set dynamically.. | ✅ |
prompt |
str |
Custom text prompt for GLM-OCR. Only used when task_type is 'custom'.. | ✅ |
output_structure |
Dict[str, str] |
Dictionary describing the structure of the expected JSON response. Keys are the JSON field names; values describe what the model should put in each field.. | ❌ |
max_new_tokens |
int |
Maximum number of tokens to generate. If not set, the model default will be used.. | ❌ |
model_version |
str |
The GLM-OCR model to be used for inference.. | ✅ |
The Refs column marks possibility to parametrise the property with dynamic values available
in workflow runtime. See Bindings for more info.
Runtime compatibility¶
-
hard— runtimeself_hosted_cpu; executionlocal - Requires a GPU; run_locally() loads a model that needs CUDA.
Available Connections¶
Compatible Blocks
Check what blocks you can connect to GLM-OCR in version v1.
- inputs:
PLC Writer,Image Blur,Crop Visualization,Polygon Visualization,Object Detection Model,Roboflow Visual Search Classifier,Image Slicer,Qwen3.5-VL,Image Convert Grayscale,Webhook Sink,Semantic Segmentation Model,VLM As Classifier,Keypoint Detection Model,SIFT,Slack Notification,Label Visualization,MoonshotAI Kimi,Stitch OCR Detections,Label Visualization,Instance Segmentation Model,S3 Sink,Email Notification,Keypoint Detection Model,Single-Label Classification Model,Background Subtraction,Ellipse Visualization,Stitch Images,OPC UA Writer Sink,CSV Formatter,Corner Visualization,Triangle Visualization,Qwen-VL,Camera Calibration,Google Gemini,Polygon Zone Visualization,Roboflow Custom Metadata,LMM For Classification,Camera Focus,PP-OCR,SIFT Comparison,Trace Visualization,Color Visualization,Object Detection Model,Local File Sink,Llama 3.2 Vision,Llama 3.2 Vision,Morphological Transformation,Google Vision OCR,Google Gemma API,Google Gemma,Microsoft SQL Server Sink,Polygon Visualization,Icon Visualization,Rich Label Visualization,Twilio SMS/MMS Notification,Keypoint Visualization,Image Slicer,OpenAI,Clip Comparison,OpenAI,Keypoint Detection Model,Object Detection Model,Qwen 3.6 API,Instance Segmentation Model,Single-Label Classification Model,Mask Visualization,OpenAI,OpenAI-Compatible LLM,Instance Segmentation Model,Roboflow Visual Search,VLM As Detector,Stability AI Outpainting,Blur Visualization,Multi-Label Classification Model,Bounding Box Visualization,Absolute Static Crop,Roboflow Dataset Upload,Reference Path Visualization,OpenAI,Anthropic Claude,Google Gemini,Event Writer,Stitch OCR Detections,CogVLM,Email Notification,Contrast Enhancement,Current Time,Perspective Correction,Halo Visualization,Semantic Segmentation Model,Multi-Label Classification Model,Dynamic Crop,OpenRouter,OCR Model,Halo Visualization,Line Counter Visualization,Roboflow Asset Library Attributes,Multi-Label Classification Model,LMM,Relative Static Crop,Depth Estimation,Dot Visualization,GLM-OCR,Florence-2 Model,EasyOCR,Background Color Visualization,Google Gemini,Image Contours,Roboflow Dataset Upload,Qwen 3.5 API,MoonshotAI Kimi,Stability AI Inpainting,Contrast Equalization,Morphological Transformation,Image Threshold,Camera Focus,Stability AI Image Generation,Instance Segmentation Model,Circle Visualization,QR Code Generator,Google Gemini,Model Monitoring Inference Aggregator,Roboflow Vision Events,Single-Label Classification Model,Heatmap Visualization,Twilio SMS Notification,Auto Rotate on Edges,Cosmos 3,MQTT Writer,Anthropic Claude,Image Preprocessing,Anthropic Claude,Text Display,Grid Visualization,Model Comparison Visualization,Florence-2 Model,Classification Label Visualization,Pixelate Visualization - outputs:
Image Blur,Path Deviation,Crop Visualization,VLM As Detector,Polygon Visualization,Object Detection Model,Roboflow Visual Search Classifier,Qwen3.5-VL,CLIP Embedding Model,Webhook Sink,VLM As Classifier,YOLO-World Model,Slack Notification,Label Visualization,MoonshotAI Kimi,Stitch OCR Detections,Label Visualization,Instance Segmentation Model,S3 Sink,Perception Encoder Embedding Model,Email Notification,Keypoint Detection Model,Pixel Color Count,Single-Label Classification Model,OPC UA Writer Sink,Ellipse Visualization,Path Deviation,Corner Visualization,Triangle Visualization,Qwen-VL,JSON Parser,Distance Measurement,Google Gemini,Seg Preview,Polygon Zone Visualization,Roboflow Custom Metadata,LMM For Classification,Trace Visualization,SIFT Comparison,Color Visualization,Local File Sink,Llama 3.2 Vision,SAM3 Video Tracker,Llama 3.2 Vision,Morphological Transformation,Google Vision OCR,Google Gemma API,Google Gemma,Microsoft SQL Server Sink,Polygon Visualization,Icon Visualization,Rich Label Visualization,Twilio SMS/MMS Notification,Keypoint Visualization,OpenAI,OpenAI,Clip Comparison,Qwen 3.6 API,Instance Segmentation Model,Mask Visualization,Moondream2,Nearest Neighbor Detection Match,OpenAI,OpenAI-Compatible LLM,Instance Segmentation Model,Roboflow Visual Search,VLM As Detector,Stability AI Outpainting,Bounding Box Visualization,Roboflow Dataset Upload,OpenAI,Anthropic Claude,Reference Path Visualization,Google Gemini,Detections Stitch,Event Writer,Cache Set,Stitch OCR Detections,CogVLM,Time in Zone,VLM As Classifier,Email Notification,Current Time,Perspective Correction,Halo Visualization,Semantic Segmentation Model,Cache Get,OpenRouter,Dynamic Crop,Halo Visualization,Line Counter Visualization,Time in Zone,Time in Zone,Roboflow Asset Library Attributes,Multi-Label Classification Model,Size Measurement,LMM,Depth Estimation,SAM 3,Dot Visualization,GLM-OCR,Florence-2 Model,Google Gemini,Background Color Visualization,Roboflow Dataset Upload,Qwen 3.5 API,Segment Anything 2 Model,MoonshotAI Kimi,Stability AI Inpainting,Contrast Equalization,Morphological Transformation,Image Threshold,SAM 3,Line Counter,Stability AI Image Generation,Instance Segmentation Model,Circle Visualization,QR Code Generator,Google Gemini,Detections Classes Replacement,Roboflow Vision Events,Model Monitoring Inference Aggregator,Twilio SMS Notification,Heatmap Visualization,Cosmos 3,Auto Rotate on Edges,MQTT Writer,SAM 3,Anthropic Claude,Image Preprocessing,Line Counter,Anthropic Claude,Text Display,PTZ Tracking (ONVIF),Model Comparison Visualization,Florence-2 Model,Classification Label Visualization
Input and Output Bindings¶
The available connections depend on its binding kinds. Check what binding kinds
GLM-OCR in version v1 has.
Bindings
-
input
images(image): The image to infer on..task_type(string): Recognition task to perform. Determines the prompt sent to GLM-OCR. Accepts a selector (e.g. $inputs.task_type) so the mode can be set dynamically..prompt(string): Custom text prompt for GLM-OCR. Only used when task_type is 'custom'..model_version(roboflow_model_id): The GLM-OCR model to be used for inference..
-
output
parsed_output(Union[string,language_model_output]): String value ifstringor LLM / VLM output iflanguage_model_output.
Example JSON definition of step GLM-OCR in version v1
{
"name": "<your_step_name_here>",
"type": "roboflow_core/glm_ocr@v1",
"images": "$inputs.image",
"task_type": "<block_does_not_provide_example>",
"prompt": "Describe the text in the image.",
"output_structure": {
"my_key": "description"
},
"max_new_tokens": "<block_does_not_provide_example>",
"model_version": "glm-ocr"
}