Qwen3.5-27B is a multimodal dense hybrid model developed by Alibaba Cloud’s Qwen team and released in February 2026 as a high-precision entry in the Qwen3.5 "Medium" series. Unlike its Mixture-of-Experts (MoE) siblings, the 27B model utilizes a dense architecture combining Gated Delta Networks with a feed-forward structure, activating its full parameter suite for every inference to maximize reliability. This design provides the highest instruction-following and coding accuracy in its class, with a notable IFEval score of 95.0. The model features a native 262K-token context window, extensible to 1M tokens via YaRN (RoPE scaling), and is released under the Apache-2.0 license.
Optimized for agentic workflows, Qwen3.5-27B employs an early-fusion architecture that treats visual and textual data as a unified stream for deep cross-modal reasoning. This unified approach allows the model to excel in technical analysis and software engineering, matching GPT-5-mini with a 72.4% score on SWE-bench Verified. While the larger MoE variants in the family lead in raw knowledge benchmarks, the 27B model offers a stable and high-density alternative for structured data extraction and spatial perception, contributing to the Qwen3.5 family’s generational leap in OCR accuracy over the previous Qwen3-VL series.
Drag and drop an image here, or click to browse
Model settings
Thinking level
Max output tokens
Default 65,536 · max 65,536
Sign in to adjust thinking and output length per run.
Results appear here. Add an image or pick an example to run Qwen3.5-27B.
—
Usage
Past 30 DaysVision Evals is Roboflow's ground-truth benchmark: every model runs the same real-world samples across six vision tasks, and answers are scored against ground truth.
Evals updated September 3, 2026Pricing updated September 4, 2026
Qwen3.5-27B averages 71.4% across the six Vision Evals tasks, ranking #21 of 52 models overall.
Its weakest relative showing is OCR, ranking #40 of 52 at 83.0%.
At $0.0050 per sample it is the 34th cheapest of the 52 benchmarked models, and its average inference time of 77.9s per sample makes it the 52nd fastest.
Field medians: Object Detection 54.1%, Counting 56.8%, Identification 84.4%, OCR 88.1%, Data Extraction 84.5%, Reasoning 53.6%.
| Task | Score | Field (0 to 100) | Rank | Cost / sample | Speed |
|---|---|---|---|---|---|
| Object Detection | 52.4% | #28 of 52 | $0.0045 | 68.15s | |
| Counting | 67.6% | #16 of 52 | $0.0081 | 128.99s | |
| Identification | 84.4% | #21 of 52 | $0.0055 | 87.82s | |
| OCR | 83.0% | #40 of 52 | $0.0033 | 52.69s | |
| Data Extraction | 82.7% | #33 of 52 | $0.0020 | 28.65s | |
| Reasoning | 58.3% | #20 of 52 | $0.0071 | 111.60s |
Overall benchmark score against estimated cost per sample, on a log scale. Upper-left is the sweet spot: high quality at low cost.
51 models on the current benchmark · scores and efficiency pooled across all six tasks at low effort · Qwen3.5 27B highlighted
Qwen3.5-27B scores are from a single run per task; a three-run re-run under the current protocol is pending · Methodology
View all Vision Evals →3 quantizations of Qwen3.5 27B, served with vLLM from the published weights and scored on the same tasks as the hosted models. Expand a row for the GPUs it was measured on.
Self-hosted rows run with thinking on at low effort, the same setting as the hosted frontier models. Some hosted open-weight rows still run without thinking, so a self-hosted quant can score above its own hosted API. Quantization still costs a little precision, and scores vary between runs.
Qwen3.5-27B costs $0.195 per 1M input tokens and $1.56 per 1M output tokens.
Pricing updated Sep 4, 2026
Other models worth comparing for similar use cases.
Qwen3.5-27B runs as a hosted REST endpoint through Roboflow Workflows. Pick a task, then hand the prompt to your coding agent or copy the code. Deploying the workflow into a free Roboflow workspace replaces the your-workspace and YOUR_API_KEY placeholders with your own.
Add the Roboflow MCP server
claude mcp add --transport http roboflow https://mcp.roboflow.com/mcp
Run /mcp and authorize Roboflow in your browser when the OAuth flow opens.
Start a new Claude Code session so the MCP loads, then paste the prompt below (it works the same in any agent).
Deploy this workflow to your Roboflow workspace to use it.
Integrate the Roboflow "Qwen3.5-27B" workflow into my app.
- Endpoint: POST https://serverless.roboflow.com/<your-workspace>/workflows/qwen3-5-27b-captioning
- Auth: send my Roboflow API key as `api_key` in the request body, read from the ROBOFLOW_API_KEY env var (never hardcode).
- Body: { "api_key": ..., "inputs": { `image`: { type: "url" | "base64", value } } }.
- Billing: this workflow needs no provider API key — inference runs on my Roboflow credits. A BYO provider key can be added to the model step in the Roboflow workflow editor later.
With the Roboflow MCP connected, call `workflows_get` on "qwen3-5-27b-captioning" to read the exact input schema (the source of truth), then `workflows_run` on a sample image to confirm the output shape before writing code (the MCP is authenticated, so this needs no key). Without the MCP, use the contract above.
Before running the app, set up these keys so it does not error at runtime:
- `ROBOFLOW_API_KEY` (sent as `api_key`) from https://app.roboflow.com/settings/api
Create a .gitignore'd .env with these variables, using placeholder values for any I haven't given you. Then pause and tell me directly, in your reply: the full path to the .env file, exactly which keys I need to paste in, and the link to get each one. Wait for me to confirm I've added them before you run anything. Do not run the app until I confirm.
Then add the integration to my codebase: match my project's language, framework, and conventions; read every key from environment variables (never hardcode); add basic error handling; and include a small runnable example. If you can't tell what language my project uses, ask me.pip install inference-sdkDeploy this workflow to your Roboflow workspace to use it.
# Inference runs on your Roboflow credits — no provider API key needed. To bill your own provider account instead, add an api_key to the model step in the Roboflow workflow editor.
# 1. Import the library
from inference_sdk import InferenceHTTPClient
# 2. Connect to your workflow
client = InferenceHTTPClient(
api_url="https://serverless.roboflow.com",
api_key="YOUR_API_KEY"
)
# 3. Run your workflow on an image
result = client.run_workflow(
workspace_name="your-workspace",
workflow_id="qwen3-5-27b-captioning",
images={
"image": "YOUR_IMAGE.jpg" # Path to your image file
},
use_cache=True # cache workflow definition for 15 minutes
)
# 4. Get your results
print(result)Deploy this workflow to your Roboflow workspace to use it.
// Inference runs on your Roboflow credits — no provider API key needed. To bill your own provider account instead, add an api_key to the model step in the Roboflow workflow editor.
const response = await fetch('https://serverless.roboflow.com/your-workspace/workflows/qwen3-5-27b-captioning', {
method: 'POST',
headers: {
'Content-Type': 'application/json'
},
body: JSON.stringify({
api_key: 'YOUR_API_KEY',
inputs: {
"image": {"type": "url", "value": "IMAGE_URL"}
}
})
});
const result = await response.json();
console.log(result);Deploy this workflow to your Roboflow workspace to use it.
# Inference runs on your Roboflow credits — no provider API key needed. To bill your own provider account instead, add an api_key to the model step in the Roboflow workflow editor.
curl --location 'https://serverless.roboflow.com/your-workspace/workflows/qwen3-5-27b-captioning' \
--header 'Content-Type: application/json' \
--data '{
"api_key": "YOUR_API_KEY",
"inputs": {
"image": {"type": "url", "value": "IMAGE_URL"}
}
}'Add the Roboflow MCP server
claude mcp add --transport http roboflow https://mcp.roboflow.com/mcp
Run /mcp and authorize Roboflow in your browser when the OAuth flow opens.
Start a new Claude Code session so the MCP loads, then paste the prompt below (it works the same in any agent).
Deploy this workflow to your Roboflow workspace to use it.
Integrate the Roboflow "Qwen3.5-27B" workflow into my app.
- Endpoint: POST https://serverless.roboflow.com/<your-workspace>/workflows/qwen3-5-27b-open-prompt
- Auth: send my Roboflow API key as `api_key` in the request body, read from the ROBOFLOW_API_KEY env var (never hardcode).
- Body: { "api_key": ..., "inputs": { `image`: { type: "url" | "base64", value }, `prompt`: text } }.
- Billing: this workflow needs no provider API key — inference runs on my Roboflow credits. A BYO provider key can be added to the model step in the Roboflow workflow editor later.
With the Roboflow MCP connected, call `workflows_get` on "qwen3-5-27b-open-prompt" to read the exact input schema (the source of truth), then `workflows_run` on a sample image to confirm the output shape before writing code (the MCP is authenticated, so this needs no key). Without the MCP, use the contract above.
Before running the app, set up these keys so it does not error at runtime:
- `ROBOFLOW_API_KEY` (sent as `api_key`) from https://app.roboflow.com/settings/api
Create a .gitignore'd .env with these variables, using placeholder values for any I haven't given you. Then pause and tell me directly, in your reply: the full path to the .env file, exactly which keys I need to paste in, and the link to get each one. Wait for me to confirm I've added them before you run anything. Do not run the app until I confirm.
Then add the integration to my codebase: match my project's language, framework, and conventions; read every key from environment variables (never hardcode); add basic error handling; and include a small runnable example. If you can't tell what language my project uses, ask me.pip install inference-sdkDeploy this workflow to your Roboflow workspace to use it.
# Inference runs on your Roboflow credits — no provider API key needed. To bill your own provider account instead, add an api_key to the model step in the Roboflow workflow editor.
# 1. Import the library
from inference_sdk import InferenceHTTPClient
# 2. Connect to your workflow
client = InferenceHTTPClient(
api_url="https://serverless.roboflow.com",
api_key="YOUR_API_KEY"
)
# 3. Run your workflow on an image
result = client.run_workflow(
workspace_name="your-workspace",
workflow_id="qwen3-5-27b-open-prompt",
images={
"image": "YOUR_IMAGE.jpg" # Path to your image file
},
parameters={
"prompt": "Describe what you see in the image"
},
use_cache=True # cache workflow definition for 15 minutes
)
# 4. Get your results
print(result)Deploy this workflow to your Roboflow workspace to use it.
// Inference runs on your Roboflow credits — no provider API key needed. To bill your own provider account instead, add an api_key to the model step in the Roboflow workflow editor.
const response = await fetch('https://serverless.roboflow.com/your-workspace/workflows/qwen3-5-27b-open-prompt', {
method: 'POST',
headers: {
'Content-Type': 'application/json'
},
body: JSON.stringify({
api_key: 'YOUR_API_KEY',
inputs: {
"image": {"type": "url", "value": "IMAGE_URL"},
"prompt": "Describe what you see in the image"
}
})
});
const result = await response.json();
console.log(result);Deploy this workflow to your Roboflow workspace to use it.
# Inference runs on your Roboflow credits — no provider API key needed. To bill your own provider account instead, add an api_key to the model step in the Roboflow workflow editor.
curl --location 'https://serverless.roboflow.com/your-workspace/workflows/qwen3-5-27b-open-prompt' \
--header 'Content-Type: application/json' \
--data '{
"api_key": "YOUR_API_KEY",
"inputs": {
"image": {"type": "url", "value": "IMAGE_URL"},
"prompt": "Describe what you see in the image"
}
}'Add the Roboflow MCP server
claude mcp add --transport http roboflow https://mcp.roboflow.com/mcp
Run /mcp and authorize Roboflow in your browser when the OAuth flow opens.
Start a new Claude Code session so the MCP loads, then paste the prompt below (it works the same in any agent).
Deploy this workflow to your Roboflow workspace to use it.
Integrate the Roboflow "Qwen3.5-27B" workflow into my app.
- Endpoint: POST https://serverless.roboflow.com/<your-workspace>/workflows/qwen3-5-27b-classification
- Auth: send my Roboflow API key as `api_key` in the request body, read from the ROBOFLOW_API_KEY env var (never hardcode).
- Body: { "api_key": ..., "inputs": { `image`: { type: "url" | "base64", value }, `classes`: string array } }.
- Billing: this workflow needs no provider API key — inference runs on my Roboflow credits. A BYO provider key can be added to the model step in the Roboflow workflow editor later.
With the Roboflow MCP connected, call `workflows_get` on "qwen3-5-27b-classification" to read the exact input schema (the source of truth), then `workflows_run` on a sample image to confirm the output shape before writing code (the MCP is authenticated, so this needs no key). Without the MCP, use the contract above.
Before running the app, set up these keys so it does not error at runtime:
- `ROBOFLOW_API_KEY` (sent as `api_key`) from https://app.roboflow.com/settings/api
Create a .gitignore'd .env with these variables, using placeholder values for any I haven't given you. Then pause and tell me directly, in your reply: the full path to the .env file, exactly which keys I need to paste in, and the link to get each one. Wait for me to confirm I've added them before you run anything. Do not run the app until I confirm.
Then add the integration to my codebase: match my project's language, framework, and conventions; read every key from environment variables (never hardcode); add basic error handling; and include a small runnable example. If you can't tell what language my project uses, ask me.pip install inference-sdkDeploy this workflow to your Roboflow workspace to use it.
# Inference runs on your Roboflow credits — no provider API key needed. To bill your own provider account instead, add an api_key to the model step in the Roboflow workflow editor.
# 1. Import the library
from inference_sdk import InferenceHTTPClient
# 2. Connect to your workflow
client = InferenceHTTPClient(
api_url="https://serverless.roboflow.com",
api_key="YOUR_API_KEY"
)
# 3. Run your workflow on an image
result = client.run_workflow(
workspace_name="your-workspace",
workflow_id="qwen3-5-27b-classification",
images={
"image": "YOUR_IMAGE.jpg" # Path to your image file
},
parameters={
"classes": ["class1", "class2", "class3"]
},
use_cache=True # cache workflow definition for 15 minutes
)
# 4. Get your results
print(result)Deploy this workflow to your Roboflow workspace to use it.
// Inference runs on your Roboflow credits — no provider API key needed. To bill your own provider account instead, add an api_key to the model step in the Roboflow workflow editor.
const response = await fetch('https://serverless.roboflow.com/your-workspace/workflows/qwen3-5-27b-classification', {
method: 'POST',
headers: {
'Content-Type': 'application/json'
},
body: JSON.stringify({
api_key: 'YOUR_API_KEY',
inputs: {
"image": {"type": "url", "value": "IMAGE_URL"},
"classes": ["class1", "class2", "class3"]
}
})
});
const result = await response.json();
console.log(result);Deploy this workflow to your Roboflow workspace to use it.
# Inference runs on your Roboflow credits — no provider API key needed. To bill your own provider account instead, add an api_key to the model step in the Roboflow workflow editor.
curl --location 'https://serverless.roboflow.com/your-workspace/workflows/qwen3-5-27b-classification' \
--header 'Content-Type: application/json' \
--data '{
"api_key": "YOUR_API_KEY",
"inputs": {
"image": {"type": "url", "value": "IMAGE_URL"},
"classes": ["class1", "class2", "class3"]
}
}'Add the Roboflow MCP server
claude mcp add --transport http roboflow https://mcp.roboflow.com/mcp
Run /mcp and authorize Roboflow in your browser when the OAuth flow opens.
Start a new Claude Code session so the MCP loads, then paste the prompt below (it works the same in any agent).
Deploy this workflow to your Roboflow workspace to use it.
Integrate the Roboflow "Qwen3.5-27B" workflow into my app.
- Endpoint: POST https://serverless.roboflow.com/<your-workspace>/workflows/qwen3-5-27b-object-detection
- Auth: send my Roboflow API key as `api_key` in the request body, read from the ROBOFLOW_API_KEY env var (never hardcode).
- Body: { "api_key": ..., "inputs": { `image`: { type: "url" | "base64", value }, `classes`: string array } }.
- Billing: this workflow needs no provider API key — inference runs on my Roboflow credits. A BYO provider key can be added to the model step in the Roboflow workflow editor later.
With the Roboflow MCP connected, call `workflows_get` on "qwen3-5-27b-object-detection" to read the exact input schema (the source of truth), then `workflows_run` on a sample image to confirm the output shape before writing code (the MCP is authenticated, so this needs no key). Without the MCP, use the contract above.
Before running the app, set up these keys so it does not error at runtime:
- `ROBOFLOW_API_KEY` (sent as `api_key`) from https://app.roboflow.com/settings/api
Create a .gitignore'd .env with these variables, using placeholder values for any I haven't given you. Then pause and tell me directly, in your reply: the full path to the .env file, exactly which keys I need to paste in, and the link to get each one. Wait for me to confirm I've added them before you run anything. Do not run the app until I confirm.
Then add the integration to my codebase: match my project's language, framework, and conventions; read every key from environment variables (never hardcode); add basic error handling; and include a small runnable example. If you can't tell what language my project uses, ask me.pip install inference-sdkDeploy this workflow to your Roboflow workspace to use it.
# Inference runs on your Roboflow credits — no provider API key needed. To bill your own provider account instead, add an api_key to the model step in the Roboflow workflow editor.
# 1. Import the library
from inference_sdk import InferenceHTTPClient
# 2. Connect to your workflow
client = InferenceHTTPClient(
api_url="https://serverless.roboflow.com",
api_key="YOUR_API_KEY"
)
# 3. Run your workflow on an image
result = client.run_workflow(
workspace_name="your-workspace",
workflow_id="qwen3-5-27b-object-detection",
images={
"image": "YOUR_IMAGE.jpg" # Path to your image file
},
parameters={
"classes": ["class1", "class2", "class3"]
},
use_cache=True # cache workflow definition for 15 minutes
)
# 4. Get your results
print(result)Deploy this workflow to your Roboflow workspace to use it.
// Inference runs on your Roboflow credits — no provider API key needed. To bill your own provider account instead, add an api_key to the model step in the Roboflow workflow editor.
const response = await fetch('https://serverless.roboflow.com/your-workspace/workflows/qwen3-5-27b-object-detection', {
method: 'POST',
headers: {
'Content-Type': 'application/json'
},
body: JSON.stringify({
api_key: 'YOUR_API_KEY',
inputs: {
"image": {"type": "url", "value": "IMAGE_URL"},
"classes": ["class1", "class2", "class3"]
}
})
});
const result = await response.json();
console.log(result);Deploy this workflow to your Roboflow workspace to use it.
# Inference runs on your Roboflow credits — no provider API key needed. To bill your own provider account instead, add an api_key to the model step in the Roboflow workflow editor.
curl --location 'https://serverless.roboflow.com/your-workspace/workflows/qwen3-5-27b-object-detection' \
--header 'Content-Type: application/json' \
--data '{
"api_key": "YOUR_API_KEY",
"inputs": {
"image": {"type": "url", "value": "IMAGE_URL"},
"classes": ["class1", "class2", "class3"]
}
}'Add the Roboflow MCP server
claude mcp add --transport http roboflow https://mcp.roboflow.com/mcp
Run /mcp and authorize Roboflow in your browser when the OAuth flow opens.
Start a new Claude Code session so the MCP loads, then paste the prompt below (it works the same in any agent).
Deploy this workflow to your Roboflow workspace to use it.
Integrate the Roboflow "Qwen3.5-27B" workflow into my app.
- Endpoint: POST https://serverless.roboflow.com/<your-workspace>/workflows/qwen3-5-27b-ocr
- Auth: send my Roboflow API key as `api_key` in the request body, read from the ROBOFLOW_API_KEY env var (never hardcode).
- Body: { "api_key": ..., "inputs": { `image`: { type: "url" | "base64", value } } }.
- Billing: this workflow needs no provider API key — inference runs on my Roboflow credits. A BYO provider key can be added to the model step in the Roboflow workflow editor later.
With the Roboflow MCP connected, call `workflows_get` on "qwen3-5-27b-ocr" to read the exact input schema (the source of truth), then `workflows_run` on a sample image to confirm the output shape before writing code (the MCP is authenticated, so this needs no key). Without the MCP, use the contract above.
Before running the app, set up these keys so it does not error at runtime:
- `ROBOFLOW_API_KEY` (sent as `api_key`) from https://app.roboflow.com/settings/api
Create a .gitignore'd .env with these variables, using placeholder values for any I haven't given you. Then pause and tell me directly, in your reply: the full path to the .env file, exactly which keys I need to paste in, and the link to get each one. Wait for me to confirm I've added them before you run anything. Do not run the app until I confirm.
Then add the integration to my codebase: match my project's language, framework, and conventions; read every key from environment variables (never hardcode); add basic error handling; and include a small runnable example. If you can't tell what language my project uses, ask me.pip install inference-sdkDeploy this workflow to your Roboflow workspace to use it.
# Inference runs on your Roboflow credits — no provider API key needed. To bill your own provider account instead, add an api_key to the model step in the Roboflow workflow editor.
# 1. Import the library
from inference_sdk import InferenceHTTPClient
# 2. Connect to your workflow
client = InferenceHTTPClient(
api_url="https://serverless.roboflow.com",
api_key="YOUR_API_KEY"
)
# 3. Run your workflow on an image
result = client.run_workflow(
workspace_name="your-workspace",
workflow_id="qwen3-5-27b-ocr",
images={
"image": "YOUR_IMAGE.jpg" # Path to your image file
},
use_cache=True # cache workflow definition for 15 minutes
)
# 4. Get your results
print(result)Deploy this workflow to your Roboflow workspace to use it.
// Inference runs on your Roboflow credits — no provider API key needed. To bill your own provider account instead, add an api_key to the model step in the Roboflow workflow editor.
const response = await fetch('https://serverless.roboflow.com/your-workspace/workflows/qwen3-5-27b-ocr', {
method: 'POST',
headers: {
'Content-Type': 'application/json'
},
body: JSON.stringify({
api_key: 'YOUR_API_KEY',
inputs: {
"image": {"type": "url", "value": "IMAGE_URL"}
}
})
});
const result = await response.json();
console.log(result);Deploy this workflow to your Roboflow workspace to use it.
# Inference runs on your Roboflow credits — no provider API key needed. To bill your own provider account instead, add an api_key to the model step in the Roboflow workflow editor.
curl --location 'https://serverless.roboflow.com/your-workspace/workflows/qwen3-5-27b-ocr' \
--header 'Content-Type: application/json' \
--data '{
"api_key": "YOUR_API_KEY",
"inputs": {
"image": {"type": "url", "value": "IMAGE_URL"}
}
}'Qwen3.5-27B is released under Apache-2.0, a permissive license. The Qwen3.5-27B license lets you run, fine-tune, and redistribute the model in commercial products with no obligation to open-source related code changes, so no separate commercial license is required.
Apache-2.0 grants an express patent license that terminates if you bring a patent claim over the work, and it disclaims warranties. Validate Qwen3.5-27B on your own data before you depend on it in production.
Read the full Apache 2.0 license ↗This is the straightforward case: a permissive license is the best technical solution and you are free to deploy Qwen3.5-27B commercially without open-sourcing your own code.
Do not hesitate to reach out with questions for your commercial project — our team will help you start solving business problems on the first call. See Roboflow commercial licensing for the models included in each plan.
Talk to salesThis model is released under the Apache License 2.0, a permissive open-source license that allows commercial use, modification, distribution, and patent use.
Yes. Under the terms of the Apache 2.0 license, you can freely use this model for commercial purposes, including in proprietary products. You must retain the copyright notice and disclaimers when redistributing.
License information is provided as a guide and is not legal advice.
Yes. Qwen3.5-27B accepts image input and handles OCR, data extraction, object counting, identification, visual reasoning, and object detection. On Roboflow's Vision Evals its strongest task is Counting at 67.6% (#16 of 52 at low effort). You can test it on your own image in the demo above.
Yes. its transcriptions match the ground truth 83% on average (#40 of 52 at low effort) on Vision Evals OCR. Pulling specific fields out of documents (data extraction) scores 82.7%.
Not its strength. On Vision Evals, Qwen3.5-27B scores 52.4% mAP@50 on object detection (#28 of 52 at low effort) and 67.6% judge-graded accuracy on object counting. For production counting or precise localization, pairing it with a specialized detector like RF-DETR or your own trained model in a Roboflow Workflow is usually more reliable: detect the objects, then count the detections.
On our benchmark's task mix, Qwen3.5-27B averages $0.0050 per sample at $0.20 per 1M input and $1.56 per 1M output tokens (#34 of 52 on cost), with an average speed of 77.9s per sample across the benchmark. Actual cost depends on your images and prompts.
On the overall Vision Evals ranking, Qwen3.5-27B sits #21 of 52 at 71.4%, just behind Qwen3.6 35B-A3B (71.7%) and just ahead of Muse Glimmer 30B (70.8%). See the full side-by-side: Qwen3.5-27B vs Qwen3.6 35B-A3B.