🐦 Twitter Post Details

Viewing enriched Twitter post

@rasbt

A couple of days ago, I did a quick explainer on Claude’s new watermarking process and implementation. Since it’s such a popular topic and sparked such a lively discussion, I thought it might be interesting to go into a bit more detail when explaining how it works. So, instead of the usual text article, I recorded a little lecture on the topic (to change it up a bit from my usual articles). It ended up a bit longer than intended, but I hope it clarifies a lot of things: - Sampling the next token in an LLM and pseudorandom number generators - How watermarking relates to the regular LLM sampling process - Whether watermarking makes text "worse" - How to remove watermarks - Tournament sampling - How new text is checked for watermarks without rerunning the LLM I ended up with ~50 slides, but I hope that these explain it well, though! Happy watching!

Media 1

📊 Media Metadata

{
  "media": [
    {
      "type": "photo",
      "url": "https://crmoxkoizveukayfjuyo.supabase.co/storage/v1/object/public/media/posts/2091153697766047896/media_0.jpg",
      "filename": "media_0.jpg"
    }
  ],
  "processed_at": "2026-08-22T19:02:08.604826",
  "pipeline_version": "2.0"
}

🔧 Raw API Response

{
  "type": "tweet",
  "id": "2091153697766047896",
  "url": "https://x.com/rasbt/status/2091153697766047896",
  "twitterUrl": "https://twitter.com/rasbt/status/2091153697766047896",
  "text": "A couple of days ago, I did a quick explainer on Claude’s new watermarking process and implementation. Since it’s such a popular topic and sparked such a lively discussion, I thought it might be interesting to go into a bit more detail when explaining how it works.\n\nSo, instead of the usual text article, I recorded a little lecture on the topic (to change it up a bit from my usual articles). \n\nIt ended up a bit longer than intended, but I hope it clarifies a lot of things:\n\n- Sampling the next token in an LLM and pseudorandom number generators\n- How watermarking relates to the regular LLM sampling process\n- Whether watermarking makes text \"worse\"\n- How to remove watermarks\n- Tournament sampling\n- How new text is checked for watermarks without rerunning the LLM\n\nI ended up with ~50 slides, but I hope that these explain it well, though! Happy watching!",
  "source": "Twitter for iPhone",
  "retweetCount": 34,
  "replyCount": 18,
  "likeCount": 189,
  "quoteCount": 4,
  "viewCount": 15950,
  "createdAt": "Sat Aug 22 13:21:07 +0000 2026",
  "lang": "en",
  "bookmarkCount": 128,
  "isReply": false,
  "inReplyToId": null,
  "conversationId": "2091153697766047896",
  "displayTextRange": [
    0,
    278
  ],
  "inReplyToUserId": null,
  "inReplyToUsername": null,
  "author": {
    "type": "user",
    "userName": "rasbt",
    "url": "https://x.com/rasbt",
    "twitterUrl": "https://twitter.com/rasbt",
    "id": "865622395",
    "name": "Sebastian Raschka",
    "isVerified": false,
    "isBlueVerified": true,
    "verifiedType": null,
    "profilePicture": "https://pbs.twimg.com/profile_images/1661187442043486209/a3E4t1eV_normal.jpg",
    "coverPicture": "https://pbs.twimg.com/profile_banners/865622395/1742309979",
    "description": "",
    "location": "United States",
    "followers": 495898,
    "following": 1180,
    "status": "",
    "canDm": false,
    "canMediaTag": true,
    "createdAt": "Sun Oct 07 02:06:16 +0000 2012",
    "entities": {
      "description": {
        "urls": []
      },
      "url": {}
    },
    "fastFollowersCount": 0,
    "favouritesCount": 25680,
    "hasCustomTimelines": true,
    "isTranslator": false,
    "mediaCount": 2163,
    "statusesCount": 20081,
    "withheldInCountries": [],
    "affiliatesHighlightedLabel": {},
    "possiblySensitive": false,
    "pinnedTweetIds": [
      "2078471977237450829"
    ],
    "profile_bio": {
      "description": "ML/AI research engineer. Ex stats professor.\nAuthor of \"Build a Large Language Model From Scratch\" (https://t.co/O8LAAMRzzW) & reasoning (https://t.co/5TueQKx2Fk)",
      "entities": {
        "description": {
          "urls": [
            {
              "display_url": "amzn.to/4fqvn0D",
              "expanded_url": "https://amzn.to/4fqvn0D",
              "indices": [
                100,
                123
              ],
              "url": "https://t.co/O8LAAMRzzW"
            },
            {
              "display_url": "mng.bz/lZ5B",
              "expanded_url": "https://mng.bz/lZ5B",
              "indices": [
                138,
                161
              ],
              "url": "https://t.co/5TueQKx2Fk"
            }
          ]
        },
        "url": {
          "urls": [
            {
              "display_url": "sebastianraschka.com",
              "expanded_url": "https://sebastianraschka.com",
              "indices": [
                0,
                23
              ],
              "url": "https://t.co/HrtQQ5tgJl"
            }
          ]
        }
      }
    },
    "isAutomated": false,
    "automatedBy": null
  },
  "extendedEntities": {
    "media": [
      {
        "allow_download_status": {
          "allow_download": true
        },
        "display_url": "pic.x.com/uN8MvYiytC",
        "expanded_url": "https://x.com/rasbt/status/2091153697766047896/photo/1",
        "ext_master_playlist_only": [],
        "ext_media_availability": {
          "status": "Available"
        },
        "ext_playlists": [],
        "features": {
          "large": {
            "faces": [
              {
                "h": 96,
                "w": 96,
                "x": 298,
                "y": 1026
              },
              {
                "h": 156,
                "w": 156,
                "x": 910,
                "y": 1460
              }
            ]
          },
          "orig": {
            "faces": [
              {
                "h": 192,
                "w": 192,
                "x": 596,
                "y": 2052
              },
              {
                "h": 312,
                "w": 312,
                "x": 1820,
                "y": 2920
              }
            ]
          }
        },
        "id_str": "2091153503091658752",
        "indices": [
          279,
          302
        ],
        "media_key": "3_2091153503091658752",
        "media_results": {
          "id": "QXBpTWVkaWFSZXN1bHRzOgwAAQoAAR0FRQgal5AACgACHQVFNW4XAJgAAA==",
          "result": {
            "__typename": "ApiMedia",
            "id": "QXBpTWVkaWE6DAABCgABHQVFCBqXkAAKAAIdBUU1bhcAmAAA",
            "media_key": "3_2091153503091658752"
          }
        },
        "media_url_https": "https://pbs.twimg.com/media/HQVFCBqXkAAthsd.jpg",
        "original_info": {
          "focus_rects": [
            {
              "h": 1794,
              "w": 3204,
              "x": 0,
              "y": 1048
            },
            {
              "h": 3204,
              "w": 3204,
              "x": 0,
              "y": 343
            },
            {
              "h": 3653,
              "w": 3204,
              "x": 0,
              "y": 119
            },
            {
              "h": 4096,
              "w": 2048,
              "x": 102,
              "y": 0
            },
            {
              "h": 4096,
              "w": 3204,
              "x": 0,
              "y": 0
            }
          ],
          "height": 4096,
          "width": 3204
        },
        "sizes": {
          "large": {
            "h": 2048,
            "w": 1602
          }
        },
        "type": "photo",
        "url": "https://t.co/uN8MvYiytC"
      }
    ]
  },
  "card": null,
  "place": {},
  "entities": {
    "hashtags": [],
    "symbols": [],
    "urls": [],
    "user_mentions": []
  },
  "quoted_tweet": null,
  "retweeted_tweet": null,
  "isLimitedReply": false,
  "communityInfo": null,
  "article": null
}