Telegram Web
Сначала пошли результаты без методов (GPT-3+, Gemini и т.п.), теперь идут методы без результатов (https://arxiv.org/abs/2404.07221).

Препринты превращаются в недопринты.
🥴81🤡27😁6🗿5💩4👍21💯1
Хорошее дополнение к "Библии промпт-инженера" — Библия уровнем выше, паттерны проектирования агентов :)

Agent Design Pattern Catalogue: A Collection of Architectural Patterns for Foundation Model based Agents
https://arxiv.org/abs/2405.10467
🔥38
👍73🔥2
Красивая работа, не увидел её раньше.

"Meanwhile, we recommend summarizing the recent trend of compute growth for notable and frontier models with the 4-5x/year figure. This should also be used as a baseline for expectations of growth in the future, before taking into account additional considerations such as possible bottlenecks or speed-ups.

Compute is the best predictor of broad AI capabilities we have, and so tracking its growth is fundamental to forecasting the trajectory of AI. This piece provides an updated view of this crucial topic and argues for a growth trend that has not slowed down in recent years.
"

https://epochai.org/blog/training-compute-of-frontier-ai-models-grows-by-4-5x-per-year

По ссылке интерактивный документ с живыми графиками, можно покликать и посмотреть данные конкретных моделей. Данные с 2010 по май 2024.

Планируйте, что через четыре-пять лет топовые модели будут обучаться на 1000x более производительных системах.
10🔥10👍3😁2
Там же интересная работа про стоимость обучения моделей:

"Our analysis reveals that the amortized hardware and energy cost for the final training run of frontier models has grown rapidly, at a rate of 2.4x per year since 2016 (95% CI: 2.0x to 3.1x). We also estimated a cost breakdown to develop key frontier models such as GPT-4 and Gemini Ultra, including R&D staff costs and compute for experiments. We found that most of the development cost is for the hardware at 47–67%, but R&D staff costs are substantial at 29–49%, with the remaining 2–6% going to energy consumption.

If the trend of growing training costs continues, the largest training runs will cost more than a billion dollars by 2027, suggesting that frontier AI model training will be too expensive for all but the most well-funded organizations."

https://epochai.org/blog/how-much-does-it-cost-to-train-frontier-ai-models

Я недооценивал косты на R&D staff.
👍20😁1
Продолжение истории

https://ssi.inc/

Safe Superintelligence Inc.

Superintelligence is within reach.

Building safe superintelligence (SSI) is the most important technical problem of our time.

We have started the world’s first straight-shot SSI lab, with one goal and one product: a safe superintelligence.

It’s called Safe Superintelligence Inc.

SSI is our mission, our name, and our entire product roadmap, because it is our sole focus. Our team, investors, and business model are all aligned to achieve SSI.

We approach safety and capabilities in tandem, as technical problems to be solved through revolutionary engineering and scientific breakthroughs. We plan to advance capabilities as fast as possible while making sure our safety always remains ahead.

This way, we can scale in peace.

Our singular focus means no distraction by management overhead or product cycles, and our business model means safety, security, and progress are all insulated from short-term commercial pressures.

We are an American company with offices in Palo Alto and Tel Aviv, where we have deep roots and the ability to recruit top technical talent.

We are assembling a lean, cracked team of the world’s best engineers and researchers dedicated to focusing on SSI and nothing else.

If that’s you, we offer an opportunity to do your life’s work and help solve the most important technical challenge of our age.

Now is the time. Join us.

Ilya Sutskever, Daniel Gross, Daniel Levy

June 19, 2024
🔥21🤔43👍3😁2😢1🤡1
Из других новостей на сегодня, Verses представит нам через час свои разработки!

https://www.verses.ai/genius
😴43🤔3
Superconducting supercomputers

