model · available

Restyler 1

Takes the response from any model, including Claude, Gemini, GPT and your own fine-tunes, and rewrites it so it reads the way a person writes. It is trained to hold on to facts, meaning, names, numbers, links and formatting — see the measured retention rates below. Built to sit at the end of a generation pipeline: cleaning up drafts, tightening documentation, and making machine-assembled copy readable.

Try it in the browser

spec

model id
text-restyler-1
openrouter id
meragpt/text-restyler-1
context
4,096 tokens
max output
2,048 tokens
input price
$0.05 / 1M tokens
output price
$0.15 / 1M tokens
repeatability
same input, same output
max request
6,000 characters

built for

  • The last step of a generation pipeline, where a model has produced correct text that reads like a model produced it.
  • Documentation, changelogs and support replies assembled from templates or generated fragments.
  • Marketing and product copy drafted by a larger model and destined for a human reader.

not for

  • Evading AI detectors. Naturalness under strict semantic preservation was the objective; evasion was never optimised for and is not measured. Detector scores also move with every detector release, so any guarantee there is one nobody can keep.
  • Translation, summarisation or answering questions. It rewrites the text it is given and adds nothing to it.
  • Text where the exact wording is the point — legal clauses, quoted material, licence terms.

calling it

One request, one passage.

curl https://meragpt.com/v1/restyle \
  -H "Authorization: Bearer $MERAGPT_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"model": "text-restyler-1", "text": "..."}'

Send up to 6,000 characters at a time and loop over your own sections for anything longer — you get results as you go, and a failure costs one section rather than the whole document. The document is split on blank lines and rejoined losslessly: blocks under 25 words, headings, tables and code are returned exactly as sent, and a block over 80 words is split at sentence boundaries first. There is also an OpenAI-compatible /v1/chat/completions shim. It accepts temperature and top_p and ignores them: decoding is set to whatever measured best for this job.

evaluation

How it measures up

Tested on writing the model had never seen during training, and only on passages that carry a name, a number or a date — there is no way to tell whether facts survived a rewrite if the passage had no facts in it.

facts kept73%entities and numbers of the input present in the output
perfect retention41%share of blocks keeping every fact
length ratio0.8664% land within 0.8–1.2 of the source
invented voice0%never starts speaking as your company
repetition loops0%any 6-gram repeated 3+ times
naturalness63.7human reference on the same blocks is 57.1

limits

What it does not do well.

disclosure

Restyler 1 is our own model, built and trained in house for this one task. The weights are proprietary and are not published. What is published is the measurement: every number on this page comes from a test run on data the model had never seen in training, not from a demo we liked. Model ids are stable and are never renamed — a change in behaviour ships as a new id, so an integration pinned to text-restyler-1 keeps the model it was tested against.

Calling it from your own code is in the API docs. Pricing and the credit model are on the homepage.