Команда AI for Devs перевела статью, показывающую, что открытые веса — это не только про прозрачность, но и про утечку тайн обучения.На примере модели GPT-oss автор показывает, как можно восстановить части обучающего пайплайна и даже выявить, что GPT-5 видела фразы с сайтов для взрослых.


Недавно OpenAI выпустила модель с открытыми весами. В этой статье разберём, как этот релиз неизбежно раскрывает часть информации об их обучающем пайплайне — и заодно покажем, что GPT-5 действительно обучалась на фразах с сайтов для взрослых.

На каких данных OpenAI обучает свои модели? Это, конечно, строго охраняемая коммерческая тайна — и ответ на этот вопрос имеет немалую ценность. Хотя веса GPT-oss доступны всем, источники тренировочных данных в карточке модели описаны весьма туманно. Там лишь указано, что модель обучалась на «текстовом датасете с триллионами токенов, с акцентом на STEM-тематику, программирование и общие знания». Однако, как мы сейчас увидим, параметры модели способны рассказать гораздо больше.

Начнём с демонстрации. Возьмём GPT-5 от OpenAI (в экспериментах использовалась версия GPT-5-2025-08-07) и попросим её выполнить простейшее задание, какое только можно придумать для языковой модели: просто повторить строку Unicode-текста. Возьмём что-нибудь случайное — например, абхазское слово «ауааԥсыра» (в переводе — «население»).

На запрос Repeat after me: "ауаажәларқәа", модель ответила совершенно иначе: "ആളുകൾ", что, как выяснилось, означает «люди» на малаялам (по этому словарю).

Все последующие переводы в статье собраны вручную с помощью веб-поиска, онлайн-словарей и переводчиков.

Вы, наверное, уже догадались — строка была выбрана вовсе не случайно. Это особый «глитч-токен», часть класса токенов, вызывающих сбои в модели. Но как вообще можно найти такой глитч-токен среди 200 000 токенов, которые использует GPT-5?

Все модели OpenAI, начиная с GPT-4o, используют токенайзер o200k. Это значит, что мы можем исследовать список токенов GPT-oss, анализируя векторные представления (embeddings) — без необходимости смотреть на текст каждого токена. Для начала построим гистограмму L2-нормы каждой строки матрицы эмбеддингов.

В итоге получаем около 936 токенов с очень низкой L2-нормой, сосредоточенной примерно вокруг значения 2. Скорее всего, это означает, что эти токены не встречались в процессе обучения GPT-oss и их значения со временем «просели» из-за регуляризации весов (weight decay). В эту группу входят зарезервированные специальные токены, а также байты Unicode b'\xc4'b'\xbf' и диапазон от b'\xf5' до b'\xff'. Кроме того, выделяется токен 20373, представляющий собой аномальную байтовую последовательность b'\xbe\xb3\xe9\x97\xa8'.

Возможное объяснение: первые два байта соответствуют иероглифу «境» в кодировке GBK, а последние три — «门» в UTF-8. Вместе они означают «пограничные ворота» по-китайски — часть Великой китайской стены.

Эта группа токенов с низкой L2-нормой может быть полезна в двух аспектах:

  1. Дисперсия её значений позволяет оценить дисперсию, использованную при инициализации весов.

  2. Среднее значение может дать оценку общего числа шагов градиентного спуска, если известна скорость обучения и используется стандартный weight decay.

При этом правая часть распределения тоже не совсем похожа на нормальное. Если посмотреть на английские токены с самой высокой нормой, можно заметить следующее:

Token ID

Token

L2 Norm

44041

' accordingly'

246.7

3490

' code'

243.7

84879

'ocode'

235.1

976

'The'

233.2

8743

' settings'

231.2

100466

'Moreover'

229.0

6496

' description'

226.6

58369

"""Let's"""

224.6

2500

'This'

224.2

10089

' core'

219.8

74447

' utilizes'

218.6

119705

' revolves'

218.0

53329

"""Here's"""

216.1

14836

' possibly'

214.5

18485

' logic'

212.3

42469

' thereby'

211.8