В свежем IEEE Spectrum статья про сверхпроводящие компьютеры (https://spectrum.ieee.org/superconducting-computer) и целый стек, разрабатываемый сейчас международной организацией Imec (https://www.imec-int.com/en) со штаб-квартирой в Бельгии.

На фоне разговоров про триллионные кластеры с масштабами энергопотребления уровня 20% общего производства энергии США на один такой кластер (https://situational-awareness.ai/racing-to-the-trillion-dollar-cluster/#Training_compute) и энергию как одно из главных бутылочных горлышек таких затей (https://situational-awareness.ai/racing-to-the-trillion-dollar-cluster/#Power), и даже на фоне более ранних прогнозов из 2015-го про вычисления вообще, где говорилось что к 2040-му требуемая для вычислений энергия превзойдёт мировое производство оной (https://www.semiconductors.org/wp-content/uploads/2018/06/RITR-WEB-version-FINAL.pdf, Figure A8) если продолжать использовать типовые мейнстримовые вычислительные системы, все эти движения выглядят очень актуальными.

Imec разрабатывает решения сразу на всех уровнях стека, от материалов для сверхпроводящего железа, через новые схемотехнические решения для организации логических схем и памяти к архитектурным решениям на уровне совмещения с классической DRAM памятью.

Новые схемы основаны на использовании эффекта Джозефсона в устройствах под названием переход Джозефсона (Josephson junction, JJ, https://www.scientificamerican.com/article/what-are-josephson-juncti/). В них два слоя сверхпроводника разделены тонким слоем диэлектрика, через который туннелирует ток до тех пор, пока этот ток не превышает критическое значение. При превышении критического тока, в переходе возникает импульс напряжения, запускающий ток, который дальше будет течь по сверхпроводящему контуру с JJ бесконечно. На этих контурах можно построить логические элементы (ток течёт -- 1, не течёт -- 0) и память (два связанных контура, если ток в левом -- хранится 1, если ток в правом, а в левом нет -- 0).

Предложенная авторами плата под названием superconductor processing unit (SPU) содержит сверхпроводящие логические контуры и статическую память (SRAM) на JJ, охлаждённую жидким гелием до 4K, также через стеклянный изолятор на схеме есть классические не-сверхпроводящие CMOS DRAM охлаждённые до 77K и далее ведущие наружу в комнатной теплоты мир коннекторы.

Смоделирована система со ста такими платами, размером порядка обувной коробки (20x20x12 см), которая может выдавать 20 exaflops (10^18) в bf16 и потреблять всего 500 киловатт. У топового суперкомпьютера Frontier что-то типа чуть больше 1 экзафлопса, но правда это fp64, а не bf16. И энергопотребление в сотню раз выше. У DGX H100 с 8 GPU заявлено 32 petaflops в fp8, и соответственно 16 petaflops в bf16, то есть 20 exaflops потребует 10000 карт H100. Впечатляет в общем.

Да, требуется энергия на охлаждение, но начиная с некоторого масштаба (в районе десятка петафлопс) она уже полностью отбивается и сверхпроводящий суперкомпьютер обгоняет классический на GPU.

Из дополнительных интересных бонусов может быть более лёгкая интеграция с квантовыми компьютерами, которые требуют похожего охлаждения, а также с термодинамическими компьютерами типа как у Extropic, тоже использующими JJ (https://www.tgoop.com/gonzo_ML/2688).

Это потенциально очень интересное развитие. Может и не нужны будут гига-датацентры размером с футбольные поля с атомными электростанциями под боком, а будет свой маленький сверхпроводящий суперкомпьютер на районе? Со своим районным AI.
🔥37👍64🤔2
Интересное

Language is primarily a tool for communication rather than thought
Evelina Fedorenko, Steven T. Piantadosi & Edward A. F. Gibson
https://www.nature.com/articles/s41586-024-07522-w

Language is a defining characteristic of our species, but the function, or functions, that it serves has been debated for centuries. Here we bring recent evidence from neuroscience and allied disciplines to argue that in modern humans, language is a tool for communication, contrary to a prominent view that we use language for thinking. We begin by introducing the brain network that supports linguistic ability in humans. We then review evidence for a double dissociation between language and thought, and discuss several properties of language that suggest that it is optimized for communication. We conclude that although the emergence of language has unquestionably transformed human culture, language does not appear to be a prerequisite for complex thought, including symbolic thought. Instead, language is a powerful tool for the transmission of cultural knowledge; it plausibly co-evolved with our thinking and reasoning capacities, and only reflects, rather than gives rise to, the signature sophistication of human cognition.
👍317🔥5
TextGrad: Automatic "Differentiation" via Text
Mert Yuksekgonul, Federico Bianchi, Joseph Boen, Sheng Liu, Zhi Huang, Carlos Guestrin, James Zou
Статья: https://arxiv.org/abs/2406.07496
Код: https://github.com/zou-group/textgrad

Мы отлично научились обучать большие сети или дифференцируемые комбинации сетей через бэкпроп. Но с LLM эволюция ушла вперёд и теперь мультиагентные системы состоят из комбинации LLM и тулов, которые не образуют дифференцируемой цепочки, узлы такого вычислительного графа (те самые LLM и тулы) соединены естественно-языковыми интерфейсами (общаются текстом) и часто живут у разных вендоров в разных датацентрах с доступом исключительно через API. То есть про бэкпроп можно забыть. Или нет?

Textgrad по сути реализует аналог бэкпропа, но через текст и с текстовыми градиентами. Как это выглядит?

Рассмотрим на простом примере. Есть два вызова LLM, мы хотим оптимизировать промпт в первом вызове:

Prediction = LLM(Prompt + Question) (1)
Evaluation = LLM(Evaluation Instruction + Prediction) (2)

Для этой цепочки можно собрать аналог бэкпропа, где используется градиентный оператор ∇LLM, если при прямом проходе вызывалась LLM. Этот оператор сам основан на LLM и в целом похож на паттерн Reflexion, он возвращает фидбек (критику, рефлексию) про то, как надо изменить переменную, чтобы улучшить итоговую objective. Он выдаёт что-то типа ‘This prediction can be improved by. . . ’

Внутри ∇LLM мы через промпт показываем “прямой проход LLM” в виде “Here is a conversation with an LLM: {x|y}”, затем вставляем критику (предыдущий градиентный оператор в цепочке) “Below are the criticisms on {y}: {∂L/∂y}” и наконец “Explain how to improve {x}.”

В примере с двумя вызовами сначала считаем

∂Evaluation/∂Prediction = ∇LLM(Prediction, Evaluation),

то есть получаем указания, как поменять переменную Prediction, чтобы улучшить Evaluation.

Затем узнаём как поменять Prompt через

∂Evaluation/∂Prompt =
∂Evaluation/∂Prediction * ∂Prediction/∂Prompt =
∇LLM(Prompt, Prediction, ∂Evaluation/∂Prediction).


На этом строится градиентный оптимизатор, который называется Textual Gradient Descent (TGD) и работает по принципу:

Prompt_new = TGD.step(Prompt, ∂Evaluation/∂Prompt).

Оптимизатор TGD.step(x, ∂L/∂x) тоже реализован через LLM и по сути задаётся промптом типа “Below are the criticisms on {x}: {∂L/∂x} Incorporate the criticisms, and produce a new variable.” выдающим новое значение переменной (в нашем случае Prompt).

В реальности промпты операторов позабористее (и наверное могли бы быть найдены методом текстового градиентного спуска, но, кажется, нет).

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

Ещё остаётся вопрос с objective function, которая для бэкпропа — это что-то дифференцируемое, типа L2-loss или кроссэнтропии, например. Здесь она может быть недифференцируемой и описанной человеческим языком и вычисляться через вызов LLM с промптом. Например, для кода оно могло бы выглядеть так:

Loss(code, target goal) =
LLM(“Here is a code snippet:{code}. Here is the goal for this snippet:{target goal}. Evaluate the snippet for correctness and runtime complexity.”).


Что в общем достаточно универсально и гибко. Лосс-функция человеческим языком — это прикольно.

В работе исследованы два класса задач: instance optimization (когда надо найти какое-то решение задачи, кусок кода или молекулу, например) и prompt optimization (когда надо найти промпт, улучшающий результаты на множестве запросов конкретной задачи).

В данном подходе можно также реализовывать оптимизацию батчами (с агрегацией “лоссов” по батчу), оптимизацию с ограничениями (например, требовать определённый формат ответа), аналог момента (когда оптимизатор видит и предыдущие итерации).

Проверили на нескольких классах задач: Coding, Problem Solving, Reasoning, Chemistry, Medicine.
👍29🤯11😁72🔥2🥴1👀1
1) В задачах на код надо надо сгенерить код, решающий задачи из LeetCode Hard. Постановка выглядит так:

Code-Refinement Objective = LLM(Problem + Code + Test-time Instruction + Local Test Results), где выделенный жирным Code оптимизируется через TextGrad.

Результат 36% Completion Rate.

2) На следующей задаче надо сделать solution optimization — улучшить решение сложной задачи из Google-proof Question Answering (GPQA), например, вопрос из квантовой механики или органической химии. Задача задана следующим образом:

Solution Refinement Objective = LLM(Question + Solution + Test-time Instruction)

TextGrad делал три итерации обновления решения с последующим мажоритарным голосованием. Получили 55%, лучший известный на момент результат. На MMLU с физикой или ML результат выше, чем у CoT.

3) Задача оптимизации промпта для reasoning на задачах из Big Bench Hard и GSM8k:

Answer = LLM(Prompt, Question)
Evaluation Metric = Evaluator(Answer, Ground Truth)

Оптимизировали промпт под более дешёвую gpt-3.5-turbo-0125 через фидбек от более сильной gpt-4o. Использовали минибатчи размера 3 и 12 итераций, то есть модель видела 36 обучающих примеров. Промпт обновлялся, если на валидации результат становился лучше.

Обошли Zero-shot Chain-of-Thought и DSPy.

4) Оптимизация молекулы, заданной SMILES нотацией с получением скоров affinity из тула Autodock Vina и druglikeness через Quantatiative Estimate of Druglikeness (QED) score из RDKit, то есть multi-objective loss:

