Instructions to use migtissera/Tess-4.5-27B with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Transformers
How to use migtissera/Tess-4.5-27B with Transformers:
# Use a pipeline as a high-level helper from transformers import pipeline pipe = pipeline("image-text-to-text", model="migtissera/Tess-4.5-27B") messages = [ { "role": "user", "content": [ {"type": "image", "url": "https://huggingface.co/datasets/huggingface/documentation-images/resolve/main/p-blog/candy.JPG"}, {"type": "text", "text": "What animal is on the candy?"} ] }, ] pipe(text=messages)# pip install -U transformers accelerate # Load model directly from transformers import AutoProcessor, AutoModelForMultimodalLM processor = AutoProcessor.from_pretrained("migtissera/Tess-4.5-27B") model = AutoModelForMultimodalLM.from_pretrained("migtissera/Tess-4.5-27B", device_map="auto") messages = [ { "role": "user", "content": [ {"type": "image", "url": "https://huggingface.co/datasets/huggingface/documentation-images/resolve/main/p-blog/candy.JPG"}, {"type": "text", "text": "What animal is on the candy?"} ] }, ] inputs = processor.apply_chat_template( messages, add_generation_prompt=True, tokenize=True, return_dict=True, return_tensors="pt", ).to(model.device) outputs = model.generate(**inputs, max_new_tokens=256) print(processor.decode(outputs[0][inputs["input_ids"].shape[-1]:])) - Notebooks
- Google Colab
- Kaggle
- Local Apps Settings
- vLLM
How to use migtissera/Tess-4.5-27B with vLLM:
Install from pip and serve model
# Install vLLM from pip: pip install vllm # Start the vLLM server: vllm serve "migtissera/Tess-4.5-27B" # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:8000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "migtissera/Tess-4.5-27B", "messages": [ { "role": "user", "content": [ { "type": "text", "text": "Describe this image in one sentence." }, { "type": "image_url", "image_url": { "url": "https://cdn.britannica.com/61/93061-050-99147DCE/Statue-of-Liberty-Island-New-York-Bay.jpg" } } ] } ] }'Use Docker
docker model run hf.co/migtissera/Tess-4.5-27B
- SGLang
How to use migtissera/Tess-4.5-27B with SGLang:
Install from pip and serve model
# Install SGLang from pip: pip install sglang # Start the SGLang server: python3 -m sglang.launch_server \ --model-path "migtissera/Tess-4.5-27B" \ --host 0.0.0.0 \ --port 30000 # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:30000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "migtissera/Tess-4.5-27B", "messages": [ { "role": "user", "content": [ { "type": "text", "text": "Describe this image in one sentence." }, { "type": "image_url", "image_url": { "url": "https://cdn.britannica.com/61/93061-050-99147DCE/Statue-of-Liberty-Island-New-York-Bay.jpg" } } ] } ] }'Use Docker images
docker run --gpus all \ --shm-size 32g \ -p 30000:30000 \ -v ~/.cache/huggingface:/root/.cache/huggingface \ --env "HF_TOKEN=<secret>" \ --ipc=host \ lmsysorg/sglang:latest \ python3 -m sglang.launch_server \ --model-path "migtissera/Tess-4.5-27B" \ --host 0.0.0.0 \ --port 30000 # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:30000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "migtissera/Tess-4.5-27B", "messages": [ { "role": "user", "content": [ { "type": "text", "text": "Describe this image in one sentence." }, { "type": "image_url", "image_url": { "url": "https://cdn.britannica.com/61/93061-050-99147DCE/Statue-of-Liberty-Island-New-York-Bay.jpg" } } ] } ] }' - Docker Model Runner
How to use migtissera/Tess-4.5-27B with Docker Model Runner:
docker model run hf.co/migtissera/Tess-4.5-27B
Tess-4.5
October 2026 ยท Continuity Research ยท GGUF
The frontier, at home.
Weโre introducing Tess-4.5, a 27-billion-parameter open-weights model for real engineering work. It reasons through every step, works with the tools and files actually in front of it, and runs on a single GPU or a laptop.
| 133 / 150 | 25% | 0 | 96 tok/s |
|---|---|---|---|
| BenchLocal, best of three tries (128 on the first). Level with its base, Qwen3.8-27B.ยน | Fewer tokens than its base to reach that score, reasoning included.ยฒ | Calls to a tool it wasnโt given, across 182 scored responses.ยณ | Writing code on a single RTX 4090, with the bundled draft head.โด |
Nothing traded away.
Specialist fine-tunes usually pay for their specialty with general ability. Tess-4.5 doesnโt. On BenchLocal, the communityโs quality suite for local models, it passes 133 of 150 scenarios within three tries, and 128 on the first: exactly its base, Qwen3.8-27B, on both counts. It leads on CLI-40, the pack closest to real terminal work, and is perfect on instruction following, math reasoning and bug finding.ยน
| BenchLocal pack, best of three | Tess-4.5-27B | Qwen3.8-27B |
|---|---|---|
| ToolCall-15 | 13 | 13 |
| InstructFollow-15 | 15 | 15 |
| StructOutput-15 | 14 | 14 |
| DataExtract-15 | 14 | 14 |
| ReasonMath-15 | 15 | 15 |
| BugFind-15 | 15 | 15 |
| HermesAgent-20 | 16 | 17 |
| CLI-40 | 31 | 30 |
| Total, best of three | 133 / 150 | 133 / 150 |
| Total, first try | 128 / 150 | 128 / 150 |
Less thinking. Same answers.
Tess-4.5 reaches the same score with a quarter fewer tokens. Across all 150 BenchLocal scenarios it generated 25% fewer tokens than its base, reasoning included. It is leanest where the work is hardest: on CLI-40 it used 32% fewer tokens and still scored higher, and on data extraction 43% fewer.ยฒ
| Tokens to the same score | Tess-4.5-27B | Qwen3.8-27B | |
|---|---|---|---|
| All 150 scenarios | 262K | 349K | โ25% |
| CLI-40 | 149K | 219K | โ32% |
| DataExtract-15 | 14K | 25K | โ43% |
| BugFind-15 | 28K | 35K | โ21% |
Fewer tokens means answers sooner, less context spent on its own thinking, and longer sessions before the window fills. On your own GPU it compounds with the draft head: fewer tokens, each one faster.
It knows where it is.
Local agents tend to fail in the same few ways. They invent a path, call a tool that isnโt there, or lose the thread an hour in. Tess-4.5 is built to do the opposite.
It reads its environment before it acts: the directory it is working in, and the exact tools it has been handed. Across 182 scored BenchLocal responses, it never called a tool it wasnโt given.ยณ
# system
Working directory: /Users/sam/projects/agent-core
Tools: Bash
# user
What Python version is installed here?
# tess
Bash({"command": "python --version", "description": "Check installed Python version"})
# user, no tools offered
What is 17 ร 23? Reply with just the number.
# tess
391
Fast where you are.
Tess-4.5 ships with a multi-token-prediction draft head that writes several tokens per step. On a single RTX 4090 it doubles code generation, from 49 tokens a second to 96. On a MacBook Pro it takes code from 24 to 38.โด
| Machine | Without draft | With MTP draft, code | With MTP draft, shell |
|---|---|---|---|
| NVIDIA RTX 4090 | 48.9 tok/s | 96.1 tok/s | 85.5 tok/s |
| Apple M4 Max | 24.4 tok/s | 37.8 tok/s | 33.1 tok/s |
Capability, with control.
An agent that can run commands can also run the wrong one. Tess-4.5 is built to ask before destructive actions and to report failures plainly, but no model is a guarantee. Run it with permission prompts, in a sandbox, or in a container.
The weights are open. You can inspect them, adapt them and run them where your data already lives. The responsibility for how they are deployed is yours, too.
Get started
Give Tess its bearings. Tess works best when it knows where it is. State the working directory in the system prompt and attach your real tool definitions:
You are Tess, an agentic coding assistant that operates in the user's terminal.
# Environment
Working directory: /path/to/your/project
- Pass your actual tools in the
toolsfield. Tess reads the definitions and uses what is there. - Leave thinking on, which is the default, and keep
preserve_thinkingon for multi-turn agent loops. - Sample with
temperature=1.0,top_p=0.95,top_k=20,min_p=0.0.
llama.cpp. GGUF quantizations, the vision projector and the MTP draft heads are in Tess-4.5-27B-GGUF.
llama-server -hf migtissera/Tess-4.5-27B-GGUF:Q4_K_M --spec-type draft-mtp --jinja -ngl 99 -c 65536
vLLM.
vllm serve migtissera/Tess-4.5-27B \
--reasoning-parser qwen3 \
--enable-auto-tool-choice --tool-call-parser qwen3_coder \
--speculative-config '{"method": "mtp", "num_speculative_tokens": 3}'
from openai import OpenAI
client = OpenAI(base_url="http://localhost:8000/v1", api_key="EMPTY")
response = client.chat.completions.create(
model="migtissera/Tess-4.5-27B",
messages=[
{"role": "system", "content": "You are Tess, an agentic coding assistant.\n\n# Environment\n\nWorking directory: /home/me/project"},
{"role": "user", "content": "Why is the test suite failing?"},
],
tools=[{
"type": "function",
"function": {
"name": "Bash",
"description": "Executes a bash command and returns its output.",
"parameters": {"type": "object", "properties": {"command": {"type": "string"}}, "required": ["command"]},
},
}],
temperature=1.0, top_p=0.95,
extra_body={"top_k": 20, "chat_template_kwargs": {"preserve_thinking": True}},
)
print(response.choices[0].message)
Availability
Tess-4.5 is available now under the Apache 2.0 license, built on Qwen3.8-27B.
| This repository | BF16 weights for transformers, vLLM and SGLang |
| Tess-4.5-27B-GGUF | Q4_K_M ยท Q6_K ยท Q8_0 ยท vision projector ยท MTP draft heads |
| Base model | Qwen3.8-27B: 27B dense, hybrid Gated DeltaNet and attention, vision-language |
| Context | 262,144 tokens, inherited from Qwen3.8-27B |
| Reasoning | Thinking on by default; reasoning_effort (xhigh, medium, low); preserve_thinking |
| Vision | Inherited from Qwen3.8-27B |
Limitations. Tess-4.5 is built for software engineering and agentic work in English. General chat and creative writing come from the base model and were not a focus.
Notes
- BenchLocal (benchlocal-cli), all 8 packs, 150 scenarios. Best of three is BenchLocalโs Pass@3: a scenario counts if any of up to three attempts passes. First try is Pass@1. Thinking on (reasoning effort xhigh), temperature 1.0, top-p 0.95, top-k 20, 16K thinking budget, one run per model on the same harness. At temperature 1.0 a single run moves by about two scenarios per pack, so read per-pack differences of one or two as ties. Community runs of Qwen3.8-27B with a 64K thinking budget report 129 to 137 on the first try.
- Completion tokens, reasoning plus answer, on each scenarioโs first attempt in the runs from note 1, summed over all 150 scenarios: Tess-4.5 262,047, Qwen3.8-27B 349,009. Counting retries too, Tess-4.5 used 20% fewer (318,532 against 399,130).
- Counted over every scored response, retries included, to requests that declared no tools.
- Q4_K_M with upstream llama.cpp, one request at a time, thinking on. RTX 4090: 131K context, q4_0 KV cache (the draftโs too), flash attention. M4 Max: 16K context. MTP: the Q8_0 draft head with draft-mtp speculative decoding. Gains depend on the task: on the 4090, prose went from 49 to 82 tokens a second.
Acknowledgments
Tess-4.5 stands on Qwen3.8-27B. Thank you to the Qwen team for an exceptional open base model. Thanks also to Thinking Machines Lab for Tinker, the llama.cpp community, and the BenchLocal community for an honest yardstick for local models.
@misc{tess45,
title = {Tess-4.5},
author = {Migel Tissera},
year = {2026},
url = {https://huggingface.co/migtissera/Tess-4.5-27B}
}
- Downloads last month
- 403