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@v1
to 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:
Anthropic Claude
,Crop Visualization
,SIFT
,Stitch OCR Detections
,LMM For Classification
,Blur Visualization
,Line Counter Visualization
,Color Visualization
,Image Contours
,Camera Focus
,Mask Visualization
,Image Convert Grayscale
,Circle Visualization
,Google Gemini
,Absolute Static Crop
,VLM as Classifier
,Object Detection Model
,Dynamic Zone
,Stitch Images
,Trace Visualization
,Image Preprocessing
,Roboflow Custom Metadata
,OCR Model
,Clip Comparison
,Polygon Zone Visualization
,LMM
,QR Code Generator
,Size Measurement
,Halo Visualization
,Perspective Correction
,Florence-2 Model
,Stability AI Inpainting
,Buffer
,Label Visualization
,Webhook Sink
,VLM as Detector
,Stability AI Image Generation
,Triangle Visualization
,Keypoint Detection Model
,Background Color Visualization
,Relative Static Crop
,Slack Notification
,Corner Visualization
,Multi-Label Classification Model
,Icon Visualization
,Pixelate Visualization
,Image Blur
,Model Comparison Visualization
,CSV Formatter
,Instance Segmentation Model
,Llama 3.2 Vision
,Image Threshold
,Google Vision OCR
,Reference Path Visualization
,Image Slicer
,Roboflow Dataset Upload
,CogVLM
,Depth Estimation
,Roboflow Dataset Upload
,Single-Label Classification Model
,OpenAI
,Classification Label Visualization
,Polygon Visualization
,Stability AI Outpainting
,Keypoint Visualization
,Dot Visualization
,Email Notification
,Grid Visualization
,Local File Sink
,OpenAI
,Bounding Box Visualization
,Camera Calibration
,Ellipse Visualization
,OpenAI
,Florence-2 Model
,Model Monitoring Inference Aggregator
,Image Slicer
,Twilio SMS Notification
,SIFT Comparison
,Dimension Collapse
,Clip Comparison
,Dynamic Crop
- outputs:
Anthropic Claude
,Crop Visualization
,Line Counter
,Line Counter
,LMM For Classification
,PTZ Tracking (ONVIF)
.md),Line Counter Visualization
,Color Visualization
,Cache Set
,Mask Visualization
,Circle Visualization
,Google Gemini
,Trace Visualization
,Image Preprocessing
,Roboflow Custom Metadata
,Cache Get
,Polygon Zone Visualization
,LMM
,QR Code Generator
,YOLO-World Model
,Size Measurement
,Halo Visualization
,CLIP Embedding Model
,Florence-2 Model
,Moondream2
,Perspective Correction
,Stability AI Inpainting
,Webhook Sink
,Label Visualization
,Distance Measurement
,Pixel Color Count
,Segment Anything 2 Model
,Perception Encoder Embedding Model
,Stability AI Image Generation
,Triangle Visualization
,Background Color Visualization
,Slack Notification
,Corner Visualization
,Path Deviation
,Icon Visualization
,Image Blur
,Model Comparison Visualization
,Llama 3.2 Vision
,Instance Segmentation Model
,Time in Zone
,Image Threshold
,Google Vision OCR
,Reference Path Visualization
,Roboflow Dataset Upload
,CogVLM
,Roboflow Dataset Upload
,OpenAI
,Classification Label Visualization
,Polygon Visualization
,Stability AI Outpainting
,Keypoint Visualization
,Dot Visualization
,Time in Zone
,Email Notification
,Local File Sink
,OpenAI
,Bounding Box Visualization
,Detections Classes Replacement
,Ellipse Visualization
,OpenAI
,Florence-2 Model
,Path Deviation
,Model Monitoring Inference Aggregator
,Twilio SMS Notification
,Instance Segmentation Model
,SIFT Comparison
,Detections Stitch
,Clip Comparison
,Dynamic Crop
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[secret
,string
]): 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"
}