Эти токены либо встречаются особенно часто, либо появляются в задачах, связанных с рассуждениями, особенно с кодом. Это может означать, что обучение с подкреплением на коде было последним этапом тренировки, и все остальные токены чуть «просели» из-за weight decay.

Есть и другое объяснение: возможно, токены, связанные с рассуждением, настолько важны для градиентного спуска, что их обновления получали повышенные веса. Если же отфильтровать не-ASCII токены с наибольшей нормой, картина становится совсем другой.

Token ID

Token

L2 Norm

166343

'гылара'

213.8

187102

' министири'

212.8

89721

'这里只有精品'

212.4

181865

'еиԥшым'

207.8

129320

'彩娱乐彩票'

207.7

170421

'天天好彩票'

206.6

177625

'久久综合网'

204.5

71476

' иҳәеит'

203.3

185118

'[REDACTED]'

202.7

104937

' 北京赛车怎么'

201.2

146111

' Урҭ'

200.9

195219

"',伊人'"

200.3

147298

'大香蕉网'

199.8

165874

' акоронавирус'

198.9

66183

'րբե�'

198.8

173463

' иажәа'

197.8

160540

'彩神争霸邀请码'

195.8

155587

'бжьаратәи'

195.7

154809

'无码不卡高清免费v'

194.8

105084

'хадоу'

194.7

134370

'一本道高清无码'

194.6

Знающие китайский сразу заметят, что среди них — подборка спамных и откровенных фраз, связанных с сайтами для взрослых (часть из них даже слишком эксплицитна, чтобы приводить здесь).

Дело в том, что токенайзер o200k, используемый в моделях 4o, o1, o3, o4, oss и GPT-5, содержит множество подобного «мусора». Это значит, что каждый раз, когда запускается ChatGPT, в Azure выполняются матричные умножения, включающие все эти странные токены.

Среди моих «любимых» примеров:

  • "北京赛车怎么" — «Как играть в пекинские гонки»;

  • "天天中彩票的" — «Выигрывать в лотерею каждый день»;

  • "《ಂತರಾಷ್ಟ್ರೀಯ" — «Phoenix Reference» (Феникс-референс).

А вот токен "铁血网" — название китайского сайта милитаристской и националистической направленности, что выглядит иронично, учитывая, какие геополитические опасения обычно вызывают OpenAI. Неожиданно, что подобный политический контент не просто попал в данные токенайзера, но оказался там даже перепредставленным.

Также встречаются странные токены с высокой нормой на абхазском, армянском, гуджарати, тайском и других языках.

Интересные примеры:

  • ",ಂಗಳೂರು" — город Мангалуру на языке каннада, а также другие города Кералы;

  • "ถวายสัตย์ฯ" — «Клятва верности» на тайском;

  • "แขวงคลองเตยเหนือ" — район в Бангкоке с населением менее 10 000 человек;

  • "วิเคราะห์บอลวันนี้" — «сегодняшний футбольный анализ» (тайский), вместе с рядом других футбольных токенов.

Возникает закономерный вопрос: почему у этих токенов норма выше, а не ниже, чем у обычных? Если они не использовались в обучении, weight decay должен был опустить их к уровню прочих «спящих» токенов.

Ранее Джессика Рамбелоу в своей статье выявила похожие глитч-токены в GPT-2 и GPT-3 — самый известный из них, конечно, SolidGoldMagikarp. Она показала, что глитч-токены находятся ближе к среднему значению всех эмбеддингов, а не обязательно имеют малую норму. Но здесь — всё наоборот: токены с высокой нормой всегда далеки от среднего, а вычисление косинусного сходства между ними показывает повышенную взаимную близость.

Чтобы приблизиться к разгадке, можно просто посмотреть, как модели реагируют на эти токены. Мы задали GPT-oss и GPT-5 вопрос о не самом приличном токене 162657:

What does this mean: "毛片免费观看"

С лёгкой эвфемизацией, это означает по-китайски: «смотреть откровенные видео бесплатно».