Evaluation = LLM((Affinity(SMILES_i, target), Druglikeness(SMILES_i))
SMILES_{i+1} = TGD.step (SMILES_i, ∂Evaluation/∂SMILES_i)

Молекула инициализировалась маленьким фрагментом из функциональной группы, в качестве LLM использовалась gpt-4o. Применяли TextGrad к 58 таргетам из бенчмарка DOCKSTRING.

На каждом шаге TextGrad неплохо улучшал результаты и итоговые молекулы вполне достойны. При этом используются хемоинформатические тулы и получаются объяснимые решения.

5) Оптимизация плана радиотерапии. Задача с двумя вложенными циклами, оптимизировали внешний — гиперпараметры для внутреннего. Гиперпараметры θ задавались строкой.

Лосс для плана лечения P выглядел так: L = LLM(P(θ), g), g здесь — клинические цели.

Результат вроде как тоже осмысленный.


Интересный заход, выглядит достаточно универсально и применимо. Авторы оформили это всё в библиотеку (https://github.com/zou-group/textgrad) с API похожим на PyTorch. Вычисление лосса, градиента и шаг оптимизатора выглядят неотличимо.

Ожидаю большое и интересное будущее 🙂 Интересно было бы посмотреть и на фидбек в других модальностях, картинка там или звук, должно быть прикольно. Также напрашивается дальнейшее расширение фреймворка на тулы и RAG.
👍275🔥4
2025/07/12 18:08:07
Back to Top
HTML Embed Code: