OpenAI¶
v3¶
Class: OpenAIBlockV3
(there are multiple versions of this block)
Source: inference.core.workflows.core_steps.models.foundation.openai.v3.OpenAIBlockV3
Warning: This block has multiple versions. Please refer to the specific version for details. You can learn more about how versions work here: Versioning
Ask a question to OpenAI's GPT models with vision capabilities (including GPT-5 and GPT-4o).
You can specify arbitrary text prompts or predefined ones, the block supports the following types of prompt:
-
Open Prompt (
unconstrained
) - Use any prompt to generate a raw response -
Text Recognition (OCR) (
ocr
) - Model recognizes text in the image -
Visual Question Answering (
visual-question-answering
) - Model answers the question you submit in the prompt -
Captioning (short) (
caption
) - Model provides a short description of the image -
Captioning (
detailed-caption
) - Model provides a long description of the image -
Single-Label Classification (
classification
) - Model classifies the image content as one of the provided classes -
Multi-Label Classification (
multi-label-classification
) - Model classifies the image content as one or more of the provided classes -
Structured Output Generation (
structured-answering
) - Model returns a JSON response with the specified fields
Provide your OpenAI API key or set the value to rf_key:account
(or
rf_key:user:<id>
) to proxy requests through Roboflow's API.
Type identifier¶
Use the following identifier in step "type"
field: roboflow_core/open_ai@v3
to 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 |
Task type to be performed by model. Value determines required parameters and output response.. | ❌ |
prompt |
str |
Text prompt to the OpenAI model. | ✅ |
output_structure |
Dict[str, str] |
Dictionary with structure of expected JSON response. | ❌ |
classes |
List[str] |
List of classes to be used. | ✅ |
api_key |
str |
Your OpenAI API key. | ✅ |
model_version |
str |
Model to be used. | ✅ |
image_detail |
str |
Indicates the image's quality, with 'high' suggesting it is of high resolution and should be processed or displayed with high fidelity.. | ✅ |
max_tokens |
int |
Maximum number of tokens the model can generate in it's response.. | ❌ |
temperature |
float |
Temperature to sample from the model - value in range 0.0-2.0, the higher - the more random / "creative" the generations are.. | ✅ |
max_concurrent_requests |
int |
Number of concurrent requests that can be executed by block when batch of input images provided. If not given - block defaults to value configured globally in Workflows Execution Engine. Please restrict if you hit OpenAI limits.. | ❌ |
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 OpenAI
in version v3
.
- 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
,Cosine Similarity
,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
,Gaze Detection
,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
,Identify Changes
,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
,VLM as Classifier
,Object Detection Model
,Keypoint Detection Model
,Detections Consensus
,Trace Visualization
,Image Preprocessing
,Roboflow Custom Metadata
,Object Detection Model
,Cache Get
,JSON Parser
,Clip Comparison
,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
,Buffer
,Webhook Sink
,Label Visualization
,Distance Measurement
,VLM as Detector
,Pixel Color Count
,Segment Anything 2 Model
,Perception Encoder Embedding Model
,Stability AI Image Generation
,Triangle Visualization
,Keypoint Detection Model
,Background Color Visualization
,Slack Notification
,Corner Visualization
,Path Deviation
,Icon Visualization
,Image Blur
,Model Comparison Visualization
,VLM as Detector
,Llama 3.2 Vision
,Instance Segmentation Model
,Time in Zone
,Image Threshold
,Google Vision OCR
,Reference Path Visualization
,VLM as Classifier
,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
,Grid Visualization
,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
OpenAI
in version v3
has.
Bindings
-
input
images
(image
): The image to infer on..prompt
(string
): Text prompt to the OpenAI model.classes
(list_of_values
): List of classes to be used.api_key
(Union[secret
,string
,ROBOFLOW_MANAGED_KEY
]): Your OpenAI API key.model_version
(string
): Model to be used.image_detail
(string
): Indicates the image's quality, with 'high' suggesting it is of high resolution and should be processed or displayed with high fidelity..temperature
(float
): Temperature to sample from the model - value in range 0.0-2.0, the higher - the more random / "creative" the generations are..
-
output
output
(Union[string
,language_model_output
]): String value ifstring
or LLM / VLM output iflanguage_model_output
.classes
(list_of_values
): List of values of any type.
Example JSON definition of step OpenAI
in version v3
{
"name": "<your_step_name_here>",
"type": "roboflow_core/open_ai@v3",
"images": "$inputs.image",
"task_type": "<block_does_not_provide_example>",
"prompt": "my prompt",
"output_structure": {
"my_key": "description"
},
"classes": [
"class-a",
"class-b"
],
"api_key": "xxx-xxx",
"model_version": "gpt-5",
"image_detail": "auto",
"max_tokens": "<block_does_not_provide_example>",
"temperature": "<block_does_not_provide_example>",
"max_concurrent_requests": "<block_does_not_provide_example>"
}
v2¶
Class: OpenAIBlockV2
(there are multiple versions of this block)
Source: inference.core.workflows.core_steps.models.foundation.openai.v2.OpenAIBlockV2
Warning: This block has multiple versions. Please refer to the specific version for details. You can learn more about how versions work here: Versioning
Ask a question to OpenAI's GPT models with vision capabilities (including GPT-4o and GPT-5).
You can specify arbitrary text prompts or predefined ones, the block supports the following types of prompt:
-
Open Prompt (
unconstrained
) - Use any prompt to generate a raw response -
Text Recognition (OCR) (
ocr
) - Model recognizes text in the image -
Visual Question Answering (
visual-question-answering
) - Model answers the question you submit in the prompt -
Captioning (short) (
caption
) - Model provides a short description of the image -
Captioning (
detailed-caption
) - Model provides a long description of the image -
Single-Label Classification (
classification
) - Model classifies the image content as one of the provided classes -
Multi-Label Classification (
multi-label-classification
) - Model classifies the image content as one or more of the provided classes -
Structured Output Generation (
structured-answering
) - Model returns a JSON response with the specified fields
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/open_ai@v2
to 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 |
Task type to be performed by model. Value determines required parameters and output response.. | ❌ |
prompt |
str |
Text prompt to the OpenAI model. | ✅ |
output_structure |
Dict[str, str] |
Dictionary with structure of expected JSON response. | ❌ |
classes |
List[str] |
List of classes to be used. | ✅ |
api_key |
str |
Your OpenAI API key. | ✅ |
model_version |
str |
Model to be used. | ✅ |
image_detail |
str |
Indicates the image's quality, with 'high' suggesting it is of high resolution and should be processed or displayed with high fidelity.. | ✅ |
max_tokens |
int |
Maximum number of tokens the model can generate in it's response.. | ❌ |
temperature |
float |
Temperature to sample from the model - value in range 0.0-2.0, the higher - the more random / "creative" the generations are.. | ✅ |
max_concurrent_requests |
int |
Number of concurrent requests that can be executed by block when batch of input images provided. If not given - block defaults to value configured globally in Workflows Execution Engine. Please restrict if you hit OpenAI limits.. | ❌ |
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 OpenAI
in version v2
.
- 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
,Cosine Similarity
,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
,Gaze Detection
,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
,Identify Changes
,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
,VLM as Classifier
,Object Detection Model
,Keypoint Detection Model
,Detections Consensus
,Trace Visualization
,Image Preprocessing
,Roboflow Custom Metadata
,Object Detection Model
,Cache Get
,JSON Parser
,Clip Comparison
,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
,Buffer
,Webhook Sink
,Label Visualization
,Distance Measurement
,VLM as Detector
,Pixel Color Count
,Segment Anything 2 Model
,Perception Encoder Embedding Model
,Stability AI Image Generation
,Triangle Visualization
,Keypoint Detection Model
,Background Color Visualization
,Slack Notification
,Corner Visualization
,Path Deviation
,Icon Visualization
,Image Blur
,Model Comparison Visualization
,VLM as Detector
,Llama 3.2 Vision
,Instance Segmentation Model
,Time in Zone
,Image Threshold
,Google Vision OCR
,Reference Path Visualization
,VLM as Classifier
,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
,Grid Visualization
,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
OpenAI
in version v2
has.
Bindings
-
input
images
(image
): The image to infer on..prompt
(string
): Text prompt to the OpenAI model.classes
(list_of_values
): List of classes to be used.api_key
(Union[secret
,string
]): Your OpenAI API key.model_version
(string
): Model to be used.image_detail
(string
): Indicates the image's quality, with 'high' suggesting it is of high resolution and should be processed or displayed with high fidelity..temperature
(float
): Temperature to sample from the model - value in range 0.0-2.0, the higher - the more random / "creative" the generations are..
-
output
output
(Union[string
,language_model_output
]): String value ifstring
or LLM / VLM output iflanguage_model_output
.classes
(list_of_values
): List of values of any type.
Example JSON definition of step OpenAI
in version v2
{
"name": "<your_step_name_here>",
"type": "roboflow_core/open_ai@v2",
"images": "$inputs.image",
"task_type": "<block_does_not_provide_example>",
"prompt": "my prompt",
"output_structure": {
"my_key": "description"
},
"classes": [
"class-a",
"class-b"
],
"api_key": "xxx-xxx",
"model_version": "gpt-4o",
"image_detail": "auto",
"max_tokens": "<block_does_not_provide_example>",
"temperature": "<block_does_not_provide_example>",
"max_concurrent_requests": "<block_does_not_provide_example>"
}
v1¶
Class: OpenAIBlockV1
(there are multiple versions of this block)
Source: inference.core.workflows.core_steps.models.foundation.openai.v1.OpenAIBlockV1
Warning: This block has multiple versions. Please refer to the specific version for details. You can learn more about how versions work here: Versioning
Ask a question to OpenAI's GPT-4 with Vision model.
You can specify arbitrary text prompts to the OpenAIBlock.
You need to provide your OpenAI API key to use the GPT-4 with Vision model.
This model was previously part of the LMM block.
Type identifier¶
Use the following identifier in step "type"
field: roboflow_core/open_ai@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 |
Text prompt to the OpenAI model. | ✅ |
openai_api_key |
str |
Your OpenAI API key. | ✅ |
openai_model |
str |
Model to be used. | ✅ |
json_output_format |
Dict[str, str] |
Holds dictionary that maps name of requested output field into its description. | ❌ |
image_detail |
str |
Indicates the image's quality, with 'high' suggesting it is of high resolution and should be processed or displayed with high fidelity.. | ✅ |
max_tokens |
int |
Maximum number of tokens the model can generate in it's response.. | ❌ |
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 OpenAI
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
,Stitch Images
,Trace Visualization
,Image Preprocessing
,Roboflow Custom Metadata
,OCR Model
,Polygon Zone Visualization
,LMM
,QR Code Generator
,Halo Visualization
,Perspective Correction
,Florence-2 Model
,Stability AI Inpainting
,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
,Clip Comparison
,Dynamic Crop
- outputs:
Crop Visualization
,Stitch OCR Detections
,SIFT
,Blur Visualization
,PTZ Tracking (ONVIF)
.md),Cache Set
,Property Definition
,Camera Focus
,Mask Visualization
,VLM as Classifier
,Object Detection Model
,Keypoint Detection Model
,Image Preprocessing
,Qwen2.5-VL
,Object Detection Model
,Bounding Rectangle
,Cache Get
,JSON Parser
,SmolVLM2
,Polygon Zone Visualization
,LMM
,QR Code Generator
,Size Measurement
,Florence-2 Model
,Moondream2
,Template Matching
,Label Visualization
,Pixel Color Count
,Segment Anything 2 Model
,Stability AI Image Generation
,Keypoint Detection Model
,Slack Notification
,Relative Static Crop
,Corner Visualization
,Multi-Label Classification Model
,Overlap Filter
,Image Blur
,Gaze Detection
,Model Comparison Visualization
,VLM as Detector
,Time in Zone
,Image Threshold
,Roboflow Dataset Upload
,CogVLM
,Byte Tracker
,Barcode Detection
,Single-Label Classification Model
,First Non Empty Or Default
,Polygon Visualization
,Stability AI Outpainting
,Keypoint Visualization
,Time in Zone
,Grid Visualization
,Delta Filter
,OpenAI
,Florence-2 Model
,Twilio SMS Notification
,Instance Segmentation Model
,Image Slicer
,Detections Stitch
,Identify Changes
,Continue If
,Dynamic Crop
,Anthropic Claude
,QR Code Detection
,Line Counter
,Line Counter
,LMM For Classification
,Rate Limiter
,Line Counter Visualization
,Color Visualization
,Image Contours
,Image Convert Grayscale
,Circle Visualization
,Google Gemini
,Data Aggregator
,Cosine Similarity
,Absolute Static Crop
,Expression
,Multi-Label Classification Model
,Dynamic Zone
,Byte Tracker
,Detections Consensus
,Stitch Images
,Trace Visualization
,Detections Filter
,Roboflow Custom Metadata
,OCR Model
,Detections Transformation
,Clip Comparison
,YOLO-World Model
,Halo Visualization
,CLIP Embedding Model
,Perspective Correction
,Stability AI Inpainting
,Buffer
,Velocity
,Webhook Sink
,Distance Measurement
,VLM as Detector
,Perception Encoder Embedding Model
,Triangle Visualization
,Background Color Visualization
,Detections Stabilizer
,Byte Tracker
,Path Deviation
,Icon Visualization
,SIFT Comparison
,Pixelate Visualization
,Llama 3.2 Vision
,Instance Segmentation Model
,CSV Formatter
,Google Vision OCR
,Reference Path Visualization
,VLM as Classifier
,Image Slicer
,Identify Outliers
,Depth Estimation
,Roboflow Dataset Upload
,Detection Offset
,OpenAI
,Classification Label Visualization
,Dot Visualization
,Email Notification
,Local File Sink
,OpenAI
,Single-Label Classification Model
,Bounding Box Visualization
,Camera Calibration
,Detections Classes Replacement
,Ellipse Visualization
,Detections Merge
,Path Deviation
,Model Monitoring Inference Aggregator
,Dimension Collapse
,SIFT Comparison
,Dominant Color
,Clip Comparison
Input and Output Bindings¶
The available connections depend on its binding kinds. Check what binding kinds
OpenAI
in version v1
has.
Bindings
-
input
images
(image
): The image to infer on..prompt
(string
): Text prompt to the OpenAI model.openai_api_key
(Union[secret
,string
]): Your OpenAI API key.openai_model
(string
): Model to be used.image_detail
(string
): Indicates the image's quality, with 'high' suggesting it is of high resolution and should be processed or displayed with high fidelity..
-
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 OpenAI
in version v1
{
"name": "<your_step_name_here>",
"type": "roboflow_core/open_ai@v1",
"images": "$inputs.image",
"prompt": "my prompt",
"openai_api_key": "xxx-xxx",
"openai_model": "gpt-4o",
"json_output_format": {
"count": "number of cats in the picture"
},
"image_detail": "auto",
"max_tokens": 450
}