LMM¶
Class: LMMBlockV1
Source: inference.core.workflows.core_steps.models.foundation.lmm.v1.LMMBlockV1
Ask a question to a Large Multimodal Model (LMM) with an image and text.
You can specify arbitrary text prompts 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.
If you want to classify an image into one or more categories, we recommend using the dedicated LMMForClassificationBlock.
Type identifier¶
Use the following identifier in step "type"
field: roboflow_core/lmm@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.. | ❌ |
prompt |
str |
Holds unconstrained text prompt to LMM mode. | ✅ |
lmm_type |
str |
Type of LMM to be used. | ✅ |
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 .. |
✅ |
json_output |
Dict[str, str] |
Holds dictionary that maps name of requested output field into its description. | ❌ |
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
in version v1
.
- inputs:
LMM
,Roboflow Custom Metadata
,Image Convert Grayscale
,Absolute Static Crop
,Multi-Label Classification Model
,Relative Static Crop
,Line Counter Visualization
,Background Color Visualization
,OCR Model
,Camera Focus
,Image Contours
,Image Slicer
,Reference Path Visualization
,Keypoint Detection Model
,Instance Segmentation Model
,SIFT Comparison
,Object Detection Model
,Triangle Visualization
,Depth Estimation
,Google Vision OCR
,Roboflow Dataset Upload
,Llama 3.2 Vision
,Clip Comparison
,Perspective Correction
,Crop Visualization
,Webhook Sink
,Dot Visualization
,Model Comparison Visualization
,Email Notification
,Classification Label Visualization
,Camera Calibration
,Slack Notification
,Stability AI Image Generation
,Trace Visualization
,Corner Visualization
,Image Threshold
,Blur Visualization
,Local File Sink
,CogVLM
,Stability AI Inpainting
,SIFT
,Circle Visualization
,OpenAI
,Florence-2 Model
,Twilio SMS Notification
,Label Visualization
,Stitch Images
,Image Preprocessing
,Grid Visualization
,Polygon Zone Visualization
,Keypoint Visualization
,LMM For Classification
,Stitch OCR Detections
,Bounding Box Visualization
,Image Blur
,OpenAI
,Halo Visualization
,Google Gemini
,Ellipse Visualization
,Color Visualization
,Pixelate Visualization
,VLM as Detector
,Roboflow Dataset Upload
,Polygon Visualization
,Single-Label Classification Model
,VLM as Classifier
,CSV Formatter
,Image Slicer
,Model Monitoring Inference Aggregator
,Mask Visualization
,Anthropic Claude
,Florence-2 Model
,Dynamic Crop
- outputs:
Size Measurement
,LMM
,VLM as Detector
,Absolute Static Crop
,Multi-Label Classification Model
,Distance Measurement
,Line Counter Visualization
,OCR Model
,Image Slicer
,Reference Path Visualization
,Triangle Visualization
,Path Deviation
,Line Counter
,Detections Transformation
,Multi-Label Classification Model
,Byte Tracker
,Llama 3.2 Vision
,Google Vision OCR
,Dynamic Zone
,Clip Comparison
,Perspective Correction
,Dot Visualization
,Detections Filter
,Email Notification
,Model Comparison Visualization
,Classification Label Visualization
,Instance Segmentation Model
,Dimension Collapse
,Slack Notification
,Stability AI Image Generation
,Cache Set
,Property Definition
,Time in Zone
,Line Counter
,Time in Zone
,Trace Visualization
,Local File Sink
,Blur Visualization
,CogVLM
,Stability AI Inpainting
,Cosine Similarity
,Circle Visualization
,OpenAI
,Moondream2
,Stitch Images
,Bounding Rectangle
,Byte Tracker
,SmolVLM2
,Grid Visualization
,Dominant Color
,Polygon Zone Visualization
,Keypoint Visualization
,Bounding Box Visualization
,OpenAI
,Halo Visualization
,Google Gemini
,Ellipse Visualization
,Single-Label Classification Model
,Pixel Color Count
,VLM as Detector
,Velocity
,Roboflow Dataset Upload
,Segment Anything 2 Model
,Single-Label Classification Model
,Cache Get
,VLM as Classifier
,Clip Comparison
,Delta Filter
,Mask Visualization
,VLM as Classifier
,Byte Tracker
,Detections Consensus
,Detection Offset
,Roboflow Custom Metadata
,Buffer
,Image Convert Grayscale
,First Non Empty Or Default
,Rate Limiter
,Relative Static Crop
,Detections Classes Replacement
,Gaze Detection
,Background Color Visualization
,Camera Focus
,Image Contours
,Keypoint Detection Model
,Instance Segmentation Model
,SIFT Comparison
,Object Detection Model
,Detections Stabilizer
,Depth Estimation
,Roboflow Dataset Upload
,Object Detection Model
,Crop Visualization
,Webhook Sink
,Identify Changes
,Camera Calibration
,Continue If
,Qwen2.5-VL
,Detections Merge
,Corner Visualization
,Image Threshold
,QR Code Detection
,Keypoint Detection Model
,SIFT
,Overlap Filter
,JSON Parser
,Expression
,Path Deviation
,Florence-2 Model
,Twilio SMS Notification
,Label Visualization
,Image Preprocessing
,Detections Stitch
,Template Matching
,LMM For Classification
,Stitch OCR Detections
,Image Blur
,CLIP Embedding Model
,Color Visualization
,Barcode Detection
,Pixelate Visualization
,SIFT Comparison
,Data Aggregator
,YOLO-World Model
,Polygon Visualization
,CSV Formatter
,Model Monitoring Inference Aggregator
,Image Slicer
,Anthropic Claude
,Florence-2 Model
,Identify Outliers
,Dynamic Crop
Input and Output Bindings¶
The available connections depend on its binding kinds. Check what binding kinds
LMM
in version v1
has.
Bindings
-
input
images
(image
): The image to infer on..prompt
(string
): Holds unconstrained text prompt to LMM mode.lmm_type
(string
): Type of LMM to be used.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
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.structured_output
(dictionary
): Dictionary.raw_output
(string
): String value.*
(*
): Equivalent of any element.
Example JSON definition of step LMM
in version v1
{
"name": "<your_step_name_here>",
"type": "roboflow_core/lmm@v1",
"images": "$inputs.image",
"prompt": "my prompt",
"lmm_type": "gpt_4v",
"lmm_config": {
"gpt_image_detail": "low",
"gpt_model_version": "gpt-4o",
"max_tokens": 200
},
"remote_api_key": "xxx-xxx",
"json_output": {
"count": "number of cats in the picture"
}
}