5 ms·
How Claude's text watermarking works
- whalesalad 2mo agoSeems pretty easy to defeat by running text output through a random reworder process that would effectively repeat the same routine on low-stakes words, replacing them with similar ones. We learned this in high school, jumping through your paper and hitting random words with the thesaurus to 'sound smarter'
- yapfrog 2mo agoThat will likely make the text output worse and you'll have to fix it yourself. Regardless even if you don't fix it, at that point you're not really using Claude to generate the final output anymore.
- whalesalad 2mo agoSeems like claude is already making it worse by choosing a random token that might not be the best one.
- nonethewiser 2mo agoThe point is if you can trivially change it. This remains to be seen. Its jot very useful if it only detects things that were one shots.
- mrcwinn 2mo ago“How does affect Claude’s outputs?” Is poor proofreading a form of watermarking? Clever, I suppose, but they should consider running posts through Sol for clarity.
- nonethewiser 2mo agoWell that gives it authenticity. As bad as Claude Code’s writing is, it wouldn’t make that mistake.
- soupspaces 2mo agoYesterday https://news.ycombinator.com/item?id=49292932 https://news.ycombinator.com/item?id=49292932
- mlmonkey 2mo agoCan anybody take a body of text and determine if it's from Claude or not? (Or if it's AI-generated or not)?
- yapfrog 2mo ago> How do I check if a piece of text was written by Claude? > We will soon be offering a watermark detection API. We’re in the process of working out the details of its implementation. Determining whether it's written by Claude will be possible in the future. But unless you know the LLM being used and the company behind that LLM offers a similar API, there's no easy way to tell if it's AI generated in general.
- nonethewiser 2mo agoThere will be tools to scan across a broad spectrum
- jazzpush2 2mo agoAnthropic: doing everything they can to own any output they produce/prevent scrubbing of association for them - except when it comes to the CEO's wife's porn funding attempt from Epstein: https://www.wsj.com/tech/ai/claude-dario-amodei-wife-anthropic-e1eeda7d https://www.wsj.com/tech/ai/claude-dario-amodei-wife-anthrop...
- absoluteunit1 2mo ago> Google DeepMind tested this impact by serving a model that used watermarking to a portion of their Gemini traffic and comparing thumbs-up and thumbs-down ratings. They found no statistically significant differences from the unwatermarked model. And in a controlled study, human raters comparing watermarked and unwatermarked answers side-by-side saw no difference in quality. For some reason I had assumed testing this would be more sophisticated than just checking the thumbs up/down stats and user "vibes"
- cube00 2mo agoMore unannounced testing on paying customers.
- baliex 2mo agoGenuine question, how else would they do it? And isn’t this practice the same as basically any agile-developed SaaS?
- thevinter 2mo agoI'm not a mathematician but to me it doesn't seem so far-fetched to think that there might exist some mathematical proof that ensures the indistinguishability
- antonvs 2mo agoWe don’t have the ability to do that level of analysis of natural language text mathematically. If we did, we probably wouldn’t need LLMs in the first place, i.e. we could just generate text using explicitly programmed algorithms.
- cj 2mo agoThe only function of the thumbs up/down buttons are to give feedback to Google. As a user it's pretty obvious that's the purpose of the button.
- visiondude 2mo agoI’d like to better understand the minimum text length to get a confident result, i would presume it would need to be quite long, perhaps > 1000 words to get an accurate result.
- nonethewiser 2mo agoFrom what I’ve read its closer to 100-300 words. And maybe 500 words to include info identifying the prompter.
- WithinReason 2mo agoa lot of side-channel information can be hidden in text, see https://arxiv.org/html/2510.20075v6 https://arxiv.org/html/2510.20075v6 where they hide as much text as the source text itself
- jluysvi 2mo agoOpus 5 must be the pilot becuase it's writing style is so grating it has to be intentional. Let's hope they make it more subtle in the future.
- nonethewiser 2mo agoIt does feel like it comes from somewhere specific. I mean maybe its just a diffuse set of reasons but it feels pretty abrupt.
- herywort 2mo agoWatermarking has no impact on style of writing
- jluysvi 2mo agoSo they say haha
- FabHK 2mo agoIt's fairly well established that the sequence from a good pseudorandom generator is basically indistinguishable from real randomness (unless of course you know the algorithm and key/state). It would be miraculous (and news-worthy) if using it in picking the next token from the probability distribution as given by the model would somehow easily reveal its deterministic nature.
- pr337h4m 2mo agoWe are very fortunate open source models have reached parity for virtually all non-coding use cases.
- NewsaHackO 2mo agoDo open "source" models have have this watermarking enabled? How do you know?
- nonethewiser 2mo agoIt doesn't matter if they are watermarked if there is no ability to verify the watermark.
- bonoboTP 2mo agoThis particular watermark doesn't live in the weights, but in the sampling process, so you can turn this one off in an open source LLM.
- NitpickLawyer 2mo agoThe way they explain it implies they're using this at the sampler level and not trained into the weights themselves. So unless you're using an inference library that does this, the open models will not have this kind of a watermark. > When watermarking is used, choices are still made at random, but the source of the randomness is different. Instead of using an arbitrary random number generator to pick the next word, watermaking uses the key and a few words that come before to settle what word the model should pick. > the watermark only changes the source of the randomness used to pick among words.
- arjie 2mo agoInteresting. Here's the section of the EU Act that mandates this: > Providers of AI systems, including general-purpose AI systems, generating synthetic audio, image, video or text content, shall ensure that the outputs of the AI system are marked in a machine-readable format and detectable as artificially generated or manipulated. Providers shall ensure their technical solutions are effective, interoperable, robust and reliable as far as this is technically feasible, taking into account the specificities and limitations of various types of content, the costs of implementation and the generally acknowledged state of the art, as may be reflected in relevant technical standards. This obligation shall not apply to the extent the AI systems perform an assistive function for standard editing or do not substantially alter the input data provided by the deployer or the semantics thereof, or where authorised by law to detect, prevent, investigate or prosecute criminal offences. https://eur-lex.europa.eu/eli/reg/2024/1689/2026-07-27/eng https://eur-lex.europa.eu/eli/reg/2024/1689/2026-07-27/eng It definitely makes Pangram's job a bit easier.
- johnfn 2mo ago> We will soon be offering a watermark detection API. We’re in the process of working out the details of its implementation. Dumb question - doesn't this defeat the purpose of a watermark? i.e., anyone who wants to avoid detection can simply run `while (has_watermark(text)) text = slightly_rewrite_with_non_anthropic_llm(text)` until it's gone? I feel I am missing the intent of the watermark if it is so easily defeated.
- nonethewiser 2mo agoYeah kinda. You cant be confident a negative is true. It doesn’t undermine positives though. That’s just whatever the false positive rate is. So if it comes back as anthropic generated, it most likely is. If it comes back as non-anthropic generated, we have no idea. If anthropic didnt make it public there would only be a narrow path for governments or something to make requests. Its kind of fucked either way.
- snowe2010 2mo agoI thought the same thing. Maybe they can restrict it so that you can’t run the same text through multiple times with only one word differences. At least from an IP perspective that would start to get really expensive to rotate through IPs to get around a block like that.
- pan69 2mo agoNot sure either why they are providing an API to detect either and what you say make sense. However, if my understanding is correct, the reason for the watermark / detections is that its not directly aimed at end-users, but to be able from them to detect if text was produced by one of their models so they don't use it as input in training data. So, yeah, in that context, not sure why they are announcing this with an ability for anyone to detect if it was produced by one of their models. Also, they are happy to ingest text produced by models they don't own? Maybe someone with more information can elaborate?
- omoikane 2mo ago> while (has_watermark(text)) slightly_rewrite... I understand what you are trying to say but I am not sure any watermark detection API would definitively return a true/false answer, I would have expected something more like a numeric confidence value. I am also not sure if the API would be deterministic.
- deleted 2mo ago[deleted]
- efavdb 2mo agoThe method of identifying authorship isn’t new. I guess the main new thing here is to ensure Claude has a specified word distribution so you can identify its writing. https://towardsdatascience.com/text-classification-and-the-basics-of-a-naive-bayes-model-1f9096af4577/ https://towardsdatascience.com/text-classification-and-the-b...
- himata4113 2mo agoFrom what I understand when you re-tokenize the output you can simply look at how often certain tokens show up and the position of them, enough of these matches would result it watermarked text. Let's say we are at token 431 and there is 49% to generate token 1 and 51% to generate token 2, we apply bias to our token 1 which would make it win causing a repeating pattern invisible to the human eye. Now you apply this to multiple tokens and a reversible source of random you have a pretty strong watermarking system... That is rather annoying to defeat as you essentially have to rewrite most of the text. The alternative is to use a diffusion model and spray some gaps across non-literal information such as ids, links, etc.
- deleted 2mo ago[deleted]
- cantalopes 2mo agoTldr: prng seed
- tidbeck 2mo agoSo that was just what I was thinking. A lot of text to a explain a fixed seed.
- lowbloodsugar 2mo ago>But if we could see the sequence of all the moves after the game (and we knew the value of pi), we could work out whether this was a game that likely used pi to determine its moves. The game that used pi is, in a sense, “watermarked”. Wouldn't pi contain any such sequence of numbers? Therefore you'd have to allow only certain regions of pi, and therefore, its not random anymore and we could just shortcut the whole game?
- jti107 2mo agoanthropic speed running its way into irrelevance. wtf would i use AI for writing that screams AI generated especially when I'm not in the EU and open models are so good now
- aleksiy123 2mo agoCurious if you can prompt Claude to sue some scrambling scheme and then unscramble to defeat this. E.g. prompt Claude to write all sentence in reverse, or swap every 2 words etc. Then use a script to put reorder in the right ordering?
- SubiculumCode 2mo agoHow I use claude in my grant writing. I write a rough paragraph. I invoke /concise-mode skill (a supposed instruction that Claude used for their previous concise writing style), and ask it to revise for clarity. I re-read to ensure it says what I wanted, ask for another revision with a specific request, or manually edit. This is a productivity enhancement for me. I am not writing art. I am delivering information for my research plan. While I would not mind a flag that indicated AI assisted for clarity, I do not want to be accused of using AI-wholesale. I put a lot of work into it, and I do not want to be maligned.
- brap 2mo agoI’m entirely confident that this technically pointless, especially when you consider open models exist. I believe they know damn well that this will lead nowhere, and are only doing this to mitigate criticism.
- bonoboTP 2mo agoThe vast majority of users are not sophisticated enough to try to erase the traces, so this will be effective for the vast majority of AI generated text that regular people are upset about. Eg. lazy student essays.
- 0gs 2mo agothis is so funny. it's literally just the claude voice. that's not just load-bearing, it's belt and braces
- WaitWaitWha 2mo agoIs there a method to opt out of this for non-EU people? I do not see such option in the article.
- out_of_protocol 2mo agoDo i understand correctly - to check watermark you need full model weights, of all org models. So running the check is basically the same as running every model once? That's really expensive
- matusp 2mo agoI don't know the details of their implementation, but in general, if the text is not watermarked, you will probably fail the test after a few tokens. If it is, you will have to run the entire text, or, you can just run it until you have some degree of confidence.
- dSebastien 2mo agoWe should watermark everything we create, AI-generated or not. This might shield our content from being stolen moving forward
- pyridines 2mo ago> Can a watermark be traced back to me or my organization? > No. The watermarking applies to Claude and its outputs. It doesn’t identify anything to do with individual users But there's nothing stopping them from doing this in the future. In fact, couldn't they append the user's ID to the key in some manner?
- out_of_protocol 2mo ago1) That's a lot more entropy to gather, means sample size needs to be huge. 2) this also means check must be run against every user's ID in their database, 10^9 more expensive
- pyridines 2mo agoThat makes sense, though it sounds like it would still be feasibly cheap to only track a handful of users or organizations
- bosky101 2mo ago2 years ago i created nonfungibledocs.com based on the best of multi variated testing, statistics and nlp. The broad idea was that even a simple page can subtly be written in N ways for N recipients, such that a leak can be traced back to the version.
- 101008 2mo agoI may be wrong but in my opinion this is not technically possible. They can say a text is not AI written with more confidence, but it should be absolutely impossible to say a text is 100% AI written. There is nothing that stops a human to write something AI also wrote. It could be less probable, it could be not common, but there is no way to be 100% sure a human did not write something. Unless they can provide logs and attach an output to a user/session, they are just saying "This is something that could have been a Claude output", but that's all. Even in their confidence it could be wrong. It reminds me of signature authenticators. They are just saying "Yeah this is something this author/celeb could have signed", or "This is something the celeb def did not sign", but they can't be never 100% sure.
- WithinReason 2mo agoThere is no practical difference between 99.99999% and 100%
- amai 2mo agoSo it won't work for math or source code (except in comments)?
- catlover76 2mo ago[dead]
- denidoman 2mo agook, now it's clear why they deprecated temperature and other sampling settings in their API. also I still think that this degrade nottext quality but text diversity, when you asking same an exact same question multiple times.