To run Hemmingway-1.5 locally, download the open weights from Hugging Face (HemmingwayAI/Hemmingway-1.5) and serve them with vLLM, or load them with Hugging Face Transformers as a chat model. Run it at temperature 1.0. A lower temperature makes its writing easier for AI detectors to catch.
It is a 27B model built on Hemmingway-1, with a 262,144-token context, under CC BY-NC 4.0: free for personal, research and other non-commercial use, and commercial use by agreement with us. The catch is memory: at 16-bit precision the weights alone take roughly 54 GB. If you do not have that, the same model is in the Hemmingway app and in the API as hemmingway-1.5.
What you need
| Weights | huggingface.co/HemmingwayAI/Hemmingway-1.5 |
|---|---|
| Code | github.com/lukeckprobierts/Hemmingway-1 |
| Parameters | 27B |
| Built on | Hemmingway-1 (Qwen3.8-27B) |
| Context | 262,144 tokens |
| Settings | Temperature 1.0, any thinking level |
| Licence | CC BY-NC 4.0; commercial use by agreement |
| Released | 25 October 2026 |
You also need Python, a recent vLLM or Transformers, and a machine with enough GPU memory. The weights on Hugging Face are the full 16-bit ones.
How much memory it needs
The arithmetic, so you can check it:
- A parameter stored at 16-bit precision takes 2 bytes.
- Hemmingway-1.5 has about 27 billion parameters.
- 27 billion times 2 bytes is about 54 GB.
That is the weights alone. The context needs memory on top: every token the model holds takes space, and the longer the context you allow, the more you need. Plan for more than 54 GB of GPU memory. If one card does not have it, vLLM and Transformers can both spread the model over several.
Option 1: serve it with vLLM
The model card gives one command:
vllm serve HemmingwayAI/Hemmingway-1.5 --max-model-len 262144
vllm servedownloads the weights the first time and starts a server.HemmingwayAI/Hemmingway-1.5is the model to load.--max-model-len 262144sets the longest context the server accepts, the model's full context.
If it runs out of memory at start, try a smaller --max-model-len first. A reply to an email thread or a rewrite of a page needs far less than 262,144 tokens. With several GPUs, vLLM's --tensor-parallel-size splits the model across them.
The server speaks an OpenAI-compatible API on your machine, so code written for OpenAI's Chat Completions can point at it with HemmingwayAI/Hemmingway-1.5 as the model name. Send temperature: 1.0. To change thinking, send enable_thinking or reasoning_effort inside chat_template_kwargs, as the card says.
Option 2: load it with Transformers
The model card's example, step by step:
- Import the classes:
from transformers import AutoModelForCausalLM, AutoTokenizer - Name the model:
model_id = "HemmingwayAI/Hemmingway-1.5" - Load the tokenizer:
tok = AutoTokenizer.from_pretrained(model_id) - Load the model on your GPUs at its own precision:
model = AutoModelForCausalLM.from_pretrained(model_id, device_map="auto", dtype="auto") - Write the conversation:
messages = [{"role": "user", "content": "Write a product description for a handmade ceramic coffee mug."}] - Build the input with the chat template and a thinking level:
ids = tok.apply_chat_template(messages, add_generation_prompt=True, reasoning_effort="medium", return_tensors="pt").to(model.device) - Generate at temperature 1.0:
out = model.generate(ids, max_new_tokens=8192, do_sample=True, temperature=1.0) - Decode only the new text:
text = tok.decode(out[0][ids.shape[-1]:], skip_special_tokens=True) - Print the reply without the thinking:
print(text.split("</think>")[-1].strip())
device_map="auto" spreads the model over more than one GPU, or puts part of it in ordinary memory if it must. That works, but slowly: fine for a test, not for a product. Always build the prompt with apply_chat_template, so the conversation reaches the model in the format it was trained on.
Settings
- Temperature 1.0. Every result on the model card was written at 1.0. Lower temperatures make its writing easier to detect. The repo's
generation_config.jsonalready sets 1.0, so Transformers uses it unless you pass another. - Any thinking level. It was tested at all four: off, low, medium and extra high, and passed GPTZero 90% of the time at each. Pass
enable_thinking=Falseto turn thinking off, orreasoning_effortas"low","medium"or"xhigh"(extra high, the default). - Room for thinking. Leave
max_new_tokensroom for the thinking and the reply together. The card's example uses 8,192.
Checking it works
Run the card's own ask: a product description for a handmade ceramic coffee mug. A working setup gives you the description itself, short and plain, with no preamble and no list of options. On the model card, the first try at extra high read:
Handmade from Colorado red clay. Glazed in one of our own mixed colors, produced in small batches for true color variations. Please enjoy the little flaws. 12 oz (500ml). Dishwasher and microwave safe.
Yours will differ, since it samples at temperature 1.0, but it should be the same kind of answer.
Option 3: no hardware at all
- The API. Hemmingway-1.5 runs behind an OpenAI-compatible API at
https://hemmingway.io/v1ashemmingway-1.5, the default model. Change the base URL, the key and the model name in code that already uses OpenAI's SDK. Keys and prices are on the API platform, every field in the docs. - The app. To write with it rather than build on it, the Hemmingway app on Mac, Windows, Android and the web uses it by default. It is free to try.
Running it yourself makes sense when your data has to stay on your machines, when you want to fine-tune it under the licence, or when you already have the GPUs. The API makes sense when you do not want to manage hardware.
What to expect from it
90% of Hemmingway-1.5's writing passes GPTZero and four of the top open AI detectors on the first try, across 1,848 texts in 13 kinds of writing. Real human writing passes the same detectors 86% of the time. How that test was run.
It is English-first. If you want Hemmingway-1 instead, the model 1.5 is built on, its guide is here.
Common questions
How do I run Hemmingway-1.5 with vLLM?
Run vllm serve HemmingwayAI/Hemmingway-1.5 --max-model-len 262144. It downloads the weights from Hugging Face and serves an OpenAI-compatible API on your machine. Send requests at temperature 1.0.
What settings should I use for Hemmingway-1.5?
Temperature 1.0, at any thinking level. It was tested at off, low, medium and extra high, and a lower temperature makes its writing easier to detect.
How much VRAM does Hemmingway-1.5 need?
At 16-bit precision, 27 billion parameters at 2 bytes each is roughly 54 GB for the weights alone, plus memory for the context. Plan for more than 54 GB of GPU memory, over several cards if needed.
Can I use Hemmingway-1.5 commercially?
With an agreement. It is under CC BY-NC 4.0, which lets anyone download, run, fine-tune and share it for non-commercial use. For commercial use, write to luka@hemmingway.io.
Can I run Hemmingway-1.5 on a laptop?
Only if it has well over 54 GB of GPU memory to spare, which most do not. On ordinary hardware, use the Hemmingway app or the API, which run the same model.