Skip to content

Qwen3.5-35B-A3B-int4-ov gibberish output during high memory pressure #4345

Description

@TayQiXiang

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:

  1. Download ovms_windows_2026.2.0_python_off.zip
  2. Download models from HuggingFace
  3. CD into downloaded ovms folder, run setupvars.bat
  4. OVMS launch command: .\ovms --rest_port 8180 --config_path "C:\models\Qwen3.5-35B-A3B-int4-ov\model_config.json"
  5. Client command: python pycurl.py

Expected behavior
A proper response regarding the question.

Logs

Image Image Image

Configuration

  1. OVMS version: 2026.2.0
  2. 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": []
}
  1. 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`
  1. 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
  1. 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}")

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions