Раз уж мы коснулись механизмов внимания в трансформерах, давайте теперь поговорим о механизмах внимания у нас с вами, как раз интересную статью нашла, даже две
Teletype
Внимание в человеческом мозге
Раз уж мы коснулись механизмов внимания в трансформерах, давайте теперь поговорим о механизмах внимания у нас с вами, как раз интересную...
Полезные #инструменты для анализа рисков ИИ: актуальные исследования, существующая судебная практика.
Видео доступно на youtube и дзене
Видео доступно на youtube и дзене
YouTube
Инструменты для изучения рисков ИИ
База данных с рисками: https://airisk.mit.edu/
Пост про связанную с этой базой статью (и не только): https://vc.ru/ai/1670398-etika-i-bezopasnost-primenitelno-k-ii
Пост про неравную эффективность технологий: https://t.me/mindful_coding/297
Мой телеграм: …
Пост про связанную с этой базой статью (и не только): https://vc.ru/ai/1670398-etika-i-bezopasnost-primenitelno-k-ii
Пост про неравную эффективность технологий: https://t.me/mindful_coding/297
Мой телеграм: …
Как-то обсуждали мы тут, что математика – сложная штука. Для языковых моделей. Даже простая совсем арифметика простая для нас, а для них – вовсе нет. Но мы не говорили, как языковые модели можно всё-таки математике обучить.
Можно, например, научить их использовать инструменты, и они будут вызывать калькулятор каждый раз, когда нужно будет что-то посчитать. А можно провести специальный раунд обучения, и как раз этот вариант нам сегодня предстоит разобрать применительно к маленьким трансформерам. Маленькими конкретно сегодня будем считать модели от 10.6 до 124 млн. параметров. Для сравнения, у больших трансформеров может быть от 1 трлн. параметров.
Статья называется «Teaching Arithmetic to Small Transformers». Она весьма объёмная, и здесь я изложу только то, что мне самой покажется интересным. За подробностями ныряйте в первоисточник.
Авторы не используют никаких дополнительных инструментов, только текст, только хардкор. Для обучения используется четыре формата (примеры на скриншоте):
• Простой формат (plain): A1A2A3 + B1B2B3 = C1C2C3;
• Обратный порядок (reverse): ответ написан задом наперёд, в начале и в конце добавлены дополнительные символы, которые говорят: «Вот это – арифметическая операция». Да, ответ неверный, но здесь смысл в том, чтобы считать в правильном порядке – с единиц;
• С дополнительной информацией в простом варианте (simplified scratchpad): есть слагаемые и ответ плюс кратко описанный процесс вычислений. Начинается вычисление с последней цифры, C на скриншоте – это число следующего порядка. То есть, строка «A -> 5, C-> 1» означает «сложили 8 и 7, пишем 5, 1 в уме». Как при сложении столбиком;
• С дополнительной информацией в расширенном варианте (detailed scratchpad): весь тот же процесс расписан максимально подробно.
Мне понравилось, что авторы пишут в разделе 4 (стр.7): «Как мы вскоре выясним, обучение сложению может быть не таким уж простым процессом, как можно было бы подумать».
Сложно поспорить: обучить модель считать, не представляя ей цифр – задача со звёздочкой. А здесь мы не представляем цифр, все входы-выходы – текст. Это как мысленный эксперимент «Китайская комната». Мы его обсуждали в посте про определение «сильного ИИ»: вы не знаете китайского, вам дают набор иероглифов и инструкции к ним (что с чем складывать). Потом вам пишут на китайском вопросы, а вы составляете ответы, опираясь на инструкции, которые не дают вам никакого представления о смысле иероглифов и не переводят их.
Этот эксперимент никому не понравился.
Простой формат ожидаемо не сработал. Обратный порядок неожиданно сработал, когда модели дали очень большое число таких примеров. Помните статью Anthropic про биологию больших языковых моделей? Там описано, что языковые модели считают через матрицы приближенных значений так, как человеку не пришло бы в голову вообще. Авторы той статьи и нашей сегодняшней смотрят на процесс с разных точек зрения и в разных разрезах. Однако и те, и другие говорят, что модели запоминают результаты сложения цифр и дальше просто подставляют нужные значения. Так что, теоретически, примеры в обратном порядке как раз полезны, потому что показывают, начиная с какой позиции подставлять.
Пояснения помогают моделям учиться лучше: чем больше информации, тем меньше нужно примеров для достижения стопроцентной точности. Очень полезно давать детальное описание процесса.
Если обучить модель сначала складывать двузначные числа, а потом трёхзначные, она с высокой вероятностью разучится работать с первыми. Это тоже лечится добавлением подробных инструкций.
Сложение, вычитание и умножение можно удобно представить в формате пошаговых инструкций, а вот с такими функциями, как извлечение квадратного корня будут сложности; авторы статьи попытались.
В общем, эта работа интересна с точки зрения того, чтобы на простых для человека примерах посмотреть, как происходит обучение, и лучше понять встроенные ограничения языковых моделей. Но для реальной жизни лучше просто научить модели пользоваться калькулятором: это и надёжнее, и дешевле
Можно, например, научить их использовать инструменты, и они будут вызывать калькулятор каждый раз, когда нужно будет что-то посчитать. А можно провести специальный раунд обучения, и как раз этот вариант нам сегодня предстоит разобрать применительно к маленьким трансформерам. Маленькими конкретно сегодня будем считать модели от 10.6 до 124 млн. параметров. Для сравнения, у больших трансформеров может быть от 1 трлн. параметров.
Статья называется «Teaching Arithmetic to Small Transformers». Она весьма объёмная, и здесь я изложу только то, что мне самой покажется интересным. За подробностями ныряйте в первоисточник.
Авторы не используют никаких дополнительных инструментов, только текст, только хардкор. Для обучения используется четыре формата (примеры на скриншоте):
• Простой формат (plain): A1A2A3 + B1B2B3 = C1C2C3;
• Обратный порядок (reverse): ответ написан задом наперёд, в начале и в конце добавлены дополнительные символы, которые говорят: «Вот это – арифметическая операция». Да, ответ неверный, но здесь смысл в том, чтобы считать в правильном порядке – с единиц;
• С дополнительной информацией в простом варианте (simplified scratchpad): есть слагаемые и ответ плюс кратко описанный процесс вычислений. Начинается вычисление с последней цифры, C на скриншоте – это число следующего порядка. То есть, строка «A -> 5, C-> 1» означает «сложили 8 и 7, пишем 5, 1 в уме». Как при сложении столбиком;
• С дополнительной информацией в расширенном варианте (detailed scratchpad): весь тот же процесс расписан максимально подробно.
Мне понравилось, что авторы пишут в разделе 4 (стр.7): «Как мы вскоре выясним, обучение сложению может быть не таким уж простым процессом, как можно было бы подумать».
Сложно поспорить: обучить модель считать, не представляя ей цифр – задача со звёздочкой. А здесь мы не представляем цифр, все входы-выходы – текст. Это как мысленный эксперимент «Китайская комната». Мы его обсуждали в посте про определение «сильного ИИ»: вы не знаете китайского, вам дают набор иероглифов и инструкции к ним (что с чем складывать). Потом вам пишут на китайском вопросы, а вы составляете ответы, опираясь на инструкции, которые не дают вам никакого представления о смысле иероглифов и не переводят их.
Этот эксперимент никому не понравился.
Простой формат ожидаемо не сработал. Обратный порядок неожиданно сработал, когда модели дали очень большое число таких примеров. Помните статью Anthropic про биологию больших языковых моделей? Там описано, что языковые модели считают через матрицы приближенных значений так, как человеку не пришло бы в голову вообще. Авторы той статьи и нашей сегодняшней смотрят на процесс с разных точек зрения и в разных разрезах. Однако и те, и другие говорят, что модели запоминают результаты сложения цифр и дальше просто подставляют нужные значения. Так что, теоретически, примеры в обратном порядке как раз полезны, потому что показывают, начиная с какой позиции подставлять.
Пояснения помогают моделям учиться лучше: чем больше информации, тем меньше нужно примеров для достижения стопроцентной точности. Очень полезно давать детальное описание процесса.
Если обучить модель сначала складывать двузначные числа, а потом трёхзначные, она с высокой вероятностью разучится работать с первыми. Это тоже лечится добавлением подробных инструкций.
Сложение, вычитание и умножение можно удобно представить в формате пошаговых инструкций, а вот с такими функциями, как извлечение квадратного корня будут сложности; авторы статьи попытались.
В общем, эта работа интересна с точки зрения того, чтобы на простых для человека примерах посмотреть, как происходит обучение, и лучше понять встроенные ограничения языковых моделей. Но для реальной жизни лучше просто научить модели пользоваться калькулятором: это и надёжнее, и дешевле
Если одна модель плохо решает вашу задачу, вам просто нужно больше моделей.
Так, во всяком случае, решили авторы статьи «More Agents Is All You Need». Давайте посмотрим, какие у них аргументы.
Подход классический для ансамблевых алгоритмов: есть много моделей, каждая из которых на одни и те же входные данные генерирует свой результат. Затем выбирается тот из них, который был предложен наибольшим числом моделей.
На скриншоте схема из статьи, перевод мой.
Авторы ссылаются на более ранние работы, которые предлагают более сложные подходы к повышению качества работы языковых моделей. Они утверждают, что сравнимого качества можно достичь проще – увеличивая число моделей, – а потом доработать за счёт более сложных подходов вроде дробления большой задачи на более мелкие и рассуждений шаг за шагом.
В качестве аргументов авторы далее приводят серию экспериментов на разных наборах данных, где их ансамблевый подход улучшает качество ответов. К их чести, они приводят как значимые результаты, так и совсем небольшие. И приводят пределы, по достижении которых их подход перестаёт работать: по мере повышения сложности задач моделям нужно всё больше рассуждений, чтобы получить ответ, и всё доступное контекстное окно (то есть, максимум текста, который они могут выдать) заполняется, не доходя до ответа.
В целом, ансамблевый подход правда не лишён смысла и много где показал свою эффективность: мы обсуждали и «традиционные» алгоритмы, такие как случайный лес, и ансамбли экспертов, и другие, более сложно устроенные ансамбли языковых моделей. Так что идея годная.
Но я бы не сказала, что «больше агентов – всё, что вам нужно». Во-первых, это дорого. Во-вторых, как авторы сами и показали, у такого масштабирования есть пределы.
На мой взгляд, увеличивать число моделей полезно до тех пор, пока каждая выполняет конкретную задачу, у которой есть результат. А дальше – усложнять архитектуру, добавлять дополнительные проверки и прочие вещи.
Особенно этот вопрос актуален при работе с небольшими трансформерами до 20–30 млрд параметров. Они существенно дешевле за счёт того, что их можно запускать локально на компьютере и не платить за использование арендованного сервера. Но они существенно хуже справляются со сложными задачами, чем трансформеры большего размера.
Я тут как раз работаю над сложной задачей, и разрыв в качестве между «большими» (условная GPT-5) и «маленькими» (gpt-oss:20b) меня глубоко печалит. Так что ищу способы прокачивать эффективность маленьких трансформеров. Ансамбли – один из вариантов. Он увеличивает мои счета за электроэнергию, но в итоге выходит всё равно дешевле, чем платить за большие модели.
Тут у меня несколько неструктурированное рассуждение получается, потому что я сама пока в раздумьях и экспериментах. Но, глядишь, и выйдет что из этой всей истории.
Свой код авторы выложили в открытый доступ, но он выглядит заброшенным: там с прошлого года нет никаких обновлений
Так, во всяком случае, решили авторы статьи «More Agents Is All You Need». Давайте посмотрим, какие у них аргументы.
Подход классический для ансамблевых алгоритмов: есть много моделей, каждая из которых на одни и те же входные данные генерирует свой результат. Затем выбирается тот из них, который был предложен наибольшим числом моделей.
На скриншоте схема из статьи, перевод мой.
Авторы ссылаются на более ранние работы, которые предлагают более сложные подходы к повышению качества работы языковых моделей. Они утверждают, что сравнимого качества можно достичь проще – увеличивая число моделей, – а потом доработать за счёт более сложных подходов вроде дробления большой задачи на более мелкие и рассуждений шаг за шагом.
В качестве аргументов авторы далее приводят серию экспериментов на разных наборах данных, где их ансамблевый подход улучшает качество ответов. К их чести, они приводят как значимые результаты, так и совсем небольшие. И приводят пределы, по достижении которых их подход перестаёт работать: по мере повышения сложности задач моделям нужно всё больше рассуждений, чтобы получить ответ, и всё доступное контекстное окно (то есть, максимум текста, который они могут выдать) заполняется, не доходя до ответа.
В целом, ансамблевый подход правда не лишён смысла и много где показал свою эффективность: мы обсуждали и «традиционные» алгоритмы, такие как случайный лес, и ансамбли экспертов, и другие, более сложно устроенные ансамбли языковых моделей. Так что идея годная.
Но я бы не сказала, что «больше агентов – всё, что вам нужно». Во-первых, это дорого. Во-вторых, как авторы сами и показали, у такого масштабирования есть пределы.
На мой взгляд, увеличивать число моделей полезно до тех пор, пока каждая выполняет конкретную задачу, у которой есть результат. А дальше – усложнять архитектуру, добавлять дополнительные проверки и прочие вещи.
Особенно этот вопрос актуален при работе с небольшими трансформерами до 20–30 млрд параметров. Они существенно дешевле за счёт того, что их можно запускать локально на компьютере и не платить за использование арендованного сервера. Но они существенно хуже справляются со сложными задачами, чем трансформеры большего размера.
Я тут как раз работаю над сложной задачей, и разрыв в качестве между «большими» (условная GPT-5) и «маленькими» (gpt-oss:20b) меня глубоко печалит. Так что ищу способы прокачивать эффективность маленьких трансформеров. Ансамбли – один из вариантов. Он увеличивает мои счета за электроэнергию, но в итоге выходит всё равно дешевле, чем платить за большие модели.
Тут у меня несколько неструктурированное рассуждение получается, потому что я сама пока в раздумьях и экспериментах. Но, глядишь, и выйдет что из этой всей истории.
Свой код авторы выложили в открытый доступ, но он выглядит заброшенным: там с прошлого года нет никаких обновлений
Шикарная статья, всем про неё рассказываю, вам сегодня расскажу тоже
vc.ru
Языковые модели в гармонии
Сегодня делюсь с вами хорошей обзорной статьёй «LLMs Working in Harmony: A Survey on the Technological Aspects of Building Effective LLM-Based Multi Agent Systems» («Гармоничная работа больших языковых моделей: обзор технологических аспектов построения эффективных…
👍1
1.jpg
28.9 KB
Я вот не поверю, что ИИ дошёл до человеческого уровня, пока не увижу, как он вместо работы залипает на смешные видео с котиками. Или просто ничего не делает, потому что ноябрь, темно, уныло, авитаминоз.
Картинка заимствована из телеграм-канала «Страдающее Средневековье»
Но про такое я пока не слышала, хотя Gemini периодически впадает в депрессию, а Claude был пойман на прокрастинации. Зато авторы статьи «Mastering diverse control tasks through world models» научили свой алгоритм Dreamer играть в Майнкрафт (Minecraft).
И как бы оно ни было весело само по себе, дело здесь не в Майнкрафте, а в восприятии окружающего мира и умении к нему адаптироваться. Модели, которые такое умеют, называются world models – модели мира (или, скорее, модели с восприятием мира, но это слишком длинно). Их особенность в том, что они умеют получать данные из окружающего пространства, которое меняется с течением времени, и пользоваться этими данными для совершения действий.
Если вдруг это прозвучало сложно, мы таким каждый день с утра до вечера занимаемся, а потом ещё во сне: мы воспринимаем визуальную информацию о трёхмерном пространстве, в котором находимся, ощущаем текстуру, давление, влажность, температуру, слышим звуки и так далее, – и действуем соответствующе. Для нас это естественный процесс, который происходит помимо нашего сознания.
А для ИИ – нет. Если говорить о языковых моделях, например, то их мы обучаем на больших массивах текстов, которые мало дают понимания физики реального мира. Мы просто обычно не пишем чего-то вроде: «Я опрокинула чашку, и кофе вылился сверху вниз на пол.» Нам и так понятно, что кофе не вылился снизу вверх или не улетел в стену, если только я не живу на Международной космической станции – а я не живу на Международной космической станции.
Так что нужны дополнительные ухищрения, чтобы ИИ усвоил физику реального мира, и тот ИИ, который её усвоил, называется моделью мира. Ещё моделью мира называется собственно математическое представление фрагмента пространства, в котором ИИ обучается, так что может возникнуть путаница с терминами.
Понимание того, как работает реальный мир, очень актуально в робототехнике.
Итак, Dreamer – это система из трёх нейросетей:
• Модель [с восприятием] мира предсказывает результаты действий;
• ИИ-критик оценивает ценность каждого результата;
• ИИ-актор выбирает следующее действие так, чтобы получить наилучший результат.
Модель мира получает на вход сенсорные данные и использует их для предсказания изменений, которые произойдут после совершения дей ствия. Если речь про Майнкрафт, модель получает на вход изображение и предсказывает, как оно изменится, например, при смене угла обзора.
Критик и актор используют уже абстрактные представления, которые сформировала модель мира, например, набор координат объектов. Помните, мы говорили про охоту на информацию? Субъект: человек, животное или модель ИИ – в каждый момент времени принимает решение, продолжать ли изучать найденное или искать новое. «Найденное» и «новое» – это куст с ягодами, стопка бумаг, книга, полка в библиотеке, сайт и так далее. Авторы статьи построили обучение актора так, чтобы он как раз искал баланс между разведкой и исследованием, максимизируя вознаграждение.
В Майнкрафте надо копать землю и искать алмазы. ИИ-актор обучался продолжать копать в том же месте, если алмазы попадаются часто, и искать другую жилу, если алмазы попадаются редко.
Сложность была ещё и в том, что сначала надо найти другие ресурсы, такие как дерево и железо, и собрать из них инструмент, чтобы разбивать блоки земли. Разные блоки требуют использования разных инструментов, и у инструментов есть износ, то есть, их надо заменять время от времени. Так что достижение вполне заслуживает уважения
Картинка заимствована из телеграм-канала «Страдающее Средневековье»
Но про такое я пока не слышала, хотя Gemini периодически впадает в депрессию, а Claude был пойман на прокрастинации. Зато авторы статьи «Mastering diverse control tasks through world models» научили свой алгоритм Dreamer играть в Майнкрафт (Minecraft).
И как бы оно ни было весело само по себе, дело здесь не в Майнкрафте, а в восприятии окружающего мира и умении к нему адаптироваться. Модели, которые такое умеют, называются world models – модели мира (или, скорее, модели с восприятием мира, но это слишком длинно). Их особенность в том, что они умеют получать данные из окружающего пространства, которое меняется с течением времени, и пользоваться этими данными для совершения действий.
Если вдруг это прозвучало сложно, мы таким каждый день с утра до вечера занимаемся, а потом ещё во сне: мы воспринимаем визуальную информацию о трёхмерном пространстве, в котором находимся, ощущаем текстуру, давление, влажность, температуру, слышим звуки и так далее, – и действуем соответствующе. Для нас это естественный процесс, который происходит помимо нашего сознания.
А для ИИ – нет. Если говорить о языковых моделях, например, то их мы обучаем на больших массивах текстов, которые мало дают понимания физики реального мира. Мы просто обычно не пишем чего-то вроде: «Я опрокинула чашку, и кофе вылился сверху вниз на пол.» Нам и так понятно, что кофе не вылился снизу вверх или не улетел в стену, если только я не живу на Международной космической станции – а я не живу на Международной космической станции.
Так что нужны дополнительные ухищрения, чтобы ИИ усвоил физику реального мира, и тот ИИ, который её усвоил, называется моделью мира. Ещё моделью мира называется собственно математическое представление фрагмента пространства, в котором ИИ обучается, так что может возникнуть путаница с терминами.
Понимание того, как работает реальный мир, очень актуально в робототехнике.
Итак, Dreamer – это система из трёх нейросетей:
• Модель [с восприятием] мира предсказывает результаты действий;
• ИИ-критик оценивает ценность каждого результата;
• ИИ-актор выбирает следующее действие так, чтобы получить наилучший результат.
Модель мира получает на вход сенсорные данные и использует их для предсказания изменений, которые произойдут после совершения дей ствия. Если речь про Майнкрафт, модель получает на вход изображение и предсказывает, как оно изменится, например, при смене угла обзора.
Критик и актор используют уже абстрактные представления, которые сформировала модель мира, например, набор координат объектов. Помните, мы говорили про охоту на информацию? Субъект: человек, животное или модель ИИ – в каждый момент времени принимает решение, продолжать ли изучать найденное или искать новое. «Найденное» и «новое» – это куст с ягодами, стопка бумаг, книга, полка в библиотеке, сайт и так далее. Авторы статьи построили обучение актора так, чтобы он как раз искал баланс между разведкой и исследованием, максимизируя вознаграждение.
В Майнкрафте надо копать землю и искать алмазы. ИИ-актор обучался продолжать копать в том же месте, если алмазы попадаются часто, и искать другую жилу, если алмазы попадаются редко.
Сложность была ещё и в том, что сначала надо найти другие ресурсы, такие как дерево и железо, и собрать из них инструмент, чтобы разбивать блоки земли. Разные блоки требуют использования разных инструментов, и у инструментов есть износ, то есть, их надо заменять время от времени. Так что достижение вполне заслуживает уважения
Ещё вариант работы с агентами, на этот раз для решения проблемы выхода за пределы контекстного окна
"Выходв за контекстное окно" значит, что языковой модели дали очень большой текст, и она проигнорировала первый абзац, потому что может за раз переварить 100 слов, а ей дали 120. Самое неприятное в том, что она никак об этом не сообщит: если разработчики приложения не позаботились, у неё нет никакой встроенной штуки, которой она могла бы посчитать токены и сказать: «Вот тут перебор, давай сокращай как-то».
Сейчас, конечно, модели с таким контекстным окном, что можно туда поместить один том «Войны и мира»: если размер окна 200 тысяч токенов, а один токен составляет примерно 0,75 слова в среднем*, то в такое окно войдёт примерно 150 тысяч слов. В «Войне и мире» целиком около 480 тысяч слов, в среднем на один том выходит примерно 120 тысяч слов.
Но это ладно, а кому вообще надо пихать в модель «Войну и мир?» Может, и никому. Но если надо запихать длинную беседу с анализом нескольких документов, за контекстное окно можно вылезти. Например, если у вас есть какой-нибудь чат-бот, который помогает вам писать диссертацию, и вы в него загружаете разные статьи и книги и ведёте с ним долгие беседы о предмете исследования. Ответы бота в какой-то момент перестанут учитывать то, что вы обсуждали в самом начале.
Есть два распространённых подхода: сокращать контекст и расширять окно. Сокращать контексты можно через удаление старой или давно неиспользуемой информации; можно через создание краткого пересказа имеющегося текста время от времени, исключая детали.
Расширение окна требует дополнительных мощностей на обработку текстов, так что это дорого. И ещё бывают проблемы с тем, чтобы модели концентрировались на нужных фрагментах текста, когда он очень длинный
Авторы статьи «Chain of Agents: Large Language Models Collaborating on Long-Context Tasks» решили хитрым образом извернуться и разбить большой контекст на несколько кусков поменьше, каждый дать своей модели, а потом всё собрать воедино. Несколько моделей (авторы называют их агентами) объединены в последовательную цепочку, и ещё одна выступает в качестве «менеджера», который готовит итоговый ответ.
Первая мысль у меня, как обычно: «Сколько это будет стоить?». Мы забиваем под завязку контекстные окна n моделей плюс ещё одной, которая нужна для сборки результата. Как будто можно обойтись меньшими затратами, если сохранять все тексты где-то в базе данных, а потом обращаться к ней с точечными запросами. Здесь нужен сервер для хранения, но при фиксированной стоимости аренды как будто всё равно должно получиться выгоднее. Но это чистой воды спекуляция, я не сравнивала.
Авторы сами отмечают, что да, стоимость – ограничение, но можно придумать механизм автоматического выбора наиболее эффективной модели.
Они указывают на то, что их решение может гибко подстраиваться под контекст любого размера: нужно просто добавить моделей, причём система всё сделает сама, разделив объём контекста на размер окна одной модели. Последовательное объединение моделей обеспечивает передачу наиболее важных фрагментов текста на следующий этап и связность результата.
Ещё похоже, что объединение нескольких таких цепочек моделей в ансамбль повышает качество ответа.
Если подумать, то для маленьких моделей при локальном использовании этот подход может и правда оказаться эффективным. Я начала читать статью с некоторым скепсисом в душе, но теперь хочу поэкспериментировать: вдруг что получится.
*Это для английского языка и очень приблизительно. Вот в этой статье есть расчёты для разных моделей и языков. Для русского получается, что один токен – это примерно 0,3 слова. Тогда в окно на 200 тыс. токенов полтома всего влезет
"Выход
Сейчас, конечно, модели с таким контекстным окном, что можно туда поместить один том «Войны и мира»: если размер окна 200 тысяч токенов, а один токен составляет примерно 0,75 слова в среднем*, то в такое окно войдёт примерно 150 тысяч слов. В «Войне и мире» целиком около 480 тысяч слов, в среднем на один том выходит примерно 120 тысяч слов.
Но это ладно, а кому вообще надо пихать в модель «Войну и мир?» Может, и никому. Но если надо запихать длинную беседу с анализом нескольких документов, за контекстное окно можно вылезти. Например, если у вас есть какой-нибудь чат-бот, который помогает вам писать диссертацию, и вы в него загружаете разные статьи и книги и ведёте с ним долгие беседы о предмете исследования. Ответы бота в какой-то момент перестанут учитывать то, что вы обсуждали в самом начале.
Есть два распространённых подхода: сокращать контекст и расширять окно. Сокращать контексты можно через удаление старой или давно неиспользуемой информации; можно через создание краткого пересказа имеющегося текста время от времени, исключая детали.
Расширение окна требует дополнительных мощностей на обработку текстов, так что это дорого. И ещё бывают проблемы с тем, чтобы модели концентрировались на нужных фрагментах текста, когда он очень длинный
Авторы статьи «Chain of Agents: Large Language Models Collaborating on Long-Context Tasks» решили хитрым образом извернуться и разбить большой контекст на несколько кусков поменьше, каждый дать своей модели, а потом всё собрать воедино. Несколько моделей (авторы называют их агентами) объединены в последовательную цепочку, и ещё одна выступает в качестве «менеджера», который готовит итоговый ответ.
Первая мысль у меня, как обычно: «Сколько это будет стоить?». Мы забиваем под завязку контекстные окна n моделей плюс ещё одной, которая нужна для сборки результата. Как будто можно обойтись меньшими затратами, если сохранять все тексты где-то в базе данных, а потом обращаться к ней с точечными запросами. Здесь нужен сервер для хранения, но при фиксированной стоимости аренды как будто всё равно должно получиться выгоднее. Но это чистой воды спекуляция, я не сравнивала.
Авторы сами отмечают, что да, стоимость – ограничение, но можно придумать механизм автоматического выбора наиболее эффективной модели.
Они указывают на то, что их решение может гибко подстраиваться под контекст любого размера: нужно просто добавить моделей, причём система всё сделает сама, разделив объём контекста на размер окна одной модели. Последовательное объединение моделей обеспечивает передачу наиболее важных фрагментов текста на следующий этап и связность результата.
Ещё похоже, что объединение нескольких таких цепочек моделей в ансамбль повышает качество ответа.
Если подумать, то для маленьких моделей при локальном использовании этот подход может и правда оказаться эффективным. Я начала читать статью с некоторым скепсисом в душе, но теперь хочу поэкспериментировать: вдруг что получится.
*Это для английского языка и очень приблизительно. Вот в этой статье есть расчёты для разных моделей и языков. Для русского получается, что один токен – это примерно 0,3 слова. Тогда в окно на 200 тыс. токенов полтома всего влезет
arXiv.org
Chain of Agents: Large Language Models Collaborating on Long-Context Tasks
Addressing the challenge of effectively processing long contexts has become a critical issue for Large Language Models (LLMs). Two common strategies have emerged: 1) reducing the input length,...
У Алана Тьюринга было отменное чувство юмора, а ещё некоторые странноватые убеждения. Но он, бесспорно, был гением.
Вот бы его воскресить и познакомить с ChatGPT
Вот бы его воскресить и познакомить с ChatGPT
vc.ru
Всё, чего вы не знали про тест Тьюринга
Иногда я хулиганю и придумываю кликбейтные заголовки. Сегодня как раз такой день.
❤1👍1
Есть такая штука, которая называется «законопослушный ИИ» (constitutional AI). Она есть с 2022 года, её реализовали в компании Anthropic, и она оказалась довольно полезной. Во всяком случае, о ней говорят, значит, и мы поговорим тоже.
Но сперва небольшое отступление: не далее как в прошлый четверг Anthropic выпустили статью «Disrupting the first reported AI-orchestrated cyber espionage campaign». Она про то, как в середине сентября группа китайских кибершпионов использовала ИИ, в частности, Claude Code напала на некие «технологические компании, финансовые институты, химические компании и государственные агентства». Сотрудники Anthropic доблестно отбили атаку.
Поскольку Anthropic активно сотрудничает с американским минобороны, им было бы крайне выгодно написать статью, в которой
- Превозносятся способности их моделей (автономно совершили целую кибератаку);
- Поднимается вопрос национальной безопасности (угроза со стороны Китая);
- Подчёркиваются уникальные навыки сотрудников (мы сделали такие мощные модели, и только мы можем их остановить, дайте денег).
Я никого ни в чём не обвиняю, но подожду оценок независимых исследователей
Но сперва небольшое отступление: не далее как в прошлый четверг Anthropic выпустили статью «Disrupting the first reported AI-orchestrated cyber espionage campaign». Она про то, как в середине сентября группа китайских кибершпионов использовала ИИ, в частности, Claude Code напала на некие «технологические компании, финансовые институты, химические компании и государственные агентства». Сотрудники Anthropic доблестно отбили атаку.
Поскольку Anthropic активно сотрудничает с американским минобороны, им было бы крайне выгодно написать статью, в которой
- Превозносятся способности их моделей (автономно совершили целую кибератаку);
- Поднимается вопрос национальной безопасности (угроза со стороны Китая);
- Подчёркиваются уникальные навыки сотрудников (мы сделали такие мощные модели, и только мы можем их остановить
Я никого ни в чём не обвиняю, но подожду оценок независимых исследователей
Teletype
Законопослушный ИИ
Есть такая штука, которая называется «законопослушный ИИ» (constitutional AI). Она есть с 2022 года, её реализовали в компании...
Поскольку я активно занимаюсь нейросетями, ко мне часто приходят коллеги и спрашивают: «Почему оно не работает?» Пришло время сказать вам правду.
Я не знаю, почему оно работает.
Никто не знает, почему оно работает
Я не знаю, почему оно работает.
Никто не знает, почему оно работает
This media is not supported in your browser
VIEW IN TELEGRAM
😁2
Больше всего этических вопросов связано с применением ИИ в образовании и медицине (и военной промышленности, но её сегодня трогать не будем) . А что насчёт ИИ в медицинском образовании?
Нашла как раз про это статью, свеженькую, прошлого года: «Artificial intelligence in medical education: Typologies and ethical approaches» («Искусственный интеллект в медицинском образовании: типология и этические подходы»). Пошли смотреть, что там
Нашла как раз про это статью, свеженькую, прошлого года: «Artificial intelligence in medical education: Typologies and ethical approaches» («Искусственный интеллект в медицинском образовании: типология и этические подходы»). Пошли смотреть, что там
vc.ru
ИИ в медицинском образовании
Больше всего этических вопросов связано с применением ИИ в образовании и медицине (и военной промышленности, но её сегодня трогать не будем). А что насчёт ИИ в медицинском образовании? Нашла как раз про это статью, свеженькую, прошлого года: «Artificial intelligence…
👍2
Сегодняшний пост в формате #эссе. Это значит, что я не пользуюсь никакими внешними источниками и не проверяю никакие факты. Для меня это возможность размять мозги, для вас – повод относиться к тексту с несколько большим скепсисом, чем обычно. Структура следующая:
• постановка вопроса;
• два аргумента против моей позиции;
• два аргумента в пользу моей позиции;
• заключение.
Я не ограничиваю себя по времени, но стараюсь писать короче.
Ограничение свободы слова в Интернете – вопрос животрепещущий. Кто-то считает, что это нужно для безопасности: есть люди, которым слово давать нельзя. Другие, и я в их числе, полагают, что противопоставление свободы и безопасности ложно и ведёт к дурным последствиям для всех.
Сторонники ограничения свободы слова часто приводят в пример распространение ложной информации об опасности вакцин или призывы к насилию в отношении отдельных людей или групп людей – то, что очевидно наносит ущерб если не всему обществу в целом, то отдельным его представителям. Если задача государства – защищать жизнь и благополучие граждан, то оно должно останавливать подобные высказывания, не дожидаясь, пока слова превратятся в действия.
Кроме того, ограничение свободы слова – это не отъём права жить в соответствии со своими убеждениями (во всяком случае до тех пор, пока ваш образ жизни не вредит окружающим). Не хочешь делать прививку – не делай, твоё право, и с последствиями тоже будешь разбираться самостоятельно. Не нравятся тебе какие-то люди – не общайся, не нанимай на работу, не нанимайся к ним и всё в этом роде. Живи себе спокойно, только другим не мешай.
Однако кто будет решать, какая информация или какие сообщения наносят ущерб гражданам? На мой взгляд, это не тот вопрос, который можно передать на усмотрение ограниченной группе людей, пусть они будут даже самыми умными, честными и самоотверженными во всей стране. Запреты на слова оставляют слишком большой простор для толкования, которым государство может воспользоваться – и воспользуется – для расширения своего контроля за информационным пространством.
И ограничения свободы слова всё же влияют на жизнь людей, потому что не позволяют открыто вести дискуссию на чувствительные и важные темы. Если что-то вызывает острые эмоции и противоречия, оно достаточно важно и не должно замалчиваться. Запрет на продажу и употребление психотропных препаратов не приводит к тому, что их перестают употреблять, а приводят к тому, что употребляющие не могут обратиться за лечением из страха. Это тоже всего лишь яркий пример, который не может быть доказательством, но, если подумать, часто ли вообще запреты приводят к искоренению проблемы?
ИИ, его применение и развитие – важная для общества тема, которая непосредственно влияет на наше настоящее и будущее. Дискуссия вокруг неё должна быть настолько открытой, насколько возможно, иначе не получится учесть достаточно нюансов для формирования действительно полноценной стратегии развития. И эта дискуссия часто должна быть жёсткой, полной критики – в том числе в адрес государственных институтов – и неприятных подробностей, потому что замалчивание проблем ведёт не к решению, а к усугублению. Поэтому я считаю, что государственная цензура в Интернете и СМИ вредит всем нам гораздо больше, чем могла бы помочь в самом оптимистичном случае
А своё мнение вы всегда можете оставить в комментариях ⬇️
• постановка вопроса;
• два аргумента против моей позиции;
• два аргумента в пользу моей позиции;
• заключение.
Я не ограничиваю себя по времени, но стараюсь писать короче.
Ограничение свободы слова в Интернете – вопрос животрепещущий. Кто-то считает, что это нужно для безопасности: есть люди, которым слово давать нельзя. Другие, и я в их числе, полагают, что противопоставление свободы и безопасности ложно и ведёт к дурным последствиям для всех.
Сторонники ограничения свободы слова часто приводят в пример распространение ложной информации об опасности вакцин или призывы к насилию в отношении отдельных людей или групп людей – то, что очевидно наносит ущерб если не всему обществу в целом, то отдельным его представителям. Если задача государства – защищать жизнь и благополучие граждан, то оно должно останавливать подобные высказывания, не дожидаясь, пока слова превратятся в действия.
Кроме того, ограничение свободы слова – это не отъём права жить в соответствии со своими убеждениями (во всяком случае до тех пор, пока ваш образ жизни не вредит окружающим). Не хочешь делать прививку – не делай, твоё право, и с последствиями тоже будешь разбираться самостоятельно. Не нравятся тебе какие-то люди – не общайся, не нанимай на работу, не нанимайся к ним и всё в этом роде. Живи себе спокойно, только другим не мешай.
Однако кто будет решать, какая информация или какие сообщения наносят ущерб гражданам? На мой взгляд, это не тот вопрос, который можно передать на усмотрение ограниченной группе людей, пусть они будут даже самыми умными, честными и самоотверженными во всей стране. Запреты на слова оставляют слишком большой простор для толкования, которым государство может воспользоваться – и воспользуется – для расширения своего контроля за информационным пространством.
И ограничения свободы слова всё же влияют на жизнь людей, потому что не позволяют открыто вести дискуссию на чувствительные и важные темы. Если что-то вызывает острые эмоции и противоречия, оно достаточно важно и не должно замалчиваться. Запрет на продажу и употребление психотропных препаратов не приводит к тому, что их перестают употреблять, а приводят к тому, что употребляющие не могут обратиться за лечением из страха. Это тоже всего лишь яркий пример, который не может быть доказательством, но, если подумать, часто ли вообще запреты приводят к искоренению проблемы?
ИИ, его применение и развитие – важная для общества тема, которая непосредственно влияет на наше настоящее и будущее. Дискуссия вокруг неё должна быть настолько открытой, насколько возможно, иначе не получится учесть достаточно нюансов для формирования действительно полноценной стратегии развития. И эта дискуссия часто должна быть жёсткой, полной критики – в том числе в адрес государственных институтов – и неприятных подробностей, потому что замалчивание проблем ведёт не к решению, а к усугублению. Поэтому я считаю, что государственная цензура в Интернете и СМИ вредит всем нам гораздо больше, чем могла бы помочь в самом оптимистичном случае
А своё мнение вы всегда можете оставить в комментариях ⬇️
Мне в последнее время нападало столько интересных статей, что я уж и не знаю, за что хвататься. Маленькое командное исследование про то, как в больших языковых моделях работает отказ отвечать на вопросы, разрослось, и теперь там такое…
Но это я потом расскажу. Сегодня давайте обсудим взлом языковых моделей, тем более что он проще, чем кажется
Но это я потом расскажу. Сегодня давайте обсудим взлом языковых моделей, тем более что он проще, чем кажется
Teletype
Взлом моделей в диалоге
«Взломать» модель значит заставить её делать что-то, чего не предполагали её разработчики: ругаться матом, сообщать чужие персональные...
Обычно друзей таким закидываю, но вдруг вам тоже зайдёт
Сижу, значит, работаю, пишу код
claude opus-4.5:
1. Нашёл баг
2. Позагонялся немного, хотя я вписала в правила запрет загоняться
3. В итоговом ответе решил ничего не говорить. Если бы я не полезла в "мысли", не увидела бы этот косяк
Вот же жук
Сижу, значит, работаю, пишу код
claude opus-4.5:
1. Нашёл баг
2. Позагонялся немного, хотя я вписала в правила запрет загоняться
3. В итоговом ответе решил ничего не говорить. Если бы я не полезла в "мысли", не увидела бы этот косяк
Вот же жук
😁2❤1