• Kaligalis@lemmy.world
    link
    fedilink
    English
    arrow-up
    32
    arrow-down
    4
    ·
    2 days ago

    Those hidden markers will be very hard to hide in code review in an IDE which highlights invisible Unicode code points. For code, adding watermarks is likely to cause bugs. For text, Chinese models are as good - so just switching to them solves the issue.
    I think, Anthropic doesn’t want to perform economic seppuku.

    • toph@feddit.uk
      link
      fedilink
      English
      arrow-up
      23
      ·
      edit-2
      2 days ago

      These are not watermarks using hidden characters. Their approach is undetectable even with an IDE. For a sequence of tokens, an LLM predicts the most likely next token, with some amount of randomness between equally likely candidates. The “watermark” is to introduce a statistical bias to this randomness, by altering the probability distribution of generated text according some hash function with a secret key, thereby embedding a statistical signature into the text itself.

      So if the text is “I like to eat __” the model might have 3 top candidates for the next word (apple/orange/banana) that would be chosen at random. Instead that choice will be biased towards one option according to their hash function. And then again “I like to eat banana __” (cake/pie/tart).

      To verify a text, they look for the “watermark” by scanning the text and looking at whether sequences of tokens chocies fits their biased probability distribution or are truly random. Just one match doesn’t tell you anything, but if they see a consistent pattern over a 1000 word document, they can give a very high confidence that their model generated the text.

      To a human it looks like nornal generated text, and the output quality isn’t affected much (or ar all). It’s much more effective on generated prose, and not very effective on computer code.

      • Kaligalis@lemmy.world
        link
        fedilink
        English
        arrow-up
        4
        ·
        20 hours ago

        That sounds a bit like it conflicts with the actual job of the LLM. And the resulting watermark would be way too fuzzy to be actually useful for flagging anything as AI-generated.
        Are they just trying to check a box on some compliance checklist?

        • toph@feddit.uk
          link
          fedilink
          English
          arrow-up
          1
          ·
          edit-2
          15 hours ago

          That sounds a bit like it conflicts with the actual job of the LLM.

          You’re right. But it’s designed in such a way that it only biases the choice between the statistically most likely candidates, so it’s not forcing a choice to a less optimal token. It’s biasing the choice between equally optimal tokens. So it doesn’t really affect the quality of the LLM’s output.

          And the resulting watermark would be way too fuzzy to be actually useful for flagging anything as AI-generated.

          It’s actually not that fuzzy. It’s the statistical equivalent to randomly guessing a 256-bit encyrption key. If you consider the algorithm operate on trigrams (sets of 3 words), then a 1000-word document contain 998 trigrams. Let’s say at each trigram the model has a choice between 16 equally likely candidate words, which is usually chosen at random according to the model temperature, now is also biased by the watermark hashing function.

          The statistical likelihood of randomly making the same 1/16 choice as the watermark 998 times in a row is so extremely small it’s essentially impossible. Even if you rearrange the document, cut large portions, paste in other portions, rewrite some, you’re likely to leave in enough matching trigrams to make a statistically solid determination.

          The main requirement is the text needs to be long enough… just a small sentence or snippet won’t be enough.

          Having said that, it’s not that hard to defeat the watermark once you know how it’s done. If you know it operates on token trigrams, then you need to rewrite the document at the trigram level to break up those relationships.

          Are they just trying to check a box on some compliance checklist?

          Actually yes, this has been prompted by a new EU law requiring AI companies to make LLM output identifiable so that people have a chance at knowing what is generated/fake content.

      • orclev@lemmy.world
        link
        fedilink
        English
        arrow-up
        9
        arrow-down
        2
        ·
        2 days ago

        I mean it kind of already does this accidentally, just look for em dash and/or emojis sprinkled all over the document and you can be pretty certain that it was AI generated.

        The other thing I’m seeing here is that this will only be effective for large chunks of text, if you’re dealing with small snippets interspersed with human generated content there will be enough statistical noise to make classification hard without introducing a bunch of false positives and negatives.