openvinotoolkit / openvinotoolkit/model_server
Qwen3.5-35B-A3B-int4-ov gibberish output during high memory pressure
Nobody has claimed this yet.
- Dominant language
- C++
- Stars
- 931
- Forks
- 277
- Avg merge
- 2d 13h
- Merged PRs (30d)
- 68
Description
Describe the bug
When inferencing the model with an input token count of 16389 and an output token count of 512, the returned response is gibberish (All Exclamation Marks).
To Reproduce
Steps to reproduce the behavior:
- Download ovms_windows_2026.2.0_python_off.zip
- Download models from HuggingFace
- CD into downloaded ovms folder, run
setupvars.bat - OVMS launch command: .\ovms --rest_port 8180 --config_path "C:\models\Qwen3.5-35B-A3B-int4-ov\model_config.json"
- Client command: python pycurl.py
Expected behavior
A proper response regarding the question.
Logs
Configuration
- OVMS version:
2026.2.0 - OVMS config.json file
{
"mediapipe_config_list": [
{
"name": "Qwen3.5-35B-A3B-int4-ov",
"base_path": "C:\\models\\Qwen3.5-35B-A3B-int4-ov"
}
],
"model_config_list": []
}
- CPU, accelerator's versions if applicable
Intel(R) Core(TM) Ultra X7 358H, 1900 Mhz, 16 Core(s), 16 Logical Processor(s)
Intel(R) Arc(TM) B390 GPU
32 GB 8533Mt/s
Driver version `32.0.101.8801`
- Model repository directory structure
C:.
| .gitattributes
| chat_template.jinja
| config.json
| generation_config.json
| graph.pbtxt
| model_config.json
| openvino_config.json
| openvino_detokenizer.bin
| openvino_detokenizer.xml
| openvino_language_model.bin
| openvino_language_model.xml
| openvino_text_embeddings_model.bin
| openvino_text_embeddings_model.xml
| openvino_tokenizer.bin
| openvino_tokenizer.xml
| openvino_vision_embeddings_merger_model.bin
| openvino_vision_embeddings_merger_model.xml
| openvino_vision_embeddings_model.bin
| openvino_vision_embeddings_model.xml
| openvino_vision_embeddings_pos_model.bin
| openvino_vision_embeddings_pos_model.xml
| preprocessor_config.json
| processor_config.json
| README.md
| tokenizer.json
| tokenizer_config.json
|
\---.cache
\---huggingface
| .gitignore
|
\---download
.gitattributes.metadata
chat_template.jinja.metadata
config.json.metadata
generation_config.json.metadata
openvino_config.json.metadata
openvino_detokenizer.bin.metadata
openvino_detokenizer.xml.metadata
openvino_language_model.bin.metadata
openvino_language_model.xml.metadata
openvino_text_embeddings_model.bin.metadata
openvino_text_embeddings_model.xml.metadata
openvino_tokenizer.bin.metadata
openvino_tokenizer.xml.metadata
openvino_vision_embeddings_merger_model.bin.metadata
openvino_vision_embeddings_merger_model.xml.metadata
openvino_vision_embeddings_model.bin.metadata
openvino_vision_embeddings_model.xml.metadata
openvino_vision_embeddings_pos_model.bin.metadata
openvino_vision_embeddings_pos_model.xml.metadata
preprocessor_config.json.metadata
processor_config.json.metadata
README.md.metadata
tokenizer.json.metadata
tokenizer_config.json.metadata
- Model or publicly available similar model that reproduces the issue
OpenVINO/Qwen3.5-35B-A3B-int4-ov
Additional context
graph.pbtxt:
input_stream: "HTTP_REQUEST_PAYLOAD:input"
output_stream: "HTTP_RESPONSE_PAYLOAD:output"
node: {
name: "LLMExecutor"
calculator: "HttpLLMCalculator"
input_stream: "LOOPBACK:loopback"
input_stream: "HTTP_REQUEST_PAYLOAD:input"
input_side_packet: "LLM_NODE_RESOURCES:llm"
output_stream: "LOOPBACK:loopback"
output_stream: "HTTP_RESPONSE_PAYLOAD:output"
input_stream_info: {
tag_index: 'LOOPBACK:0'
back_edge: true
}
node_options: {
[type.googleapis.com/mediapipe.LLMCalculatorOptions]: {
models_path: "./"
plugin_config: '{}'
enable_prefix_caching: true
dynamic_split_fuse: false
max_num_seqs: 15
max_num_batched_tokens: 131072
device: "GPU"
}
}
input_stream_handler {
input_stream_handler: "SyncSetInputStreamHandler"
options {
[mediapipe.SyncSetInputStreamHandlerOptions.ext] {
sync_set {
tag_index: "LOOPBACK:0"
}
}
}
}
}
pycurl.py
import json
import requests
# 1. Configure the API endpoint and model parameters
url = "http://127.0.0.1:8180/v3/chat/completions"
model_name = "Qwen3.5-35B-A3B-int4-ov"
base_sentence = "What is OpenVINO? Please explain with examples. " # This has 11 tokens
num_repetitions = 1489
prompt_content = base_sentence * num_repetitions
# 3. Construct the payload
payload = {
"model": model_name,
"messages": [
{
"role": "user",
"content": prompt_content
}
],
"max_tokens": 512,
"temperature": 0
}
headers = {
"Content-Type": "application/json"
}
# 4. Send the request
try:
response = requests.post(url, headers=headers, json=payload)
if response.status_code == 200:
print("Success! Response from server:")
print(json.dumps(response.json(), indent=2))
else:
print(f"Failed with status code: {response.status_code}")
print(response.text)
except requests.exceptions.RequestException as e:
print(f"An error occurred while connecting to the server: {e}")
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Reproduce the issue with pycurl.py against the OVMS 2026.2.0 setup, using the Qwen3.5-35B-A3B-int4-ov model and the graph.pbtxt configuration. Start by running the documented setup and client commands with the 16,389-token input and 512-token output, then inspect the reported logs and configuration. Done means the same request returns a proper response rather than gibberish under the stated memory pressure.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- ai, backend-api-design
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 52/100