Qwen-VL¶
Class: QwenVlmBlockV1
Source: inference.core.workflows.core_steps.models.foundation.qwen_vlm.v1.QwenVlmBlockV1
Run any Qwen vision-language model โ natively on Roboflow infrastructure or via OpenRouter.
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 -
Unprompted Object Detection (
object-detection) - Model detects and returns the bounding boxes for prominent objects in the image -
Structured Output Generation (
structured-answering) - Model returns a JSON response with the specified fields
๐ ๏ธ Backend selection¶
-
Native (Roboflow) โ small Qwen-VL models (0.8Bโ7B) run on the same infrastructure as your other Roboflow models. Lower latency. Recommended for tasks like OCR, captioning, and visual question answering.
-
OpenRouter โ large hosted Qwen models (9Bโ397B) reached via OpenRouter. Defaults to a Roboflow-managed API key and bills your Roboflow credits. Paste your own
sk-or-...key in theapi_keyfield to bypass Roboflow billing. Recommended for structured tasks that benefit from larger models (classification, object-detection, structured-answering).
The model_version dropdown lists every supported variant; each is bound to one backend.
A validator catches mismatches between your selected backend and model.
๐ Privacy filter (OpenRouter only)¶
- No data collection (default) โ providers may not train on your inputs.
- Allow data collection โ broader provider pool.
- Zero data retention โ strictest, restricts to providers that retain nothing.
Type identifier¶
Use the following identifier in step "type" field: roboflow_core/qwen_vlm@v1to add the block as
as step in your workflow.
Properties¶
| Name | Type | Description | Refs |
|---|---|---|---|
name |
str |
Enter a unique identifier for this step.. | โ |
api_key |
str |
OpenRouter API key (only used when backend=openrouter). Defaults to Roboflow's managed key. Provide your own sk-or-... key to call OpenRouter directly without Roboflow billing.. |
โ |
privacy_level |
str |
Provider privacy filter (only used when backend=openrouter). Stricter levels reduce the pool of providers and may increase per-call cost on the managed key.. | โ |
max_tokens |
int |
Maximum number of tokens the model can generate in its response.. | โ |
temperature |
float |
Sampling temperature (only used when backend=openrouter). The native Qwen-VL runtime doesn't accept a temperature knob. Range 0.0-2.0 โ higher = more random / "creative" generations.. | โ |
max_concurrent_requests |
int |
Maximum number of OpenRouter requests to run in parallel for a batch of images (only used when backend=openrouter). The native backend processes images sequentially. If unset, falls back to the global Workflows Execution Engine default. Restrict this if you hit OpenRouter rate limits.. | โ |
backend |
str |
Where to run inference. Native = Roboflow infrastructure. OpenRouter = large hosted Qwen models via OpenRouter.. | โ |
model_version |
str |
Native Qwen-VL variant. Pick a pre-trained model or Fine-tuned model to use a Qwen3 fine-tune from your workspace.. |
โ |
fine_tuned_model_id |
str |
Fine-tuned Qwen3-VL model from your workspace, in workspace/version form.. |
โ |
openrouter_model_version |
str |
OpenRouter-hosted Qwen variant.. | โ |
task_type |
str |
Task type to be performed by model. Value determines required parameters and output response.. | โ |
prompt |
str |
Text prompt to the Qwen model. | โ |
enable_thinking |
bool |
Enable Qwen3.5-VL's reasoning mode, where the model emits thinking tokens before its answer. The reasoning trace is returned in the thinking output. Only the Qwen 3.5 VL 2B checkpoint (and Qwen3-VL fine-tunes derived from it) supports this; ignored elsewhere.. |
โ |
output_structure |
Dict[str, str] |
Dictionary with structure of expected JSON response. | โ |
classes |
List[str] |
List of classes to be used. | โ |
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 Qwen-VL in version v1.
- inputs:
Image Slicer,OpenAI,LMM For Classification,Detections List Roll-Up,Single-Label Classification Model,Llama 3.2 Vision,OpenAI-Compatible LLM,Heatmap Visualization,CogVLM,Halo Visualization,Keypoint Detection Model,Stability AI Image Generation,Stitch OCR Detections,OpenRouter,Color Visualization,Text Display,Line Counter Visualization,VLM As Classifier,Image Slicer,Ellipse Visualization,Roboflow Asset Library Attributes,MoonshotAI Kimi,Image Blur,Google Gemma API,Halo Visualization,Morphological Transformation,Perspective Correction,Camera Focus,Trace Visualization,Single-Label Classification Model,Anthropic Claude,Semantic Segmentation Model,Dot Visualization,Background Color Visualization,Crop Visualization,Single-Label Classification Model,Classification Label Visualization,Stability AI Outpainting,Google Gemini,Model Comparison Visualization,Multi-Label Classification Model,Absolute Static Crop,Grid Visualization,Dynamic Zone,Instance Segmentation Model,Image Preprocessing,EasyOCR,Multi-Label Classification Model,Clip Comparison,Multi-Label Classification Model,Stability AI Inpainting,LMM,Mask Visualization,VLM As Detector,Google Gemini,Cosine Similarity,Semantic Segmentation Model,Label Visualization,Model Monitoring Inference Aggregator,Instance Segmentation Model,Image Convert Grayscale,GLM-OCR,Slack Notification,Size Measurement,Anthropic Claude,Bounding Box Visualization,Florence-2 Model,Qwen 3.6 API,Roboflow Dataset Upload,Morphological Transformation,Google Gemma,Qwen3.5-VL,Email Notification,Camera Calibration,Corner Visualization,Motion Detection,Instance Segmentation Model,Anthropic Claude,Gaze Detection,Reference Path Visualization,Pixelate Visualization,Email Notification,Camera Focus,Twilio SMS Notification,Florence-2 Model,Identify Changes,Dynamic Crop,Relative Static Crop,OCR Model,Twilio SMS/MMS Notification,QR Code Generator,Qwen-VL,Image Stack,Clip Comparison,OpenAI,Roboflow Dataset Upload,Llama 3.2 Vision,Qwen 3.5 API,Polygon Visualization,Google Gemini,Background Subtraction,Contrast Enhancement,Circle Visualization,Object Detection Model,Image Threshold,Triangle Visualization,Dimension Collapse,Keypoint Detection Model,Object Detection Model,MoonshotAI Kimi,Local File Sink,Google Vision OCR,OpenAI,Buffer,OpenAI,Roboflow Vision Events,Depth Estimation,SIFT Comparison,Instance Segmentation Model,Webhook Sink,Object Detection Model,Polygon Zone Visualization,Stitch Images,SIFT,Roboflow Custom Metadata,Icon Visualization,Keypoint Visualization,Contrast Equalization,S3 Sink,CSV Formatter,Polygon Visualization,Image Contours,Stitch OCR Detections,Blur Visualization,Keypoint Detection Model - outputs:
Distance Measurement,OpenAI,LMM For Classification,Detections List Roll-Up,SAM 3,Llama 3.2 Vision,OpenAI-Compatible LLM,Cache Get,Heatmap Visualization,CogVLM,Halo Visualization,Keypoint Detection Model,Stability AI Image Generation,Stitch OCR Detections,OpenRouter,Color Visualization,Cache Set,Text Display,Line Counter Visualization,Line Counter,VLM As Classifier,Ellipse Visualization,Roboflow Asset Library Attributes,MoonshotAI Kimi,Image Blur,Detections Classes Replacement,Halo Visualization,Google Gemma API,Morphological Transformation,Perspective Correction,Trace Visualization,CLIP Embedding Model,Anthropic Claude,Semantic Segmentation Model,JSON Parser,Dot Visualization,Background Color Visualization,Crop Visualization,VLM As Classifier,Time in Zone,Single-Label Classification Model,Classification Label Visualization,Path Deviation,Stability AI Outpainting,Pixel Color Count,Google Gemini,Model Comparison Visualization,Grid Visualization,Instance Segmentation Model,Image Preprocessing,Multi-Label Classification Model,Clip Comparison,Stability AI Inpainting,Time in Zone,LMM,Mask Visualization,VLM As Detector,Google Gemini,Label Visualization,Model Monitoring Inference Aggregator,Instance Segmentation Model,GLM-OCR,Slack Notification,Size Measurement,YOLO-World Model,Anthropic Claude,Bounding Box Visualization,Florence-2 Model,PTZ Tracking (ONVIF),Qwen 3.6 API,Roboflow Dataset Upload,SAM 3,Morphological Transformation,Google Gemma,Email Notification,Corner Visualization,Motion Detection,Time in Zone,VLM As Detector,Instance Segmentation Model,Anthropic Claude,Reference Path Visualization,Email Notification,Twilio SMS Notification,Dynamic Crop,Florence-2 Model,Twilio SMS/MMS Notification,Moondream2,Seg Preview,QR Code Generator,Qwen-VL,SAM 3,Detections Stitch,Clip Comparison,OpenAI,Detections Consensus,Roboflow Dataset Upload,Llama 3.2 Vision,Qwen 3.5 API,Polygon Visualization,Google Gemini,Circle Visualization,Triangle Visualization,Image Threshold,Object Detection Model,Keypoint Detection Model,Object Detection Model,MoonshotAI Kimi,Local File Sink,Line Counter,OpenAI,Google Vision OCR,Buffer,OpenAI,Roboflow Vision Events,SIFT Comparison,Depth Estimation,Perception Encoder Embedding Model,Path Deviation,Instance Segmentation Model,Webhook Sink,Object Detection Model,Polygon Zone Visualization,Icon Visualization,Roboflow Custom Metadata,Keypoint Visualization,Contrast Equalization,S3 Sink,Polygon Visualization,Stitch OCR Detections,Segment Anything 2 Model,Keypoint Detection Model
Input and Output Bindings¶
The available connections depend on its binding kinds. Check what binding kinds
Qwen-VL in version v1 has.
Bindings
-
input
api_key(Union[secret,ROBOFLOW_MANAGED_KEY,string]): OpenRouter API key (only used when backend=openrouter). Defaults to Roboflow's managed key. Provide your ownsk-or-...key to call OpenRouter directly without Roboflow billing..temperature(float): Sampling temperature (only used when backend=openrouter). The native Qwen-VL runtime doesn't accept a temperature knob. Range 0.0-2.0 โ higher = more random / "creative" generations..images(image): The image to infer on..model_version(string): Native Qwen-VL variant. Pick a pre-trained model orFine-tuned modelto use a Qwen3 fine-tune from your workspace..fine_tuned_model_id(Union[roboflow_model_id,string]): Fine-tuned Qwen3-VL model from your workspace, inworkspace/versionform..openrouter_model_version(string): OpenRouter-hosted Qwen variant..prompt(string): Text prompt to the Qwen model.classes(list_of_values): List of classes to be used.
-
output
output(Union[string,language_model_output]): String value ifstringor LLM / VLM output iflanguage_model_output.classes(list_of_values): List of values of any type.thinking(string): String value.
Example JSON definition of step Qwen-VL in version v1
{
"name": "<your_step_name_here>",
"type": "roboflow_core/qwen_vlm@v1",
"api_key": "rf_key:account",
"privacy_level": "<block_does_not_provide_example>",
"max_tokens": "<block_does_not_provide_example>",
"temperature": "<block_does_not_provide_example>",
"max_concurrent_requests": "<block_does_not_provide_example>",
"images": "$inputs.image",
"backend": "<block_does_not_provide_example>",
"model_version": "Qwen 3.5 VL 2B",
"fine_tuned_model_id": "your-workspace/3",
"openrouter_model_version": "Qwen 3.6 27B",
"task_type": "<block_does_not_provide_example>",
"prompt": "my prompt",
"enable_thinking": "<block_does_not_provide_example>",
"output_structure": {
"my_key": "description"
},
"classes": [
"class-a",
"class-b"
]
}