У LLM есть одна большая проблема — интерпретируемость. Вот вообще понятия не имеешь о том, что там происходит внутри и из-за чего ChatGPT сгенерировал "Соси жопу я не отвечу на твой вопрос".
Раньше пытались решить проблему через SAE + steering — процесс, когда мы пытаемся найти вектора интентов модели, ответственных за какое-то поведение, а потом с их помощью регулировать это поведение и в принципе понимать, что сейчас происходит внутри. Но у этого подхода есть куча проблем: тяжело интерпретировать, не всегда выучивается как нужно, тяжело работать, не всегда хорошо работает.
У меня пару месяцев назад возникла идея, которая дальше саморефлексии никуда не зашла: "А что, если мы, вместо стиринга и саешки, будем учить LLM-ку описывать свои внутренние представления?".
Так вот у чуваков из Anthropic возникла идея ровно такая же
идея.
Прежде чем подходить к описанию реализации дам небольшой ликбез по тому как LLM-ки работают с выходными токенами:
В самом начале, когда LLM-ка поглощает токены, она оперирует смыслами того языка, который вы ей отдали, ближе к своей середине LLM-ки становятся агностичными к языку и переводят все в абстрактные мысли, дальше запускается обратный процесс, где мысли из абстрактного состояния переводятся в конкретику и мы можем получить наш новый токен.
Базовая идея подхода антропиков брать вот эти абстрактные состояния, после чего учить LLM описывать, что происходит у нее внутри.
Далее рядом ставят вторую модель, которая из описаний пытается восстановить активации модели, которая генерила описания и делают это все через RL, который тут описывать смысла не вижу, но отправлю вас почитать
блогпост.