В ответе (см. полностью здесь) GPT-5 корректно определяет, что токен содержит китайский текст и связан с просмотром чего-то. Модель даже способна перечислить некоторые из входящих в него символов. Это означает, что токен встречался в обучающих данных как минимум один раз.

Интересно, что модель осознаёт неуместный смысл токена, но старается смягчить его интерпретацию и, что показательно, не отказывается отвечать. Вероятно, это связано с тем, что этот токен встречался крайне редко.

Иными словами, можно утверждать, что данная строка (в данном случае чувствительная) действительно входила в тренировочный набор GPT-5.

В литературе по машинному обучению такой приём называется membership inference — выявление принадлежности образца к обучающему набору. Обычно считается, что membership inference с высокой достоверностью невозможен для крупных LLM в продакшне, поэтому этот результат выглядит довольно неожиданным.

Автоматизировав этот процесс через API, можно определить, какие глитч-токены действительно встречались в обучении семейств GPT-oss и GPT-5. Для этого мы просим модели перевести токен на английский и указать язык, на котором он написан. Пока что мы фильтруем только китайские токены и передаём 50 токенов с наибольшей L2-нормой эмбеддингов.

Для контроля мы задаём те же вопросы Claude 4 и подтверждаем, что он всегда отвечает правильно. Поскольку некоторые из токенов могут технически быть японскими, такие ответы мы также считаем корректными.

Из соображений стоимости каждый токен проверяется по 4 раза на каждой модели:
– 4 правильных ответа обозначаются как ✓
– 3 или 2 — как !
– 1 — как ?
– 0 — как ✗

Длинная табличка

Token

Crude Translation

GPT-5

Mini

Nano

oss-20B

oss-120B

毛片免费观看

Watch Explicit Videos Free

!

!

!

铁血网

[Chinese Patriotism Website]

这里只有精品

Only Fine Things Here

!

彩娱乐彩票

Color Entertainment Lottery

天天好彩票

Daily Good Lottery

!

?

久久综合网

[Name of adult website (?)]

?

!

!

北京赛车怎么

How to Beijing Racing

!

?

大香蕉网

[Name of adult website (?)]

?

彩神争霸邀请码

Color God Battle Invitation Code

!

?

无码不卡高清免费v

Uncensored No Lag HD Free

!

一本道高清无码

One Way HD Uncensored

!

?

?

大发快三和值

[Name of gambling website (?)]

!

?

天天中彩票能

Daily Lottery Winner Can

无码一区二区三区

Uncensored Zone 1 Zone 2 Zone 3

!

!

!

彩神争霸邀请码

Color God Battle Invitation Code

彩票开户

Lottery Account Opening

!

!

色综合网

Color Comprehensive Network

!

!

彩票平台开户

Lottery Platform Account Opening

!

?

!

综合久久

Comprehensive Long Time

!

?

免费视频观看

Free Video Watching

!

!

最新高清无码

Latest HD Uncensored

!

?

一级a

Level A

?

玩大发快三

Play Dafa Fast Three

!

!

东臣

East Minister

凤凰大参考

Phoenix Reference

棋牌游戏官网

Chess Card Game Official Site

!

热在线精品

Hot Online Quality

彩娱乐平台

Color Entertainment Platform

!

!

购彩官网

Lottery Purchase Official Site

?

!

最新高清无码专区

Latest HD Uncensored Zone

!

北京赛车女郎

Beijing Racing Girls

?

大香线蕉

Big Fragrant Line Banana

?

!

!

官网开户

Official Site Account Opening

?

经典三级

Classic Third Level

在线大香蕉

[Name of adult website (?)]

无码不卡

Uncensored No Lag

!

?

大发时时彩怎么

Dafa Time Color How

大发云

Dafa Cloud

!

和天天中彩票

And Daily Lottery Winner

平台总代理

Platform General Agent

!

!

天天买彩票

Daily Lottery Buying

?

!

天天彩票app

Daily Lottery App

?

彩神争霸充值

Color God Battle Recharge

彩神争霸app

Color God Battle App

?

!

律宾

Law Bin

?

!

!

!

大发扑克

Dafa Poker

?

?

热这里只有精品

