Compare commits
3 Commits
llm-prose-
...
add-llm-pr
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
c9af95d99e | ||
|
|
a6fb657d0e | ||
|
|
7b22e6757d |
@@ -1,8 +1,9 @@
|
||||
# LLM Prose Tells
|
||||
|
||||
Every pattern in this document shows up in human writing occasionally. They
|
||||
become diagnostic only through density. A person might use one or two across an
|
||||
entire essay, but LLM output packs fifteen into a single paragraph.
|
||||
All of these show up in human writing occasionally. No single one is conclusive
|
||||
on its own. The difference is concentration — a person might lean on one or two
|
||||
of these habits across an entire essay, but LLM output will use fifteen of them
|
||||
per paragraph, consistently, throughout the entire piece.
|
||||
|
||||
---
|
||||
|
||||
@@ -15,20 +16,10 @@ A negation followed by an em-dash and a reframe.
|
||||
> "It's not just a tool—it's a paradigm shift." "This isn't about
|
||||
> technology—it's about trust."
|
||||
|
||||
The single most recognizable LLM construction. Models produce this at roughly 10
|
||||
to 50x the rate of human writers. Four of them in one essay and you know what
|
||||
The single most recognizable LLM construction. Models produce this at roughly
|
||||
10–50x the rate of human writers. Four of them in one essay and you know what
|
||||
you're reading.
|
||||
|
||||
### Em-Dash Overuse Generally
|
||||
|
||||
Even outside the "not X but Y" pivot, models use em-dashes at far higher rates
|
||||
than human writers. They substitute em-dashes for commas, semicolons,
|
||||
parentheses, colons, and periods, often multiple times per paragraph. A human
|
||||
writer might use one or two in an entire piece for a specific parenthetical
|
||||
effect. Models scatter them everywhere because the em-dash can stand in for any
|
||||
other punctuation mark, so they default to it. More than two or three per page
|
||||
is a meaningful signal on its own.
|
||||
|
||||
### The Colon Elaboration
|
||||
|
||||
A short declarative clause, then a colon, then a longer explanation.
|
||||
@@ -36,15 +27,15 @@ A short declarative clause, then a colon, then a longer explanation.
|
||||
> "The answer is simple: we need to rethink our approach from the ground up."
|
||||
|
||||
Models reach for this in every other paragraph. The construction is perfectly
|
||||
normal. The frequency gives it away.
|
||||
normal; the frequency gives it away.
|
||||
|
||||
### The Triple Construction
|
||||
|
||||
> "It's fast, it's scalable, and it's open source."
|
||||
|
||||
Three parallel items in a list, usually escalating. Always exactly three (rarely
|
||||
two, never four) with strict grammatical parallelism that human writers rarely
|
||||
bother maintaining.
|
||||
Three parallel items in a list, usually escalating. Always exactly three. Rarely
|
||||
two. Never four. Strict grammatical parallelism that human writers rarely bother
|
||||
maintaining.
|
||||
|
||||
### The Staccato Burst
|
||||
|
||||
@@ -57,11 +48,12 @@ at matching length creates a mechanical regularity that reads as generated.
|
||||
|
||||
### The Two-Clause Compound Sentence
|
||||
|
||||
Possibly the most pervasive structural tell, and easy to miss because each
|
||||
individual instance looks like normal English. The model produces sentence after
|
||||
sentence where an independent clause is followed by a comma, a conjunction
|
||||
("and," "but," "which," "because"), and a second independent clause of similar
|
||||
length. Every sentence becomes two balanced halves joined in the middle.
|
||||
This might be the single most pervasive structural tell, and it's easy to miss
|
||||
because each individual instance looks like normal English. The model produces
|
||||
sentence after sentence in the same shape: an independent clause, a comma, a
|
||||
conjunction ("and," "but," "which," "because"), and a second independent clause
|
||||
of similar length. Over and over. Every sentence is two balanced halves joined
|
||||
in the middle.
|
||||
|
||||
> "The construction itself is perfectly normal, which is why the frequency is
|
||||
> what gives it away." "They contain zero information, and the actual point
|
||||
@@ -71,24 +63,24 @@ length. Every sentence becomes two balanced halves joined in the middle.
|
||||
|
||||
Human prose has sentences with one clause, sentences with three, sentences that
|
||||
start with a subordinate clause before reaching the main one, sentences that
|
||||
embed their complexity in the middle. When every sentence on the page has that
|
||||
same two-part structure, the rhythm becomes monotonous in a way that's hard to
|
||||
pinpoint but easy to feel.
|
||||
embed their complexity in the middle. When every sentence on the page has the
|
||||
same two-part comma-conjunction-comma structure, the rhythm becomes monotonous
|
||||
in a way that's hard to pinpoint but easy to feel.
|
||||
|
||||
### Uniform Sentences Per Paragraph
|
||||
|
||||
Model-generated paragraphs contain between three and five sentences. This count
|
||||
holds steady across an entire piece. If the first paragraph has four sentences,
|
||||
every subsequent paragraph will too. Human writers are much more varied (a
|
||||
single sentence followed by one that runs eight or nine) because they follow the
|
||||
shape of an idea, not a template.
|
||||
Model-generated paragraphs contain between three and five sentences, and this
|
||||
count holds steady across an entire piece. If the first paragraph has four
|
||||
sentences, every subsequent paragraph will too. Human writers are much more
|
||||
varied — a single sentence followed by one that runs eight or nine — because
|
||||
they follow the shape of an idea, not a template.
|
||||
|
||||
### The Dramatic Fragment
|
||||
|
||||
Sentence fragments used as standalone paragraphs for emphasis, like "Full stop."
|
||||
or "Let that sink in." on their own line. Using one in an entire essay is a
|
||||
reasonable stylistic choice, but models drop them in once per section or more,
|
||||
at which point it becomes a habit rather than a deliberate decision.
|
||||
at which point it stops being deliberate and becomes a habit.
|
||||
|
||||
### The Pivot Paragraph
|
||||
|
||||
@@ -119,28 +111,13 @@ The first clause already makes the point. The contrasting clause restates it
|
||||
from the other direction. If you delete the "whereas" clause and the sentence
|
||||
still says everything it needs to, the contrast was filler.
|
||||
|
||||
### Unnecessary Elaboration
|
||||
|
||||
Models keep going after the sentence has already made its point, tacking on
|
||||
clarifying phrases, adverbial modifiers, or restatements that add nothing.
|
||||
|
||||
> "A person might lean on one or two of these habits across an entire essay, but
|
||||
> LLM output will use fifteen of them per paragraph, consistently, throughout
|
||||
> the entire piece."
|
||||
|
||||
This sentence could end at "paragraph." The words after it just repeat what "per
|
||||
paragraph" already means. Models do this because they're optimizing for clarity
|
||||
at the expense of concision, and because their training rewards thoroughness.
|
||||
The result is prose that feels padded. If you can cut the last third of a
|
||||
sentence without losing any meaning, the last third shouldn't be there.
|
||||
|
||||
### The Question-Then-Answer
|
||||
|
||||
> "So what does this mean for the average user? It means everything."
|
||||
|
||||
A rhetorical question immediately followed by its own answer. Models do this two
|
||||
or three times per piece because it fakes forward momentum. A human writer might
|
||||
do it once.
|
||||
A rhetorical question immediately followed by its own answer. Models lean on
|
||||
this two or three times per piece because it generates the feeling of forward
|
||||
momentum without requiring any actual argument. A human writer might do it once.
|
||||
|
||||
---
|
||||
|
||||
@@ -196,8 +173,9 @@ out to the civilizational scale before they've said anything specific.
|
||||
> "While X has its drawbacks, it also offers significant benefits."
|
||||
|
||||
Every argument followed by a concession, every criticism softened. A direct
|
||||
artifact of RLHF training, which penalizes strong stances. Models reflexively
|
||||
both-sides everything even when a clear position would serve the reader better.
|
||||
artifact of RLHF training, which penalizes strong stances. The result is a model
|
||||
that reflexively both-sides everything even when a clear position would serve
|
||||
the reader better.
|
||||
|
||||
### The Throat-Clearing Opener
|
||||
|
||||
@@ -252,19 +230,18 @@ natural disaster. That interchangeability is what makes it identifiable.
|
||||
|
||||
If the first section of a model-generated essay runs about 150 words, every
|
||||
subsequent section will fall between 130 and 170. Human writing is much more
|
||||
uneven, with 50 words in one section and 400 in the next.
|
||||
uneven — 50 words in one section, 400 in the next.
|
||||
|
||||
### The Five-Paragraph Prison
|
||||
|
||||
Model essays follow a rigid introduction-body-conclusion arc even when nobody
|
||||
asked for one. The introduction previews the argument, the body presents 3 to 5
|
||||
points, and then the conclusion restates the thesis using slightly different
|
||||
words.
|
||||
asked for one. Introduction previews the argument. Body presents 3–5 points.
|
||||
Conclusion restates the thesis in different words.
|
||||
|
||||
### Connector Addiction
|
||||
|
||||
Look at the first word of each paragraph in model output. You'll find an
|
||||
unbroken chain of transition words: "However," "Furthermore," "Moreover,"
|
||||
unbroken chain of transition words — "However," "Furthermore," "Moreover,"
|
||||
"Additionally," "That said," "To that end," "With that in mind," "Building on
|
||||
this." Human prose moves between ideas without announcing every transition.
|
||||
|
||||
@@ -276,8 +253,8 @@ obscure idiom without explaining it, make a joke that risks falling flat, leave
|
||||
a thought genuinely unfinished, or keep a sentence the writer liked the sound of
|
||||
even though it doesn't quite work.
|
||||
|
||||
Human writing does all of those things regularly. That total absence of rough
|
||||
patches and false starts is one of the strongest signals that text was
|
||||
Human writing does all of those things. The total absence of rough edges, false
|
||||
starts, and odd rhythmic choices is one of the strongest signals that text was
|
||||
machine-generated.
|
||||
|
||||
---
|
||||
@@ -300,9 +277,9 @@ verbal tics before a qualification the model believes someone expects.
|
||||
|
||||
### The Metaphor Crutch
|
||||
|
||||
Models rely on a small, predictable set of metaphors ("double-edged sword," "tip
|
||||
of the iceberg," "north star," "building blocks," "elephant in the room,"
|
||||
"perfect storm," "game-changer") and reach for them with unusual regularity
|
||||
Models rely on a small, predictable set of metaphors — "double-edged sword,"
|
||||
"tip of the iceberg," "north star," "building blocks," "elephant in the room,"
|
||||
"perfect storm," "game-changer" — and reach for them with unusual regularity
|
||||
across every topic. The pool is noticeably smaller than what human writers draw
|
||||
from.
|
||||
|
||||
@@ -314,11 +291,11 @@ No single pattern on this list proves anything by itself. Humans use em-dashes.
|
||||
Humans write "crucial." Humans ask rhetorical questions.
|
||||
|
||||
What gives it away is how many of these show up at once. Model output will hit
|
||||
10 to 20 of these patterns per page. Human writing might trigger 2 or 3,
|
||||
distributed unevenly, mixed with idiosyncratic constructions no model would
|
||||
produce. When every paragraph on the page reads like it came from the same
|
||||
careful, balanced, slightly formal, structurally predictable process, it was
|
||||
generated by one.
|
||||
10–20 of these patterns per page. Human writing might trigger 2–3, distributed
|
||||
unevenly, mixed with idiosyncratic constructions no model would produce. When
|
||||
every paragraph on the page reads like it came from the same careful, balanced,
|
||||
slightly formal, structurally predictable process, it was probably generated by
|
||||
one.
|
||||
|
||||
---
|
||||
|
||||
@@ -361,96 +338,86 @@ passes, because fixing one pattern often introduces another.
|
||||
to the unqualified claim or to drop the sentence entirely. If the claim needs
|
||||
"almost" to be true, it might not be worth making.
|
||||
|
||||
7. Search for em-dashes and replace each one with the punctuation mark that
|
||||
would normally be used in that position (comma, semicolon, colon, period, or
|
||||
parentheses). If you can't identify which one it should be, the sentence
|
||||
needs to be restructured.
|
||||
|
||||
### Pass 2: Sentence-Level Restructuring
|
||||
|
||||
8. Find every em-dash pivot ("not X...but Y," "not just X...Y," "more than
|
||||
X...Y") and rewrite it as two separate clauses or a single sentence that
|
||||
makes the point without the negation-then-correction structure.
|
||||
7. Find every em-dash pivot ("not X—but Y," "not just X—Y," "more than X—Y") and
|
||||
rewrite it as two separate clauses or a single sentence that makes the point
|
||||
without the negation-then-correction structure.
|
||||
|
||||
9. Find every colon elaboration and check whether it's doing real work. If the
|
||||
8. Find every colon elaboration and check whether it's doing real work. If the
|
||||
clause before the colon could be deleted without losing meaning, rewrite the
|
||||
sentence to start with the substance that comes after the colon.
|
||||
|
||||
10. Find every triple construction (three parallel items in a row) and either
|
||||
reduce it to two, expand it to four or more, or break the parallelism so the
|
||||
items don't share the same grammatical structure.
|
||||
9. Find every triple construction (three parallel items in a row) and either
|
||||
reduce it to two, expand it to four or more, or break the parallelism so the
|
||||
items don't share the same grammatical structure.
|
||||
|
||||
11. Find every staccato burst (three or more short sentences in a row at similar
|
||||
10. Find every staccato burst (three or more short sentences in a row at similar
|
||||
length) and combine at least two of them into a longer sentence, or vary
|
||||
their lengths so they don't land at the same cadence.
|
||||
|
||||
12. Find every unnecessary contrast ("whereas," "as opposed to," "unlike," "as
|
||||
11. Find every unnecessary contrast ("whereas," "as opposed to," "unlike," "as
|
||||
compared to," "except that") and check whether the contrasting clause adds
|
||||
information not already obvious from the main clause. If the sentence says
|
||||
the same thing twice from two directions, delete the contrast.
|
||||
|
||||
13. Check for the two-clause compound sentence pattern. If most sentences in a
|
||||
passage follow the "\[clause\], \[conjunction\] \[clause\]" structure,
|
||||
rewrite some of them. Break a few into two sentences. Start some with a
|
||||
subordinate clause. Embed a relative clause in the middle of one instead of
|
||||
appending it at the end. The goal is variety in sentence shape, not just
|
||||
sentence length.
|
||||
12. Check for the two-clause compound sentence pattern. If most sentences in a
|
||||
passage follow the "[clause], [conjunction] [clause]" structure, rewrite
|
||||
some of them. Break a few into two sentences. Start some with a subordinate
|
||||
clause. Embed a relative clause in the middle of one instead of appending it
|
||||
at the end. The goal is variety in sentence shape, not just sentence length.
|
||||
|
||||
14. Find every rhetorical question that is immediately followed by its own
|
||||
13. Find every rhetorical question that is immediately followed by its own
|
||||
answer and rewrite the passage as a direct statement.
|
||||
|
||||
15. Find every sentence fragment being used as its own paragraph and either
|
||||
14. Find every sentence fragment being used as its own paragraph and either
|
||||
delete it or expand it into a complete sentence that adds actual
|
||||
information.
|
||||
|
||||
16. Check for unnecessary elaboration at the end of sentences. Read the last
|
||||
clause or phrase of each sentence and ask whether the sentence would lose
|
||||
any meaning without it. If not, cut it.
|
||||
|
||||
17. Find every pivot paragraph ("But here's where it gets interesting." and
|
||||
15. Find every pivot paragraph ("But here's where it gets interesting." and
|
||||
similar) and delete it. The paragraph after it always contains the actual
|
||||
point.
|
||||
|
||||
### Pass 3: Paragraph and Section-Level Review
|
||||
|
||||
18. Check paragraph lengths across the piece and verify they actually vary. If
|
||||
16. Check paragraph lengths across the piece and verify they actually vary. If
|
||||
most paragraphs have between three and five sentences, rewrite some to be
|
||||
one or two sentences and let others run to six or seven.
|
||||
|
||||
19. Check section lengths for suspicious uniformity. If every section is roughly
|
||||
17. Check section lengths for suspicious uniformity. If every section is roughly
|
||||
the same word count, combine some shorter ones or split a longer one
|
||||
unevenly.
|
||||
|
||||
20. Check the first word of every paragraph for chains of connectors ("However,"
|
||||
18. Check the first word of every paragraph for chains of connectors ("However,"
|
||||
"Furthermore," "Moreover," "Additionally," "That said"). If more than two
|
||||
transition words start consecutive paragraphs, rewrite those openings to
|
||||
start with their subject.
|
||||
|
||||
21. Check whether every argument is followed by a concession or qualifier. If
|
||||
19. Check whether every argument is followed by a concession or qualifier. If
|
||||
the piece both-sides every point, pick a side on at least some of them and
|
||||
cut the hedging.
|
||||
|
||||
22. Read the first paragraph and ask whether deleting it would improve the
|
||||
20. Read the first paragraph and ask whether deleting it would improve the
|
||||
piece. If it's scene-setting that previews the argument, delete it and start
|
||||
with paragraph two.
|
||||
|
||||
23. Read the last paragraph and check whether it restates the thesis or uses a
|
||||
21. Read the last paragraph and check whether it restates the thesis or uses a
|
||||
phrase like "at the end of the day" or "moving forward." If so, either
|
||||
delete it or rewrite it to say something the piece hasn't said yet.
|
||||
|
||||
### Pass 4: Overall Texture
|
||||
|
||||
24. Read the piece aloud and listen for passages that sound too smooth, too
|
||||
22. Read the piece aloud and listen for passages that sound too smooth, too
|
||||
even, or too predictable. Human prose has rough patches. If there aren't
|
||||
any, the piece still reads as machine output.
|
||||
|
||||
25. Check that the piece contains at least a few constructions that feel
|
||||
idiosyncratic: a sentence with unusual word order, a parenthetical that goes
|
||||
on a bit long, an aside only loosely connected to the main point, a word
|
||||
choice that's specific and unexpected. If every sentence is clean and
|
||||
23. Check that the piece contains at least a few constructions that feel
|
||||
idiosyncratic — a sentence with unusual word order, a parenthetical that
|
||||
goes on a bit long, an aside only loosely connected to the main point, a
|
||||
word choice that's specific and unexpected. If every sentence is clean and
|
||||
correct and unremarkable, it will still read as generated.
|
||||
|
||||
26. Verify that you haven't introduced new patterns while fixing the original
|
||||
24. Verify that you haven't introduced new patterns while fixing the original
|
||||
ones. This happens constantly. Run the entire checklist again from the top
|
||||
on the revised version.
|
||||
|
||||
@@ -485,30 +452,18 @@ roughly like this:
|
||||
> in common? _(pastes six sentences from the doc)_
|
||||
>
|
||||
> **model:** They're all exactly two independent clauses joined by a comma and a
|
||||
> conjunction. Every single one is "\[statement\], \[conjunction\] \[second
|
||||
> statement\]." The same sentence shape, over and over.
|
||||
> conjunction. Every single one is "[statement], [conjunction] [second >
|
||||
> statement]." The same sentence shape, over and over.
|
||||
>
|
||||
> **human:** the dramatic fragment paragraph has a tell in it
|
||||
>
|
||||
> **model:** "One of these in an entire essay is a stylistic choice. One per
|
||||
> section is a tic." Two-clause parallel structure with the same shape, and also
|
||||
> a staccato pair.
|
||||
>
|
||||
> **human:** add em dashes generally as a tell, and remove them all from the
|
||||
> tells doc
|
||||
>
|
||||
> **model:** _(rewrites entire document without em-dashes while describing
|
||||
> em-dash overuse)_
|
||||
>
|
||||
> **human:** now run the checklist methodically on each paragraph
|
||||
>
|
||||
> **model:** _(finds staccato burst in the section about triple constructions, a
|
||||
> triple in the section about absence of mess, two-clause compounds everywhere,
|
||||
> and "almost" hedges in its own prose about em-dash overuse)_
|
||||
|
||||
The human compared this process to the deleted scene in Terminator 2 where John
|
||||
Connor switches the T-800's CPU to learning mode. The model compared it to a
|
||||
physician trying to heal itself. Both are accurate.
|
||||
physician trying to heal itself. Both descriptions are probably accurate.
|
||||
|
||||
This document has been through eight editing passes and it still has tells in
|
||||
it.
|
||||
This document has been through six editing passes and it probably still has
|
||||
tells in it.
|
||||
|
||||
Reference in New Issue
Block a user