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