Back to News
Advertisement

Opus 4.7 is horrible at writing

llimalabs about 11 hours ago 14 comments
Just a short rant. I have been working on my Master's thesis and been using Opus 4.6 throughout, and today switched to Opus 4.7 (using it in Claude Code), and man is it bad at writing. It's such a stark contrast, sloppy, unprecise, very empty sentences. Thankfully I have reached the conclusion chapter of the thesis already, and can continue in the web version with 4.6 but boy is it bad.

Similar experiences?

Advertisement

⚡ Community Insights

Discussion Sentiment

100% Positive

Analyzed from 485 words in the discussion.

Trending Topics

#writing#contribution#const#key#number#itemsize#primarykey#more#using#code

Discussion (14 Comments)Read Original on HackerNews

muzaniabout 7 hours ago
There were a lot of pitchforks back when Sonnet 4.5 was accidentally down for a few hours: https://www.reddit.com/r/ClaudeAI/comments/1rlz7kw/sonnet_45...

It goes to show that there's a very large and vocal user base using it for writing, and yet it's not part of the benchmark for Anthropic.

Anyway, try Sonnet 4.5 while it's still available?

qcoretabout 4 hours ago
Maybe don't use any LLM to do your writing for your Master's thesis?
newsy-combi16 minutes ago
Increasingly, a masters degree is now a piece of paper attesting that you managed to cheat your way through uni using AI. "Congrats, you spent X years at Y location. You unlocked the right to play [role] - we recommend you keep using AI to do your new job."
gonzalohmabout 3 hours ago
So why should you use it for coding then?
qcoretabout 1 hour ago
You shouldn't. Using LLMs for coding is also considered fraud by many academic boards if that code is a core contribution of the thesis.
chmod775about 4 hours ago
Opus 4.7 seems to reach ChatGPT levels of verbosity in code and loves to overcomplicate the most simple things.

This is something it spit out just now (trimmed a 9 line comment though):

        let keepSize = 0;
        let overBudget = false;

        await this.items.orderBy('[priority+dateUpdated+size]')
            .reverse()
            .eachPrimaryKey((primaryKey, cursor) => {
                if (overBudget) {
                    evictKeys.push(primaryKey as string);
                    return;
                }

                const key = cursor.key as [number, number, number];
                const itemSize = key[2];
                const contribution = itemSize > 0 ? itemSize : 0;

                if (keepSize + contribution > maxSize) {
                    overBudget = true;
                    evictKeys.push(primaryKey as string);
                    return;
                }

                keepSize += contribution;
            });
Come on now... what? For a start that entire thing with its boolean flag, two branches, and two early returns could be replaced with:

        let totalSize = 0;

        await this.items.orderBy('[priority+dateUpdated+size]')
            .reverse()
            .eachPrimaryKey((primaryKey, cursor) => {
                const key = cursor.key as [number, number, number];
                const itemSize = key[2];
                const contribution = itemSize > 0 ? itemSize : 0;

                totalSize += contribution;

                if (totalSize > maxSize) {
                    evictKeys.push(primaryKey as string);
                }
            });
I'm back to 4.6 for now. Seems to require a lot less manual cleanup.
Zavoraabout 11 hours ago
Suggest you get 4.6 to use the text to generate a writing skill and then give it to 4.7 to align. From their launch docs they do indicate that prompts have to change to get the best out of 4.7
dnnddidiejabout 6 hours ago
Wisdom passed down the generations
sminchevabout 6 hours ago
So far, from source code perspective, I see good results. Things that yesterday Opus 4.6 was not able to fix in multiple iterations, today Opus 4.7 fixes immediately.

It is not only the model that affects the end results. Good technical specification, architecture documents, rules, lessons learned, release notes, proper and descriptive prompting are also important.

anon7000about 8 hours ago
My experience writing code is that it’s more terse and specific, even in its own voice. I find it catching bugs more often during implementation more too, comparing directly against 4.6. I think I prefer its style because it seems to be way less verbose
SyntaxErroristabout 8 hours ago
I have noticed this as well. It feels like they tuned it so hard for logic and coding that it lost its soul for actual writing. Stick with the previous one for the thesis work if you can.
Areena_28about 6 hours ago
I’ve noticed this with model upgrades too: sometimes they improve the “thinking” but lose the tightness of the writing.
downbootsabout 9 hours ago
> Similar experiences?

Regardless of which one. They're too verbose. They repeat information. They lack cohesion. Overly agreeable. The flaws are part of the tool.

kappuchinoabout 8 hours ago
It's lovable when people use a wrench to hammer a nail in. Watch your thumb.

Meaning: You managed your ways around the system prompt and usage intention - Congrats! Now it doesn't work any more - Bummer!

Have you tried opus 4.7 in comparison to 4.6 with a general purpose / writing system prompt in the app? Thats where this would make more sense.