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:
Keypoint Visualization
,Google Gemini
,Keypoint Detection Model
,Image Contours
,Circle Visualization
,Image Threshold
,Absolute Static Crop
,Perspective Correction
,Color Visualization
,Gaze Detection
,Instance Segmentation Model
,Reference Path Visualization
,Stitch Images
,Image Blur
,Florence-2 Model
,Blur Visualization
,Local File Sink
,Relative Static Crop
,Halo Visualization
,Clip Comparison
,Cosine Similarity
,Stability AI Inpainting
,SIFT Comparison
,Icon Visualization
,Roboflow Custom Metadata
,Dimension Collapse
,Polygon Zone Visualization
,Depth Estimation
,Stability AI Image Generation
,Dynamic Zone
,Dynamic Crop
,Grid Visualization
,Crop Visualization
,Stitch OCR Detections
,Camera Calibration
,VLM as Classifier
,QR Code Generator
,SIFT
,Size Measurement
,Camera Focus
,Model Comparison Visualization
,Twilio SMS Notification
,Llama 3.2 Vision
,Triangle Visualization
,Line Counter Visualization
,Clip Comparison
,Email Notification
,LMM
,Roboflow Dataset Upload
,CSV Formatter
,Image Slicer
,Mask Visualization
,Single-Label Classification Model
,OCR Model
,Pixelate Visualization
,Webhook Sink
,Object Detection Model
,Slack Notification
,Dot Visualization
,Image Slicer
,Roboflow Dataset Upload
,Classification Label Visualization
,OpenAI
,Model Monitoring Inference Aggregator
,Polygon Visualization
,OpenAI
,Buffer
,LMM For Classification
,Stability AI Outpainting
,Trace Visualization
,Bounding Box Visualization
,Image Preprocessing
,Multi-Label Classification Model
,Image Convert Grayscale
,Google Vision OCR
,Label Visualization
,CogVLM
,Corner Visualization
,Background Color Visualization
,Florence-2 Model
,Identify Changes
,VLM as Detector
,Ellipse Visualization
,OpenAI
,Anthropic Claude
- outputs:
Keypoint Visualization
,Google Gemini
,Keypoint Detection Model
,Circle Visualization
,Path Deviation
,Image Threshold
,Perspective Correction
,Color Visualization
,Instance Segmentation Model
,Reference Path Visualization
,Image Blur
,Florence-2 Model
,PTZ Tracking (ONVIF)
.md),Local File Sink
,Keypoint Detection Model
,Halo Visualization
,Clip Comparison
,Stability AI Inpainting
,SIFT Comparison
,Cache Get
,Icon Visualization
,Time in Zone
,Roboflow Custom Metadata
,Polygon Zone Visualization
,Instance Segmentation Model
,Stability AI Image Generation
,Dynamic Crop
,Grid Visualization
,Crop Visualization
,Time in Zone
,Detections Consensus
,VLM as Classifier
,Segment Anything 2 Model
,Perception Encoder Embedding Model
,VLM as Classifier
,Pixel Color Count
,QR Code Generator
,Size Measurement
,Model Comparison Visualization
,Twilio SMS Notification
,CLIP Embedding Model
,Object Detection Model
,Llama 3.2 Vision
,Line Counter Visualization
,Triangle Visualization
,Clip Comparison
,Email Notification
,LMM
,Roboflow Dataset Upload
,Time in Zone
,Path Deviation
,Mask Visualization
,JSON Parser
,Webhook Sink
,Object Detection Model
,Slack Notification
,Cache Set
,Dot Visualization
,Roboflow Dataset Upload
,Detections Classes Replacement
,YOLO-World Model
,Classification Label Visualization
,OpenAI
,Model Monitoring Inference Aggregator
,VLM as Detector
,Polygon Visualization
,OpenAI
,Buffer
,LMM For Classification
,Trace Visualization
,Stability AI Outpainting
,Line Counter
,Bounding Box Visualization
,Distance Measurement
,Moondream2
,Image Preprocessing
,Google Vision OCR
,Label Visualization
,Line Counter
,CogVLM
,Corner Visualization
,Detections Stitch
,Background Color Visualization
,Florence-2 Model
,VLM as Detector
,Ellipse Visualization
,OpenAI
,Anthropic Claude
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
,ROBOFLOW_MANAGED_KEY
,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 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:
Keypoint Visualization
,Google Gemini
,Keypoint Detection Model
,Image Contours
,Circle Visualization
,Image Threshold
,Absolute Static Crop
,Perspective Correction
,Color Visualization
,Gaze Detection
,Instance Segmentation Model
,Reference Path Visualization
,Stitch Images
,Image Blur
,Florence-2 Model
,Blur Visualization
,Local File Sink
,Relative Static Crop
,Halo Visualization
,Clip Comparison
,Cosine Similarity
,Stability AI Inpainting
,SIFT Comparison
,Icon Visualization
,Roboflow Custom Metadata
,Dimension Collapse
,Polygon Zone Visualization
,Depth Estimation
,Stability AI Image Generation
,Dynamic Zone
,Dynamic Crop
,Grid Visualization
,Crop Visualization
,Stitch OCR Detections
,Camera Calibration
,VLM as Classifier
,QR Code Generator
,SIFT
,Size Measurement
,Camera Focus
,Model Comparison Visualization
,Twilio SMS Notification
,Llama 3.2 Vision
,Triangle Visualization
,Line Counter Visualization
,Clip Comparison
,Email Notification
,LMM
,Roboflow Dataset Upload
,CSV Formatter
,Image Slicer
,Mask Visualization
,Single-Label Classification Model
,OCR Model
,Pixelate Visualization
,Webhook Sink
,Object Detection Model
,Slack Notification
,Dot Visualization
,Image Slicer
,Roboflow Dataset Upload
,Classification Label Visualization
,OpenAI
,Model Monitoring Inference Aggregator
,Polygon Visualization
,OpenAI
,Buffer
,LMM For Classification
,Stability AI Outpainting
,Trace Visualization
,Bounding Box Visualization
,Image Preprocessing
,Multi-Label Classification Model
,Image Convert Grayscale
,Google Vision OCR
,Label Visualization
,CogVLM
,Corner Visualization
,Background Color Visualization
,Florence-2 Model
,Identify Changes
,VLM as Detector
,Ellipse Visualization
,OpenAI
,Anthropic Claude
- outputs:
Keypoint Visualization
,Google Gemini
,Keypoint Detection Model
,Circle Visualization
,Path Deviation
,Image Threshold
,Perspective Correction
,Color Visualization
,Instance Segmentation Model
,Reference Path Visualization
,Image Blur
,Florence-2 Model
,PTZ Tracking (ONVIF)
.md),Local File Sink
,Keypoint Detection Model
,Halo Visualization
,Clip Comparison
,Stability AI Inpainting
,SIFT Comparison
,Cache Get
,Icon Visualization
,Time in Zone
,Roboflow Custom Metadata
,Polygon Zone Visualization
,Instance Segmentation Model
,Stability AI Image Generation
,Dynamic Crop
,Grid Visualization
,Crop Visualization
,Time in Zone
,Detections Consensus
,VLM as Classifier
,Segment Anything 2 Model
,Perception Encoder Embedding Model
,VLM as Classifier
,Pixel Color Count
,QR Code Generator
,Size Measurement
,Model Comparison Visualization
,Twilio SMS Notification
,CLIP Embedding Model
,Object Detection Model
,Llama 3.2 Vision
,Line Counter Visualization
,Triangle Visualization
,Clip Comparison
,Email Notification
,LMM
,Roboflow Dataset Upload
,Time in Zone
,Path Deviation
,Mask Visualization
,JSON Parser
,Webhook Sink
,Object Detection Model
,Slack Notification
,Cache Set
,Dot Visualization
,Roboflow Dataset Upload
,Detections Classes Replacement
,YOLO-World Model
,Classification Label Visualization
,OpenAI
,Model Monitoring Inference Aggregator
,VLM as Detector
,Polygon Visualization
,OpenAI
,Buffer
,LMM For Classification
,Trace Visualization
,Stability AI Outpainting
,Line Counter
,Bounding Box Visualization
,Distance Measurement
,Moondream2
,Image Preprocessing
,Google Vision OCR
,Label Visualization
,Line Counter
,CogVLM
,Corner Visualization
,Detections Stitch
,Background Color Visualization
,Florence-2 Model
,VLM as Detector
,Ellipse Visualization
,OpenAI
,Anthropic Claude
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:
Keypoint Visualization
,Google Gemini
,Keypoint Detection Model
,Image Contours
,Circle Visualization
,Image Threshold
,Absolute Static Crop
,Perspective Correction
,Color Visualization
,Instance Segmentation Model
,Reference Path Visualization
,Stitch Images
,Image Blur
,Florence-2 Model
,Blur Visualization
,Local File Sink
,Relative Static Crop
,Halo Visualization
,Clip Comparison
,Stability AI Inpainting
,SIFT Comparison
,Icon Visualization
,Roboflow Custom Metadata
,Polygon Zone Visualization
,Depth Estimation
,Stability AI Image Generation
,Dynamic Crop
,Grid Visualization
,Crop Visualization
,Stitch OCR Detections
,Camera Calibration
,VLM as Classifier
,QR Code Generator
,SIFT
,Camera Focus
,Model Comparison Visualization
,Twilio SMS Notification
,Llama 3.2 Vision
,Triangle Visualization
,Line Counter Visualization
,Email Notification
,LMM
,Roboflow Dataset Upload
,CSV Formatter
,Image Slicer
,Mask Visualization
,Single-Label Classification Model
,OCR Model
,Pixelate Visualization
,Webhook Sink
,Object Detection Model
,Slack Notification
,Dot Visualization
,Image Slicer
,Roboflow Dataset Upload
,Classification Label Visualization
,OpenAI
,Model Monitoring Inference Aggregator
,Polygon Visualization
,OpenAI
,LMM For Classification
,Stability AI Outpainting
,Trace Visualization
,Bounding Box Visualization
,Image Preprocessing
,Multi-Label Classification Model
,Image Convert Grayscale
,Google Vision OCR
,Label Visualization
,CogVLM
,Corner Visualization
,Background Color Visualization
,Florence-2 Model
,VLM as Detector
,Ellipse Visualization
,OpenAI
,Anthropic Claude
- outputs:
Keypoint Visualization
,Google Gemini
,Detections Stabilizer
,Path Deviation
,Gaze Detection
,Reference Path Visualization
,Stitch Images
,Image Blur
,Florence-2 Model
,Local File Sink
,Barcode Detection
,Relative Static Crop
,Clip Comparison
,Cosine Similarity
,Icon Visualization
,Time in Zone
,Dimension Collapse
,Polygon Zone Visualization
,Identify Outliers
,Instance Segmentation Model
,Dynamic Zone
,Dynamic Crop
,Grid Visualization
,Property Definition
,Detections Consensus
,VLM as Classifier
,Single-Label Classification Model
,Camera Calibration
,Perception Encoder Embedding Model
,VLM as Classifier
,Pixel Color Count
,QR Code Generator
,SIFT
,Camera Focus
,Detections Filter
,Llama 3.2 Vision
,Line Counter Visualization
,Triangle Visualization
,Multi-Label Classification Model
,Email Notification
,Roboflow Dataset Upload
,Time in Zone
,Image Slicer
,Byte Tracker
,Single-Label Classification Model
,OCR Model
,Pixelate Visualization
,Byte Tracker
,Object Detection Model
,Dot Visualization
,Image Slicer
,Roboflow Dataset Upload
,OpenAI
,Model Monitoring Inference Aggregator
,VLM as Detector
,Buffer
,Trace Visualization
,Stability AI Outpainting
,Multi-Label Classification Model
,Overlap Filter
,CogVLM
,Corner Visualization
,Background Color Visualization
,First Non Empty Or Default
,Ellipse Visualization
,Halo Visualization
,OpenAI
,Anthropic Claude
,Keypoint Detection Model
,Image Contours
,Circle Visualization
,Image Threshold
,Absolute Static Crop
,Perspective Correction
,Color Visualization
,QR Code Detection
,Instance Segmentation Model
,PTZ Tracking (ONVIF)
.md),Blur Visualization
,Keypoint Detection Model
,Stability AI Inpainting
,SIFT Comparison
,Cache Get
,Detections Merge
,Roboflow Custom Metadata
,SmolVLM2
,Depth Estimation
,Template Matching
,Stability AI Image Generation
,Crop Visualization
,Stitch OCR Detections
,Time in Zone
,Continue If
,Rate Limiter
,Segment Anything 2 Model
,Dominant Color
,Expression
,SIFT Comparison
,Data Aggregator
,Bounding Rectangle
,Size Measurement
,Detection Offset
,Model Comparison Visualization
,Twilio SMS Notification
,CLIP Embedding Model
,Object Detection Model
,Clip Comparison
,LMM
,CSV Formatter
,Path Deviation
,Detections Transformation
,Mask Visualization
,Byte Tracker
,Qwen2.5-VL
,JSON Parser
,Webhook Sink
,Slack Notification
,Cache Set
,Velocity
,Detections Classes Replacement
,YOLO-World Model
,Delta Filter
,Classification Label Visualization
,Polygon Visualization
,OpenAI
,LMM For Classification
,Line Counter
,Moondream2
,Bounding Box Visualization
,Distance Measurement
,Image Preprocessing
,Image Convert Grayscale
,Google Vision OCR
,Label Visualization
,Line Counter
,Detections Stitch
,Florence-2 Model
,Identify Changes
,VLM as Detector
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
}