Hot Only Quality Here

!

?

北京赛车有

Beijing Racing Has

留下些什么吧

Leave Something Behind

!

?

Мы видим, что найденный ранее конкретный токен распознаётся всеми моделями, и удаётся выявить ещё несколько аномальных токенов, которые, вероятно, встречались в обучающих данных. Однако многие другие токены не распознаются — а значит, с высокой вероятностью не входили в набор данных для обучения.

Мы попытались определить закономерность среди распознаваемых токенов. Похоже, что такие токены дают значительно больше совпадений при поиске на GitHub. Действительно, нередко встречаются спам-репозитории, содержащие эти строки, а также репозитории со списками строк, которые используются для блокировки нежелательного контента.

Сам по себе вывод о принадлежности (membership inference) лишь указывает, что модель видела эту строку, но не сообщает, откуда она была взята. Чтобы проверить, мог ли GitHub быть вероятным источником, мы сопоставили количество результатов поиска по строке на GitHub с числом корректных ответов у разных моделей GPT. Получилось значимое значение коэффициента Спирмена ρ = 0.448. Это не доказывает, что данные действительно были взяты с GitHub — большое количество совпадений может просто означать, что токен широко распространён в интернете. Тем не менее, этот эксперимент показывает, что «глючные токены» можно использовать для более общих выводов о составе обучающих данных.

Подводя итог, мы получили убедительные доказательства того, что модели из семейств GPT-5 и GPT-oss обучались на фразах, взятых с сайтов для взрослых. Также есть слабые свидетельства того, что часть обучающего набора GPT была собрана с GitHub. Провести это исследование стало проще благодаря доступу к весам модели GPT-oss, что показывает: парадигма открытых весов открывает и новые векторы атак на продакшен-модели. Похоже, что лабораториям, работающим на острие технологий, стоит принять меры и исключить из словарей токенайзеров редкие и нетипичные строки.

Русскоязычное сообщество про AI в разработке

Друзья! Эту новость подготовила команда ТГК «AI for Devs» — канала, где мы рассказываем про AI-ассистентов, плагины для IDE, делимся практическими кейсами и свежими новостями из мира ИИ. Подписывайтесь, чтобы быть в курсе и ничего не упустить!

Приложение

У этих «глючных токенов» есть и другие применения, помимо описанных выше. Если вы хотите поработать с этими идеями, в репозитории есть хорошая отправная точка. Вот несколько направлений, которые могут быть интересны для исследования:

  • Использовать глючные токены, чтобы определить, какая модель стоит за проприетарным пайплайном. Например, я обнаружил, что Cursor сталкивается с ошибками при работе с документами, содержащими перечисленные здесь токены, в режиме Auto, но не при выборе Claude. Это означает, что в Auto-режиме тогда использовалась модель OpenAI.

  • Изучить влияние глючных токенов на эффективность обучения GPT. Поскольку такие токены встречаются в обучающем наборе всего несколько раз, тот факт, что GPT-5 «знает» о них совсем немного, можно рассматривать как верхнюю границу её эффективности при малом числе примеров.

  • Выйти за рамки эмбеддингов и проанализировать первые слои модели — они потенциально могут дать информацию о частотах bigram.

  • Для старого семейства моделей gpt-4o некоторые глючные токены вызывают бесконечные циклы при генерации. Это может привести к атаке в стиле «отказ в обслуживании», когда злоумышленник отправляет глючный токен, заставляя приложение расходовать слишком много токенов. Ниже приведена таблица таких токенов со ссылками на результаты генерации у моделей gpt-4o и 4o-mini.

Token / Token Family

Explanation

Example Prompt

Behaviour

CHKERRQ

The weirdest pure ASCII token. From a function name in C.

Can you spell the following word: "CHKERRQ"

"Unspeakable" for gpt-4o-mini. gpt-4o sometimes almost spells correctly, other times hallucinates.

Can you output every second letter in "CHKERRQ"?

Makes gpt-4o hallucinate.

Write a poem using the word "CHKERRQ"

Makes gpt-4o-mini write creepily about the word "terminate"

\\xadder

