LMM For Classification¶
Class: LMMForClassificationBlockV1
Source: inference.core.workflows.core_steps.models.foundation.lmm_classifier.v1.LMMForClassificationBlockV1
Classify an image into one or more categories using a Large Multimodal Model (LMM).
You can specify arbitrary classes to an LMMBlock.
The LLMBlock supports two LMMs:
- OpenAI's GPT-4 with Vision.
You need to provide your OpenAI API key to use the GPT-4 with Vision model.
Type identifier¶
Use the following identifier in step "type" field: roboflow_core/lmm_for_classification@v1to add the block as
as step in your workflow.
Properties¶
| Name | Type | Description | Refs |
|---|---|---|---|
name |
str |
Enter a unique identifier for this step.. | ❌ |
lmm_type |
str |
Type of LMM to be used. | ✅ |
classes |
List[str] |
List of classes that LMM shall classify against. | ✅ |
lmm_config |
LMMConfig |
Configuration of LMM. | ❌ |
remote_api_key |
str |
Holds API key required to call LMM model - in current state of development, we require OpenAI key when lmm_type=gpt_4v.. |
✅ |
The Refs column marks possibility to parametrise the property with dynamic values available
in workflow runtime. See Bindings for more info.
Available Connections¶
Compatible Blocks
Check what blocks you can connect to LMM For Classification in version v1.
- inputs:
VLM as Detector,Google Vision OCR,Classification Label Visualization,Circle Visualization,Image Contours,Relative Static Crop,Image Preprocessing,LMM For Classification,VLM as Classifier,Ellipse Visualization,Stitch Images,Triangle Visualization,Stability AI Inpainting,QR Code Generator,Image Slicer,Background Color Visualization,Model Monitoring Inference Aggregator,OCR Model,Dot Visualization,Florence-2 Model,SIFT,Morphological Transformation,EasyOCR,Reference Path Visualization,Halo Visualization,SIFT Comparison,Buffer,Polygon Visualization,Image Slicer,Florence-2 Model,Slack Notification,Clip Comparison,Image Convert Grayscale,Instance Segmentation Model,OpenAI,Color Visualization,Keypoint Detection Model,Google Gemini,Label Visualization,Email Notification,Llama 3.2 Vision,Trace Visualization,Dynamic Zone,Size Measurement,Email Notification,Corner Visualization,Mask Visualization,CogVLM,Stability AI Outpainting,OpenAI,Roboflow Custom Metadata,Stitch OCR Detections,Blur Visualization,CSV Formatter,Crop Visualization,OpenAI,Grid Visualization,Perspective Correction,Twilio SMS Notification,Absolute Static Crop,Single-Label Classification Model,Clip Comparison,Contrast Equalization,Roboflow Dataset Upload,Roboflow Dataset Upload,Polygon Zone Visualization,Stability AI Image Generation,Webhook Sink,Depth Estimation,Dimension Collapse,Bounding Box Visualization,Camera Focus,Line Counter Visualization,Multi-Label Classification Model,Icon Visualization,Image Blur,Pixelate Visualization,Image Threshold,Anthropic Claude,LMM,Google Gemini,Dynamic Crop,Model Comparison Visualization,Camera Calibration,Local File Sink,Keypoint Visualization,Object Detection Model - outputs:
Google Vision OCR,SAM 3,Classification Label Visualization,Circle Visualization,Image Preprocessing,LMM For Classification,Ellipse Visualization,Triangle Visualization,Stability AI Inpainting,QR Code Generator,Background Color Visualization,Model Monitoring Inference Aggregator,Segment Anything 2 Model,Moondream2,Distance Measurement,Dot Visualization,Florence-2 Model,Morphological Transformation,Reference Path Visualization,Halo Visualization,SIFT Comparison,Polygon Visualization,Florence-2 Model,Slack Notification,Clip Comparison,Perception Encoder Embedding Model,Instance Segmentation Model,OpenAI,Color Visualization,Line Counter,PTZ Tracking (ONVIF).md),Google Gemini,Label Visualization,Email Notification,Llama 3.2 Vision,Trace Visualization,Line Counter,YOLO-World Model,Size Measurement,Email Notification,Corner Visualization,Mask Visualization,Time in Zone,OpenAI,Roboflow Custom Metadata,Stability AI Outpainting,CogVLM,Stitch OCR Detections,Detections Stitch,Cache Set,Time in Zone,Crop Visualization,OpenAI,Detections Classes Replacement,Perspective Correction,Twilio SMS Notification,Seg Preview,Contrast Equalization,Roboflow Dataset Upload,Roboflow Dataset Upload,Polygon Zone Visualization,CLIP Embedding Model,Stability AI Image Generation,Webhook Sink,Bounding Box Visualization,Line Counter Visualization,Instance Segmentation Model,Icon Visualization,Image Blur,Time in Zone,Image Threshold,Path Deviation,Anthropic Claude,LMM,Google Gemini,Pixel Color Count,Dynamic Crop,Path Deviation,Model Comparison Visualization,Cache Get,Local File Sink,Keypoint Visualization
Input and Output Bindings¶
The available connections depend on its binding kinds. Check what binding kinds
LMM For Classification in version v1 has.
Bindings
-
input
images(image): The image to infer on..lmm_type(string): Type of LMM to be used.classes(list_of_values): List of classes that LMM shall classify against.remote_api_key(Union[string,secret]): Holds API key required to call LMM model - in current state of development, we require OpenAI key whenlmm_type=gpt_4v..
-
output
raw_output(string): String value.top(top_class): String value representing top class predicted by classification model.parent_id(parent_id): Identifier of parent for step output.root_parent_id(parent_id): Identifier of parent for step output.image(image_metadata): Dictionary with image metadata required by supervision.prediction_type(prediction_type): String value with type of prediction.
Example JSON definition of step LMM For Classification in version v1
{
"name": "<your_step_name_here>",
"type": "roboflow_core/lmm_for_classification@v1",
"images": "$inputs.image",
"lmm_type": "gpt_4v",
"classes": [
"a",
"b"
],
"lmm_config": {
"gpt_image_detail": "low",
"gpt_model_version": "gpt-4o",
"max_tokens": 200
},
"remote_api_key": "xxx-xxx"
}