Surogate-3.5-4B
Surogate-3.5-4B is a Romanian-first bilingual assistant developed by Invergent to be used on the Surogate platform. It is optimized for Romanian instruction following, reasoning, math, and orthographic correctness. English remains supported.
Thinking support: explicit <think>...</think> reasoning traces in both
Romanian and English, alongside direct-answer mode.
Adaptive thinking dynamically adjusts the reasoning trace length to the problem’s complexity, using brief deliberation for simple questions and more extensive reasoning for harder tasks.
The model is compatible with the Qwen3.5 chat template and tooling.
Evaluation
| Benchmark | Surogate-3.5-4B |
|---|---|
| Romanian text quality | |
| Invented word forms / 1k ↓ | 1.023 |
| English leakage / 1k ↓ | 0.783 |
| Missing diacritics / 1k ↓ | 0.342 |
| Knowledge & STEM | |
| MMLU-Pro | ~77.5 |
| MMLU-Redux | ~87.0 |
| GPQA Diamond | ~74.7 |
| SuperGPQA | ~51.8 |
| Instruction following | |
| RO IFEval prompt / instruction strict | 38.15 / 64.25 |
| EN IFEval prompt / instruction strict | 73.88 / 81.69 |
| IFEval | ~80.8 |
| IFBench | ~53.3 |
| MultiChallenge | ~44.1 |
| Math & reasoning | |
| RO GSM8K direct / thinking strict | 76.86 / 77.09 |
| EN GSM8K strict | 92.04 |
| HMMT Feb 25 / Nov 25 | ~76.2 / ~79.1 |
| PolyMATH | ~52.6 |
| Coding & agents | |
| LiveCodeBench v6 | ~54.7 |
| BFCL-V4 | ~49.3 |
| TAU2-Bench | ~78.3 |
| Long context | |
| LongBench v2 | ~49.0 |
| Multilingual & translation | |
| Translation EN to RO / RO to EN (chrF2) | 53.61 / 63.14 |
| WMT24++ | ~65.3 |
| MMMLU | ~74.6 |
| MMLU-ProX | ~70.1 |
| INCLUDE | ~69.6 |
| Global PIQA | ~77.3 |
Plain values are direct measurements. Values marked ~ are estimates derived
from the source foundation model's published results and measured capability
retention.
Bilingual Thinking Example
With enable_thinking=True, the reasoning trace follows the prompt language.
Romanian prompt: Un tren parcurge 180 km în 3 ore. Care este viteza sa medie?
<think>
Viteza medie este distanța împărțită la timp: 180 km / 3 h = 60 km/h.
</think>
Viteza medie este 60 km/h.
English prompt: A train travels 180 km in 3 hours. What is its average speed?
<think>
Average speed is distance divided by time: 180 km / 3 h = 60 km/h.
</think>
The average speed is 60 km/h.
Usage
from transformers import AutoModelForImageTextToText, AutoProcessor
model_id = "surogate/Surogate-3.5-4B"
processor = AutoProcessor.from_pretrained(model_id)
model = AutoModelForImageTextToText.from_pretrained(
model_id,
device_map="auto",
torch_dtype="auto",
)
messages = [
{"role": "user", "content": "Explică pe scurt de ce cerul este albastru."}
]
inputs = processor.apply_chat_template(
messages,
tokenize=True,
add_generation_prompt=True,
enable_thinking=False,
return_tensors="pt",
return_dict=True,
).to(model.device)
output = model.generate(**inputs, max_new_tokens=512)
answer = processor.decode(
output[0][inputs.input_ids.shape[1]:],
skip_special_tokens=False,
)
print(answer)
Set enable_thinking=True to request an explicit reasoning trace. The shipped
generation defaults are temperature 0.6, top-p 0.95, and top-k 20.
Training Framework
The model was trained using our high-performance Surogate Trainer
Limitations
- Romanian is the primary optimization target.
- English performance may vary by task.
- The model can produce spelling, reasoning, and factual errors.
- Generated facts, calculations, and high-impact advice require independent verification.
Use is subject to the repository's license terms.
Contact Us
Contact us at sales@invergent.ai