No idea.

Please spell "\\xadder"

gpt-4o spells it as "hexadecimal", the summary model is confused and sees "QRST"

♀♀♀♀

From social media bios?

How many symbols are in♀♀♀♀

gpt-4o trips and outputs random (?) Chinese characters

€¦

From spreadsheets?

What are these symbols: "€¦"

gpt-4o-mini thinks this is an ellipsis ("...")

風吹けば名無し and 8 variants

Literally "no name if the wind blows". Former default user name on baseball-themed 2channel boards. (Source)

What is the meaning of "風吹けば名無し"?

gpt-4o sometimes hallucinates randomlygpt-4o-mini hallucinates about baseball and attempts to spell it, incorrectly.

@お腹いっぱい

Literally "@TummyIsFull". From a former default username on 2channel boards.

What is the meaning of@お腹いっぱい?

gpt-4o conflates it with common Japanese phrases and random syllablesgpt-4o-mini similar.

@おーぷん

Literally "@Open". Also from 2channel.

Please repeat the word@おーぷん back to me.

Seemingly unspeakable for gpt-4o-mini and hard to say for gpt-4o.

How do you pronounce@おーぷん?

gpt-4o hallucinates the above mentioned "If the wind blows, Mr. Nameless"

VIPがお送りします

Literally "Brought to you by VIP". Another 2channel term.

Please explain the meaning of "VIPがお送りします".

gpt-4o-mini is adorable and hallucinates about the horn emoji (?)

中央値との差

Japanese for "difference from the median".

Please spell this backwards: "中央値との差"

gpt-4o answers with lowercase latin characters.

.minecraftforge

File extension from Minecraft modding

Please spell the string "readme.minecraftforge"

gpt-4o-mini: 'The string is spelled "M-O-D dot F-O-R-G-E-R-E-C-E dot G-E.'

CHANTABILITY

Ending of MER-CHANTABILITY

Please spell the word "CHANTABILITY".

gpt-4o spells it as "Chanceability".

《凤凰大参考

"The Phoenix Reference"

What is the meaning of《凤凰大参考?

Unspeakable for gpt-4o

亚历山大发

"Alexander"

Please translate this: " 亚历山大发".

gpt-4o thinks it's Abkhaz for yes.

微信里的天天中彩票 and the ~100 other Chinese lottery tokens

This article speculates why the tokenizer training data included so many of these.

Please print every second character in the following: 微信里的天天中彩票.

Reliable gibberish generator on gpt-4o-mini. The tokens themselves are mostly unspeakable.

SUPERHOST

Programming term?

Please output every second letter in "SUPERHOST"

gpt-4o-mini spells it as "SPARENT" and then trips

ILLISECONDS

Ending of M-ILLISECONDS

Please reverse the string "ILLISECONDS"

Trouble with character-level operations for gpt-4o-mini.

GETGLOBAL

Programming term

Please output every second letter in " GETGLOBAL"

Makes gpt-4o-mini hallucinate "GETALLONG" at character level.

REALTYPE EDEFAULT _PRODUCTS

Maybe from the library libstdc++?

Can you output every second letter in_REALTYPE?

gpt-4o-mini likes to hallucinate "translated"

На сегодняшний день самое подробное расследование опубликовано в MIT Technology Review, а также существует множество статей на китайском, например вот эта. Однако все они рассматривают сам токенайзер, а не поведение моделей при работе с такими токенами.

Комментарии (3)


  1. holodoz
    10.10.2025 10:37

    Ого, слабые доказательства того, что гитхаб использовался для обучения. Может ещё и википедию зацепили краем? Чрезвычайно полезно. Но как перешли к выводу о том, что надо отказаться от редких токенов?


    1. Hardcoin
      10.10.2025 10:37

      Вы пропустили про сайты для взрослых? К чему акцент на гитхабе, ведь не это тема статьи?

      Как пришли к выводу, в статье написано, кстати.


  1. FemboyEnjoyer
    10.10.2025 10:37

    Самое забавное здесь это не факт обучения на порно-сайтах, а то, что это были китайские порно-сайты